diff --git a/.gitignore b/.gitignore index b23e403..d9bdc4e 100644 --- a/.gitignore +++ b/.gitignore @@ -1,7 +1,23 @@ -/src/resource_manager/resource_texture_factory.o *.o +bin/world_folder +bin/Debug +bin/Release +*.depend +*.layout +*~ +*.log +.vs +bin/bin/ +doc/be.aux +doc/be.log +doc/be.out +doc/be.synctex.gz +doc/be.toc + *.toc *.aux *.log *.out -*.synctex.gz +*.synctex.gz +cell_*_*.xml + diff --git a/.vs/launch.vs.json b/.vs/launch.vs.json new file mode 100644 index 0000000..576d50f --- /dev/null +++ b/.vs/launch.vs.json @@ -0,0 +1,13 @@ +{ + "version": "0.2.1", + "defaults": {}, + "configurations": [ + { + "type": "default", + "project": "CMakeLists.txt", + "projectTarget": "owman.exe (src\\Debug\\owman.exe)", + "name": "owman.exe (src\\Debug\\owman.exe)", + "currentDir": "${workspaceRoot}\\bin" + } + ] +} \ No newline at end of file diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 0000000..288500c --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,49 @@ +# +# Open World Manager +# + +cmake_minimum_required(VERSION 3.2) + +# +# Building in-tree is not allowed (we take care of your craziness). +# + +if(${CMAKE_SOURCE_DIR} STREQUAL ${CMAKE_BINARY_DIR}) + message(FATAL_ERROR "Prevented in-tree built. Please create a build directory outside of the source code and call cmake from there. Thank you.") +endif() + +# +# Project configuration +# + +project(owman VERSION 0.0.1) + +if(NOT CMAKE_BUILD_TYPE) + set(CMAKE_BUILD_TYPE Debug) +endif() + +find_package(OpenGL REQUIRED) +find_package(sdl2 REQUIRED) +find_package(glm REQUIRED) +find_package(unofficial-box2d REQUIRED) +find_package(GLEW REQUIRED) +# +# Compiler stuff +# +set(CMAKE_CXX_EXTENSIONS OFF) +set(CMAKE_CXX_STANDARD_REQUIRED ON) + + +include_directories(${owman_SOURCE_DIR}/src) + +add_subdirectory(src) + +# +# AOB +# + +add_custom_target( + owman_aob + SOURCES + LICENSE +) diff --git a/CMakeSettings.json b/CMakeSettings.json new file mode 100644 index 0000000..2685da0 --- /dev/null +++ b/CMakeSettings.json @@ -0,0 +1,19 @@ +{ + "configurations": + [ + { + "name": "x86-Debug", + "generator": "Visual Studio 15 2017", + "configurationType": "Debug", + "buildRoot": "${env.USERPROFILE}\\CMakeBuilds\\${workspaceHash}\\build\\${name}", + "cmakeCommandArgs": "", + "buildCommandArgs": "-m -v:minimal", + "variables": [ + { + "name": "CMAKE_TOOLCHAIN_FILE", + "value": "C:/Users/Public/vcpkg/scripts/buildsystems/vcpkg.cmake" + } + ] + } + ] +} \ No newline at end of file diff --git a/README.md b/README.md index d233460..9ab57e4 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,4 @@ # OWMAN Open world game streaming manager + +![owman.png](owman.png) diff --git a/bin/cell_templates/cell_0.xml b/bin/cell_templates/cell_0.xml new file mode 100644 index 0000000..42b1310 --- /dev/null +++ b/bin/cell_templates/cell_0.xml @@ -0,0 +1,195 @@ + + + + 125 + 125 + + + pixel_grass + 250 + 250 + -10 + + + + + 223.853 + 111.635 + + + pokemon_center + 64 + 64 + 3 + + + box + 64 + 64 + 0 + + + + + 38 + 70 + + + tree0 + 38 + 128 + 11 + + + box + 20 + 18 + 0 + + + + + 88 + 85 + + + tree1 + 42 + 128 + 11 + + + box + 20 + 18 + 0 + + + + + 40 + 120 + + + tree2 + 38 + 128 + 11 + + + box + 20 + 18 + 0 + + + + + 140 + 220 + + + fence_16 + 127 + 13 + 5 + + + box + 127 + 13 + 0 + + + + + 77 + 192 + + + fence_side + 3 + 56 + 6 + + + box + 3 + 56 + 0 + + + + + 205 + 192 + + + fence_side + 3 + 56 + 6 + + + box + 3 + 56 + 0 + + + + + 96 + 166 + + + fence_5 + 39 + 13 + 7 + + + box + 39 + 13 + 0 + + + + + 170 + 166 + + + fence_9 + 71 + 13 + 7 + + + box + 71 + 13 + 0 + + + + + 95 + 190 + + + ball + 10 + 10 + 4 + + + circle + 5 + 1 + + + + + diff --git a/bin/cell_templates/cell_1.xml b/bin/cell_templates/cell_1.xml new file mode 100644 index 0000000..a09b9a1 --- /dev/null +++ b/bin/cell_templates/cell_1.xml @@ -0,0 +1,106 @@ + + + + 125 + 125 + + + pixel_grass + 250 + 250 + -10 + + + + + 125 + 165 + + + castle + 102 + 180 + 12 + + + box + 98 + 50 + 0 + + + + + 70 + 100 + + + tree6 + 40 + 128 + 11 + + + box + 20 + 18 + 0 + + + + + 70 + 54 + + + tree6 + 40 + 128 + 11 + + + box + 20 + 18 + 0 + + + + + 180 + 100 + + + tree6 + 40 + 128 + 11 + + + box + 20 + 18 + 0 + + + + + 180 + 54 + + + tree6 + 40 + 128 + 11 + + + box + 20 + 18 + 0 + + + + + diff --git a/bin/cell_templates/cell_10.xml b/bin/cell_templates/cell_10.xml new file mode 100644 index 0000000..07be574 --- /dev/null +++ b/bin/cell_templates/cell_10.xml @@ -0,0 +1,178 @@ + + + + 125 + 125 + + + pixel_grass + 250 + 250 + -10 + + + + + 200 + 112 + + + tree4 + 34 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 207 + 31 + + + tree4 + 34 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 55 + 88 + + + tree8 + 47 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 88 + 55 + + + tree8 + 47 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 43 + 200 + + + tree1 + 42 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 144 + 180 + + + tree7 + 50 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 120 + 140 + + + tree5 + 38 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 30 + 30 + + + tree9 + 44 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 133 + 49 + + + tree2 + 38 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + diff --git a/bin/cell_templates/cell_11.xml b/bin/cell_templates/cell_11.xml new file mode 100644 index 0000000..c53477c --- /dev/null +++ b/bin/cell_templates/cell_11.xml @@ -0,0 +1,196 @@ + + + + 125 + 125 + + + pixel_grass + 250 + 250 + -10 + + + + + 176 + 56 + + + tree6 + 38 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 66 + 166 + + + tree5 + 38 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 148 + 200 + + + tree0 + 38 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 169 + 111 + + + tree1 + 42 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 44 + 88 + + + tree0 + 38 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 111 + 56 + + + tree8 + 47 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 22 + 55 + + + tree4 + 34 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 66 + 33 + + + tree6 + 38 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 212 + 184 + + + tree6 + 38 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 35 + 215 + + + tree6 + 38 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + diff --git a/bin/cell_templates/cell_12.xml b/bin/cell_templates/cell_12.xml new file mode 100644 index 0000000..b0454a6 --- /dev/null +++ b/bin/cell_templates/cell_12.xml @@ -0,0 +1,124 @@ + + + + 125 + 125 + + + pixel_grass + 250 + 250 + -10 + + + + + 176 + 76 + + + tree1 + 42 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 222 + 207 + + + tree1 + 42 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 88 + 23 + + + tree9 + 44 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 144 + 155 + + + tree5 + 38 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 77 + 135 + + + tree6 + 38 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 55 + 186 + + + tree4 + 34 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + diff --git a/bin/cell_templates/cell_13.xml b/bin/cell_templates/cell_13.xml new file mode 100644 index 0000000..d85c119 --- /dev/null +++ b/bin/cell_templates/cell_13.xml @@ -0,0 +1,178 @@ + + + + 125 + 125 + + + pixel_grass + 250 + 250 + -10 + + + + + 176 + 76 + + + tree1 + 42 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 28 + 33 + + + tree7 + 50 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 100 + 100 + + + tree8 + 47 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 176 + 150 + + + tree4 + 34 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 50 + 160 + + + tree1 + 42 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 70 + 211 + + + tree6 + 38 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 205 + 122 + + + tree6 + 38 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 222 + 211 + + + tree6 + 38 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 155 + 33 + + + tree1 + 42 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + diff --git a/bin/cell_templates/cell_14.xml b/bin/cell_templates/cell_14.xml new file mode 100644 index 0000000..b752ab3 --- /dev/null +++ b/bin/cell_templates/cell_14.xml @@ -0,0 +1,190 @@ + + + + 125 + 125 + + + pixel_grass + 250 + 250 + -10 + + + + + 42 + 78 + + + tree5 + 38 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 158 + 94 + + + tree4 + 34 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 42 + 78 + + + tree5 + 38 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 177 + 188 + + + tree8 + 47 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 65 + 200 + + + tree0 + 38 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 100 + 50 + + + tree6 + 38 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 42 + 25 + + + tree5 + 38 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 180 + 25 + + + tree3 + 36 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 111 + 110 + + + tree6 + 38 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 125 + 125 + + + bird + 250 + 250 + 30 + + + + + diff --git a/bin/cell_templates/cell_15.xml b/bin/cell_templates/cell_15.xml new file mode 100644 index 0000000..9d94d45 --- /dev/null +++ b/bin/cell_templates/cell_15.xml @@ -0,0 +1,130 @@ + + + + 125 + 125 + + + pixel_grass + 250 + 250 + -10 + + + + + 42 + 78 + + + tree5 + 38 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 23 + 100 + + + flower + 16 + 16 + 5 + + + + + 111 + 160 + + + flower + 16 + 16 + 5 + + + + + 210 + 140 + + + flower + 16 + 16 + 5 + + + + + 126 + 55 + + + flower + 16 + 16 + 5 + + + + + 190 + 70 + + + flower + 16 + 16 + 5 + + + + + 40 + 180 + + + flower + 16 + 16 + 5 + + + + + 150 + 200 + + + flower + 16 + 16 + 5 + + + + + 125 + 125 + + + bird + 250 + 250 + 30 + + + + + diff --git a/bin/cell_templates/cell_16.xml b/bin/cell_templates/cell_16.xml new file mode 100644 index 0000000..7706edd --- /dev/null +++ b/bin/cell_templates/cell_16.xml @@ -0,0 +1,136 @@ + + + + 125 + 125 + + + pixel_grass + 250 + 250 + -10 + + + + + 42 + 50 + + + tree7 + 50 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 200 + 180 + + + tree3 + 36 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 33 + 177 + + + tree3 + 36 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 214 + 66 + + + tree1 + 50 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 90 + 100 + + + flower + 16 + 16 + 5 + + + + + 111 + 88 + + + flower + 16 + 16 + 5 + + + + + 140 + 88 + + + flower + 16 + 16 + 5 + + + + + 99 + 166 + + + flower + 16 + 16 + 5 + + + + + diff --git a/bin/cell_templates/cell_17.xml b/bin/cell_templates/cell_17.xml new file mode 100644 index 0000000..ac89a5b --- /dev/null +++ b/bin/cell_templates/cell_17.xml @@ -0,0 +1,196 @@ + + + + 125 + 125 + + + pixel_grass + 250 + 250 + -10 + + + + + 42 + 50 + + + tree9 + 44 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 89 + 44 + + + tree8 + 47 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 223 + 112 + + + tree0 + 38 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 90 + 160 + + + tree1 + 42 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 115 + 80 + + + tree0 + 38 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 190 + 36 + + + tree7 + 50 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 140 + 120 + + + tree4 + 34 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 42 + 122 + + + tree5 + 38 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 188 + 211 + + + tree7 + 50 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 26 + 177 + + + tree6 + 38 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + diff --git a/bin/cell_templates/cell_18.xml b/bin/cell_templates/cell_18.xml new file mode 100644 index 0000000..cbc6754 --- /dev/null +++ b/bin/cell_templates/cell_18.xml @@ -0,0 +1,142 @@ + + + + 125 + 125 + + + pixel_grass + 250 + 250 + -10 + + + + + 144 + 123 + + + tree8 + 47 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 44 + 56 + + + tree7 + 50 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 222 + 123 + + + tree6 + 38 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 180 + 66 + + + tree8 + 47 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 111 + 63 + + + tree0 + 38 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 55 + 207 + + + tree7 + 50 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 77 + 130 + + + tree3 + 36 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + diff --git a/bin/cell_templates/cell_19.xml b/bin/cell_templates/cell_19.xml new file mode 100644 index 0000000..ad95a88 --- /dev/null +++ b/bin/cell_templates/cell_19.xml @@ -0,0 +1,70 @@ + + + + 125 + 125 + + + pixel_grass + 250 + 250 + -10 + + + + + 50 + 50 + + + tree7 + 50 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 222 + 88 + + + tree8 + 47 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 38 + 197 + + + tree8 + 47 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + diff --git a/bin/cell_templates/cell_2.xml b/bin/cell_templates/cell_2.xml new file mode 100644 index 0000000..1ecd2ee --- /dev/null +++ b/bin/cell_templates/cell_2.xml @@ -0,0 +1,142 @@ + + + + 125 + 125 + + + pixel_grass + 250 + 250 + -10 + + + + + 70 + 100 + + + tree6 + 40 + 128 + 11 + + + box + 20 + 18 + 0 + + + + + 120 + 90 + + + sign + 16 + 16 + 11 + + + box + 8 + 12 + 0 + + + + + 190 + 50 + + + tree7 + 50 + 128 + 11 + + + box + 20 + 18 + 0 + + + + + 170 + 200 + + + tree8 + 47 + 128 + 11 + + + box + 20 + 18 + 0 + + + + + 160 + 140 + + + tree1 + 47 + 128 + 11 + + + box + 20 + 18 + 0 + + + + + 60 + 56 + + + tree2 + 38 + 128 + 11 + + + box + 20 + 18 + 0 + + + + + 40 + 210 + + + tree3 + 36 + 128 + 11 + + + box + 20 + 18 + 0 + + + + + diff --git a/bin/cell_templates/cell_3.xml b/bin/cell_templates/cell_3.xml new file mode 100644 index 0000000..6897b74 --- /dev/null +++ b/bin/cell_templates/cell_3.xml @@ -0,0 +1,273 @@ + + + + 125 + 125 + + + pixel_grass + 250 + 250 + -10 + + + + + 125 + 125 + + + fountain + 66 + 104 + 11 + + + circle + 32 + 0 + + + + + 96 + 32 + + + flower + 16 + 16 + 0 + + + + + 160 + 32 + + + flower + 16 + 16 + 0 + + + + + 64 + 64 + + + flower + 16 + 16 + 0 + + + + + 128 + 64 + + + flower + 16 + 16 + 0 + + + + + 192 + 64 + + + flower + 16 + 16 + 0 + + + + + 32 + 96 + + + flower + 16 + 16 + 0 + + + + + 96 + 96 + + + flower + 16 + 16 + 0 + + + + + 160 + 96 + + + flower + 16 + 16 + 0 + + + + + 224 + 96 + + + flower + 16 + 16 + 0 + + + + + 64 + 128 + + + flower + 16 + 16 + 0 + + + + + 192 + 128 + + + flower + 16 + 16 + 0 + + + + + 32 + 160 + + + flower + 16 + 16 + 0 + + + + + 96 + 160 + + + flower + 16 + 16 + 0 + + + + + 160 + 160 + + + flower + 16 + 16 + 0 + + + + + 224 + 160 + + + flower + 16 + 16 + 0 + + + + + 64 + 192 + + + flower + 16 + 16 + 0 + + + + + 128 + 192 + + + flower + 16 + 16 + 0 + + + + + 192 + 192 + + + flower + 16 + 16 + 0 + + + + + 96 + 224 + + + flower + 16 + 16 + 0 + + + + + 160 + 224 + + + flower + 16 + 16 + 0 + + + + + diff --git a/bin/cell_templates/cell_4.xml b/bin/cell_templates/cell_4.xml new file mode 100644 index 0000000..784ed1b --- /dev/null +++ b/bin/cell_templates/cell_4.xml @@ -0,0 +1,46 @@ + + + + 125 + 125 + + + pixel_grass + 250 + 250 + -10 + + + + + 125 + 125 + + + sand_dust + 128 + 128 + 0 + + + + + 125 + 125 + + + rocket + 32 + 162 + 11 + + + box + 28 + 15 + 0 + + + + + diff --git a/bin/cell_templates/cell_5.xml b/bin/cell_templates/cell_5.xml new file mode 100644 index 0000000..17bc6e3 --- /dev/null +++ b/bin/cell_templates/cell_5.xml @@ -0,0 +1,190 @@ + + + + 125 + 125 + + + pixel_grass + 250 + 250 + -10 + + + + + 125 + 125 + + + truck + 51 + 42 + 11 + + + box + 45 + 34 + 0 + + + + + 135 + 135 + + + mew + 17 + 29 + 12 + + + + + 30 + 60 + + + tree2 + 28 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 110 + 80 + + + tree9 + 44 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 222 + 188 + + + tree1 + 44 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 100 + 166 + + + tree4 + 34 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 200 + 33 + + + tree9 + 44 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 50 + 144 + + + tree6 + 38 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 44 + 211 + + + tree8 + 47 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 77 + 44 + + + tree7 + 50 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + diff --git a/bin/cell_templates/cell_6.xml b/bin/cell_templates/cell_6.xml new file mode 100644 index 0000000..34ea26f --- /dev/null +++ b/bin/cell_templates/cell_6.xml @@ -0,0 +1,214 @@ + + + + 125 + 125 + + + pixel_grass + 250 + 250 + -10 + + + + + 23 + 176 + + + tree7 + 50 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 166 + 55 + + + tree4 + 34 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 111 + 111 + + + tree6 + 38 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 150 + 200 + + + tree0 + 38 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 177 + 99 + + + tree0 + 38 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 44 + 77 + + + tree5 + 38 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 22 + 33 + + + tree3 + 36 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 88 + 33 + + + tree7 + 50 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 210 + 150 + + + tree2 + 38 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 22 + 33 + + + tree3 + 36 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 88 + 211 + + + tree7 + 50 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + diff --git a/bin/cell_templates/cell_7.xml b/bin/cell_templates/cell_7.xml new file mode 100644 index 0000000..30e2b24 --- /dev/null +++ b/bin/cell_templates/cell_7.xml @@ -0,0 +1,124 @@ + + + + 125 + 125 + + + pixel_grass + 250 + 250 + -10 + + + + + 23 + 176 + + + tree8 + 47 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 51 + 211 + + + tree8 + 47 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 202 + 205 + + + tree8 + 47 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 38 + 41 + + + tree5 + 38 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 77 + 26 + + + tree0 + 38 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 215 + 37 + + + tree5 + 38 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + diff --git a/bin/cell_templates/cell_8.xml b/bin/cell_templates/cell_8.xml new file mode 100644 index 0000000..226e002 --- /dev/null +++ b/bin/cell_templates/cell_8.xml @@ -0,0 +1,208 @@ + + + + 125 + 125 + + + pixel_grass + 250 + 250 + -10 + + + + + 23 + 176 + + + tree8 + 47 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 51 + 211 + + + tree8 + 47 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 202 + 205 + + + tree8 + 47 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 38 + 41 + + + tree0 + 38 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 77 + 26 + + + tree5 + 38 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 215 + 37 + + + tree0 + 38 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 125 + 125 + + + crater + 54 + 47 + 5 + + + + + 155 + 155 + + + flower + 16 + 16 + 5 + + + + + 180 + 191 + + + flower + 16 + 16 + 5 + + + + + 97 + 185 + + + flower + 16 + 16 + 5 + + + + + 99 + 88 + + + flower + 16 + 16 + 5 + + + + + 77 + 130 + + + flower + 16 + 16 + 5 + + + + + 191 + 110 + + + flower + 16 + 16 + 5 + + + + + diff --git a/bin/cell_templates/cell_9.xml b/bin/cell_templates/cell_9.xml new file mode 100644 index 0000000..bcb7936 --- /dev/null +++ b/bin/cell_templates/cell_9.xml @@ -0,0 +1,124 @@ + + + + 125 + 125 + + + pixel_grass + 250 + 250 + -10 + + + + + 123 + 112 + + + tree9 + 44 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 56 + 98 + + + tree1 + 42 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 111 + 183 + + + tree3 + 44 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 223 + 55 + + + tree7 + 50 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 55 + 186 + + + tree4 + 34 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + 123 + 36 + + + tree9 + 44 + 128 + 12 + + + box + 20 + 18 + 0 + + + + + diff --git a/bin/img/ball.png b/bin/img/ball.png new file mode 100644 index 0000000..d8953fd Binary files /dev/null and b/bin/img/ball.png differ diff --git a/bin/img/bird/bird_0.png b/bin/img/bird/bird_0.png new file mode 100644 index 0000000..2ed5fd5 Binary files /dev/null and b/bin/img/bird/bird_0.png differ diff --git a/bin/img/bird/bird_1.png b/bin/img/bird/bird_1.png new file mode 100644 index 0000000..59fd102 Binary files /dev/null and b/bin/img/bird/bird_1.png differ diff --git a/bin/img/bird/bird_10.png b/bin/img/bird/bird_10.png new file mode 100644 index 0000000..34b0ec7 Binary files /dev/null and b/bin/img/bird/bird_10.png differ diff --git a/bin/img/bird/bird_11.png b/bin/img/bird/bird_11.png new file mode 100644 index 0000000..f21d462 Binary files /dev/null and b/bin/img/bird/bird_11.png differ diff --git a/bin/img/bird/bird_12.png b/bin/img/bird/bird_12.png new file mode 100644 index 0000000..924d5a6 Binary files /dev/null and b/bin/img/bird/bird_12.png differ diff --git a/bin/img/bird/bird_13.png b/bin/img/bird/bird_13.png new file mode 100644 index 0000000..6383584 Binary files /dev/null and b/bin/img/bird/bird_13.png differ diff --git a/bin/img/bird/bird_14.png b/bin/img/bird/bird_14.png new file mode 100644 index 0000000..00cd8f3 Binary files /dev/null and b/bin/img/bird/bird_14.png differ diff --git a/bin/img/bird/bird_15.png b/bin/img/bird/bird_15.png new file mode 100644 index 0000000..81655e0 Binary files /dev/null and b/bin/img/bird/bird_15.png differ diff --git a/bin/img/bird/bird_16.png b/bin/img/bird/bird_16.png new file mode 100644 index 0000000..2330580 Binary files /dev/null and b/bin/img/bird/bird_16.png differ diff --git a/bin/img/bird/bird_17.png b/bin/img/bird/bird_17.png new file mode 100644 index 0000000..f26fb4b Binary files /dev/null and b/bin/img/bird/bird_17.png differ diff --git a/bin/img/bird/bird_18.png b/bin/img/bird/bird_18.png new file mode 100644 index 0000000..9d1b0b5 Binary files /dev/null and b/bin/img/bird/bird_18.png differ diff --git a/bin/img/bird/bird_19.png b/bin/img/bird/bird_19.png new file mode 100644 index 0000000..d0de733 Binary files /dev/null and b/bin/img/bird/bird_19.png differ diff --git a/bin/img/bird/bird_2.png b/bin/img/bird/bird_2.png new file mode 100644 index 0000000..7cab6aa Binary files /dev/null and b/bin/img/bird/bird_2.png differ diff --git a/bin/img/bird/bird_20.png b/bin/img/bird/bird_20.png new file mode 100644 index 0000000..0724519 Binary files /dev/null and b/bin/img/bird/bird_20.png differ diff --git a/bin/img/bird/bird_21.png b/bin/img/bird/bird_21.png new file mode 100644 index 0000000..abb91e1 Binary files /dev/null and b/bin/img/bird/bird_21.png differ diff --git a/bin/img/bird/bird_22.png b/bin/img/bird/bird_22.png new file mode 100644 index 0000000..04f0fd6 Binary files /dev/null and b/bin/img/bird/bird_22.png differ diff --git a/bin/img/bird/bird_23.png b/bin/img/bird/bird_23.png new file mode 100644 index 0000000..669ac2d Binary files /dev/null and b/bin/img/bird/bird_23.png differ diff --git a/bin/img/bird/bird_24.png b/bin/img/bird/bird_24.png new file mode 100644 index 0000000..62c8072 Binary files /dev/null and b/bin/img/bird/bird_24.png differ diff --git a/bin/img/bird/bird_25.png b/bin/img/bird/bird_25.png new file mode 100644 index 0000000..b912b43 Binary files /dev/null and b/bin/img/bird/bird_25.png differ diff --git a/bin/img/bird/bird_26.png b/bin/img/bird/bird_26.png new file mode 100644 index 0000000..05165bd Binary files /dev/null and b/bin/img/bird/bird_26.png differ diff --git a/bin/img/bird/bird_27.png b/bin/img/bird/bird_27.png new file mode 100644 index 0000000..550de04 Binary files /dev/null and b/bin/img/bird/bird_27.png differ diff --git a/bin/img/bird/bird_28.png b/bin/img/bird/bird_28.png new file mode 100644 index 0000000..5b46a5a Binary files /dev/null and b/bin/img/bird/bird_28.png differ diff --git a/bin/img/bird/bird_29.png b/bin/img/bird/bird_29.png new file mode 100644 index 0000000..61d2a34 Binary files /dev/null and b/bin/img/bird/bird_29.png differ diff --git a/bin/img/bird/bird_3.png b/bin/img/bird/bird_3.png new file mode 100644 index 0000000..e4cb45d Binary files /dev/null and b/bin/img/bird/bird_3.png differ diff --git a/bin/img/bird/bird_30.png b/bin/img/bird/bird_30.png new file mode 100644 index 0000000..6bfffb6 Binary files /dev/null and b/bin/img/bird/bird_30.png differ diff --git a/bin/img/bird/bird_31.png b/bin/img/bird/bird_31.png new file mode 100644 index 0000000..f6a9a63 Binary files /dev/null and b/bin/img/bird/bird_31.png differ diff --git a/bin/img/bird/bird_4.png b/bin/img/bird/bird_4.png new file mode 100644 index 0000000..0b5a77a Binary files /dev/null and b/bin/img/bird/bird_4.png differ diff --git a/bin/img/bird/bird_5.png b/bin/img/bird/bird_5.png new file mode 100644 index 0000000..08ae368 Binary files /dev/null and b/bin/img/bird/bird_5.png differ diff --git a/bin/img/bird/bird_6.png b/bin/img/bird/bird_6.png new file mode 100644 index 0000000..54de781 Binary files /dev/null and b/bin/img/bird/bird_6.png differ diff --git a/bin/img/bird/bird_7.png b/bin/img/bird/bird_7.png new file mode 100644 index 0000000..0e09ba6 Binary files /dev/null and b/bin/img/bird/bird_7.png differ diff --git a/bin/img/bird/bird_8.png b/bin/img/bird/bird_8.png new file mode 100644 index 0000000..db5c41a Binary files /dev/null and b/bin/img/bird/bird_8.png differ diff --git a/bin/img/bird/bird_9.png b/bin/img/bird/bird_9.png new file mode 100644 index 0000000..66abf93 Binary files /dev/null and b/bin/img/bird/bird_9.png differ diff --git a/bin/img/castle_0.png b/bin/img/castle_0.png new file mode 100644 index 0000000..7535ad3 Binary files /dev/null and b/bin/img/castle_0.png differ diff --git a/bin/img/castle_1.png b/bin/img/castle_1.png new file mode 100644 index 0000000..21066e4 Binary files /dev/null and b/bin/img/castle_1.png differ diff --git a/bin/img/castle_2.png b/bin/img/castle_2.png new file mode 100644 index 0000000..328a8db Binary files /dev/null and b/bin/img/castle_2.png differ diff --git a/bin/img/castle_3.png b/bin/img/castle_3.png new file mode 100644 index 0000000..56d8f56 Binary files /dev/null and b/bin/img/castle_3.png differ diff --git a/bin/img/crater.png b/bin/img/crater.png new file mode 100644 index 0000000..086cd01 Binary files /dev/null and b/bin/img/crater.png differ diff --git a/bin/img/fence_16.png b/bin/img/fence_16.png new file mode 100644 index 0000000..3f18b1e Binary files /dev/null and b/bin/img/fence_16.png differ diff --git a/bin/img/fence_5.png b/bin/img/fence_5.png new file mode 100644 index 0000000..177d26c Binary files /dev/null and b/bin/img/fence_5.png differ diff --git a/bin/img/fence_9.png b/bin/img/fence_9.png new file mode 100644 index 0000000..4bc893d Binary files /dev/null and b/bin/img/fence_9.png differ diff --git a/bin/img/fence_side.png b/bin/img/fence_side.png new file mode 100644 index 0000000..6335500 Binary files /dev/null and b/bin/img/fence_side.png differ diff --git a/bin/img/flower.png b/bin/img/flower.png new file mode 100644 index 0000000..ad2944d Binary files /dev/null and b/bin/img/flower.png differ diff --git a/bin/img/fountain.png b/bin/img/fountain.png new file mode 100644 index 0000000..7da9917 Binary files /dev/null and b/bin/img/fountain.png differ diff --git a/bin/img/grass_2.png b/bin/img/grass_2.png new file mode 100644 index 0000000..8318ea1 Binary files /dev/null and b/bin/img/grass_2.png differ diff --git a/bin/img/grass_3.png b/bin/img/grass_3.png new file mode 100644 index 0000000..aba5703 Binary files /dev/null and b/bin/img/grass_3.png differ diff --git a/bin/img/mew.png b/bin/img/mew.png new file mode 100644 index 0000000..6bc5c24 Binary files /dev/null and b/bin/img/mew.png differ diff --git a/bin/img/mew_0.png b/bin/img/mew_0.png new file mode 100644 index 0000000..9310428 Binary files /dev/null and b/bin/img/mew_0.png differ diff --git a/bin/img/mew_1.png b/bin/img/mew_1.png new file mode 100644 index 0000000..b2ad0b6 Binary files /dev/null and b/bin/img/mew_1.png differ diff --git a/bin/img/mew_2.png b/bin/img/mew_2.png new file mode 100644 index 0000000..e75c2af Binary files /dev/null and b/bin/img/mew_2.png differ diff --git a/bin/img/mew_3.png b/bin/img/mew_3.png new file mode 100644 index 0000000..a259ae9 Binary files /dev/null and b/bin/img/mew_3.png differ diff --git a/bin/img/mew_4.png b/bin/img/mew_4.png new file mode 100644 index 0000000..6722e5e Binary files /dev/null and b/bin/img/mew_4.png differ diff --git a/bin/img/mew_5.png b/bin/img/mew_5.png new file mode 100644 index 0000000..6d0e052 Binary files /dev/null and b/bin/img/mew_5.png differ diff --git a/bin/img/pokemon_center.png b/bin/img/pokemon_center.png new file mode 100644 index 0000000..05653f9 Binary files /dev/null and b/bin/img/pokemon_center.png differ diff --git a/bin/img/pokemon_red_pj.png b/bin/img/pokemon_red_pj.png new file mode 100644 index 0000000..70b0e37 Binary files /dev/null and b/bin/img/pokemon_red_pj.png differ diff --git a/bin/img/rocket.png b/bin/img/rocket.png new file mode 100644 index 0000000..c31f3dd Binary files /dev/null and b/bin/img/rocket.png differ diff --git a/bin/img/sand_dust.png b/bin/img/sand_dust.png new file mode 100644 index 0000000..4436de2 Binary files /dev/null and b/bin/img/sand_dust.png differ diff --git a/bin/img/sheet.png b/bin/img/sheet.png new file mode 100644 index 0000000..5ee568d Binary files /dev/null and b/bin/img/sheet.png differ diff --git a/bin/img/sign.png b/bin/img/sign.png new file mode 100644 index 0000000..e2813bc Binary files /dev/null and b/bin/img/sign.png differ diff --git a/bin/img/trees.png b/bin/img/trees.png new file mode 100644 index 0000000..b1196e0 Binary files /dev/null and b/bin/img/trees.png differ diff --git a/bin/img/truck.png b/bin/img/truck.png new file mode 100644 index 0000000..69981c0 Binary files /dev/null and b/bin/img/truck.png differ diff --git a/bin/init_file.xml b/bin/init_file.xml index 5003050..13f4cc8 100644 --- a/bin/init_file.xml +++ b/bin/init_file.xml @@ -4,4 +4,4 @@ 600 250.0 -3 \ No newline at end of file +2 diff --git a/bin/sprites/ball.xml b/bin/sprites/ball.xml new file mode 100644 index 0000000..1d656a7 --- /dev/null +++ b/bin/sprites/ball.xml @@ -0,0 +1,23 @@ + + + + ball.png + + + + + + + sp1 + + 0 0 + 20 20 + + + + + + + + + diff --git a/bin/sprites/bird.xml b/bin/sprites/bird.xml new file mode 100644 index 0000000..0c1b283 --- /dev/null +++ b/bin/sprites/bird.xml @@ -0,0 +1,294 @@ + + + + bird/bird_0.png + bird/bird_1.png + bird/bird_2.png + bird/bird_3.png + bird/bird_4.png + bird/bird_5.png + bird/bird_6.png + bird/bird_7.png + bird/bird_8.png + bird/bird_9.png + bird/bird_10.png + bird/bird_11.png + bird/bird_12.png + bird/bird_13.png + bird/bird_14.png + bird/bird_15.png + bird/bird_16.png + bird/bird_17.png + bird/bird_18.png + bird/bird_19.png + bird/bird_20.png + bird/bird_21.png + bird/bird_22.png + bird/bird_23.png + bird/bird_24.png + bird/bird_25.png + bird/bird_26.png + bird/bird_27.png + bird/bird_28.png + bird/bird_29.png + bird/bird_30.png + bird/bird_31.png + + + + + + b0 + + 0 0 + 250 250 + + + + + b2 + + 0 0 + 250 250 + + + + + b3 + + 0 0 + 250 250 + + + + + b4 + + 0 0 + 250 250 + + + + + b5 + + 0 0 + 250 250 + + + + + b6 + + 0 0 + 250 250 + + + + + b7 + + 0 0 + 250 250 + + + + + b8 + + 0 0 + 250 250 + + + + + b9 + + 0 0 + 250 250 + + + + + b10 + + 0 0 + 250 250 + + + + + b11 + + 0 0 + 250 250 + + + + + b12 + + 0 0 + 250 250 + + + + + b13 + + 0 0 + 250 250 + + + + + b14 + + 0 0 + 250 250 + + + + + b15 + + 0 0 + 250 250 + + + + + b16 + + 0 0 + 250 250 + + + + + b17 + + 0 0 + 250 250 + + + + + b18 + + 0 0 + 250 250 + + + + + b19 + + 0 0 + 250 250 + + + + + b20 + + 0 0 + 250 250 + + + + + b21 + + 0 0 + 250 250 + + + + + b22 + + 0 0 + 250 250 + + + + + b23 + + 0 0 + 250 250 + + + + + b24 + + 0 0 + 250 250 + + + + + b25 + + 0 0 + 250 250 + + + + + b26 + + 0 0 + 250 250 + + + + + b27 + + 0 0 + 250 250 + + + + + b28 + + 0 0 + 250 250 + + + + + b29 + + 0 0 + 250 250 + + + + + b30 + + 0 0 + 250 250 + + + + + b31 + + 0 0 + 250 250 + + + + + + + + + + diff --git a/bin/sprites/castle.xml b/bin/sprites/castle.xml new file mode 100644 index 0000000..15146ad --- /dev/null +++ b/bin/sprites/castle.xml @@ -0,0 +1,47 @@ + + + + castle_0.png + castle_1.png + castle_2.png + castle_3.png + + + + + + c0 + + 0 0 + 102 180 + + + + + c1 + + 0 0 + 102 180 + + + + + c2 + + 0 0 + 102 180 + + + + + c3 + + 0 0 + 102 180 + + + + + + + diff --git a/bin/sprites/crater.xml b/bin/sprites/crater.xml new file mode 100644 index 0000000..393d165 --- /dev/null +++ b/bin/sprites/crater.xml @@ -0,0 +1,22 @@ + + + + crater.png + + + + + + + sp1 + + 0 0 + 54 47 + + + + + + + + diff --git a/bin/sprites/fence_16.xml b/bin/sprites/fence_16.xml new file mode 100644 index 0000000..03d646b --- /dev/null +++ b/bin/sprites/fence_16.xml @@ -0,0 +1,23 @@ + + + + + fence_16.png + + + + + + + sp1 + + 0 0 + 254 26 + + + + + + + + diff --git a/bin/sprites/fence_5.xml b/bin/sprites/fence_5.xml new file mode 100644 index 0000000..901bef8 --- /dev/null +++ b/bin/sprites/fence_5.xml @@ -0,0 +1,23 @@ + + + + + fence_5.png + + + + + + + sp1 + + 0 0 + 78 26 + + + + + + + + diff --git a/bin/sprites/fence_9.xml b/bin/sprites/fence_9.xml new file mode 100644 index 0000000..17dbfac --- /dev/null +++ b/bin/sprites/fence_9.xml @@ -0,0 +1,23 @@ + + + + + fence_9.png + + + + + + + sp1 + + 0 0 + 142 26 + + + + + + + + diff --git a/bin/sprites/fence_side.xml b/bin/sprites/fence_side.xml new file mode 100644 index 0000000..e2cd369 --- /dev/null +++ b/bin/sprites/fence_side.xml @@ -0,0 +1,23 @@ + + + + + fence_side.png + + + + + + + sp1 + + 0 0 + 6 112 + + + + + + + + diff --git a/bin/sprites/flower.xml b/bin/sprites/flower.xml new file mode 100644 index 0000000..c5f4e75 --- /dev/null +++ b/bin/sprites/flower.xml @@ -0,0 +1,55 @@ + + + + flower.png + + + + + + sp0 + + 0 0 + 16 16 + + + + + sp0 + + 17 0 + 16 16 + + + + + sp0 + + 34 0 + 16 16 + + + + + sp0 + + 51 0 + 16 16 + + + + + sp0 + + 68 0 + 16 16 + + + + + + + + + + diff --git a/bin/sprites/fountain.xml b/bin/sprites/fountain.xml new file mode 100644 index 0000000..80312cb --- /dev/null +++ b/bin/sprites/fountain.xml @@ -0,0 +1,30 @@ + + + + fountain.png + + + + + + sp0 + + 0 0 + 66 104 + + + + + sp0 + + 75 0 + 66 104 + + + + + + + + + diff --git a/bin/sprites/grass.xml b/bin/sprites/grass.xml new file mode 100644 index 0000000..6e9035c --- /dev/null +++ b/bin/sprites/grass.xml @@ -0,0 +1,22 @@ + + + + grass_2.png + + + + + + + sp1 + + 0 0 + 250 250 + + + + + + + + diff --git a/bin/sprites/gros.xml b/bin/sprites/gros.xml new file mode 100644 index 0000000..220300c --- /dev/null +++ b/bin/sprites/gros.xml @@ -0,0 +1,38 @@ + + + + sheet.png + + + + + + + sp1 + + 144 0 + 144 144 + + + + + sp1 + + 288 0 + 144 144 + + + + + sp1 + + 432 0 + 144 144 + + + + + + + + diff --git a/bin/sprites/mew.xml b/bin/sprites/mew.xml new file mode 100644 index 0000000..b05c039 --- /dev/null +++ b/bin/sprites/mew.xml @@ -0,0 +1,67 @@ + + + + mew_0.png + mew_1.png + mew_2.png + mew_3.png + mew_4.png + mew_5.png + + + + + + + m0 + + 0 0 + 17 29 + + + + + m1 + + 0 0 + 17 29 + + + + + m2 + + 0 0 + 17 29 + + + + + m3 + + 0 0 + 17 29 + + + + + m4 + + 0 0 + 17 29 + + + + + m5 + + 0 0 + 17 29 + + + + + + + + diff --git a/bin/sprites/pixel_grass.xml b/bin/sprites/pixel_grass.xml new file mode 100644 index 0000000..9b98ecf --- /dev/null +++ b/bin/sprites/pixel_grass.xml @@ -0,0 +1,22 @@ + + + + grass_3.png + + + + + + + sp1 + + 0 0 + 250 250 + + + + + + + + diff --git a/bin/sprites/pokemon_center.xml b/bin/sprites/pokemon_center.xml new file mode 100644 index 0000000..164c069 --- /dev/null +++ b/bin/sprites/pokemon_center.xml @@ -0,0 +1,23 @@ + + + + pokemon_center.png + + + + + + + sp1 + + 0 0 + 64 64 + + + + + + + + + diff --git a/bin/sprites/real_grass.xml b/bin/sprites/real_grass.xml new file mode 100644 index 0000000..b9c9ad1 --- /dev/null +++ b/bin/sprites/real_grass.xml @@ -0,0 +1,22 @@ + + + + grass.png + + + + + + + sp1 + + 0 0 + 250 250 + + + + + + + + diff --git a/bin/sprites/red.xml b/bin/sprites/red.xml new file mode 100644 index 0000000..9f74b29 --- /dev/null +++ b/bin/sprites/red.xml @@ -0,0 +1,148 @@ + + + + pokemon_red_pj.png + + + + + + + sp1 + + 32 0 + 32 32 + + + + + + + + sp1 + + 32 32 + 32 32 + + + + + + + + sp1 + + 32 64 + 32 32 + + + + + + + + sp1 + + 32 96 + 32 32 + + + + + + + + sp1 + + 0 0 + 32 32 + + + + + sp1 + + 32 0 + 32 32 + + + + + sp1 + + 64 0 + 32 32 + + + + + + + + sp1 + + 0 32 + 32 32 + + + + + sp1 + + 32 32 + 32 32 + + + + + + + + sp1 + + 0 64 + 32 32 + + + + + sp1 + + 32 64 + 32 32 + + + + + + + + sp1 + + 0 96 + 32 32 + + + + + sp1 + + 32 96 + 32 32 + + + + + sp1 + + 64 96 + 32 32 + + + + + + + + + diff --git a/bin/sprites/rocket.xml b/bin/sprites/rocket.xml new file mode 100644 index 0000000..9ecee2c --- /dev/null +++ b/bin/sprites/rocket.xml @@ -0,0 +1,22 @@ + + + + rocket.png + + + + + + + sp1 + + 0 0 + 32 162 + + + + + + + + diff --git a/bin/sprites/sand_dust.xml b/bin/sprites/sand_dust.xml new file mode 100644 index 0000000..3514bd6 --- /dev/null +++ b/bin/sprites/sand_dust.xml @@ -0,0 +1,22 @@ + + + + sand_dust.png + + + + + + + sp1 + + 0 0 + 128 128 + + + + + + + + diff --git a/bin/sprites/sign.xml b/bin/sprites/sign.xml new file mode 100644 index 0000000..e7ab60b --- /dev/null +++ b/bin/sprites/sign.xml @@ -0,0 +1,23 @@ + + + + sign.png + + + + + + + sp1 + + 0 0 + 16 16 + + + + + + + + + diff --git a/bin/sprites/tree0.xml b/bin/sprites/tree0.xml new file mode 100644 index 0000000..9775410 --- /dev/null +++ b/bin/sprites/tree0.xml @@ -0,0 +1,22 @@ + + + + trees.png + + + + + + + sp1 + + 5 0 + 38 128 + + + + + + + + diff --git a/bin/sprites/tree1.xml b/bin/sprites/tree1.xml new file mode 100644 index 0000000..1a13d59 --- /dev/null +++ b/bin/sprites/tree1.xml @@ -0,0 +1,23 @@ + + + + trees.png + + + + + + + sp1 + + 45 0 + 42 128 + + + + + + + + + diff --git a/bin/sprites/tree2.xml b/bin/sprites/tree2.xml new file mode 100644 index 0000000..b02774c --- /dev/null +++ b/bin/sprites/tree2.xml @@ -0,0 +1,23 @@ + + + + trees.png + + + + + + + sp1 + + 89 0 + 38 128 + + + + + + + + + diff --git a/bin/sprites/tree3.xml b/bin/sprites/tree3.xml new file mode 100644 index 0000000..b077552 --- /dev/null +++ b/bin/sprites/tree3.xml @@ -0,0 +1,23 @@ + + + + trees.png + + + + + + + sp1 + + 129 0 + 36 128 + + + + + + + + + diff --git a/bin/sprites/tree4.xml b/bin/sprites/tree4.xml new file mode 100644 index 0000000..fc8c547 --- /dev/null +++ b/bin/sprites/tree4.xml @@ -0,0 +1,23 @@ + + + + trees.png + + + + + + + sp1 + + 167 0 + 34 128 + + + + + + + + + diff --git a/bin/sprites/tree5.xml b/bin/sprites/tree5.xml new file mode 100644 index 0000000..6507cfe --- /dev/null +++ b/bin/sprites/tree5.xml @@ -0,0 +1,22 @@ + + + + trees.png + + + + + + + sp1 + + 203 0 + 38 128 + + + + + + + + diff --git a/bin/sprites/tree6.xml b/bin/sprites/tree6.xml new file mode 100644 index 0000000..bb94ec2 --- /dev/null +++ b/bin/sprites/tree6.xml @@ -0,0 +1,22 @@ + + + + trees.png + + + + + + + sp1 + + 243 0 + 38 128 + + + + + + + + diff --git a/bin/sprites/tree7.xml b/bin/sprites/tree7.xml new file mode 100644 index 0000000..65ac363 --- /dev/null +++ b/bin/sprites/tree7.xml @@ -0,0 +1,23 @@ + + + + trees.png + + + + + + + sp1 + + 283 0 + 50 128 + + + + + + + + + diff --git a/bin/sprites/tree8.xml b/bin/sprites/tree8.xml new file mode 100644 index 0000000..989864b --- /dev/null +++ b/bin/sprites/tree8.xml @@ -0,0 +1,23 @@ + + + + trees.png + + + + + + + sp1 + + 335 0 + 47 128 + + + + + + + + + diff --git a/bin/sprites/tree9.xml b/bin/sprites/tree9.xml new file mode 100644 index 0000000..5e08512 --- /dev/null +++ b/bin/sprites/tree9.xml @@ -0,0 +1,23 @@ + + + + trees.png + + + + + + + sp1 + + 383 0 + 44 128 + + + + + + + + + diff --git a/bin/sprites/truck.xml b/bin/sprites/truck.xml new file mode 100644 index 0000000..d6c0e76 --- /dev/null +++ b/bin/sprites/truck.xml @@ -0,0 +1,23 @@ + + + + truck.png + + + + + + + sp1 + + 0 0 + 51 42 + + + + + + + + + diff --git a/bin/world_folder/much_rand.py b/bin/world_folder/much_rand.py index e493ea6..7f307d3 100644 --- a/bin/world_folder/much_rand.py +++ b/bin/world_folder/much_rand.py @@ -79,8 +79,8 @@ def gen_rand_cell(): return res -for x in xrange(10): - for y in xrange(10): +for x in xrange(1): + for y in xrange(1): fileName = "cell_" + str(x) + "_" + str(y) + ".xml" diff --git a/bin/world_gens/forest_world.py b/bin/world_gens/forest_world.py new file mode 100644 index 0000000..d95f5b5 --- /dev/null +++ b/bin/world_gens/forest_world.py @@ -0,0 +1,39 @@ +dir_temp = "../cell_templates/" +dir_world = "../world_folder/" +world_file_name = dir_world + "world_file.txt" +num_temps = 20 +import io +from random import randint +from shutil import copyfile + +temps = [] +for i in range(num_temps): + t = dir_temp + str(i) + temps.append(t) + +w = 200 +h = 200 +s = w * h +o = int(s / 100) +i = 0 + + +wfc = "" +world_file = io.open(world_file_name, "w", newline='\n') + +for y in range(w): + for x in range(h): + rand_cell = randint(0, num_temps-1) + + name_source = dir_temp + "cell_" + str(rand_cell) + ".xml" + name_dest = dir_world + "cell_" + str(x) + "_" + str(y) + ".xml" + copyfile(name_source, name_dest) + + wfc += str(x) + " " + str(y) + "\n" + + if i % o == 0: + print("{0:d}%".format(int(i / o) + 1)) + i += 1 + +world_file.write(wfc) +world_file.close() diff --git a/bin/world_gens/main_character.xml b/bin/world_gens/main_character.xml new file mode 100644 index 0000000..e17a28c --- /dev/null +++ b/bin/world_gens/main_character.xml @@ -0,0 +1,20 @@ + + + 0 + 0 + 0 + 0 + + + red + 16 + 16 + 10 + + + box + 16 + 16 + 10 + + diff --git a/bin/world_gens/sprite.py b/bin/world_gens/sprite.py new file mode 100644 index 0000000..221f097 --- /dev/null +++ b/bin/world_gens/sprite.py @@ -0,0 +1,26 @@ +s = """ + + + 125 + 125 + + + grass + 250 + 250 + -10 + + +""" + +wf = open("world_file.txt", "w") + +for y in xrange(0, 200): + for x in xrange(0, 200): + name = "cell_" + str(x) + "_" + str(y) + ".xml" + f = open(name, "w") + f.write(s) + f.close() + + line = str(x) + " " + str(y) + "\n" + wf.write(line) diff --git a/bin/world_gens/world_gen.py b/bin/world_gens/world_gen.py new file mode 100644 index 0000000..3e85f5b --- /dev/null +++ b/bin/world_gens/world_gen.py @@ -0,0 +1,7 @@ + +W = 200 +H = 200 + +cell_templates = [ + +] diff --git a/build/.gitignore b/build/.gitignore new file mode 100644 index 0000000..d6b7ef3 --- /dev/null +++ b/build/.gitignore @@ -0,0 +1,2 @@ +* +!.gitignore diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/TargetDirectories.txt b/doc/be.bbl similarity index 100% rename from src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/TargetDirectories.txt rename to doc/be.bbl diff --git a/doc/be.blg b/doc/be.blg new file mode 100644 index 0000000..11cffe8 --- /dev/null +++ b/doc/be.blg @@ -0,0 +1,52 @@ +This is BibTeX, Version 0.99d (TeX Live 2015/dev/Debian) +Capacity: max_strings=35307, hash_size=35307, hash_prime=30011 +The top-level auxiliary file: be.aux +I couldn't open database file tfg.bib +---line 173 of file be.aux + : \bibdata{tfg + : } +I'm skipping whatever remains of this command +I found no database files---while reading file be.aux +I found no \bibstyle command---while reading file be.aux +You've used 18 entries, + 0 wiz_defined-function locations, + 102 strings with 620 characters, +and the built_in function-call counts, 0 in all, are: += -- 0 +> -- 0 +< -- 0 ++ -- 0 +- -- 0 +* -- 0 +:= -- 0 +add.period$ -- 0 +call.type$ -- 0 +change.case$ -- 0 +chr.to.int$ -- 0 +cite$ -- 0 +duplicate$ -- 0 +empty$ -- 0 +format.name$ -- 0 +if$ -- 0 +int.to.chr$ -- 0 +int.to.str$ -- 0 +missing$ -- 0 +newline$ -- 0 +num.names$ -- 0 +pop$ -- 0 +preamble$ -- 0 +purify$ -- 0 +quote$ -- 0 +skip$ -- 0 +stack$ -- 0 +substring$ -- 0 +swap$ -- 0 +text.length$ -- 0 +text.prefix$ -- 0 +top$ -- 0 +type$ -- 0 +warning$ -- 0 +while$ -- 0 +width$ -- 0 +write$ -- 0 +(There were 3 error messages) diff --git a/doc/be.pdf b/doc/be.pdf index a88a783..7627028 100644 Binary files a/doc/be.pdf and b/doc/be.pdf differ diff --git a/doc/be.tex b/doc/be.tex index 700e815..16837c7 100644 --- a/doc/be.tex +++ b/doc/be.tex @@ -12,16 +12,65 @@ \usepackage{verbatim} \usepackage{minted} \usepackage{pgfplots} +\usepackage{fix-cm} \graphicspath{ {img/} } -\begin{document} - -\title{ Open World Streaming: \linebreak -Automatic memory management in open world games without loading screens. } -\author{Alejandro Juan Pérez \\ \href{mailto:tuketet@gmail.com}{tuketet@gmail.com}} +\begin{document} -\maketitle +\begin{titlepage} + \centering + \vfill + + \begin{figure}[!tbp] + \centering + \begin{minipage}[b]{0.4\textwidth} + \includegraphics[width=6cm]{upv_logo.png} + \end{minipage} + \hfill + \begin{minipage}[b]{0.4\textwidth} + \includegraphics[width=6cm]{etsinf_logo.png} + \end{minipage} + \end{figure} + + + \vskip1cm + {\Large + Escola Tècnica Superior d'Enginyeria Informàtica + + Universitat Politècnica de València + } + + \vskip2cm + + {\fontsize{36}{30}\selectfont + Open World Streaming: + } + + {\huge + + Automatic memory management in open world games without loading screens. + } + \vskip2cm + + {\Large + Trabajo Fin de Grado + + Grado en Ingeniería Informática + } + + \vskip2cm + + \begin{flushright} + {\Large + Alejandro Juan Pérez \\ \href{mailto:tuketet@gmail.com}{tuketet@gmail.com}\\ + \vskip1cm + Supervised by\\Ramón Pascual Mollá Vayá + \vskip1cm + 2015-2016 + } + \end{flushright} +\end{titlepage} \newpage @@ -34,19 +83,66 @@ \section{Introduction} Open world games are among the most appreciated games by players. They provide users the chance to explore a big world and they are very immersive. Open world games grant players the freedom to take any decision and enjoy their high interaction. -As you might already know, in open world games the player usually controls an avatar over a big virtual world. So the player that controls the avatar takes its skin and, ideally, gets immersed in the virtual world. +In open world videogames the player, usually, controls an avatar over a big virtual world. So the player that controls the avatar takes its skin and, ideally, gets immersed in the virtual world. + +There is a good chance you know about some of the most famous open world games. Some of them are: \emph{Grad Theft Auto} series \footnote{\emph{Grand Theft Auto} is a series of games produced by \emph{Rockstar}} +, \emph{The Elder Scrolls} series \footnote{\emph{The Elder Scrolls} is a series of games produced by \emph{Bethesda}} or +\emph{Minecraft} \footnote{\emph{Minecraft} is a sandbox game produced by \emph{Mojang}}. +These games, apart from being very famous, they have all been in the top of the best-selling videogames\cite{bestselling}. -Sure you know about some of the most famous open world games. Some of them are: \emph{Grad Theft Auto} series (by \emph{Rockstar}), \emph{The Elder Of Scrolls} series (by \emph{Bethesda}), \emph{Minecraft} (by \emph{Mojang}). These games, apart from being very famous, have all been in the top of the best-selling videogames. Let's see some examples. \emph{Minecraft} has sold 19 million copies for the PC platform and it is the most sold PC game ever. Grand Theft Auto V has sold 19 millons copies for the \emph{PS3}, making it the most sold \emph{PS3} game ever. The \emph{Eder Scrolls: Skyrim} has sold 20 millon copies for \emph{PC}, \emph{XBOX} and \emph{PS3}\cite{bestselling}. +\begin{itemize} +\item \emph{Minecraft} has sold 19 million copies for the PC platform and it is the most sold PC game ever. +\item \emph{Grand Theft Auto V} has sold 19 millons copies for the \emph{PS3}, making it the most sold \emph{PS3} game ever. + +\item \emph{The Eder Scrolls: Skyrim} has sold 20 millon copies for \emph{PC}, \emph{XBOX} and \emph{PS3}. +\end{itemize} + Therefore, open world games are not only about fun, freedom and high interaction but also a promising business. And as we will see they are technologically challenging. Despite open world games are well know, the techniques that are applied in their implementation are not. Game studios that are experienced in the implementation of open world games, like \emph{Rockstar}, keep well their secrets. The development of open world game engines requires a great investment. -The purpose of this project is to develop a game engine that will support making open world videogames. Our engine should allow the creation of games with huge worlds and avoid loading screens. +The purpose of this project is to develop a game engine that will support making open world videogames. Our engine should allow the creation of games with huge worlds and avoid loading screens. There is very few information about the topic (specially at the implementation level). My intention is to gather available information and extend it with my own thoughts and get them to be implemented. Hopefully, this article, and the open source code that comes along with it, will help other people to understand the main concerns they should take when developing open world games. + +\section{Open world videogames} + +Open world are some kind of videogames in which the player can move freely in a huge virtual world. The structure of the game is not linear in terms of gameplay. That means, the player has the choice on what to do next. There are some game genres that can benefit a lot from the open world approach. For example, role playing games (RPG)\footnote{\url{https://en.wikipedia.org/wiki/Role-playing\_video\_game}}, sandbox\footnote{\url{https://en.wikipedia.org/wiki/Glossary\_of\_video\_game\_terms\#Sandbox\_game}} and vehicle simulation\footnote{\url{https://en.wikipedia.org/wiki/Vehicle\_simulation\_game}} are enhanced when convined with a big open world. + +In some open world RPGs, the player can explore the world and complete missions. Some of these missions are not mandatory so the player is allowed to decide whether or not to take them. These is an example of the non-linearity we have been talking about. + +\begin{figure}[H] + \centering + \includegraphics[scale=0.62]{farcry3.jpeg} + \caption{Far Cry 3 is a RPG featuring an open world} + \label{fig:farcry3} +\end{figure} + +In an open world vehicle simulation videogame, the player would be free to drive around a big city or the long roads of the country side. + +\begin{figure}[H] + \centering + \includegraphics[scale=0.48]{eurotruck.jpg} + \caption{Euro Truck Simulator is a driving simulator with a realistic open world} + \label{fig:eurotruck} +\end{figure} + +\subsection{Content generation} +\label{sec:contentgen} + +Since open world games have such a big universe, there must be a lot of content to fill up all that space. It is required to have a lot of people creating that content (programmers, designers, artists...). Sometimes, when there are not so many human resources available, it is a good choice to generate the world procedurally. Therefore, we can get help from the computers in order to fill the world with fun content. Most of the times, there is a mixture of procedurally generated content and artists content. But there are some games where the content generated by algorithms is predominant. Having the computers to do such a costly task is an advantage for indie game studios because they can not afford hiring so much people. \emph{No Man's Sky}\footnote{\emph{No Man's Sky} is a game produced by \emph{Hello Games}} is an example of a videogame with a procedurally generated world developed by a small team. + +\begin{figure}[H] + \centering + \includegraphics[scale=0.52]{nomanssky.jpg} + \caption{\emph{No Man's Sky} is a videogame with a potentially unending open world (procedurally generated)} + \label{fig:nomanssky} +\end{figure} + +Whether or not the content of open world games has been generated by a computer or a human, there is a common trend in the latest open world videogames: there are less and less loading screens. The videogame designers are trying to avoid loading screens when possible, so the player doesn't have to wait and has his immersion feeling increased. This is accomplished thanks to a techniche called world streaming. This is the main focus of this document. \section{Requirements} -So we are willing to make a game engine that supports the development of open world games. We are going to focus on the requirements that are more specific for open world games. And requirements that are common for most game engines will be left as secondary requirements. +So we are willing to make a game engine that supports the development of open world games and avoids loading screens. We are going to focus on the requirements that are more specific for open world games. And requirements that are common for most game engines will be left as secondary requirements. \subsection{Main requirements} @@ -56,7 +152,7 @@ \subsection{Main requirements} \item \textbf{Visualization:} We said that requirements that are common for any game engine will be treated as secondary requirements. But this is an exception. It is very important to have some kind of visual feedback. We need visualization to test our system. Also, it is important in order to prove that our engine is working properly. So we need to implement a graphical interface even if it is not very fancy. The graphics will be 2-dimensional. -\item \textbf{Memory management:} If there is one thing that characterizes open world games is that they usually have very big worlds. These worlds have a huge amounts of data (entities, textures, meshes, sound, etc). Some of this games require several tens of gigabytes of compressed data in secondary disk. Obviously we can not expect our users to have that much RAM capacity. The main challenge will be to keep memory consumption to a minimum while not compromising playability or quality. The trick we are going to use is to load into main memory only the things that are closer to the player. Another thing that we will do is to avoid duplicated resources in RAM. For example, there are is a forest that has many trees that share the same set of textures, we must accomplish that each texture is in RAM at most once. +\item \textbf{Memory management:} If there is one thing that characterizes open world games is that they usually have very big worlds. These worlds have a huge amounts of data (entities, textures, meshes, sound, etc). Some of this games require several tens of gigabytes of compressed data in secondary disk. Obviously, we can not expect our users to have that much RAM capacity. The main challenge will be to keep memory consumption to a minimum while not compromising playability or quality. The trick we are going to use is to load into main memory only the things that are closer to the player. Another thing that we will do is to avoid duplicated resources in RAM. For example, there are is a forest that has many trees that share the same set of textures, we must accomplish that each texture is in RAM at most once. \item \textbf{Accurate physics simulation:} Again, this is a feature that most game engines incorporate. But it is important as a main requirement because accuracy in open world games carry challenges that must be solved. We will talk about this topic later because it is complex and requires its own space ~(\ref{sec:precission}). @@ -102,7 +198,7 @@ \section{Level-based videogames} It is well know that computers(and other gaming devices) usually have two types of memory. The first memory is the one we usually call main memory. Main memory is fast and small. -The second memory is the secondary storage memory. This one is slow and big. Changing of level requires loading all the resources of the next level from secondary memory and, therefore, it is slow. That's why in most level-based games changing of level will pop-up a loading screen.and the player has to wait for a while. +The second memory is the secondary storage memory. This one is slow and big. Changing of level requires loading all the resources of the next level from secondary memory and, therefore, it is slow. That's why in most level-based games changing of level will pop-up a loading screen and the player has to wait for a while \cite{levelgame}. \begin{figure}[H] \centering @@ -111,15 +207,15 @@ \section{Level-based videogames} \label{fig:loading_sonic} \end{figure} -Some times the designers of the game use the loading screen to give tips to the player. +Sometimes, the designers of the game use the loading screen as a mean to give tips to the player. -The approach used by level-based games is not useful for open world games we need world streaming in order to avoid loading screens. +The approach used by level-based games is not suitable for open world games, we need world streaming in order to avoid loading screens. That doesn't mean there are not open world games that use the level-based approach but, probably, the only reason to implement an open world videogame with loading screens is because it is easier. \section{World streaming} -World streaming consists on loading game resources on demand. The concept is very similar to video streaming. In video streaming the data is sent from disk or from the network as it is needed. So in world streaming the game contents are taken from the disk (or from the network) to main memory as they are needed. +World streaming consists on loading game resources and entities on demand. The concept is very similar to video streaming. In video streaming the data is sent from disk or from the network as it is needed. So in world streaming the game contents are taken from the disk (or from the network) to main memory as they are needed. In contrast to video streaming, world streaming is not as straightforward. In video streaming the data is sequential, that is, you know what comes after. World streaming is different because what comes next depends on what the user does. So we must have the data prepared for all the decisions the user can make. -Imagine the case of platform game such as \emph{Terraria}. \emph{Terraria} is a 2D game that has an enormous map. +Imagine the case of a platform game such as \emph{Terraria}\footnote{\emph{Terraria} is a sandbox game by \emph{Re-Logic}}. \emph{Terraria} is a 2D game that has an enormous map. \begin{figure}[H] \centering @@ -137,6 +233,8 @@ \subsection{Examples of games using world streaming} In this section we are going to show some of the most relevant games supported by the world streaming technology. +It is pretty easy to find out whether a game is using some kind of world streaming or not. First of all, the game uses less RAM than the size it takes in secondary storage. This would mean that not all the content of the game is loaded at start up (which could be the case in small sized games like Retro City Rampage DX\cite{retrocitysmall}). The second characteristic that identifies games using streaming is the lack of loading screens when moving around (there can be still some loading screens like the first one and when taking portals). + \paragraph{\emph{Hunter} - Paul Holmes (1991)} \emph{Hunter} is one of the main influences of GTA (\emph{Grand Theft Auto}). \emph{Hunter} is a 3D action-adventure game in which the player could travel around a pretty big world. The degree of freedom in this game was enormous. There were many vehicles (bicycles, cars, ships, tanks, airplanes), places, and weapons. It is certainly not the first open world game but from the information we have I could affirm it might be the first game that used some kind of world streaming. @@ -178,7 +276,7 @@ \subsection{Examples of games using world streaming} \label{fig:midnight1} \end{figure} -This first \emph{Midnight Club} was released in the same year that the \emph{PS2} (\emph{PlayStation 2}) was commercialised. The acceptance of the public was good but sells were less than expected. One year later they released the \emph{GBA} version which was rated poorly. Despite of its unfortunate sales this game is the one that started a successful saga. +This first \emph{Midnight Club} was released in the same year that the \emph{PS2} (\emph{PlayStation 2}) was commercialised. The acceptance of the public was good but sells were less than expected. One year later, they released the \emph{GBA} version which was rated poorly. Despite of its unfortunate sales, this game is the one that started a successful saga. \paragraph{\emph{Dungeon Siege} - \emph{Gas Powered Games} (2002)} @@ -236,7 +334,7 @@ \subsection{Examples of games using world streaming} \paragraph{\emph{Minecraft} - \emph{Mojang} (2011)} -\emph{Minecraft} is the sandbox MMO that proved that games are not all about graphics. +\emph{Minecraft} is the sandbox that proved that games are not all about graphics. \begin{figure}[H] \centering @@ -281,7 +379,14 @@ \subsection{The strategy} \subsection{Loading Resources is slow} -Imagine that we have implemented our strategy and in a given moment the player has changed of node. We will have to load to main memory all the entities that are located in the new adjacent cell (or node). That implies: loading from disk the file that describes that cell, parsing that file in order to find the entities, loading all the resources that are required by the entities and finally creating the entities. So when the node had been loaded you would realize that you have spent 1 second (or much more) and in this time you haven't rendered a single frame!. This would be perceived by the user as a freeze. Therefore, we have to solve this in some way. +Imagine that we have implemented our strategy and in a given moment the player has changed of node. We will have to load to main memory all the entities that are located in the new adjacent cells (or nodes). That implies: loading from disk the file that describes that cell, parsing that file in order to find the entities, loading all the resources that are required by the entities and finally creating the entities. So when the node had been loaded you would realize that you have spent 1 second (or much more) and in this time you haven't rendered a single frame!. This would be perceived by the user as a freeze. Therefore, we have to solve this in some way. + +\begin{figure}[H] + \centering + \includegraphics[scale=0.6]{game_loop_disk.pdf} + \caption{Loading from disk in the main loop.} + \label{fig:mainloop} +\end{figure} The bottleneck here is the access to disk. Access to disk blocks the CPU and requires some time. So most of the time, when loading a new cell, the CPU would be idle while it could be doing important tasks (e.g. physics simulation or rendering). The solution that is suggested in the article of \emph{Scott Bilas} (and the one we have followed) is to use a separate thread for loading resources from disk. So if our main thread (the one that executes the main loop) needs to load a resource, instead of doing it itself, it asks the background thread to do it. This way, the main thread is never idle when there is job to be done and the secondary thread will be loading from disk at its own pace. @@ -292,6 +397,13 @@ \subsection{Loading Resources is slow} \label{fig:comic1} \end{figure} +\begin{figure}[H] + \centering + \includegraphics[scale=0.7]{game_loop_disk_2.pdf} + \caption{Loading from disk is performed by a secondary thread} + \label{fig:mainloop2} +\end{figure} + \section{The architecture of the engine} Our game engine will be composed by some subsystems. @@ -332,10 +444,10 @@ \subsubsection{Architecture} \label{fig:renderer} \end{figure} -The low-level renderer API is just a reduced set of functions that allows to draw things on the screen. On the other hand the high-level renderer provides a class-based mechanism to define the scene. That is, in the low-level renderer we would say: "draw texture A in position X" and it will be shown on the screen for just this frame. And in the -high-level renderer we would say: "there exists a sprite in X and it has priority P" and it would be drawn on the screen until it is removed. +The low-level renderer API is just a reduced set of functions that allows to draw things on the screen. On the other hand the high-level renderer provides a class-based mechanism to define the scene. That is, in the low-level renderer we would say: "draw texture A in position X" and it will be shown on the screen for just this frame. And in the high-level renderer we would say: "there exists a sprite in X and it has priority P" and it would be drawn on the screen until it is removed. \subsubsection{Features} -The renderer I have implemented is not very sophisticated but works fine for our purpose. Animations are not yet supported. You can assign priorities to the sprites in order to define what is drawn on top. There is an abstraction of the camera too. The low-level renderer uses OpenGL ES (embedded systems), so it could be ported to mobile platforms. +The renderer I have implemented is not very sophisticated but works fine for our purpose. Animations are not yet supported(Update: I have implemented a new animation system [\ref{"sec:animationsystem"}]). You can assign priorities to the sprites in order to define what is drawn on top. There is an abstraction of the camera too. The low-level renderer uses the subset of functions available in OpenGL ES (embedded systems), so it could be ported to mobile platforms. \subsubsection{Why did I implement my own graphics engine?} @@ -355,7 +467,7 @@ \subsubsection{Why did I implement my own graphics engine?} \item \textbf{Allocate the resource in video card memory.} To render an object all its resources must be in the memory of the graphics card. To allocate, for instance, a texture in video memory we need to call OpenGL functions. That is the reason this step must be performed by the main thread (only the main thread is allowed to call OpenGL functions). Fortunately, the process copying a resource from RAM to VRAM is fast enough, so it does not block other tasks. -\item \textbf{Delete the resource in MM.} Once the resource is en VRAM, we do not need it anymore in RAM. This task is not costly and could be performed by any thread. In our implementation it is deleted by the secondary thread because we think it makes more sense that the memory is released by the same thread it was allocated by. Also, in this way the code seems better encapsulated. +\item \textbf{Delete the resource in MM.} Once the resource is in VRAM, we do not need it anymore in RAM. This task is not costly and could be performed by any thread. In our implementation it is deleted by the secondary thread because we think it makes more sense that the memory is released by the same thread it was allocated by. Also, in this way the code seems better encapsulated. \end{itemize} @@ -363,20 +475,20 @@ \subsubsection{Why did I implement my own graphics engine?} \paragraph{I had personal interest in learning modern OpenGL.} -Also, I wanted an excuse to learn modern OpenGL features like shaders. The version of OpenGL I used is OpenGL ES 2.0. This version of OpenGL is compatible with embedded systems like smartphones. In this version you are forced to use shaders because all the fixed pipeline functionality has been removed. I will dedicate a section to explain briefly how to use shaders in modern OpenGL. +Also, I wanted an excuse to learn modern OpenGL features like shaders. The version of OpenGL I used is OpenGL ES 2.0. This version of OpenGL is compatible with embedded systems, smartphones and tablets. In this version you are forced to use shaders because all the fixed pipeline functionality has been removed. I will dedicate a section to explain briefly how to use shaders in modern OpenGL. \subsubsection{Modern OpenGL programming} I do not pretend to make a tutorial on modern OpenGL nor shaders but just to summarize what I have done. I have used only the subset of API that is common to OpenGL 2.1 and OpenGL ES 2.0. In my testings, I used version 2.1, which is the one that runs on PC. -Since OpenGL does not support fixed pipeline functions I had to use shaders. What are shaders? Basically , they are pieces of code that run in the graphics card. They are used to achieve custom visual effects\cite{shader}. In OpenGL shaders are written in a specific programming language called GLSL. GLSL is very similar to C\cite{glsl}]. +Since OpenGL ES does not support fixed pipeline functions I had to use shaders. What are shaders? Basically , they are pieces of code that run in the graphics card. They are used to achieve custom visual effects\cite{shader}. In OpenGL shaders are written in a specific programming language called GLSL. GLSL is very similar to C\cite{glsl}]. There are two types of shader. \begin{itemize} -\item \textbf{Vertex shader.} Vertex shaders take as input one vertex and gives as output the position (or other properties like normal) that vertex should take. It is used to achieve effects such as mesh deformation. One example where vertex shaders are used is the waves of the ocean. The vertex shader should change the position of vertices so it fakes the water moving. In our 2D render engine, we do not need the vertex shader to do anything special: it just forwards the position as it is. +\item \textbf{Vertex shader.} Vertex shaders take as input one vertex and gives as output the position (or other properties like normal and UV coordinates) that vertex should take. It is used to achieve effects such as mesh deformation. One example where vertex shaders are used is the waves of the ocean. The vertex shader should change the position of vertices so it fakes the water moving. In our 2D render engine, we do not need the vertex shader to do anything special: it just forwards the position as it is. \begin{minted}{c} @@ -459,7 +571,7 @@ \subsubsection{Modern OpenGL programming} \label{fig:shad} \end{figure} -Once you have built your shader program you can use it at any time. These are the tutorials I read \cite{shadtut} \cite{glmodtut} \cite{learngl}. +Once you have built your shader program you can use it at any time. These are the tutorials that I have learned from: \cite{shadtut} \cite{glmodtut} \cite{learngl}. Since in modern OpenGL ES matrix operations (such as \emph{glRotatef()}) have been removed I had to use one geometry library: GLM\cite{glm}. For window management I used SDL2\cite{glm}. And for texture loading I employed SOIL\cite{soil}. @@ -477,7 +589,7 @@ \subsection{Physics System} Our wrapper consists of two main classes: PhysicsComponent and PhysicsSystem. The first one is an abstract class that represents a rigid body. In our engine entities are composed of components and PhysicsComponent is one of them. An entity could have a PhysicsComponent or not. -There is only one implementation of PhysicsComponent: PhysicsBox. It is just a rectangle shaped body. You can assign mass, dimensions and position to it. Also you can chose at creation time if it is dynamic or kinematic. Kinematic bodies will not be affected by forces. +There are only two implementations of PhysicsComponent: PhysicsBox and PhysicsCircle. PhysicsBox is defined by some and width and height (axially aligned) and PhysicsCircle by the radius. You can assign mass, dimensions and position to it. Also you can chose at creation time if it is dynamic or kinematic. Kinematic bodies will not be affected by forces. Also, if mass 0 is assigned to a body it will be assumed to be static (can't be moved at all). PhysicsComponent's are created by a request to the PhysicsSystem. When you are done with a PhysicsComponets request its deletion to the PhysicsSystem. The GraphicsSystem and the PhysicsSystem run at the same rate. So in the main loop you only have to call the update function of the two systems. @@ -497,6 +609,31 @@ \subsubsection{The issue of the precission} So how can we solve this? Well, if the problem raises because the entities are too far from the origin of coordinates, let us move the entities to where the origin of coordinates is (or move the origin of coordinates to where the entities are). We will retake this topic in the "World streamer" section (\ref{sec:worldstreamer}). +\subsubsection{Alternative approaches} +There are other approaches to overcome the precision issue. + +\begin{itemize} + +\item \textbf{Using \emph{double}:} Double precision floating point numbers have a broader range and better accuracy. It would be pretty straightforward to replace \emph{float}s by \emph{double}s. But this is not scalable. What if we need even more accuracy?. Also, some graphics cards might not support \emph{double}s. Therefore, animations and visual feedback would look poor. + +\item \textbf{Using fixed-point:} Fixed-point numbers (FPN) have constant precision in all ranges. The range might be too small but we can always use \emph{long} integers for a broader range and better accuracy. We could use libraries for even greater integers (BigInt), although this would decrease performance. There are drawbacks for this solution. The physics engine might not support FPNs, eventhough we could spend time modifying the source if it is available. The graphics card might not support them (specially with 64-bit). In genaral, since floating point numbers are so extended, it would be difficult to integrate with existing software. + +\end{itemize} + +\subsubsection{Our approach} + +The approach we have chosen has many benefits and the only drawback is that it is a bit diffucult to implement. + +Having the origin of coordinates close to the entities allows us to use the most precise range of floating point numbers. In that range, floating-point is even more accurate than fixed-point. + +Since we are using the floating-point numbers that most graphics cards are optimized for, we get the best possible performance. And the compatibility is also the best. + +We can use any existing software because floating-point is so extended. + +When storing entities for persistence, the positions will be relative to the cell they belong to. So any position in the world could be represented as a pair of cell (integer vector) and relative position (float vector). So as long as the cell size keeps small, the precision will be fine. And the integer representation is broad enough for most cases. If 32-bit integers were not enough, you could always use 64-bit or even libraries such as TTMath\cite{workqueue}. With our representation we have good accuracy and unlimited range scalability without droping performance. + +The representation that we have used is the same that Scott Bilas suggests\cite{worldbilas}. + \subsection{Resource Manager} The resource manager is the system that takes care of accessing the secondary storage memory. It provides all the other system components an interface to get resources when they need them without having to wait. @@ -524,21 +661,21 @@ \subsection{Resource Manager} The resource handle is returned in all cases. The handle has an attribute that tells if the resource is loaded or not. -So for instance, the renderer needs to draw a texture. Therefore, the graphics system requests to the resource manager that texture. Every frame, the graphics system will check if the resource has been loaded. And if it is, it will draw the texture. +So for instance, the renderer needs to draw a texture. Therefore, the graphics system requests to the resource manager that texture. Every frame, the graphics system will check if the resource has been loaded. And if it is, the texture is drawn. The resource manager needs to keep track of how many handles are pointing to each resource. When the number of handles for one resource becomes zero, the resource is released. If one resource needs to be loaded, that request is enqueued in a special queue. What is so special about this queue is that it is prepared for being accessed by several threads (thread safe queue). This type of queue is usually called work queue. -In our implementation there is the abstract class Resource. These are the classes that inherit from Resource: +In our implementation there is the abstract class Resource. These are some of the classes that inherit from Resource: \begin{itemize} -\item{\emph{ResourceText.}} It represents a text file on disk. When loaded you will be able to read the file using "getText()". +\item{\emph{\textbf{ResourceText}}}. It represents a text file on disk. When loaded you will be able to read the file using "\emph{getText()}". -\item{\emph{ResourceTexture}} This is resource that will be required by the sprites. When loaded you can call "getTexture()" and you will be given a "LowLevelRenderer::Texture*". +\item{\emph{\textbf{ResourceTexture}}}. This is the resource that will be required by the sprites. When loaded you can call "\emph{getTextureData()}" and you will be given a pointer to the raw texture data. -\item{\emph{ResourceCell.}} This resource is quite special. When loaded, you will be able to get the data also. But this time you can modify the data. You are given a XML node and you can modify it. When there are no references to a ResourceCell it will be released and all changes made will be stored. This resource is used to represent a cell where entities can be placed. Therefore, you can add and remove entities from the cell and seamlessly all changes will be persistent. +\item{\emph{\textbf{ResourceCell}}}. This resource is quite special. When loaded, you will be able to get the data also. But this time you can modify the data. You are given a XML node and you can modify it. When there are no references to a \emph{ResourceCell} it will be released and all changes made will be stored. This resource is used to represent a cell where entities can be placed. Therefore, you can add and remove entities from the cell and seamlessly all changes will be persistent. \end{itemize} @@ -648,20 +785,22 @@ \section{Result and testing} The final application consists of a stable game engine. Yet not fully-featured. +\textbf{Note:} There is section \ref{"sec:animationsystem"}, where we show a newer version of the engine. + \begin{figure}[H] \centering - \includegraphics[scale=0.38]{screenshot1.png} + \includegraphics[scale=0.36]{screenshot1.png} \caption{Demo screenshot.} \label{fig:screenshot1} \end{figure} \subsection{Demo} -As you can see we have developed a demo using our game engine. After a lot of debugging, everything seems to work very well. Graphics are fine, physics are accurate and overall performance is petty good. +As you can see, we have developed a demo using our game engine. After a lot of debugging, everything seems to work very well. Graphics are fine, physics are accurate and overall performance is petty good. In order to test our system intensively, we have written an script that generates a random world. We have made our tests with a world of 1 million cells (which is about 4GB of XML files). The files must be located in the "\emph{world\_folder}" directory. In the same folder there is the main character file (\emph{main\_character.xml}). In this file you can configure the appearance, position and other stuff of the main character. -Our application allows to zoom in and zoom out the camera using the mouse wheel. When you open the application you will see something like in figure 26. +Our application allows to zoom in and zoom out the camera using the mouse wheel. When you open the application you will see something like in figure \ref{fig:screenshot1}. If you zoom out the camera you will be able to see the boundaries of the visualization. @@ -676,10 +815,13 @@ \subsection{Demo} So if you zoom in enough, the player will not realize that the entities are being loaded a he walks. You can watch this video of the demo \url{https://youtu.be/ymecWxF886U}. +The previous video shows the demo at the time the first performance tests where made. + +There it is a video of the engine with the latest features (much better looking) \url{https://vimeo.com/159836286}. \subsection{Performance} -The memory consumption is very low. Running with one million of cells we get a RAM consumption of ~70MB. +The memory consumption is very low. Running with one million of cells we get a RAM consumption of $\sim$70MB. The world window is the space that will determine the set of entities that are loaded at any given time. We can configure the size of the world window in \emph{init\_file.xml}. The world window is always square shaped and the side is always odd. The number you have to put in the configuration file is not the side of the world window, it is $(side-1)/2$. This way, the introduced number is always valid. @@ -726,7 +868,9 @@ \subsection{Performance} \caption{Performance tests.} \end{table} -The CPU consumption is highly dependent on the window size. We have measured that most of the CPU consumption is drawn at the drawing stage. That might be because our tests have been made on a system without dedicated graphics card. The CPU consumption of the physics simulation is only a small part and the consumption of the other subsystems are negligible. +The CPU consumption is highly dependent on the window size. We have measured that most of the CPU consumption is drawn at the drawing stage. The CPU consumption of the physics simulation is only a small part and the consumption of the other subsystems are negligible. + +A big part (around half of the total) of the time spent during the drawing stage relies in matrix operations. I think there might be a slight margin of improvement in these matrix operations but not much. Speaking about RAM consumption, the amount of RAM used increases very slowly compared to CPU. That is indeed the prove that our resource manager is taking care of duplicates. @@ -776,23 +920,150 @@ \section{Conclusion} Physics simulation is accurate thanks to the, moving the origin of coordinates, strategy. We have wrapped a particular physics engine but all the concepts used are applicable to any other physics engine. -We have implemented a small render engine. The reader of this article would learn how to implement a graphics system that has to cooperate with the resource manager to overcome the limitations of multithreading with OpenGL. Also, I have learned the basics of modern OpenGL programming and I have applied then. +We have implemented a small render engine. The reader of this article would learn how to implement a graphics system that has to cooperate with the resource manager to overcome the limitations of multithreading with OpenGL. Also, I have learned the basics of modern OpenGL programming and I have applied them. Also, we have implemented a resource manager that could be used in other types of applications, not only videogames. Our resource manager is easy to extend. Avoiding race conditions has been a difficulty and we have successfully dealt with it. -The world streamer implementation works fine and our architecture would allow to create new implementations and swap between them easily. The world streamer if configurable, so it can be adapted to the hardware capabilities. +The world streamer implementation works fine and our architecture would allow to create new implementations and swap between them easily. The world streamer is configurable, so it can be adapted to the hardware capabilities. -I was not a main requirement but we also managed so the modifications of the world are persistent. +It was not a main requirement but we also managed so the modifications of the world are persistent. The code is well documented using doxygen syntax. Hopefully, any developer who is interested in learning or contributing could understand the code and extend the engine. -In my opinion world streaming is an interesting topic in the field of videogames. I think open world videogames will keep being among the most popular videogames. Up to now, successful open world videogames have come from very important companies that can make great investments. From my point of view, open world games are a difficult target for small companies and indie developers. Not only because the implementation of an appropriate engine is a lot of work, but also because a lot of content and resources have to be produced. I said difficult, not impossible. I think in some years the number of available tools for making open world games will grow and they will be accessible for anybody. I hope to see some indie open world games in some years. +In my opinion world streaming is an interesting topic in the field of videogames. I think open world videogames will keep being among the most popular videogames. Up to now, successful open world videogames have come from very important companies that can make great investments. From my point of view, open world games are a difficult target for small companies and indie developers. Not only because the implementation of an appropriate engine is a lot of work, but also because a lot of content and resources have to be produced. But if the proper tools become available to them, that target will get feasible. Also, procedural generation could help developers to fill the world with great content. I think in some years the number of available tools for making open world games will grow and they will be accessible for anybody. I hope to see some indie open world games in a few years. + +\section{Update: animation system} +\label{"sec:animationsystem"} + +The new animation system I have implemented extends the engine and adds some complexity. Also, implementing this feature forced me to refactor the code. Now the engine is performing better (in terms of loading times), more stable and better organized. + +The animation system is implemented from scratch. The animations are based in frames. + +We have created a custom file format based in XML for representing sprites. Sprites can have multiple animations. The structure of these sprite files is represented in the following UML diagram. + +\begin{figure}[H] + \centering + \includegraphics[scale=0.4]{sprite_uml.pdf} + \caption{UML diagram} + \label{fig:spriteuml} +\end{figure} + +As you can see, one sprite has at least one animation and each animation has at least one frame. Frames have associated a duration and a rectangular region in a texture. Having the possibility to refer to a specific region of a texture allows us to use sprite sheets. + +There are a lot of sample sprites in the \emph{bin/sprites} directory. This is a fragment of the sprite that we use as our main character: + +\begin{minted}{xml} + + + + pokemon_red_pj.png + + + + + + + sp1 + + 32 0 + 32 32 + + + + + + ... + + + + sp1 + + 0 96 + 32 32 + + + + + sp1 + + 32 96 + 32 32 + + + + + sp1 + + 64 96 + 32 32 + + + + + + + + + + +\end{minted} + +It is useful to have an id for every animation, so it's straight forward to set an animation programmatically. If we wish to make an sprite which is not animated, we can make an animation with only one frame, since animations loop by default. + +In the following diagram we try to represent the mechanism we use in order to load and display sprites. + +\begin{figure}[H] + \centering + \includegraphics[scale=0.8]{sprite_loading.pdf} + \caption{Flow chart of the sprite's loading process} + \label{fig:spriteloading} +\end{figure} + +Now there are more steps than when we had just static images. We need to read the XML of each sprite and from that file obtain the textures that must be loaded. + +In the same way we made sure that no texture is twice in memory, we want to make sure no sprite is twice in memory. The class \emph{Sprite} contains the data which is common to all the entities using it. And the class \emph{SpriteStatus} only keeps track of the current status of the animation. That is, the current frame and the time spent in the current frame. + +\begin{figure}[H] + \centering + \includegraphics[scale=0.7]{sprite_status_uml.pdf} + \caption{UML representation of the \emph{Sprite} and \emph{SpriteStatus} classes} + \label{fig:spritestatusuml} +\end{figure} + +In order to test the animation system I have created a new automatic world generation script. You can find it in "\emph{bin/world\_gens}". This new generator makes better looking worlds. The world is made up of a big set of template cells (can be found at \emph{bin/cell\_templates}). Our generator takes as input a certain number of rows and columns and fills the world with randomly chosen cell templates. This is an example of what we have seen in \ref{sec:contentgen}. In this case we are making a mixture of manually generated content and automatically generated content. + +\begin{figure}[H] + \centering + \includegraphics[scale=0.5]{anim_screenshot.png} + \caption{Screenshot of one generated world} + \label{fig:animscreenshot} +\end{figure} + +In terms of performance we have performed the same tests we did and it seems that the animation system has not affected at all. The bottleneck keeps being the rendering stage. + +\section{Future extensions} + +I have taken the development of this game engine as a hobby. I pretend to continue the development in my spare time. + +These are some of the features that I would like to get implemented. + +\begin{itemize} + + \item \textbf{Scripting:} I have already started working on this feature. Right now, implementing game logic is really difficult. Since the beginning, the game logic was intended to be done by scripting. When this feature got implemented, I would consider the game engine usable to make some real games. I want to embed the Lua programming language. + + \item \textbf{World editor tool:} Right now, everything has to be done by editing text files. It would be great to have a tool that allows to edit the world and manage the assets. That would make the engine friendlier to use. + + \item \textbf{Sound:} No game is complete without sound. + + \item \textbf{World description data compression:} If you generate a very big world the \emph{world\_folder} gets flooded of small cell files. Getting these files packed in a single compressed file would save a lot of space and would make the \emph{world\_folder} easier to manage. + +\end{itemize} \section{License} The developed software is open source. It is licensed under the MIT License. -The project is hosted in a pulic repository:\newline \url{https://github.com/tuket/OWMAN}. +The project is hosted in a public repository:\newline \url{https://github.com/tuket/OWMAN}. \section{Tools and dependencies} @@ -846,11 +1117,11 @@ \subsection{Dependencies} \newline \url{www.lonesock.net/soil.html} -\item{\textbf{GLEW.}} Necessary if you want to use modern OpenGL. +\item{\textbf{GLEW.}} A library that defines the OpenGL extensions. \newline \url{glew.sourceforge.net} -\item{\textbf{GLM.}} A mathematic library for OpenGL. +\item{\textbf{GLM.}} A mathematics library for OpenGL. \newline \url{http://glm.g-truc.net} \end{itemize} @@ -973,8 +1244,24 @@ \subsection{Dependencies} Game Engine Architecture - Jason Gregory \newline \url{http://www.gameenginebook.com} - +\bibitem{ttmathlink} + \hypertarget{ttmathlink} + TTMath library + \newline + \url{http://www.ttmath.org/} + +\bibitem{levelgame} +\hypertarget{levelgame} +Level (video gaming) - Wikipedia +\newline +\url{https://en.wikipedia.org/wiki/Level_%28video_gaming%29} + +\bibitem{retrocitysmall} +\hypertarget{retrocitysmall} +Steam discussion about the small size of Retro City Rampage +\newline +\url{http://steamcommunity.com/app/204630/discussions/0/882962698536189638/} \end{thebibliography} diff --git a/doc/doxy/doxyfile b/doc/doxy/doxyfile index 5a06f13..9b09956 100644 --- a/doc/doxy/doxyfile +++ b/doc/doxy/doxyfile @@ -91,88 +91,106 @@ WARN_IF_UNDOCUMENTED = NO WARN_IF_DOC_ERROR = YES WARN_NO_PARAMDOC = YES WARN_FORMAT = "$file:$line: $text" -WARN_LOGFILE = "/home/tuket/prog/owman/src/doc/doxy/doxygen.log" +WARN_LOGFILE = "/home/tuket/prog/owman_anim/src/doc/doxygen.log" #--------------------------------------------------------------------------- # configuration options related to the input files #--------------------------------------------------------------------------- INPUT = \ - "../../physics/physics_system.cpp" \ - "../../resource_manager/resource_cell_factory.cpp" \ - "../../resource_manager/resource.cpp" \ - "../../test_world_streamer.cpp" \ - "../../resource_manager/resource_texture_factory.cpp" \ - "../../renderer/low_level_renderer_2d.cpp" \ - "../../main.cpp" \ - "../../i_world_streamer.cpp" \ - "../../engine.hpp" \ - "../../physics/physics_component.hpp" \ - "../../physics/physics_box_factory.cpp" \ - "../../math/vec2i.cpp" \ - "../../resource_manager/resource_factory.hpp" \ - "../../math/vec2i.hpp" \ - "../../renderer/sprite_factory.hpp" \ - "../../physics/physics_box.hpp" \ - "../../resource_manager/work_queue.cpp" \ - "../../renderer/sprite.cpp" \ - "../../resource_manager/resource_table.cpp" \ - "../../renderer/color.hpp" \ - "../../resource_manager/resource_table.hpp" \ - "../../entity_factory.hpp" \ - "../../resource_manager/resource_texture.hpp" \ - "../../resource_manager/resource.hpp" \ - "../../renderer/sprite_factory.cpp" \ - "../../resource_manager/resource_text.cpp" \ - "../../resource_manager/resource_factory.cpp" \ - "../../renderer/camera.hpp" \ - "../../resource_manager/resource_cell_factory.hpp" \ - "../../renderer/sprite.hpp" \ - "../../physics/physics_box.cpp" \ - "../../world_window.cpp" \ - "../../resource_manager/resource_text_factory.hpp" \ - "../../math/vec2f.hpp" \ - "../../main_character.hpp" \ - "../../resource_manager/resource_request.hpp" \ - "../../IO/event_handler.cpp" \ - "../../world_cell.cpp" \ - "../../physics/physics_component.cpp" \ - "../../entity_factory.cpp" \ - "../../engine.cpp" \ - "../../resource_manager/resource_request.cpp" \ - "../../resource_manager/resource_cell.cpp" \ - "../../resource_manager/resource_manager.cpp" \ - "../../main_character.cpp" \ - "../../i_world_streamer.hpp" \ - "../../demos/test_is_cell_file.cpp" \ - "../../resource_manager/resource_texture_factory.hpp" \ - "../../renderer/graphics_component.hpp" \ - "../../resource_manager/resource_table_entry.cpp" \ - "../../resource_manager/resource_texture.cpp" \ - "../../renderer/graphics_system.cpp" \ - "../../physics/physics_system.hpp" \ - "../../entity.cpp" \ - "../../util/file_to_string.hpp" \ - "../../renderer/graphics_system.hpp" \ - "../../renderer/low_level_renderer_2d.hpp" \ - "../../IO/event_handler.hpp" \ - "../../util/file_to_string.cpp" \ - "../../resource_manager/resource_text.hpp" \ - "../../physics/physics_box_factory.hpp" \ - "../../world_streamer.cpp" \ - "../../resource_manager/resource_table_entry.hpp" \ - "../../resource_manager/resource_text_factory.cpp" \ - "../../resource_manager/resource_manager.hpp" \ - "../../renderer/camera.cpp" \ - "../../resource_manager/resource_cell.hpp" \ - "../../entity.hpp" \ - "../../test_world_streamer.hpp" \ - "../../demos/test_regex.cpp" \ - "../../world_cell.hpp" \ - "../../demos/demo_box2d.cpp" \ - "../../math/vec2f.cpp" \ - "../../world_streamer.hpp" \ - "../../renderer/graphics_component.cpp" \ - "../../world_window.hpp" \ - "../../resource_manager/work_queue.hpp" + "../entity.hpp" \ + "../util/xmlstr.cpp" \ + "../renderer/sprite.cpp" \ + "../physics/physics_box.cpp" \ + "../main.cpp" \ + "../renderer/color.hpp" \ + "../demos/demo_box2d.cpp" \ + "../util/xmlstr.hpp" \ + "../math/functions.cpp" \ + "../physics/physics_circle_factory.hpp" \ + "../resource_manager/resource_manager.cpp" \ + "../i_world_streamer.cpp" \ + "../renderer/graphics_component.hpp" \ + "../world_streamer.cpp" \ + "../resource_manager/resource_cell.cpp" \ + "../renderer/animation_frame.hpp" \ + "../renderer/sprite_manager.cpp" \ + "../renderer/camera.hpp" \ + "../math/aarect.cpp" \ + "../resource_manager/resource_table_entry.hpp" \ + "../resource_manager/resource_text.cpp" \ + "../resource_manager/resource_table.cpp" \ + "../resource_manager/resource_sprite.cpp" \ + "../entity_factory.cpp" \ + "../physics/physics_component.hpp" \ + "../resource_manager/resource.cpp" \ + "../math/vec2f.cpp" \ + "../engine.hpp" \ + "../renderer/texture_manager.cpp" \ + "../entity.cpp" \ + "../resource_manager/resource_text.hpp" \ + "../IO/event_handler.hpp" \ + "../renderer/animation_frame.cpp" \ + "../renderer/graphics_system.hpp" \ + "../resource_manager/work_queue.cpp" \ + "../world_cell.hpp" \ + "../resource_manager/resource_cell.hpp" \ + "../renderer/animation.cpp" \ + "../math/functions.hpp" \ + "../physics/physics_box_factory.cpp" \ + "../math/vec2f.hpp" \ + "../renderer/graphics_component.cpp" \ + "../world_streamer.hpp" \ + "../util/file_to_string.hpp" \ + "../resource_manager/resource_texture.hpp" \ + "../test_world_streamer.hpp" \ + "../demos/test_regex.cpp" \ + "../i_world_streamer.hpp" \ + "../renderer/sprite_status.hpp" \ + "../util/exception.hpp" \ + "../util/file_to_string.cpp" \ + "../demos/test_is_cell_file.cpp" \ + "../renderer/camera.cpp" \ + "../physics/physics_circle_factory.cpp" \ + "../renderer/sprite_status.cpp" \ + "../physics/physics_box.hpp" \ + "../world_window.hpp" \ + "../test_world_streamer.cpp" \ + "../physics/physics_component.cpp" \ + "../renderer/graphics_system.cpp" \ + "../physics/physics_system.hpp" \ + "../renderer/sprite_manager.hpp" \ + "../renderer/sprite.hpp" \ + "../world_window.cpp" \ + "../math/aarect.hpp" \ + "../util/time_conversions.hpp" \ + "../physics/physics_system.cpp" \ + "../resource_manager/resource_request.hpp" \ + "../resource_manager/resource_manager_templates.hpp" \ + "../renderer/low_level_renderer_2d.cpp" \ + "../cell_size.hpp" \ + "../math/vec2i.cpp" \ + "../math/vec2i.hpp" \ + "../world_cell.cpp" \ + "../physics/physics_circle.hpp" \ + "../main_character.hpp" \ + "../engine.cpp" \ + "../resource_manager/resource_table.hpp" \ + "../entity_factory.hpp" \ + "../IO/event_handler.cpp" \ + "../physics/physics_box_factory.hpp" \ + "../renderer/low_level_renderer_2d.hpp" \ + "../renderer/animation.hpp" \ + "../resource_manager/resource_manager.hpp" \ + "../resource_manager/resource_request.cpp" \ + "../physics/physics_circle.cpp" \ + "../renderer/texture_manager.hpp" \ + "../util/stack_trace.hpp" \ + "../main_character.cpp" \ + "../resource_manager/resource.hpp" \ + "../resource_manager/work_queue.hpp" \ + "../resource_manager/resource_texture.cpp" \ + "../resource_manager/resource_table_entry.cpp" \ + "../renderer/texture.hpp" \ + "../renderer/texture.cpp" INPUT_ENCODING = UTF-8 FILE_PATTERNS = RECURSIVE = NO diff --git a/doc/doxy/doxygen.log b/doc/doxy/doxygen.log index 759ffe8..979cf93 100644 --- a/doc/doxy/doxygen.log +++ b/doc/doxy/doxygen.log @@ -1,39 +1,48 @@ -/home/tuket/prog/owman/src/renderer/low_level_renderer_2d.cpp:126: warning: no uniquely matching class member found for +/home/tuket/prog/owman_anim/src/world_streamer.cpp:200: warning: no matching class member found for + WorldStreamer::WorldStreamer(string worldFolder, EntityFactory *entityFactory, float cellSize, unsigned int windowSize) +Possible candidates: + WorldStreamer::WorldStreamer() + WorldStreamer::WorldStreamer(std::string worldFolder, EntityFactory *entityFactory, float cellSize=250.f, unsigned int windowSize=2) + +/home/tuket/prog/owman_anim/src/renderer/sprite_status.cpp:107: warning: no matching class member found for + void SpriteStatus::setAnimation(const string &animName) +Possible candidates: + void SpriteStatus::setAnimation(const std::string &animName) + void SpriteStatus::setAnimation(unsigned animIndex) + +/home/tuket/prog/owman_anim/src/renderer/low_level_renderer_2d.cpp:193: warning: no uniquely matching class member found for LowLevelRenderer2D::LowLevelRenderer2D(string windowTitle, unsigned int width, unsigned int height, bool fullScreen) Possible candidates: - LowLevelRenderer2D::LowLevelRenderer2D()' at line 88 of file /home/tuket/prog/owman/src/renderer/low_level_renderer_2d.hpp - LowLevelRenderer2D::LowLevelRenderer2D(std::string windowTitle, unsigned int width, unsigned int height, bool fullScreen)' at line 90 of file /home/tuket/prog/owman/src/renderer/low_level_renderer_2d.hpp + LowLevelRenderer2D::LowLevelRenderer2D()' at line 126 of file /home/tuket/prog/owman_anim/src/renderer/low_level_renderer_2d.hpp + LowLevelRenderer2D::LowLevelRenderer2D(std::string windowTitle, unsigned int width, unsigned int height, bool fullScreen)' at line 128 of file /home/tuket/prog/owman_anim/src/renderer/low_level_renderer_2d.hpp -/home/tuket/prog/owman/src/resource_manager/resource_request.cpp:5: warning: no matching class member found for +/home/tuket/prog/owman_anim/src/resource_manager/resource_request.cpp:5: warning: no matching class member found for ResourceRequest::ResourceRequest(ResourceRequest::Type type, string name) Possible candidates: ResourceRequest::ResourceRequest() ResourceRequest::ResourceRequest(Type type, std::string name) -/home/tuket/prog/owman/src/world_streamer.cpp:197: warning: no matching class member found for - WorldStreamer::WorldStreamer(string worldFolder, EntityFactory *entityFactory, float cellSize, unsigned int windowSize) -Possible candidates: - WorldStreamer::WorldStreamer() - WorldStreamer::WorldStreamer(std::string worldFolder, EntityFactory *entityFactory, float cellSize=250.f, unsigned int windowSize=2) - -/home/tuket/prog/owman/src/renderer/graphics_component.hpp:71: warning: argument 'The' of command @param is not found in the argument list of GraphicsComponent::createXmlNode(rapidxml::xml_document<> *doc)=0 -/home/tuket/prog/owman/src/renderer/graphics_component.hpp:71: warning: The following parameters of GraphicsComponent::createXmlNode(rapidxml::xml_document<> *doc)=0 are not documented: +/home/tuket/prog/owman_anim/src/renderer/graphics_component.hpp:54: warning: argument 'The' of command @param is not found in the argument list of GraphicsComponent::createXmlNode(rapidxml::xml_document<> *doc) +/home/tuket/prog/owman_anim/src/renderer/graphics_component.hpp:54: warning: The following parameters of GraphicsComponent::createXmlNode(rapidxml::xml_document<> *doc) are not documented: parameter 'doc' -/home/tuket/prog/owman/src/i_world_streamer.hpp:45: warning: argument 'offset' of command @param is not found in the argument list of IWorldStreamer::update(const Vec2f &position, MainCharacter *mainCharacter)=0 -/home/tuket/prog/owman/src/i_world_streamer.hpp:45: warning: The following parameters of IWorldStreamer::update(const Vec2f &position, MainCharacter *mainCharacter)=0 are not documented: +/home/tuket/prog/owman_anim/src/i_world_streamer.hpp:45: warning: argument 'offset' of command @param is not found in the argument list of IWorldStreamer::update(const Vec2f &position, MainCharacter *mainCharacter)=0 +/home/tuket/prog/owman_anim/src/i_world_streamer.hpp:45: warning: The following parameters of IWorldStreamer::update(const Vec2f &position, MainCharacter *mainCharacter)=0 are not documented: parameter 'position' parameter 'mainCharacter' -/home/tuket/prog/owman/src/physics/physics_box.hpp:32: warning: argument 'The' of command @param is not found in the argument list of PhysicsBox::createXmlNode(rapidxml::xml_document<> *doc) -/home/tuket/prog/owman/src/physics/physics_box.hpp:32: warning: The following parameters of PhysicsBox::createXmlNode(rapidxml::xml_document<> *doc) are not documented: +/home/tuket/prog/owman_anim/src/physics/physics_box.hpp:26: warning: argument 'The' of command @param is not found in the argument list of PhysicsBox::createXmlNode(rapidxml::xml_document<> *doc) +/home/tuket/prog/owman_anim/src/physics/physics_box.hpp:26: warning: The following parameters of PhysicsBox::createXmlNode(rapidxml::xml_document<> *doc) are not documented: + parameter 'doc' +/home/tuket/prog/owman_anim/src/physics/physics_circle.hpp:26: warning: argument 'The' of command @param is not found in the argument list of PhysicsCircle::createXmlNode(rapidxml::xml_document<> *doc) +/home/tuket/prog/owman_anim/src/physics/physics_circle.hpp:26: warning: The following parameters of PhysicsCircle::createXmlNode(rapidxml::xml_document<> *doc) are not documented: parameter 'doc' -/home/tuket/prog/owman/src/physics/physics_component.hpp:25: warning: argument 'The' of command @param is not found in the argument list of PhysicsComponent::createXmlNode(rapidxml::xml_document<> *doc)=0 -/home/tuket/prog/owman/src/physics/physics_component.hpp:25: warning: The following parameters of PhysicsComponent::createXmlNode(rapidxml::xml_document<> *doc)=0 are not documented: +/home/tuket/prog/owman_anim/src/physics/physics_component.hpp:29: warning: argument 'The' of command @param is not found in the argument list of PhysicsComponent::createXmlNode(rapidxml::xml_document<> *doc)=0 +/home/tuket/prog/owman_anim/src/physics/physics_component.hpp:29: warning: The following parameters of PhysicsComponent::createXmlNode(rapidxml::xml_document<> *doc)=0 are not documented: parameter 'doc' -/home/tuket/prog/owman/src/renderer/sprite.hpp:63: warning: argument 'The' of command @param is not found in the argument list of Sprite::createXmlNode(rapidxml::xml_document<> *doc) -/home/tuket/prog/owman/src/renderer/sprite.hpp:63: warning: The following parameters of Sprite::createXmlNode(rapidxml::xml_document<> *doc) are not documented: +/home/tuket/prog/owman_anim/src/renderer/sprite_status.hpp:38: warning: argument 'The' of command @param is not found in the argument list of SpriteStatus::createXmlNode(rapidxml::xml_document<> *doc) inherited from member createXmlNode at line 54 in file /home/tuket/prog/owman_anim/src/renderer/graphics_component.hpp +/home/tuket/prog/owman_anim/src/renderer/sprite_status.hpp:38: warning: The following parameters of SpriteStatus::createXmlNode(rapidxml::xml_document<> *doc) are not documented: parameter 'doc' -/home/tuket/prog/owman/src/world_streamer.hpp:75: warning: argument 'cell' of command @param is not found in the argument list of WorldStreamer::update(const Vec2f &position, MainCharacter *mainCharacter) -/home/tuket/prog/owman/src/world_streamer.hpp:75: warning: argument 'offset' of command @param is not found in the argument list of WorldStreamer::update(const Vec2f &position, MainCharacter *mainCharacter) -/home/tuket/prog/owman/src/world_streamer.hpp:75: warning: The following parameters of WorldStreamer::update(const Vec2f &position, MainCharacter *mainCharacter) are not documented: +/home/tuket/prog/owman_anim/src/world_streamer.hpp:75: warning: argument 'cell' of command @param is not found in the argument list of WorldStreamer::update(const Vec2f &position, MainCharacter *mainCharacter) +/home/tuket/prog/owman_anim/src/world_streamer.hpp:75: warning: argument 'offset' of command @param is not found in the argument list of WorldStreamer::update(const Vec2f &position, MainCharacter *mainCharacter) +/home/tuket/prog/owman_anim/src/world_streamer.hpp:75: warning: The following parameters of WorldStreamer::update(const Vec2f &position, MainCharacter *mainCharacter) are not documented: parameter 'position' parameter 'mainCharacter' diff --git a/doc/doxy/html/aarect_8hpp_source.html b/doc/doxy/html/aarect_8hpp_source.html new file mode 100644 index 0000000..6b3ea8b --- /dev/null +++ b/doc/doxy/html/aarect_8hpp_source.html @@ -0,0 +1,142 @@ + + + + + + +owman: aarect.hpp Source File + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
owman +
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
aarect.hpp
+
+
+
1 #ifndef AARECT_HPP_INCLUDED
+
2 #define AARECT_HPP_INCLUDED
+
3 
+
4 /* Axially aligned rectangle */
+
5 class AARect{
+
6 
+
7 public:
+
8 
+
9  float x, y;
+
10  float w, h;
+
11 
+
12  AARect(){}
+
13  AARect(float x, float y, float w, float h);
+
14  AARect(const AARect& rect);
+
15 
+
16  AARect operator=(const AARect& rect);
+
17 
+
18 };
+
19 
+
20 #endif // AARECT_HPP_INCLUDED
+
Definition: aarect.hpp:5
+
+
+ + + + diff --git a/doc/doxy/html/animation_8hpp_source.html b/doc/doxy/html/animation_8hpp_source.html new file mode 100644 index 0000000..0a806fd --- /dev/null +++ b/doc/doxy/html/animation_8hpp_source.html @@ -0,0 +1,140 @@ + + + + + + +owman: animation.hpp Source File + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
owman +
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
animation.hpp
+
+
+
1 #ifndef ANIMATION
+
2 #define ANIMATION
+
3 
+
4 #include <string>
+
5 #include <vector>
+
6 #include "animation_frame.hpp"
+
7 
+
8 class Animation
+
9 {
+
10 
+
11 public:
+
12 
+
13  std::string name;
+
14  std::vector<AnimationFrame> frames;
+
15 
+
16 };
+
17 
+
18 #endif // ANIMATION
+
Definition: animation.hpp:8
+
+
+ + + + diff --git a/doc/doxy/html/animation__frame_8hpp_source.html b/doc/doxy/html/animation__frame_8hpp_source.html new file mode 100644 index 0000000..56f2a03 --- /dev/null +++ b/doc/doxy/html/animation__frame_8hpp_source.html @@ -0,0 +1,141 @@ + + + + + + +owman: animation_frame.hpp Source File + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
owman +
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
animation_frame.hpp
+
+
+
1 #ifndef ANIMATION_FRAME
+
2 #define ANIMATION_FRAME
+
3 
+
4 #include "../math/aarect.hpp"
+
5 #include "low_level_renderer_2d.hpp"
+
6 
+ +
8 {
+
9 
+
10 public:
+
11 
+
12  unsigned textureIndex;
+ +
14  float frameDuration;
+
15 
+
16 };
+
17 
+
18 #endif // ANIMATION_FRAME
+
Definition: low_level_renderer_2d.hpp:79
+
Definition: animation_frame.hpp:7
+
+
+ + + + diff --git a/doc/doxy/html/annotated.html b/doc/doxy/html/annotated.html index 4545ad3..08834ee 100644 --- a/doc/doxy/html/annotated.html +++ b/doc/doxy/html/annotated.html @@ -3,15 +3,24 @@ - -OWMAN: Class List + +owman: Class List + + + + + + @@ -21,18 +30,16 @@ -
-
OWMAN +
owman
-
Open World Manager
- + @@ -69,12 +76,26 @@ +
+ +
+
+
+ +
- All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
+
@@ -89,74 +110,64 @@
Here are the classes, structs, unions and interfaces with brief descriptions:
-
[detail level 123]
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
[detail level 12]
oNgenfile
oNrapidxml
|oCparse_error
|oCxml_node
|oCxml_attribute
|oCxml_document
||oCattribute_name_pred
||oCattribute_value_pred
||oCattribute_value_pure_pred
||oCnode_name_pred
||oCtext_pred
||oCtext_pure_no_ws_pred
||oCtext_pure_with_ws_pred
||\Cwhitespace_pred
|oCmemory_pool
||\Cheader
|oCxml_base
|oCnode_iteratorIterator of child nodes of xml_node
|oCattribute_iteratorIterator of child attributes of xml_node
|\CfileRepresents data loaded from a file
oCCameraHigh level abstraction camera You can set the position and dimensions of the camera
oCColorColor of 4 float components(r, g, b, a)
oCEngineEncapsulates all systems Has the main loop. Contains all systems like graphics system and physics system
oCEntityComponents compounded entity
oCEntityFactory
oCEventHandler
oCGraphicsComponent
oCGraphicsSystem
|\CPendingTask
oCIWorldStreamer
oCLowLevelRenderer2D
|oCCamera
|\CTexture
oCMainCharacter
oCPhysicsBox
oCPhysicsBoxFactory
oCPhysicsComponent
oCPhysicsSystem
oCPosition
oCResourceAbstract resource data class This class hold the data for different types of resource. In order to create a new type of resource just extend from this class
oCResourceCellCell resource This class is a modifiable resource. When there are no references to this resource the changes will be stored
oCResourceCellFactory
oCResourceFactory
oCResourceManagerThis is the singleton you should use Requesting resources will deliver a resource pointer event if the resource data is not loaded. You can check if a resource has been loaded checking the status attribute
oCResourceRequest
oCResourceTable
oCResourceTableEntry
oCResourceText
oCResourceTextFactory
oCResourceTextureRepresents a resource texture Since OpenGL does not allow to make any call from any other thread other than the main thread, the resource manager can not load anything to video memory. So for this resource, to be LOADED means to be loaded in main memory and to be READY means to be loaded in video memory
oCResourceTextureFactory
oCSpriteRepresents a static sprite This sprite has no animations
oCSpriteFactory
oCTestWorldStreamer
oCVec2f
oCVec2i
oCWorkQueueThread safe queue This queue can be used concurrently by several threads. It is specially designed for the consumer producer-pattern
oCWorldStreamer
\CWorldWindow
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
 CAARect
 CAnimation
 CAnimationFrame
 CCameraHigh level abstraction camera You can set the position and dimensions of the camera
 CColorColor of 4 float components(r, g, b, a)
 CCompareSpriteByName
 CEngineEncapsulates all systems Has the main loop. Contains all systems like graphics system and physics system
 CEntityComponents compounded entity
 CEntityFactory
 CEventHandler
 CException
 CGraphicsComponent
 CGraphicsSystem
 CIWorldStreamer
 CLowLevelRenderer2D
 CCamera
 CSpriteVbo
 CTexture
 CMainCharacter
 CPhysicsBox
 CPhysicsBoxFactory
 CPhysicsCircle
 CPhysicsCircleFactory
 CPhysicsComponent
 CPhysicsSystem
 CResourceAbstract resource data class This class hold the data for different types of resource. In order to create a new type of resource just extend from this class
 CResourceCellCell resource This class is a modifiable resource. When there are no references to this resource the changes will be stored
 CResourceManagerThis is the singleton you should use Requesting resources will deliver a resource pointer event if the resource data is not loaded. You can check if a resource has been loaded checking the status attribute
 CResourceRequest
 CResourceTable
 CResourceTableEntry
 CResourceText
 CResourceTextureRepresents a resource texture Since OpenGL does not allow to make any call from any other thread other than the main thread, the resource manager can not load anything to video memory. So for this resource, to be LOADED means to be loaded in main memory and to be READY means to be loaded in video memory
 CSpriteRepresents a static sprite This sprite has no animations
 CSpriteManager
 CSpriteRefCountEntry
 CSpriteStatus
 CTestWorldStreamer
 CTexture
 CTextureManager
 CTextureRefCountEntry
 CVec2f
 CVec2i
 CWorkQueueThread safe queue This queue can be used concurrently by several threads. It is specially designed for the consumer producer-pattern
 CWorldStreamer
 CWorldWindow
+ - + diff --git a/doc/doxy/html/annotated.js b/doc/doxy/html/annotated.js index 1d3883f..e01e651 100644 --- a/doc/doxy/html/annotated.js +++ b/doc/doxy/html/annotated.js @@ -1,11 +1,16 @@ var annotated = [ + [ "AARect", "class_a_a_rect.html", "class_a_a_rect" ], + [ "Animation", "class_animation.html", "class_animation" ], + [ "AnimationFrame", "class_animation_frame.html", "class_animation_frame" ], [ "Camera", "class_camera.html", "class_camera" ], [ "Color", "class_color.html", "class_color" ], + [ "CompareSpriteByName", "struct_compare_sprite_by_name.html", "struct_compare_sprite_by_name" ], [ "Engine", "class_engine.html", "class_engine" ], [ "Entity", "class_entity.html", "class_entity" ], [ "EntityFactory", "class_entity_factory.html", "class_entity_factory" ], [ "EventHandler", "class_event_handler.html", "class_event_handler" ], + [ "Exception", "class_exception.html", "class_exception" ], [ "GraphicsComponent", "class_graphics_component.html", "class_graphics_component" ], [ "GraphicsSystem", "class_graphics_system.html", "class_graphics_system" ], [ "IWorldStreamer", "class_i_world_streamer.html", "class_i_world_streamer" ], @@ -13,23 +18,26 @@ var annotated = [ "MainCharacter", "class_main_character.html", "class_main_character" ], [ "PhysicsBox", "class_physics_box.html", "class_physics_box" ], [ "PhysicsBoxFactory", "class_physics_box_factory.html", "class_physics_box_factory" ], + [ "PhysicsCircle", "class_physics_circle.html", "class_physics_circle" ], + [ "PhysicsCircleFactory", "class_physics_circle_factory.html", "class_physics_circle_factory" ], [ "PhysicsComponent", "class_physics_component.html", "class_physics_component" ], [ "PhysicsSystem", "class_physics_system.html", "class_physics_system" ], [ "Resource", "class_resource.html", "class_resource" ], [ "ResourceCell", "class_resource_cell.html", "class_resource_cell" ], - [ "ResourceCellFactory", "class_resource_cell_factory.html", "class_resource_cell_factory" ], - [ "ResourceFactory", "class_resource_factory.html", "class_resource_factory" ], [ "ResourceManager", "class_resource_manager.html", "class_resource_manager" ], [ "ResourceRequest", "class_resource_request.html", "class_resource_request" ], [ "ResourceTable", "class_resource_table.html", "class_resource_table" ], [ "ResourceTableEntry", "class_resource_table_entry.html", "class_resource_table_entry" ], [ "ResourceText", "class_resource_text.html", "class_resource_text" ], - [ "ResourceTextFactory", "class_resource_text_factory.html", "class_resource_text_factory" ], [ "ResourceTexture", "class_resource_texture.html", "class_resource_texture" ], - [ "ResourceTextureFactory", "class_resource_texture_factory.html", "class_resource_texture_factory" ], [ "Sprite", "class_sprite.html", "class_sprite" ], - [ "SpriteFactory", "class_sprite_factory.html", "class_sprite_factory" ], + [ "SpriteManager", "class_sprite_manager.html", "class_sprite_manager" ], + [ "SpriteRefCountEntry", "struct_sprite_ref_count_entry.html", "struct_sprite_ref_count_entry" ], + [ "SpriteStatus", "class_sprite_status.html", "class_sprite_status" ], [ "TestWorldStreamer", "class_test_world_streamer.html", "class_test_world_streamer" ], + [ "Texture", "class_texture.html", "class_texture" ], + [ "TextureManager", "class_texture_manager.html", "class_texture_manager" ], + [ "TextureRefCountEntry", "class_texture_ref_count_entry.html", "class_texture_ref_count_entry" ], [ "Vec2f", "class_vec2f.html", "class_vec2f" ], [ "Vec2i", "class_vec2i.html", "class_vec2i" ], [ "WorkQueue", "class_work_queue.html", "class_work_queue" ], diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/ftv2mlastnode.png b/doc/doxy/html/arrowdown.png similarity index 100% rename from src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/ftv2mlastnode.png rename to doc/doxy/html/arrowdown.png diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/ftv2plastnode.png b/doc/doxy/html/arrowright.png similarity index 100% rename from src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/ftv2plastnode.png rename to doc/doxy/html/arrowright.png diff --git a/doc/doxy/html/bc_s.png b/doc/doxy/html/bc_s.png index 293e5b4..224b29a 100644 Binary files a/doc/doxy/html/bc_s.png and b/doc/doxy/html/bc_s.png differ diff --git a/doc/doxy/html/bdwn.png b/doc/doxy/html/bdwn.png index 3e01397..940a0b9 100644 Binary files a/doc/doxy/html/bdwn.png and b/doc/doxy/html/bdwn.png differ diff --git a/doc/doxy/html/camera_8hpp_source.html b/doc/doxy/html/camera_8hpp_source.html index 55b3f88..02537d9 100644 --- a/doc/doxy/html/camera_8hpp_source.html +++ b/doc/doxy/html/camera_8hpp_source.html @@ -3,15 +3,24 @@ - -OWMAN: renderer/camera.hpp Source File + +owman: camera.hpp Source File + + + + + + @@ -21,18 +30,16 @@ -
-
OWMAN +
owman
-
Open World Manager
- + @@ -63,15 +70,29 @@ + +
+ +
+
+
+ +
- All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
+
@@ -80,65 +101,54 @@
- -
camera.hpp
-Go to the documentation of this file.
1 #include "../math/vec2f.hpp"
-
2 
-
3 #ifndef GRAPHICS_SYSTEM
-
4 class GraphicsSystem;
-
5 #endif
-
6 
-
7 #ifndef CAMERA
-
8 #define CAMERA
-
9 
-
13 class Camera
-
14 {
+
1 #ifndef CAMERA
+
2 #define CAMERA
+
3 
+
4 #include "../math/vec2f.hpp"
+
5 
+
6 class GraphicsSystem;
+
7 
+
11 class Camera
+
12 {
+
13 
+
14  friend class GraphicsSystem;
15 
-
16  friend class GraphicsSystem;
+
16  GraphicsSystem* myGraphicsSystem;
17 
- +
18 public:
19 
-
20 public:
+
20  Camera(){}
21 
-
22  Camera(){}
-
23 
-
24  Vec2f getPosition()const;
-
25  void setPosition(const Vec2f& position);
-
26 
-
27  float getWidth()const;
-
28  float getHeight()const;
-
29 
-
30  void setWidth(float width);
-
31  void setHeight(float height);
+
22  Vec2f getPosition()const;
+
23  void setPosition(const Vec2f& position);
+
24 
+
25  float getWidth()const;
+
26  float getHeight()const;
+
27 
+
28  void setWidth(float width);
+
29  void setHeight(float height);
+
30 
+
31 };
32 
-
33 };
-
34 
-
35 #endif
-
Definition: vec2f.hpp:9
-
GraphicsSystem * myGraphicsSystem
Definition: camera.hpp:18
-
High level abstraction camera You can set the position and dimensions of the camera.
Definition: camera.hpp:13
-
Vec2f getPosition() const
Definition: camera.cpp:4
-
float getHeight() const
Definition: camera.cpp:19
-
float getWidth() const
Definition: camera.cpp:14
-
void setPosition(const Vec2f &position)
Definition: camera.cpp:9
-
Camera()
Definition: camera.hpp:22
-
Definition: graphics_system.hpp:15
-
void setHeight(float height)
Definition: camera.cpp:29
-
void setWidth(float width)
Definition: camera.cpp:24
+
33 #endif
+
Definition: vec2f.hpp:10
+
High level abstraction camera You can set the position and dimensions of the camera.
Definition: camera.hpp:11
+
Definition: graphics_system.hpp:17
+
- + diff --git a/doc/doxy/html/cell__size_8hpp_source.html b/doc/doxy/html/cell__size_8hpp_source.html new file mode 100644 index 0000000..c1519bf --- /dev/null +++ b/doc/doxy/html/cell__size_8hpp_source.html @@ -0,0 +1,121 @@ + + + + + + +owman: cell_size.hpp Source File + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
owman +
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
cell_size.hpp
+
+
+
+
+ + + + diff --git a/doc/doxy/html/class_a_a_rect-members.html b/doc/doxy/html/class_a_a_rect-members.html new file mode 100644 index 0000000..d740e03 --- /dev/null +++ b/doc/doxy/html/class_a_a_rect-members.html @@ -0,0 +1,134 @@ + + + + + + +owman: Member List + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
owman +
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
AARect Member List
+
+
+ +

This is the complete list of members for AARect, including all inherited members.

+ + + + + + + + + +
AARect() (defined in AARect)AARectinline
AARect(float x, float y, float w, float h) (defined in AARect)AARect
AARect(const AARect &rect) (defined in AARect)AARect
h (defined in AARect)AARect
operator=(const AARect &rect) (defined in AARect)AARect
w (defined in AARect)AARect
x (defined in AARect)AARect
y (defined in AARect)AARect
+
+ + + + diff --git a/doc/doxy/html/class_a_a_rect.html b/doc/doxy/html/class_a_a_rect.html new file mode 100644 index 0000000..ea50297 --- /dev/null +++ b/doc/doxy/html/class_a_a_rect.html @@ -0,0 +1,160 @@ + + + + + + +owman: AARect Class Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
owman +
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
AARect Class Reference
+
+
+ + + + + + + + +

+Public Member Functions

AARect (float x, float y, float w, float h)
 
AARect (const AARect &rect)
 
+AARect operator= (const AARect &rect)
 
+ + + + + + + + + +

+Public Attributes

+float x
 
+float y
 
+float w
 
+float h
 
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/doc/doxy/html/class_a_a_rect.js b/doc/doxy/html/class_a_a_rect.js new file mode 100644 index 0000000..161d397 --- /dev/null +++ b/doc/doxy/html/class_a_a_rect.js @@ -0,0 +1,11 @@ +var class_a_a_rect = +[ + [ "AARect", "class_a_a_rect.html#a3ad3a2a6e62280e7f0b52b8cc5533fa1", null ], + [ "AARect", "class_a_a_rect.html#abf722c79b2ee310a2a4ed60eb1359cdb", null ], + [ "AARect", "class_a_a_rect.html#a95844d724b1c3d6cee2280ac04860db4", null ], + [ "operator=", "class_a_a_rect.html#aa8549012bc8def9c5d111b01825e4cb3", null ], + [ "h", "class_a_a_rect.html#af01b6834a1f25c863b22cc2722111b21", null ], + [ "w", "class_a_a_rect.html#ae3210de4699c34f37d6cbd3358ff45b5", null ], + [ "x", "class_a_a_rect.html#a34b2c32387259879ded16e3d6d09b634", null ], + [ "y", "class_a_a_rect.html#aa27aea3a50f1b2f84ffc08a497883d8f", null ] +]; \ No newline at end of file diff --git a/doc/doxy/html/class_animation-members.html b/doc/doxy/html/class_animation-members.html new file mode 100644 index 0000000..2aa4745 --- /dev/null +++ b/doc/doxy/html/class_animation-members.html @@ -0,0 +1,128 @@ + + + + + + +owman: Member List + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
owman +
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
Animation Member List
+
+
+ +

This is the complete list of members for Animation, including all inherited members.

+ + + +
frames (defined in Animation)Animation
name (defined in Animation)Animation
+
+ + + + diff --git a/doc/doxy/html/class_animation.html b/doc/doxy/html/class_animation.html new file mode 100644 index 0000000..d86df38 --- /dev/null +++ b/doc/doxy/html/class_animation.html @@ -0,0 +1,140 @@ + + + + + + +owman: Animation Class Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
owman +
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
Animation Class Reference
+
+
+ + + + + + +

+Public Attributes

+std::string name
 
+std::vector< AnimationFrameframes
 
+
The documentation for this class was generated from the following file: +
+
+ + + + diff --git a/doc/doxy/html/class_animation.js b/doc/doxy/html/class_animation.js new file mode 100644 index 0000000..d0ac174 --- /dev/null +++ b/doc/doxy/html/class_animation.js @@ -0,0 +1,5 @@ +var class_animation = +[ + [ "frames", "class_animation.html#a5a4860c2dfb5960e0a6211be16c78bec", null ], + [ "name", "class_animation.html#a5a8a87b628cfe8bfc2cd50d9658245fd", null ] +]; \ No newline at end of file diff --git a/doc/doxy/html/class_animation_frame-members.html b/doc/doxy/html/class_animation_frame-members.html new file mode 100644 index 0000000..af80eaf --- /dev/null +++ b/doc/doxy/html/class_animation_frame-members.html @@ -0,0 +1,129 @@ + + + + + + +owman: Member List + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
owman +
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
AnimationFrame Member List
+
+
+ +

This is the complete list of members for AnimationFrame, including all inherited members.

+ + + + +
frameDuration (defined in AnimationFrame)AnimationFrame
textureIndex (defined in AnimationFrame)AnimationFrame
vbo (defined in AnimationFrame)AnimationFrame
+
+ + + + diff --git a/doc/doxy/html/class_animation_frame.html b/doc/doxy/html/class_animation_frame.html new file mode 100644 index 0000000..d21d8c7 --- /dev/null +++ b/doc/doxy/html/class_animation_frame.html @@ -0,0 +1,143 @@ + + + + + + +owman: AnimationFrame Class Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
owman +
+
+
+ + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
AnimationFrame Class Reference
+
+
+ + + + + + + + +

+Public Attributes

+unsigned textureIndex
 
+LowLevelRenderer2D::SpriteVbo vbo
 
+float frameDuration
 
+
The documentation for this class was generated from the following file: +
+
+ + + + diff --git a/doc/doxy/html/class_animation_frame.js b/doc/doxy/html/class_animation_frame.js new file mode 100644 index 0000000..9b01c9f --- /dev/null +++ b/doc/doxy/html/class_animation_frame.js @@ -0,0 +1,6 @@ +var class_animation_frame = +[ + [ "frameDuration", "class_animation_frame.html#aed1844bb3eb7b63aa90ed838e69c4d52", null ], + [ "textureIndex", "class_animation_frame.html#aeb4a753a6ad7b8b948cc937c692b70fc", null ], + [ "vbo", "class_animation_frame.html#aedbb22dbc977fba31d9636995b98f281", null ] +]; \ No newline at end of file diff --git a/doc/doxy/html/class_camera-members.html b/doc/doxy/html/class_camera-members.html index f95c356..4d4dfaf 100644 --- a/doc/doxy/html/class_camera-members.html +++ b/doc/doxy/html/class_camera-members.html @@ -3,15 +3,24 @@ - -OWMAN: Member List + +owman: Member List + + + + + + @@ -21,18 +30,16 @@ -
-
OWMAN +
owman
-
Open World Manager
- + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,7 +104,6 @@
    -
    Camera Member List
    @@ -91,21 +112,23 @@

    This is the complete list of members for Camera, including all inherited members.

    - - - - - - - - - + + + + + + + +
    Camera()Camerainline
    getHeight() const Camera
    getPosition() const Camera
    getWidth() const Camera
    GraphicsSystem classCamerafriend
    myGraphicsSystemCameraprivate
    setHeight(float height)Camera
    setPosition(const Vec2f &position)Camera
    setWidth(float width)Camera
    Camera() (defined in Camera)Camerainline
    getHeight() const (defined in Camera)Camera
    getPosition() const (defined in Camera)Camera
    getWidth() const (defined in Camera)Camera
    GraphicsSystem (defined in Camera)Camerafriend
    setHeight(float height) (defined in Camera)Camera
    setPosition(const Vec2f &position) (defined in Camera)Camera
    setWidth(float width) (defined in Camera)Camera
    + - + diff --git a/doc/doxy/html/class_camera.html b/doc/doxy/html/class_camera.html index b3d7809..a0619e2 100644 --- a/doc/doxy/html/class_camera.html +++ b/doc/doxy/html/class_camera.html @@ -3,15 +3,24 @@ - -OWMAN: Camera Class Reference + +owman: Camera Class Reference + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,11 +104,9 @@
    -
    Public Member Functions | -Private Attributes | Friends | List of all members
    @@ -101,203 +121,47 @@ - - - + - + - + - + - + - +

    Public Member Functions

     Camera ()
     
    Vec2f getPosition () const
    +Vec2f getPosition () const
     
    void setPosition (const Vec2f &position)
    +void setPosition (const Vec2f &position)
     
    float getWidth () const
    +float getWidth () const
     
    float getHeight () const
    +float getHeight () const
     
    void setWidth (float width)
    +void setWidth (float width)
     
    void setHeight (float height)
    +void setHeight (float height)
     
    - - - -

    -Private Attributes

    GraphicsSystemmyGraphicsSystem
     
    - +

    Friends

    class GraphicsSystem
    +class GraphicsSystem
     

    Detailed Description

    High level abstraction camera You can set the position and dimensions of the camera.

    -

    Constructor & Destructor Documentation

    - -
    -
    - - - - - -
    - - - - - - - -
    Camera::Camera ()
    -
    -inline
    -
    - -
    -
    -

    Member Function Documentation

    - -
    -
    - - - - - - - -
    float Camera::getHeight () const
    -
    - -
    -
    - -
    -
    - - - - - - - -
    Vec2f Camera::getPosition () const
    -
    - -
    -
    - -
    -
    - - - - - - - -
    float Camera::getWidth () const
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    void Camera::setHeight (float height)
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    void Camera::setPosition (const Vec2fposition)
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    void Camera::setWidth (float width)
    -
    - -
    -
    -

    Friends And Related Function Documentation

    - -
    -
    - - - - - -
    - - - - -
    friend class GraphicsSystem
    -
    -friend
    -
    - -
    -
    -

    Member Data Documentation

    - -
    -
    - - - - - -
    - - - - -
    GraphicsSystem* Camera::myGraphicsSystem
    -
    -private
    -
    - -
    -
    -
    The documentation for this class was generated from the following files:

    The documentation for this class was generated from the following files:
    + - + diff --git a/doc/doxy/html/class_color-members.html b/doc/doxy/html/class_color-members.html index 0b9f592..2c35125 100644 --- a/doc/doxy/html/class_color-members.html +++ b/doc/doxy/html/class_color-members.html @@ -3,15 +3,24 @@ - -OWMAN: Member List + +owman: Member List + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,7 +104,6 @@
    -
    Color Member List
    @@ -91,18 +112,21 @@

    This is the complete list of members for Color, including all inherited members.

    - - - - - - + + + + + +
    aColor
    bColor
    Color(float r, float g, float b)Colorinline
    Color(float r, float g, float b, float a)Colorinline
    gColor
    rColor
    a (defined in Color)Color
    b (defined in Color)Color
    Color(float r, float g, float b) (defined in Color)Colorinline
    Color(float r, float g, float b, float a) (defined in Color)Colorinline
    g (defined in Color)Color
    r (defined in Color)Color
    + - + diff --git a/doc/doxy/html/class_color.html b/doc/doxy/html/class_color.html index 7b54d9a..ef82c07 100644 --- a/doc/doxy/html/class_color.html +++ b/doc/doxy/html/class_color.html @@ -3,15 +3,24 @@ - -OWMAN: Color Class Reference + +owman: Color Class Reference + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,7 +104,6 @@
    -
    Public Member Functions | @@ -100,169 +121,43 @@ - + - +

    Public Member Functions

     Color (float r, float g, float b)
    Color (float r, float g, float b)
     
     Color (float r, float g, float b, float a)
    Color (float r, float g, float b, float a)
     
    - + - + - + - +

    Public Attributes

    float r
    +float r
     
    float g
    +float g
     
    float b
    +float b
     
    float a
    +float a
     

    Detailed Description

    represents a color of 4 float components(r, g, b, a)

    -

    Constructor & Destructor Documentation

    - -
    -
    - - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    Color::Color (float r,
    float g,
    float b 
    )
    -
    -inline
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Color::Color (float r,
    float g,
    float b,
    float a 
    )
    -
    -inline
    -
    - -
    -
    -

    Member Data Documentation

    - -
    -
    - - - - -
    float Color::a
    -
    - -
    -
    - -
    -
    - - - - -
    float Color::b
    -
    - -
    -
    - -
    -
    - - - - -
    float Color::g
    -
    - -
    -
    - -
    -
    - - - - -
    float Color::r
    -
    - -
    -
    -
    The documentation for this class was generated from the following file:

    The documentation for this class was generated from the following file:
    + - + diff --git a/doc/doxy/html/class_engine-members.html b/doc/doxy/html/class_engine-members.html index 566c84e..c5f90bc 100644 --- a/doc/doxy/html/class_engine-members.html +++ b/doc/doxy/html/class_engine-members.html @@ -3,15 +3,24 @@ - -OWMAN: Member List + +owman: Member List + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,7 +104,6 @@
    -
    Engine Member List
    @@ -91,30 +112,24 @@

    This is the complete list of members for Engine, including all inherited members.

    - - - - - - - - - - - - - - - - - - + + + + + + + + +
    endEngineprivate
    endGame()Engine
    Engine(std::string initFile, std::string worldFolder)Engine
    entityFactoryEngineprivate
    eventHandlerEngineprivate
    fpsEngineprivate
    getCellSize() const Engine
    getGraphicsSystem()Engine
    getMainCharacter()Engine
    getPhysicsSystem()Engine
    graphicsSystemEngineprivate
    init()Engine
    mainCharacterEngineprivate
    mainLoop()Engine
    physicsSystemEngineprivate
    worldGridEngineprivate
    worldStreamerEngineprivate
    ~Engine()Engine
    endGame() (defined in Engine)Engine
    Engine(std::string initFile, std::string worldFolder) (defined in Engine)Engine
    getCellSize() const (defined in Engine)Engine
    getGraphicsSystem() (defined in Engine)Engine
    getMainCharacter() (defined in Engine)Engine
    getPhysicsSystem() (defined in Engine)Engine
    init() (defined in Engine)Engine
    mainLoop() (defined in Engine)Engine
    ~Engine() (defined in Engine)Engine
    + - + diff --git a/doc/doxy/html/class_engine.html b/doc/doxy/html/class_engine.html index e87dadb..a9367cd 100644 --- a/doc/doxy/html/class_engine.html +++ b/doc/doxy/html/class_engine.html @@ -3,15 +3,24 @@ - -OWMAN: Engine Class Reference + +owman: Engine Class Reference + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,11 +104,9 @@
    -
    Public Member Functions | -Private Attributes | List of all members
    Engine Class Reference
    @@ -100,387 +120,47 @@ - + - + - + - + - + - + - + - + - - -

    Public Member Functions

     Engine (std::string initFile, std::string worldFolder)
    Engine (std::string initFile, std::string worldFolder)
     
    void init ()
    +void init ()
     
    void mainLoop ()
    +void mainLoop ()
     
    GraphicsSystemgetGraphicsSystem ()
    +GraphicsSystemgetGraphicsSystem ()
     
    PhysicsSystemgetPhysicsSystem ()
    +PhysicsSystemgetPhysicsSystem ()
     
    MainCharactergetMainCharacter ()
    +MainCharactergetMainCharacter ()
     
    float getCellSize () const
    +float getCellSize () const
     
    void endGame ()
    +void endGame ()
     
     ~Engine ()
     
    - - - - - - - - - - - - - - - - - - -

    -Private Attributes

    WorldWindow worldGrid
     
    EntityFactory entityFactory
     
    GraphicsSystemgraphicsSystem
     
    PhysicsSystemphysicsSystem
     
    IWorldStreamerworldStreamer
     
    MainCharactermainCharacter
     
    EventHandler eventHandler
     
    bool end
     
    int fps
     

    Detailed Description

    encapsulates all systems Has the main loop. Contains all systems like graphics system and physics system

    -

    Constructor & Destructor Documentation

    - -
    -
    - - - - - - - - - - - - - - - - - - -
    Engine::Engine (std::string initFile,
    std::string worldFolder 
    )
    -
    - -
    -
    - -
    -
    - - - - - - - -
    Engine::~Engine ()
    -
    - -
    -
    -

    Member Function Documentation

    - -
    -
    - - - - - - - -
    void Engine::endGame ()
    -
    - -
    -
    - -
    -
    - - - - - - - -
    float Engine::getCellSize () const
    -
    - -
    -
    - -
    -
    - - - - - - - -
    GraphicsSystem * Engine::getGraphicsSystem ()
    -
    - -
    -
    - -
    -
    - - - - - - - -
    MainCharacter * Engine::getMainCharacter ()
    -
    - -
    -
    - -
    -
    - - - - - - - -
    PhysicsSystem * Engine::getPhysicsSystem ()
    -
    - -
    -
    - -
    -
    - - - - - - - -
    void Engine::init ()
    -
    - -
    -
    - -
    -
    - - - - - - - -
    void Engine::mainLoop ()
    -
    - -
    -
    -

    Member Data Documentation

    - -
    -
    - - - - - -
    - - - - -
    bool Engine::end
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    EntityFactory Engine::entityFactory
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    EventHandler Engine::eventHandler
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    int Engine::fps
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    GraphicsSystem* Engine::graphicsSystem
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    MainCharacter* Engine::mainCharacter
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    PhysicsSystem* Engine::physicsSystem
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    WorldWindow Engine::worldGrid
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    IWorldStreamer* Engine::worldStreamer
    -
    -private
    -
    - -
    -
    -
    The documentation for this class was generated from the following files:

    The documentation for this class was generated from the following files: + - + diff --git a/doc/doxy/html/class_entity-members.html b/doc/doxy/html/class_entity-members.html index f3abfda..f5ebbf8 100644 --- a/doc/doxy/html/class_entity-members.html +++ b/doc/doxy/html/class_entity-members.html @@ -3,15 +3,24 @@ - -OWMAN: Member List + +owman: Member List + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,7 +104,6 @@
    -
    Entity Member List
    @@ -92,29 +113,32 @@

    This is the complete list of members for Entity, including all inherited members.

    - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + +
    createXmlNode(rapidxml::xml_document<> *doc, float cellSize)Entity
    Entity()Entityprotected
    EntityFactory classEntityfriend
    getGraphicsComponent()Entity
    getId() const Entity
    getPhysicsComponent()Entity
    getPosition() const Entity
    getTypeOfEntity() const Entity
    graphicsComponentEntityprotected
    idEntityprotected
    Id typedefEntity
    physicsComponentEntityprotected
    setGraphicsComponent(GraphicsComponent *component)Entityprotected
    setPhysicsComponent(PhysicsComponent *component)Entityprotected
    setPosition(const Vec2f &pos)Entity
    TypeId typedefEntity
    typeIdEntityprotected
    ~Entity()Entity
    Entity() (defined in Entity)Entityprotected
    EntityFactory (defined in Entity)Entityfriend
    getGraphicsComponent() (defined in Entity)Entity
    getId() const (defined in Entity)Entity
    getPhysicsComponent() (defined in Entity)Entity
    getPosition() const (defined in Entity)Entity
    getTypeOfEntity() const (defined in Entity)Entity
    graphicsComponent (defined in Entity)Entityprotected
    id (defined in Entity)Entityprotected
    Id typedef (defined in Entity)Entity
    physicsComponent (defined in Entity)Entityprotected
    setGraphicsComponent(GraphicsComponent *component) (defined in Entity)Entityprotected
    setPhysicsComponent(PhysicsComponent *component) (defined in Entity)Entityprotected
    setPosition(const Vec2f &pos) (defined in Entity)Entity
    TypeId typedef (defined in Entity)Entity
    typeId (defined in Entity)Entityprotected
    ~Entity() (defined in Entity)Entity
    + - + diff --git a/doc/doxy/html/class_entity.html b/doc/doxy/html/class_entity.html index 0c00c8c..91dec08 100644 --- a/doc/doxy/html/class_entity.html +++ b/doc/doxy/html/class_entity.html @@ -3,15 +3,24 @@ - -OWMAN: Entity Class Reference + +owman: Entity Class Reference + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,7 +104,6 @@
    -
    Public Types | @@ -112,130 +133,77 @@ - + - +

    Public Types

    typedef std::string TypeId
    +typedef std::string TypeId
     
    typedef unsigned int Id
    +typedef unsigned int Id
     
    - + - + - + - + - + - + - + - -

    Public Member Functions

    TypeId getTypeOfEntity () const
    +TypeId getTypeOfEntity () const
     
    Id getId () const
    +Id getId () const
     
    Vec2f getPosition () const
    +Vec2f getPosition () const
     
    void setPosition (const Vec2f &pos)
    +void setPosition (const Vec2f &pos)
     
    GraphicsComponentgetGraphicsComponent ()
    +GraphicsComponentgetGraphicsComponent ()
     
    PhysicsComponentgetPhysicsComponent ()
    +PhysicsComponentgetPhysicsComponent ()
     
    rapidxml::xml_nodecreateXmlNode (rapidxml::xml_document<> *doc, float cellSize)
    rapidxml::xml_node * createXmlNode (rapidxml::xml_document<> *doc, float cellSize)
     
     ~Entity ()
     
    - - - + - +

    Protected Member Functions

     Entity ()
     
    void setGraphicsComponent (GraphicsComponent *component)
    +void setGraphicsComponent (GraphicsComponent *component)
     
    void setPhysicsComponent (PhysicsComponent *component)
    +void setPhysicsComponent (PhysicsComponent *component)
     
    - + - + - + - +

    Protected Attributes

    TypeId typeId
    +TypeId typeId
     
    Id id
    +Id id
     
    GraphicsComponentgraphicsComponent
    +GraphicsComponentgraphicsComponent
     
    PhysicsComponentphysicsComponent
    +PhysicsComponentphysicsComponent
     
    - +

    Friends

    class EntityFactory
    +class EntityFactory
     

    Detailed Description

    Components compounded entity.

    -

    Member Typedef Documentation

    - -
    -
    - - - - -
    typedef unsigned int Entity::Id
    -
    - -
    -
    - -
    -
    - - - - -
    typedef std::string Entity::TypeId
    -
    - -
    -
    -

    Constructor & Destructor Documentation

    - -
    -
    - - - - - -
    - - - - - - - -
    Entity::Entity ()
    -
    -protected
    -
    - -
    -
    - -
    -
    - - - - - - - -
    Entity::~Entity ()
    -
    - -
    -
    -

    Member Function Documentation

    +

    Member Function Documentation

    - + - + @@ -251,260 +219,27 @@

    Member Function Documentation

    xml_node * Entity::createXmlNode xml_node * Entity::createXmlNode (rapidxml::xml_document<> * rapidxml::xml_document<> *  doc,
    - -
    -
    - -
    -
    - - - - - - - -
    GraphicsComponent * Entity::getGraphicsComponent ()
    -
    - -
    -
    - -
    -
    - - - - - - - -
    Entity::Id Entity::getId () const
    -
    - -
    -
    - -
    -
    - - - - - - - -
    PhysicsComponent * Entity::getPhysicsComponent ()
    -
    - -
    -
    - -
    -
    - - - - - - - -
    Vec2f Entity::getPosition () const
    -
    - -
    -
    - -
    -
    - - - - - - - -
    Entity::TypeId Entity::getTypeOfEntity () const
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - -
    void Entity::setGraphicsComponent (GraphicsComponentcomponent)
    -
    -protected
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - -
    void Entity::setPhysicsComponent (PhysicsComponentcomponent)
    -
    -protected
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    void Entity::setPosition (const Vec2fpos)
    -
    - -
    -
    -

    Friends And Related Function Documentation

    - -
    -
    - - - - - -
    - - - - -
    friend class EntityFactory
    -
    -friend
    -
    - -
    -
    -

    Member Data Documentation

    - -
    -
    - - - - - -
    - - - - -
    GraphicsComponent* Entity::graphicsComponent
    -
    -protected
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    Id Entity::id
    -
    -protected
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    PhysicsComponent* Entity::physicsComponent
    -
    -protected
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    TypeId Entity::typeId
    -
    -protected
    -
    +

    x

    +

    y

    +

    graphics component

    +

    physics component


    The documentation for this class was generated from the following files:
    + - + diff --git a/doc/doxy/html/class_entity.png b/doc/doxy/html/class_entity.png index 4f5e959..e4106c0 100644 Binary files a/doc/doxy/html/class_entity.png and b/doc/doxy/html/class_entity.png differ diff --git a/doc/doxy/html/class_entity_factory-members.html b/doc/doxy/html/class_entity_factory-members.html index 3c4b428..6e4bebe 100644 --- a/doc/doxy/html/class_entity_factory-members.html +++ b/doc/doxy/html/class_entity_factory-members.html @@ -3,15 +3,24 @@ - -OWMAN: Member List + +owman: Member List + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,7 +104,6 @@
    -
    EntityFactory Member List
    @@ -91,20 +112,20 @@

    This is the complete list of members for EntityFactory, including all inherited members.

    - - - - - - - - + + + + +
    countIdEntityFactoryprivate
    createEntity(rapidxml::xml_node<> *node, const Vec2i &toCenter)EntityFactory
    createMainCharacter(rapidxml::xml_node<> *node)EntityFactory
    DEFAULT_INIT_IDEntityFactoryprivatestatic
    destroyEntity(Entity *entity)EntityFactory
    EntityFactory()EntityFactoryinline
    EntityFactory(Engine *engine)EntityFactory
    myEngineEntityFactoryprivate
    createEntity(rapidxml::xml_node<> *node, const Vec2i &toCenter)EntityFactory
    createMainCharacter(rapidxml::xml_node<> *node)EntityFactory
    destroyEntity(Entity *entity) (defined in EntityFactory)EntityFactory
    EntityFactory() (defined in EntityFactory)EntityFactoryinline
    EntityFactory(Engine *engine) (defined in EntityFactory)EntityFactory
    + - + diff --git a/doc/doxy/html/class_entity_factory.html b/doc/doxy/html/class_entity_factory.html index ae293f5..882424b 100644 --- a/doc/doxy/html/class_entity_factory.html +++ b/doc/doxy/html/class_entity_factory.html @@ -3,15 +3,24 @@ - -OWMAN: EntityFactory Class Reference + +owman: EntityFactory Class Reference + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,87 +104,30 @@
    -
    Public Member Functions | -Private Attributes | -Static Private Attributes | List of all members
    EntityFactory Class Reference
    - -

    #include <entity_factory.hpp>

    - - - + - - + + - - + + - + -

    Public Member Functions

     EntityFactory ()
     
     EntityFactory (Engine *engine)
    EntityFactory (Engine *engine)
     
    EntitycreateEntity (rapidxml::xml_node<> *node, const Vec2i &toCenter)
     Create an entity. More...
    EntitycreateEntity (rapidxml::xml_node<> *node, const Vec2i &toCenter)
     Create an entity. More...
     
    MainCharactercreateMainCharacter (rapidxml::xml_node<> *node)
     Create a main character. More...
    MainCharactercreateMainCharacter (rapidxml::xml_node<> *node)
     Create a main character. More...
     
    void destroyEntity (Entity *entity)
    +void destroyEntity (Entity *entity)
     
    - - - - - -

    -Private Attributes

    EnginemyEngine
     
    Entity::Id countId
     
    - - -

    -Static Private Attributes

    static const Entity::Id DEFAULT_INIT_ID = 0x1000000
     
    -

    Constructor & Destructor Documentation

    - -
    -
    - - - - - -
    - - - - - - - -
    EntityFactory::EntityFactory ()
    -
    -inline
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    EntityFactory::EntityFactory (Engineengine)
    -
    - -
    -

    Member Function Documentation

    @@ -171,7 +136,7 @@

    Member Function Documentation

    Entity * EntityFactory::createEntity ( - rapidxml::xml_node<> *  + rapidxml::xml_node<> *  node, @@ -196,7 +161,7 @@

    Member Function Documentation

    -
    Returns
    A pointer to the entity. Use destroyEntity() to release.
    +
    Returns
    A pointer to the entity. Use destroyEntity() to release.
    @@ -207,7 +172,7 @@

    Member Function Documentation

    MainCharacter * EntityFactory::createMainCharacter ( - rapidxml::xml_node<> *  + rapidxml::xml_node<> *  node) @@ -221,97 +186,24 @@

    Member Function Documentation

    -
    Returns
    A pointer to the entity. Use destroyEntity() to release.
    - - - - -
    -
    - - - - - - - - -
    void EntityFactory::destroyEntity (Entityentity)
    -
    - -
    -
    -

    Member Data Documentation

    - -
    -
    - - - - - -
    - - - - -
    Entity::Id EntityFactory::countId
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    const Entity::Id EntityFactory::DEFAULT_INIT_ID = 0x1000000
    -
    -staticprivate
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    Engine* EntityFactory::myEngine
    -
    -private
    -
    +
    Returns
    A pointer to the entity. Use destroyEntity() to release.

    The documentation for this class was generated from the following files: + - + diff --git a/doc/doxy/html/class_event_handler-members.html b/doc/doxy/html/class_event_handler-members.html index 2155cf6..ec14916 100644 --- a/doc/doxy/html/class_event_handler-members.html +++ b/doc/doxy/html/class_event_handler-members.html @@ -3,15 +3,24 @@ - -OWMAN: Member List + +owman: Member List + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,7 +104,6 @@
    -
    EventHandler Member List
    @@ -91,17 +112,18 @@

    This is the complete list of members for EventHandler, including all inherited members.

    - - - - - + + +
    engineEventHandlerprivate
    eventEventHandlerprivate
    EventHandler(Engine *engine)EventHandler
    handle()EventHandlervirtual
    poll()EventHandler
    EventHandler(Engine *engine) (defined in EventHandler)EventHandler
    handle() (defined in EventHandler)EventHandlervirtual
    poll() (defined in EventHandler)EventHandler
    + - + diff --git a/doc/doxy/html/class_event_handler.html b/doc/doxy/html/class_event_handler.html index c349aaa..13a8d5d 100644 --- a/doc/doxy/html/class_event_handler.html +++ b/doc/doxy/html/class_event_handler.html @@ -3,15 +3,24 @@ - -OWMAN: EventHandler Class Reference + +owman: EventHandler Class Reference + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,142 +104,41 @@
    -
    Public Member Functions | -Private Attributes | List of all members
    EventHandler Class Reference
    - -

    #include <event_handler.hpp>

    - + - + - + -

    Public Member Functions

     EventHandler (Engine *engine)
    EventHandler (Engine *engine)
     
    virtual void handle ()
    +virtual void handle ()
     
    void poll ()
    +void poll ()
     
    - - - - - -

    -Private Attributes

    SDL_Event event
     
    Engineengine
     
    -

    Constructor & Destructor Documentation

    - -
    -
    - - - - - - - - -
    EventHandler::EventHandler (Engineengine)
    -
    - -
    -
    -

    Member Function Documentation

    - -
    -
    - - - - -
    - - - - - - - -
    void EventHandler::handle ()
    -
    -virtual
    -
    - -
    -
    - -
    -
    - - - - - - - -
    void EventHandler::poll ()
    -
    - -
    -
    -

    Member Data Documentation

    - -
    -
    - - - - - -
    - - - - -
    Engine* EventHandler::engine
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    SDL_Event EventHandler::event
    -
    -private
    -
    - -
    -

    The documentation for this class was generated from the following files:
    + - + diff --git a/doc/doxy/html/class_exception-members.html b/doc/doxy/html/class_exception-members.html new file mode 100644 index 0000000..71806cc --- /dev/null +++ b/doc/doxy/html/class_exception-members.html @@ -0,0 +1,128 @@ + + + + + + +owman: Member List + + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    owman +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    +
    Exception Member List
    +
    +
    + +

    This is the complete list of members for Exception, including all inherited members.

    + + + +
    Exception(const std::string &msg) (defined in Exception)Exceptioninline
    str() const (defined in Exception)Exceptioninline
    +
    + + + + diff --git a/doc/doxy/html/class_exception.html b/doc/doxy/html/class_exception.html new file mode 100644 index 0000000..3b2cc9d --- /dev/null +++ b/doc/doxy/html/class_exception.html @@ -0,0 +1,148 @@ + + + + + + +owman: Exception Class Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    owman +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    Exception Class Reference
    +
    +
    +
    +Inheritance diagram for Exception:
    +
    +
    + + + +
    + + + + + + +

    +Public Member Functions

    Exception (const std::string &msg)
     
    +std::string str () const
     
    +
    The documentation for this class was generated from the following file: +
    +
    + + + + diff --git a/doc/doxy/html/class_exception.js b/doc/doxy/html/class_exception.js new file mode 100644 index 0000000..6548803 --- /dev/null +++ b/doc/doxy/html/class_exception.js @@ -0,0 +1,5 @@ +var class_exception = +[ + [ "Exception", "class_exception.html#a35bf745d25961ebe8795f7f457aa8a05", null ], + [ "str", "class_exception.html#a5c6e4c794f2aa51464b8da25318c20cb", null ] +]; \ No newline at end of file diff --git a/doc/doxy/html/class_exception.png b/doc/doxy/html/class_exception.png new file mode 100644 index 0000000..2f24d78 Binary files /dev/null and b/doc/doxy/html/class_exception.png differ diff --git a/doc/doxy/html/class_graphics_component-members.html b/doc/doxy/html/class_graphics_component-members.html index 34b71f9..78b9d96 100644 --- a/doc/doxy/html/class_graphics_component-members.html +++ b/doc/doxy/html/class_graphics_component-members.html @@ -3,15 +3,24 @@ - -OWMAN: Member List + +owman: Member List + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,7 +104,6 @@
    -
    GraphicsComponent Member List
    @@ -91,38 +112,40 @@

    This is the complete list of members for GraphicsComponent, including all inherited members.

    - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + +
    becomeReady() const =0GraphicsComponentpure virtual
    createXmlNode(rapidxml::xml_document<> *doc)=0GraphicsComponentpure virtual
    destroyDispatcher()=0GraphicsComponentpure virtual
    draw() const =0GraphicsComponentpure virtual
    Entity classGraphicsComponentfriend
    getPosition() const GraphicsComponent
    getPosition()GraphicsComponent
    getPriority() const GraphicsComponent
    getScale() const GraphicsComponent
    GraphicsComponent()GraphicsComponentinline
    GraphicsSystem classGraphicsComponentfriend
    isLoaded() const =0GraphicsComponentpure virtual
    isReady() const =0GraphicsComponentpure virtual
    isVisible() const GraphicsComponent
    myEntityGraphicsComponentprotected
    myGraphicsSystemGraphicsComponentprotected
    positionGraphicsComponentprotected
    priorityGraphicsComponentprotected
    scaleGraphicsComponentprotected
    setPosition(const Vec2f &position)GraphicsComponent
    setPriority(int priority)GraphicsComponent
    setScale(const Vec2f &scale)GraphicsComponent
    setVisible(bool visible)GraphicsComponent
    update(unsigned int delta)=0GraphicsComponentpure virtual
    visibleGraphicsComponentprotected
    ~GraphicsComponent()GraphicsComponentinlinevirtual
    createXmlNode(rapidxml::xml_document<> *doc)GraphicsComponentvirtual
    destroyDispatcher()=0GraphicsComponentpure virtual
    draw() const =0 (defined in GraphicsComponent)GraphicsComponentpure virtual
    Entity (defined in GraphicsComponent)GraphicsComponentfriend
    getGraphicsSystem() (defined in GraphicsComponent)GraphicsComponent
    getPosition() const (defined in GraphicsComponent)GraphicsComponent
    getPosition() (defined in GraphicsComponent)GraphicsComponent
    getPriority() const (defined in GraphicsComponent)GraphicsComponent
    getScale() const (defined in GraphicsComponent)GraphicsComponent
    GraphicsComponent(GraphicsSystem *graphicsSystem) (defined in GraphicsComponent)GraphicsComponent
    GraphicsSystem (defined in GraphicsComponent)GraphicsComponentfriend
    isReady() const =0GraphicsComponentpure virtual
    isVisible() const (defined in GraphicsComponent)GraphicsComponent
    myEntity (defined in GraphicsComponent)GraphicsComponentprotected
    myGraphicsSystem (defined in GraphicsComponent)GraphicsComponentprotected
    position (defined in GraphicsComponent)GraphicsComponentprotected
    priority (defined in GraphicsComponent)GraphicsComponentprotected
    scale (defined in GraphicsComponent)GraphicsComponentprotected
    setPosition(const Vec2f &position) (defined in GraphicsComponent)GraphicsComponent
    setPriority(int priority) (defined in GraphicsComponent)GraphicsComponent
    setScale(const Vec2f &scale) (defined in GraphicsComponent)GraphicsComponent
    setVisible(bool visible) (defined in GraphicsComponent)GraphicsComponent
    update(float delta)=0 (defined in GraphicsComponent)GraphicsComponentpure virtual
    visible (defined in GraphicsComponent)GraphicsComponentprotected
    ~GraphicsComponent() (defined in GraphicsComponent)GraphicsComponentinlinevirtual
    + - + diff --git a/doc/doxy/html/class_graphics_component.html b/doc/doxy/html/class_graphics_component.html index 5750d8f..9d556a0 100644 --- a/doc/doxy/html/class_graphics_component.html +++ b/doc/doxy/html/class_graphics_component.html @@ -3,15 +3,24 @@ - -OWMAN: GraphicsComponent Class Reference + +owman: GraphicsComponent Class Reference + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,7 +104,6 @@
    -
    Public Member Functions | @@ -101,127 +122,97 @@
    -Sprite +SpriteStatus
    - - - - - + + + + + + + - + - + - - + + - - - - - - - + - + - + - + - + - + - + - - - - - - - + + + + +

    Public Member Functions

     GraphicsComponent ()
     
    virtual void update (unsigned int delta)=0
     
    virtual void draw () const =0
    GraphicsComponent (GraphicsSystem *graphicsSystem)
     
    +GraphicsSystemgetGraphicsSystem ()
     
    +virtual void update (float delta)=0
     
    +virtual void draw () const =0
     
    bool isVisible () const
    +bool isVisible () const
     
    void setVisible (bool visible)
    +void setVisible (bool visible)
     
    virtual bool isReady () const =0
     return if this components is ready To be ready means that is has been loaded to video \ memory More...
    +virtual bool isReady () const =0
     return if this components is ready To be ready means that is has been loaded to video \ memory
     
    virtual bool isLoaded () const =0
     return if this component is loaded To be loaded means that it has been loaded to main \ memory More...
     
    virtual void becomeReady () const =0
     load to video memory Once the resource of this component has been loaded \ into main memory it has to be loaded to video memory \ this functions loads it into video memory More...
     
    const Vec2fgetPosition () const
    +const Vec2fgetPosition () const
     
    Vec2fgetPosition ()
    +Vec2fgetPosition ()
     
    Vec2f getScale () const
    +Vec2f getScale () const
     
    void setPosition (const Vec2f &position)
    +void setPosition (const Vec2f &position)
     
    void setScale (const Vec2f &scale)
    +void setScale (const Vec2f &scale)
     
    int getPriority () const
    +int getPriority () const
     
    void setPriority (int priority)
    +void setPriority (int priority)
     
    virtual rapidxml::xml_nodecreateXmlNode (rapidxml::xml_document<> *doc)=0
     Creates a graphics XML node Returns an XML node representing the class itself. More...
     
    virtual ~GraphicsComponent ()
     
    virtual void destroyDispatcher ()=0
     this will call to the corresponding GraphicsSystem function \ in charge of deleting this GraphicsComponent More...
    virtual rapidxml::xml_node * createXmlNode (rapidxml::xml_document<> *doc)
     Creates a graphics XML node Returns an XML node representing the class itself. More...
     
    +virtual void destroyDispatcher ()=0
     this will call to the corresponding GraphicsSystem function \ in charge of deleting this GraphicsComponent
     
    - + - + - + - + - + - +

    Protected Attributes

    EntitymyEntity
    +EntitymyEntity
     
    GraphicsSystemmyGraphicsSystem
    +GraphicsSystemmyGraphicsSystem
     
    bool visible
    +bool visible
     
    int priority
    +int priority
     
    Vec2f position
    +Vec2f position
     
    Vec2f scale
    +Vec2f scale
     
    - + - +

    Friends

    class Entity
    +class Entity
     
    class GraphicsSystem
    +class GraphicsSystem
     

    Detailed Description

    Abstract class representing any type of GraphicsComponent

    -

    Constructor & Destructor Documentation

    - -
    -
    - - - - - -
    - - - - - - - -
    GraphicsComponent::GraphicsComponent ()
    -
    -inline
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    virtual GraphicsComponent::~GraphicsComponent ()
    -
    -inlinevirtual
    -
    - -
    -
    -

    Member Function Documentation

    - +

    Member Function Documentation

    +
    @@ -229,43 +220,16 @@

    Member Function Documentation

    - - -
    - + - - - -
    virtual void GraphicsComponent::becomeReady rapidxml::xml_node * GraphicsComponent::createXmlNode () const
    -
    -pure virtual
    -
    - -

    load to video memory Once the resource of this component has been loaded \ into main memory it has to be loaded to video memory \ this functions loads it into video memory

    - -

    Implemented in Sprite.

    - -
    -
    - -
    -
    - - - +virtual
    - - - - - +
    virtual rapidxml::xml_node* GraphicsComponent::createXmlNode (rapidxml::xml_document<> * rapidxml::xml_document<> *  doc)
    -pure virtual
    @@ -279,453 +243,24 @@

    Member Function Documentation

    Returns
    The XML node
    -

    Implemented in Sprite.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    virtual void GraphicsComponent::destroyDispatcher ()
    -
    -pure virtual
    -
    - -

    this will call to the corresponding GraphicsSystem function \ in charge of deleting this GraphicsComponent

    - -

    Implemented in Sprite.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    virtual void GraphicsComponent::draw () const
    -
    -pure virtual
    -
    - -

    Implemented in Sprite.

    - -
    -
    - -
    -
    - - - - - - - -
    const Vec2f & GraphicsComponent::getPosition () const
    -
    - -
    -
    - -
    -
    - - - - - - - -
    Vec2f & GraphicsComponent::getPosition ()
    -
    - -
    -
    - -
    -
    - - - - - - - -
    int GraphicsComponent::getPriority () const
    -
    - -
    -
    - -
    -
    - - - - - - - -
    Vec2f GraphicsComponent::getScale () const
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    virtual bool GraphicsComponent::isLoaded () const
    -
    -pure virtual
    -
    - -

    return if this component is loaded To be loaded means that it has been loaded to main \ memory

    - -

    Implemented in Sprite.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    virtual bool GraphicsComponent::isReady () const
    -
    -pure virtual
    -
    - -

    return if this components is ready To be ready means that is has been loaded to video \ memory

    - -

    Implemented in Sprite.

    - -
    -
    - -
    -
    - - - - - - - -
    bool GraphicsComponent::isVisible () const
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    void GraphicsComponent::setPosition (const Vec2fposition)
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    void GraphicsComponent::setPriority (int priority)
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    void GraphicsComponent::setScale (const Vec2fscale)
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    void GraphicsComponent::setVisible (bool visible)
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - -
    virtual void GraphicsComponent::update (unsigned int delta)
    -
    -pure virtual
    -
    - -

    Implemented in Sprite.

    - -
    -
    -

    Friends And Related Function Documentation

    - -
    -
    - - - - - -
    - - - - -
    friend class Entity
    -
    -friend
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    friend class GraphicsSystem
    -
    -friend
    -
    - -
    -
    -

    Member Data Documentation

    - -
    -
    - - - - - -
    - - - - -
    Entity* GraphicsComponent::myEntity
    -
    -protected
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    GraphicsSystem* GraphicsComponent::myGraphicsSystem
    -
    -protected
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    Vec2f GraphicsComponent::position
    -
    -protected
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    int GraphicsComponent::priority
    -
    -protected
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    Vec2f GraphicsComponent::scale
    -
    -protected
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    bool GraphicsComponent::visible
    -
    -protected
    -
    +

    Reimplemented in SpriteStatus.


    The documentation for this class was generated from the following files: + - + diff --git a/doc/doxy/html/class_graphics_component.js b/doc/doxy/html/class_graphics_component.js index 44a5d85..d438b03 100644 --- a/doc/doxy/html/class_graphics_component.js +++ b/doc/doxy/html/class_graphics_component.js @@ -1,23 +1,22 @@ var class_graphics_component = [ - [ "GraphicsComponent", "class_graphics_component.html#a67fc1b715989a5e18d32e26b27a55c50", null ], + [ "GraphicsComponent", "class_graphics_component.html#a4ebdacea5abfb24274001c0afca7a57f", null ], [ "~GraphicsComponent", "class_graphics_component.html#a251f393a654ea32fd35d1660532866d1", null ], - [ "becomeReady", "class_graphics_component.html#a24bc771dc0429b2242df65dcd96189d0", null ], - [ "createXmlNode", "class_graphics_component.html#a862cb8e27d304c93b579501305a0574e", null ], + [ "createXmlNode", "class_graphics_component.html#a0aa72b1c36e3fdfa0e0de4d242a41e65", null ], [ "destroyDispatcher", "class_graphics_component.html#a3de01ba771b3ef54609c01c2a641faa4", null ], [ "draw", "class_graphics_component.html#aa9f8c55be356cea6840be46ca5a12f2e", null ], + [ "getGraphicsSystem", "class_graphics_component.html#a8622056570d82f58d9904d7a86773e99", null ], [ "getPosition", "class_graphics_component.html#a01e4202e9debaa52598caec001dc0d47", null ], [ "getPosition", "class_graphics_component.html#aedc03dd14d72edb4b53b2085793f2de9", null ], [ "getPriority", "class_graphics_component.html#adeb08c9a697f4dd8c1c9696105ae65af", null ], [ "getScale", "class_graphics_component.html#ac737b82b77b1ea15ddbf721ed3ea519e", null ], - [ "isLoaded", "class_graphics_component.html#ac849efb7ead2ac02326e79944fd8be68", null ], [ "isReady", "class_graphics_component.html#a4ccda0567ab0317ffb02d638e6396890", null ], [ "isVisible", "class_graphics_component.html#a5418e4001004fa20e0bcfc9776dd2986", null ], [ "setPosition", "class_graphics_component.html#a2bbe38c626c10e35e0644a5c64d5e3fd", null ], [ "setPriority", "class_graphics_component.html#aaba3705122e1a058c922d911b14a093f", null ], [ "setScale", "class_graphics_component.html#a54473a9bca9dc9a26a819079febd99db", null ], [ "setVisible", "class_graphics_component.html#a904c4812ce8d338edab5eeea72b729fd", null ], - [ "update", "class_graphics_component.html#a929bde56df26eb39e57f5189e3c94aed", null ], + [ "update", "class_graphics_component.html#a429087a127e137b87e4302cc6e2bf483", null ], [ "Entity", "class_graphics_component.html#a614439ccac0344926adc4c0165d64060", null ], [ "GraphicsSystem", "class_graphics_component.html#a9778d1ee5d16b1ce8afda909275daae0", null ], [ "myEntity", "class_graphics_component.html#a59e666c12333b2e1f198ba80f23965ac", null ], diff --git a/doc/doxy/html/class_graphics_component.png b/doc/doxy/html/class_graphics_component.png index 2ea7a37..e97cd92 100644 Binary files a/doc/doxy/html/class_graphics_component.png and b/doc/doxy/html/class_graphics_component.png differ diff --git a/doc/doxy/html/class_graphics_system-members.html b/doc/doxy/html/class_graphics_system-members.html index aa53813..eb38dc2 100644 --- a/doc/doxy/html/class_graphics_system-members.html +++ b/doc/doxy/html/class_graphics_system-members.html @@ -3,15 +3,24 @@ - -OWMAN: Member List + +owman: Member List + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,7 +104,6 @@
    -
    GraphicsSystem Member List
    @@ -91,28 +112,28 @@

    This is the complete list of members for GraphicsSystem, including all inherited members.

    - - - - - - - - - - - - - - - - + + + + + + + + + + + + +
    cameraGraphicsSystemprivate
    componentsGraphicsSystemprivate
    createSprite(std::string fileName, const Vec2f &scale)GraphicsSystem
    destroyGraphicsComponent(GraphicsComponent *graphicsComponent)GraphicsSystem
    destroySprite(Sprite *sprite)GraphicsSystem
    draw()GraphicsSystem
    getCamera()GraphicsSystem
    getRenderer()GraphicsSystem
    GraphicsSystem(std::string windowTitle, unsigned int width, unsigned int height, bool fullScreen)GraphicsSystem
    myEngineGraphicsSystemprivate
    pendingTasksGraphicsSystemprivate
    PendingTaskType enum nameGraphicsSystemprivate
    rendererGraphicsSystemprivate
    spriteFactoryGraphicsSystemprivate
    swap()GraphicsSystem
    update(unsigned int delta)GraphicsSystem
    destroyGraphicsComponent(GraphicsComponent *graphicsComponent) (defined in GraphicsSystem)GraphicsSystem
    destroySpriteInstance(SpriteStatus *sprite) (defined in GraphicsSystem)GraphicsSystem
    draw() (defined in GraphicsSystem)GraphicsSystem
    end() (defined in GraphicsSystem)GraphicsSystem
    getCamera() (defined in GraphicsSystem)GraphicsSystem
    getRenderer() (defined in GraphicsSystem)GraphicsSystem
    getSpriteManager() (defined in GraphicsSystem)GraphicsSystem
    getTextureManager() (defined in GraphicsSystem)GraphicsSystem
    GraphicsSystem(std::string windowTitle, unsigned int width, unsigned int height, bool fullScreen) (defined in GraphicsSystem)GraphicsSystem
    instanceSprite(std::string fileName, const Vec2f &scale=Vec2f(1, 1)) (defined in GraphicsSystem)GraphicsSystem
    setFullScreen(bool b)GraphicsSystem
    swap()GraphicsSystem
    update(unsigned int delta)GraphicsSystem
    + - + diff --git a/doc/doxy/html/class_graphics_system.html b/doc/doxy/html/class_graphics_system.html index be3bcc4..8f63f87 100644 --- a/doc/doxy/html/class_graphics_system.html +++ b/doc/doxy/html/class_graphics_system.html @@ -3,15 +3,24 @@ - -OWMAN: GraphicsSystem Class Reference + +owman: GraphicsSystem Class Reference + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,404 +104,74 @@
    -
    -Classes | Public Member Functions | -Private Types | -Private Attributes | List of all members
    GraphicsSystem Class Reference
    - -

    #include <graphics_system.hpp>

    - - - -

    -Classes

    class  PendingTask
     
    - + - - + + - + + + + - - + + - - - - - + + + + + - + - + -

    Public Member Functions

     GraphicsSystem (std::string windowTitle, unsigned int width, unsigned int height, bool fullScreen)
    GraphicsSystem (std::string windowTitle, unsigned int width, unsigned int height, bool fullScreen)
     
    void update (unsigned int delta)
     update animations More...
    +void update (unsigned int delta)
     update animations
     
    void draw ()
    +void setFullScreen (bool b)
     set fullscreen mode
     
    +void draw ()
     
    void swap ()
     Swap buffers Once you ave drawn all the components \ call this function to swap buffers. More...
    +void swap ()
     Swap buffers Once you ave drawn all the components \ call this function to swap buffers.
     
    SpritecreateSprite (std::string fileName, const Vec2f &scale)
     
    void destroySprite (Sprite *sprite)
     
    void destroyGraphicsComponent (GraphicsComponent *graphicsComponent)
    +SpriteStatusinstanceSprite (std::string fileName, const Vec2f &scale=Vec2f(1, 1))
     
    +void destroySpriteInstance (SpriteStatus *sprite)
     
    +void destroyGraphicsComponent (GraphicsComponent *graphicsComponent)
     
    LowLevelRenderer2DgetRenderer ()
    +LowLevelRenderer2DgetRenderer ()
     
    CameragetCamera ()
    +CameragetCamera ()
     
    - - - -

    -Private Types

    enum  PendingTaskType { PendingTaskType::DESTROY_SPRITE - }
     
    - - - - - - - - - - - - - -

    -Private Attributes

    std::vector< PendingTaskpendingTasks
     
    EnginemyEngine
     
    Camera camera
     
    LowLevelRenderer2D renderer
     
    std::set< GraphicsComponent * > components
     
    SpriteFactory spriteFactory
     
    -

    Member Enumeration Documentation

    - -
    -
    - - - - - + + + + + +
    - - - - -
    enum GraphicsSystem::PendingTaskType
    -
    -strongprivate
    +TextureManagergetTextureManager ()
     
    +SpriteManagergetSpriteManager ()
     
    +void end ()
     
    -
    - - -
    Enumerator
    DESTROY_SPRITE  -
    - -
    -
    -

    Constructor & Destructor Documentation

    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    GraphicsSystem::GraphicsSystem (std::string windowTitle,
    unsigned int width,
    unsigned int height,
    bool fullScreen 
    )
    -
    - -
    -
    -

    Member Function Documentation

    - -
    -
    - - - - - - - - - - - - - - - - - - -
    Sprite * GraphicsSystem::createSprite (std::string fileName,
    const Vec2fscale 
    )
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    void GraphicsSystem::destroyGraphicsComponent (GraphicsComponentgraphicsComponent)
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    void GraphicsSystem::destroySprite (Spritesprite)
    -
    - -
    -
    - -
    -
    - - - - - - - -
    void GraphicsSystem::draw ()
    -
    - -
    -
    - -
    -
    - - - - - - - -
    Camera * GraphicsSystem::getCamera ()
    -
    - -
    -
    - -
    -
    - - - - - - - -
    LowLevelRenderer2D * GraphicsSystem::getRenderer ()
    -
    - -
    -
    - -
    -
    - - - - - - - -
    void GraphicsSystem::swap ()
    -
    - -

    Swap buffers Once you ave drawn all the components \ call this function to swap buffers.

    - -
    -
    - -
    -
    - - - - - - - - -
    void GraphicsSystem::update (unsigned int delta)
    -
    - -

    update animations

    - -
    -
    -

    Member Data Documentation

    - -
    -
    - - - - - -
    - - - - -
    Camera GraphicsSystem::camera
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    std::set<GraphicsComponent*> GraphicsSystem::components
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    Engine* GraphicsSystem::myEngine
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    std::vector<PendingTask> GraphicsSystem::pendingTasks
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    LowLevelRenderer2D GraphicsSystem::renderer
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    SpriteFactory GraphicsSystem::spriteFactory
    -
    -private
    -
    - -
    -

    The documentation for this class was generated from the following files:
    + - + diff --git a/doc/doxy/html/class_graphics_system.js b/doc/doxy/html/class_graphics_system.js index d43f57c..7c624f6 100644 --- a/doc/doxy/html/class_graphics_system.js +++ b/doc/doxy/html/class_graphics_system.js @@ -1,12 +1,16 @@ var class_graphics_system = [ [ "GraphicsSystem", "class_graphics_system.html#abb71bb483ad2e5a49e5ca177873fec55", null ], - [ "createSprite", "class_graphics_system.html#a5072115e40a9fbeab364367f42df9d3b", null ], [ "destroyGraphicsComponent", "class_graphics_system.html#aa0cd675bb7d0570408bfafe8fdb30412", null ], - [ "destroySprite", "class_graphics_system.html#adade4310940b54ce4eb1ff1371c04adc", null ], + [ "destroySpriteInstance", "class_graphics_system.html#a29c12c4798300befab58cd16265b8e8b", null ], [ "draw", "class_graphics_system.html#a80ac4f715bec45eb49c311aaaa65de9c", null ], + [ "end", "class_graphics_system.html#a9568436dc462a57d85697a6c5b0a3ac6", null ], [ "getCamera", "class_graphics_system.html#ad92b3ffc5de172a53ffd4932f1f7547c", null ], [ "getRenderer", "class_graphics_system.html#ae64470872deb4df6061b0cd7b4dcea98", null ], + [ "getSpriteManager", "class_graphics_system.html#a8f24fe9596f9745cfcab4c944ea26feb", null ], + [ "getTextureManager", "class_graphics_system.html#a381bb0351bfcfe3b28a9e9b00abb0c42", null ], + [ "instanceSprite", "class_graphics_system.html#a974ea2b47a444d17d26ad85a55bfeed2", null ], + [ "setFullScreen", "class_graphics_system.html#a5f40861a47c315c8e16e89ddf3f25d80", null ], [ "swap", "class_graphics_system.html#a8b5eba17b32d342f9d2ace7c2f439244", null ], [ "update", "class_graphics_system.html#a1d3dbce3ced4489bb51a69177ae99fa9", null ] ]; \ No newline at end of file diff --git a/doc/doxy/html/class_i_world_streamer-members.html b/doc/doxy/html/class_i_world_streamer-members.html index 75d0c67..79e843f 100644 --- a/doc/doxy/html/class_i_world_streamer-members.html +++ b/doc/doxy/html/class_i_world_streamer-members.html @@ -3,15 +3,24 @@ - -OWMAN: Member List + +owman: Member List + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,7 +104,6 @@
    -
    IWorldStreamer Member List
    @@ -91,23 +112,26 @@

    This is the complete list of members for IWorldStreamer, including all inherited members.

    - - - + + + - + - - - + + + - +
    end()=0IWorldStreamerpure virtual
    entityFactoryIWorldStreamerprotected
    getCellSize() const IWorldStreamervirtual
    end()=0 (defined in IWorldStreamer)IWorldStreamerpure virtual
    entityFactory (defined in IWorldStreamer)IWorldStreamerprotected
    getCellSize() const (defined in IWorldStreamer)IWorldStreamervirtual
    getEntities() const =0IWorldStreamerpure virtual
    getEntityFactory() const IWorldStreamer
    getEntityFactory() const (defined in IWorldStreamer)IWorldStreamer
    init(const Vec2i &cell, const Vec2f &offset)=0IWorldStreamerpure virtual
    IWorldStreamer()IWorldStreamerinline
    IWorldStreamer(EntityFactory *entityFactory)IWorldStreamer
    setEntityFactory(EntityFactory *entityFactory)IWorldStreamer
    IWorldStreamer() (defined in IWorldStreamer)IWorldStreamerinline
    IWorldStreamer(EntityFactory *entityFactory) (defined in IWorldStreamer)IWorldStreamer
    setEntityFactory(EntityFactory *entityFactory) (defined in IWorldStreamer)IWorldStreamer
    update(const Vec2f &position, MainCharacter *mainCharacter)=0IWorldStreamerpure virtual
    ~IWorldStreamer()IWorldStreamerinlinevirtual
    ~IWorldStreamer() (defined in IWorldStreamer)IWorldStreamerinlinevirtual
    + - + diff --git a/doc/doxy/html/class_i_world_streamer.html b/doc/doxy/html/class_i_world_streamer.html index 47a8684..c522210 100644 --- a/doc/doxy/html/class_i_world_streamer.html +++ b/doc/doxy/html/class_i_world_streamer.html @@ -3,15 +3,24 @@ - -OWMAN: IWorldStreamer Class Reference + +owman: IWorldStreamer Class Reference + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,7 +104,6 @@
    -
    Public Member Functions | @@ -92,8 +113,6 @@
    IWorldStreamer Class Referenceabstract
    - -

    #include <i_world_streamer.hpp>

    Inheritance diagram for IWorldStreamer:
    @@ -107,191 +126,39 @@ - - - + - + - + - + - + - - + + - + - + - -

    Public Member Functions

     IWorldStreamer ()
     
     IWorldStreamer (EntityFactory *entityFactory)
    IWorldStreamer (EntityFactory *entityFactory)
     
    EntityFactorygetEntityFactory () const
    +EntityFactorygetEntityFactory () const
     
    void setEntityFactory (EntityFactory *entityFactory)
    +void setEntityFactory (EntityFactory *entityFactory)
     
    virtual void init (const Vec2i &cell, const Vec2f &offset)=0
     Inits the world streamer. More...
     Inits the world streamer. More...
     
    virtual void update (const Vec2f &position, MainCharacter *mainCharacter)=0
     Updates the world streamer. More...
     Updates the world streamer. More...
     
    virtual std::vector< Entity * > getEntities () const =0
     Returns a vector of pointers to all the active entities. More...
    +virtual std::vector< Entity * > getEntities () const =0
     Returns a vector of pointers to all the active entities.
     
    virtual float getCellSize () const
    +virtual float getCellSize () const
     
    virtual void end ()=0
    +virtual void end ()=0
     
    virtual ~IWorldStreamer ()
     
    - +

    Protected Attributes

    EntityFactoryentityFactory
    +EntityFactoryentityFactory
     
    -

    Constructor & Destructor Documentation

    - -
    -
    - - - - - -
    - - - - - - - -
    IWorldStreamer::IWorldStreamer ()
    -
    -inline
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    IWorldStreamer::IWorldStreamer (EntityFactoryentityFactory)
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    virtual IWorldStreamer::~IWorldStreamer ()
    -
    -inlinevirtual
    -
    - -
    -

    Member Function Documentation

    - -
    -
    - - - - - -
    - - - - - - - -
    virtual void IWorldStreamer::end ()
    -
    -pure virtual
    -
    - -

    Implemented in WorldStreamer, and TestWorldStreamer.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    float IWorldStreamer::getCellSize () const
    -
    -virtual
    -
    - -

    Reimplemented in WorldStreamer.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    virtual std::vector<Entity*> IWorldStreamer::getEntities () const
    -
    -pure virtual
    -
    - -

    Returns a vector of pointers to all the active entities.

    - -

    Implemented in WorldStreamer, and TestWorldStreamer.

    - -
    -
    - -
    -
    - - - - - - - -
    EntityFactory * IWorldStreamer::getEntityFactory () const
    -
    - -
    -
    @@ -335,22 +202,6 @@

    Member Function Documentation

    Implemented in WorldStreamer.

    -
    -
    - -
    -
    - - - - - - - - -
    void IWorldStreamer::setEntityFactory (EntityFactoryentityFactory)
    -
    -
    @@ -395,39 +246,22 @@

    Member Function Documentation

    Implemented in WorldStreamer.

    -
    -
    -

    Member Data Documentation

    - -
    -
    - - - - - -
    - - - - -
    EntityFactory* IWorldStreamer::entityFactory
    -
    -protected
    -
    -

    The documentation for this class was generated from the following files: + - + diff --git a/doc/doxy/html/class_i_world_streamer.png b/doc/doxy/html/class_i_world_streamer.png index 67b65ee..a1dd06f 100644 Binary files a/doc/doxy/html/class_i_world_streamer.png and b/doc/doxy/html/class_i_world_streamer.png differ diff --git a/doc/doxy/html/class_low_level_renderer2_d-members.html b/doc/doxy/html/class_low_level_renderer2_d-members.html index a3aacec..9cb1829 100644 --- a/doc/doxy/html/class_low_level_renderer2_d-members.html +++ b/doc/doxy/html/class_low_level_renderer2_d-members.html @@ -3,15 +3,24 @@ - -OWMAN: Member List + +owman: Member List + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,7 +104,6 @@
    -
    LowLevelRenderer2D Member List
    @@ -91,35 +112,26 @@

    This is the complete list of members for LowLevelRenderer2D, including all inherited members.

    - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + +
    cameraLowLevelRenderer2Dprivate
    clear()LowLevelRenderer2D
    colModelMatrixLowLevelRenderer2Dprivate
    colorLowLevelRenderer2Dprivate
    colorShaderProgramLowLevelRenderer2Dprivate
    colProjMatrixLowLevelRenderer2Dprivate
    colVAOLowLevelRenderer2Dprivate
    colViewMatrixLowLevelRenderer2Dprivate
    createTexture(unsigned char *image, int width, int height)LowLevelRenderer2D
    destroyTexture(Texture *texture)LowLevelRenderer2D
    draw(const Vec2f &pos, const Vec2f &scale, Texture *texture)LowLevelRenderer2D
    drawColorSquare(const Vec2f &pos, const Vec2f &scale, const Color &color)LowLevelRenderer2D
    getCamera()LowLevelRenderer2D
    LowLevelRenderer2D()LowLevelRenderer2Dinline
    LowLevelRenderer2D(std::string windowTitle, unsigned int width, unsigned int height, bool fullScreen)LowLevelRenderer2D
    swap()LowLevelRenderer2D
    texModelMatrixLowLevelRenderer2Dprivate
    texProjMatrixLowLevelRenderer2Dprivate
    textureShaderProgramLowLevelRenderer2Dprivate
    texVAOLowLevelRenderer2Dprivate
    texViewMatrixLowLevelRenderer2Dprivate
    uniqueInstanceLowLevelRenderer2Dprivatestatic
    windowLowLevelRenderer2Dprivate
    clear() (defined in LowLevelRenderer2D)LowLevelRenderer2D
    createTexture(const unsigned char *image, int width, int height) (defined in LowLevelRenderer2D)LowLevelRenderer2D
    destroyTexture(Texture *texture) (defined in LowLevelRenderer2D)LowLevelRenderer2D
    draw(const Vec2f &pos, const Vec2f &scale, const Texture &texture, const SpriteVbo &sVao) (defined in LowLevelRenderer2D)LowLevelRenderer2D
    drawColorSquare(const Vec2f &pos, const Vec2f &scale, const Color &color) (defined in LowLevelRenderer2D)LowLevelRenderer2D
    end() (defined in LowLevelRenderer2D)LowLevelRenderer2D
    getCamera() (defined in LowLevelRenderer2D)LowLevelRenderer2D
    LowLevelRenderer2D() (defined in LowLevelRenderer2D)LowLevelRenderer2Dinline
    LowLevelRenderer2D(std::string windowTitle, unsigned int width, unsigned int height, bool fullScreen) (defined in LowLevelRenderer2D)LowLevelRenderer2D
    setFullScreen(bool b) (defined in LowLevelRenderer2D)LowLevelRenderer2D
    swap() (defined in LowLevelRenderer2D)LowLevelRenderer2D
    + - + diff --git a/doc/doxy/html/class_low_level_renderer2_d.html b/doc/doxy/html/class_low_level_renderer2_d.html index 5120b4c..d292494 100644 --- a/doc/doxy/html/class_low_level_renderer2_d.html +++ b/doc/doxy/html/class_low_level_renderer2_d.html @@ -3,15 +3,24 @@ - -OWMAN: LowLevelRenderer2D Class Reference + +owman: LowLevelRenderer2D Class Reference + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,594 +104,72 @@
    -
    Classes | Public Member Functions | -Private Attributes | -Static Private Attributes | List of all members
    LowLevelRenderer2D Class Reference
    - -

    #include <low_level_renderer_2d.hpp>

    + +

    Classes

    class  Camera
     
    class  SpriteVbo
     
    class  Texture
     
    - - - + - + + + - - - + + + - + - - - + + + - + -

    Public Member Functions

     LowLevelRenderer2D ()
     
     LowLevelRenderer2D (std::string windowTitle, unsigned int width, unsigned int height, bool fullScreen)
    LowLevelRenderer2D (std::string windowTitle, unsigned int width, unsigned int height, bool fullScreen)
     
    CameragetCamera ()
    +void setFullScreen (bool b)
     
    +CameragetCamera ()
     
    Texture createTexture (unsigned char *image, int width, int height)
     
    void destroyTexture (Texture *texture)
    +Texture createTexture (const unsigned char *image, int width, int height)
     
    +void destroyTexture (Texture *texture)
     
    void clear ()
    +void clear ()
     
    void draw (const Vec2f &pos, const Vec2f &scale, Texture *texture)
     
    void drawColorSquare (const Vec2f &pos, const Vec2f &scale, const Color &color)
    +void draw (const Vec2f &pos, const Vec2f &scale, const Texture &texture, const SpriteVbo &sVao)
     
    +void drawColorSquare (const Vec2f &pos, const Vec2f &scale, const Color &color)
     
    void swap ()
    +void swap ()
     
    - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Private Attributes

    Camera camera
     
    GLuint textureShaderProgram
     
    GLuint colorShaderProgram
     
    SDL_Window * window
     
    GLint texModelMatrix
     
    GLint texViewMatrix
     
    GLint texProjMatrix
     
    GLint colModelMatrix
     
    GLint colViewMatrix
     
    GLint colProjMatrix
     
    GLint color
     
    GLuint texVAO
     
    GLuint colVAO
     
    - - - -

    -Static Private Attributes

    static LowLevelRenderer2D uniqueInstance
     
    -

    Constructor & Destructor Documentation

    - -
    -
    - - - - - -
    - - - - - - - -
    LowLevelRenderer2D::LowLevelRenderer2D ()
    -
    -inline
    -
    - -
    -
    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    LowLevelRenderer2D::LowLevelRenderer2D (std::string windowTitle,
    unsigned int width,
    unsigned int height,
    bool fullScreen 
    )
    -
    - -
    -
    -

    Member Function Documentation

    - -
    -
    - - - - - - - -
    void LowLevelRenderer2D::clear ()
    -
    - -
    -
    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    LowLevelRenderer2D::Texture LowLevelRenderer2D::createTexture (unsigned char * image,
    int width,
    int height 
    )
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    void LowLevelRenderer2D::destroyTexture (Texturetexture)
    -
    - -
    -
    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    void LowLevelRenderer2D::draw (const Vec2fpos,
    const Vec2fscale,
    Texturetexture 
    )
    -
    - -
    -
    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    void LowLevelRenderer2D::drawColorSquare (const Vec2fpos,
    const Vec2fscale,
    const Colorcolor 
    )
    -
    - -
    -
    - -
    -
    - - - - - - - -
    LowLevelRenderer2D::Camera * LowLevelRenderer2D::getCamera ()
    -
    - -
    -
    - -
    -
    - - - - - - - -
    void LowLevelRenderer2D::swap ()
    -
    - -
    -
    -

    Member Data Documentation

    - -
    -
    - - - - - -
    - - - - -
    Camera LowLevelRenderer2D::camera
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    GLint LowLevelRenderer2D::colModelMatrix
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    GLint LowLevelRenderer2D::color
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    GLuint LowLevelRenderer2D::colorShaderProgram
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - + +
    - - - - -
    GLint LowLevelRenderer2D::colProjMatrix
    -
    -private
    +void end ()
     
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    GLuint LowLevelRenderer2D::colVAO
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    GLint LowLevelRenderer2D::colViewMatrix
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    GLint LowLevelRenderer2D::texModelMatrix
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    GLint LowLevelRenderer2D::texProjMatrix
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    GLuint LowLevelRenderer2D::textureShaderProgram
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    GLuint LowLevelRenderer2D::texVAO
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    GLint LowLevelRenderer2D::texViewMatrix
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    LowLevelRenderer2D LowLevelRenderer2D::uniqueInstance
    -
    -staticprivate
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    SDL_Window* LowLevelRenderer2D::window
    -
    -private
    -
    - -
    -

    The documentation for this class was generated from the following files:
    + - + diff --git a/doc/doxy/html/class_low_level_renderer2_d.js b/doc/doxy/html/class_low_level_renderer2_d.js index fa9c436..2d048c8 100644 --- a/doc/doxy/html/class_low_level_renderer2_d.js +++ b/doc/doxy/html/class_low_level_renderer2_d.js @@ -1,14 +1,17 @@ var class_low_level_renderer2_d = [ [ "Camera", "class_low_level_renderer2_d_1_1_camera.html", "class_low_level_renderer2_d_1_1_camera" ], + [ "SpriteVbo", "class_low_level_renderer2_d_1_1_sprite_vbo.html", "class_low_level_renderer2_d_1_1_sprite_vbo" ], [ "Texture", "class_low_level_renderer2_d_1_1_texture.html", "class_low_level_renderer2_d_1_1_texture" ], [ "LowLevelRenderer2D", "class_low_level_renderer2_d.html#a49f785a14af93114f52b4cd4265e2fbe", null ], [ "LowLevelRenderer2D", "class_low_level_renderer2_d.html#a44280809120a5acc27bae2906363b1a0", null ], [ "clear", "class_low_level_renderer2_d.html#a7e6fc980198d8732dd3707097345ffc3", null ], - [ "createTexture", "class_low_level_renderer2_d.html#a06f3cbd5111d8e4f6179c24bbcd3463d", null ], + [ "createTexture", "class_low_level_renderer2_d.html#a99255c4f958d0f76dfdefe56b76b0455", null ], [ "destroyTexture", "class_low_level_renderer2_d.html#af07ce8d2cb928f61e20c6e0c1d25e210", null ], - [ "draw", "class_low_level_renderer2_d.html#a1eaf6d27664641e7468abcae0dbaa6c7", null ], + [ "draw", "class_low_level_renderer2_d.html#a06d05bbec334cecbeccf8ca86ef5cb5d", null ], [ "drawColorSquare", "class_low_level_renderer2_d.html#a91a35cc242c2c2683784d08cfee0e6f8", null ], + [ "end", "class_low_level_renderer2_d.html#a6da17b3ff99b9402c16cb5899c2d500b", null ], [ "getCamera", "class_low_level_renderer2_d.html#ae0df346f0b068c435c3bd89c4e18f3a8", null ], + [ "setFullScreen", "class_low_level_renderer2_d.html#a67c7c9610cca58ff0b1e4a050a3960fa", null ], [ "swap", "class_low_level_renderer2_d.html#ac4f2a7347da65999b74b625a8c682f54", null ] ]; \ No newline at end of file diff --git a/doc/doxy/html/class_low_level_renderer2_d_1_1_camera-members.html b/doc/doxy/html/class_low_level_renderer2_d_1_1_camera-members.html index 92cd27c..b13b78b 100644 --- a/doc/doxy/html/class_low_level_renderer2_d_1_1_camera-members.html +++ b/doc/doxy/html/class_low_level_renderer2_d_1_1_camera-members.html @@ -3,15 +3,24 @@ - -OWMAN: Member List + +owman: Member List + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,11 +104,6 @@
    - -
    LowLevelRenderer2D::Camera Member List
    @@ -95,23 +112,22 @@

    This is the complete list of members for LowLevelRenderer2D::Camera, including all inherited members.

    - - - - - - - - - - - + + + + + + +
    Camera()LowLevelRenderer2D::Cameraprivate
    getHeight() const LowLevelRenderer2D::Camera
    getPosition() const LowLevelRenderer2D::Camera
    getWidth() const LowLevelRenderer2D::Camera
    heightLowLevelRenderer2D::Cameraprivate
    LowLevelRenderer2D classLowLevelRenderer2D::Camerafriend
    posLowLevelRenderer2D::Cameraprivate
    setHeight(float height)LowLevelRenderer2D::Camera
    setPosition(const Vec2f &pos)LowLevelRenderer2D::Camera
    setWidth(float width)LowLevelRenderer2D::Camera
    widthLowLevelRenderer2D::Cameraprivate
    getHeight() const (defined in LowLevelRenderer2D::Camera)LowLevelRenderer2D::Camera
    getPosition() const (defined in LowLevelRenderer2D::Camera)LowLevelRenderer2D::Camera
    getWidth() const (defined in LowLevelRenderer2D::Camera)LowLevelRenderer2D::Camera
    LowLevelRenderer2D (defined in LowLevelRenderer2D::Camera)LowLevelRenderer2D::Camerafriend
    setHeight(float height) (defined in LowLevelRenderer2D::Camera)LowLevelRenderer2D::Camera
    setPosition(const Vec2f &pos) (defined in LowLevelRenderer2D::Camera)LowLevelRenderer2D::Camera
    setWidth(float width) (defined in LowLevelRenderer2D::Camera)LowLevelRenderer2D::Camera
    + - + diff --git a/doc/doxy/html/class_low_level_renderer2_d_1_1_camera.html b/doc/doxy/html/class_low_level_renderer2_d_1_1_camera.html index 6a439cf..9554a46 100644 --- a/doc/doxy/html/class_low_level_renderer2_d_1_1_camera.html +++ b/doc/doxy/html/class_low_level_renderer2_d_1_1_camera.html @@ -3,15 +3,24 @@ - -OWMAN: LowLevelRenderer2D::Camera Class Reference + +owman: LowLevelRenderer2D::Camera Class Reference + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,269 +104,57 @@
    - -
    Public Member Functions | -Private Member Functions | -Private Attributes | Friends | List of all members
    LowLevelRenderer2D::Camera Class Reference
    - -

    #include <low_level_renderer_2d.hpp>

    - + - + - + - + - + - +

    Public Member Functions

    Vec2f getPosition () const
    +Vec2f getPosition () const
     
    void setPosition (const Vec2f &pos)
    +void setPosition (const Vec2f &pos)
     
    float getWidth () const
    +float getWidth () const
     
    float getHeight () const
    +float getHeight () const
     
    void setWidth (float width)
    +void setWidth (float width)
     
    void setHeight (float height)
    +void setHeight (float height)
     
    - - - -

    -Private Member Functions

     Camera ()
     
    - - - - - - - -

    -Private Attributes

    Vec2f pos
     
    float width
     
    float height
     
    - +

    Friends

    class LowLevelRenderer2D
    +class LowLevelRenderer2D
     
    -

    Constructor & Destructor Documentation

    - -
    -
    - - - - - -
    - - - - - - - -
    LowLevelRenderer2D::Camera::Camera ()
    -
    -private
    -
    - -
    -
    -

    Member Function Documentation

    - -
    -
    - - - - - - - -
    float LowLevelRenderer2D::Camera::getHeight () const
    -
    - -
    -
    - -
    -
    - - - - - - - -
    Vec2f LowLevelRenderer2D::Camera::getPosition () const
    -
    - -
    -
    - -
    -
    - - - - - - - -
    float LowLevelRenderer2D::Camera::getWidth () const
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    void LowLevelRenderer2D::Camera::setHeight (float height)
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    void LowLevelRenderer2D::Camera::setPosition (const Vec2fpos)
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    void LowLevelRenderer2D::Camera::setWidth (float width)
    -
    - -
    -
    -

    Friends And Related Function Documentation

    - -
    -
    - - - - - -
    - - - - -
    friend class LowLevelRenderer2D
    -
    -friend
    -
    - -
    -
    -

    Member Data Documentation

    - -
    -
    - - - - - -
    - - - - -
    float LowLevelRenderer2D::Camera::height
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    Vec2f LowLevelRenderer2D::Camera::pos
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    float LowLevelRenderer2D::Camera::width
    -
    -private
    -
    - -
    -

    The documentation for this class was generated from the following files:
    + - + diff --git a/doc/doxy/html/class_low_level_renderer2_d_1_1_sprite_vbo-members.html b/doc/doxy/html/class_low_level_renderer2_d_1_1_sprite_vbo-members.html new file mode 100644 index 0000000..118b25d --- /dev/null +++ b/doc/doxy/html/class_low_level_renderer2_d_1_1_sprite_vbo-members.html @@ -0,0 +1,131 @@ + + + + + + +owman: Member List + + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    owman +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    +
    LowLevelRenderer2D::SpriteVbo Member List
    +
    +
    + +

    This is the complete list of members for LowLevelRenderer2D::SpriteVbo, including all inherited members.

    + + + + + + +
    LowLevelRenderer2D (defined in LowLevelRenderer2D::SpriteVbo)LowLevelRenderer2D::SpriteVbofriend
    operator=(const SpriteVbo &) (defined in LowLevelRenderer2D::SpriteVbo)LowLevelRenderer2D::SpriteVbo
    SpriteVbo() (defined in LowLevelRenderer2D::SpriteVbo)LowLevelRenderer2D::SpriteVboinline
    SpriteVbo(const AARect &rect) (defined in LowLevelRenderer2D::SpriteVbo)LowLevelRenderer2D::SpriteVbo
    SpriteVbo(const SpriteVbo &spriteVbo) (defined in LowLevelRenderer2D::SpriteVbo)LowLevelRenderer2D::SpriteVbo
    +
    + + + + diff --git a/doc/doxy/html/class_low_level_renderer2_d_1_1_sprite_vbo.html b/doc/doxy/html/class_low_level_renderer2_d_1_1_sprite_vbo.html new file mode 100644 index 0000000..8ef6908 --- /dev/null +++ b/doc/doxy/html/class_low_level_renderer2_d_1_1_sprite_vbo.html @@ -0,0 +1,151 @@ + + + + + + +owman: LowLevelRenderer2D::SpriteVbo Class Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    owman +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    LowLevelRenderer2D::SpriteVbo Class Reference
    +
    +
    + + + + + + + + +

    +Public Member Functions

    SpriteVbo (const AARect &rect)
     
    SpriteVbo (const SpriteVbo &spriteVbo)
     
    +const SpriteVbooperator= (const SpriteVbo &)
     
    + + + +

    +Friends

    +class LowLevelRenderer2D
     
    +
    The documentation for this class was generated from the following files: +
    +
    + + + + diff --git a/doc/doxy/html/class_low_level_renderer2_d_1_1_sprite_vbo.js b/doc/doxy/html/class_low_level_renderer2_d_1_1_sprite_vbo.js new file mode 100644 index 0000000..87c324a --- /dev/null +++ b/doc/doxy/html/class_low_level_renderer2_d_1_1_sprite_vbo.js @@ -0,0 +1,8 @@ +var class_low_level_renderer2_d_1_1_sprite_vbo = +[ + [ "SpriteVbo", "class_low_level_renderer2_d_1_1_sprite_vbo.html#aa496b69d1b2a6e912abffd2806f38f0a", null ], + [ "SpriteVbo", "class_low_level_renderer2_d_1_1_sprite_vbo.html#a92cabaf18d69444dca271fe2b58afcf2", null ], + [ "SpriteVbo", "class_low_level_renderer2_d_1_1_sprite_vbo.html#a2de3b094c08bb9cf5706bed9db534688", null ], + [ "operator=", "class_low_level_renderer2_d_1_1_sprite_vbo.html#aea55f911d97ae702b41656d2257aae14", null ], + [ "LowLevelRenderer2D", "class_low_level_renderer2_d_1_1_sprite_vbo.html#ab9ebacbc3611dc67ac0fffbf8205d070", null ] +]; \ No newline at end of file diff --git a/doc/doxy/html/class_low_level_renderer2_d_1_1_texture-members.html b/doc/doxy/html/class_low_level_renderer2_d_1_1_texture-members.html index 9ec7749..b398c1e 100644 --- a/doc/doxy/html/class_low_level_renderer2_d_1_1_texture-members.html +++ b/doc/doxy/html/class_low_level_renderer2_d_1_1_texture-members.html @@ -3,15 +3,24 @@ - -OWMAN: Member List + +owman: Member List + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,11 +104,6 @@
    - -
    LowLevelRenderer2D::Texture Member List
    @@ -95,24 +112,29 @@

    This is the complete list of members for LowLevelRenderer2D::Texture, including all inherited members.

    - - - - - - - - - - - - + + + + + + + + + + + + + +
    getHeight() const LowLevelRenderer2D::Texture
    getWidth() const LowLevelRenderer2D::Texture
    heightLowLevelRenderer2D::Textureprivate
    LowLevelRenderer2D classLowLevelRenderer2D::Texturefriend
    operator=(const Texture &texture)LowLevelRenderer2D::Texture
    setHeight(float height)LowLevelRenderer2D::Texture
    setWidth(float width)LowLevelRenderer2D::Texture
    Texture(unsigned char *image, int width, int height)LowLevelRenderer2D::Textureprivate
    Texture()LowLevelRenderer2D::Textureinline
    textureIDLowLevelRenderer2D::Textureprivate
    widthLowLevelRenderer2D::Textureprivate
    ~Texture()LowLevelRenderer2D::Texture
    FilterMode enum name (defined in LowLevelRenderer2D::Texture)LowLevelRenderer2D::Texture
    filterModesGL (defined in LowLevelRenderer2D::Texture)LowLevelRenderer2D::Texturestatic
    getHeight() const (defined in LowLevelRenderer2D::Texture)LowLevelRenderer2D::Texture
    getWidth() const (defined in LowLevelRenderer2D::Texture)LowLevelRenderer2D::Texture
    LINEAR enum value (defined in LowLevelRenderer2D::Texture)LowLevelRenderer2D::Texture
    LowLevelRenderer2D (defined in LowLevelRenderer2D::Texture)LowLevelRenderer2D::Texturefriend
    NEAREST enum value (defined in LowLevelRenderer2D::Texture)LowLevelRenderer2D::Texture
    NUM_FILTER_MODES enum value (defined in LowLevelRenderer2D::Texture)LowLevelRenderer2D::Texture
    operator=(const Texture &texture) (defined in LowLevelRenderer2D::Texture)LowLevelRenderer2D::Texture
    setFilterMode(FilterMode filterMode) (defined in LowLevelRenderer2D::Texture)LowLevelRenderer2D::Texture
    setHeight(float height) (defined in LowLevelRenderer2D::Texture)LowLevelRenderer2D::Texture
    setWidth(float width) (defined in LowLevelRenderer2D::Texture)LowLevelRenderer2D::Texture
    Texture() (defined in LowLevelRenderer2D::Texture)LowLevelRenderer2D::Textureinline
    ~Texture() (defined in LowLevelRenderer2D::Texture)LowLevelRenderer2D::Texture
    + - + diff --git a/doc/doxy/html/class_low_level_renderer2_d_1_1_texture.html b/doc/doxy/html/class_low_level_renderer2_d_1_1_texture.html index 40d9e61..2c74dc2 100644 --- a/doc/doxy/html/class_low_level_renderer2_d_1_1_texture.html +++ b/doc/doxy/html/class_low_level_renderer2_d_1_1_texture.html @@ -3,15 +3,24 @@ - -OWMAN: LowLevelRenderer2D::Texture Class Reference + +owman: LowLevelRenderer2D::Texture Class Reference + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,262 +104,60 @@
    - -
    +Public Types | Public Member Functions | -Private Member Functions | -Private Attributes | +Static Public Attributes | Friends | List of all members
    LowLevelRenderer2D::Texture Class Reference
    - -

    #include <low_level_renderer_2d.hpp>

    + + + +

    +Public Types

    enum  FilterMode { LINEAR, +NEAREST, +NUM_FILTER_MODES + }
     
    - - - + - - - + - + - + - + + +

    Public Member Functions

     Texture ()
     
    Texture operator= (const Texture &texture)
    +Texture operator= (const Texture &texture)
     
     ~Texture ()
     
    float getWidth () const
    +float getWidth () const
     
    float getHeight () const
    +float getHeight () const
     
    void setWidth (float width)
    +void setWidth (float width)
     
    void setHeight (float height)
    +void setHeight (float height)
     
    +void setFilterMode (FilterMode filterMode)
     
    - - - -

    -Private Member Functions

     Texture (unsigned char *image, int width, int height)
     
    - - - - - - - + + +

    -Private Attributes

    GLuint textureID
     
    int width
     
    int height
     

    +Static Public Attributes

    static const std::array< GLuint, NUM_FILTER_MODES > filterModesGL
     
    - +

    Friends

    class LowLevelRenderer2D
    +class LowLevelRenderer2D
     
    -

    Constructor & Destructor Documentation

    - -
    -
    - - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    LowLevelRenderer2D::Texture::Texture (unsigned char * image,
    int width,
    int height 
    )
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    LowLevelRenderer2D::Texture::Texture ()
    -
    -inline
    -
    - -
    -
    - -
    -
    - - - - - - - -
    LowLevelRenderer2D::Texture::~Texture ()
    -
    - -
    -
    -

    Member Function Documentation

    - -
    -
    - - - - - - - -
    float LowLevelRenderer2D::Texture::getHeight () const
    -
    - -
    -
    - -
    -
    - - - - - - - -
    float LowLevelRenderer2D::Texture::getWidth () const
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    LowLevelRenderer2D::Texture LowLevelRenderer2D::Texture::operator= (const Texturetexture)
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    void LowLevelRenderer2D::Texture::setHeight (float height)
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    void LowLevelRenderer2D::Texture::setWidth (float width)
    -
    - -
    -
    -

    Friends And Related Function Documentation

    - -
    -
    - - - - - -
    - - - - -
    friend class LowLevelRenderer2D
    -
    -friend
    -
    - -
    -

    Member Data Documentation

    - -
    -
    - - - - - -
    - - - - -
    int LowLevelRenderer2D::Texture::height
    -
    -private
    -
    - -
    -
    - +
    @@ -345,48 +165,42 @@

    Member Data Documentation

    +static
    - +
    GLuint LowLevelRenderer2D::Texture::textureIDconst array< GLuint, LLRFilterMode::NUM_FILTER_MODES > LowLevelRenderer2D::Texture::filterModesGL
    -private
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    int LowLevelRenderer2D::Texture::width
    -
    -private
    -
    - +Initial value:
    =
    +
    (
    +
    []() -> array<GLuint, FilterMode::NUM_FILTER_MODES>
    +
    {
    +
    std::array<GLuint, FilterMode::NUM_FILTER_MODES> a = {0};
    +
    a[FilterMode::LINEAR] = GL_LINEAR;
    +
    a[FilterMode::NEAREST] = GL_NEAREST;
    +
    return a;
    +
    }
    +
    )()
    +

    The documentation for this class was generated from the following files:
    + - + diff --git a/doc/doxy/html/class_low_level_renderer2_d_1_1_texture.js b/doc/doxy/html/class_low_level_renderer2_d_1_1_texture.js index bbd8974..89d1743 100644 --- a/doc/doxy/html/class_low_level_renderer2_d_1_1_texture.js +++ b/doc/doxy/html/class_low_level_renderer2_d_1_1_texture.js @@ -1,10 +1,16 @@ var class_low_level_renderer2_d_1_1_texture = [ + [ "FilterMode", "class_low_level_renderer2_d_1_1_texture.html#a8289ffb70f28952028e1ca93d7ec5653", [ + [ "LINEAR", "class_low_level_renderer2_d_1_1_texture.html#a8289ffb70f28952028e1ca93d7ec5653a430afe8deb274f91bda6b09dd975dea7", null ], + [ "NEAREST", "class_low_level_renderer2_d_1_1_texture.html#a8289ffb70f28952028e1ca93d7ec5653aa13acdc65c859ccb8cb2ad776867883f", null ], + [ "NUM_FILTER_MODES", "class_low_level_renderer2_d_1_1_texture.html#a8289ffb70f28952028e1ca93d7ec5653a0bfd8f3633b499c6bd5de5e94e345941", null ] + ] ], [ "Texture", "class_low_level_renderer2_d_1_1_texture.html#a92aad585ec1ce47d97ea4254fdce92c1", null ], [ "~Texture", "class_low_level_renderer2_d_1_1_texture.html#a7cd2b3c9777ce64d91623a573237f2ad", null ], [ "getHeight", "class_low_level_renderer2_d_1_1_texture.html#a0a5e34ba7428004e5ba4408135302794", null ], [ "getWidth", "class_low_level_renderer2_d_1_1_texture.html#a6965a6da9e04c72d89e891b9c927a672", null ], [ "operator=", "class_low_level_renderer2_d_1_1_texture.html#a8570c36d74684f4bd948b457fe58e052", null ], + [ "setFilterMode", "class_low_level_renderer2_d_1_1_texture.html#aa73a2816d64f0f4a4325bd9927486e40", null ], [ "setHeight", "class_low_level_renderer2_d_1_1_texture.html#a22847f8ffc4c932f5e5a85c5107eb032", null ], [ "setWidth", "class_low_level_renderer2_d_1_1_texture.html#a6c622c8237b79101bb9497a0b7a15220", null ], [ "LowLevelRenderer2D", "class_low_level_renderer2_d_1_1_texture.html#ab9ebacbc3611dc67ac0fffbf8205d070", null ] diff --git a/doc/doxy/html/class_main_character-members.html b/doc/doxy/html/class_main_character-members.html index d719826..807d21f 100644 --- a/doc/doxy/html/class_main_character-members.html +++ b/doc/doxy/html/class_main_character-members.html @@ -3,15 +3,24 @@ - -OWMAN: Member List + +owman: Member List + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,7 +104,6 @@
    -
    MainCharacter Member List
    @@ -91,35 +112,36 @@

    This is the complete list of members for MainCharacter, including all inherited members.

    - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + +
    cellMainCharacterprivate
    createXmlNode(rapidxml::xml_document<> *doc, float cellSize)Entity
    Entity()Entityprotected
    EntityFactory classMainCharacterfriend
    getCell() const MainCharacter
    getCell()MainCharacter
    getGraphicsComponent()Entity
    getId() const Entity
    getPhysicsComponent()Entity
    getPosition() const Entity
    getTypeOfEntity() const Entity
    graphicsComponentEntityprotected
    idEntityprotected
    Id typedefEntity
    MainCharacter()MainCharacterprivate
    physicsComponentEntityprotected
    setCell(const Vec2i &cell)MainCharacter
    setGraphicsComponent(GraphicsComponent *component)Entityprotected
    setPhysicsComponent(PhysicsComponent *component)Entityprotected
    setPosition(const Vec2f &pos)Entity
    typeIdEntityprotected
    TypeId typedefEntity
    ~Entity()Entity
    createXmlNode(rapidxml::xml_document<> *doc, float cellSize)Entity
    Entity() (defined in Entity)Entityprotected
    EntityFactory (defined in MainCharacter)MainCharacterfriend
    getCell() const (defined in MainCharacter)MainCharacter
    getCell() (defined in MainCharacter)MainCharacter
    getGraphicsComponent() (defined in Entity)Entity
    getId() const (defined in Entity)Entity
    getPhysicsComponent() (defined in Entity)Entity
    getPosition() const (defined in Entity)Entity
    getTypeOfEntity() const (defined in Entity)Entity
    graphicsComponent (defined in Entity)Entityprotected
    id (defined in Entity)Entityprotected
    Id typedef (defined in Entity)Entity
    physicsComponent (defined in Entity)Entityprotected
    setCell(const Vec2i &cell) (defined in MainCharacter)MainCharacter
    setGraphicsComponent(GraphicsComponent *component) (defined in Entity)Entityprotected
    setPhysicsComponent(PhysicsComponent *component) (defined in Entity)Entityprotected
    setPosition(const Vec2f &pos) (defined in Entity)Entity
    typeId (defined in Entity)Entityprotected
    TypeId typedef (defined in Entity)Entity
    ~Entity() (defined in Entity)Entity
    + - + diff --git a/doc/doxy/html/class_main_character.html b/doc/doxy/html/class_main_character.html index 2213bb3..2b1d659 100644 --- a/doc/doxy/html/class_main_character.html +++ b/doc/doxy/html/class_main_character.html @@ -3,15 +3,24 @@ - -OWMAN: MainCharacter Class Reference + +owman: MainCharacter Class Reference + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,12 +104,9 @@
    -
    Public Member Functions | -Private Member Functions | -Private Attributes | Friends | List of all members
    @@ -108,194 +127,89 @@ - + - + - + - + - + - + - + - + - + - + - - -

    Public Member Functions

    const Vec2igetCell () const
    +const Vec2igetCell () const
     
    Vec2igetCell ()
    +Vec2igetCell ()
     
    void setCell (const Vec2i &cell)
    +void setCell (const Vec2i &cell)
     
    - Public Member Functions inherited from Entity
    TypeId getTypeOfEntity () const
    +TypeId getTypeOfEntity () const
     
    Id getId () const
    +Id getId () const
     
    Vec2f getPosition () const
    +Vec2f getPosition () const
     
    void setPosition (const Vec2f &pos)
    +void setPosition (const Vec2f &pos)
     
    GraphicsComponentgetGraphicsComponent ()
    +GraphicsComponentgetGraphicsComponent ()
     
    PhysicsComponentgetPhysicsComponent ()
    +PhysicsComponentgetPhysicsComponent ()
     
    rapidxml::xml_nodecreateXmlNode (rapidxml::xml_document<> *doc, float cellSize)
    rapidxml::xml_node * createXmlNode (rapidxml::xml_document<> *doc, float cellSize)
     
     ~Entity ()
     
    - - - -

    -Private Member Functions

     MainCharacter ()
     
    - - -

    -Private Attributes

    Vec2i cell
     
    - +

    Friends

    class EntityFactory
    +class EntityFactory
     
    - + - + - - - + - + - + - + - + - +

    Additional Inherited Members

    - Public Types inherited from Entity
    typedef std::string TypeId
    +typedef std::string TypeId
     
    typedef unsigned int Id
    +typedef unsigned int Id
     
    - Protected Member Functions inherited from Entity
     Entity ()
     
    void setGraphicsComponent (GraphicsComponent *component)
    +void setGraphicsComponent (GraphicsComponent *component)
     
    void setPhysicsComponent (PhysicsComponent *component)
    +void setPhysicsComponent (PhysicsComponent *component)
     
    - Protected Attributes inherited from Entity
    TypeId typeId
    +TypeId typeId
     
    Id id
    +Id id
     
    GraphicsComponentgraphicsComponent
    +GraphicsComponentgraphicsComponent
     
    PhysicsComponentphysicsComponent
    +PhysicsComponentphysicsComponent
     

    Detailed Description

    The only difference with a normal entity is that a main character stores the cell where it is located

    -

    Constructor & Destructor Documentation

    - -
    -
    - - - - - -
    - - - - - - - -
    MainCharacter::MainCharacter ()
    -
    -private
    -
    - -
    -
    -

    Member Function Documentation

    - -
    -
    - - - - - - - -
    const Vec2i & MainCharacter::getCell () const
    -
    - -
    -
    - -
    -
    - - - - - - - -
    Vec2i & MainCharacter::getCell ()
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    void MainCharacter::setCell (const Vec2icell)
    -
    - -
    -
    -

    Friends And Related Function Documentation

    - -
    -
    - - - - - -
    - - - - -
    friend class EntityFactory
    -
    -friend
    -
    - -
    -
    -

    Member Data Documentation

    - -
    -
    - - - - - -
    - - - - -
    Vec2i MainCharacter::cell
    -
    -private
    -
    - -
    -
    -
    The documentation for this class was generated from the following files:

    The documentation for this class was generated from the following files:
    + - + diff --git a/doc/doxy/html/class_main_character.png b/doc/doxy/html/class_main_character.png index 477d060..080088c 100644 Binary files a/doc/doxy/html/class_main_character.png and b/doc/doxy/html/class_main_character.png differ diff --git a/doc/doxy/html/class_physics_box-members.html b/doc/doxy/html/class_physics_box-members.html index e58ff0e..864f737 100644 --- a/doc/doxy/html/class_physics_box-members.html +++ b/doc/doxy/html/class_physics_box-members.html @@ -3,15 +3,24 @@ - -OWMAN: Member List + +owman: Member List + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,7 +104,6 @@
    -
    PhysicsBox Member List
    @@ -91,22 +112,25 @@

    This is the complete list of members for PhysicsBox, including all inherited members.

    - + - - - - - - - + + + + + + +
    bodyPhysicsBoxprivate
    body (defined in PhysicsComponent)PhysicsComponentprotected
    createXmlNode(rapidxml::xml_document<> *doc)PhysicsBoxvirtual
    destroyDispatcher()PhysicsBoxvirtual
    getPosition() const PhysicsBoxvirtual
    myPhysicsSystemPhysicsComponentprotected
    PhysicsBox()PhysicsBoxinlineprivate
    PhysicsBoxFactory classPhysicsBoxfriend
    scalePhysicsBoxprivate
    setPosition(const Vec2f &v)PhysicsBoxvirtual
    ~PhysicsBox()PhysicsBoxinlinevirtual
    getPosition() const (defined in PhysicsComponent)PhysicsComponent
    getSpeed() const (defined in PhysicsComponent)PhysicsComponent
    myPhysicsSystem (defined in PhysicsComponent)PhysicsComponentprotected
    PhysicsBoxFactory (defined in PhysicsBox)PhysicsBoxfriend
    setPosition(const Vec2f &v) (defined in PhysicsComponent)PhysicsComponent
    setSpeed(const Vec2f &v) (defined in PhysicsComponent)PhysicsComponent
    ~PhysicsBox() (defined in PhysicsBox)PhysicsBoxinlinevirtual
    + - + diff --git a/doc/doxy/html/class_physics_box.html b/doc/doxy/html/class_physics_box.html index 51fcc57..18da83f 100644 --- a/doc/doxy/html/class_physics_box.html +++ b/doc/doxy/html/class_physics_box.html @@ -3,15 +3,24 @@ - -OWMAN: PhysicsBox Class Reference + +owman: PhysicsBox Class Reference + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,12 +104,9 @@
    -
    Public Member Functions | -Private Member Functions | -Private Attributes | Friends | List of all members
    @@ -108,92 +127,46 @@ - - - - - - + + - - - - + + -

    Public Member Functions

    Vec2f getPosition () const
     
    void setPosition (const Vec2f &v)
     
    rapidxml::xml_nodecreateXmlNode (rapidxml::xml_document<> *doc)
     Creates a physics XML node Returns an XML node representing the class itself. More...
    rapidxml::xml_node * createXmlNode (rapidxml::xml_document<> *doc)
     Creates a physics XML node Returns an XML node representing the class itself. More...
     
    virtual ~PhysicsBox ()
     
    void destroyDispatcher ()
     this will call to the corresponding PhysicsSystem function \ in charge of deleting this PhysicsComponent More...
    +void destroyDispatcher ()
     this will call to the corresponding PhysicsSystem function \ in charge of deleting this PhysicsComponent
     
    - - - -

    -Private Member Functions

     PhysicsBox ()
     
    - - - - - + + + + + + + + +

    -Private Attributes

    b2Body * body
     
    Vec2f scale
     
    - Public Member Functions inherited from PhysicsComponent
    +Vec2f getPosition () const
     
    +void setPosition (const Vec2f &v)
     
    +Vec2f getSpeed () const
     
    +void setSpeed (const Vec2f &v)
     
    - +

    Friends

    class PhysicsBoxFactory
    +class PhysicsBoxFactory
     
    - + + +

    Additional Inherited Members

    - Protected Attributes inherited from PhysicsComponent
    PhysicsSystemmyPhysicsSystem
    +PhysicsSystemmyPhysicsSystem
     
    +b2Body * body
     

    Detailed Description

    This class represents a box shaped physics body.

    -

    Constructor & Destructor Documentation

    - -
    -
    - - - - - -
    - - - - - - - -
    PhysicsBox::PhysicsBox ()
    -
    -inlineprivate
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    virtual PhysicsBox::~PhysicsBox ()
    -
    -inlinevirtual
    -
    - -
    -
    -

    Member Function Documentation

    +

    Member Function Documentation

    @@ -202,9 +175,9 @@

    Member Function Documentation

    - + - + @@ -227,158 +200,22 @@

    Member Function Documentation

    Implements PhysicsComponent.

    - - - -
    -
    -
    xml_node * PhysicsBox::createXmlNode xml_node * PhysicsBox::createXmlNode (rapidxml::xml_document<> * rapidxml::xml_document<> *  doc)
    - - - - -
    - - - - - - - -
    void PhysicsBox::destroyDispatcher ()
    -
    -virtual
    -
    - -

    this will call to the corresponding PhysicsSystem function \ in charge of deleting this PhysicsComponent

    - -

    Implements PhysicsComponent.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    Vec2f PhysicsBox::getPosition () const
    -
    -virtual
    -
    - -

    Implements PhysicsComponent.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - -
    void PhysicsBox::setPosition (const Vec2fv)
    -
    -virtual
    -
    - -

    Implements PhysicsComponent.

    - -
    -
    -

    Friends And Related Function Documentation

    - -
    -
    - - - - - -
    - - - - -
    friend class PhysicsBoxFactory
    -
    -friend
    -
    - -
    -
    -

    Member Data Documentation

    - -
    -
    - - - - - -
    - - - - -
    b2Body* PhysicsBox::body
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    Vec2f PhysicsBox::scale
    -
    -private
    -
    -

    The documentation for this class was generated from the following files:
    + - + diff --git a/doc/doxy/html/class_physics_box.js b/doc/doxy/html/class_physics_box.js index 5061025..2c9d9e7 100644 --- a/doc/doxy/html/class_physics_box.js +++ b/doc/doxy/html/class_physics_box.js @@ -3,7 +3,5 @@ var class_physics_box = [ "~PhysicsBox", "class_physics_box.html#a42afa0d9fab491464e4e6b477e6b1c1f", null ], [ "createXmlNode", "class_physics_box.html#ab1f504cb2f8aeae61b06047c33cda9a9", null ], [ "destroyDispatcher", "class_physics_box.html#a1e8ca933d2f827edc1a0f88bfbe0ab73", null ], - [ "getPosition", "class_physics_box.html#a189de09086e5a6b79819cf92dd086468", null ], - [ "setPosition", "class_physics_box.html#a6bd363dfa65887446802b40d96666689", null ], [ "PhysicsBoxFactory", "class_physics_box.html#a120a8d074c874393e4e681db8564c950", null ] ]; \ No newline at end of file diff --git a/doc/doxy/html/class_physics_box.png b/doc/doxy/html/class_physics_box.png index 55780ba..205ea09 100644 Binary files a/doc/doxy/html/class_physics_box.png and b/doc/doxy/html/class_physics_box.png differ diff --git a/doc/doxy/html/class_physics_box_factory-members.html b/doc/doxy/html/class_physics_box_factory-members.html index 97b21cb..1740133 100644 --- a/doc/doxy/html/class_physics_box_factory-members.html +++ b/doc/doxy/html/class_physics_box_factory-members.html @@ -3,15 +3,24 @@ - -OWMAN: Member List + +owman: Member List + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,7 +104,6 @@
    -
    PhysicsBoxFactory Member List
    @@ -91,19 +112,20 @@

    This is the complete list of members for PhysicsBoxFactory, including all inherited members.

    - - - - - - - + + + + +
    createPhysicsBox(const Vec2f &position, const Vec2f &scale, float mass)PhysicsBoxFactory
    createPhysicsBoxKinematic(const Vec2f &position, const Vec2f &scale, float mass)PhysicsBoxFactory
    destroyPhysicsBox(PhysicsBox *physicsBox)PhysicsBoxFactory
    getPhysicsSystem()PhysicsBoxFactory
    myPhysicsSystemPhysicsBoxFactoryprivate
    PhysicsBoxFactory(PhysicsSystem *physicsSystem)PhysicsBoxFactoryprivate
    PhysicsSystem classPhysicsBoxFactoryfriend
    createPhysicsBox(const Vec2f &position, const Vec2f &scale, float mass) (defined in PhysicsBoxFactory)PhysicsBoxFactory
    createPhysicsBoxKinematic(const Vec2f &position, const Vec2f &scale, float mass) (defined in PhysicsBoxFactory)PhysicsBoxFactory
    destroyPhysicsBox(PhysicsBox *physicsBox) (defined in PhysicsBoxFactory)PhysicsBoxFactory
    getPhysicsSystem() (defined in PhysicsBoxFactory)PhysicsBoxFactory
    PhysicsSystem (defined in PhysicsBoxFactory)PhysicsBoxFactoryfriend
    + - + diff --git a/doc/doxy/html/class_physics_box_factory.html b/doc/doxy/html/class_physics_box_factory.html index 7f7e0c8..ed012e1 100644 --- a/doc/doxy/html/class_physics_box_factory.html +++ b/doc/doxy/html/class_physics_box_factory.html @@ -3,15 +3,24 @@ - -OWMAN: PhysicsBoxFactory Class Reference + +owman: PhysicsBoxFactory Class Reference + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,220 +104,51 @@
    -
    Public Member Functions | -Private Member Functions | -Private Attributes | Friends | List of all members
    PhysicsBoxFactory Class Reference
    - -

    #include <physics_box_factory.hpp>

    - + - + - + - +

    Public Member Functions

    PhysicsBoxcreatePhysicsBox (const Vec2f &position, const Vec2f &scale, float mass)
    +PhysicsBoxcreatePhysicsBox (const Vec2f &position, const Vec2f &scale, float mass)
     
    PhysicsBoxcreatePhysicsBoxKinematic (const Vec2f &position, const Vec2f &scale, float mass)
    +PhysicsBoxcreatePhysicsBoxKinematic (const Vec2f &position, const Vec2f &scale, float mass)
     
    void destroyPhysicsBox (PhysicsBox *physicsBox)
    +void destroyPhysicsBox (PhysicsBox *physicsBox)
     
    PhysicsSystemgetPhysicsSystem ()
    +PhysicsSystemgetPhysicsSystem ()
     
    - - - -

    -Private Member Functions

     PhysicsBoxFactory (PhysicsSystem *physicsSystem)
     
    - - - -

    -Private Attributes

    PhysicsSystemmyPhysicsSystem
     
    - +

    Friends

    class PhysicsSystem
    +class PhysicsSystem
     
    -

    Constructor & Destructor Documentation

    - -
    -
    - - - - - -
    - - - - - - - - -
    PhysicsBoxFactory::PhysicsBoxFactory (PhysicsSystemphysicsSystem)
    -
    -private
    -
    - -
    -
    -

    Member Function Documentation

    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    PhysicsBox * PhysicsBoxFactory::createPhysicsBox (const Vec2fposition,
    const Vec2fscale,
    float mass 
    )
    -
    - -
    -
    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    PhysicsBox * PhysicsBoxFactory::createPhysicsBoxKinematic (const Vec2fposition,
    const Vec2fscale,
    float mass 
    )
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    void PhysicsBoxFactory::destroyPhysicsBox (PhysicsBoxphysicsBox)
    -
    - -
    -
    - -
    -
    - - - - - - - -
    PhysicsSystem * PhysicsBoxFactory::getPhysicsSystem ()
    -
    - -
    -
    -

    Friends And Related Function Documentation

    - -
    -
    - - - - - -
    - - - - -
    friend class PhysicsSystem
    -
    -friend
    -
    - -
    -
    -

    Member Data Documentation

    - -
    -
    - - - - - -
    - - - - -
    PhysicsSystem* PhysicsBoxFactory::myPhysicsSystem
    -
    -private
    -
    - -
    -

    The documentation for this class was generated from the following files:
    + - + diff --git a/doc/doxy/html/class_physics_circle-members.html b/doc/doxy/html/class_physics_circle-members.html new file mode 100644 index 0000000..4eca471 --- /dev/null +++ b/doc/doxy/html/class_physics_circle-members.html @@ -0,0 +1,136 @@ + + + + + + +owman: Member List + + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    owman +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    +
    PhysicsCircle Member List
    +
    +
    + +

    This is the complete list of members for PhysicsCircle, including all inherited members.

    + + + + + + + + + + + +
    body (defined in PhysicsComponent)PhysicsComponentprotected
    createXmlNode(rapidxml::xml_document<> *doc)PhysicsCirclevirtual
    destroyDispatcher()PhysicsCirclevirtual
    getPosition() const (defined in PhysicsComponent)PhysicsComponent
    getSpeed() const (defined in PhysicsComponent)PhysicsComponent
    myPhysicsSystem (defined in PhysicsComponent)PhysicsComponentprotected
    PhysicsCircleFactory (defined in PhysicsCircle)PhysicsCirclefriend
    setPosition(const Vec2f &v) (defined in PhysicsComponent)PhysicsComponent
    setSpeed(const Vec2f &v) (defined in PhysicsComponent)PhysicsComponent
    ~PhysicsCircle() (defined in PhysicsCircle)PhysicsCircleinlinevirtual
    +
    + + + + diff --git a/doc/doxy/html/class_physics_circle.html b/doc/doxy/html/class_physics_circle.html new file mode 100644 index 0000000..e2cdd3c --- /dev/null +++ b/doc/doxy/html/class_physics_circle.html @@ -0,0 +1,221 @@ + + + + + + +owman: PhysicsCircle Class Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    owman +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    PhysicsCircle Class Reference
    +
    +
    + +

    #include <physics_circle.hpp>

    +
    +Inheritance diagram for PhysicsCircle:
    +
    +
    + + +PhysicsComponent + +
    + + + + + + + + + + + + + + + + + +

    +Public Member Functions

    rapidxml::xml_node * createXmlNode (rapidxml::xml_document<> *doc)
     Creates a physics XML node Returns an XML node representing the class itself. More...
     
    +void destroyDispatcher ()
     this will call to the corresponding PhysicsSystem function \ in charge of deleting this PhysicsComponent
     
    - Public Member Functions inherited from PhysicsComponent
    +Vec2f getPosition () const
     
    +void setPosition (const Vec2f &v)
     
    +Vec2f getSpeed () const
     
    +void setSpeed (const Vec2f &v)
     
    + + + +

    +Friends

    +class PhysicsCircleFactory
     
    + + + + + + +

    +Additional Inherited Members

    - Protected Attributes inherited from PhysicsComponent
    +PhysicsSystemmyPhysicsSystem
     
    +b2Body * body
     
    +

    Detailed Description

    +

    This class represents a circular shaped physics body.

    +

    Member Function Documentation

    + +
    +
    + + + + + +
    + + + + + + + + +
    xml_node * PhysicsCircle::createXmlNode (rapidxml::xml_document<> * doc)
    +
    +virtual
    +
    + +

    Creates a physics XML node Returns an XML node representing the class itself.

    +
    Parameters
    + + +
    TheXML document
    +
    +
    +
    Returns
    The XML node
    + +

    Implements PhysicsComponent.

    + +
    +
    +
    The documentation for this class was generated from the following files: +
    +
    + + + + diff --git a/doc/doxy/html/class_physics_circle.js b/doc/doxy/html/class_physics_circle.js new file mode 100644 index 0000000..6e2a504 --- /dev/null +++ b/doc/doxy/html/class_physics_circle.js @@ -0,0 +1,7 @@ +var class_physics_circle = +[ + [ "~PhysicsCircle", "class_physics_circle.html#a2e52d3ec988190b23a24b5ee4b3d3e1b", null ], + [ "createXmlNode", "class_physics_circle.html#a6c238978789f221d65464df879e5b898", null ], + [ "destroyDispatcher", "class_physics_circle.html#addccbe0fa780a1ff7a8347ce23e8f515", null ], + [ "PhysicsCircleFactory", "class_physics_circle.html#ae4443f2a904de0cf1e8837ac1b1be870", null ] +]; \ No newline at end of file diff --git a/doc/doxy/html/class_physics_circle.png b/doc/doxy/html/class_physics_circle.png new file mode 100644 index 0000000..d4cf275 Binary files /dev/null and b/doc/doxy/html/class_physics_circle.png differ diff --git a/doc/doxy/html/class_physics_circle_factory-members.html b/doc/doxy/html/class_physics_circle_factory-members.html new file mode 100644 index 0000000..08ffd23 --- /dev/null +++ b/doc/doxy/html/class_physics_circle_factory-members.html @@ -0,0 +1,131 @@ + + + + + + +owman: Member List + + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    owman +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    +
    PhysicsCircleFactory Member List
    +
    +
    + +

    This is the complete list of members for PhysicsCircleFactory, including all inherited members.

    + + + + + + +
    createPhysicsCircle(const Vec2f &position, float radius, float mass) (defined in PhysicsCircleFactory)PhysicsCircleFactory
    createPhysicsCircleKinematic(const Vec2f &position, float radius, float mass) (defined in PhysicsCircleFactory)PhysicsCircleFactory
    destroyPhysicsCircle(PhysicsCircle *physicsCircle) (defined in PhysicsCircleFactory)PhysicsCircleFactory
    getPhysicsSystem() (defined in PhysicsCircleFactory)PhysicsCircleFactory
    PhysicsSystem (defined in PhysicsCircleFactory)PhysicsCircleFactoryfriend
    +
    + + + + diff --git a/doc/doxy/html/class_physics_circle_factory.html b/doc/doxy/html/class_physics_circle_factory.html new file mode 100644 index 0000000..c8ccac9 --- /dev/null +++ b/doc/doxy/html/class_physics_circle_factory.html @@ -0,0 +1,154 @@ + + + + + + +owman: PhysicsCircleFactory Class Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    owman +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    PhysicsCircleFactory Class Reference
    +
    +
    + + + + + + + + + + +

    +Public Member Functions

    +PhysicsCirclecreatePhysicsCircle (const Vec2f &position, float radius, float mass)
     
    +PhysicsCirclecreatePhysicsCircleKinematic (const Vec2f &position, float radius, float mass)
     
    +void destroyPhysicsCircle (PhysicsCircle *physicsCircle)
     
    +PhysicsSystemgetPhysicsSystem ()
     
    + + + +

    +Friends

    +class PhysicsSystem
     
    +
    The documentation for this class was generated from the following files: +
    +
    + + + + diff --git a/doc/doxy/html/class_physics_circle_factory.js b/doc/doxy/html/class_physics_circle_factory.js new file mode 100644 index 0000000..469c1a9 --- /dev/null +++ b/doc/doxy/html/class_physics_circle_factory.js @@ -0,0 +1,8 @@ +var class_physics_circle_factory = +[ + [ "createPhysicsCircle", "class_physics_circle_factory.html#a574aad0a5b79bfca04dee8c322f6ec23", null ], + [ "createPhysicsCircleKinematic", "class_physics_circle_factory.html#ab2bd28510e4594d4dbbcf68a0abd0496", null ], + [ "destroyPhysicsCircle", "class_physics_circle_factory.html#ad8f79a2bd4582b2a6682b7b4bef5a5d3", null ], + [ "getPhysicsSystem", "class_physics_circle_factory.html#a735b9bfe32a3be3b259c7224e964c64e", null ], + [ "PhysicsSystem", "class_physics_circle_factory.html#a6fb7520528fab4a670001f041b872bf2", null ] +]; \ No newline at end of file diff --git a/doc/doxy/html/class_physics_component-members.html b/doc/doxy/html/class_physics_component-members.html index 67f00ad..946726a 100644 --- a/doc/doxy/html/class_physics_component-members.html +++ b/doc/doxy/html/class_physics_component-members.html @@ -3,15 +3,24 @@ - -OWMAN: Member List + +owman: Member List + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,7 +104,6 @@
    -
    PhysicsComponent Member List
    @@ -91,18 +112,24 @@

    This is the complete list of members for PhysicsComponent, including all inherited members.

    - - - - - - + + + + + + + + +
    createXmlNode(rapidxml::xml_document<> *doc)=0PhysicsComponentpure virtual
    destroyDispatcher()=0PhysicsComponentpure virtual
    getPosition() const =0PhysicsComponentpure virtual
    myPhysicsSystemPhysicsComponentprotected
    PhysicsSystem classPhysicsComponentfriend
    setPosition(const Vec2f &v)=0PhysicsComponentpure virtual
    body (defined in PhysicsComponent)PhysicsComponentprotected
    createXmlNode(rapidxml::xml_document<> *doc)=0PhysicsComponentpure virtual
    destroyDispatcher()=0PhysicsComponentpure virtual
    getPosition() const (defined in PhysicsComponent)PhysicsComponent
    getSpeed() const (defined in PhysicsComponent)PhysicsComponent
    myPhysicsSystem (defined in PhysicsComponent)PhysicsComponentprotected
    PhysicsSystem (defined in PhysicsComponent)PhysicsComponentfriend
    setPosition(const Vec2f &v) (defined in PhysicsComponent)PhysicsComponent
    setSpeed(const Vec2f &v) (defined in PhysicsComponent)PhysicsComponent
    + - + diff --git a/doc/doxy/html/class_physics_component.html b/doc/doxy/html/class_physics_component.html index 3bfaa81..a9eb135 100644 --- a/doc/doxy/html/class_physics_component.html +++ b/doc/doxy/html/class_physics_component.html @@ -3,15 +3,24 @@ - -OWMAN: PhysicsComponent Class Reference + +owman: PhysicsComponent Class Reference + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,7 +104,6 @@
    -
    Public Member Functions | @@ -93,8 +114,6 @@
    PhysicsComponent Class Referenceabstract
    - -

    #include <physics_component.hpp>

    Inheritance diagram for PhysicsComponent:
    @@ -102,30 +121,45 @@ PhysicsBox +PhysicsCircle
    - - - - - - + + + + + + + + + + - - + +

    Public Member Functions

    virtual Vec2f getPosition () const =0
     
    virtual void setPosition (const Vec2f &v)=0
     
    virtual rapidxml::xml_nodecreateXmlNode (rapidxml::xml_document<> *doc)=0
     Creates a physics XML node Returns an XML node representing the class itself. More...
    +Vec2f getPosition () const
     
    +void setPosition (const Vec2f &v)
     
    +Vec2f getSpeed () const
     
    +void setSpeed (const Vec2f &v)
     
    virtual rapidxml::xml_node * createXmlNode (rapidxml::xml_document<> *doc)=0
     Creates a physics XML node Returns an XML node representing the class itself. More...
     
    virtual void destroyDispatcher ()=0
     this will call to the corresponding PhysicsSystem function \ in charge of deleting this PhysicsComponent More...
    +virtual void destroyDispatcher ()=0
     this will call to the corresponding PhysicsSystem function \ in charge of deleting this PhysicsComponent
     
    - + + +

    Protected Attributes

    PhysicsSystemmyPhysicsSystem
    +PhysicsSystemmyPhysicsSystem
     
    +b2Body * body
     
    - +

    Friends

    class PhysicsSystem
    +class PhysicsSystem
     

    Member Function Documentation

    @@ -137,9 +171,9 @@

    Member Function Documentation

    - + - + @@ -160,139 +194,24 @@

    Member Function Documentation

    Returns
    The XML node
    -

    Implemented in PhysicsBox.

    +

    Implemented in PhysicsBox, and PhysicsCircle.

    - -
    -
    -
    virtual rapidxml::xml_node* PhysicsComponent::createXmlNode virtual rapidxml::xml_node* PhysicsComponent::createXmlNode (rapidxml::xml_document<> * rapidxml::xml_document<> *  doc)
    - - - - -
    - - - - - - - -
    virtual void PhysicsComponent::destroyDispatcher ()
    -
    -pure virtual
    -
    - -

    this will call to the corresponding PhysicsSystem function \ in charge of deleting this PhysicsComponent

    - -

    Implemented in PhysicsBox.

    - -
    - - -
    -
    - - - - - -
    - - - - - - - -
    virtual Vec2f PhysicsComponent::getPosition () const
    -
    -pure virtual
    -
    - -

    Implemented in PhysicsBox.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - -
    virtual void PhysicsComponent::setPosition (const Vec2fv)
    -
    -pure virtual
    -
    - -

    Implemented in PhysicsBox.

    - -
    -
    -

    Friends And Related Function Documentation

    - -
    -
    - - - - - -
    - - - - -
    friend class PhysicsSystem
    -
    -friend
    -
    - -
    -
    -

    Member Data Documentation

    - -
    -
    - - - - - -
    - - - - -
    PhysicsSystem* PhysicsComponent::myPhysicsSystem
    -
    -protected
    -
    - -
    -
    -
    The documentation for this class was generated from the following file: + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,7 +104,6 @@
    -
    PhysicsSystem Member List
    @@ -93,19 +114,23 @@ - - - - - - - + + + + + + + +
    createPhysicsBox(const Vec2f &position, const Vec2f &scale, float mass)PhysicsSystem
    createPhysicsBoxKinematic(const Vec2f &position, const Vec2f &scale, float mass)PhysicsSystem
    destroyPhysicsBox(PhysicsBox *physicsBox)PhysicsSystem
    destroyPhysicsComponent(PhysicsComponent *physicsComponent)PhysicsSystem
    getWorld()PhysicsSystem
    physicsBoxFactoryPhysicsSystemprivate
    PhysicsSystem()PhysicsSystem
    update(unsigned int delta)PhysicsSystem
    worldPhysicsSystemprivate
    createPhysicsCircle(const Vec2f &position, float radius, float mass)PhysicsSystem
    createPhysicsCircleKinematic(const Vec2f &position, float radius, float mass)PhysicsSystem
    destroyPhysicsBox(PhysicsBox *physicsBox) (defined in PhysicsSystem)PhysicsSystem
    destroyPhysicsCircle(PhysicsCircle *physicsCircle) (defined in PhysicsSystem)PhysicsSystem
    destroyPhysicsComponent(PhysicsComponent *physicsComponent) (defined in PhysicsSystem)PhysicsSystem
    getWorld() (defined in PhysicsSystem)PhysicsSystem
    PhysicsSystem() (defined in PhysicsSystem)PhysicsSystem
    update(unsigned int delta) (defined in PhysicsSystem)PhysicsSystem
    + - + diff --git a/doc/doxy/html/class_physics_system.html b/doc/doxy/html/class_physics_system.html index fd1e20a..1e25bef 100644 --- a/doc/doxy/html/class_physics_system.html +++ b/doc/doxy/html/class_physics_system.html @@ -3,15 +3,24 @@ - -OWMAN: PhysicsSystem Class Reference + +owman: PhysicsSystem Class Reference + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,244 +104,63 @@
    -
    Public Member Functions | -Private Attributes | List of all members
    PhysicsSystem Class Reference
    - -

    #include <physics_system.hpp>

    - - - + - - + + - - + + - + + + + + + + - + - + + + -

    Public Member Functions

     PhysicsSystem ()
     
    void update (unsigned int delta)
    +void update (unsigned int delta)
     
    PhysicsBoxcreatePhysicsBox (const Vec2f &position, const Vec2f &scale, float mass)
     Create a dynamic box Dynamic means that is is affected by forces. More...
    +PhysicsBoxcreatePhysicsBox (const Vec2f &position, const Vec2f &scale, float mass)
     Create a dynamic box Dynamic means that it is affected by forces.
     
    PhysicsBoxcreatePhysicsBoxKinematic (const Vec2f &position, const Vec2f &scale, float mass)
     Create a kinematic box Kinematic means that it is not affected by forces. More...
    +PhysicsBoxcreatePhysicsBoxKinematic (const Vec2f &position, const Vec2f &scale, float mass)
     Create a kinematic box Kinematic means that it is not affected by forces.
     
    void destroyPhysicsComponent (PhysicsComponent *physicsComponent)
    +PhysicsCirclecreatePhysicsCircle (const Vec2f &position, float radius, float mass)
     Create a dynamic circle Dynamic means that it is affected by forces.
     
    +PhysicsCirclecreatePhysicsCircleKinematic (const Vec2f &position, float radius, float mass)
     Create a kinematic circle Kinematic means that it is not affected by forces.
     
    +void destroyPhysicsComponent (PhysicsComponent *physicsComponent)
     
    void destroyPhysicsBox (PhysicsBox *physicsBox)
    +void destroyPhysicsBox (PhysicsBox *physicsBox)
     
    b2World * getWorld ()
    +void destroyPhysicsCircle (PhysicsCircle *physicsCircle)
     
    +b2World * getWorld ()
     
    - - - - -

    -Private Attributes

    b2World * world
     
    PhysicsBoxFactoryphysicsBoxFactory
     
    -

    Constructor & Destructor Documentation

    - -
    -
    - - - - - - - -
    PhysicsSystem::PhysicsSystem ()
    -
    - -
    -
    -

    Member Function Documentation

    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    PhysicsBox * PhysicsSystem::createPhysicsBox (const Vec2fposition,
    const Vec2fscale,
    float mass 
    )
    -
    - -

    Create a dynamic box Dynamic means that is is affected by forces.

    - -
    -
    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    PhysicsBox * PhysicsSystem::createPhysicsBoxKinematic (const Vec2fposition,
    const Vec2fscale,
    float mass 
    )
    -
    - -

    Create a kinematic box Kinematic means that it is not affected by forces.

    - -
    -
    - -
    -
    - - - - - - - - -
    void PhysicsSystem::destroyPhysicsBox (PhysicsBoxphysicsBox)
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    void PhysicsSystem::destroyPhysicsComponent (PhysicsComponentphysicsComponent)
    -
    - -
    -
    - -
    -
    - - - - - - - -
    b2World * PhysicsSystem::getWorld ()
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    void PhysicsSystem::update (unsigned int delta)
    -
    - -
    -
    -

    Member Data Documentation

    - -
    -
    - - - - - -
    - - - - -
    PhysicsBoxFactory* PhysicsSystem::physicsBoxFactory
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    b2World* PhysicsSystem::world
    -
    -private
    -
    - -
    -

    The documentation for this class was generated from the following files:
    + - + diff --git a/doc/doxy/html/class_physics_system.js b/doc/doxy/html/class_physics_system.js index 9bb968b..78aeda5 100644 --- a/doc/doxy/html/class_physics_system.js +++ b/doc/doxy/html/class_physics_system.js @@ -3,7 +3,10 @@ var class_physics_system = [ "PhysicsSystem", "class_physics_system.html#a4960fbd046fb332a5faa36fb5028e7c5", null ], [ "createPhysicsBox", "class_physics_system.html#a60ce8b47b8b509506d20d4f87b4243b2", null ], [ "createPhysicsBoxKinematic", "class_physics_system.html#a6092d628627413bf466bdf81a76c2496", null ], + [ "createPhysicsCircle", "class_physics_system.html#ac246e4403059f9a08efa6913df402aca", null ], + [ "createPhysicsCircleKinematic", "class_physics_system.html#a7c97407a7ef35572d9ebe5e1e2db3df3", null ], [ "destroyPhysicsBox", "class_physics_system.html#a39f19a0a018bff611d4fd15e54cc49ca", null ], + [ "destroyPhysicsCircle", "class_physics_system.html#a5b9256b9fef67564a323ea797fe04731", null ], [ "destroyPhysicsComponent", "class_physics_system.html#a8c868b02518913fdfbb6750e5a9897b2", null ], [ "getWorld", "class_physics_system.html#a375c7e34377b12af460db7dd30467c26", null ], [ "update", "class_physics_system.html#a1df515ac31587d962d04f4179113da94", null ] diff --git a/doc/doxy/html/class_resource-members.html b/doc/doxy/html/class_resource-members.html index 34a0e58..8f4f7f7 100644 --- a/doc/doxy/html/class_resource-members.html +++ b/doc/doxy/html/class_resource-members.html @@ -3,15 +3,24 @@ - -OWMAN: Member List + +owman: Member List + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,7 +104,6 @@
    -
    Resource Member List
    @@ -91,24 +112,26 @@

    This is the complete list of members for Resource, including all inherited members.

    - - - - - - - - - - - - + + + + + + + + + + +
    destroyDispatcher()=0Resourcepure virtual
    free()=0Resourceprotectedpure virtual
    getName() const Resource
    getStatus() const Resource
    load()=0Resourceprotectedpure virtual
    nameResourceprotected
    Resource()Resource
    ResourceManager classResourcefriend
    setName(std::string name)Resourceprotected
    statusResourceprotected
    Status enum nameResource
    ~Resource()Resourceinlinevirtual
    free()=0 (defined in Resource)Resourceprotectedpure virtual
    getName() const (defined in Resource)Resource
    getStatus() const (defined in Resource)Resource
    load()=0 (defined in Resource)Resourceprotectedpure virtual
    name (defined in Resource)Resourceprotected
    Resource(const std::string &name) (defined in Resource)Resource
    ResourceManager (defined in Resource)Resourcefriend
    setName(std::string name) (defined in Resource)Resourceprotected
    status (defined in Resource)Resourceprotected
    Status enum name (defined in Resource)Resource
    ~Resource() (defined in Resource)Resourceinlinevirtual
    + - + diff --git a/doc/doxy/html/class_resource.html b/doc/doxy/html/class_resource.html index 3d43c32..fd741f0 100644 --- a/doc/doxy/html/class_resource.html +++ b/doc/doxy/html/class_resource.html @@ -3,15 +3,24 @@ - -OWMAN: Resource Class Reference + +owman: Resource Class Reference + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,7 +104,6 @@
    -
    Public Types | @@ -114,333 +135,73 @@ -

    Public Types

    enum  Status {
    -  Status::UNKOWN, -Status::STORED, -Status::QUEUED, -Status::LOADING, -
    -  Status::LOADED, -Status::READY, -Status::SAVING -
    +
    enum  Status {
    +  UNKOWN, +STORED, +QUEUED, +LOADING, +
    +  LOADED, +SAVING +
    }
     
    - - - - - + + + + + - - - -

    Public Member Functions

     Resource ()
     
    std::string getName () const
     
    Resource::Status getStatus () const
    Resource (const std::string &name)
     
    +std::string getName () const
     
    +Resource::Status getStatus () const
     
    virtual void destroyDispatcher ()=0
     
    virtual ~Resource ()
     
    - + - + - +

    Protected Member Functions

    virtual void load ()=0
    +virtual void load ()=0
     
    virtual void free ()=0
    +virtual void free ()=0
     
    void setName (std::string name)
    +void setName (std::string name)
     
    - + - +

    Protected Attributes

    std::string name
    +std::string name
     
    Status status
    +Status status
     
    - +

    Friends

    class ResourceManager
    +class ResourceManager
     

    Detailed Description

    Abstract resource data class This class hold the data for different types of resource. In order to create a new type of resource just extend from this class.

    -

    Member Enumeration Documentation

    - -
    -
    - - - - - -
    - - - - -
    enum Resource::Status
    -
    -strong
    -
    - - - - - - - - -
    Enumerator
    UNKOWN  -
    STORED  -
    QUEUED  -
    LOADING  -
    LOADED  -
    READY  -
    SAVING  -
    - -
    -
    -

    Constructor & Destructor Documentation

    - -
    -
    - - - - - - - -
    Resource::Resource ()
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    virtual Resource::~Resource ()
    -
    -inlinevirtual
    -
    - -
    -
    -

    Member Function Documentation

    - -
    -
    - - - - - -
    - - - - - - - -
    virtual void Resource::destroyDispatcher ()
    -
    -pure virtual
    -
    - -

    Implemented in ResourceTexture, ResourceCell, and ResourceText.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    virtual void Resource::free ()
    -
    -protectedpure virtual
    -
    - -

    Implemented in ResourceTexture, ResourceCell, and ResourceText.

    - -
    -
    - -
    -
    - - - - - - - -
    std::string Resource::getName () const
    -
    - -
    -
    - -
    -
    - - - - - - - -
    Resource::Status Resource::getStatus () const
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    virtual void Resource::load ()
    -
    -protectedpure virtual
    -
    - -

    Implemented in ResourceTexture, ResourceCell, and ResourceText.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - -
    void Resource::setName (std::string name)
    -
    -protected
    -
    - -
    -
    -

    Friends And Related Function Documentation

    - -
    -
    - - - - - -
    - - - - -
    friend class ResourceManager
    -
    -friend
    -
    - -
    -
    -

    Member Data Documentation

    - -
    -
    - - - - - -
    - - - - -
    std::string Resource::name
    -
    -protected
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    Status Resource::status
    -
    -protected
    -
    - -
    -
    -
    The documentation for this class was generated from the following files:

    The documentation for this class was generated from the following files:
    + - + diff --git a/doc/doxy/html/class_resource.js b/doc/doxy/html/class_resource.js index 90874fd..2ef5389 100644 --- a/doc/doxy/html/class_resource.js +++ b/doc/doxy/html/class_resource.js @@ -6,14 +6,12 @@ var class_resource = [ "QUEUED", "class_resource.html#aefd3725a9fbea9db23e42c81be3b7f0da9df29ce7ca629ff1d47bca1149d9faae", null ], [ "LOADING", "class_resource.html#aefd3725a9fbea9db23e42c81be3b7f0daf9f6955ebca09a484157c05f80acd65e", null ], [ "LOADED", "class_resource.html#aefd3725a9fbea9db23e42c81be3b7f0dab638272ceeff54912f043465e9a28c9b", null ], - [ "READY", "class_resource.html#aefd3725a9fbea9db23e42c81be3b7f0da2baa69eafc7204f3bd8648eba580c489", null ], [ "SAVING", "class_resource.html#aefd3725a9fbea9db23e42c81be3b7f0da4ab2b7759f2b20744b1e239e93c72f1b", null ] ] ], - [ "Resource", "class_resource.html#a5a87b23dc0327bbf8d53c6f38f637f48", null ], + [ "Resource", "class_resource.html#a173624855064824bd3971e6aa58f2e57", null ], [ "~Resource", "class_resource.html#ad3f3570fbfb96a6eb9247b3dbeb1985d", null ], - [ "destroyDispatcher", "class_resource.html#ae33be645ae137088833fddb83ae50ef0", null ], [ "free", "class_resource.html#a18b75bc5ab3eaa1719292fe6f2848100", null ], - [ "getName", "class_resource.html#a0d47fabac6aa43499753d2f42208cdb9", null ], + [ "getName", "class_resource.html#adf4846c720b78e33d252a5d2832ad1ad", null ], [ "getStatus", "class_resource.html#abc9f11c8d49c927092988827a8ee895c", null ], [ "load", "class_resource.html#af91f5b849ad4f2e9fcd039062cbb0bf3", null ], [ "setName", "class_resource.html#aeff4f4be06c9f0e0c9a8fa6424a00177", null ], diff --git a/doc/doxy/html/class_resource.png b/doc/doxy/html/class_resource.png index c672df8..6e53a0a 100644 Binary files a/doc/doxy/html/class_resource.png and b/doc/doxy/html/class_resource.png differ diff --git a/doc/doxy/html/class_resource_cell-members.html b/doc/doxy/html/class_resource_cell-members.html index 74da706..b5708fb 100644 --- a/doc/doxy/html/class_resource_cell-members.html +++ b/doc/doxy/html/class_resource_cell-members.html @@ -3,15 +3,24 @@ - -OWMAN: Member List + +owman: Member List + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,7 +104,6 @@
    -
    ResourceCell Member List
    @@ -91,33 +112,31 @@

    This is the complete list of members for ResourceCell, including all inherited members.

    - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + +
    destroyDispatcher()ResourceCellvirtual
    docResourceCellprivate
    free()ResourceCellprotectedvirtual
    getDocument()ResourceCell
    getName() const Resource
    getNode()ResourceCell
    getStatus() const Resource
    load()ResourceCellprotectedvirtual
    myFactoryResourceCellprivate
    nameResourceprotected
    nodeResourceCellprivate
    Resource()Resource
    ResourceCell()ResourceCell
    ResourceCellFactory classResourceCellfriend
    ResourceManager classResourceCellfriend
    setName(std::string name)Resourceprotected
    Status enum nameResource
    statusResourceprotected
    textResourceCellprivate
    ~Resource()Resourceinlinevirtual
    ~ResourceCell()ResourceCellinline
    free() (defined in ResourceCell)ResourceCellprotectedvirtual
    getDocument() (defined in ResourceCell)ResourceCell
    getName() const (defined in Resource)Resource
    getNode() (defined in ResourceCell)ResourceCell
    getStatus() const (defined in Resource)Resource
    load() (defined in ResourceCell)ResourceCellprotectedvirtual
    name (defined in Resource)Resourceprotected
    Resource(const std::string &name) (defined in Resource)Resource
    ResourceCell(const std::string &name) (defined in ResourceCell)ResourceCell
    ResourceCellFactory (defined in ResourceCell)ResourceCellfriend
    ResourceManager (defined in ResourceCell)ResourceCellfriend
    setName(std::string name) (defined in Resource)Resourceprotected
    status (defined in Resource)Resourceprotected
    Status enum name (defined in Resource)Resource
    ~Resource() (defined in Resource)Resourceinlinevirtual
    ~ResourceCell() (defined in ResourceCell)ResourceCellinline
    + - + diff --git a/doc/doxy/html/class_resource_cell.html b/doc/doxy/html/class_resource_cell.html index 0898175..6bab004 100644 --- a/doc/doxy/html/class_resource_cell.html +++ b/doc/doxy/html/class_resource_cell.html @@ -3,15 +3,24 @@ - -OWMAN: ResourceCell Class Reference + +owman: ResourceCell Class Reference + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,12 +104,10 @@
    -
    Public Member Functions | Protected Member Functions | -Private Attributes | Friends | List of all members
    @@ -111,354 +131,86 @@ - - - + + + - + - - - - - - - - - + + + + + - -

    Public Member Functions

     ResourceCell ()
     
    rapidxml::xml_nodegetNode ()
    ResourceCell (const std::string &name)
     
    +rapidxml::xml_node * getNode ()
     
    rapidxml::xml_documentgetDocument ()
    +rapidxml::xml_document * getDocument ()
     
    void destroyDispatcher ()
     
     ~ResourceCell ()
     
    - Public Member Functions inherited from Resource
     Resource ()
     
    std::string getName () const
     
    Resource::Status getStatus () const
    Resource (const std::string &name)
     
    +std::string getName () const
     
    +Resource::Status getStatus () const
     
    virtual ~Resource ()
     
    - + - + - +

    Protected Member Functions

    void load ()
    +void load ()
     
    void free ()
    +void free ()
     
    - Protected Member Functions inherited from Resource
    void setName (std::string name)
    +void setName (std::string name)
     
    - - - - - - - - - -

    -Private Attributes

    ResourceCellFactorymyFactory
     
    char * text
     
    rapidxml::xml_document doc
     
    rapidxml::xml_nodenode
     
    - + - +

    Friends

    class ResourceCellFactory
    +class ResourceCellFactory
     
    class ResourceManager
    +class ResourceManager
     
    - - + - +

    Additional Inherited Members

    - Public Types inherited from Resource
    enum  Status {
    -  Status::UNKOWN, -Status::STORED, -Status::QUEUED, -Status::LOADING, -
    -  Status::LOADED, -Status::READY, -Status::SAVING -
    +
    enum  Status {
    +  UNKOWN, +STORED, +QUEUED, +LOADING, +
    +  LOADED, +SAVING +
    }
     
    - Protected Attributes inherited from Resource
    std::string name
    +std::string name
     
    Status status
    +Status status
     

    Detailed Description

    Cell resource This class is a modifiable resource. When there are no references to this resource the changes will be stored.

    -

    Constructor & Destructor Documentation

    - -
    -
    - - - - - - - -
    ResourceCell::ResourceCell ()
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    ResourceCell::~ResourceCell ()
    -
    -inline
    -
    - -
    -
    -

    Member Function Documentation

    - -
    -
    - - - - - -
    - - - - - - - -
    void ResourceCell::destroyDispatcher ()
    -
    -virtual
    -
    - -

    Implements Resource.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    void ResourceCell::free ()
    -
    -protectedvirtual
    -
    - -

    Implements Resource.

    - -
    -
    - -
    -
    - - - - - - - -
    rapidxml::xml_document * ResourceCell::getDocument ()
    -
    - -
    -
    - -
    -
    - - - - - - - -
    rapidxml::xml_node * ResourceCell::getNode ()
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    void ResourceCell::load ()
    -
    -protectedvirtual
    -
    - -

    Implements Resource.

    - -
    -
    -

    Friends And Related Function Documentation

    - -
    -
    - - - - - -
    - - - - -
    friend class ResourceCellFactory
    -
    -friend
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    friend class ResourceManager
    -
    -friend
    -
    - -
    -
    -

    Member Data Documentation

    - -
    -
    - - - - - -
    - - - - -
    rapidxml::xml_document ResourceCell::doc
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    ResourceCellFactory* ResourceCell::myFactory
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    rapidxml::xml_node* ResourceCell::node
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    char* ResourceCell::text
    -
    -private
    -
    - -
    -
    -
    The documentation for this class was generated from the following files:

    The documentation for this class was generated from the following files:
    + - + diff --git a/doc/doxy/html/class_resource_cell.js b/doc/doxy/html/class_resource_cell.js index 1829c4b..5bb7409 100644 --- a/doc/doxy/html/class_resource_cell.js +++ b/doc/doxy/html/class_resource_cell.js @@ -1,8 +1,7 @@ var class_resource_cell = [ - [ "ResourceCell", "class_resource_cell.html#a98e934a6ebe5a74bd6bd2e37288852ac", null ], + [ "ResourceCell", "class_resource_cell.html#af391cd1521341ed24ecf29fb99b05f6a", null ], [ "~ResourceCell", "class_resource_cell.html#a8b8df901c160504fa9bc982ad10b0255", null ], - [ "destroyDispatcher", "class_resource_cell.html#ab22194a82c2266e2c46223fa95253bb3", null ], [ "free", "class_resource_cell.html#acfa4b2e3889a0a614c81b48d4831d6b0", null ], [ "getDocument", "class_resource_cell.html#ae6433f6e11c05f630553270ae698f67c", null ], [ "getNode", "class_resource_cell.html#aa4127f0a904a92f9128b4f5339e92875", null ], diff --git a/doc/doxy/html/class_resource_cell.png b/doc/doxy/html/class_resource_cell.png index e4e06f6..9c7c8d2 100644 Binary files a/doc/doxy/html/class_resource_cell.png and b/doc/doxy/html/class_resource_cell.png differ diff --git a/doc/doxy/html/class_resource_manager-members.html b/doc/doxy/html/class_resource_manager-members.html index aa51213..88b410c 100644 --- a/doc/doxy/html/class_resource_manager-members.html +++ b/doc/doxy/html/class_resource_manager-members.html @@ -3,15 +3,24 @@ - -OWMAN: Member List + +owman: Member List + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,7 +104,6 @@
    -
    ResourceManager Member List
    @@ -91,36 +112,22 @@

    This is the complete list of members for ResourceManager, including all inherited members.

    - - - - + + - - - - - - - - - - - - - - - - - - - + + + +
    _stopResourceManagerprivate
    getSingleton()ResourceManagerstatic
    hasStopped()ResourceManager
    init()ResourceManagerstatic
    getSingleton() (defined in ResourceManager)ResourceManagerstatic
    hasStopped() (defined in ResourceManager)ResourceManager
    launch()ResourceManager
    loop()ResourceManagerprivate
    mutexTableResourceManagerprivate
    myThreadResourceManagerprivate
    obtainCell(std::string name)ResourceManager
    obtainText(std::string name)ResourceManager
    obtainTexture(std::string name)ResourceManager
    releaseCell(ResourceCell *resource)ResourceManager
    releaseText(ResourceText *resource)ResourceManager
    releaseTexture(ResourceTexture *resource)ResourceManager
    resourceCellFactoryResourceManagerprivate
    ResourceManager()ResourceManagerinline
    resourceTableResourceManagerprivate
    resourceTextFactoryResourceManagerprivate
    resourceTextureFactoryResourceManagerprivate
    setRenderer(LowLevelRenderer2D *renderer)ResourceManager
    staticLoop(void *object)ResourceManagerprivatestatic
    stop()ResourceManager
    uniqueInstanceResourceManagerprivatestatic
    workQueueResourceManagerprivate
    obtain(std::string name)ResourceManager
    release(Resource *resource)ResourceManager
    ResourceManager() (defined in ResourceManager)ResourceManagerinline
    stop()ResourceManager
    + - + diff --git a/doc/doxy/html/class_resource_manager.html b/doc/doxy/html/class_resource_manager.html index 95cca2c..915be03 100644 --- a/doc/doxy/html/class_resource_manager.html +++ b/doc/doxy/html/class_resource_manager.html @@ -3,15 +3,24 @@ - -OWMAN: ResourceManager Class Reference + +owman: ResourceManager Class Reference + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,15 +104,10 @@
    -
    Public Member Functions | Static Public Member Functions | -Private Member Functions | -Static Private Member Functions | -Private Attributes | -Static Private Attributes | List of all members
    ResourceManager Class Reference
    @@ -104,568 +121,50 @@ - - - - + + - - - - - - - - - - - - - - - - - - - - + + + + + + + + + - + - -

    Public Member Functions

     ResourceManager ()
     
    void launch ()
     launches the resurce manger in its own thread More...
    +void launch ()
     launches the resource manger in its own thread
     
    ResourceTextobtainText (std::string name)
     request a pointer to a text resource More...
     
    void releaseText (ResourceText *resource)
     release a pointer to a text resource More...
     
    ResourceTextureobtainTexture (std::string name)
     request a pointer to a texture resource More...
     
    void releaseTexture (ResourceTexture *resource)
     release a pointer to a texture resource More...
     
    ResourceCellobtainCell (std::string name)
     request a pointer to a cell resource More...
     
    void releaseCell (ResourceCell *resource)
     release a pointer to a cell resource More...
     
    void stop ()
     stop the resource manager thread More...
    +template<typename T >
    T * obtain (std::string name)
     request a pointer to a resource
     
    +void release (Resource *resource)
     release a pointer to a resource
     
    +void stop ()
     stop the resource manager thread
     
    bool hasStopped ()
    +bool hasStopped ()
     
    void setRenderer (LowLevelRenderer2D *renderer)
     
    - - - + -

    Static Public Member Functions

    static void init ()
     
    static ResourceManagergetSingleton ()
    +static ResourceManagergetSingleton ()
     
    - - - - -

    -Private Member Functions

    void loop ()
     consumes requests Iterates for ever to handle requests. More...
     
    - - - - -

    -Static Private Member Functions

    static void * staticLoop (void *object)
     this function calls loop You can not create a pthread from a member funtion so I use this static function as a helper More...
     
    - - - - - - - - - - - - - - - - - -

    -Private Attributes

    pthread_t myThread
     
    pthread_mutex_t mutexTable
     
    ResourceTable resourceTable
     
    ResourceTextFactory resourceTextFactory
     
    ResourceTextureFactory resourceTextureFactory
     
    ResourceCellFactory resourceCellFactory
     
    WorkQueue< ResourceRequestworkQueue
     
    bool _stop
     
    - - -

    -Static Private Attributes

    static ResourceManager uniqueInstance
     

    Detailed Description

    This is the singleton you should use Requesting resources will deliver a resource pointer event if the resource data is not loaded. You can check if a resource has been loaded checking the status attribute.

    -

    Constructor & Destructor Documentation

    - -
    -
    - - - - - -
    - - - - - - - -
    ResourceManager::ResourceManager ()
    -
    -inline
    -
    - -
    -
    -

    Member Function Documentation

    - -
    -
    - - - - - -
    - - - - - - - -
    ResourceManager * ResourceManager::getSingleton ()
    -
    -static
    -
    - -
    -
    - -
    -
    - - - - - - - -
    bool ResourceManager::hasStopped ()
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    void ResourceManager::init ()
    -
    -static
    -
    - -
    -
    - -
    -
    - - - - - - - -
    void ResourceManager::launch ()
    -
    - -

    launches the resurce manger in its own thread

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    void ResourceManager::loop ()
    -
    -private
    -
    - -

    consumes requests Iterates for ever to handle requests.

    - -
    -
    - -
    -
    - - - - - - - - -
    ResourceCell * ResourceManager::obtainCell (std::string name)
    -
    - -

    request a pointer to a cell resource

    - -
    -
    - -
    -
    - - - - - - - - -
    ResourceText * ResourceManager::obtainText (std::string name)
    -
    - -

    request a pointer to a text resource

    - -
    -
    - -
    -
    - - - - - - - - -
    ResourceTexture * ResourceManager::obtainTexture (std::string name)
    -
    - -

    request a pointer to a texture resource

    - -
    -
    - -
    -
    - - - - - - - - -
    void ResourceManager::releaseCell (ResourceCellresource)
    -
    - -

    release a pointer to a cell resource

    - -
    -
    - -
    -
    - - - - - - - - -
    void ResourceManager::releaseText (ResourceTextresource)
    -
    - -

    release a pointer to a text resource

    - -
    -
    - -
    -
    - - - - - - - - -
    void ResourceManager::releaseTexture (ResourceTextureresource)
    -
    - -

    release a pointer to a texture resource

    - -
    -
    - -
    -
    - - - - - - - - -
    void ResourceManager::setRenderer (LowLevelRenderer2Drenderer)
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - -
    void * ResourceManager::staticLoop (void * object)
    -
    -staticprivate
    -
    - -

    this function calls loop You can not create a pthread from a member funtion so I use this static function as a helper

    - -
    -
    - -
    -
    - - - - - - - -
    void ResourceManager::stop ()
    -
    - -

    stop the resource manager thread

    - -
    -
    -

    Member Data Documentation

    - -
    -
    - - - - - -
    - - - - -
    bool ResourceManager::_stop
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    pthread_mutex_t ResourceManager::mutexTable
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    pthread_t ResourceManager::myThread
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    ResourceCellFactory ResourceManager::resourceCellFactory
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    ResourceTable ResourceManager::resourceTable
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    ResourceTextFactory ResourceManager::resourceTextFactory
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    ResourceTextureFactory ResourceManager::resourceTextureFactory
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    ResourceManager ResourceManager::uniqueInstance
    -
    -staticprivate
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    WorkQueue<ResourceRequest> ResourceManager::workQueue
    -
    -private
    -
    - -
    -
    -
    The documentation for this class was generated from the following files:

    The documentation for this class was generated from the following files: + - + diff --git a/doc/doxy/html/class_resource_manager.js b/doc/doxy/html/class_resource_manager.js index 81a9ed2..3d8caed 100644 --- a/doc/doxy/html/class_resource_manager.js +++ b/doc/doxy/html/class_resource_manager.js @@ -3,12 +3,7 @@ var class_resource_manager = [ "ResourceManager", "class_resource_manager.html#a3b32babd2e81909bbd90d7f2d566fadb", null ], [ "hasStopped", "class_resource_manager.html#aa83c1a5f8d0277cc3c309733f1289f29", null ], [ "launch", "class_resource_manager.html#a9e887254c90e3d6802883f4fedde61f1", null ], - [ "obtainCell", "class_resource_manager.html#af584b73147851d8cc87c0fa48e392102", null ], - [ "obtainText", "class_resource_manager.html#a71969c9e3618796d700b23654caebfc6", null ], - [ "obtainTexture", "class_resource_manager.html#a721f78505ccac9f295c21150d952461c", null ], - [ "releaseCell", "class_resource_manager.html#ac66406a2fed21469f50154f9abd84788", null ], - [ "releaseText", "class_resource_manager.html#a75b591257254fd9583ec034c1d1c5e37", null ], - [ "releaseTexture", "class_resource_manager.html#a47b4a313293c4f2bd398175825a31697", null ], - [ "setRenderer", "class_resource_manager.html#a016d35bfcacaf8b16145cc72dcc75366", null ], + [ "obtain", "class_resource_manager.html#a5930b0efc0f979265a11c2ff58d1c078", null ], + [ "release", "class_resource_manager.html#aa4a9b03566d9d95933d66434d1a7ca77", null ], [ "stop", "class_resource_manager.html#a0344d6d07d7649b5c44b26a1c43b3219", null ] ]; \ No newline at end of file diff --git a/doc/doxy/html/class_resource_request-members.html b/doc/doxy/html/class_resource_request-members.html index 7e3170e..544e5d7 100644 --- a/doc/doxy/html/class_resource_request-members.html +++ b/doc/doxy/html/class_resource_request-members.html @@ -3,15 +3,24 @@ - -OWMAN: Member List + +owman: Member List + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,7 +104,6 @@
    -
    ResourceRequest Member List
    @@ -91,20 +112,21 @@

    This is the complete list of members for ResourceRequest, including all inherited members.

    - - - - - - - - + + + + + +
    getName() const ResourceRequest
    getType() const ResourceRequest
    nameResourceRequestprivate
    operator=(const ResourceRequest &resourceRequest)ResourceRequest
    ResourceRequest()ResourceRequestinline
    ResourceRequest(Type type, std::string name)ResourceRequest
    Type enum nameResourceRequest
    typeResourceRequestprivate
    getName() const (defined in ResourceRequest)ResourceRequest
    getType() const (defined in ResourceRequest)ResourceRequest
    operator=(const ResourceRequest &resourceRequest) (defined in ResourceRequest)ResourceRequest
    ResourceRequest() (defined in ResourceRequest)ResourceRequestinline
    ResourceRequest(Type type, std::string name) (defined in ResourceRequest)ResourceRequest
    Type enum name (defined in ResourceRequest)ResourceRequest
    + - + diff --git a/doc/doxy/html/class_resource_request.html b/doc/doxy/html/class_resource_request.html index 434e659..b9b10a4 100644 --- a/doc/doxy/html/class_resource_request.html +++ b/doc/doxy/html/class_resource_request.html @@ -3,15 +3,24 @@ - -OWMAN: ResourceRequest Class Reference + +owman: ResourceRequest Class Reference + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,225 +104,53 @@
    -
    Public Types | Public Member Functions | -Private Attributes | List of all members
    ResourceRequest Class Reference
    - -

    #include <resource_request.hpp>

    -

    Public Types

    enum  Type { Type::OBTAIN, -Type::RELEASE, -Type::STOP +
    enum  Type { OBTAIN, +RELEASE, +STOP }
     
    - - - + - + - + - + -

    Public Member Functions

     ResourceRequest ()
     
     ResourceRequest (Type type, std::string name)
    ResourceRequest (Type type, std::string name)
     
    ResourceRequest operator= (const ResourceRequest &resourceRequest)
    +ResourceRequest operator= (const ResourceRequest &resourceRequest)
     
    ResourceRequest::Type getType () const
    +ResourceRequest::Type getType () const
     
    std::string getName () const
    +std::string getName () const
     
    - - - - - -

    -Private Attributes

    Type type
     
    std::string name
     
    -

    Member Enumeration Documentation

    - -
    -
    - - - - - -
    - - - - -
    enum ResourceRequest::Type
    -
    -strong
    -
    - - - - -
    Enumerator
    OBTAIN  -
    RELEASE  -
    STOP  -
    - -
    -
    -

    Constructor & Destructor Documentation

    - -
    -
    - - - - - -
    - - - - - - - -
    ResourceRequest::ResourceRequest ()
    -
    -inline
    -
    - -
    -
    - -
    -
    - - - - - - - - - - - - - - - - - - -
    ResourceRequest::ResourceRequest (Type type,
    std::string name 
    )
    -
    - -
    -
    -

    Member Function Documentation

    - -
    -
    - - - - - - - -
    std::string ResourceRequest::getName () const
    -
    - -
    -
    - -
    -
    - - - - - - - -
    ResourceRequest::Type ResourceRequest::getType () const
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    ResourceRequest ResourceRequest::operator= (const ResourceRequestresourceRequest)
    -
    - -
    -
    -

    Member Data Documentation

    - -
    -
    - - - - -
    - - - - -
    std::string ResourceRequest::name
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    Type ResourceRequest::type
    -
    -private
    -
    - -
    -

    The documentation for this class was generated from the following files:
    + - + diff --git a/doc/doxy/html/class_resource_table-members.html b/doc/doxy/html/class_resource_table-members.html index c3edf49..d9ffdff 100644 --- a/doc/doxy/html/class_resource_table-members.html +++ b/doc/doxy/html/class_resource_table-members.html @@ -3,15 +3,24 @@ - -OWMAN: Member List + +owman: Member List + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,7 +104,6 @@
    -
    ResourceTable Member List
    @@ -91,19 +112,21 @@

    This is the complete list of members for ResourceTable, including all inherited members.

    - - - - - - - + + + + + +
    addEntry(std::string name, Resource *resource)ResourceTable
    decEntry(std::string name)ResourceTable
    getCount(std::string name) const ResourceTable
    getResource(std::string name)ResourceTable
    incEntry(std::string name)ResourceTable
    removeEntry(std::string name)ResourceTable
    tableResourceTableprivate
    addEntry(std::string name, Resource *resource) (defined in ResourceTable)ResourceTable
    decEntry(std::string name) (defined in ResourceTable)ResourceTable
    getCount(std::string name) const (defined in ResourceTable)ResourceTable
    getResource(std::string name) (defined in ResourceTable)ResourceTable
    incEntry(std::string name) (defined in ResourceTable)ResourceTable
    removeEntry(std::string name) (defined in ResourceTable)ResourceTable
    + - + diff --git a/doc/doxy/html/class_resource_table.html b/doc/doxy/html/class_resource_table.html index e399ee0..f270ccc 100644 --- a/doc/doxy/html/class_resource_table.html +++ b/doc/doxy/html/class_resource_table.html @@ -3,15 +3,24 @@ - -OWMAN: ResourceTable Class Reference + +owman: ResourceTable Class Reference + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,178 +104,50 @@
    -
    Public Member Functions | -Private Attributes | List of all members
    ResourceTable Class Reference
    - -

    #include <resource_table.hpp>

    - + - + - + - + - + - + -

    Public Member Functions

    unsigned int getCount (std::string name) const
    +unsigned int getCount (std::string name) const
     
    void addEntry (std::string name, Resource *resource)
    +void addEntry (std::string name, Resource *resource)
     
    void removeEntry (std::string name)
    +void removeEntry (std::string name)
     
    void incEntry (std::string name)
    +void incEntry (std::string name)
     
    void decEntry (std::string name)
    +void decEntry (std::string name)
     
    ResourcegetResource (std::string name)
    +ResourcegetResource (std::string name)
     
    - - -

    -Private Attributes

    std::map< std::string,
    -ResourceTableEntry
    table
     
    -

    Member Function Documentation

    - -
    -
    - - - - - - - - - - - - - - - - - - -
    void ResourceTable::addEntry (std::string name,
    Resourceresource 
    )
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    void ResourceTable::decEntry (std::string name)
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    unsigned int ResourceTable::getCount (std::string name) const
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    Resource * ResourceTable::getResource (std::string name)
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    void ResourceTable::incEntry (std::string name)
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    void ResourceTable::removeEntry (std::string name)
    -
    - -
    -
    -

    Member Data Documentation

    - -
    -
    - - - - - -
    - - - - -
    std::map< std::string, ResourceTableEntry > ResourceTable::table
    -
    -private
    -
    - -
    -

    The documentation for this class was generated from the following files:
    + - + diff --git a/doc/doxy/html/class_resource_table_entry-members.html b/doc/doxy/html/class_resource_table_entry-members.html index 2431ee2..e4ae021 100644 --- a/doc/doxy/html/class_resource_table_entry-members.html +++ b/doc/doxy/html/class_resource_table_entry-members.html @@ -3,15 +3,24 @@ - -OWMAN: Member List + +owman: Member List + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,7 +104,6 @@
    -
    ResourceTableEntry Member List
    @@ -91,23 +112,17 @@

    This is the complete list of members for ResourceTableEntry, including all inherited members.

    - - - - - - - - - - - + +
    countResourceTableEntryprivate
    decCount()ResourceTableEntryprivate
    getCount() const ResourceTableEntryprivate
    getPointer() const ResourceTableEntryprivate
    incCount()ResourceTableEntryprivate
    resourceResourceTableEntryprivate
    ResourceTable classResourceTableEntryfriend
    ResourceTableEntry()ResourceTableEntryinline
    ResourceTableEntry(Resource *resource)ResourceTableEntryprivate
    setCount(unsigned int count)ResourceTableEntryprivate
    setPointer(Resource *resource)ResourceTableEntryprivate
    ResourceTable (defined in ResourceTableEntry)ResourceTableEntryfriend
    ResourceTableEntry() (defined in ResourceTableEntry)ResourceTableEntryinline
    + - + diff --git a/doc/doxy/html/class_resource_table_entry.html b/doc/doxy/html/class_resource_table_entry.html index 6cb69b4..5f0e40a 100644 --- a/doc/doxy/html/class_resource_table_entry.html +++ b/doc/doxy/html/class_resource_table_entry.html @@ -3,15 +3,24 @@ - -OWMAN: ResourceTableEntry Class Reference + +owman: ResourceTableEntry Class Reference + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,316 +104,35 @@
    -
    -Public Member Functions | -Private Member Functions | -Private Attributes | Friends | List of all members
    ResourceTableEntry Class Reference
    - -

    #include <resource_table_entry.hpp>

    - - - -

    -Public Member Functions

     ResourceTableEntry ()
     
    - - - - - - - - - - - - - - - -

    -Private Member Functions

     ResourceTableEntry (Resource *resource)
     
    unsigned int getCount () const
     
    void setCount (unsigned int count)
     
    void incCount ()
     
    void decCount ()
     
    ResourcegetPointer () const
     
    void setPointer (Resource *resource)
     
    - - - - - -

    -Private Attributes

    unsigned int count
     
    Resourceresource
     
    - +

    Friends

    class ResourceTable
    +class ResourceTable
     
    -

    Constructor & Destructor Documentation

    - -
    -
    - - - - - -
    - - - - - - - -
    ResourceTableEntry::ResourceTableEntry ()
    -
    -inline
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - -
    ResourceTableEntry::ResourceTableEntry (Resourceresource)
    -
    -private
    -
    - -
    -
    -

    Member Function Documentation

    - -
    -
    - - - - - -
    - - - - - - - -
    void ResourceTableEntry::decCount ()
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    unsigned int ResourceTableEntry::getCount () const
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    Resource * ResourceTableEntry::getPointer () const
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    void ResourceTableEntry::incCount ()
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - -
    void ResourceTableEntry::setCount (unsigned int count)
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - -
    void ResourceTableEntry::setPointer (Resourceresource)
    -
    -private
    -
    - -
    -
    -

    Friends And Related Function Documentation

    - -
    -
    - - - - - -
    - - - - -
    friend class ResourceTable
    -
    -friend
    -
    - -
    -
    -

    Member Data Documentation

    - -
    -
    - - - - - -
    - - - - -
    unsigned int ResourceTableEntry::count
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    Resource* ResourceTableEntry::resource
    -
    -private
    -
    - -
    -

    The documentation for this class was generated from the following files:
    + - + diff --git a/doc/doxy/html/class_resource_text-members.html b/doc/doxy/html/class_resource_text-members.html index adb21b7..f6e6b81 100644 --- a/doc/doxy/html/class_resource_text-members.html +++ b/doc/doxy/html/class_resource_text-members.html @@ -3,15 +3,24 @@ - -OWMAN: Member List + +owman: Member List + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,7 +104,6 @@
    -
    ResourceText Member List
    @@ -91,30 +112,30 @@

    This is the complete list of members for ResourceText, including all inherited members.

    - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + +
    destroyDispatcher()ResourceTextvirtual
    free()ResourceTextprotectedvirtual
    getName() const Resource
    getStatus() const Resource
    getText() const ResourceText
    load()ResourceTextprotectedvirtual
    myFactoryResourceTextprivate
    nameResourceprotected
    Resource()Resource
    ResourceManager classResourceTextfriend
    ResourceText()ResourceText
    ResourceTextFactory classResourceTextfriend
    setName(std::string name)Resourceprotected
    statusResourceprotected
    Status enum nameResource
    textResourceTextprivate
    ~Resource()Resourceinlinevirtual
    ~ResourceText()ResourceTextinline
    free() (defined in ResourceText)ResourceTextprotectedvirtual
    getName() const (defined in Resource)Resource
    getStatus() const (defined in Resource)Resource
    getText() const (defined in ResourceText)ResourceText
    load() (defined in ResourceText)ResourceTextprotectedvirtual
    name (defined in Resource)Resourceprotected
    Resource(const std::string &name) (defined in Resource)Resource
    ResourceManager (defined in ResourceText)ResourceTextfriend
    ResourceText(const std::string &name) (defined in ResourceText)ResourceText
    ResourceTextFactory (defined in ResourceText)ResourceTextfriend
    setName(std::string name) (defined in Resource)Resourceprotected
    Status enum name (defined in Resource)Resource
    status (defined in Resource)Resourceprotected
    ~Resource() (defined in Resource)Resourceinlinevirtual
    ~ResourceText() (defined in ResourceText)ResourceTextinline
    + - + diff --git a/doc/doxy/html/class_resource_text.html b/doc/doxy/html/class_resource_text.html index 8604fef..7653074 100644 --- a/doc/doxy/html/class_resource_text.html +++ b/doc/doxy/html/class_resource_text.html @@ -3,15 +3,24 @@ - -OWMAN: ResourceText Class Reference + +owman: ResourceText Class Reference + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,20 +104,16 @@
    -
    Public Member Functions | Protected Member Functions | -Private Attributes | Friends | List of all members
    ResourceText Class Reference
    - -

    #include <resource_text.hpp>

    Inheritance diagram for ResourceText:
    @@ -108,291 +126,81 @@ - - - + + + - - - - - - - - - + + + + + - -

    Public Member Functions

     ResourceText ()
     
    std::string getText () const
    ResourceText (const std::string &name)
     
    +std::string getText () const
     
    void destroyDispatcher ()
     
     ~ResourceText ()
     
    - Public Member Functions inherited from Resource
     Resource ()
     
    std::string getName () const
     
    Resource::Status getStatus () const
    Resource (const std::string &name)
     
    +std::string getName () const
     
    +Resource::Status getStatus () const
     
    virtual ~Resource ()
     
    - + - + - +

    Protected Member Functions

    void load ()
    +void load ()
     
    void free ()
    +void free ()
     
    - Protected Member Functions inherited from Resource
    void setName (std::string name)
    +void setName (std::string name)
     
    - - - - - -

    -Private Attributes

    ResourceTextFactorymyFactory
     
    std::string text
     
    - + - +

    Friends

    class ResourceTextFactory
    +class ResourceTextFactory
     
    class ResourceManager
    +class ResourceManager
     
    - - + - +

    Additional Inherited Members

    - Public Types inherited from Resource
    enum  Status {
    -  Status::UNKOWN, -Status::STORED, -Status::QUEUED, -Status::LOADING, -
    -  Status::LOADED, -Status::READY, -Status::SAVING -
    +
    enum  Status {
    +  UNKOWN, +STORED, +QUEUED, +LOADING, +
    +  LOADED, +SAVING +
    }
     
    - Protected Attributes inherited from Resource
    std::string name
    +std::string name
     
    Status status
    +Status status
     
    -

    Constructor & Destructor Documentation

    - -
    -
    - - - - - - - -
    ResourceText::ResourceText ()
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    ResourceText::~ResourceText ()
    -
    -inline
    -
    - -
    -
    -

    Member Function Documentation

    - -
    -
    - - - - - -
    - - - - - - - -
    void ResourceText::destroyDispatcher ()
    -
    -virtual
    -
    - -

    Implements Resource.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    void ResourceText::free ()
    -
    -protectedvirtual
    -
    - -

    Implements Resource.

    - -
    -
    - -
    -
    - - - - - - - -
    std::string ResourceText::getText () const
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    void ResourceText::load ()
    -
    -protectedvirtual
    -
    - -

    Implements Resource.

    - -
    -
    -

    Friends And Related Function Documentation

    - -
    -
    - - - - - -
    - - - - -
    friend class ResourceManager
    -
    -friend
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    friend class ResourceTextFactory
    -
    -friend
    -
    - -
    -
    -

    Member Data Documentation

    - -
    -
    - - - - - -
    - - - - -
    ResourceTextFactory* ResourceText::myFactory
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    std::string ResourceText::text
    -
    -private
    -
    - -
    -

    The documentation for this class was generated from the following files:
    +
    - + diff --git a/doc/doxy/html/class_resource_text.js b/doc/doxy/html/class_resource_text.js index 0eb11f9..76829da 100644 --- a/doc/doxy/html/class_resource_text.js +++ b/doc/doxy/html/class_resource_text.js @@ -1,8 +1,7 @@ var class_resource_text = [ - [ "ResourceText", "class_resource_text.html#a49995d8e8c136f80c3add872e9c8d430", null ], + [ "ResourceText", "class_resource_text.html#af027864b90802dfa8294d01f69b44b7c", null ], [ "~ResourceText", "class_resource_text.html#ae5c3b6356d05b2ac87f44d763067b6ed", null ], - [ "destroyDispatcher", "class_resource_text.html#ad6dff24c7cef9e2b1ef0b533b7cb3592", null ], [ "free", "class_resource_text.html#a8beeae30316a57629a545294a8e8da8d", null ], [ "getText", "class_resource_text.html#aa0b1227d39cc8c3e11735879f5c83b32", null ], [ "load", "class_resource_text.html#acedd72e9b86c323dad8e20ffe8b13174", null ], diff --git a/doc/doxy/html/class_resource_text.png b/doc/doxy/html/class_resource_text.png index f3c0e46..851887c 100644 Binary files a/doc/doxy/html/class_resource_text.png and b/doc/doxy/html/class_resource_text.png differ diff --git a/doc/doxy/html/class_resource_texture-members.html b/doc/doxy/html/class_resource_texture-members.html index 56edf25..0f088c8 100644 --- a/doc/doxy/html/class_resource_texture-members.html +++ b/doc/doxy/html/class_resource_texture-members.html @@ -3,15 +3,24 @@ - -OWMAN: Member List + +owman: Member List + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,7 +104,6 @@
    -
    ResourceTexture Member List
    @@ -91,34 +112,32 @@

    This is the complete list of members for ResourceTexture, including all inherited members.

    - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + +
    destroyDispatcher()ResourceTexturevirtual
    free()ResourceTextureprotectedvirtual
    getName() const Resource
    getStatus() const Resource
    getTexture()ResourceTexture
    heightResourceTextureprivate
    imageDataResourceTextureprivate
    load()ResourceTextureprotectedvirtual
    loadToGraphicsCard()ResourceTexture
    myFactoryResourceTextureprivate
    nameResourceprotected
    Resource()Resource
    ResourceManager classResourceTexturefriend
    ResourceTexture()ResourceTexture
    ResourceTextureFactory classResourceTexturefriend
    setName(std::string name)Resourceprotected
    Status enum nameResource
    statusResourceprotected
    textureResourceTextureprivate
    widthResourceTextureprivate
    ~Resource()Resourceinlinevirtual
    ~ResourceTexture()ResourceTextureinline
    free() (defined in ResourceTexture)ResourceTextureprotectedvirtual
    getHeight() const (defined in ResourceTexture)ResourceTexture
    getName() const (defined in Resource)Resource
    getStatus() const (defined in Resource)Resource
    getTextureData() const (defined in ResourceTexture)ResourceTexture
    getWidth() const (defined in ResourceTexture)ResourceTexture
    load() (defined in ResourceTexture)ResourceTextureprotectedvirtual
    name (defined in Resource)Resourceprotected
    Resource(const std::string &name) (defined in Resource)Resource
    ResourceManager (defined in ResourceTexture)ResourceTexturefriend
    ResourceTexture(const std::string &name) (defined in ResourceTexture)ResourceTexture
    ResourceTextureFactory (defined in ResourceTexture)ResourceTexturefriend
    setName(std::string name) (defined in Resource)Resourceprotected
    status (defined in Resource)Resourceprotected
    Status enum name (defined in Resource)Resource
    ~Resource() (defined in Resource)Resourceinlinevirtual
    ~ResourceTexture() (defined in ResourceTexture)ResourceTextureinline
    + - + diff --git a/doc/doxy/html/class_resource_texture.html b/doc/doxy/html/class_resource_texture.html index c2de81f..fdd39d9 100644 --- a/doc/doxy/html/class_resource_texture.html +++ b/doc/doxy/html/class_resource_texture.html @@ -3,15 +3,24 @@ - -OWMAN: ResourceTexture Class Reference + +owman: ResourceTexture Class Reference + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,12 +104,10 @@
    -
    Public Member Functions | Protected Member Functions | -Private Attributes | Friends | List of all members
    @@ -111,376 +131,89 @@ - - - - - - - - - - + + + + + + + + - - - - - + + + + + - -

    Public Member Functions

     ResourceTexture ()
     
    LowLevelRenderer2D::TexturegetTexture ()
     
    void loadToGraphicsCard ()
     
    void destroyDispatcher ()
     
     ~ResourceTexture ()
     
    ResourceTexture (const std::string &name)
     
    +const unsigned char * getTextureData () const
     
    +int getWidth () const
     
    +int getHeight () const
     
    - Public Member Functions inherited from Resource
     Resource ()
     
    std::string getName () const
     
    Resource::Status getStatus () const
    Resource (const std::string &name)
     
    +std::string getName () const
     
    +Resource::Status getStatus () const
     
    virtual ~Resource ()
     
    - + - + - +

    Protected Member Functions

    void load ()
    +void load ()
     
    void free ()
    +void free ()
     
    - Protected Member Functions inherited from Resource
    void setName (std::string name)
    +void setName (std::string name)
     
    - - - - - - - - - - - -

    -Private Attributes

    unsigned char * imageData
     
    LowLevelRenderer2D::Texture texture
     
    int width
     
    int height
     
    ResourceTextureFactorymyFactory
     
    - + - +

    Friends

    class ResourceTextureFactory
    +class ResourceTextureFactory
     
    class ResourceManager
    +class ResourceManager
     
    - - + - +

    Additional Inherited Members

    - Public Types inherited from Resource
    enum  Status {
    -  Status::UNKOWN, -Status::STORED, -Status::QUEUED, -Status::LOADING, -
    -  Status::LOADED, -Status::READY, -Status::SAVING -
    +
    enum  Status {
    +  UNKOWN, +STORED, +QUEUED, +LOADING, +
    +  LOADED, +SAVING +
    }
     
    - Protected Attributes inherited from Resource
    std::string name
    +std::string name
     
    Status status
    +Status status
     

    Detailed Description

    Represents a resource texture Since OpenGL does not allow to make any call from any other thread other than the main thread, the resource manager can not load anything to video memory. So for this resource, to be LOADED means to be loaded in main memory and to be READY means to be loaded in video memory.

    -

    Constructor & Destructor Documentation

    - -
    -
    - - - - - - - -
    ResourceTexture::ResourceTexture ()
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    ResourceTexture::~ResourceTexture ()
    -
    -inline
    -
    - -
    -
    -

    Member Function Documentation

    - -
    -
    - - - - - -
    - - - - - - - -
    void ResourceTexture::destroyDispatcher ()
    -
    -virtual
    -
    - -

    Implements Resource.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    void ResourceTexture::free ()
    -
    -protectedvirtual
    -
    - -

    Implements Resource.

    - -
    -
    - -
    -
    - - - - - - - -
    LowLevelRenderer2D::Texture * ResourceTexture::getTexture ()
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    void ResourceTexture::load ()
    -
    -protectedvirtual
    -
    - -

    Implements Resource.

    - -
    -
    - -
    -
    - - - - - - - -
    void ResourceTexture::loadToGraphicsCard ()
    -
    - -
    -
    -

    Friends And Related Function Documentation

    - -
    -
    - - - - - -
    - - - - -
    friend class ResourceManager
    -
    -friend
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    friend class ResourceTextureFactory
    -
    -friend
    -
    - -
    -
    -

    Member Data Documentation

    - -
    -
    - - - - - -
    - - - - -
    int ResourceTexture::height
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    unsigned char* ResourceTexture::imageData
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    ResourceTextureFactory* ResourceTexture::myFactory
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    LowLevelRenderer2D::Texture ResourceTexture::texture
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    int ResourceTexture::width
    -
    -private
    -
    - -
    -
    -
    The documentation for this class was generated from the following files:

    The documentation for this class was generated from the following files:
    + - + diff --git a/doc/doxy/html/class_resource_texture.js b/doc/doxy/html/class_resource_texture.js index afb829b..5b1cfb5 100644 --- a/doc/doxy/html/class_resource_texture.js +++ b/doc/doxy/html/class_resource_texture.js @@ -1,12 +1,12 @@ var class_resource_texture = [ - [ "ResourceTexture", "class_resource_texture.html#a2a0b9d7eda9d5a302228ec019a7eeba4", null ], + [ "ResourceTexture", "class_resource_texture.html#a15fe0d2b6f0249130a736d9fe3f51973", null ], [ "~ResourceTexture", "class_resource_texture.html#a4890287de09227bd7edaab0095881f00", null ], - [ "destroyDispatcher", "class_resource_texture.html#a01e5f29128a800981f74c525dc6a7003", null ], [ "free", "class_resource_texture.html#a21ed35a84be06c5e0cdf3f1141abc005", null ], - [ "getTexture", "class_resource_texture.html#a969b484d9420210b577c510d3a1f2499", null ], + [ "getHeight", "class_resource_texture.html#a63d2c651de91c094af10c9db3ed83265", null ], + [ "getTextureData", "class_resource_texture.html#afcf51152f3909e998040fc0505f6b8fc", null ], + [ "getWidth", "class_resource_texture.html#a9e8a8f89f9330b5366e1e1038d3348ac", null ], [ "load", "class_resource_texture.html#a080cd1ffb1dedf0c2024cabdc808f39a", null ], - [ "loadToGraphicsCard", "class_resource_texture.html#a96e373d53e2af54ba43c0935e64b3c52", null ], [ "ResourceManager", "class_resource_texture.html#a54c1252abc87a78a301e6b6984470408", null ], [ "ResourceTextureFactory", "class_resource_texture.html#abeb70bc0a9997326b5ea07d325becac2", null ] ]; \ No newline at end of file diff --git a/doc/doxy/html/class_resource_texture.png b/doc/doxy/html/class_resource_texture.png index bb2ae0d..89d33b2 100644 Binary files a/doc/doxy/html/class_resource_texture.png and b/doc/doxy/html/class_resource_texture.png differ diff --git a/doc/doxy/html/class_sprite-members.html b/doc/doxy/html/class_sprite-members.html index cf77f8a..fa594c4 100644 --- a/doc/doxy/html/class_sprite-members.html +++ b/doc/doxy/html/class_sprite-members.html @@ -3,15 +3,24 @@ - -OWMAN: Member List + +owman: Member List + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,7 +104,6 @@
    -
    Sprite Member List
    @@ -91,43 +112,27 @@

    This is the complete list of members for Sprite, including all inherited members.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + +
    becomeReady() const Spritevirtual
    createXmlNode(rapidxml::xml_document<> *doc)Spritevirtual
    destroyDispatcher()Spritevirtual
    draw() const Spritevirtual
    Entity classSpritefriend
    getPosition() const GraphicsComponent
    getPosition()GraphicsComponent
    getPriority() const GraphicsComponent
    getScale() const GraphicsComponent
    GraphicsComponent()GraphicsComponentinline
    GraphicsSystem classSpritefriend
    isLoaded() const Spritevirtual
    isReady() const Spritevirtual
    isVisible() const GraphicsComponent
    myEntityGraphicsComponentprotected
    myFactorySpriteprivate
    myGraphicsSystemGraphicsComponentprotected
    positionGraphicsComponentprotected
    priorityGraphicsComponentprotected
    resourceTextureSpriteprivate
    scaleGraphicsComponentprotected
    setPosition(const Vec2f &position)GraphicsComponent
    setPriority(int priority)GraphicsComponent
    setScale(const Vec2f &scale)GraphicsComponent
    setVisible(bool visible)GraphicsComponent
    Sprite(SpriteFactory *factory)Spriteinline
    SpriteFactory classSpritefriend
    update(unsigned int delta)Spriteinlinevirtual
    visibleGraphicsComponentprotected
    ~GraphicsComponent()GraphicsComponentinlinevirtual
    ~Sprite()Sprite
    Entity (defined in Sprite)Spritefriend
    getAnimIndex(const std::string &animName) const (defined in Sprite)Sprite
    getGraphicsSystem() (defined in Sprite)Sprite
    getName() const (defined in Sprite)Sprite
    getSpriteManager() (defined in Sprite)Sprite
    GraphicsSystem (defined in Sprite)Spritefriend
    isReady() const Sprite
    Sprite(SpriteManager *spriteManager, const std::string &name) (defined in Sprite)Sprite
    SpriteManager (defined in Sprite)Spritefriend
    SpriteStatus (defined in Sprite)Spritefriend
    update() (defined in Sprite)Sprite
    ~Sprite() (defined in Sprite)Sprite
    + - + diff --git a/doc/doxy/html/class_sprite.html b/doc/doxy/html/class_sprite.html index 143e71d..5058797 100644 --- a/doc/doxy/html/class_sprite.html +++ b/doc/doxy/html/class_sprite.html @@ -3,15 +3,24 @@ - -OWMAN: Sprite Class Reference + +owman: Sprite Class Reference + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,11 +104,9 @@
    -
    Public Member Functions | -Private Attributes | Friends | List of all members
    @@ -98,446 +118,63 @@ More...

    #include <sprite.hpp>

    -
    -Inheritance diagram for Sprite:
    -
    -
    - - -GraphicsComponent - -
    - - - - - - - - + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    Public Member Functions

     Sprite (SpriteFactory *factory)
     
    void update (unsigned int delta)
     
    void draw () const
     
    bool isReady () const
     return if this components is ready To be ready means that is has been loaded to video \ memory More...
    Sprite (SpriteManager *spriteManager, const std::string &name)
     
    +SpriteManagergetSpriteManager ()
     
    +GraphicsSystemgetGraphicsSystem ()
     
    +void update ()
     
    +bool isReady () const
     return if this component is ready
     
    bool isLoaded () const
     return if this component is loaded To be loaded means that it has been loaded to main \ memory More...
     
    void becomeReady () const
     load to video memory Once the resource of this component has been loaded \ into main memory it has to be loaded to video memory \ this functions loads it into video memory More...
     
    rapidxml::xml_nodecreateXmlNode (rapidxml::xml_document<> *doc)
     Creates a graphics XML node Returns an XML node representing the class itself. More...
     
     ~Sprite ()
     
    void destroyDispatcher ()
     this will call to the corresponding GraphicsSystem function \ in charge of deleting this GraphicsComponent More...
     
    - Public Member Functions inherited from GraphicsComponent
     GraphicsComponent ()
     
    bool isVisible () const
     
    void setVisible (bool visible)
     
    const Vec2fgetPosition () const
     
    Vec2fgetPosition ()
     
    Vec2f getScale () const
     
    void setPosition (const Vec2f &position)
     
    void setScale (const Vec2f &scale)
     
    int getPriority () const
     
    void setPriority (int priority)
     
    virtual ~GraphicsComponent ()
     
    - - - - - + + + +

    -Private Attributes

    SpriteFactorymyFactory
     
    ResourceTextureresourceTexture
     
    +const std::string & getName () const
     
    +unsigned getAnimIndex (const std::string &animName) const
     
    - + - + - - -

    Friends

    class Entity
    +class Entity
     
    class GraphicsSystem
    +class GraphicsSystem
     
    class SpriteFactory
     
    - - - - - - - - - - - - - - + + + +

    -Additional Inherited Members

    - Protected Attributes inherited from GraphicsComponent
    EntitymyEntity
     
    GraphicsSystemmyGraphicsSystem
     
    bool visible
     
    int priority
     
    Vec2f position
     
    Vec2f scale
     
    +class SpriteManager
     
    +class SpriteStatus
     

    Detailed Description

    Represents a static sprite This sprite has no animations.

    -

    Constructor & Destructor Documentation

    - -
    -
    - - - - - -
    - - - - - - - - -
    Sprite::Sprite (SpriteFactoryfactory)
    -
    -inline
    -
    - -
    -
    - -
    -
    - - - - - - - -
    Sprite::~Sprite ()
    -
    - -
    -
    -

    Member Function Documentation

    - -
    -
    - - - - - -
    - - - - - - - -
    void Sprite::becomeReady () const
    -
    -virtual
    -
    - -

    load to video memory Once the resource of this component has been loaded \ into main memory it has to be loaded to video memory \ this functions loads it into video memory

    - -

    Implements GraphicsComponent.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - -
    xml_node * Sprite::createXmlNode (rapidxml::xml_document<> * doc)
    -
    -virtual
    -
    - -

    Creates a graphics XML node Returns an XML node representing the class itself.

    -
    Parameters
    - - -
    TheXML document
    -
    -
    -
    Returns
    The XML node
    - -

    Implements GraphicsComponent.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    void Sprite::destroyDispatcher ()
    -
    -virtual
    -
    - -

    this will call to the corresponding GraphicsSystem function \ in charge of deleting this GraphicsComponent

    - -

    Implements GraphicsComponent.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    void Sprite::draw () const
    -
    -virtual
    -
    - -

    Implements GraphicsComponent.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    bool Sprite::isLoaded () const
    -
    -virtual
    -
    - -

    return if this component is loaded To be loaded means that it has been loaded to main \ memory

    - -

    Implements GraphicsComponent.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    bool Sprite::isReady () const
    -
    -virtual
    -
    - -

    return if this components is ready To be ready means that is has been loaded to video \ memory

    - -

    Implements GraphicsComponent.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - -
    void Sprite::update (unsigned int delta)
    -
    -inlinevirtual
    -
    - -

    Implements GraphicsComponent.

    - -
    -
    -

    Friends And Related Function Documentation

    - -
    -
    - - - - - -
    - - - - -
    friend class Entity
    -
    -friend
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    friend class GraphicsSystem
    -
    -friend
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    friend class SpriteFactory
    -
    -friend
    -
    - -
    -
    -

    Member Data Documentation

    - -
    -
    - - - - - -
    - - - - -
    SpriteFactory* Sprite::myFactory
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    ResourceTexture* Sprite::resourceTexture
    -
    -private
    -
    - -
    -
    -
    The documentation for this class was generated from the following files:

    The documentation for this class was generated from the following files:
    + - + diff --git a/doc/doxy/html/class_sprite.js b/doc/doxy/html/class_sprite.js index c715434..5aa1764 100644 --- a/doc/doxy/html/class_sprite.js +++ b/doc/doxy/html/class_sprite.js @@ -1,15 +1,15 @@ var class_sprite = [ - [ "Sprite", "class_sprite.html#a5fffb13011271a6e21395ead21ece1c1", null ], + [ "Sprite", "class_sprite.html#aec20feea501ca97a8d67a64806ef0eac", null ], [ "~Sprite", "class_sprite.html#a8accab430f9d90ae5117b57d67e32b84", null ], - [ "becomeReady", "class_sprite.html#a2a98589b812f519b57db97ad96ab7e15", null ], - [ "createXmlNode", "class_sprite.html#a59ed6e725aef75c23866f3c01fff53f4", null ], - [ "destroyDispatcher", "class_sprite.html#a6d304b7aee41b4da7eecf62b4bb85c90", null ], - [ "draw", "class_sprite.html#adf081374d1c56dd5038b80ffa98d6dba", null ], - [ "isLoaded", "class_sprite.html#a6c1f57f78b0a40a70a941266ebe6b483", null ], + [ "getAnimIndex", "class_sprite.html#a2cf91416bcd9660185ae36752da58044", null ], + [ "getGraphicsSystem", "class_sprite.html#ac0c92c630378fc5ff217001846a5790a", null ], + [ "getName", "class_sprite.html#a1af303fdeb0981474d40f6b7d8fa2bab", null ], + [ "getSpriteManager", "class_sprite.html#a3ce29edb45dc385f23dc96bfbed7c931", null ], [ "isReady", "class_sprite.html#a0ebc48730a409500def754ec4476bb51", null ], - [ "update", "class_sprite.html#a8aa32dd2bc202b1084149e1d657e93f9", null ], + [ "update", "class_sprite.html#a6d0f7e628b4ea8540697605fff906759", null ], [ "Entity", "class_sprite.html#a614439ccac0344926adc4c0165d64060", null ], [ "GraphicsSystem", "class_sprite.html#a9778d1ee5d16b1ce8afda909275daae0", null ], - [ "SpriteFactory", "class_sprite.html#a85be45a4d6185f821bccbbf67a35dd5a", null ] + [ "SpriteManager", "class_sprite.html#ac495e8b586409665102aa3021200d453", null ], + [ "SpriteStatus", "class_sprite.html#a5c5d39d7f9ef07fea626f5cbc549eeca", null ] ]; \ No newline at end of file diff --git a/doc/doxy/html/class_sprite_manager-members.html b/doc/doxy/html/class_sprite_manager-members.html new file mode 100644 index 0000000..517a15a --- /dev/null +++ b/doc/doxy/html/class_sprite_manager-members.html @@ -0,0 +1,133 @@ + + + + + + +owman: Member List + + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    owman +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    +
    SpriteManager Member List
    +
    +
    + +

    This is the complete list of members for SpriteManager, including all inherited members.

    + + + + + + + + +
    getGraphicsSystem() (defined in SpriteManager)SpriteManager
    GraphicsSystem (defined in SpriteManager)SpriteManagerfriend
    instanceSprite(const std::string name) (defined in SpriteManager)SpriteManager
    releaseSpriteInstance(SpriteStatus *spriteStatus) (defined in SpriteManager)SpriteManager
    SpriteManager(GraphicsSystem *graphicsSystem) (defined in SpriteManager)SpriteManager
    spritesPath (defined in SpriteManager)SpriteManagerstatic
    update(float delta) (defined in SpriteManager)SpriteManager
    +
    + + + + diff --git a/doc/doxy/html/class_sprite_manager.html b/doc/doxy/html/class_sprite_manager.html new file mode 100644 index 0000000..bf6b00c --- /dev/null +++ b/doc/doxy/html/class_sprite_manager.html @@ -0,0 +1,164 @@ + + + + + + +owman: SpriteManager Class Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    owman +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    SpriteManager Class Reference
    +
    +
    + + + + + + + + + + + + +

    +Public Member Functions

    SpriteManager (GraphicsSystem *graphicsSystem)
     
    +GraphicsSystemgetGraphicsSystem ()
     
    +SpriteStatusinstanceSprite (const std::string name)
     
    +void releaseSpriteInstance (SpriteStatus *spriteStatus)
     
    +void update (float delta)
     
    + + + +

    +Static Public Attributes

    +static const std::string spritesPath = "sprites"
     
    + + + +

    +Friends

    +class GraphicsSystem
     
    +
    The documentation for this class was generated from the following files: +
    +
    + + + + diff --git a/doc/doxy/html/class_sprite_manager.js b/doc/doxy/html/class_sprite_manager.js new file mode 100644 index 0000000..c6a0b67 --- /dev/null +++ b/doc/doxy/html/class_sprite_manager.js @@ -0,0 +1,9 @@ +var class_sprite_manager = +[ + [ "SpriteManager", "class_sprite_manager.html#a5bbf1ecbde1ee55efc41f885a41f0b6d", null ], + [ "getGraphicsSystem", "class_sprite_manager.html#a0157331abf3393f13dee2607218fcccf", null ], + [ "instanceSprite", "class_sprite_manager.html#aed2e8b407f8746643f198e423c979851", null ], + [ "releaseSpriteInstance", "class_sprite_manager.html#a479d24303565f565c7c1f186f464e671", null ], + [ "update", "class_sprite_manager.html#a5eed44c638be6148c0537c140318b96a", null ], + [ "GraphicsSystem", "class_sprite_manager.html#a9778d1ee5d16b1ce8afda909275daae0", null ] +]; \ No newline at end of file diff --git a/doc/doxy/html/class_sprite_status-members.html b/doc/doxy/html/class_sprite_status-members.html new file mode 100644 index 0000000..946245a --- /dev/null +++ b/doc/doxy/html/class_sprite_status-members.html @@ -0,0 +1,159 @@ + + + + + + +owman: Member List + + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    owman +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    +
    SpriteStatus Member List
    +
    +
    + +

    This is the complete list of members for SpriteStatus, including all inherited members.

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    createXmlNode(rapidxml::xml_document<> *doc)SpriteStatusvirtual
    destroyDispatcher()SpriteStatusvirtual
    draw() const (defined in SpriteStatus)SpriteStatusvirtual
    getAnimationIndex() const (defined in SpriteStatus)SpriteStatus
    getCurrentFrame() const (defined in SpriteStatus)SpriteStatus
    getElapsedTime() const (defined in SpriteStatus)SpriteStatus
    getGraphicsSystem() (defined in GraphicsComponent)GraphicsComponent
    getPosition() const (defined in GraphicsComponent)GraphicsComponent
    getPosition() (defined in GraphicsComponent)GraphicsComponent
    getPriority() const (defined in GraphicsComponent)GraphicsComponent
    getScale() const (defined in GraphicsComponent)GraphicsComponent
    getSprite() (defined in SpriteStatus)SpriteStatus
    getSpriteManager() (defined in SpriteStatus)SpriteStatus
    GraphicsComponent(GraphicsSystem *graphicsSystem) (defined in GraphicsComponent)GraphicsComponent
    isReady() const SpriteStatusvirtual
    isVisible() const (defined in GraphicsComponent)GraphicsComponent
    myEntity (defined in GraphicsComponent)GraphicsComponentprotected
    myGraphicsSystem (defined in GraphicsComponent)GraphicsComponentprotected
    position (defined in GraphicsComponent)GraphicsComponentprotected
    priority (defined in GraphicsComponent)GraphicsComponentprotected
    scale (defined in GraphicsComponent)GraphicsComponentprotected
    setAnimation(const std::string &animName) (defined in SpriteStatus)SpriteStatus
    setAnimation(unsigned animIndex) (defined in SpriteStatus)SpriteStatus
    setCurrentFrame(int frame) (defined in SpriteStatus)SpriteStatus
    setElapsedTime(float time) (defined in SpriteStatus)SpriteStatus
    setPosition(const Vec2f &position) (defined in GraphicsComponent)GraphicsComponent
    setPriority(int priority) (defined in GraphicsComponent)GraphicsComponent
    setScale(const Vec2f &scale) (defined in GraphicsComponent)GraphicsComponent
    setVisible(bool visible) (defined in GraphicsComponent)GraphicsComponent
    SpriteStatus(Sprite *sprite) (defined in SpriteStatus)SpriteStatus
    update(float delta) (defined in SpriteStatus)SpriteStatusvirtual
    visible (defined in GraphicsComponent)GraphicsComponentprotected
    ~GraphicsComponent() (defined in GraphicsComponent)GraphicsComponentinlinevirtual
    +
    + + + + diff --git a/doc/doxy/html/class_sprite_status.html b/doc/doxy/html/class_sprite_status.html new file mode 100644 index 0000000..c9d7b03 --- /dev/null +++ b/doc/doxy/html/class_sprite_status.html @@ -0,0 +1,283 @@ + + + + + + +owman: SpriteStatus Class Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    owman +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    SpriteStatus Class Reference
    +
    +
    +
    +Inheritance diagram for SpriteStatus:
    +
    +
    + + +GraphicsComponent + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Public Member Functions

    SpriteStatus (Sprite *sprite)
     
    +int getCurrentFrame () const
     
    +float getElapsedTime () const
     
    +void setCurrentFrame (int frame)
     
    +void setElapsedTime (float time)
     
    +SpritegetSprite ()
     
    +SpriteManagergetSpriteManager ()
     
    +bool isReady () const
     return if this components is ready To be ready means that is has been loaded to video \ memory
     
    +void update (float delta)
     
    +void draw () const
     
    +unsigned getAnimationIndex () const
     
    +void setAnimation (const std::string &animName)
     
    +void setAnimation (unsigned animIndex)
     
    rapidxml::xml_node * createXmlNode (rapidxml::xml_document<> *doc)
     Creates a graphics XML node Returns an XML node representing the class itself. More...
     
    +void destroyDispatcher ()
     this will call to the corresponding GraphicsSystem function \ in charge of deleting this GraphicsComponent
     
    - Public Member Functions inherited from GraphicsComponent
    GraphicsComponent (GraphicsSystem *graphicsSystem)
     
    +GraphicsSystemgetGraphicsSystem ()
     
    +bool isVisible () const
     
    +void setVisible (bool visible)
     
    +const Vec2fgetPosition () const
     
    +Vec2fgetPosition ()
     
    +Vec2f getScale () const
     
    +void setPosition (const Vec2f &position)
     
    +void setScale (const Vec2f &scale)
     
    +int getPriority () const
     
    +void setPriority (int priority)
     
    + + + + + + + + + + + + + + +

    +Additional Inherited Members

    - Protected Attributes inherited from GraphicsComponent
    +EntitymyEntity
     
    +GraphicsSystemmyGraphicsSystem
     
    +bool visible
     
    +int priority
     
    +Vec2f position
     
    +Vec2f scale
     
    +

    Member Function Documentation

    + +
    +
    + + + + + +
    + + + + + + + + +
    rapidxml::xml_node * SpriteStatus::createXmlNode (rapidxml::xml_document<> * doc)
    +
    +virtual
    +
    + +

    Creates a graphics XML node Returns an XML node representing the class itself.

    +
    Parameters
    + + +
    TheXML document
    +
    +
    +
    Returns
    The XML node
    + +

    Reimplemented from GraphicsComponent.

    + +
    +
    +
    The documentation for this class was generated from the following files: +
    +
    + + + + diff --git a/doc/doxy/html/class_sprite_status.js b/doc/doxy/html/class_sprite_status.js new file mode 100644 index 0000000..7acad42 --- /dev/null +++ b/doc/doxy/html/class_sprite_status.js @@ -0,0 +1,18 @@ +var class_sprite_status = +[ + [ "SpriteStatus", "class_sprite_status.html#ab47ef82579d37da205b2ee579bdef9a1", null ], + [ "createXmlNode", "class_sprite_status.html#af27ee28a71914590501f4482277d0065", null ], + [ "destroyDispatcher", "class_sprite_status.html#a6670f73fdd13aedb472f2b67ffec46c4", null ], + [ "draw", "class_sprite_status.html#af2241d93fbb64caa03bf7912bd19d7d0", null ], + [ "getAnimationIndex", "class_sprite_status.html#af2d8c7dbc2aefca7ac609420fb0f5fd6", null ], + [ "getCurrentFrame", "class_sprite_status.html#aba6ab11558b1e26f111d36fffcce00ca", null ], + [ "getElapsedTime", "class_sprite_status.html#a83250b16329620ac9ec79d4dad65d078", null ], + [ "getSprite", "class_sprite_status.html#abb913100d1c3ff454b2b5d63346f727a", null ], + [ "getSpriteManager", "class_sprite_status.html#a7b3d312d9a0931ee0cb1315c733d0e4b", null ], + [ "isReady", "class_sprite_status.html#af970fdd79d53270033d7902cb3f28c55", null ], + [ "setAnimation", "class_sprite_status.html#a29518b5d6c8d5bd373817553363f0312", null ], + [ "setAnimation", "class_sprite_status.html#a86aec18c8ead82d19d499ae9c558b6f1", null ], + [ "setCurrentFrame", "class_sprite_status.html#a274caf83333e62e6ffbfd3fe763e619d", null ], + [ "setElapsedTime", "class_sprite_status.html#a0b27d70322787574e0da665a5bcdf67d", null ], + [ "update", "class_sprite_status.html#a4b5ba8b1edb85d82e1f312c09ac72892", null ] +]; \ No newline at end of file diff --git a/doc/doxy/html/class_sprite_status.png b/doc/doxy/html/class_sprite_status.png new file mode 100644 index 0000000..1ad132f Binary files /dev/null and b/doc/doxy/html/class_sprite_status.png differ diff --git a/doc/doxy/html/class_test_world_streamer-members.html b/doc/doxy/html/class_test_world_streamer-members.html index 4246150..292d626 100644 --- a/doc/doxy/html/class_test_world_streamer-members.html +++ b/doc/doxy/html/class_test_world_streamer-members.html @@ -3,15 +3,24 @@ - -OWMAN: Member List + +owman: Member List + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,7 +104,6 @@
    -
    TestWorldStreamer Member List
    @@ -91,28 +112,31 @@

    This is the complete list of members for TestWorldStreamer, including all inherited members.

    - - - - + + + + - - + + - - - - - - + + + + + + - +
    end()TestWorldStreamerinlinevirtual
    entitiesTestWorldStreamerprotected
    entityFactoryIWorldStreamerprotected
    getCellSize() const IWorldStreamervirtual
    end() (defined in TestWorldStreamer)TestWorldStreamerinlinevirtual
    entities (defined in TestWorldStreamer)TestWorldStreamerprotected
    entityFactory (defined in IWorldStreamer)IWorldStreamerprotected
    getCellSize() const (defined in IWorldStreamer)IWorldStreamervirtual
    getEntities() const TestWorldStreamervirtual
    getEntityFactory() const IWorldStreamer
    init(Vec2i &cell, Vec2f &offset)TestWorldStreamer
    getEntityFactory() const (defined in IWorldStreamer)IWorldStreamer
    init(Vec2i &cell, Vec2f &offset) (defined in TestWorldStreamer)TestWorldStreamer
    IWorldStreamer::init(const Vec2i &cell, const Vec2f &offset)=0IWorldStreamerpure virtual
    IWorldStreamer()IWorldStreamerinline
    IWorldStreamer(EntityFactory *entityFactory)IWorldStreamer
    setEntityFactory(EntityFactory *entityFactory)IWorldStreamer
    TestWorldStreamer()TestWorldStreamerinline
    TestWorldStreamer(EntityFactory *entityFactory)TestWorldStreamer
    update(Vec2f &position)TestWorldStreamer
    IWorldStreamer() (defined in IWorldStreamer)IWorldStreamerinline
    IWorldStreamer(EntityFactory *entityFactory) (defined in IWorldStreamer)IWorldStreamer
    setEntityFactory(EntityFactory *entityFactory) (defined in IWorldStreamer)IWorldStreamer
    TestWorldStreamer() (defined in TestWorldStreamer)TestWorldStreamerinline
    TestWorldStreamer(EntityFactory *entityFactory) (defined in TestWorldStreamer)TestWorldStreamer
    update(Vec2f &position) (defined in TestWorldStreamer)TestWorldStreamer
    IWorldStreamer::update(const Vec2f &position, MainCharacter *mainCharacter)=0IWorldStreamerpure virtual
    ~IWorldStreamer()IWorldStreamerinlinevirtual
    ~IWorldStreamer() (defined in IWorldStreamer)IWorldStreamerinlinevirtual
    + - + diff --git a/doc/doxy/html/class_test_world_streamer.html b/doc/doxy/html/class_test_world_streamer.html index d18b76f..6cceb09 100644 --- a/doc/doxy/html/class_test_world_streamer.html +++ b/doc/doxy/html/class_test_world_streamer.html @@ -3,15 +3,24 @@ - -OWMAN: TestWorldStreamer Class Reference + +owman: TestWorldStreamer Class Reference + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,7 +104,6 @@
    -
    Public Member Functions | @@ -106,215 +127,68 @@ - - - + - + - + - - + + - + - - - + - + - + - + - + - + - -

    Public Member Functions

     TestWorldStreamer ()
     
     TestWorldStreamer (EntityFactory *entityFactory)
    TestWorldStreamer (EntityFactory *entityFactory)
     
    void init (Vec2i &cell, Vec2f &offset)
    +void init (Vec2i &cell, Vec2f &offset)
     
    void update (Vec2f &position)
    +void update (Vec2f &position)
     
    std::vector< Entity * > getEntities () const
     Returns a vector of pointers to all the active entities. More...
    +std::vector< Entity * > getEntities () const
     Returns a vector of pointers to all the active entities.
     
    void end ()
    +void end ()
     
    - Public Member Functions inherited from IWorldStreamer
     IWorldStreamer ()
     
     IWorldStreamer (EntityFactory *entityFactory)
    IWorldStreamer (EntityFactory *entityFactory)
     
    EntityFactorygetEntityFactory () const
    +EntityFactorygetEntityFactory () const
     
    void setEntityFactory (EntityFactory *entityFactory)
    +void setEntityFactory (EntityFactory *entityFactory)
     
    virtual void init (const Vec2i &cell, const Vec2f &offset)=0
     Inits the world streamer. More...
     Inits the world streamer. More...
     
    virtual void update (const Vec2f &position, MainCharacter *mainCharacter)=0
     Updates the world streamer. More...
     Updates the world streamer. More...
     
    virtual float getCellSize () const
    +virtual float getCellSize () const
     
    virtual ~IWorldStreamer ()
     
    - + - +

    Protected Attributes

    std::vector< Entity * > entities
    +std::vector< Entity * > entities
     
    - Protected Attributes inherited from IWorldStreamer
    EntityFactoryentityFactory
    +EntityFactoryentityFactory
     

    Detailed Description

    This world streamer is just for testing purposes. It return a fixed vector of entites.

    -

    Constructor & Destructor Documentation

    - -
    -
    - - - - - -
    - - - - - - - -
    TestWorldStreamer::TestWorldStreamer ()
    -
    -inline
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    TestWorldStreamer::TestWorldStreamer (EntityFactoryentityFactory)
    -
    - -
    -
    -

    Member Function Documentation

    - -
    -
    - - - - - -
    - - - - - - - -
    void TestWorldStreamer::end ()
    -
    -inlinevirtual
    -
    - -

    Implements IWorldStreamer.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    vector< Entity * > TestWorldStreamer::getEntities () const
    -
    -virtual
    -
    - -

    Returns a vector of pointers to all the active entities.

    - -

    Implements IWorldStreamer.

    - -
    -
    - -
    -
    - - - - - - - - - - - - - - - - - - -
    void TestWorldStreamer::init (Vec2icell,
    Vec2foffset 
    )
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    void TestWorldStreamer::update (Vec2fposition)
    -
    - -
    -
    -

    Member Data Documentation

    - -
    -
    - - - - - -
    - - - - -
    std::vector<Entity*> TestWorldStreamer::entities
    -
    -protected
    -
    - -
    -
    -
    The documentation for this class was generated from the following files:

    The documentation for this class was generated from the following files:
    + - + diff --git a/doc/doxy/html/class_test_world_streamer.png b/doc/doxy/html/class_test_world_streamer.png index 92b9dd6..b93d610 100644 Binary files a/doc/doxy/html/class_test_world_streamer.png and b/doc/doxy/html/class_test_world_streamer.png differ diff --git a/doc/doxy/html/class_texture-members.html b/doc/doxy/html/class_texture-members.html new file mode 100644 index 0000000..1125f3f --- /dev/null +++ b/doc/doxy/html/class_texture-members.html @@ -0,0 +1,144 @@ + + + + + + +owman: Member List + + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    owman +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    +
    Texture Member List
    +
    +
    + +

    This is the complete list of members for Texture, including all inherited members.

    + + + + + + + + + + + + + + + + + + + +
    draw(const Vec2f &pos, const Vec2f &scale, const LowLevelRenderer2D::SpriteVbo &sVbo) const Texture
    draw(const Vec2f &pos, const LowLevelRenderer2D::SpriteVbo &sVbo) const Texture
    FilterMode typedef (defined in Texture)Texture
    getHeight() const Texture
    getName() const Texture
    getWidth() const Texture
    isLoaded() const Texture
    isReady() const Texture
    loadResource()Texture
    loadToGPU()Texture
    release()Texture
    releaseResource()Texture
    setFilterMode(FilterMode filterMode)Texture
    Status enum name (defined in Texture)Texture
    Texture() (defined in Texture)Textureinline
    Texture(TextureManager *TextureManager, const std::string &name) (defined in Texture)Texture
    TextureManager (defined in Texture)Texturefriend
    texturesPath (defined in Texture)Texturestatic
    +
    + + + + diff --git a/doc/doxy/html/class_texture.html b/doc/doxy/html/class_texture.html new file mode 100644 index 0000000..ca62324 --- /dev/null +++ b/doc/doxy/html/class_texture.html @@ -0,0 +1,213 @@ + + + + + + +owman: Texture Class Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    owman +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    Texture Class Reference
    +
    +
    + + + + + + +

    +Public Types

    enum  Status { START, +LOADING, +LOADED, +READY + }
     
    +typedef LowLevelRenderer2D::Texture::FilterMode FilterMode
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Public Member Functions

    Texture (TextureManager *TextureManager, const std::string &name)
     
    +const std::string & getName () const
     get the name of the texture file
     
    +void setFilterMode (FilterMode filterMode)
     set the filter mode
     
    +bool isLoaded () const
     is loaded in main memory
     
    +bool isReady () const
     is laoded in graphics card
     
    +void loadResource ()
     load this texture to RAM The brings the texture resource from disk to MM.\ You will know that the secondary thread of the resource manager has finished loading this resource when isLoaded() returns true.
     
    +void loadToGPU ()
     load this texture to the GPU The texture data will remain in MM unless you release it with releaseResource()
     
    +void releaseResource ()
     release the data in MM You should call this function after using loadToGPU().
     
    +void release ()
     release from GPU Call this only after loadToGPU
     
    +void draw (const Vec2f &pos, const Vec2f &scale, const LowLevelRenderer2D::SpriteVbo &sVbo) const
     draw a texture in the screen
     
    +void draw (const Vec2f &pos, const LowLevelRenderer2D::SpriteVbo &sVbo) const
     draw a texture in the screen
     
    +unsigned getWidth () const
     get the width of the texture the texture must be ready
     
    +unsigned getHeight () const
     get the height of the texture the texture must be ready
     
    + + + +

    +Static Public Attributes

    +static const std::string texturesPath = "textures"
     
    + + + +

    +Friends

    +class TextureManager
     
    +
    The documentation for this class was generated from the following files: +
    +
    + + + + diff --git a/doc/doxy/html/class_texture.js b/doc/doxy/html/class_texture.js new file mode 100644 index 0000000..b979e94 --- /dev/null +++ b/doc/doxy/html/class_texture.js @@ -0,0 +1,25 @@ +var class_texture = +[ + [ "FilterMode", "class_texture.html#a2e77469e22aa639979271b7f0deb0d96", null ], + [ "Status", "class_texture.html#affa2cf565b359d7b64ddad17cd23e652", [ + [ "START", "class_texture.html#affa2cf565b359d7b64ddad17cd23e652ab078ffd28db767c502ac367053f6e0ac", null ], + [ "LOADING", "class_texture.html#affa2cf565b359d7b64ddad17cd23e652af9f6955ebca09a484157c05f80acd65e", null ], + [ "LOADED", "class_texture.html#affa2cf565b359d7b64ddad17cd23e652ab638272ceeff54912f043465e9a28c9b", null ], + [ "READY", "class_texture.html#affa2cf565b359d7b64ddad17cd23e652a2baa69eafc7204f3bd8648eba580c489", null ] + ] ], + [ "Texture", "class_texture.html#a6c275e3f186675ff6ed73ccf970e552f", null ], + [ "Texture", "class_texture.html#a0cbcc74c45c58e11d0daf9d1fc819dd0", null ], + [ "draw", "class_texture.html#aa282cf39212aa2d32c0f6a3098ef32d3", null ], + [ "draw", "class_texture.html#a625a23eee608264fde2795470788178d", null ], + [ "getHeight", "class_texture.html#a883bf64cca7d60f715bd056659a59f7d", null ], + [ "getName", "class_texture.html#af36f3061ad7bcb938663ab8fcb75cd7f", null ], + [ "getWidth", "class_texture.html#a19c09b94a868b83e979f601f68977ddb", null ], + [ "isLoaded", "class_texture.html#aade5860cd91b37acbcedf135b7d9a2fe", null ], + [ "isReady", "class_texture.html#ad84d17750c03aa92826f077921f97319", null ], + [ "loadResource", "class_texture.html#a5faf97f474592c2bc8e71148cd6a3751", null ], + [ "loadToGPU", "class_texture.html#ae64c917248ac22019a3c2fdeb05e4e01", null ], + [ "release", "class_texture.html#a16c096defe40a38d6f22bd08b63eb826", null ], + [ "releaseResource", "class_texture.html#adad5ba7ee347f2c2bc81ec257fa6a342", null ], + [ "setFilterMode", "class_texture.html#a7e9e335038d30f451081f76983cd9afb", null ], + [ "TextureManager", "class_texture.html#a7ca6a28bb7270258b027ed224b74ec24", null ] +]; \ No newline at end of file diff --git a/doc/doxy/html/class_texture_manager-members.html b/doc/doxy/html/class_texture_manager-members.html new file mode 100644 index 0000000..e57634e --- /dev/null +++ b/doc/doxy/html/class_texture_manager-members.html @@ -0,0 +1,132 @@ + + + + + + +owman: Member List + + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    owman +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    +
    TextureManager Member List
    +
    +
    + +

    This is the complete list of members for TextureManager, including all inherited members.

    + + + + + + + +
    getGraphicsSystem() (defined in TextureManager)TextureManager
    getTexture(const std::string &name) (defined in TextureManager)TextureManager
    releaseTexture(Texture *texture) (defined in TextureManager)TextureManager
    TextureManager(GraphicsSystem *graphicsSystem) (defined in TextureManager)TextureManager
    texturesPath (defined in TextureManager)TextureManagerstatic
    update() (defined in TextureManager)TextureManager
    +
    + + + + diff --git a/doc/doxy/html/class_texture_manager.html b/doc/doxy/html/class_texture_manager.html new file mode 100644 index 0000000..356bf60 --- /dev/null +++ b/doc/doxy/html/class_texture_manager.html @@ -0,0 +1,157 @@ + + + + + + +owman: TextureManager Class Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    owman +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    TextureManager Class Reference
    +
    +
    + + + + + + + + + + + + +

    +Public Member Functions

    TextureManager (GraphicsSystem *graphicsSystem)
     
    +TexturegetTexture (const std::string &name)
     
    +void releaseTexture (Texture *texture)
     
    +GraphicsSystemgetGraphicsSystem ()
     
    +void update ()
     
    + + + +

    +Static Public Attributes

    +static const std::string texturesPath = "img/"
     
    +
    The documentation for this class was generated from the following files: +
    +
    + + + + diff --git a/doc/doxy/html/class_texture_manager.js b/doc/doxy/html/class_texture_manager.js new file mode 100644 index 0000000..9477355 --- /dev/null +++ b/doc/doxy/html/class_texture_manager.js @@ -0,0 +1,8 @@ +var class_texture_manager = +[ + [ "TextureManager", "class_texture_manager.html#a416e57eb085e73bdae7b4137275a0b55", null ], + [ "getGraphicsSystem", "class_texture_manager.html#af02fb451065ace5d5a866c80d2f358f1", null ], + [ "getTexture", "class_texture_manager.html#aa765f7f5c0cfac972e5000f06c73b0f9", null ], + [ "releaseTexture", "class_texture_manager.html#ac165f307b5dfbdff2a96266e31289203", null ], + [ "update", "class_texture_manager.html#a8d112be81425221a1040e415a1f5c2ef", null ] +]; \ No newline at end of file diff --git a/doc/doxy/html/class_texture_ref_count_entry-members.html b/doc/doxy/html/class_texture_ref_count_entry-members.html new file mode 100644 index 0000000..98124da --- /dev/null +++ b/doc/doxy/html/class_texture_ref_count_entry-members.html @@ -0,0 +1,127 @@ + + + + + + +owman: Member List + + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    owman +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    +
    TextureRefCountEntry Member List
    +
    +
    + +

    This is the complete list of members for TextureRefCountEntry, including all inherited members.

    + + +
    TextureManager (defined in TextureRefCountEntry)TextureRefCountEntryfriend
    +
    + + + + diff --git a/doc/doxy/html/class_texture_ref_count_entry.html b/doc/doxy/html/class_texture_ref_count_entry.html new file mode 100644 index 0000000..0984aac --- /dev/null +++ b/doc/doxy/html/class_texture_ref_count_entry.html @@ -0,0 +1,137 @@ + + + + + + +owman: TextureRefCountEntry Class Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    owman +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    TextureRefCountEntry Class Reference
    +
    +
    + + + + +

    +Friends

    +class TextureManager
     
    +
    The documentation for this class was generated from the following file: +
    +
    + + + + diff --git a/doc/doxy/html/class_texture_ref_count_entry.js b/doc/doxy/html/class_texture_ref_count_entry.js new file mode 100644 index 0000000..fbdf351 --- /dev/null +++ b/doc/doxy/html/class_texture_ref_count_entry.js @@ -0,0 +1,4 @@ +var class_texture_ref_count_entry = +[ + [ "TextureManager", "class_texture_ref_count_entry.html#a7ca6a28bb7270258b027ed224b74ec24", null ] +]; \ No newline at end of file diff --git a/doc/doxy/html/class_vec2f-members.html b/doc/doxy/html/class_vec2f-members.html index 5a53b05..714af01 100644 --- a/doc/doxy/html/class_vec2f-members.html +++ b/doc/doxy/html/class_vec2f-members.html @@ -3,15 +3,24 @@ - -OWMAN: Member List + +owman: Member List + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,7 +104,6 @@
    -
    Vec2f Member List
    @@ -91,20 +112,25 @@

    This is the complete list of members for Vec2f, including all inherited members.

    - - - - - - - - + + + + + + + + + +
    operator+(const Vec2f &vec) const Vec2f
    operator-(const Vec2f &vec) const Vec2f
    operator-() const Vec2f
    operator=(const Vec2f &vec)Vec2f
    Vec2f()Vec2finline
    Vec2f(float x, float y)Vec2f
    xVec2f
    yVec2f
    operator+(const Vec2f &vec) const (defined in Vec2f)Vec2f
    operator-(const Vec2f &vec) const (defined in Vec2f)Vec2f
    operator-() const (defined in Vec2f)Vec2f
    operator=(const Vec2f &vec) (defined in Vec2f)Vec2f
    Vec2f() (defined in Vec2f)Vec2finline
    Vec2f(float x, float y) (defined in Vec2f)Vec2f
    Vec2f(const Vec2f &v) (defined in Vec2f)Vec2f
    Vec2f(const Vec2i &v) (defined in Vec2f)Vec2f
    x (defined in Vec2f)Vec2f
    y (defined in Vec2f)Vec2f
    + - + diff --git a/doc/doxy/html/class_vec2f.html b/doc/doxy/html/class_vec2f.html index 9f5f7d6..c465478 100644 --- a/doc/doxy/html/class_vec2f.html +++ b/doc/doxy/html/class_vec2f.html @@ -3,15 +3,24 @@ - -OWMAN: Vec2f Class Reference + +owman: Vec2f Class Reference + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,7 +104,6 @@
    -
    Public Member Functions | @@ -97,177 +118,53 @@ - - - + - + + + + + - + - + - +

    Public Member Functions

     Vec2f ()
     
     Vec2f (float x, float y)
    Vec2f (float x, float y)
     
    Vec2f operator= (const Vec2f &vec)
    Vec2f (const Vec2f &v)
     
    Vec2f (const Vec2i &v)
     
    +Vec2f operator= (const Vec2f &vec)
     
    Vec2f operator+ (const Vec2f &vec) const
    +Vec2f operator+ (const Vec2f &vec) const
     
    Vec2f operator- (const Vec2f &vec) const
    +Vec2f operator- (const Vec2f &vec) const
     
    Vec2f operator- () const
    +Vec2f operator- () const
     
    - + - +

    Public Attributes

    float x
    +float x
     
    float y
    +float y
     

    Detailed Description

    Represents a vector of two float components

    -

    Constructor & Destructor Documentation

    - -
    -
    - - - - - -
    - - - - - - - -
    Vec2f::Vec2f ()
    -
    -inline
    -
    - -
    -
    - -
    -
    - - - - - - - - - - - - - - - - - - -
    Vec2f::Vec2f (float x,
    float y 
    )
    -
    - -
    -
    -

    Member Function Documentation

    - -
    -
    - - - - - - - - -
    Vec2f Vec2f::operator+ (const Vec2fvec) const
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    Vec2f Vec2f::operator- (const Vec2fvec) const
    -
    - -
    -
    - -
    -
    - - - - - - - -
    Vec2f Vec2f::operator- () const
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    Vec2f Vec2f::operator= (const Vec2fvec)
    -
    - -
    -
    -

    Member Data Documentation

    - -
    -
    - - - - -
    float Vec2f::x
    -
    - -
    -
    - -
    -
    - - - - -
    float Vec2f::y
    -
    - -
    -
    -
    The documentation for this class was generated from the following files:

    The documentation for this class was generated from the following files:
    + - + diff --git a/doc/doxy/html/class_vec2f.js b/doc/doxy/html/class_vec2f.js index ac16c0a..faf3224 100644 --- a/doc/doxy/html/class_vec2f.js +++ b/doc/doxy/html/class_vec2f.js @@ -2,6 +2,8 @@ var class_vec2f = [ [ "Vec2f", "class_vec2f.html#a3582875fbf3badc6af02646e07bcf440", null ], [ "Vec2f", "class_vec2f.html#ae18e7ff418dad8f98f42973c7d9ce786", null ], + [ "Vec2f", "class_vec2f.html#a3a41f568a8852d55f8d4989af776b798", null ], + [ "Vec2f", "class_vec2f.html#a1726aabfc7aacda6cff269244e8f751d", null ], [ "operator+", "class_vec2f.html#ae93f0df171348ce4f6ed32d75396acaf", null ], [ "operator-", "class_vec2f.html#ac87658067c883a6a76f979c4bf29e99f", null ], [ "operator-", "class_vec2f.html#aa36cbdb64b6d73304810e6d4d550b31b", null ], diff --git a/doc/doxy/html/class_vec2i-members.html b/doc/doxy/html/class_vec2i-members.html index f08969e..191e2ff 100644 --- a/doc/doxy/html/class_vec2i-members.html +++ b/doc/doxy/html/class_vec2i-members.html @@ -3,15 +3,24 @@ - -OWMAN: Member List + +owman: Member List + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,7 +104,6 @@
    -
    Vec2i Member List
    @@ -91,25 +112,30 @@

    This is the complete list of members for Vec2i, including all inherited members.

    - - - - - - - - - - - - - + + + + + + + + + + + + + + +
    operator!=(const Vec2i &v) const Vec2i
    operator+(const Vec2i &vec) const Vec2i
    operator+=(const Vec2i &vec)Vec2i
    operator-(const Vec2i &vec) const Vec2i
    operator-() const Vec2i
    operator-=(const Vec2i &vec)Vec2i
    operator<(const Vec2i &v) const Vec2i
    operator=(const Vec2i &vec)Vec2i
    operator==(const Vec2i &v) const Vec2i
    Vec2i()Vec2iinline
    Vec2i(int x, int y)Vec2i
    xVec2i
    yVec2i
    operator!=(const Vec2i &v) const (defined in Vec2i)Vec2i
    operator+(const Vec2i &vec) const (defined in Vec2i)Vec2i
    operator+=(const Vec2i &vec) (defined in Vec2i)Vec2i
    operator-(const Vec2i &vec) const (defined in Vec2i)Vec2i
    operator-() const (defined in Vec2i)Vec2i
    operator-=(const Vec2i &vec) (defined in Vec2i)Vec2i
    operator<(const Vec2i &v) const (defined in Vec2i)Vec2i
    operator=(const Vec2i &vec) (defined in Vec2i)Vec2i
    operator==(const Vec2i &v) const (defined in Vec2i)Vec2i
    Vec2i() (defined in Vec2i)Vec2iinline
    Vec2i(int x, int y) (defined in Vec2i)Vec2i
    Vec2i(const Vec2i &v) (defined in Vec2i)Vec2i
    Vec2i(const Vec2f &v) (defined in Vec2i)Vec2i
    x (defined in Vec2i)Vec2i
    y (defined in Vec2i)Vec2i
    + - + diff --git a/doc/doxy/html/class_vec2i.html b/doc/doxy/html/class_vec2i.html index 5d67049..5e42142 100644 --- a/doc/doxy/html/class_vec2i.html +++ b/doc/doxy/html/class_vec2i.html @@ -3,15 +3,24 @@ - -OWMAN: Vec2i Class Reference + +owman: Vec2i Class Reference + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,7 +104,6 @@
    -
    Public Member Functions | @@ -97,267 +118,68 @@ - - - + - + + + + + - + - + - + - + - + - + - + - +

    Public Member Functions

     Vec2i ()
     
     Vec2i (int x, int y)
    Vec2i (int x, int y)
     
    Vec2i operator= (const Vec2i &vec)
    Vec2i (const Vec2i &v)
     
    Vec2i (const Vec2f &v)
     
    +Vec2i operator= (const Vec2i &vec)
     
    Vec2i operator+= (const Vec2i &vec)
    +Vec2i operator+= (const Vec2i &vec)
     
    Vec2i operator-= (const Vec2i &vec)
    +Vec2i operator-= (const Vec2i &vec)
     
    Vec2i operator+ (const Vec2i &vec) const
    +Vec2i operator+ (const Vec2i &vec) const
     
    Vec2i operator- (const Vec2i &vec) const
    +Vec2i operator- (const Vec2i &vec) const
     
    Vec2i operator- () const
    +Vec2i operator- () const
     
    bool operator< (const Vec2i &v) const
    +bool operator< (const Vec2i &v) const
     
    bool operator== (const Vec2i &v) const
    +bool operator== (const Vec2i &v) const
     
    bool operator!= (const Vec2i &v) const
    +bool operator!= (const Vec2i &v) const
     
    - + - +

    Public Attributes

    int x
    +int x
     
    int y
    +int y
     

    Detailed Description

    Represents a vector of two integer components

    -

    Constructor & Destructor Documentation

    - -
    -
    - - - - - -
    - - - - - - - -
    Vec2i::Vec2i ()
    -
    -inline
    -
    - -
    -
    - -
    -
    - - - - - - - - - - - - - - - - - - -
    Vec2i::Vec2i (int x,
    int y 
    )
    -
    - -
    -
    -

    Member Function Documentation

    - -
    -
    - - - - - - - - -
    bool Vec2i::operator!= (const Vec2iv) const
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    Vec2i Vec2i::operator+ (const Vec2ivec) const
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    Vec2i Vec2i::operator+= (const Vec2ivec)
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    Vec2i Vec2i::operator- (const Vec2ivec) const
    -
    - -
    -
    - -
    -
    - - - - - - - -
    Vec2i Vec2i::operator- () const
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    Vec2i Vec2i::operator-= (const Vec2ivec)
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    bool Vec2i::operator< (const Vec2iv) const
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    Vec2i Vec2i::operator= (const Vec2ivec)
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    bool Vec2i::operator== (const Vec2iv) const
    -
    - -
    -
    -

    Member Data Documentation

    - -
    -
    - - - - -
    int Vec2i::x
    -
    - -
    -
    - -
    -
    - - - - -
    int Vec2i::y
    -
    - -
    -
    -
    The documentation for this class was generated from the following files:

    The documentation for this class was generated from the following files:
    + - + diff --git a/doc/doxy/html/class_vec2i.js b/doc/doxy/html/class_vec2i.js index 638ecc0..460e487 100644 --- a/doc/doxy/html/class_vec2i.js +++ b/doc/doxy/html/class_vec2i.js @@ -2,6 +2,8 @@ var class_vec2i = [ [ "Vec2i", "class_vec2i.html#ab3aaa1108bd90108d4d036fd8ea2d3b6", null ], [ "Vec2i", "class_vec2i.html#aa6b585dddf8cd22acaf9f42a0d91d0ee", null ], + [ "Vec2i", "class_vec2i.html#aa5926e03cfb8088ff4ba4e357756348a", null ], + [ "Vec2i", "class_vec2i.html#a761a8aad7c3913ffac614a67d80b0ae5", null ], [ "operator!=", "class_vec2i.html#ade18ced851c4bf09f069956d3f0676bd", null ], [ "operator+", "class_vec2i.html#a5b84792d7c12a1a25fdecd6b20dd9637", null ], [ "operator+=", "class_vec2i.html#a83aa608fb193de353489b13eb0ffdb8e", null ], diff --git a/doc/doxy/html/class_work_queue-members.html b/doc/doxy/html/class_work_queue-members.html index b1f924f..a2aa53c 100644 --- a/doc/doxy/html/class_work_queue-members.html +++ b/doc/doxy/html/class_work_queue-members.html @@ -3,15 +3,24 @@ - -OWMAN: Member List + +owman: Member List + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,7 +104,6 @@
    -
    WorkQueue< T > Member List
    @@ -91,19 +112,19 @@

    This is the complete list of members for WorkQueue< T >, including all inherited members.

    - - - - - - - + + + +
    condWorkQueue< T >private
    mutexWorkQueue< T >private
    pop()WorkQueue< T >inline
    push(T elem)WorkQueue< T >inline
    queueWorkQueue< T >private
    WorkQueue()WorkQueue< T >inline
    ~WorkQueue()WorkQueue< T >inline
    pop() (defined in WorkQueue< T >)WorkQueue< T >inline
    push(T elem) (defined in WorkQueue< T >)WorkQueue< T >inline
    WorkQueue() (defined in WorkQueue< T >)WorkQueue< T >inline
    ~WorkQueue() (defined in WorkQueue< T >)WorkQueue< T >inline
    + - + diff --git a/doc/doxy/html/class_work_queue.html b/doc/doxy/html/class_work_queue.html index 8b766df..fb464ce 100644 --- a/doc/doxy/html/class_work_queue.html +++ b/doc/doxy/html/class_work_queue.html @@ -3,15 +3,24 @@ - -OWMAN: WorkQueue< T > Class Template Reference + +owman: WorkQueue< T > Class Template Reference + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,11 +104,9 @@
    -
    Public Member Functions | -Private Attributes | List of all members
    WorkQueue< T > Class Template Reference
    @@ -100,208 +120,31 @@ - - - + - + - - -

    Public Member Functions

     WorkQueue ()
     
    void push (T elem)
    +void push (T elem)
     
    pop ()
    +T pop ()
     
     ~WorkQueue ()
     
    - - - - - - -

    -Private Attributes

    std::list< T > queue
     
    pthread_mutex_t mutex
     
    pthread_cond_t cond
     

    Detailed Description

    -

    template<typename T>
    +

    template<typename T>
    class WorkQueue< T >

    Thread safe queue This queue can be used concurrently by several threads. It is specially designed for the consumer producer-pattern.

    -

    Constructor & Destructor Documentation

    - -
    -
    -
    -template<typename T>
    - - - - - -
    - - - - - - - -
    WorkQueue< T >::WorkQueue ()
    -
    -inline
    -
    - -
    -
    - -
    -
    -
    -template<typename T>
    - - - - - -
    - - - - - - - -
    WorkQueue< T >::~WorkQueue ()
    -
    -inline
    -
    - -
    -
    -

    Member Function Documentation

    - -
    -
    -
    -template<typename T>
    - - - - - -
    - - - - - - - -
    T WorkQueue< T >::pop ()
    -
    -inline
    -
    - -
    -
    - -
    -
    -
    -template<typename T>
    - - - - - -
    - - - - - - - - -
    void WorkQueue< T >::push (elem)
    -
    -inline
    -
    - -
    -
    -

    Member Data Documentation

    - -
    -
    -
    -template<typename T>
    - - - - - -
    - - - - -
    pthread_cond_t WorkQueue< T >::cond
    -
    -private
    -
    - -
    -
    - -
    -
    -
    -template<typename T>
    - - - - - -
    - - - - -
    pthread_mutex_t WorkQueue< T >::mutex
    -
    -private
    -
    - -
    -
    - -
    -
    -
    -template<typename T>
    - - - - - -
    - - - - -
    std::list<T> WorkQueue< T >::queue
    -
    -private
    -
    - -
    -
    -
    The documentation for this class was generated from the following file:

    The documentation for this class was generated from the following file:
    + - + diff --git a/doc/doxy/html/class_world_streamer-members.html b/doc/doxy/html/class_world_streamer-members.html index aec0ab8..1c3f881 100644 --- a/doc/doxy/html/class_world_streamer-members.html +++ b/doc/doxy/html/class_world_streamer-members.html @@ -3,15 +3,24 @@ - -OWMAN: Member List + +owman: Member List + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,7 +104,6 @@
    -
    WorldStreamer Member List
    @@ -91,33 +112,28 @@

    This is the complete list of members for WorldStreamer, including all inherited members.

    - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + +
    availableCellsWorldStreamerprivate
    cellSizeWorldStreamerprivate
    end()WorldStreamervirtual
    entityFactoryWorldStreamerprivate
    getCellSize() const WorldStreamervirtual
    getEntities() const WorldStreamervirtual
    getEntityFactory() const IWorldStreamer
    getWindowPosition() const WorldStreamer
    init(const Vec2i &cell, const Vec2f &offset)WorldStreamervirtual
    IWorldStreamer()IWorldStreamerinline
    IWorldStreamer(EntityFactory *entityFactory)IWorldStreamer
    loadedCellResourcesWorldStreamerprivate
    loadingCellResourcesWorldStreamerprivate
    setEntityFactory(EntityFactory *entityFactory)IWorldStreamer
    update(const Vec2f &position, MainCharacter *mainCharacter)WorldStreamervirtual
    windowPosWorldStreamerprivate
    worldFolderWorldStreamerprivate
    WorldStreamer()WorldStreamerinline
    WorldStreamer(std::string worldFolder, EntityFactory *entityFactory, float cellSize=250.f, unsigned int windowSize=2)WorldStreamer
    worldWindowWorldStreamerprivate
    ~IWorldStreamer()IWorldStreamerinlinevirtual
    end() (defined in WorldStreamer)WorldStreamervirtual
    getCellSize() const (defined in WorldStreamer)WorldStreamervirtual
    getEntities() const WorldStreamervirtual
    getEntityFactory() const (defined in IWorldStreamer)IWorldStreamer
    getWindowPosition() const (defined in WorldStreamer)WorldStreamer
    init(const Vec2i &cell, const Vec2f &offset)WorldStreamervirtual
    IWorldStreamer() (defined in IWorldStreamer)IWorldStreamerinline
    IWorldStreamer(EntityFactory *entityFactory) (defined in IWorldStreamer)IWorldStreamer
    setEntityFactory(EntityFactory *entityFactory) (defined in IWorldStreamer)IWorldStreamer
    update(const Vec2f &position, MainCharacter *mainCharacter)WorldStreamervirtual
    WorldStreamer() (defined in WorldStreamer)WorldStreamerinline
    WorldStreamer(std::string worldFolder, EntityFactory *entityFactory, float cellSize=250.f, unsigned int windowSize=2) (defined in WorldStreamer)WorldStreamer
    ~IWorldStreamer() (defined in IWorldStreamer)IWorldStreamerinlinevirtual
    + - + diff --git a/doc/doxy/html/class_world_streamer.html b/doc/doxy/html/class_world_streamer.html index 7169f5a..3a1a93b 100644 --- a/doc/doxy/html/class_world_streamer.html +++ b/doc/doxy/html/class_world_streamer.html @@ -3,15 +3,24 @@ - -OWMAN: WorldStreamer Class Reference + +owman: WorldStreamer Class Reference + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,18 +104,14 @@
    -
    Public Member Functions | -Private Attributes | List of all members
    WorldStreamer Class Reference
    - -

    #include <world_streamer.hpp>

    Inheritance diagram for WorldStreamer:
    @@ -106,217 +124,47 @@ - - - + - + - + - - + + - + - + - + - - - + - + - + - - -

    Public Member Functions

     WorldStreamer ()
     
     WorldStreamer (std::string worldFolder, EntityFactory *entityFactory, float cellSize=250.f, unsigned int windowSize=2)
    WorldStreamer (std::string worldFolder, EntityFactory *entityFactory, float cellSize=250.f, unsigned int windowSize=2)
     
    void init (const Vec2i &cell, const Vec2f &offset)
     Inits the world streamer. More...
     Inits the world streamer. More...
     
    void update (const Vec2f &position, MainCharacter *mainCharacter)
     Updates the world streamer. More...
     Updates the world streamer. More...
     
    std::vector< Entity * > getEntities () const
     Returns a vector of pointers to all the active entities. More...
    +std::vector< Entity * > getEntities () const
     Returns a vector of pointers to all the active entities.
     
    Vec2i getWindowPosition () const
    +Vec2i getWindowPosition () const
     
    float getCellSize () const
    +float getCellSize () const
     
    void end ()
    +void end ()
     
    - Public Member Functions inherited from IWorldStreamer
     IWorldStreamer ()
     
     IWorldStreamer (EntityFactory *entityFactory)
    IWorldStreamer (EntityFactory *entityFactory)
     
    EntityFactorygetEntityFactory () const
    +EntityFactorygetEntityFactory () const
     
    void setEntityFactory (EntityFactory *entityFactory)
    +void setEntityFactory (EntityFactory *entityFactory)
     
    virtual ~IWorldStreamer ()
     
    - - - - - - - - - - - - - - - - -

    -Private Attributes

    Vec2i windowPos
     
    const float cellSize = 250
     
    WorldWindow worldWindow
     
    std::string worldFolder
     
    std::set< Vec2iavailableCells
     
    std::map< Vec2i, ResourceCell * > loadingCellResources
     
    std::map< Vec2i, ResourceCell * > loadedCellResources
     
    EntityFactoryentityFactory
     
    - +

    Additional Inherited Members

    - Protected Attributes inherited from IWorldStreamer
    EntityFactoryentityFactory
    +EntityFactoryentityFactory
     
    -

    Constructor & Destructor Documentation

    - -
    -
    - - - - - -
    - - - - - - - -
    WorldStreamer::WorldStreamer ()
    -
    -inline
    -
    - -
    -
    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    WorldStreamer::WorldStreamer (std::string worldFolder,
    EntityFactoryentityFactory,
    float cellSize = 250.f,
    unsigned int windowSize = 2 
    )
    -
    - -
    -

    Member Function Documentation

    - -
    -
    - - - - - -
    - - - - - - - -
    void WorldStreamer::end ()
    -
    -virtual
    -
    - -

    Implements IWorldStreamer.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    float WorldStreamer::getCellSize () const
    -
    -virtual
    -
    - -

    Reimplemented from IWorldStreamer.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    vector< Entity * > WorldStreamer::getEntities () const
    -
    -virtual
    -
    - -

    Returns a vector of pointers to all the active entities.

    - -

    Implements IWorldStreamer.

    - -
    -
    - -
    -
    - - - - - - - -
    Vec2i WorldStreamer::getWindowPosition () const
    -
    - -
    -
    @@ -405,179 +253,22 @@

    Member Function Documentation

    Implements IWorldStreamer.

    -
    -
    -

    Member Data Documentation

    - -
    -
    - - - - - -
    - - - - -
    std::set<Vec2i> WorldStreamer::availableCells
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    const float WorldStreamer::cellSize = 250
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    EntityFactory* WorldStreamer::entityFactory
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    std::map<Vec2i, ResourceCell*> WorldStreamer::loadedCellResources
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    std::map<Vec2i, ResourceCell*> WorldStreamer::loadingCellResources
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    Vec2i WorldStreamer::windowPos
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    std::string WorldStreamer::worldFolder
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    WorldWindow WorldStreamer::worldWindow
    -
    -private
    -
    -

    The documentation for this class was generated from the following files:
    +
    - + diff --git a/doc/doxy/html/class_world_streamer.png b/doc/doxy/html/class_world_streamer.png index d40a9c0..c480c11 100644 Binary files a/doc/doxy/html/class_world_streamer.png and b/doc/doxy/html/class_world_streamer.png differ diff --git a/doc/doxy/html/class_world_window-members.html b/doc/doxy/html/class_world_window-members.html index 3a4a33a..a204cfe 100644 --- a/doc/doxy/html/class_world_window-members.html +++ b/doc/doxy/html/class_world_window-members.html @@ -3,15 +3,24 @@ - -OWMAN: Member List + +owman: Member List + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,7 +104,6 @@
    -
    WorldWindow Member List
    @@ -91,19 +112,20 @@

    This is the complete list of members for WorldWindow, including all inherited members.

    - - - - - - - + + + + +
    cellsWorldWindowprivate
    getEntities() const WorldWindow
    windowSizeWorldWindowprivate
    WorldStreamer classWorldWindowfriend
    WorldWindow()WorldWindow
    WorldWindow(unsigned int windowSize)WorldWindow
    ~WorldWindow()WorldWindow
    getEntities() const (defined in WorldWindow)WorldWindow
    WorldStreamer (defined in WorldWindow)WorldWindowfriend
    WorldWindow() (defined in WorldWindow)WorldWindow
    WorldWindow(unsigned int windowSize) (defined in WorldWindow)WorldWindow
    ~WorldWindow() (defined in WorldWindow)WorldWindow
    + - + diff --git a/doc/doxy/html/class_world_window.html b/doc/doxy/html/class_world_window.html index 4893d17..a897ee5 100644 --- a/doc/doxy/html/class_world_window.html +++ b/doc/doxy/html/class_world_window.html @@ -3,15 +3,24 @@ - -OWMAN: WorldWindow Class Reference + +owman: WorldWindow Class Reference + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -68,12 +75,27 @@
  • Class Members
  • + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -82,11 +104,9 @@
    -
    Public Member Functions | -Private Attributes | Friends | List of all members
    @@ -98,164 +118,35 @@ - - - + - + - - -

    Public Member Functions

     WorldWindow ()
     
     WorldWindow (unsigned int windowSize)
    WorldWindow (unsigned int windowSize)
     
    std::vector< Entity * > getEntities () const
    +std::vector< Entity * > getEntities () const
     
     ~WorldWindow ()
     
    - - - - -

    -Private Attributes

    std::map< Vec2i, WorldCellcells
     
    unsigned int windowSize
     
    - +

    Friends

    class WorldStreamer
    +class WorldStreamer
     

    Detailed Description

    Collection of active cells

    -

    Constructor & Destructor Documentation

    - -
    -
    - - - - - - - -
    WorldWindow::WorldWindow ()
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    WorldWindow::WorldWindow (unsigned int windowSize)
    -
    - -
    -
    - -
    -
    - - - - - - - -
    WorldWindow::~WorldWindow ()
    -
    - -
    -
    -

    Member Function Documentation

    - -
    -
    - - - - - - - -
    vector< Entity * > WorldWindow::getEntities () const
    -
    - -
    -
    -

    Friends And Related Function Documentation

    - -
    -
    - - - - - -
    - - - - -
    friend class WorldStreamer
    -
    -friend
    -
    - -
    -
    -

    Member Data Documentation

    - -
    -
    - - - - - -
    - - - - -
    std::map<Vec2i, WorldCell> WorldWindow::cells
    -
    -private
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - -
    unsigned int WorldWindow::windowSize
    -
    -private
    -
    - -
    -
    -
    The documentation for this class was generated from the following files:

    The documentation for this class was generated from the following files:
    + - + diff --git a/doc/doxy/html/classes.html b/doc/doxy/html/classes.html index fab5981..a4ee18d 100644 --- a/doc/doxy/html/classes.html +++ b/doc/doxy/html/classes.html @@ -3,15 +3,24 @@ - -OWMAN: Class Index + +owman: Class Index + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -69,12 +76,26 @@ +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -88,59 +109,49 @@
    Class Index
    -
    A | C | E | F | G | H | I | L | M | N | P | R | S | T | V | W | X
    +
    A | C | E | G | I | L | M | P | R | S | T | V | W
    - - + + - - - + + + + + + - - - - - - - - - - - - - - - + + + + +
      C  
    -
      M  
    -
    ResourceTable   WorldStreamer   xml_document::node_name_pred (rapidxml)   
    ResourceTableEntry   WorldWindow   
      p  
    +
      A  
    +
    EntityFactory   
      P  
    +
    ResourceTableEntry   TextureManager   
    EventHandler   ResourceText   TextureRefCountEntry   
    AARect   Exception   PhysicsBox   ResourceTexture   
      V  
    Camera   MainCharacter   ResourceText   
      a  
    +
    Animation   
      G  
    +
    PhysicsBoxFactory   
      S  
    LowLevelRenderer2D::Camera   
      P  
    -
    ResourceTextFactory   parse_error (rapidxml)   
    Color   ResourceTexture   attribute_iterator (rapidxml)   
      t  
    +
    AnimationFrame   PhysicsCircle   Vec2f   
      C  
    +
    GraphicsComponent   PhysicsCircleFactory   Sprite   Vec2i   
    GraphicsSystem   PhysicsComponent   SpriteManager   
      W  
    LowLevelRenderer2D::Camera   
      I  
    +
    PhysicsSystem   SpriteRefCountEntry   
    Camera   
      R  
    +
    SpriteStatus   WorkQueue   
    Color   IWorldStreamer   LowLevelRenderer2D::SpriteVbo   WorldStreamer   
    CompareSpriteByName   
      L  
    +
    Resource   
      T  
    +
    WorldWindow   
      E  
    -
    GraphicsSystem::PendingTask   ResourceTextureFactory   xml_document::attribute_name_pred (rapidxml)   
    PhysicsBox   
      S  
    -
    xml_document::attribute_value_pred (rapidxml)   xml_document::text_pred (rapidxml)   
    Engine   PhysicsBoxFactory   xml_document::attribute_value_pure_pred (rapidxml)   xml_document::text_pure_no_ws_pred (rapidxml)   
    Entity   PhysicsComponent   Sprite   
      f  
    -
    xml_document::text_pure_with_ws_pred (rapidxml)   
    EntityFactory   PhysicsSystem   SpriteFactory   
      w  
    -
    EventHandler   Position   
      T  
    -
    file (rapidxml)   
      G  
    -
      R  
    -
      h  
    -
    xml_document::whitespace_pred (rapidxml)   
    TestWorldStreamer   
      x  
    -
    GraphicsComponent   Resource   LowLevelRenderer2D::Texture   memory_pool::header (rapidxml)   
    GraphicsSystem   ResourceCell   
      V  
    -
      m  
    -
    xml_attribute (rapidxml)   
      I  
    -
    ResourceCellFactory   xml_base (rapidxml)   
    ResourceFactory   Vec2f   memory_pool (rapidxml)   xml_document (rapidxml)   
    IWorldStreamer   ResourceManager   Vec2i   
      n  
    -
    xml_node (rapidxml)   
      L  
    -
    ResourceRequest   
      W  
    -
    node_iterator (rapidxml)   
    LowLevelRenderer2D   WorkQueue   
    ResourceCell   
    LowLevelRenderer2D   ResourceManager   TestWorldStreamer   
    Engine   
      M  
    +
    ResourceRequest   LowLevelRenderer2D::Texture   
    Entity   ResourceTable   Texture   
    MainCharacter   
    -
    A | C | E | F | G | H | I | L | M | N | P | R | S | T | V | W | X
    +
    A | C | E | G | I | L | M | P | R | S | T | V | W
    + - + diff --git a/doc/doxy/html/closed.png b/doc/doxy/html/closed.png index ca24b44..98cc2c9 100644 Binary files a/doc/doxy/html/closed.png and b/doc/doxy/html/closed.png differ diff --git a/doc/doxy/html/color_8hpp_source.html b/doc/doxy/html/color_8hpp_source.html index 2db40db..e45683c 100644 --- a/doc/doxy/html/color_8hpp_source.html +++ b/doc/doxy/html/color_8hpp_source.html @@ -3,15 +3,24 @@ - -OWMAN: renderer/color.hpp Source File + +owman: color.hpp Source File + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -63,15 +70,29 @@ + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -80,51 +101,44 @@
    - -
    color.hpp
    -Go to the documentation of this file.
    1 
    +
    1 
    2 #ifndef COLOR
    -
    3 #define COLOR
    -
    4 
    +
    3 #define COLOR
    +
    4 
    7 class Color
    8 {
    9 
    10 public:
    11 
    -
    12  float r, g, b, a;
    +
    12  float r, g, b, a;
    13 
    -
    14  Color(float r, float g, float b)
    -
    15  :r(r), g(g), b(b), a(1.0)
    -
    16  {}
    +
    14  Color(float r, float g, float b)
    +
    15  :r(r), g(g), b(b), a(1.0)
    +
    16  {}
    17 
    -
    18  Color(float r, float g, float b, float a)
    -
    19  :r(r), g(g), b(b), a(a)
    -
    20  {}
    +
    18  Color(float r, float g, float b, float a)
    +
    19  :r(r), g(g), b(b), a(a)
    +
    20  {}
    21 
    22 };
    23 
    24 #endif
    -
    float g
    Definition: color.hpp:12
    -
    Color(float r, float g, float b)
    Definition: color.hpp:14
    represents a color of 4 float components(r, g, b, a)
    Definition: color.hpp:7
    -
    Color(float r, float g, float b, float a)
    Definition: color.hpp:18
    -
    float a
    Definition: color.hpp:12
    -
    float b
    Definition: color.hpp:12
    -
    float r
    Definition: color.hpp:12
    +
    - + diff --git a/doc/doxy/html/dir_23ec12649285f9fabf3a6b7380226c28.html b/doc/doxy/html/dir_23ec12649285f9fabf3a6b7380226c28.html index 041a4e1..e4a601f 100644 --- a/doc/doxy/html/dir_23ec12649285f9fabf3a6b7380226c28.html +++ b/doc/doxy/html/dir_23ec12649285f9fabf3a6b7380226c28.html @@ -3,15 +3,24 @@ - -OWMAN: util Directory Reference + +owman: util Directory Reference + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -60,12 +67,27 @@ + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -74,11 +96,6 @@
    - -
    util Directory Reference
    @@ -87,17 +104,31 @@ - + + + + + + + - + + + + +

    Files

    file  file_to_string.cpp
    file  exception.hpp [code]
     
    file  file_to_string.cpp
     
    file  file_to_string.hpp [code]
     
    file  stack_trace.hpp [code]
     
    file  file_to_string.hpp [code]
    file  time_conversions.hpp [code]
     
    file  xmlstr.cpp
     
    file  xmlstr.hpp [code]
     
    + - + diff --git a/doc/doxy/html/dir_296d53ceaeaa7e099814a6def439fe8a.html b/doc/doxy/html/dir_296d53ceaeaa7e099814a6def439fe8a.html index 7b45701..99370ab 100644 --- a/doc/doxy/html/dir_296d53ceaeaa7e099814a6def439fe8a.html +++ b/doc/doxy/html/dir_296d53ceaeaa7e099814a6def439fe8a.html @@ -3,15 +3,24 @@ - -OWMAN: math Directory Reference + +owman: math Directory Reference + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -60,12 +67,27 @@ + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -74,11 +96,6 @@
    - -
    math Directory Reference
    @@ -87,21 +104,33 @@ - + + + + + - + - + - + + + + +

    Files

    file  vec2f.cpp
    file  aarect.cpp
     
    file  aarect.hpp [code]
     
    file  functions.cpp
     
    file  vec2f.hpp [code]
    file  functions.hpp [code]
     
    file  vec2i.cpp
    file  vec2f.cpp
     
    file  vec2i.hpp [code]
    file  vec2f.hpp [code]
     
    file  vec2i.cpp
     
    file  vec2i.hpp [code]
     
    + - + diff --git a/doc/doxy/html/dir_59dc24c326e2a72d1164f014b22de83d.html b/doc/doxy/html/dir_59dc24c326e2a72d1164f014b22de83d.html index 910a62f..acd540e 100644 --- a/doc/doxy/html/dir_59dc24c326e2a72d1164f014b22de83d.html +++ b/doc/doxy/html/dir_59dc24c326e2a72d1164f014b22de83d.html @@ -3,15 +3,24 @@ - -OWMAN: physics Directory Reference + +owman: physics Directory Reference + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -60,12 +67,27 @@ + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -74,11 +96,6 @@
    - -
    physics Directory Reference
    @@ -87,29 +104,41 @@ - + + + + + - + - + - + - + - + - + - + + + + +

    Files

    file  physics_box.cpp
    file  physics_box.cpp
     
    file  physics_box.hpp [code]
     
    file  physics_box_factory.cpp
     
    file  physics_box.hpp [code]
    file  physics_box_factory.hpp [code]
     
    file  physics_box_factory.cpp
    file  physics_circle.cpp
     
    file  physics_box_factory.hpp [code]
    file  physics_circle.hpp [code]
     
    file  physics_component.cpp
    file  physics_circle_factory.cpp
     
    file  physics_component.hpp [code]
    file  physics_circle_factory.hpp [code]
     
    file  physics_system.cpp
    file  physics_component.cpp
     
    file  physics_system.hpp [code]
    file  physics_component.hpp [code]
     
    file  physics_system.cpp
     
    file  physics_system.hpp [code]
     
    + - + diff --git a/doc/doxy/html/dir_913bfe5cd49c15c10de83786c9f7c5a0.html b/doc/doxy/html/dir_913bfe5cd49c15c10de83786c9f7c5a0.html index 90a3c56..7cf2d9e 100644 --- a/doc/doxy/html/dir_913bfe5cd49c15c10de83786c9f7c5a0.html +++ b/doc/doxy/html/dir_913bfe5cd49c15c10de83786c9f7c5a0.html @@ -3,15 +3,24 @@ - -OWMAN: demos Directory Reference + +owman: demos Directory Reference + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -60,12 +67,27 @@ + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -74,37 +96,31 @@
    - -
    demos Directory Reference
    - - - -

    -Directories

    directory  parse_xml
     
    - + - + - +

    Files

    file  demo_box2d.cpp
    file  demo_box2d.cpp
     
    file  test_is_cell_file.cpp
    file  test_is_cell_file.cpp
     
    file  test_regex.cpp
    file  test_regex.cpp
     
    + - + diff --git a/doc/doxy/html/dir_ac70f6072b530a84726ed959a20ad355.html b/doc/doxy/html/dir_ac70f6072b530a84726ed959a20ad355.html index 46939f2..06e595f 100644 --- a/doc/doxy/html/dir_ac70f6072b530a84726ed959a20ad355.html +++ b/doc/doxy/html/dir_ac70f6072b530a84726ed959a20ad355.html @@ -3,15 +3,24 @@ - -OWMAN: resource_manager Directory Reference + +owman: resource_manager Directory Reference + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -60,12 +67,27 @@ + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -74,83 +96,65 @@
    - -
    resource_manager Directory Reference
    - - - -

    -Directories

    directory  test
     
    - - - - - - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - - - - - +

    Files

    file  resource.cpp
     
    file  resource.hpp [code]
     
    file  resource_cell.cpp
     
    file  resource_cell.hpp [code]
    file  resource.cpp
     
    file  resource_cell_factory.cpp
    file  resource.hpp [code]
     
    file  resource_cell_factory.hpp [code]
    file  resource_cell.cpp
     
    file  resource_factory.cpp
    file  resource_cell.hpp [code]
     
    file  resource_factory.hpp [code]
    file  resource_manager.cpp
     
    file  resource_manager.cpp
    file  resource_manager.hpp [code]
     
    file  resource_manager.hpp [code]
    file  resource_manager_templates.hpp [code]
     
    file  resource_request.cpp
    file  resource_request.cpp
     
    file  resource_request.hpp [code]
    file  resource_request.hpp [code]
     
    file  resource_table.cpp
    file  resource_sprite.cpp
     
    file  resource_table.hpp [code]
    file  resource_table.cpp
     
    file  resource_table_entry.cpp
    file  resource_table.hpp [code]
     
    file  resource_table_entry.hpp [code]
    file  resource_table_entry.cpp
     
    file  resource_text.cpp
    file  resource_table_entry.hpp [code]
     
    file  resource_text.hpp [code]
    file  resource_text.cpp
     
    file  resource_text_factory.cpp
    file  resource_text.hpp [code]
     
    file  resource_text_factory.hpp [code]
    file  resource_texture.cpp
     
    file  resource_texture.cpp
    file  resource_texture.hpp [code]
     
    file  resource_texture.hpp [code]
    file  work_queue.cpp
     
    file  resource_texture_factory.cpp
     
    file  resource_texture_factory.hpp [code]
     
    file  work_queue.cpp
     
    file  work_queue.hpp [code]
    file  work_queue.hpp [code]
     
    + - + diff --git a/doc/doxy/html/dir_d10aa5f1e26260a914a037377583e9a7.html b/doc/doxy/html/dir_d10aa5f1e26260a914a037377583e9a7.html index 817ea5d..0bacf4a 100644 --- a/doc/doxy/html/dir_d10aa5f1e26260a914a037377583e9a7.html +++ b/doc/doxy/html/dir_d10aa5f1e26260a914a037377583e9a7.html @@ -3,15 +3,24 @@ - -OWMAN: renderer Directory Reference + +owman: renderer Directory Reference + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -60,12 +67,27 @@ + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -74,59 +96,71 @@
    - -
    renderer Directory Reference
    - - - -

    -Directories

    directory  tests
     
    - + + + + + + + + + + + - + - + - + - + - + - + - + - + - + - + - + - + - + + + + + + + + +

    Files

    file  camera.cpp
    file  animation.cpp
     
    file  animation.hpp [code]
     
    file  animation_frame.cpp
     
    file  animation_frame.hpp [code]
     
    file  camera.cpp
     
    file  camera.hpp [code]
     
    file  camera.hpp [code]
    file  color.hpp [code]
     
    file  color.hpp [code]
    file  graphics_component.cpp
     
    file  graphics_component.cpp
    file  graphics_component.hpp [code]
     
    file  graphics_component.hpp [code]
    file  graphics_system.cpp
     
    file  graphics_system.cpp
    file  graphics_system.hpp [code]
     
    file  graphics_system.hpp [code]
    file  low_level_renderer_2d.cpp
     
    file  low_level_renderer_2d.cpp
    file  low_level_renderer_2d.hpp [code]
     
    file  low_level_renderer_2d.hpp [code]
    file  sprite.cpp
     
    file  sprite.cpp
    file  sprite.hpp [code]
     
    file  sprite.hpp [code]
    file  sprite_manager.cpp
     
    file  sprite_factory.cpp
    file  sprite_manager.hpp [code]
     
    file  sprite_factory.hpp [code]
    file  sprite_status.cpp
     
    file  VAO.hpp [code]
    file  sprite_status.hpp [code]
     
    file  texture.cpp
     
    file  texture.hpp [code]
     
    file  texture_manager.cpp
     
    file  texture_manager.hpp [code]
     
    + - + diff --git a/doc/doxy/html/dir_f0b8d3380d5649deec2d780f35ec3ac5.html b/doc/doxy/html/dir_f0b8d3380d5649deec2d780f35ec3ac5.html index 0bd8dab..892ccd7 100644 --- a/doc/doxy/html/dir_f0b8d3380d5649deec2d780f35ec3ac5.html +++ b/doc/doxy/html/dir_f0b8d3380d5649deec2d780f35ec3ac5.html @@ -3,15 +3,24 @@ - -OWMAN: IO Directory Reference + +owman: IO Directory Reference + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -60,12 +67,27 @@ + +
    + +
    +
    +
    + +
    - All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
    +
    @@ -74,11 +96,6 @@
    - -
    IO Directory Reference
    @@ -87,17 +104,21 @@ - + - +

    Files

    file  event_handler.cpp
    file  event_handler.cpp
     
    file  event_handler.hpp [code]
    file  event_handler.hpp [code]
     
    + - + diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/ftv2doc.png b/doc/doxy/html/doc.png similarity index 100% rename from src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/ftv2doc.png rename to doc/doxy/html/doc.png diff --git a/doc/doxy/html/doxygen.css b/doc/doxy/html/doxygen.css index 6bbb76b..a000833 100644 --- a/doc/doxy/html/doxygen.css +++ b/doc/doxy/html/doxygen.css @@ -1,4 +1,4 @@ -/* The standard CSS for doxygen 1.8.6 */ +/* The standard CSS for doxygen 1.8.9.1 */ body, table, div, p, dl { font: 400 14px/22px Roboto,sans-serif; @@ -18,8 +18,8 @@ h1.groupheader { } h2.groupheader { - border-bottom: 1px solid #7BB478; - color: #30542E; + border-bottom: 1px solid #879ECB; + color: #354C7B; font-size: 150%; font-weight: normal; margin-top: 1.75em; @@ -93,8 +93,8 @@ h3.version { } div.qindex, div.navtab{ - background-color: #E8F2E8; - border: 1px solid #98C596; + background-color: #EBEFF6; + border: 1px solid #A3B4D7; text-align: center; } @@ -110,13 +110,13 @@ div.navtab { /* @group Link Styling */ a { - color: #396336; + color: #3D578C; font-weight: normal; text-decoration: none; } .contents a:visited { - color: #447842; + color: #4665A2; } a:hover { @@ -129,9 +129,9 @@ a.qindex { a.qindexHL { font-weight: bold; - background-color: #91C18E; + background-color: #9CAFD4; color: #ffffff; - border: 1px double #7AB477; + border: 1px double #869DCA; } .contents a.qindexHL:visited { @@ -175,8 +175,8 @@ pre.fragment { div.fragment { padding: 4px 6px; margin: 4px 8px 4px 2px; - background-color: #FBFCFB; - border: 1px solid #BCD9BB; + background-color: #FBFCFD; + border: 1px solid #C4CFE5; } div.line { @@ -227,7 +227,7 @@ span.lineno a:hover { background-color: #C8C8C8; } -div.ah { +div.ah, span.ah { background-color: black; font-weight: bold; color: #ffffff; @@ -245,6 +245,15 @@ div.ah { background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000); } +div.classindex ul { + list-style: none; + padding-left: 0; +} + +div.classindex span.ai { + display: inline-block; +} + div.groupHeader { margin-left: 16px; margin-top: 12px; @@ -269,9 +278,9 @@ div.contents { } td.indexkey { - background-color: #E8F2E8; + background-color: #EBEFF6; font-weight: bold; - border: 1px solid #BCD9BB; + border: 1px solid #C4CFE5; margin: 2px 0px 2px 0; padding: 2px 10px; white-space: nowrap; @@ -279,14 +288,14 @@ td.indexkey { } td.indexvalue { - background-color: #E8F2E8; - border: 1px solid #BCD9BB; + background-color: #EBEFF6; + border: 1px solid #C4CFE5; padding: 2px 10px; margin: 2px 0px; } tr.memlist { - background-color: #EBF4EB; + background-color: #EEF1F7; } p.formulaDsp { @@ -369,8 +378,8 @@ span.vhdllogic { } blockquote { - background-color: #F5F9F5; - border-left: 2px solid #91C18E; + background-color: #F7F8FB; + border-left: 2px solid #9CAFD4; margin: 0 24px 0 4px; padding: 0 12px 0 16px; } @@ -403,18 +412,18 @@ td.tiny { .dirtab { padding: 4px; border-collapse: collapse; - border: 1px solid #98C596; + border: 1px solid #A3B4D7; } th.dirtab { - background: #E8F2E8; + background: #EBEFF6; font-weight: bold; } hr { height: 0px; border: none; - border-top: 1px solid #498046; + border-top: 1px solid #4A6AAA; } hr.footer { @@ -449,7 +458,7 @@ table.memberdecls { .mdescLeft, .mdescRight, .memItemLeft, .memItemRight, .memTemplItemLeft, .memTemplItemRight, .memTemplParams { - background-color: #F8FBF8; + background-color: #F9FAFC; border: none; margin: 4px; padding: 1px 0 0 8px; @@ -476,7 +485,7 @@ table.memberdecls { } .memTemplParams { - color: #447842; + color: #4665A2; white-space: nowrap; font-size: 80%; } @@ -489,14 +498,14 @@ table.memberdecls { .memtemplate { font-size: 80%; - color: #447842; + color: #4665A2; font-weight: normal; margin-left: 9px; } .memnav { - background-color: #E8F2E8; - border: 1px solid #98C596; + background-color: #EBEFF6; + border: 1px solid #A3B4D7; text-align: center; margin: 2px; margin-right: 15px; @@ -534,16 +543,16 @@ table.memberdecls { } .memproto, dl.reflist dt { - border-top: 1px solid #9EC89B; - border-left: 1px solid #9EC89B; - border-right: 1px solid #9EC89B; + border-top: 1px solid #A8B8D9; + border-left: 1px solid #A8B8D9; + border-right: 1px solid #A8B8D9; padding: 6px 0px 6px 0px; - color: #1E341C; + color: #253555; font-weight: bold; text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); background-image:url('nav_f.png'); background-repeat:repeat-x; - background-color: #DEECDD; + background-color: #E2E8F2; /* opera specific markup */ box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); border-top-right-radius: 4px; @@ -560,11 +569,11 @@ table.memberdecls { } .memdoc, dl.reflist dd { - border-bottom: 1px solid #9EC89B; - border-left: 1px solid #9EC89B; - border-right: 1px solid #9EC89B; + border-bottom: 1px solid #A8B8D9; + border-left: 1px solid #A8B8D9; + border-right: 1px solid #A8B8D9; padding: 6px 10px 2px 10px; - background-color: #FBFCFB; + background-color: #FBFCFD; border-top-width: 0; background-image:url('nav_g.png'); background-repeat:repeat-x; @@ -651,11 +660,11 @@ span.mlabels { } span.mlabel { - background-color: #65A862; - border-top:1px solid #508C4D; - border-left:1px solid #508C4D; - border-right:1px solid #BCD9BB; - border-bottom:1px solid #BCD9BB; + background-color: #728DC1; + border-top:1px solid #5373B4; + border-left:1px solid #5373B4; + border-right:1px solid #C4CFE5; + border-bottom:1px solid #C4CFE5; text-shadow: none; color: white; margin-right: 4px; @@ -670,12 +679,12 @@ span.mlabel { /* @end */ -/* these are for tree view when not used as main index */ +/* these are for tree view inside a (index) page */ div.directory { margin: 10px 0px; - border-top: 1px solid #A8B8D9; - border-bottom: 1px solid #A8B8D9; + border-top: 1px solid #9CAFD4; + border-bottom: 1px solid #9CAFD4; width: 100%; } @@ -713,7 +722,7 @@ div.directory { .directory tr.even { padding-left: 6px; - background-color: #F5F9F5; + background-color: #F7F8FB; } .directory img { @@ -731,9 +740,83 @@ div.directory { cursor: pointer; padding-left: 2px; padding-right: 2px; - color: #396336; + color: #3D578C; +} + +.arrow { + color: #9CAFD4; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + cursor: pointer; + font-size: 80%; + display: inline-block; + width: 16px; + height: 22px; +} + +.icon { + font-family: Arial, Helvetica; + font-weight: bold; + font-size: 12px; + height: 14px; + width: 16px; + display: inline-block; + background-color: #728DC1; + color: white; + text-align: center; + border-radius: 4px; + margin-left: 2px; + margin-right: 2px; +} + +.icona { + width: 24px; + height: 22px; + display: inline-block; +} + +.iconfopen { + width: 24px; + height: 18px; + margin-bottom: 4px; + background-image:url('folderopen.png'); + background-position: 0px -4px; + background-repeat: repeat-y; + vertical-align:top; + display: inline-block; +} + +.iconfclosed { + width: 24px; + height: 18px; + margin-bottom: 4px; + background-image:url('folderclosed.png'); + background-position: 0px -4px; + background-repeat: repeat-y; + vertical-align:top; + display: inline-block; +} + +.icondoc { + width: 24px; + height: 18px; + margin-bottom: 4px; + background-image:url('doc.png'); + background-position: 0px -4px; + background-repeat: repeat-y; + vertical-align:top; + display: inline-block; +} + +table.directory { + font: 400 14px Roboto,sans-serif; } +/* @end */ + div.dynheader { margin-top: 8px; -webkit-touch-callout: none; @@ -746,7 +829,7 @@ div.dynheader { address { font-style: normal; - color: #233E22; + color: #2A3D61; } table.doxtable { @@ -756,12 +839,12 @@ table.doxtable { } table.doxtable td, table.doxtable th { - border: 1px solid #264325; + border: 1px solid #2D4068; padding: 3px 7px 2px; } table.doxtable th { - background-color: #325830; + background-color: #374F7F; color: #FFFFFF; font-size: 110%; padding-bottom: 4px; @@ -771,7 +854,7 @@ table.doxtable th { table.fieldtable { /*width: 100%;*/ margin-bottom: 10px; - border: 1px solid #9EC89B; + border: 1px solid #A8B8D9; border-spacing: 0px; -moz-border-radius: 4px; -webkit-border-radius: 4px; @@ -787,8 +870,8 @@ table.fieldtable { .fieldtable td.fieldtype, .fieldtable td.fieldname { white-space: nowrap; - border-right: 1px solid #9EC89B; - border-bottom: 1px solid #9EC89B; + border-right: 1px solid #A8B8D9; + border-bottom: 1px solid #A8B8D9; vertical-align: top; } @@ -797,7 +880,7 @@ table.fieldtable { } .fieldtable td.fielddoc { - border-bottom: 1px solid #9EC89B; + border-bottom: 1px solid #A8B8D9; /*width: 100%;*/ } @@ -816,9 +899,9 @@ table.fieldtable { .fieldtable th { background-image:url('nav_f.png'); background-repeat:repeat-x; - background-color: #DEECDD; + background-color: #E2E8F2; font-size: 90%; - color: #1E341C; + color: #253555; padding-bottom: 4px; padding-top: 5px; text-align:left; @@ -828,7 +911,7 @@ table.fieldtable { -webkit-border-top-right-radius: 4px; border-top-left-radius: 4px; border-top-right-radius: 4px; - border-bottom: 1px solid #9EC89B; + border-bottom: 1px solid #A8B8D9; } @@ -850,8 +933,8 @@ table.fieldtable { background-position: 0 -5px; height:30px; line-height:30px; - color:#7DB67B; - border:solid 1px #BAD8B8; + color:#8AA0CC; + border:solid 1px #C2CDE4; overflow:hidden; margin:0px; padding:0px; @@ -866,7 +949,7 @@ table.fieldtable { background-image:url('bc_s.png'); background-repeat:no-repeat; background-position:right; - color:#31552F; + color:#364D7C; } .navpath li.navelem a @@ -875,7 +958,7 @@ table.fieldtable { display:block; text-decoration: none; outline: none; - color: #213A20; + color: #283A5D; font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); text-decoration: none; @@ -883,7 +966,7 @@ table.fieldtable { .navpath li.navelem a:hover { - color:#5CA158; + color:#6884BD; } .navpath li.footer @@ -895,7 +978,7 @@ table.fieldtable { background-image:none; background-repeat:no-repeat; background-position:right; - color:#31552F; + color:#364D7C; font-size: 8pt; } @@ -930,9 +1013,9 @@ div.header { background-image:url('nav_h.png'); background-repeat:repeat-x; - background-color: #F8FBF8; + background-color: #F9FAFC; margin: 0px; - border-bottom: 1px solid #BCD9BB; + border-bottom: 1px solid #C4CFE5; } div.headertitle @@ -1051,7 +1134,7 @@ dl.section dd { padding: 0px; margin: 0px; width: 100%; - border-bottom: 1px solid #508C4D; + border-bottom: 1px solid #5373B4; } .image @@ -1081,7 +1164,7 @@ dl.section dd { div.zoom { - border: 1px solid #84B981; + border: 1px solid #90A5CE; } dl.citelist { @@ -1089,7 +1172,7 @@ dl.citelist { } dl.citelist dt { - color:#2D4F2B; + color:#334975; float:left; font-weight:bold; margin-right:10px; @@ -1103,8 +1186,8 @@ dl.citelist dd { div.toc { padding: 14px 25px; - background-color: #F3F8F3; - border: 1px solid #D2E6D1; + background-color: #F4F6FA; + border: 1px solid #D8DFEE; border-radius: 7px 7px 7px 7px; float: right; height: auto; @@ -1122,7 +1205,7 @@ div.toc li { div.toc h3 { font: bold 12px/1.2 Arial,FreeSans,sans-serif; - color: #447842; + color: #4665A2; border-bottom: 0 none; margin: 0; } diff --git a/doc/doxy/html/doxygen.png b/doc/doxy/html/doxygen.png index 661a53c..3ff17d8 100644 Binary files a/doc/doxy/html/doxygen.png and b/doc/doxy/html/doxygen.png differ diff --git a/doc/doxy/html/dynsections.js b/doc/doxy/html/dynsections.js index ed092c7..85e1836 100644 --- a/doc/doxy/html/dynsections.js +++ b/doc/doxy/html/dynsections.js @@ -24,19 +24,20 @@ function updateStripes() $('table.directory tr'). removeClass('even').filter(':visible:even').addClass('even'); } + function toggleLevel(level) { - $('table.directory tr').each(function(){ + $('table.directory tr').each(function() { var l = this.id.split('_').length-1; var i = $('#img'+this.id.substring(3)); var a = $('#arr'+this.id.substring(3)); if (l - -OWMAN: engine.hpp Source File + +owman: engine.hpp Source File + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -63,16 +70,29 @@ +
    + +
    +
    +
    + +
    +
    @@ -86,97 +106,76 @@
    engine.hpp
    -Go to the documentation of this file.
    - -
    3 #include "entity_factory.hpp"
    -
    4 #include "world_window.hpp"
    -
    5 #include "world_streamer.hpp"
    - -
    7 #include "IO/event_handler.hpp"
    +
    1 #include "renderer/graphics_system.hpp"
    +
    2 #include "physics/physics_system.hpp"
    +
    3 #include "entity_factory.hpp"
    +
    4 #include "world_window.hpp"
    +
    5 #include "world_streamer.hpp"
    +
    6 #include "test_world_streamer.hpp"
    +
    7 #include "IO/event_handler.hpp"
    8 
    9 #ifndef ENGINE
    -
    10 #define ENGINE
    -
    11 
    +
    10 #define ENGINE
    +
    11 
    16 class Engine
    17 {
    18 
    - +
    19  WorldWindow worldGrid;
    20 
    - +
    21  EntityFactory entityFactory;
    22 
    -
    23  // Systems
    - - +
    23  // Systems
    +
    24  GraphicsSystem* graphicsSystem;
    +
    25  PhysicsSystem* physicsSystem;
    26 
    - - +
    27  IWorldStreamer* worldStreamer;
    +
    28  MainCharacter* mainCharacter;
    29 
    - +
    30  EventHandler eventHandler;
    31 
    -
    32  bool end;
    -
    33  int fps;
    +
    32  bool end;
    +
    33  int fps;
    34 
    35 public:
    36 
    -
    37  Engine(std::string initFile, std::string worldFolder);
    +
    37  Engine(std::string initFile, std::string worldFolder);
    38 
    -
    39  void init();
    +
    39  void init();
    40 
    -
    41  void mainLoop();
    +
    41  void mainLoop();
    42 
    - - +
    43  GraphicsSystem* getGraphicsSystem();
    +
    44  PhysicsSystem* getPhysicsSystem();
    45 
    - +
    46  MainCharacter* getMainCharacter();
    47 
    -
    48  float getCellSize()const;
    +
    48  float getCellSize()const;
    49 
    -
    50  void endGame();
    +
    50  void endGame();
    51 
    -
    52  ~Engine();
    +
    52  ~Engine();
    53 
    54 };
    55 
    56 #endif
    -
    EventHandler eventHandler
    Definition: engine.hpp:30
    -
    Definition: world_window.hpp:16
    Definition: i_world_streamer.hpp:20
    -
    Definition: entity_factory.hpp:12
    -
    Definition: physics_system.hpp:19
    -
    ~Engine()
    Definition: engine.cpp:217
    - -
    bool end
    Definition: engine.hpp:32
    -
    GraphicsSystem * getGraphicsSystem()
    Definition: engine.cpp:189
    -
    void mainLoop()
    Definition: engine.cpp:129
    -
    IWorldStreamer * worldStreamer
    Definition: engine.hpp:27
    -
    PhysicsSystem * getPhysicsSystem()
    Definition: engine.cpp:194
    +
    Definition: physics_system.hpp:13
    Definition: main_character.hpp:15
    -
    Definition: graphics_system.hpp:15
    -
    void init()
    Definition: engine.cpp:104
    -
    Engine(std::string initFile, std::string worldFolder)
    Definition: engine.cpp:16
    - +
    Definition: graphics_system.hpp:17
    Definition: event_handler.hpp:10
    -
    MainCharacter * mainCharacter
    Definition: engine.hpp:28
    -
    void endGame()
    Definition: engine.cpp:211
    - -
    PhysicsSystem * physicsSystem
    Definition: engine.hpp:25
    -
    MainCharacter * getMainCharacter()
    Definition: engine.cpp:199
    -
    GraphicsSystem * graphicsSystem
    Definition: engine.hpp:24
    -
    float getCellSize() const
    Definition: engine.cpp:204
    - -
    EntityFactory entityFactory
    Definition: engine.hpp:21
    encapsulates all systems Has the main loop. Contains all systems like graphics system and physics sys...
    Definition: engine.hpp:16
    -
    WorldWindow worldGrid
    Definition: engine.hpp:19
    - -
    int fps
    Definition: engine.hpp:33
    +
    - + diff --git a/doc/doxy/html/entity_8hpp_source.html b/doc/doxy/html/entity_8hpp_source.html index ce7b3ce..b9e29ae 100644 --- a/doc/doxy/html/entity_8hpp_source.html +++ b/doc/doxy/html/entity_8hpp_source.html @@ -3,15 +3,24 @@ - -OWMAN: entity.hpp Source File + +owman: entity.hpp Source File + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -63,16 +70,29 @@ +
    + +
    +
    +
    + +
    +
    @@ -86,94 +106,78 @@
    entity.hpp
    -Go to the documentation of this file.
    1 #include <string>
    -
    2 #include "position.hpp"
    - +
    1 #include <string>
    +
    2 #include "position.hpp"
    +
    3 #include "dependencies/rapidxml/rapidxml.hpp"
    4 
    5 #ifndef GRAPHICS_COMPONENT
    - +
    7 #endif
    -
    8 
    +
    8 
    9 #ifndef PHYSICS_COMPONENT
    -
    10 class PhysicsComponent;
    +
    10 class PhysicsComponent;
    11 #endif
    -
    12 
    +
    12 
    13 #ifndef ENTITY
    -
    14 #define ENTITY
    -
    15 
    +
    14 #define ENTITY
    +
    15 
    19 class Entity
    20 {
    21 
    22 public:
    23 
    -
    24  typedef std::string TypeId;
    -
    25  typedef unsigned int Id;
    +
    24  typedef std::string TypeId;
    +
    25  typedef unsigned int Id;
    26 
    -
    27  friend class EntityFactory;
    +
    27  friend class EntityFactory;
    28 
    29 protected:
    30 
    - -
    32  Id id;
    +
    31  TypeId typeId;
    +
    32  Id id;
    33 
    - - +
    34  GraphicsComponent* graphicsComponent;
    +
    35  PhysicsComponent* physicsComponent;
    36 
    -
    37  Entity();
    +
    37  Entity();
    38 
    -
    39  void setGraphicsComponent(GraphicsComponent* component);
    -
    40  void setPhysicsComponent(PhysicsComponent* component);
    +
    39  void setGraphicsComponent(GraphicsComponent* component);
    +
    40  void setPhysicsComponent(PhysicsComponent* component);
    41 
    42 public:
    43 
    -
    44  TypeId getTypeOfEntity()const;
    -
    45  Id getId()const;
    +
    44  TypeId getTypeOfEntity()const;
    +
    45  Id getId()const;
    46 
    -
    47  Vec2f getPosition()const;
    -
    48  void setPosition(const Vec2f& pos);
    +
    47  Vec2f getPosition()const;
    +
    48  void setPosition(const Vec2f& pos);
    49 
    - - +
    50  GraphicsComponent* getGraphicsComponent();
    +
    51  PhysicsComponent* getPhysicsComponent();
    52 
    - +
    53  rapidxml::xml_node<>* createXmlNode(rapidxml::xml_document<>* doc, float cellSize);
    54 
    -
    55  ~Entity();
    +
    55  ~Entity();
    56 
    57 };
    58 
    59 #endif
    -
    Definition: vec2f.hpp:9
    -
    PhysicsComponent * physicsComponent
    Definition: entity.hpp:35
    -
    This file contains rapidxml parser and DOM implementation.
    -
    Definition: graphics_component.hpp:17
    -
    PhysicsComponent * getPhysicsComponent()
    Definition: entity.cpp:73
    -
    TypeId typeId
    Definition: entity.hpp:31
    -
    GraphicsComponent * getGraphicsComponent()
    Definition: entity.cpp:58
    +
    Definition: vec2f.hpp:10
    +
    Definition: graphics_component.hpp:12
    Definition: entity_factory.hpp:12
    -
    void setPhysicsComponent(PhysicsComponent *component)
    Definition: entity.cpp:68
    -
    void setPosition(const Vec2f &pos)
    Definition: entity.cpp:44
    -
    Entity()
    Definition: entity.cpp:10
    -
    rapidxml::xml_node * createXmlNode(rapidxml::xml_document<> *doc, float cellSize)
    Definition: entity.cpp:78
    -
    void setGraphicsComponent(GraphicsComponent *component)
    Definition: entity.cpp:63
    +
    rapidxml::xml_node * createXmlNode(rapidxml::xml_document<> *doc, float cellSize)
    Definition: entity.cpp:79
    Components compounded entity.
    Definition: entity.hpp:19
    -
    Id id
    Definition: entity.hpp:32
    -
    Vec2f getPosition() const
    Definition: entity.cpp:28
    -
    std::string TypeId
    Definition: entity.hpp:24
    -
    ~Entity()
    Definition: entity.cpp:128
    -
    Definition: physics_component.hpp:11
    - -
    Id getId() const
    Definition: entity.cpp:23
    -
    Definition: rapidxml.hpp:139
    -
    Definition: rapidxml.hpp:137
    -
    GraphicsComponent * graphicsComponent
    Definition: entity.hpp:34
    -
    TypeId getTypeOfEntity() const
    Definition: entity.cpp:18
    -
    unsigned int Id
    Definition: entity.hpp:25
    +
    Definition: physics_component.hpp:10
    +
    - + diff --git a/doc/doxy/html/entity__factory_8hpp_source.html b/doc/doxy/html/entity__factory_8hpp_source.html index f9fffdb..4584a16 100644 --- a/doc/doxy/html/entity__factory_8hpp_source.html +++ b/doc/doxy/html/entity__factory_8hpp_source.html @@ -3,15 +3,24 @@ - -OWMAN: entity_factory.hpp Source File + +owman: entity_factory.hpp Source File + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -63,16 +70,29 @@ +
    + +
    +
    +
    + +
    +
    @@ -86,69 +106,63 @@
    entity_factory.hpp
    -Go to the documentation of this file.
    1 #include "entity.hpp"
    -
    2 #include "main_character.hpp"
    - +
    1 #include "entity.hpp"
    +
    2 #include "main_character.hpp"
    +
    3 #include "dependencies/rapidxml/rapidxml.hpp"
    4 
    5 #ifndef ENGINE
    -
    6 class Engine;
    +
    6 class Engine;
    7 #endif
    -
    8 
    +
    8 
    9 #ifndef ENTITY_FACTORY
    -
    10 #define ENTITY_FACTORY
    -
    11 
    +
    10 #define ENTITY_FACTORY
    +
    11 
    13 {
    14 
    - +
    15  Engine* myEngine;
    16 
    -
    17  // Entities con be created by suplying a fixed id,
    -
    18  // otherwise it will be assigned an arbitrary id
    -
    19  // If you are giving a fixed id to an entity in the xml file
    -
    20  // you must choose a number between 1 and DEFAULT_INIT_ID
    -
    21  static const Entity::Id DEFAULT_INIT_ID = 0x1000000;
    +
    17  // Entities con be created by suplying a fixed id,
    +
    18  // otherwise it will be assigned an arbitrary id
    +
    19  // If you are giving a fixed id to an entity in the xml file
    +
    20  // you must choose a number between 1 and DEFAULT_INIT_ID
    +
    21  static const Entity::Id DEFAULT_INIT_ID = 0x1000000;
    22 
    -
    23  // 0 means invalid id
    - +
    23  // 0 means invalid id
    +
    24  Entity::Id countId;
    25 
    26 public:
    27 
    - -
    29  EntityFactory(Engine* engine);
    +
    28  EntityFactory(){}
    +
    29  EntityFactory(Engine* engine);
    30 
    -
    37  Entity* createEntity(rapidxml::xml_node<> *node, const Vec2i& toCenter);
    +
    37  Entity* createEntity(rapidxml::xml_node<> *node, const Vec2i& toCenter);
    38 
    39 
    - +
    45  MainCharacter* createMainCharacter(rapidxml::xml_node<> *node);
    46 
    -
    47  void destroyEntity(Entity* entity);
    +
    47  void destroyEntity(Entity* entity);
    48 
    49 };
    50 
    51 #endif
    -
    This file contains rapidxml parser and DOM implementation.
    -
    static const Entity::Id DEFAULT_INIT_ID
    Definition: entity_factory.hpp:21
    Definition: entity_factory.hpp:12
    -
    void destroyEntity(Entity *entity)
    Definition: entity_factory.cpp:175
    -
    MainCharacter * createMainCharacter(rapidxml::xml_node<> *node)
    Create a main character.
    Definition: entity_factory.cpp:96
    -
    Engine * myEngine
    Definition: entity_factory.hpp:15
    +
    MainCharacter * createMainCharacter(rapidxml::xml_node<> *node)
    Create a main character.
    Definition: entity_factory.cpp:136
    Components compounded entity.
    Definition: entity.hpp:19
    Definition: main_character.hpp:15
    - -
    Definition: rapidxml.hpp:137
    -
    EntityFactory()
    Definition: entity_factory.hpp:28
    -
    Entity::Id countId
    Definition: entity_factory.hpp:24
    encapsulates all systems Has the main loop. Contains all systems like graphics system and physics sys...
    Definition: engine.hpp:16
    -
    Definition: vec2i.hpp:10
    - -
    unsigned int Id
    Definition: entity.hpp:25
    -
    Entity * createEntity(rapidxml::xml_node<> *node, const Vec2i &toCenter)
    Create an entity.
    Definition: entity_factory.cpp:20
    +
    Definition: vec2i.hpp:11
    +
    Entity * createEntity(rapidxml::xml_node<> *node, const Vec2i &toCenter)
    Create an entity.
    Definition: entity_factory.cpp:23
    +
    - + diff --git a/doc/doxy/html/event__handler_8hpp_source.html b/doc/doxy/html/event__handler_8hpp_source.html index 19dfafa..596d6cf 100644 --- a/doc/doxy/html/event__handler_8hpp_source.html +++ b/doc/doxy/html/event__handler_8hpp_source.html @@ -3,15 +3,24 @@ - -OWMAN: IO/event_handler.hpp Source File + +owman: event_handler.hpp Source File + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -63,15 +70,29 @@ + +
    + +
    +
    +
    + +
    +
    @@ -80,55 +101,56 @@
    - -
    event_handler.hpp
    -Go to the documentation of this file.
    1 #include <SDL2/SDL.h>
    +
    1 #include <SDL2/SDL.h>
    2 
    3 #ifndef ENGINE
    -
    4 class Engine;
    +
    4 class Engine;
    5 #endif
    -
    6 
    +
    6 
    7 #ifndef EVENT_HANDLER
    -
    8 #define EVENT_HANDLER
    -
    9 
    +
    8 #define EVENT_HANDLER
    +
    9 
    11 {
    12 
    -
    13  SDL_Event event;
    +
    13  SDL_Event event;
    14 
    - +
    15  Engine* engine;
    16 
    -
    17 public:
    +
    17  bool arrowKeysPressed[4];
    18 
    - -
    20 
    -
    21  virtual void handle();
    -
    22  void poll();
    +
    19  bool& upArrowStatus = arrowKeysPressed[0];
    +
    20  bool& downArrowStatus = arrowKeysPressed[1];
    +
    21  bool& leftArrowStatus = arrowKeysPressed[2];
    +
    22  bool& rightArrowStatus = arrowKeysPressed[3];
    23 
    -
    24 };
    +
    24 public:
    25 
    -
    26 #endif
    -
    virtual void handle()
    Definition: event_handler.cpp:14
    -
    EventHandler(Engine *engine)
    Definition: event_handler.cpp:8
    -
    SDL_Event event
    Definition: event_handler.hpp:13
    +
    26  EventHandler( Engine* engine );
    +
    27 
    +
    28  virtual void handle();
    +
    29  void poll();
    +
    30 
    +
    31 };
    +
    32 
    +
    33 #endif
    Definition: event_handler.hpp:10
    -
    void poll()
    Definition: event_handler.cpp:75
    -
    Engine * engine
    Definition: event_handler.hpp:15
    encapsulates all systems Has the main loop. Contains all systems like graphics system and physics sys...
    Definition: engine.hpp:16
    +
    - + diff --git a/doc/doxy/html/exception_8hpp_source.html b/doc/doxy/html/exception_8hpp_source.html new file mode 100644 index 0000000..ae36935 --- /dev/null +++ b/doc/doxy/html/exception_8hpp_source.html @@ -0,0 +1,147 @@ + + + + + + +owman: exception.hpp Source File + + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    owman +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    +
    exception.hpp
    +
    +
    +
    1 #ifndef EXCEPTION_HPP
    +
    2 #define EXCEPTION_HPP
    +
    3 
    +
    4 #include <exception>
    +
    5 #include <string>
    +
    6 
    +
    7 class Exception : public std::exception
    +
    8 {
    +
    9 
    +
    10  std::string msg;
    +
    11 
    +
    12 public:
    +
    13 
    +
    14  Exception(const std::string& msg)
    +
    15  {
    +
    16  this->msg = msg;
    +
    17  }
    +
    18 
    +
    19  std::string str() const
    +
    20  {
    +
    21  return msg;
    +
    22  }
    +
    23 };
    +
    24 
    +
    25 #endif // EXCEPTION_HPP
    +
    Definition: exception.hpp:7
    +
    +
    + + + + diff --git a/doc/doxy/html/file__to__string_8hpp_source.html b/doc/doxy/html/file__to__string_8hpp_source.html index f94649c..a7a1758 100644 --- a/doc/doxy/html/file__to__string_8hpp_source.html +++ b/doc/doxy/html/file__to__string_8hpp_source.html @@ -3,15 +3,24 @@ - -OWMAN: util/file_to_string.hpp Source File + +owman: file_to_string.hpp Source File + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -63,15 +70,29 @@ + +
    + +
    +
    +
    + +
    +
    @@ -80,31 +101,29 @@
    - -
    file_to_string.hpp
    -Go to the documentation of this file.
    1 #include <fstream>
    +
    1 #include <fstream>
    2 
    3 #ifndef FILE_TO_STRING
    -
    4 #define FILE_TO_STRING
    -
    5 
    -
    6 char* fileToString(const char* fileName);
    +
    4 #define FILE_TO_STRING
    +
    5 
    +
    6 char* fileToString(const char* fileName);
    7 
    8 #endif
    -
    char * fileToString(const char *fileName)
    Definition: parse_xml.cpp:99
    +
    - + diff --git a/doc/doxy/html/files.html b/doc/doxy/html/files.html index 1c5b6b6..d6ef4b6 100644 --- a/doc/doxy/html/files.html +++ b/doc/doxy/html/files.html @@ -3,15 +3,24 @@ - -OWMAN: File List + +owman: File List + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -63,16 +70,29 @@ +
    + +
    +
    +
    + +
    +
    @@ -86,118 +106,67 @@
    File List
    -
    Here is a list of all files with brief descriptions:
    -
    [detail level 123]
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
    Here is a list of all documented files with brief descriptions:
    +
    o-demos
    |o+parse_xml
    |o*demo_box2d.cpp
    |o*test_is_cell_file.cpp
    |\*test_regex.cpp
    o-dependencies
    |\+rapidxml
    o-IO
    |o*event_handler.cpp
    |\*event_handler.hpp
    o-math
    |o*vec2f.cpp
    |o*vec2f.hpp
    |o*vec2i.cpp
    |\*vec2i.hpp
    o-physics
    |o*physics_box.cpp
    |o*physics_box.hpp
    |o*physics_box_factory.cpp
    |o*physics_box_factory.hpp
    |o*physics_component.cpp
    |o*physics_component.hpp
    |o*physics_system.cpp
    |\*physics_system.hpp
    o-renderer
    |o+tests
    |o*camera.cpp
    |o*camera.hpp
    |o*color.hpp
    |o*graphics_component.cpp
    |o*graphics_component.hpp
    |o*graphics_system.cpp
    |o*graphics_system.hpp
    |o*low_level_renderer_2d.cpp
    |o*low_level_renderer_2d.hpp
    |o*sprite.cpp
    |o*sprite.hpp
    |o*sprite_factory.cpp
    |o*sprite_factory.hpp
    |\*VAO.hpp
    o-resource_manager
    |o+test
    |o*resource.cpp
    |o*resource.hpp
    |o*resource_cell.cpp
    |o*resource_cell.hpp
    |o*resource_cell_factory.cpp
    |o*resource_cell_factory.hpp
    |o*resource_factory.cpp
    |o*resource_factory.hpp
    |o*resource_manager.cpp
    |o*resource_manager.hpp
    |o*resource_request.cpp
    |o*resource_request.hpp
    |o*resource_table.cpp
    |o*resource_table.hpp
    |o*resource_table_entry.cpp
    |o*resource_table_entry.hpp
    |o*resource_text.cpp
    |o*resource_text.hpp
    |o*resource_text_factory.cpp
    |o*resource_text_factory.hpp
    |o*resource_texture.cpp
    |o*resource_texture.hpp
    |o*resource_texture_factory.cpp
    |o*resource_texture_factory.hpp
    |o*work_queue.cpp
    |\*work_queue.hpp
    o-util
    |o*file_to_string.cpp
    |\*file_to_string.hpp
    o*engine.cpp
    o*engine.hpp
    o*entity.cpp
    o*entity.hpp
    o*entity_factory.cpp
    o*entity_factory.hpp
    o*i_world_streamer.cpp
    o*i_world_streamer.hpp
    o*main.cpp
    o*main_character.cpp
    o*main_character.hpp
    o*position.cpp
    o*position.hpp
    o*test_world_streamer.cpp
    o*test_world_streamer.hpp
    o*world_cell.cpp
    o*world_cell.hpp
    o*world_streamer.cpp
    o*world_streamer.hpp
    o*world_window.cpp
    \*world_window.hpp
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     aarect.hpp
     animation.hpp
     animation_frame.hpp
     camera.hpp
     cell_size.hpp
     color.hpp
     engine.hpp
     entity.hpp
     entity_factory.hpp
     event_handler.hpp
     exception.hpp
     file_to_string.hpp
     functions.hpp
     graphics_component.hpp
     graphics_system.hpp
     i_world_streamer.hpp
     low_level_renderer_2d.hpp
     main_character.hpp
     physics_box.hpp
     physics_box_factory.hpp
     physics_circle.hpp
     physics_circle_factory.hpp
     physics_component.hpp
     physics_system.hpp
     resource.hpp
     resource_cell.hpp
     resource_manager.hpp
     resource_manager_templates.hpp
     resource_request.hpp
     resource_table.hpp
     resource_table_entry.hpp
     resource_text.hpp
     resource_texture.hpp
     sprite.hpp
     sprite_manager.hpp
     sprite_status.hpp
     stack_trace.hpp
     test_world_streamer.hpp
     texture.hpp
     texture_manager.hpp
     time_conversions.hpp
     vec2f.hpp
     vec2i.hpp
     work_queue.hpp
     world_cell.hpp
     world_streamer.hpp
     world_window.hpp
     xmlstr.hpp
    + - + diff --git a/doc/doxy/html/files.js b/doc/doxy/html/files.js index 39a4078..31276b3 100644 --- a/doc/doxy/html/files.js +++ b/doc/doxy/html/files.js @@ -1,12 +1,18 @@ var files = [ + [ "aarect.hpp", "aarect_8hpp_source.html", null ], + [ "animation.hpp", "animation_8hpp_source.html", null ], + [ "animation_frame.hpp", "animation__frame_8hpp_source.html", null ], [ "camera.hpp", "camera_8hpp_source.html", null ], + [ "cell_size.hpp", "cell__size_8hpp_source.html", null ], [ "color.hpp", "color_8hpp_source.html", null ], [ "engine.hpp", "engine_8hpp_source.html", null ], [ "entity.hpp", "entity_8hpp_source.html", null ], [ "entity_factory.hpp", "entity__factory_8hpp_source.html", null ], [ "event_handler.hpp", "event__handler_8hpp_source.html", null ], + [ "exception.hpp", "exception_8hpp_source.html", null ], [ "file_to_string.hpp", "file__to__string_8hpp_source.html", null ], + [ "functions.hpp", "functions_8hpp_source.html", null ], [ "graphics_component.hpp", "graphics__component_8hpp_source.html", null ], [ "graphics_system.hpp", "graphics__system_8hpp_source.html", null ], [ "i_world_streamer.hpp", "i__world__streamer_8hpp_source.html", null ], @@ -14,27 +20,32 @@ var files = [ "main_character.hpp", "main__character_8hpp_source.html", null ], [ "physics_box.hpp", "physics__box_8hpp_source.html", null ], [ "physics_box_factory.hpp", "physics__box__factory_8hpp_source.html", null ], + [ "physics_circle.hpp", "physics__circle_8hpp_source.html", null ], + [ "physics_circle_factory.hpp", "physics__circle__factory_8hpp_source.html", null ], [ "physics_component.hpp", "physics__component_8hpp_source.html", null ], [ "physics_system.hpp", "physics__system_8hpp_source.html", null ], [ "resource.hpp", "resource_8hpp_source.html", null ], [ "resource_cell.hpp", "resource__cell_8hpp_source.html", null ], - [ "resource_cell_factory.hpp", "resource__cell__factory_8hpp_source.html", null ], - [ "resource_factory.hpp", "resource__factory_8hpp_source.html", null ], [ "resource_manager.hpp", "resource__manager_8hpp_source.html", null ], + [ "resource_manager_templates.hpp", "resource__manager__templates_8hpp_source.html", null ], [ "resource_request.hpp", "resource__request_8hpp_source.html", null ], [ "resource_table.hpp", "resource__table_8hpp_source.html", null ], [ "resource_table_entry.hpp", "resource__table__entry_8hpp_source.html", null ], [ "resource_text.hpp", "resource__text_8hpp_source.html", null ], - [ "resource_text_factory.hpp", "resource__text__factory_8hpp_source.html", null ], [ "resource_texture.hpp", "resource__texture_8hpp_source.html", null ], - [ "resource_texture_factory.hpp", "resource__texture__factory_8hpp_source.html", null ], [ "sprite.hpp", "sprite_8hpp_source.html", null ], - [ "sprite_factory.hpp", "sprite__factory_8hpp_source.html", null ], + [ "sprite_manager.hpp", "sprite__manager_8hpp_source.html", null ], + [ "sprite_status.hpp", "sprite__status_8hpp_source.html", null ], + [ "stack_trace.hpp", "stack__trace_8hpp_source.html", null ], [ "test_world_streamer.hpp", "test__world__streamer_8hpp_source.html", null ], + [ "texture.hpp", "texture_8hpp_source.html", null ], + [ "texture_manager.hpp", "texture__manager_8hpp_source.html", null ], + [ "time_conversions.hpp", "time__conversions_8hpp_source.html", null ], [ "vec2f.hpp", "vec2f_8hpp_source.html", null ], [ "vec2i.hpp", "vec2i_8hpp_source.html", null ], [ "work_queue.hpp", "work__queue_8hpp_source.html", null ], [ "world_cell.hpp", "world__cell_8hpp_source.html", null ], [ "world_streamer.hpp", "world__streamer_8hpp_source.html", null ], - [ "world_window.hpp", "world__window_8hpp_source.html", null ] + [ "world_window.hpp", "world__window_8hpp_source.html", null ], + [ "xmlstr.hpp", "xmlstr_8hpp_source.html", null ] ]; \ No newline at end of file diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/ftv2folderclosed.png b/doc/doxy/html/folderclosed.png similarity index 100% rename from src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/ftv2folderclosed.png rename to doc/doxy/html/folderclosed.png diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/ftv2folderopen.png b/doc/doxy/html/folderopen.png similarity index 100% rename from src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/ftv2folderopen.png rename to doc/doxy/html/folderopen.png diff --git a/doc/doxy/html/functions.html b/doc/doxy/html/functions.html index b1e38ef..72d7087 100644 --- a/doc/doxy/html/functions.html +++ b/doc/doxy/html/functions.html @@ -3,15 +3,24 @@ - -OWMAN: Class Members + +owman: Class Members + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -72,49 +79,42 @@ +
    + +
    +
    +
    + +
    +
    @@ -124,19 +124,150 @@
    -
    Here is a list of all class members with links to the classes they belong to:
    +
    Here is a list of all documented class members with links to the class documentation for each member:
    + +

    - c -

    -

    - _ -

    + - + diff --git a/doc/doxy/html/functions_8hpp_source.html b/doc/doxy/html/functions_8hpp_source.html new file mode 100644 index 0000000..f0ac52a --- /dev/null +++ b/doc/doxy/html/functions_8hpp_source.html @@ -0,0 +1,132 @@ + + + + + + +owman: functions.hpp Source File + + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    owman +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    +
    functions.hpp
    +
    +
    +
    1 #ifndef FUNCTIONS
    +
    2 #define FUNCTIONS
    +
    3 
    +
    7 // already defined in <cmath>
    +
    8 /*float fmod(float a, float b)
    +
    9 {
    +
    10  while(a>b) a -= b;
    +
    11  return a;
    +
    12 }*/
    +
    13 
    +
    14 #endif // FUNCTIONS
    +
    +
    + + + + diff --git a/doc/doxy/html/functions_func.html b/doc/doxy/html/functions_func.html index 0bfb6e4..cd70f41 100644 --- a/doc/doxy/html/functions_func.html +++ b/doc/doxy/html/functions_func.html @@ -3,15 +3,24 @@ - -OWMAN: Class Members - Functions + +owman: Class Members - Functions + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -72,46 +79,42 @@ +
    + +
    +
    +
    + +
    +
    @@ -123,44 +126,148 @@
      -

    - a -

    +
    - + diff --git a/doc/doxy/html/graphics__component_8hpp_source.html b/doc/doxy/html/graphics__component_8hpp_source.html index 9490e30..df03e2b 100644 --- a/doc/doxy/html/graphics__component_8hpp_source.html +++ b/doc/doxy/html/graphics__component_8hpp_source.html @@ -3,15 +3,24 @@ - -OWMAN: renderer/graphics_component.hpp Source File + +owman: graphics_component.hpp Source File + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -63,15 +70,29 @@ + +
    + +
    +
    +
    + +
    +
    @@ -80,115 +101,85 @@
    - -
    graphics_component.hpp
    -Go to the documentation of this file.
    1 #include "../math/vec2f.hpp"
    -
    2 #include "../dependencies/rapidxml/rapidxml.hpp"
    +
    1 #ifndef GRAPHICS_COMPONENT
    +
    2 #define GRAPHICS_COMPONENT
    3 
    -
    4 #ifndef ENTITY
    -
    5 class Entity;
    -
    6 #endif
    -
    7 
    -
    8 #ifndef GRAPHICS_SYSTEM
    -
    9 class GraphicsSystem;
    -
    10 #endif
    -
    11 
    -
    12 #ifndef GRAPHICS_COMPONENT
    -
    13 #define GRAPHICS_COMPONENT
    -
    14 
    - -
    18 {
    +
    4 #include "../math/vec2f.hpp"
    +
    5 #include "../dependencies/rapidxml/rapidxml.hpp"
    +
    6 
    +
    7 class Entity;
    +
    8 class GraphicsSystem;
    +
    9 
    + +
    13 {
    +
    14 
    +
    15  friend class Entity;
    +
    16  friend class GraphicsSystem;
    +
    17 
    +
    18 protected:
    19 
    -
    20  friend class Entity;
    -
    21  friend class GraphicsSystem;
    -
    22 
    -
    23 protected:
    +
    20  Entity* myEntity;
    +
    21  GraphicsSystem* myGraphicsSystem;
    +
    22  bool visible;
    +
    23  int priority; // the higher the more priority
    24 
    - - -
    27  bool visible;
    -
    28  int priority; // the higher the more priority
    +
    25  Vec2f position;
    +
    26  Vec2f scale;
    +
    27 
    +
    28 public:
    29 
    - - -
    32 
    -
    33 public:
    -
    34 
    - -
    36  :visible(true){}
    -
    37 
    -
    38  virtual void update(unsigned int delta) = 0;
    -
    39  virtual void draw()const = 0;
    -
    40 
    -
    41  bool isVisible()const;
    -
    42  void setVisible(bool visible);
    -
    43 
    -
    48  virtual bool isReady()const = 0;
    -
    49 
    -
    54  virtual bool isLoaded()const = 0;
    -
    55 
    -
    61  virtual void becomeReady()const = 0;
    +
    30  GraphicsComponent(GraphicsSystem* graphicsSystem);
    +
    31 
    +
    32  GraphicsSystem* getGraphicsSystem();
    +
    33 
    +
    34  virtual void update(float delta) = 0;
    +
    35  virtual void draw()const = 0;
    +
    36 
    +
    37  bool isVisible()const;
    +
    38  void setVisible(bool visible);
    +
    39 
    +
    44  virtual bool isReady()const = 0;
    +
    45 
    +
    46  const Vec2f& getPosition()const;
    +
    47  Vec2f& getPosition();
    +
    48  Vec2f getScale()const;
    +
    49  void setPosition(const Vec2f& position);
    +
    50  void setScale(const Vec2f& scale);
    +
    51  int getPriority()const;
    +
    52  void setPriority(int priority);
    +
    53 
    +
    59  virtual rapidxml::xml_node<>* createXmlNode(rapidxml::xml_document<>* doc);
    +
    60 
    +
    61  virtual ~GraphicsComponent() {};
    62 
    -
    63  const Vec2f& getPosition()const;
    -
    64  Vec2f& getPosition();
    -
    65  Vec2f getScale()const;
    -
    66  void setPosition(const Vec2f& position);
    -
    67  void setScale(const Vec2f& scale);
    -
    68  int getPriority()const;
    -
    69  void setPriority(int priority);
    -
    70 
    - -
    77 
    -
    78  virtual ~GraphicsComponent() {};
    -
    79 
    -
    83  virtual void destroyDispatcher() = 0;
    -
    84 
    -
    85 };
    -
    86 
    -
    87 #endif
    -
    Definition: vec2f.hpp:9
    -
    GraphicsComponent()
    Definition: graphics_component.hpp:35
    -
    void setScale(const Vec2f &scale)
    Definition: graphics_component.cpp:34
    -
    Definition: graphics_component.hpp:17
    +
    66  virtual void destroyDispatcher() = 0;
    +
    67 
    +
    68 };
    +
    69 
    +
    70 #endif
    +
    Definition: vec2f.hpp:10
    +
    Definition: graphics_component.hpp:12
    virtual void destroyDispatcher()=0
    this will call to the corresponding GraphicsSystem function \ in charge of deleting this GraphicsComp...
    -
    void setVisible(bool visible)
    Definition: graphics_component.cpp:9
    -
    const Vec2f & getPosition() const
    Definition: graphics_component.cpp:14
    -
    virtual void draw() const =0
    -
    Vec2f getScale() const
    Definition: graphics_component.cpp:24
    -
    void setPosition(const Vec2f &position)
    Definition: graphics_component.cpp:29
    -
    bool visible
    Definition: graphics_component.hpp:27
    -
    virtual bool isLoaded() const =0
    return if this component is loaded To be loaded means that it has been loaded to main \ memory ...
    +
    void update(unsigned int delta)
    update animations
    Definition: graphics_system.cpp:38
    +
    virtual rapidxml::xml_node * createXmlNode(rapidxml::xml_document<> *doc)
    Creates a graphics XML node Returns an XML node representing the class itself.
    Definition: graphics_component.cpp:68
    Components compounded entity.
    Definition: entity.hpp:19
    virtual bool isReady() const =0
    return if this components is ready To be ready means that is has been loaded to video \ memory ...
    -
    virtual void becomeReady() const =0
    load to video memory Once the resource of this component has been loaded \ into main memory it has to...
    -
    int getPriority() const
    Definition: graphics_component.cpp:39
    -
    Definition: graphics_system.hpp:15
    -
    int priority
    Definition: graphics_component.hpp:28
    -
    bool isVisible() const
    Definition: graphics_component.cpp:4
    -
    virtual rapidxml::xml_node * createXmlNode(rapidxml::xml_document<> *doc)=0
    Creates a graphics XML node Returns an XML node representing the class itself.
    -
    virtual void update(unsigned int delta)=0
    -
    virtual ~GraphicsComponent()
    Definition: graphics_component.hpp:78
    -
    Vec2f scale
    Definition: graphics_component.hpp:31
    -
    Entity * myEntity
    Definition: graphics_component.hpp:25
    -
    GraphicsSystem * myGraphicsSystem
    Definition: graphics_component.hpp:26
    -
    Definition: rapidxml.hpp:139
    -
    Definition: rapidxml.hpp:137
    -
    Vec2f position
    Definition: graphics_component.hpp:30
    -
    void setPriority(int priority)
    Definition: graphics_component.cpp:44
    +
    Definition: graphics_system.hpp:17
    +
    - + diff --git a/doc/doxy/html/graphics__system_8hpp_source.html b/doc/doxy/html/graphics__system_8hpp_source.html index 7ae8abd..4e91f8e 100644 --- a/doc/doxy/html/graphics__system_8hpp_source.html +++ b/doc/doxy/html/graphics__system_8hpp_source.html @@ -3,15 +3,24 @@ - -OWMAN: renderer/graphics_system.hpp Source File + +owman: graphics_system.hpp Source File + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -63,15 +70,29 @@ + +
    + +
    +
    +
    + +
    +
    @@ -80,123 +101,95 @@
    - -
    graphics_system.hpp
    -Go to the documentation of this file.
    -
    2 #include "sprite_factory.hpp"
    -
    3 #include <string>
    -
    4 #include <set>
    -
    5 #include <vector>
    -
    6 #include "camera.hpp"
    -
    7 
    -
    8 #ifndef ENGINE
    -
    9 class Engine;
    -
    10 #endif
    -
    11 
    -
    12 #ifndef GRAPHICS_SYSTEM
    -
    13 #define GRAPHICS_SYSTEM
    -
    14 
    - -
    16 {
    -
    17 
    -
    18  enum class PendingTaskType
    -
    19  {
    - -
    21  };
    -
    22 
    - -
    24  {
    -
    25  public:
    -
    26  PendingTask(const PendingTaskType& type, void* pointer);
    +
    1 #ifndef GRAPHICS_SYSTEM
    +
    2 #define GRAPHICS_SYSTEM
    +
    3 
    +
    4 #include "low_level_renderer_2d.hpp"
    +
    5 #include <string>
    +
    6 #include <set>
    +
    7 #include <vector>
    +
    8 #include "camera.hpp"
    +
    9 #include "texture_manager.hpp"
    +
    10 #include "sprite_manager.hpp"
    +
    11 
    +
    12 class Engine;
    +
    13 class GraphicsComponent;
    +
    14 class Sprite;
    +
    15 class SpriteStatus;
    +
    16 
    + +
    18 {
    +
    19 
    +
    20  Engine* myEngine;
    +
    21 
    +
    22  TextureManager textureManager;
    +
    23  SpriteManager spriteManager;
    +
    24 
    +
    25  Camera camera;
    +
    26  LowLevelRenderer2D renderer;
    27 
    - -
    29  void* pointer;
    -
    30  };
    +
    28  std::set<GraphicsComponent*> components;
    +
    29 
    +
    30 public:
    31 
    -
    32  std::vector<PendingTask> pendingTasks;
    -
    33 
    - -
    35 
    - - + +
    33  (
    +
    34  std::string windowTitle,
    +
    35  unsigned int width, unsigned int height,
    +
    36  bool fullScreen
    +
    37  );
    38 
    -
    39  std::set<GraphicsComponent*> components;
    -
    40 
    -
    41  // Factories
    - -
    43 
    -
    44 public:
    -
    45 
    - -
    47  (
    -
    48  std::string windowTitle,
    -
    49  unsigned int width, unsigned int height,
    -
    50  bool fullScreen
    -
    51  );
    -
    52 
    -
    55  void update(unsigned int delta);
    -
    56 
    -
    57  void draw();
    -
    58 
    -
    63  void swap();
    +
    41  void update(unsigned int delta);
    +
    42 
    +
    45  void setFullScreen(bool b);
    +
    46 
    +
    47  void draw();
    +
    48 
    +
    53  void swap();
    +
    54 
    +
    55  SpriteStatus* instanceSprite(std::string fileName, const Vec2f& scale = Vec2f(1, 1));
    +
    56  void destroySpriteInstance(SpriteStatus* sprite);
    +
    57 
    +
    58  void destroyGraphicsComponent(GraphicsComponent* graphicsComponent);
    +
    59 
    +
    60  LowLevelRenderer2D* getRenderer();
    +
    61  Camera* getCamera();
    +
    62  TextureManager* getTextureManager();
    +
    63  SpriteManager* getSpriteManager();
    64 
    -
    65  Sprite* createSprite(std::string fileName, const Vec2f& scale);
    -
    66  void destroySprite(Sprite* sprite);
    -
    67 
    -
    68  void destroyGraphicsComponent(GraphicsComponent* graphicsComponent);
    -
    69 
    - -
    71  Camera* getCamera();
    -
    72 
    -
    73 };
    -
    74 
    -
    75 #endif
    -
    Definition: vec2f.hpp:9
    -
    Definition: graphics_component.hpp:17
    -
    std::set< GraphicsComponent * > components
    Definition: graphics_system.hpp:39
    - -
    Camera * getCamera()
    Definition: graphics_system.cpp:169
    -
    Sprite * createSprite(std::string fileName, const Vec2f &scale)
    Definition: graphics_system.cpp:126
    -
    void draw()
    Definition: graphics_system.cpp:83
    -
    High level abstraction camera You can set the position and dimensions of the camera.
    Definition: camera.hpp:13
    -
    void update(unsigned int delta)
    update animations
    Definition: graphics_system.cpp:35
    -
    Definition: graphics_system.hpp:23
    -
    SpriteFactory spriteFactory
    Definition: graphics_system.hpp:42
    -
    PendingTaskType pendingTaskType
    Definition: graphics_system.hpp:28
    -
    Engine * myEngine
    Definition: graphics_system.hpp:34
    -
    void destroySprite(Sprite *sprite)
    Definition: graphics_system.cpp:134
    -
    Represents a static sprite This sprite has no animations.
    Definition: sprite.hpp:23
    - -
    PendingTaskType
    Definition: graphics_system.hpp:18
    -
    Definition: low_level_renderer_2d.hpp:13
    -
    LowLevelRenderer2D * getRenderer()
    Definition: graphics_system.cpp:164
    -
    std::vector< PendingTask > pendingTasks
    Definition: graphics_system.hpp:32
    -
    Definition: graphics_system.hpp:15
    -
    void destroyGraphicsComponent(GraphicsComponent *graphicsComponent)
    Definition: graphics_system.cpp:157
    - -
    GraphicsSystem(std::string windowTitle, unsigned int width, unsigned int height, bool fullScreen)
    Definition: graphics_system.cpp:15
    -
    PendingTask(const PendingTaskType &type, void *pointer)
    Definition: graphics_system.cpp:8
    - -
    Definition: sprite_factory.hpp:11
    -
    Camera camera
    Definition: graphics_system.hpp:36
    -
    LowLevelRenderer2D renderer
    Definition: graphics_system.hpp:37
    -
    void * pointer
    Definition: graphics_system.hpp:29
    +
    65  void end();
    +
    66 
    +
    67 };
    +
    68 
    +
    69 #endif
    +
    Definition: vec2f.hpp:10
    +
    Definition: graphics_component.hpp:12
    +
    Definition: texture_manager.hpp:18
    +
    void setFullScreen(bool b)
    set fullscreen mode
    Definition: graphics_system.cpp:33
    +
    High level abstraction camera You can set the position and dimensions of the camera.
    Definition: camera.hpp:11
    +
    void update(unsigned int delta)
    update animations
    Definition: graphics_system.cpp:38
    +
    Represents a static sprite This sprite has no animations.
    Definition: sprite.hpp:21
    +
    Definition: low_level_renderer_2d.hpp:16
    +
    Definition: graphics_system.hpp:17
    encapsulates all systems Has the main loop. Contains all systems like graphics system and physics sys...
    Definition: engine.hpp:16
    -
    void swap()
    Swap buffers Once you ave drawn all the components \ call this function to swap buffers.
    Definition: graphics_system.cpp:119
    +
    Definition: sprite_manager.hpp:35
    +
    Definition: sprite_status.hpp:10
    +
    void swap()
    Swap buffers Once you ave drawn all the components \ call this function to swap buffers.
    Definition: graphics_system.cpp:87
    +
    - + diff --git a/doc/doxy/html/hierarchy.html b/doc/doxy/html/hierarchy.html index 9246382..415edb3 100644 --- a/doc/doxy/html/hierarchy.html +++ b/doc/doxy/html/hierarchy.html @@ -3,15 +3,24 @@ - -OWMAN: Class Hierarchy + +owman: Class Hierarchy + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -69,12 +76,26 @@ +
    + +
    +
    +
    + +
    +
    @@ -89,75 +110,66 @@
    This inheritance list is sorted roughly, but not completely, alphabetically:
    -
    [detail level 123]
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
    [detail level 12]
    oCrapidxml::attribute_iterator< Ch >Iterator of child attributes of xml_node
    oCrapidxml::xml_document< Ch >::attribute_name_pred
    oCrapidxml::xml_document< Ch >::attribute_value_pred< Quote >
    oCrapidxml::xml_document< Ch >::attribute_value_pure_pred< Quote >
    oCCameraHigh level abstraction camera You can set the position and dimensions of the camera
    oCLowLevelRenderer2D::Camera
    oCColorColor of 4 float components(r, g, b, a)
    oCEngineEncapsulates all systems Has the main loop. Contains all systems like graphics system and physics system
    oCEntityComponents compounded entity
    |\CMainCharacter
    oCEntityFactory
    oCEventHandler
    oCexception
    |\Crapidxml::parse_error
    oCrapidxml::file< Ch >Represents data loaded from a file
    oCGraphicsComponent
    |\CSpriteRepresents a static sprite This sprite has no animations
    oCGraphicsSystem
    oCrapidxml::memory_pool< Ch >::header
    oCIWorldStreamer
    |oCTestWorldStreamer
    |\CWorldStreamer
    oCLowLevelRenderer2D
    oCrapidxml::memory_pool< Ch >
    |\Crapidxml::xml_document< Ch >
    oCrapidxml::node_iterator< Ch >Iterator of child nodes of xml_node
    oCrapidxml::xml_document< Ch >::node_name_pred
    oCGraphicsSystem::PendingTask
    oCPhysicsBoxFactory
    oCPhysicsComponent
    |\CPhysicsBox
    oCPhysicsSystem
    oCPosition
    oCResourceAbstract resource data class This class hold the data for different types of resource. In order to create a new type of resource just extend from this class
    |oCResourceCellCell resource This class is a modifiable resource. When there are no references to this resource the changes will be stored
    |oCResourceText
    |\CResourceTextureRepresents a resource texture Since OpenGL does not allow to make any call from any other thread other than the main thread, the resource manager can not load anything to video memory. So for this resource, to be LOADED means to be loaded in main memory and to be READY means to be loaded in video memory
    oCResourceFactory
    |oCResourceCellFactory
    |oCResourceTextFactory
    |\CResourceTextureFactory
    oCResourceManagerThis is the singleton you should use Requesting resources will deliver a resource pointer event if the resource data is not loaded. You can check if a resource has been loaded checking the status attribute
    oCResourceRequest
    oCResourceTable
    oCResourceTableEntry
    oCSpriteFactory
    oCrapidxml::xml_document< Ch >::text_pred
    oCrapidxml::xml_document< Ch >::text_pure_no_ws_pred
    oCrapidxml::xml_document< Ch >::text_pure_with_ws_pred
    oCLowLevelRenderer2D::Texture
    oCVec2f
    oCVec2i
    oCrapidxml::xml_document< Ch >::whitespace_pred
    oCWorkQueue< T >Thread safe queue This queue can be used concurrently by several threads. It is specially designed for the consumer producer-pattern
    oCWorkQueue< ResourceRequest >
    oCWorldWindow
    \Crapidxml::xml_base< Ch >
     oCrapidxml::xml_attribute< Ch >
     \Crapidxml::xml_node< Ch >
      \Crapidxml::xml_document< Ch >
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     CAARect
     CAnimation
     CAnimationFrame
     CLowLevelRenderer2D::Camera
     CCameraHigh level abstraction camera You can set the position and dimensions of the camera
     CColorColor of 4 float components(r, g, b, a)
     CCompareSpriteByName
     CEngineEncapsulates all systems Has the main loop. Contains all systems like graphics system and physics system
     CEntityComponents compounded entity
     CMainCharacter
     CEntityFactory
     CEventHandler
     Cexception
     CException
     CGraphicsComponent
     CSpriteStatus
     CGraphicsSystem
     CIWorldStreamer
     CTestWorldStreamer
     CWorldStreamer
     CLowLevelRenderer2D
     CPhysicsBoxFactory
     CPhysicsCircleFactory
     CPhysicsComponent
     CPhysicsBox
     CPhysicsCircle
     CPhysicsSystem
     CResourceAbstract resource data class This class hold the data for different types of resource. In order to create a new type of resource just extend from this class
     CResourceCellCell resource This class is a modifiable resource. When there are no references to this resource the changes will be stored
     CResourceText
     CResourceTextureRepresents a resource texture Since OpenGL does not allow to make any call from any other thread other than the main thread, the resource manager can not load anything to video memory. So for this resource, to be LOADED means to be loaded in main memory and to be READY means to be loaded in video memory
     CResourceManagerThis is the singleton you should use Requesting resources will deliver a resource pointer event if the resource data is not loaded. You can check if a resource has been loaded checking the status attribute
     CResourceRequest
     CResourceTable
     CResourceTableEntry
     CSpriteRepresents a static sprite This sprite has no animations
     CSpriteManager
     CSpriteRefCountEntry
     CLowLevelRenderer2D::SpriteVbo
     CLowLevelRenderer2D::Texture
     CTexture
     CTextureManager
     CTextureRefCountEntry
     CVec2f
     CVec2i
     CWorkQueue< T >Thread safe queue This queue can be used concurrently by several threads. It is specially designed for the consumer producer-pattern
     CWorkQueue< ResourceRequest >
     CWorldWindow
    + - + diff --git a/doc/doxy/html/hierarchy.js b/doc/doxy/html/hierarchy.js index 5abc2ee..2edc866 100644 --- a/doc/doxy/html/hierarchy.js +++ b/doc/doxy/html/hierarchy.js @@ -1,16 +1,23 @@ var hierarchy = [ - [ "Camera", "class_camera.html", null ], + [ "AARect", "class_a_a_rect.html", null ], + [ "Animation", "class_animation.html", null ], + [ "AnimationFrame", "class_animation_frame.html", null ], [ "LowLevelRenderer2D::Camera", "class_low_level_renderer2_d_1_1_camera.html", null ], + [ "Camera", "class_camera.html", null ], [ "Color", "class_color.html", null ], + [ "CompareSpriteByName", "struct_compare_sprite_by_name.html", null ], [ "Engine", "class_engine.html", null ], [ "Entity", "class_entity.html", [ [ "MainCharacter", "class_main_character.html", null ] ] ], [ "EntityFactory", "class_entity_factory.html", null ], [ "EventHandler", "class_event_handler.html", null ], + [ "exception", null, [ + [ "Exception", "class_exception.html", null ] + ] ], [ "GraphicsComponent", "class_graphics_component.html", [ - [ "Sprite", "class_sprite.html", null ] + [ "SpriteStatus", "class_sprite_status.html", null ] ] ], [ "GraphicsSystem", "class_graphics_system.html", null ], [ "IWorldStreamer", "class_i_world_streamer.html", [ @@ -19,8 +26,10 @@ var hierarchy = ] ], [ "LowLevelRenderer2D", "class_low_level_renderer2_d.html", null ], [ "PhysicsBoxFactory", "class_physics_box_factory.html", null ], + [ "PhysicsCircleFactory", "class_physics_circle_factory.html", null ], [ "PhysicsComponent", "class_physics_component.html", [ - [ "PhysicsBox", "class_physics_box.html", null ] + [ "PhysicsBox", "class_physics_box.html", null ], + [ "PhysicsCircle", "class_physics_circle.html", null ] ] ], [ "PhysicsSystem", "class_physics_system.html", null ], [ "Resource", "class_resource.html", [ @@ -28,17 +37,18 @@ var hierarchy = [ "ResourceText", "class_resource_text.html", null ], [ "ResourceTexture", "class_resource_texture.html", null ] ] ], - [ "ResourceFactory", "class_resource_factory.html", [ - [ "ResourceCellFactory", "class_resource_cell_factory.html", null ], - [ "ResourceTextFactory", "class_resource_text_factory.html", null ], - [ "ResourceTextureFactory", "class_resource_texture_factory.html", null ] - ] ], [ "ResourceManager", "class_resource_manager.html", null ], [ "ResourceRequest", "class_resource_request.html", null ], [ "ResourceTable", "class_resource_table.html", null ], [ "ResourceTableEntry", "class_resource_table_entry.html", null ], - [ "SpriteFactory", "class_sprite_factory.html", null ], + [ "Sprite", "class_sprite.html", null ], + [ "SpriteManager", "class_sprite_manager.html", null ], + [ "SpriteRefCountEntry", "struct_sprite_ref_count_entry.html", null ], + [ "LowLevelRenderer2D::SpriteVbo", "class_low_level_renderer2_d_1_1_sprite_vbo.html", null ], [ "LowLevelRenderer2D::Texture", "class_low_level_renderer2_d_1_1_texture.html", null ], + [ "Texture", "class_texture.html", null ], + [ "TextureManager", "class_texture_manager.html", null ], + [ "TextureRefCountEntry", "class_texture_ref_count_entry.html", null ], [ "Vec2f", "class_vec2f.html", null ], [ "Vec2i", "class_vec2i.html", null ], [ "WorkQueue< T >", "class_work_queue.html", null ], diff --git a/doc/doxy/html/i__world__streamer_8hpp_source.html b/doc/doxy/html/i__world__streamer_8hpp_source.html index 0768779..d0c16b3 100644 --- a/doc/doxy/html/i__world__streamer_8hpp_source.html +++ b/doc/doxy/html/i__world__streamer_8hpp_source.html @@ -3,15 +3,24 @@ - -OWMAN: i_world_streamer.hpp Source File + +owman: i_world_streamer.hpp Source File + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -63,16 +70,29 @@ +
    + +
    +
    +
    + +
    +
    @@ -86,80 +106,75 @@
    i_world_streamer.hpp
    -Go to the documentation of this file.
    1 #include <vector>
    -
    2 #include "math/vec2i.hpp"
    -
    3 #include "math/vec2f.hpp"
    +
    1 #include <vector>
    +
    2 #include "math/vec2i.hpp"
    +
    3 #include "math/vec2f.hpp"
    4 
    5 #ifndef ENTITY
    -
    6 class Entity;
    +
    6 class Entity;
    7 #endif
    -
    8 
    +
    8 
    9 #ifndef MAIN_CHARACTER
    -
    10 class MainCharacter;
    +
    10 class MainCharacter;
    11 #endif
    -
    12 
    +
    12 
    13 #ifndef ENTITY_FACTORY
    -
    14 class EntityFactory;
    +
    14 class EntityFactory;
    15 #endif
    -
    16 
    +
    16 
    17 #ifndef I_WORLD_STREAMER
    -
    18 #define I_WORLD_STREAMER
    -
    19 
    +
    18 #define I_WORLD_STREAMER
    +
    19 
    21 {
    22 
    23 protected:
    24 
    - +
    25  EntityFactory* entityFactory;
    26 
    27 public:
    28 
    - +
    29  IWorldStreamer(){}
    30 
    - +
    31  IWorldStreamer(EntityFactory* entityFactory);
    32 
    - - +
    33  EntityFactory* getEntityFactory()const;
    +
    34  void setEntityFactory(EntityFactory* entityFactory);
    35 
    -
    42  virtual void init(const Vec2i& cell, const Vec2f& offset) = 0;
    +
    42  virtual void init(const Vec2i& cell, const Vec2f& offset) = 0;
    43 
    -
    49  virtual void update(const Vec2f& position, MainCharacter* mainCharacter) = 0;
    +
    49  virtual void update(const Vec2f& position, MainCharacter* mainCharacter) = 0;
    50 
    -
    55  virtual std::vector<Entity*> getEntities()const = 0;
    +
    55  virtual std::vector<Entity*> getEntities()const = 0;
    56 
    -
    57  virtual float getCellSize()const;
    +
    57  virtual float getCellSize()const;
    58 
    -
    59  virtual void end() = 0;
    +
    59  virtual void end() = 0;
    60 
    -
    61  virtual ~IWorldStreamer(){}
    +
    61  virtual ~IWorldStreamer(){}
    62 
    63 };
    64 
    65 #endif
    -
    Definition: vec2f.hpp:9
    +
    Definition: vec2f.hpp:10
    virtual std::vector< Entity * > getEntities() const =0
    Returns a vector of pointers to all the active entities.
    Definition: i_world_streamer.hpp:20
    -
    IWorldStreamer()
    Definition: i_world_streamer.hpp:29
    -
    virtual void end()=0
    Definition: entity_factory.hpp:12
    -
    EntityFactory * getEntityFactory() const
    Definition: i_world_streamer.cpp:3
    -
    void setEntityFactory(EntityFactory *entityFactory)
    Definition: i_world_streamer.cpp:13
    virtual void init(const Vec2i &cell, const Vec2f &offset)=0
    Inits the world streamer.
    -
    Components compounded entity.
    Definition: entity.hpp:19
    Definition: main_character.hpp:15
    -
    virtual ~IWorldStreamer()
    Definition: i_world_streamer.hpp:61
    virtual void update(const Vec2f &position, MainCharacter *mainCharacter)=0
    Updates the world streamer.
    -
    virtual float getCellSize() const
    Definition: i_world_streamer.cpp:8
    - -
    Definition: vec2i.hpp:10
    -
    EntityFactory * entityFactory
    Definition: i_world_streamer.hpp:25
    +
    Definition: vec2i.hpp:11
    +
    - + diff --git a/doc/doxy/html/index.html b/doc/doxy/html/index.html index ec03aff..fb78b22 100644 --- a/doc/doxy/html/index.html +++ b/doc/doxy/html/index.html @@ -3,15 +3,24 @@ - -OWMAN: Main Page + +owman: Main Page + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -61,12 +68,26 @@ +
    + +
    +
    +
    + +
    +
    @@ -77,15 +98,18 @@
    -
    OWMAN Documentation
    +
    owman Documentation
    + - + diff --git a/doc/doxy/html/jquery.js b/doc/doxy/html/jquery.js index c197801..d52a1c7 100644 --- a/doc/doxy/html/jquery.js +++ b/doc/doxy/html/jquery.js @@ -1,4 +1,4 @@ -/*! +/* * jQuery JavaScript Library v1.7.1 * http://jquery.com/ * @@ -13,19 +13,56 @@ * * Date: Mon Nov 21 21:11:03 2011 -0500 */ -(function(bb,L){var av=bb.document,bu=bb.navigator,bl=bb.location;var b=(function(){var bF=function(b0,b1){return new bF.fn.init(b0,b1,bD)},bU=bb.jQuery,bH=bb.$,bD,bY=/^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,bM=/\S/,bI=/^\s+/,bE=/\s+$/,bA=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,bN=/^[\],:{}\s]*$/,bW=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,bP=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,bJ=/(?:^|:|,)(?:\s*\[)+/g,by=/(webkit)[ \/]([\w.]+)/,bR=/(opera)(?:.*version)?[ \/]([\w.]+)/,bQ=/(msie) ([\w.]+)/,bS=/(mozilla)(?:.*? rv:([\w.]+))?/,bB=/-([a-z]|[0-9])/ig,bZ=/^-ms-/,bT=function(b0,b1){return(b1+"").toUpperCase()},bX=bu.userAgent,bV,bC,e,bL=Object.prototype.toString,bG=Object.prototype.hasOwnProperty,bz=Array.prototype.push,bK=Array.prototype.slice,bO=String.prototype.trim,bv=Array.prototype.indexOf,bx={};bF.fn=bF.prototype={constructor:bF,init:function(b0,b4,b3){var b2,b5,b1,b6;if(!b0){return this}if(b0.nodeType){this.context=this[0]=b0;this.length=1;return this}if(b0==="body"&&!b4&&av.body){this.context=av;this[0]=av.body;this.selector=b0;this.length=1;return this}if(typeof b0==="string"){if(b0.charAt(0)==="<"&&b0.charAt(b0.length-1)===">"&&b0.length>=3){b2=[null,b0,null]}else{b2=bY.exec(b0)}if(b2&&(b2[1]||!b4)){if(b2[1]){b4=b4 instanceof bF?b4[0]:b4;b6=(b4?b4.ownerDocument||b4:av);b1=bA.exec(b0);if(b1){if(bF.isPlainObject(b4)){b0=[av.createElement(b1[1])];bF.fn.attr.call(b0,b4,true)}else{b0=[b6.createElement(b1[1])]}}else{b1=bF.buildFragment([b2[1]],[b6]);b0=(b1.cacheable?bF.clone(b1.fragment):b1.fragment).childNodes}return bF.merge(this,b0)}else{b5=av.getElementById(b2[2]);if(b5&&b5.parentNode){if(b5.id!==b2[2]){return b3.find(b0)}this.length=1;this[0]=b5}this.context=av;this.selector=b0;return this}}else{if(!b4||b4.jquery){return(b4||b3).find(b0)}else{return this.constructor(b4).find(b0)}}}else{if(bF.isFunction(b0)){return b3.ready(b0)}}if(b0.selector!==L){this.selector=b0.selector;this.context=b0.context}return bF.makeArray(b0,this)},selector:"",jquery:"1.7.1",length:0,size:function(){return this.length},toArray:function(){return bK.call(this,0)},get:function(b0){return b0==null?this.toArray():(b0<0?this[this.length+b0]:this[b0])},pushStack:function(b1,b3,b0){var b2=this.constructor();if(bF.isArray(b1)){bz.apply(b2,b1)}else{bF.merge(b2,b1)}b2.prevObject=this;b2.context=this.context;if(b3==="find"){b2.selector=this.selector+(this.selector?" ":"")+b0}else{if(b3){b2.selector=this.selector+"."+b3+"("+b0+")"}}return b2},each:function(b1,b0){return bF.each(this,b1,b0)},ready:function(b0){bF.bindReady();bC.add(b0);return this},eq:function(b0){b0=+b0;return b0===-1?this.slice(b0):this.slice(b0,b0+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(bK.apply(this,arguments),"slice",bK.call(arguments).join(","))},map:function(b0){return this.pushStack(bF.map(this,function(b2,b1){return b0.call(b2,b1,b2)}))},end:function(){return this.prevObject||this.constructor(null)},push:bz,sort:[].sort,splice:[].splice};bF.fn.init.prototype=bF.fn;bF.extend=bF.fn.extend=function(){var b9,b2,b0,b1,b6,b7,b5=arguments[0]||{},b4=1,b3=arguments.length,b8=false;if(typeof b5==="boolean"){b8=b5;b5=arguments[1]||{};b4=2}if(typeof b5!=="object"&&!bF.isFunction(b5)){b5={}}if(b3===b4){b5=this;--b4}for(;b40){return}bC.fireWith(av,[bF]);if(bF.fn.trigger){bF(av).trigger("ready").off("ready")}}},bindReady:function(){if(bC){return}bC=bF.Callbacks("once memory");if(av.readyState==="complete"){return setTimeout(bF.ready,1)}if(av.addEventListener){av.addEventListener("DOMContentLoaded",e,false);bb.addEventListener("load",bF.ready,false)}else{if(av.attachEvent){av.attachEvent("onreadystatechange",e);bb.attachEvent("onload",bF.ready);var b0=false;try{b0=bb.frameElement==null}catch(b1){}if(av.documentElement.doScroll&&b0){bw()}}}},isFunction:function(b0){return bF.type(b0)==="function"},isArray:Array.isArray||function(b0){return bF.type(b0)==="array"},isWindow:function(b0){return b0&&typeof b0==="object"&&"setInterval" in b0},isNumeric:function(b0){return !isNaN(parseFloat(b0))&&isFinite(b0)},type:function(b0){return b0==null?String(b0):bx[bL.call(b0)]||"object"},isPlainObject:function(b2){if(!b2||bF.type(b2)!=="object"||b2.nodeType||bF.isWindow(b2)){return false}try{if(b2.constructor&&!bG.call(b2,"constructor")&&!bG.call(b2.constructor.prototype,"isPrototypeOf")){return false}}catch(b1){return false}var b0;for(b0 in b2){}return b0===L||bG.call(b2,b0)},isEmptyObject:function(b1){for(var b0 in b1){return false}return true},error:function(b0){throw new Error(b0)},parseJSON:function(b0){if(typeof b0!=="string"||!b0){return null}b0=bF.trim(b0);if(bb.JSON&&bb.JSON.parse){return bb.JSON.parse(b0)}if(bN.test(b0.replace(bW,"@").replace(bP,"]").replace(bJ,""))){return(new Function("return "+b0))()}bF.error("Invalid JSON: "+b0)},parseXML:function(b2){var b0,b1;try{if(bb.DOMParser){b1=new DOMParser();b0=b1.parseFromString(b2,"text/xml")}else{b0=new ActiveXObject("Microsoft.XMLDOM");b0.async="false";b0.loadXML(b2)}}catch(b3){b0=L}if(!b0||!b0.documentElement||b0.getElementsByTagName("parsererror").length){bF.error("Invalid XML: "+b2)}return b0},noop:function(){},globalEval:function(b0){if(b0&&bM.test(b0)){(bb.execScript||function(b1){bb["eval"].call(bb,b1)})(b0)}},camelCase:function(b0){return b0.replace(bZ,"ms-").replace(bB,bT)},nodeName:function(b1,b0){return b1.nodeName&&b1.nodeName.toUpperCase()===b0.toUpperCase()},each:function(b3,b6,b2){var b1,b4=0,b5=b3.length,b0=b5===L||bF.isFunction(b3);if(b2){if(b0){for(b1 in b3){if(b6.apply(b3[b1],b2)===false){break}}}else{for(;b40&&b0[0]&&b0[b1-1])||b1===0||bF.isArray(b0));if(b3){for(;b21?aJ.call(arguments,0):bG;if(!(--bw)){bC.resolveWith(bC,bx)}}}function bz(bF){return function(bG){bB[bF]=arguments.length>1?aJ.call(arguments,0):bG;bC.notifyWith(bE,bB)}}if(e>1){for(;bv
    a";bI=bv.getElementsByTagName("*");bF=bv.getElementsByTagName("a")[0];if(!bI||!bI.length||!bF){return{}}bG=av.createElement("select");bx=bG.appendChild(av.createElement("option"));bE=bv.getElementsByTagName("input")[0];bJ={leadingWhitespace:(bv.firstChild.nodeType===3),tbody:!bv.getElementsByTagName("tbody").length,htmlSerialize:!!bv.getElementsByTagName("link").length,style:/top/.test(bF.getAttribute("style")),hrefNormalized:(bF.getAttribute("href")==="/a"),opacity:/^0.55/.test(bF.style.opacity),cssFloat:!!bF.style.cssFloat,checkOn:(bE.value==="on"),optSelected:bx.selected,getSetAttribute:bv.className!=="t",enctype:!!av.createElement("form").enctype,html5Clone:av.createElement("nav").cloneNode(true).outerHTML!=="<:nav>",submitBubbles:true,changeBubbles:true,focusinBubbles:false,deleteExpando:true,noCloneEvent:true,inlineBlockNeedsLayout:false,shrinkWrapBlocks:false,reliableMarginRight:true};bE.checked=true;bJ.noCloneChecked=bE.cloneNode(true).checked;bG.disabled=true;bJ.optDisabled=!bx.disabled;try{delete bv.test}catch(bC){bJ.deleteExpando=false}if(!bv.addEventListener&&bv.attachEvent&&bv.fireEvent){bv.attachEvent("onclick",function(){bJ.noCloneEvent=false});bv.cloneNode(true).fireEvent("onclick")}bE=av.createElement("input");bE.value="t";bE.setAttribute("type","radio");bJ.radioValue=bE.value==="t";bE.setAttribute("checked","checked");bv.appendChild(bE);bD=av.createDocumentFragment();bD.appendChild(bv.lastChild);bJ.checkClone=bD.cloneNode(true).cloneNode(true).lastChild.checked;bJ.appendChecked=bE.checked;bD.removeChild(bE);bD.appendChild(bv);bv.innerHTML="";if(bb.getComputedStyle){bA=av.createElement("div");bA.style.width="0";bA.style.marginRight="0";bv.style.width="2px";bv.appendChild(bA);bJ.reliableMarginRight=(parseInt((bb.getComputedStyle(bA,null)||{marginRight:0}).marginRight,10)||0)===0}if(bv.attachEvent){for(by in {submit:1,change:1,focusin:1}){bB="on"+by;bw=(bB in bv);if(!bw){bv.setAttribute(bB,"return;");bw=(typeof bv[bB]==="function")}bJ[by+"Bubbles"]=bw}}bD.removeChild(bv);bD=bG=bx=bA=bv=bE=null;b(function(){var bM,bU,bV,bT,bN,bO,bL,bS,bR,e,bP,bQ=av.getElementsByTagName("body")[0];if(!bQ){return}bL=1;bS="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;";bR="visibility:hidden;border:0;";e="style='"+bS+"border:5px solid #000;padding:0;'";bP="
    ";bM=av.createElement("div");bM.style.cssText=bR+"width:0;height:0;position:static;top:0;margin-top:"+bL+"px";bQ.insertBefore(bM,bQ.firstChild);bv=av.createElement("div");bM.appendChild(bv);bv.innerHTML="
    t
    ";bz=bv.getElementsByTagName("td");bw=(bz[0].offsetHeight===0);bz[0].style.display="";bz[1].style.display="none";bJ.reliableHiddenOffsets=bw&&(bz[0].offsetHeight===0);bv.innerHTML="";bv.style.width=bv.style.paddingLeft="1px";b.boxModel=bJ.boxModel=bv.offsetWidth===2;if(typeof bv.style.zoom!=="undefined"){bv.style.display="inline";bv.style.zoom=1;bJ.inlineBlockNeedsLayout=(bv.offsetWidth===2);bv.style.display="";bv.innerHTML="
    ";bJ.shrinkWrapBlocks=(bv.offsetWidth!==2)}bv.style.cssText=bS+bR;bv.innerHTML=bP;bU=bv.firstChild;bV=bU.firstChild;bN=bU.nextSibling.firstChild.firstChild;bO={doesNotAddBorder:(bV.offsetTop!==5),doesAddBorderForTableAndCells:(bN.offsetTop===5)};bV.style.position="fixed";bV.style.top="20px";bO.fixedPosition=(bV.offsetTop===20||bV.offsetTop===15);bV.style.position=bV.style.top="";bU.style.overflow="hidden";bU.style.position="relative";bO.subtractsBorderForOverflowNotVisible=(bV.offsetTop===-5);bO.doesNotIncludeMarginInBodyOffset=(bQ.offsetTop!==bL);bQ.removeChild(bM);bv=bM=null;b.extend(bJ,bO)});return bJ})();var aS=/^(?:\{.*\}|\[.*\])$/,aA=/([A-Z])/g;b.extend({cache:{},uuid:0,expando:"jQuery"+(b.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:true,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:true},hasData:function(e){e=e.nodeType?b.cache[e[b.expando]]:e[b.expando];return !!e&&!S(e)},data:function(bx,bv,bz,by){if(!b.acceptData(bx)){return}var bG,bA,bD,bE=b.expando,bC=typeof bv==="string",bF=bx.nodeType,e=bF?b.cache:bx,bw=bF?bx[bE]:bx[bE]&&bE,bB=bv==="events";if((!bw||!e[bw]||(!bB&&!by&&!e[bw].data))&&bC&&bz===L){return}if(!bw){if(bF){bx[bE]=bw=++b.uuid}else{bw=bE}}if(!e[bw]){e[bw]={};if(!bF){e[bw].toJSON=b.noop}}if(typeof bv==="object"||typeof bv==="function"){if(by){e[bw]=b.extend(e[bw],bv)}else{e[bw].data=b.extend(e[bw].data,bv)}}bG=bA=e[bw];if(!by){if(!bA.data){bA.data={}}bA=bA.data}if(bz!==L){bA[b.camelCase(bv)]=bz}if(bB&&!bA[bv]){return bG.events}if(bC){bD=bA[bv];if(bD==null){bD=bA[b.camelCase(bv)]}}else{bD=bA}return bD},removeData:function(bx,bv,by){if(!b.acceptData(bx)){return}var bB,bA,bz,bC=b.expando,bD=bx.nodeType,e=bD?b.cache:bx,bw=bD?bx[bC]:bC;if(!e[bw]){return}if(bv){bB=by?e[bw]:e[bw].data;if(bB){if(!b.isArray(bv)){if(bv in bB){bv=[bv]}else{bv=b.camelCase(bv);if(bv in bB){bv=[bv]}else{bv=bv.split(" ")}}}for(bA=0,bz=bv.length;bA-1){return true}}return false},val:function(bx){var e,bv,by,bw=this[0];if(!arguments.length){if(bw){e=b.valHooks[bw.nodeName.toLowerCase()]||b.valHooks[bw.type];if(e&&"get" in e&&(bv=e.get(bw,"value"))!==L){return bv}bv=bw.value;return typeof bv==="string"?bv.replace(aU,""):bv==null?"":bv}return}by=b.isFunction(bx);return this.each(function(bA){var bz=b(this),bB;if(this.nodeType!==1){return}if(by){bB=bx.call(this,bA,bz.val())}else{bB=bx}if(bB==null){bB=""}else{if(typeof bB==="number"){bB+=""}else{if(b.isArray(bB)){bB=b.map(bB,function(bC){return bC==null?"":bC+""})}}}e=b.valHooks[this.nodeName.toLowerCase()]||b.valHooks[this.type];if(!e||!("set" in e)||e.set(this,bB,"value")===L){this.value=bB}})}});b.extend({valHooks:{option:{get:function(e){var bv=e.attributes.value;return !bv||bv.specified?e.value:e.text}},select:{get:function(e){var bA,bv,bz,bx,by=e.selectedIndex,bB=[],bC=e.options,bw=e.type==="select-one";if(by<0){return null}bv=bw?by:0;bz=bw?by+1:bC.length;for(;bv=0});if(!e.length){bv.selectedIndex=-1}return e}}},attrFn:{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true},attr:function(bA,bx,bB,bz){var bw,e,by,bv=bA.nodeType; -if(!bA||bv===3||bv===8||bv===2){return}if(bz&&bx in b.attrFn){return b(bA)[bx](bB)}if(typeof bA.getAttribute==="undefined"){return b.prop(bA,bx,bB)}by=bv!==1||!b.isXMLDoc(bA);if(by){bx=bx.toLowerCase();e=b.attrHooks[bx]||(ao.test(bx)?aY:be)}if(bB!==L){if(bB===null){b.removeAttr(bA,bx);return}else{if(e&&"set" in e&&by&&(bw=e.set(bA,bB,bx))!==L){return bw}else{bA.setAttribute(bx,""+bB);return bB}}}else{if(e&&"get" in e&&by&&(bw=e.get(bA,bx))!==null){return bw}else{bw=bA.getAttribute(bx);return bw===null?L:bw}}},removeAttr:function(bx,bz){var by,bA,bv,e,bw=0;if(bz&&bx.nodeType===1){bA=bz.toLowerCase().split(af);e=bA.length;for(;bw=0)}}})});var bd=/^(?:textarea|input|select)$/i,n=/^([^\.]*)?(?:\.(.+))?$/,J=/\bhover(\.\S+)?\b/,aO=/^key/,bf=/^(?:mouse|contextmenu)|click/,T=/^(?:focusinfocus|focusoutblur)$/,U=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,Y=function(e){var bv=U.exec(e);if(bv){bv[1]=(bv[1]||"").toLowerCase();bv[3]=bv[3]&&new RegExp("(?:^|\\s)"+bv[3]+"(?:\\s|$)")}return bv},j=function(bw,e){var bv=bw.attributes||{};return((!e[1]||bw.nodeName.toLowerCase()===e[1])&&(!e[2]||(bv.id||{}).value===e[2])&&(!e[3]||e[3].test((bv["class"]||{}).value)))},bt=function(e){return b.event.special.hover?e:e.replace(J,"mouseenter$1 mouseleave$1")};b.event={add:function(bx,bC,bJ,bA,by){var bD,bB,bK,bI,bH,bF,e,bG,bv,bz,bw,bE;if(bx.nodeType===3||bx.nodeType===8||!bC||!bJ||!(bD=b._data(bx))){return}if(bJ.handler){bv=bJ;bJ=bv.handler}if(!bJ.guid){bJ.guid=b.guid++}bK=bD.events;if(!bK){bD.events=bK={}}bB=bD.handle;if(!bB){bD.handle=bB=function(bL){return typeof b!=="undefined"&&(!bL||b.event.triggered!==bL.type)?b.event.dispatch.apply(bB.elem,arguments):L};bB.elem=bx}bC=b.trim(bt(bC)).split(" ");for(bI=0;bI=0){bG=bG.slice(0,-1);bw=true}if(bG.indexOf(".")>=0){bx=bG.split(".");bG=bx.shift();bx.sort()}if((!bA||b.event.customEvent[bG])&&!b.event.global[bG]){return}bv=typeof bv==="object"?bv[b.expando]?bv:new b.Event(bG,bv):new b.Event(bG);bv.type=bG;bv.isTrigger=true;bv.exclusive=bw;bv.namespace=bx.join(".");bv.namespace_re=bv.namespace?new RegExp("(^|\\.)"+bx.join("\\.(?:.*\\.)?")+"(\\.|$)"):null;by=bG.indexOf(":")<0?"on"+bG:"";if(!bA){e=b.cache;for(bC in e){if(e[bC].events&&e[bC].events[bG]){b.event.trigger(bv,bD,e[bC].handle.elem,true)}}return}bv.result=L;if(!bv.target){bv.target=bA}bD=bD!=null?b.makeArray(bD):[];bD.unshift(bv);bF=b.event.special[bG]||{};if(bF.trigger&&bF.trigger.apply(bA,bD)===false){return}bB=[[bA,bF.bindType||bG]];if(!bJ&&!bF.noBubble&&!b.isWindow(bA)){bI=bF.delegateType||bG;bH=T.test(bI+bG)?bA:bA.parentNode;bz=null;for(;bH;bH=bH.parentNode){bB.push([bH,bI]);bz=bH}if(bz&&bz===bA.ownerDocument){bB.push([bz.defaultView||bz.parentWindow||bb,bI])}}for(bC=0;bCbA){bH.push({elem:this,matches:bz.slice(bA)})}for(bC=0;bC0?this.on(e,null,bx,bw):this.trigger(e)};if(b.attrFn){b.attrFn[e]=true}if(aO.test(e)){b.event.fixHooks[e]=b.event.keyHooks}if(bf.test(e)){b.event.fixHooks[e]=b.event.mouseHooks}}); -/*! +(function(bb,L){var av=bb.document,bu=bb.navigator,bl=bb.location;var b=(function(){var bF=function(b0,b1){return new bF.fn.init(b0,b1,bD)},bU=bb.jQuery,bH=bb.$,bD,bY=/^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,bM=/\S/,bI=/^\s+/,bE=/\s+$/,bA=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,bN=/^[\],:{}\s]*$/,bW=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,bP=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,bJ=/(?:^|:|,)(?:\s*\[)+/g,by=/(webkit)[ \/]([\w.]+)/,bR=/(opera)(?:.*version)?[ \/]([\w.]+)/,bQ=/(msie) ([\w.]+)/,bS=/(mozilla)(?:.*? rv:([\w.]+))?/,bB=/-([a-z]|[0-9])/ig,bZ=/^-ms-/,bT=function(b0,b1){return(b1+"").toUpperCase()},bX=bu.userAgent,bV,bC,e,bL=Object.prototype.toString,bG=Object.prototype.hasOwnProperty,bz=Array.prototype.push,bK=Array.prototype.slice,bO=String.prototype.trim,bv=Array.prototype.indexOf,bx={};bF.fn=bF.prototype={constructor:bF,init:function(b0,b4,b3){var b2,b5,b1,b6;if(!b0){return this}if(b0.nodeType){this.context=this[0]=b0;this.length=1;return this}if(b0==="body"&&!b4&&av.body){this.context=av;this[0]=av.body;this.selector=b0;this.length=1;return this}if(typeof b0==="string"){if(b0.charAt(0)==="<"&&b0.charAt(b0.length-1)===">"&&b0.length>=3){b2=[null,b0,null]}else{b2=bY.exec(b0)}if(b2&&(b2[1]||!b4)){if(b2[1]){b4=b4 instanceof bF?b4[0]:b4;b6=(b4?b4.ownerDocument||b4:av);b1=bA.exec(b0);if(b1){if(bF.isPlainObject(b4)){b0=[av.createElement(b1[1])];bF.fn.attr.call(b0,b4,true)}else{b0=[b6.createElement(b1[1])]}}else{b1=bF.buildFragment([b2[1]],[b6]);b0=(b1.cacheable?bF.clone(b1.fragment):b1.fragment).childNodes}return bF.merge(this,b0)}else{b5=av.getElementById(b2[2]);if(b5&&b5.parentNode){if(b5.id!==b2[2]){return b3.find(b0)}this.length=1;this[0]=b5}this.context=av;this.selector=b0;return this}}else{if(!b4||b4.jquery){return(b4||b3).find(b0)}else{return this.constructor(b4).find(b0)}}}else{if(bF.isFunction(b0)){return b3.ready(b0)}}if(b0.selector!==L){this.selector=b0.selector;this.context=b0.context}return bF.makeArray(b0,this)},selector:"",jquery:"1.7.1",length:0,size:function(){return this.length},toArray:function(){return bK.call(this,0)},get:function(b0){return b0==null?this.toArray():(b0<0?this[this.length+b0]:this[b0])},pushStack:function(b1,b3,b0){var b2=this.constructor();if(bF.isArray(b1)){bz.apply(b2,b1)}else{bF.merge(b2,b1)}b2.prevObject=this;b2.context=this.context;if(b3==="find"){b2.selector=this.selector+(this.selector?" ":"")+b0}else{if(b3){b2.selector=this.selector+"."+b3+"("+b0+")"}}return b2},each:function(b1,b0){return bF.each(this,b1,b0)},ready:function(b0){bF.bindReady();bC.add(b0);return this},eq:function(b0){b0=+b0;return b0===-1?this.slice(b0):this.slice(b0,b0+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(bK.apply(this,arguments),"slice",bK.call(arguments).join(","))},map:function(b0){return this.pushStack(bF.map(this,function(b2,b1){return b0.call(b2,b1,b2)}))},end:function(){return this.prevObject||this.constructor(null)},push:bz,sort:[].sort,splice:[].splice};bF.fn.init.prototype=bF.fn;bF.extend=bF.fn.extend=function(){var b9,b2,b0,b1,b6,b7,b5=arguments[0]||{},b4=1,b3=arguments.length,b8=false;if(typeof b5==="boolean"){b8=b5;b5=arguments[1]||{};b4=2}if(typeof b5!=="object"&&!bF.isFunction(b5)){b5={}}if(b3===b4){b5=this;--b4}for(;b40){return}bC.fireWith(av,[bF]);if(bF.fn.trigger){bF(av).trigger("ready").off("ready")}}},bindReady:function(){if(bC){return}bC=bF.Callbacks("once memory");if(av.readyState==="complete"){return setTimeout(bF.ready,1)}if(av.addEventListener){av.addEventListener("DOMContentLoaded",e,false);bb.addEventListener("load",bF.ready,false)}else{if(av.attachEvent){av.attachEvent("onreadystatechange",e);bb.attachEvent("onload",bF.ready);var b0=false;try{b0=bb.frameElement==null}catch(b1){}if(av.documentElement.doScroll&&b0){bw()}}}},isFunction:function(b0){return bF.type(b0)==="function"},isArray:Array.isArray||function(b0){return bF.type(b0)==="array"},isWindow:function(b0){return b0&&typeof b0==="object"&&"setInterval" in b0},isNumeric:function(b0){return !isNaN(parseFloat(b0))&&isFinite(b0)},type:function(b0){return b0==null?String(b0):bx[bL.call(b0)]||"object"},isPlainObject:function(b2){if(!b2||bF.type(b2)!=="object"||b2.nodeType||bF.isWindow(b2)){return false}try{if(b2.constructor&&!bG.call(b2,"constructor")&&!bG.call(b2.constructor.prototype,"isPrototypeOf")){return false}}catch(b1){return false}var b0;for(b0 in b2){}return b0===L||bG.call(b2,b0)},isEmptyObject:function(b1){for(var b0 in b1){return false}return true},error:function(b0){throw new Error(b0)},parseJSON:function(b0){if(typeof b0!=="string"||!b0){return null}b0=bF.trim(b0);if(bb.JSON&&bb.JSON.parse){return bb.JSON.parse(b0)}if(bN.test(b0.replace(bW,"@").replace(bP,"]").replace(bJ,""))){return(new Function("return "+b0))()}bF.error("Invalid JSON: "+b0)},parseXML:function(b2){var b0,b1;try{if(bb.DOMParser){b1=new DOMParser();b0=b1.parseFromString(b2,"text/xml")}else{b0=new ActiveXObject("Microsoft.XMLDOM");b0.async="false";b0.loadXML(b2)}}catch(b3){b0=L}if(!b0||!b0.documentElement||b0.getElementsByTagName("parsererror").length){bF.error("Invalid XML: "+b2)}return b0},noop:function(){},globalEval:function(b0){if(b0&&bM.test(b0)){(bb.execScript||function(b1){bb["eval"].call(bb,b1)})(b0)}},camelCase:function(b0){return b0.replace(bZ,"ms-").replace(bB,bT)},nodeName:function(b1,b0){return b1.nodeName&&b1.nodeName.toUpperCase()===b0.toUpperCase()},each:function(b3,b6,b2){var b1,b4=0,b5=b3.length,b0=b5===L||bF.isFunction(b3);if(b2){if(b0){for(b1 in b3){if(b6.apply(b3[b1],b2)===false){break}}}else{for(;b40&&b0[0]&&b0[b1-1])||b1===0||bF.isArray(b0));if(b3){for(;b21?aJ.call(arguments,0):bG;if(!(--bw)){bC.resolveWith(bC,bx)}}}function bz(bF){return function(bG){bB[bF]=arguments.length>1?aJ.call(arguments,0):bG;bC.notifyWith(bE,bB)}}if(e>1){for(;bv
    a";bI=bv.getElementsByTagName("*");bF=bv.getElementsByTagName("a")[0];if(!bI||!bI.length||!bF){return{}}bG=av.createElement("select");bx=bG.appendChild(av.createElement("option"));bE=bv.getElementsByTagName("input")[0];bJ={leadingWhitespace:(bv.firstChild.nodeType===3),tbody:!bv.getElementsByTagName("tbody").length,htmlSerialize:!!bv.getElementsByTagName("link").length,style:/top/.test(bF.getAttribute("style")),hrefNormalized:(bF.getAttribute("href")==="/a"),opacity:/^0.55/.test(bF.style.opacity),cssFloat:!!bF.style.cssFloat,checkOn:(bE.value==="on"),optSelected:bx.selected,getSetAttribute:bv.className!=="t",enctype:!!av.createElement("form").enctype,html5Clone:av.createElement("nav").cloneNode(true).outerHTML!=="<:nav>",submitBubbles:true,changeBubbles:true,focusinBubbles:false,deleteExpando:true,noCloneEvent:true,inlineBlockNeedsLayout:false,shrinkWrapBlocks:false,reliableMarginRight:true};bE.checked=true;bJ.noCloneChecked=bE.cloneNode(true).checked;bG.disabled=true;bJ.optDisabled=!bx.disabled;try{delete bv.test}catch(bC){bJ.deleteExpando=false}if(!bv.addEventListener&&bv.attachEvent&&bv.fireEvent){bv.attachEvent("onclick",function(){bJ.noCloneEvent=false});bv.cloneNode(true).fireEvent("onclick")}bE=av.createElement("input");bE.value="t";bE.setAttribute("type","radio");bJ.radioValue=bE.value==="t";bE.setAttribute("checked","checked");bv.appendChild(bE);bD=av.createDocumentFragment();bD.appendChild(bv.lastChild);bJ.checkClone=bD.cloneNode(true).cloneNode(true).lastChild.checked;bJ.appendChecked=bE.checked;bD.removeChild(bE);bD.appendChild(bv);bv.innerHTML="";if(bb.getComputedStyle){bA=av.createElement("div");bA.style.width="0";bA.style.marginRight="0";bv.style.width="2px";bv.appendChild(bA);bJ.reliableMarginRight=(parseInt((bb.getComputedStyle(bA,null)||{marginRight:0}).marginRight,10)||0)===0}if(bv.attachEvent){for(by in {submit:1,change:1,focusin:1}){bB="on"+by;bw=(bB in bv);if(!bw){bv.setAttribute(bB,"return;");bw=(typeof bv[bB]==="function")}bJ[by+"Bubbles"]=bw}}bD.removeChild(bv);bD=bG=bx=bA=bv=bE=null;b(function(){var bM,bU,bV,bT,bN,bO,bL,bS,bR,e,bP,bQ=av.getElementsByTagName("body")[0];if(!bQ){return}bL=1;bS="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;";bR="visibility:hidden;border:0;";e="style='"+bS+"border:5px solid #000;padding:0;'";bP="
    ";bM=av.createElement("div");bM.style.cssText=bR+"width:0;height:0;position:static;top:0;margin-top:"+bL+"px";bQ.insertBefore(bM,bQ.firstChild);bv=av.createElement("div");bM.appendChild(bv);bv.innerHTML="
    t
    ";bz=bv.getElementsByTagName("td");bw=(bz[0].offsetHeight===0);bz[0].style.display="";bz[1].style.display="none";bJ.reliableHiddenOffsets=bw&&(bz[0].offsetHeight===0);bv.innerHTML="";bv.style.width=bv.style.paddingLeft="1px";b.boxModel=bJ.boxModel=bv.offsetWidth===2;if(typeof bv.style.zoom!=="undefined"){bv.style.display="inline";bv.style.zoom=1;bJ.inlineBlockNeedsLayout=(bv.offsetWidth===2);bv.style.display="";bv.innerHTML="
    ";bJ.shrinkWrapBlocks=(bv.offsetWidth!==2)}bv.style.cssText=bS+bR;bv.innerHTML=bP;bU=bv.firstChild;bV=bU.firstChild;bN=bU.nextSibling.firstChild.firstChild;bO={doesNotAddBorder:(bV.offsetTop!==5),doesAddBorderForTableAndCells:(bN.offsetTop===5)};bV.style.position="fixed";bV.style.top="20px";bO.fixedPosition=(bV.offsetTop===20||bV.offsetTop===15);bV.style.position=bV.style.top="";bU.style.overflow="hidden";bU.style.position="relative";bO.subtractsBorderForOverflowNotVisible=(bV.offsetTop===-5);bO.doesNotIncludeMarginInBodyOffset=(bQ.offsetTop!==bL);bQ.removeChild(bM);bv=bM=null;b.extend(bJ,bO)});return bJ})();var aS=/^(?:\{.*\}|\[.*\])$/,aA=/([A-Z])/g;b.extend({cache:{},uuid:0,expando:"jQuery"+(b.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:true,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:true},hasData:function(e){e=e.nodeType?b.cache[e[b.expando]]:e[b.expando];return !!e&&!S(e)},data:function(bx,bv,bz,by){if(!b.acceptData(bx)){return}var bG,bA,bD,bE=b.expando,bC=typeof bv==="string",bF=bx.nodeType,e=bF?b.cache:bx,bw=bF?bx[bE]:bx[bE]&&bE,bB=bv==="events";if((!bw||!e[bw]||(!bB&&!by&&!e[bw].data))&&bC&&bz===L){return}if(!bw){if(bF){bx[bE]=bw=++b.uuid}else{bw=bE}}if(!e[bw]){e[bw]={};if(!bF){e[bw].toJSON=b.noop}}if(typeof bv==="object"||typeof bv==="function"){if(by){e[bw]=b.extend(e[bw],bv)}else{e[bw].data=b.extend(e[bw].data,bv)}}bG=bA=e[bw];if(!by){if(!bA.data){bA.data={}}bA=bA.data}if(bz!==L){bA[b.camelCase(bv)]=bz}if(bB&&!bA[bv]){return bG.events}if(bC){bD=bA[bv];if(bD==null){bD=bA[b.camelCase(bv)]}}else{bD=bA}return bD},removeData:function(bx,bv,by){if(!b.acceptData(bx)){return}var bB,bA,bz,bC=b.expando,bD=bx.nodeType,e=bD?b.cache:bx,bw=bD?bx[bC]:bC;if(!e[bw]){return}if(bv){bB=by?e[bw]:e[bw].data;if(bB){if(!b.isArray(bv)){if(bv in bB){bv=[bv]}else{bv=b.camelCase(bv);if(bv in bB){bv=[bv]}else{bv=bv.split(" ")}}}for(bA=0,bz=bv.length;bA-1){return true}}return false},val:function(bx){var e,bv,by,bw=this[0];if(!arguments.length){if(bw){e=b.valHooks[bw.nodeName.toLowerCase()]||b.valHooks[bw.type];if(e&&"get" in e&&(bv=e.get(bw,"value"))!==L){return bv}bv=bw.value;return typeof bv==="string"?bv.replace(aU,""):bv==null?"":bv}return}by=b.isFunction(bx);return this.each(function(bA){var bz=b(this),bB;if(this.nodeType!==1){return}if(by){bB=bx.call(this,bA,bz.val())}else{bB=bx}if(bB==null){bB=""}else{if(typeof bB==="number"){bB+=""}else{if(b.isArray(bB)){bB=b.map(bB,function(bC){return bC==null?"":bC+""})}}}e=b.valHooks[this.nodeName.toLowerCase()]||b.valHooks[this.type];if(!e||!("set" in e)||e.set(this,bB,"value")===L){this.value=bB}})}});b.extend({valHooks:{option:{get:function(e){var bv=e.attributes.value;return !bv||bv.specified?e.value:e.text}},select:{get:function(e){var bA,bv,bz,bx,by=e.selectedIndex,bB=[],bC=e.options,bw=e.type==="select-one";if(by<0){return null}bv=bw?by:0;bz=bw?by+1:bC.length;for(;bv=0});if(!e.length){bv.selectedIndex=-1}return e}}},attrFn:{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true},attr:function(bA,bx,bB,bz){var bw,e,by,bv=bA.nodeType;if(!bA||bv===3||bv===8||bv===2){return}if(bz&&bx in b.attrFn){return b(bA)[bx](bB)}if(typeof bA.getAttribute==="undefined"){return b.prop(bA,bx,bB)}by=bv!==1||!b.isXMLDoc(bA);if(by){bx=bx.toLowerCase();e=b.attrHooks[bx]||(ao.test(bx)?aY:be)}if(bB!==L){if(bB===null){b.removeAttr(bA,bx);return}else{if(e&&"set" in e&&by&&(bw=e.set(bA,bB,bx))!==L){return bw}else{bA.setAttribute(bx,""+bB);return bB}}}else{if(e&&"get" in e&&by&&(bw=e.get(bA,bx))!==null){return bw}else{bw=bA.getAttribute(bx);return bw===null?L:bw}}},removeAttr:function(bx,bz){var by,bA,bv,e,bw=0;if(bz&&bx.nodeType===1){bA=bz.toLowerCase().split(af);e=bA.length;for(;bw=0)}}})});var bd=/^(?:textarea|input|select)$/i,n=/^([^\.]*)?(?:\.(.+))?$/,J=/\bhover(\.\S+)?\b/,aO=/^key/,bf=/^(?:mouse|contextmenu)|click/,T=/^(?:focusinfocus|focusoutblur)$/,U=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,Y=function(e){var bv=U.exec(e);if(bv){bv[1]=(bv[1]||"").toLowerCase();bv[3]=bv[3]&&new RegExp("(?:^|\\s)"+bv[3]+"(?:\\s|$)")}return bv},j=function(bw,e){var bv=bw.attributes||{};return((!e[1]||bw.nodeName.toLowerCase()===e[1])&&(!e[2]||(bv.id||{}).value===e[2])&&(!e[3]||e[3].test((bv["class"]||{}).value)))},bt=function(e){return b.event.special.hover?e:e.replace(J,"mouseenter$1 mouseleave$1")};b.event={add:function(bx,bC,bJ,bA,by){var bD,bB,bK,bI,bH,bF,e,bG,bv,bz,bw,bE;if(bx.nodeType===3||bx.nodeType===8||!bC||!bJ||!(bD=b._data(bx))){return}if(bJ.handler){bv=bJ;bJ=bv.handler}if(!bJ.guid){bJ.guid=b.guid++}bK=bD.events;if(!bK){bD.events=bK={}}bB=bD.handle;if(!bB){bD.handle=bB=function(bL){return typeof b!=="undefined"&&(!bL||b.event.triggered!==bL.type)?b.event.dispatch.apply(bB.elem,arguments):L};bB.elem=bx}bC=b.trim(bt(bC)).split(" ");for(bI=0;bI=0){bG=bG.slice(0,-1);bw=true}if(bG.indexOf(".")>=0){bx=bG.split(".");bG=bx.shift();bx.sort()}if((!bA||b.event.customEvent[bG])&&!b.event.global[bG]){return}bv=typeof bv==="object"?bv[b.expando]?bv:new b.Event(bG,bv):new b.Event(bG);bv.type=bG;bv.isTrigger=true;bv.exclusive=bw;bv.namespace=bx.join(".");bv.namespace_re=bv.namespace?new RegExp("(^|\\.)"+bx.join("\\.(?:.*\\.)?")+"(\\.|$)"):null;by=bG.indexOf(":")<0?"on"+bG:"";if(!bA){e=b.cache;for(bC in e){if(e[bC].events&&e[bC].events[bG]){b.event.trigger(bv,bD,e[bC].handle.elem,true)}}return}bv.result=L;if(!bv.target){bv.target=bA}bD=bD!=null?b.makeArray(bD):[];bD.unshift(bv);bF=b.event.special[bG]||{};if(bF.trigger&&bF.trigger.apply(bA,bD)===false){return}bB=[[bA,bF.bindType||bG]];if(!bJ&&!bF.noBubble&&!b.isWindow(bA)){bI=bF.delegateType||bG;bH=T.test(bI+bG)?bA:bA.parentNode;bz=null;for(;bH;bH=bH.parentNode){bB.push([bH,bI]);bz=bH}if(bz&&bz===bA.ownerDocument){bB.push([bz.defaultView||bz.parentWindow||bb,bI])}}for(bC=0;bCbA){bH.push({elem:this,matches:bz.slice(bA)})}for(bC=0;bC0?this.on(e,null,bx,bw):this.trigger(e)};if(b.attrFn){b.attrFn[e]=true}if(aO.test(e)){b.event.fixHooks[e]=b.event.keyHooks}if(bf.test(e)){b.event.fixHooks[e]=b.event.mouseHooks}}); +/* * Sizzle CSS Selector Engine * Copyright 2011, The Dojo Foundation * Released under the MIT, BSD, and GPL Licenses. * More information: http://sizzlejs.com/ */ -(function(){var bH=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,bC="sizcache"+(Math.random()+"").replace(".",""),bI=0,bL=Object.prototype.toString,bB=false,bA=true,bK=/\\/g,bO=/\r\n/g,bQ=/\W/;[0,0].sort(function(){bA=false;return 0});var by=function(bV,e,bY,bZ){bY=bY||[];e=e||av;var b1=e;if(e.nodeType!==1&&e.nodeType!==9){return[]}if(!bV||typeof bV!=="string"){return bY}var bS,b3,b6,bR,b2,b5,b4,bX,bU=true,bT=by.isXML(e),bW=[],b0=bV;do{bH.exec("");bS=bH.exec(b0);if(bS){b0=bS[3];bW.push(bS[1]);if(bS[2]){bR=bS[3];break}}}while(bS);if(bW.length>1&&bD.exec(bV)){if(bW.length===2&&bE.relative[bW[0]]){b3=bM(bW[0]+bW[1],e,bZ)}else{b3=bE.relative[bW[0]]?[e]:by(bW.shift(),e);while(bW.length){bV=bW.shift();if(bE.relative[bV]){bV+=bW.shift()}b3=bM(bV,b3,bZ)}}}else{if(!bZ&&bW.length>1&&e.nodeType===9&&!bT&&bE.match.ID.test(bW[0])&&!bE.match.ID.test(bW[bW.length-1])){b2=by.find(bW.shift(),e,bT);e=b2.expr?by.filter(b2.expr,b2.set)[0]:b2.set[0]}if(e){b2=bZ?{expr:bW.pop(),set:bF(bZ)}:by.find(bW.pop(),bW.length===1&&(bW[0]==="~"||bW[0]==="+")&&e.parentNode?e.parentNode:e,bT);b3=b2.expr?by.filter(b2.expr,b2.set):b2.set;if(bW.length>0){b6=bF(b3)}else{bU=false}while(bW.length){b5=bW.pop();b4=b5;if(!bE.relative[b5]){b5=""}else{b4=bW.pop()}if(b4==null){b4=e}bE.relative[b5](b6,b4,bT)}}else{b6=bW=[]}}if(!b6){b6=b3}if(!b6){by.error(b5||bV)}if(bL.call(b6)==="[object Array]"){if(!bU){bY.push.apply(bY,b6)}else{if(e&&e.nodeType===1){for(bX=0;b6[bX]!=null;bX++){if(b6[bX]&&(b6[bX]===true||b6[bX].nodeType===1&&by.contains(e,b6[bX]))){bY.push(b3[bX])}}}else{for(bX=0;b6[bX]!=null;bX++){if(b6[bX]&&b6[bX].nodeType===1){bY.push(b3[bX])}}}}}else{bF(b6,bY)}if(bR){by(bR,b1,bY,bZ);by.uniqueSort(bY)}return bY};by.uniqueSort=function(bR){if(bJ){bB=bA;bR.sort(bJ);if(bB){for(var e=1;e0};by.find=function(bX,e,bY){var bW,bS,bU,bT,bV,bR;if(!bX){return[]}for(bS=0,bU=bE.order.length;bS":function(bW,bR){var bV,bU=typeof bR==="string",bS=0,e=bW.length;if(bU&&!bQ.test(bR)){bR=bR.toLowerCase();for(;bS=0)){if(!bS){e.push(bV)}}else{if(bS){bR[bU]=false}}}}return false},ID:function(e){return e[1].replace(bK,"")},TAG:function(bR,e){return bR[1].replace(bK,"").toLowerCase()},CHILD:function(e){if(e[1]==="nth"){if(!e[2]){by.error(e[0])}e[2]=e[2].replace(/^\+|\s*/g,"");var bR=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(e[2]==="even"&&"2n"||e[2]==="odd"&&"2n+1"||!/\D/.test(e[2])&&"0n+"+e[2]||e[2]);e[2]=(bR[1]+(bR[2]||1))-0;e[3]=bR[3]-0}else{if(e[2]){by.error(e[0])}}e[0]=bI++;return e},ATTR:function(bU,bR,bS,e,bV,bW){var bT=bU[1]=bU[1].replace(bK,"");if(!bW&&bE.attrMap[bT]){bU[1]=bE.attrMap[bT]}bU[4]=(bU[4]||bU[5]||"").replace(bK,"");if(bU[2]==="~="){bU[4]=" "+bU[4]+" "}return bU},PSEUDO:function(bU,bR,bS,e,bV){if(bU[1]==="not"){if((bH.exec(bU[3])||"").length>1||/^\w/.test(bU[3])){bU[3]=by(bU[3],null,null,bR)}else{var bT=by.filter(bU[3],bR,bS,true^bV);if(!bS){e.push.apply(e,bT)}return false}}else{if(bE.match.POS.test(bU[0])||bE.match.CHILD.test(bU[0])){return true}}return bU},POS:function(e){e.unshift(true);return e}},filters:{enabled:function(e){return e.disabled===false&&e.type!=="hidden"},disabled:function(e){return e.disabled===true},checked:function(e){return e.checked===true},selected:function(e){if(e.parentNode){e.parentNode.selectedIndex}return e.selected===true},parent:function(e){return !!e.firstChild},empty:function(e){return !e.firstChild},has:function(bS,bR,e){return !!by(e[3],bS).length},header:function(e){return(/h\d/i).test(e.nodeName)},text:function(bS){var e=bS.getAttribute("type"),bR=bS.type;return bS.nodeName.toLowerCase()==="input"&&"text"===bR&&(e===bR||e===null)},radio:function(e){return e.nodeName.toLowerCase()==="input"&&"radio"===e.type},checkbox:function(e){return e.nodeName.toLowerCase()==="input"&&"checkbox"===e.type},file:function(e){return e.nodeName.toLowerCase()==="input"&&"file"===e.type},password:function(e){return e.nodeName.toLowerCase()==="input"&&"password"===e.type},submit:function(bR){var e=bR.nodeName.toLowerCase();return(e==="input"||e==="button")&&"submit"===bR.type},image:function(e){return e.nodeName.toLowerCase()==="input"&&"image"===e.type},reset:function(bR){var e=bR.nodeName.toLowerCase();return(e==="input"||e==="button")&&"reset"===bR.type},button:function(bR){var e=bR.nodeName.toLowerCase();return e==="input"&&"button"===bR.type||e==="button"},input:function(e){return(/input|select|textarea|button/i).test(e.nodeName)},focus:function(e){return e===e.ownerDocument.activeElement}},setFilters:{first:function(bR,e){return e===0},last:function(bS,bR,e,bT){return bR===bT.length-1},even:function(bR,e){return e%2===0},odd:function(bR,e){return e%2===1 -},lt:function(bS,bR,e){return bRe[3]-0},nth:function(bS,bR,e){return e[3]-0===bR},eq:function(bS,bR,e){return e[3]-0===bR}},filter:{PSEUDO:function(bS,bX,bW,bY){var e=bX[1],bR=bE.filters[e];if(bR){return bR(bS,bW,bX,bY)}else{if(e==="contains"){return(bS.textContent||bS.innerText||bw([bS])||"").indexOf(bX[3])>=0}else{if(e==="not"){var bT=bX[3];for(var bV=0,bU=bT.length;bV=0)}}},ID:function(bR,e){return bR.nodeType===1&&bR.getAttribute("id")===e},TAG:function(bR,e){return(e==="*"&&bR.nodeType===1)||!!bR.nodeName&&bR.nodeName.toLowerCase()===e},CLASS:function(bR,e){return(" "+(bR.className||bR.getAttribute("class"))+" ").indexOf(e)>-1},ATTR:function(bV,bT){var bS=bT[1],e=by.attr?by.attr(bV,bS):bE.attrHandle[bS]?bE.attrHandle[bS](bV):bV[bS]!=null?bV[bS]:bV.getAttribute(bS),bW=e+"",bU=bT[2],bR=bT[4];return e==null?bU==="!=":!bU&&by.attr?e!=null:bU==="="?bW===bR:bU==="*="?bW.indexOf(bR)>=0:bU==="~="?(" "+bW+" ").indexOf(bR)>=0:!bR?bW&&e!==false:bU==="!="?bW!==bR:bU==="^="?bW.indexOf(bR)===0:bU==="$="?bW.substr(bW.length-bR.length)===bR:bU==="|="?bW===bR||bW.substr(0,bR.length+1)===bR+"-":false},POS:function(bU,bR,bS,bV){var e=bR[2],bT=bE.setFilters[e];if(bT){return bT(bU,bS,bR,bV)}}}};var bD=bE.match.POS,bx=function(bR,e){return"\\"+(e-0+1)};for(var bz in bE.match){bE.match[bz]=new RegExp(bE.match[bz].source+(/(?![^\[]*\])(?![^\(]*\))/.source));bE.leftMatch[bz]=new RegExp(/(^(?:.|\r|\n)*?)/.source+bE.match[bz].source.replace(/\\(\d+)/g,bx))}var bF=function(bR,e){bR=Array.prototype.slice.call(bR,0);if(e){e.push.apply(e,bR);return e}return bR};try{Array.prototype.slice.call(av.documentElement.childNodes,0)[0].nodeType}catch(bP){bF=function(bU,bT){var bS=0,bR=bT||[];if(bL.call(bU)==="[object Array]"){Array.prototype.push.apply(bR,bU)}else{if(typeof bU.length==="number"){for(var e=bU.length;bS";e.insertBefore(bR,e.firstChild);if(av.getElementById(bS)){bE.find.ID=function(bU,bV,bW){if(typeof bV.getElementById!=="undefined"&&!bW){var bT=bV.getElementById(bU[1]);return bT?bT.id===bU[1]||typeof bT.getAttributeNode!=="undefined"&&bT.getAttributeNode("id").nodeValue===bU[1]?[bT]:L:[]}};bE.filter.ID=function(bV,bT){var bU=typeof bV.getAttributeNode!=="undefined"&&bV.getAttributeNode("id");return bV.nodeType===1&&bU&&bU.nodeValue===bT}}e.removeChild(bR);e=bR=null})();(function(){var e=av.createElement("div");e.appendChild(av.createComment(""));if(e.getElementsByTagName("*").length>0){bE.find.TAG=function(bR,bV){var bU=bV.getElementsByTagName(bR[1]);if(bR[1]==="*"){var bT=[];for(var bS=0;bU[bS];bS++){if(bU[bS].nodeType===1){bT.push(bU[bS])}}bU=bT}return bU}}e.innerHTML="";if(e.firstChild&&typeof e.firstChild.getAttribute!=="undefined"&&e.firstChild.getAttribute("href")!=="#"){bE.attrHandle.href=function(bR){return bR.getAttribute("href",2)}}e=null})();if(av.querySelectorAll){(function(){var e=by,bT=av.createElement("div"),bS="__sizzle__";bT.innerHTML="

    ";if(bT.querySelectorAll&&bT.querySelectorAll(".TEST").length===0){return}by=function(b4,bV,bZ,b3){bV=bV||av;if(!b3&&!by.isXML(bV)){var b2=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b4);if(b2&&(bV.nodeType===1||bV.nodeType===9)){if(b2[1]){return bF(bV.getElementsByTagName(b4),bZ)}else{if(b2[2]&&bE.find.CLASS&&bV.getElementsByClassName){return bF(bV.getElementsByClassName(b2[2]),bZ)}}}if(bV.nodeType===9){if(b4==="body"&&bV.body){return bF([bV.body],bZ)}else{if(b2&&b2[3]){var bY=bV.getElementById(b2[3]);if(bY&&bY.parentNode){if(bY.id===b2[3]){return bF([bY],bZ)}}else{return bF([],bZ)}}}try{return bF(bV.querySelectorAll(b4),bZ)}catch(b0){}}else{if(bV.nodeType===1&&bV.nodeName.toLowerCase()!=="object"){var bW=bV,bX=bV.getAttribute("id"),bU=bX||bS,b6=bV.parentNode,b5=/^\s*[+~]/.test(b4);if(!bX){bV.setAttribute("id",bU)}else{bU=bU.replace(/'/g,"\\$&")}if(b5&&b6){bV=bV.parentNode}try{if(!b5||b6){return bF(bV.querySelectorAll("[id='"+bU+"'] "+b4),bZ)}}catch(b1){}finally{if(!bX){bW.removeAttribute("id")}}}}}return e(b4,bV,bZ,b3)};for(var bR in e){by[bR]=e[bR]}bT=null})()}(function(){var e=av.documentElement,bS=e.matchesSelector||e.mozMatchesSelector||e.webkitMatchesSelector||e.msMatchesSelector;if(bS){var bU=!bS.call(av.createElement("div"),"div"),bR=false;try{bS.call(av.documentElement,"[test!='']:sizzle")}catch(bT){bR=true}by.matchesSelector=function(bW,bY){bY=bY.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!by.isXML(bW)){try{if(bR||!bE.match.PSEUDO.test(bY)&&!/!=/.test(bY)){var bV=bS.call(bW,bY);if(bV||!bU||bW.document&&bW.document.nodeType!==11){return bV}}}catch(bX){}}return by(bY,null,null,[bW]).length>0}}})();(function(){var e=av.createElement("div");e.innerHTML="
    ";if(!e.getElementsByClassName||e.getElementsByClassName("e").length===0){return}e.lastChild.className="e";if(e.getElementsByClassName("e").length===1){return}bE.order.splice(1,0,"CLASS");bE.find.CLASS=function(bR,bS,bT){if(typeof bS.getElementsByClassName!=="undefined"&&!bT){return bS.getElementsByClassName(bR[1])}};e=null})();function bv(bR,bW,bV,bZ,bX,bY){for(var bT=0,bS=bZ.length;bT0){bU=e;break}}}e=e[bR]}bZ[bT]=bU}}}if(av.documentElement.contains){by.contains=function(bR,e){return bR!==e&&(bR.contains?bR.contains(e):true)}}else{if(av.documentElement.compareDocumentPosition){by.contains=function(bR,e){return !!(bR.compareDocumentPosition(e)&16)}}else{by.contains=function(){return false}}}by.isXML=function(e){var bR=(e?e.ownerDocument||e:0).documentElement;return bR?bR.nodeName!=="HTML":false};var bM=function(bS,e,bW){var bV,bX=[],bU="",bY=e.nodeType?[e]:e;while((bV=bE.match.PSEUDO.exec(bS))){bU+=bV[0];bS=bS.replace(bE.match.PSEUDO,"")}bS=bE.relative[bS]?bS+"*":bS;for(var bT=0,bR=bY.length;bT0){for(bB=bA;bB=0:b.filter(e,this).length>0:this.filter(e).length>0)},closest:function(by,bx){var bv=[],bw,e,bz=this[0];if(b.isArray(by)){var bB=1;while(bz&&bz.ownerDocument&&bz!==bx){for(bw=0;bw-1:b.find.matchesSelector(bz,by)){bv.push(bz);break}else{bz=bz.parentNode;if(!bz||!bz.ownerDocument||bz===bx||bz.nodeType===11){break}}}}bv=bv.length>1?b.unique(bv):bv;return this.pushStack(bv,"closest",by)},index:function(e){if(!e){return(this[0]&&this[0].parentNode)?this.prevAll().length:-1}if(typeof e==="string"){return b.inArray(this[0],b(e))}return b.inArray(e.jquery?e[0]:e,this)},add:function(e,bv){var bx=typeof e==="string"?b(e,bv):b.makeArray(e&&e.nodeType?[e]:e),bw=b.merge(this.get(),bx);return this.pushStack(C(bx[0])||C(bw[0])?bw:b.unique(bw))},andSelf:function(){return this.add(this.prevObject)}});function C(e){return !e||!e.parentNode||e.parentNode.nodeType===11}b.each({parent:function(bv){var e=bv.parentNode;return e&&e.nodeType!==11?e:null},parents:function(e){return b.dir(e,"parentNode")},parentsUntil:function(bv,e,bw){return b.dir(bv,"parentNode",bw)},next:function(e){return b.nth(e,2,"nextSibling")},prev:function(e){return b.nth(e,2,"previousSibling")},nextAll:function(e){return b.dir(e,"nextSibling")},prevAll:function(e){return b.dir(e,"previousSibling")},nextUntil:function(bv,e,bw){return b.dir(bv,"nextSibling",bw)},prevUntil:function(bv,e,bw){return b.dir(bv,"previousSibling",bw)},siblings:function(e){return b.sibling(e.parentNode.firstChild,e)},children:function(e){return b.sibling(e.firstChild)},contents:function(e){return b.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:b.makeArray(e.childNodes)}},function(e,bv){b.fn[e]=function(by,bw){var bx=b.map(this,bv,by);if(!ab.test(e)){bw=by}if(bw&&typeof bw==="string"){bx=b.filter(bw,bx)}bx=this.length>1&&!ay[e]?b.unique(bx):bx;if((this.length>1||a9.test(bw))&&aq.test(e)){bx=bx.reverse()}return this.pushStack(bx,e,P.call(arguments).join(","))}});b.extend({filter:function(bw,e,bv){if(bv){bw=":not("+bw+")"}return e.length===1?b.find.matchesSelector(e[0],bw)?[e[0]]:[]:b.find.matches(bw,e)},dir:function(bw,bv,by){var e=[],bx=bw[bv];while(bx&&bx.nodeType!==9&&(by===L||bx.nodeType!==1||!b(bx).is(by))){if(bx.nodeType===1){e.push(bx)}bx=bx[bv]}return e},nth:function(by,e,bw,bx){e=e||1;var bv=0;for(;by;by=by[bw]){if(by.nodeType===1&&++bv===e){break}}return by},sibling:function(bw,bv){var e=[];for(;bw;bw=bw.nextSibling){if(bw.nodeType===1&&bw!==bv){e.push(bw)}}return e}});function aG(bx,bw,e){bw=bw||0;if(b.isFunction(bw)){return b.grep(bx,function(bz,by){var bA=!!bw.call(bz,by,bz);return bA===e})}else{if(bw.nodeType){return b.grep(bx,function(bz,by){return(bz===bw)===e})}else{if(typeof bw==="string"){var bv=b.grep(bx,function(by){return by.nodeType===1});if(bp.test(bw)){return b.filter(bw,bv,!e)}else{bw=b.filter(bw,bv)}}}}return b.grep(bx,function(bz,by){return(b.inArray(bz,bw)>=0)===e})}function a(e){var bw=aR.split("|"),bv=e.createDocumentFragment();if(bv.createElement){while(bw.length){bv.createElement(bw.pop())}}return bv}var aR="abbr|article|aside|audio|canvas|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",ag=/ jQuery\d+="(?:\d+|null)"/g,ar=/^\s+/,R=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,d=/<([\w:]+)/,w=/",""],legend:[1,"
    ","
    "],thead:[1,"","
    "],tr:[2,"","
    "],td:[3,"","
    "],col:[2,"","
    "],area:[1,"",""],_default:[0,"",""]},ac=a(av); -ax.optgroup=ax.option;ax.tbody=ax.tfoot=ax.colgroup=ax.caption=ax.thead;ax.th=ax.td;if(!b.support.htmlSerialize){ax._default=[1,"div
    ","
    "]}b.fn.extend({text:function(e){if(b.isFunction(e)){return this.each(function(bw){var bv=b(this);bv.text(e.call(this,bw,bv.text()))})}if(typeof e!=="object"&&e!==L){return this.empty().append((this[0]&&this[0].ownerDocument||av).createTextNode(e))}return b.text(this)},wrapAll:function(e){if(b.isFunction(e)){return this.each(function(bw){b(this).wrapAll(e.call(this,bw))})}if(this[0]){var bv=b(e,this[0].ownerDocument).eq(0).clone(true);if(this[0].parentNode){bv.insertBefore(this[0])}bv.map(function(){var bw=this;while(bw.firstChild&&bw.firstChild.nodeType===1){bw=bw.firstChild}return bw}).append(this)}return this},wrapInner:function(e){if(b.isFunction(e)){return this.each(function(bv){b(this).wrapInner(e.call(this,bv))})}return this.each(function(){var bv=b(this),bw=bv.contents();if(bw.length){bw.wrapAll(e)}else{bv.append(e)}})},wrap:function(e){var bv=b.isFunction(e);return this.each(function(bw){b(this).wrapAll(bv?e.call(this,bw):e)})},unwrap:function(){return this.parent().each(function(){if(!b.nodeName(this,"body")){b(this).replaceWith(this.childNodes)}}).end()},append:function(){return this.domManip(arguments,true,function(e){if(this.nodeType===1){this.appendChild(e)}})},prepend:function(){return this.domManip(arguments,true,function(e){if(this.nodeType===1){this.insertBefore(e,this.firstChild)}})},before:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(bv){this.parentNode.insertBefore(bv,this)})}else{if(arguments.length){var e=b.clean(arguments);e.push.apply(e,this.toArray());return this.pushStack(e,"before",arguments)}}},after:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(bv){this.parentNode.insertBefore(bv,this.nextSibling)})}else{if(arguments.length){var e=this.pushStack(this,"after",arguments);e.push.apply(e,b.clean(arguments));return e}}},remove:function(e,bx){for(var bv=0,bw;(bw=this[bv])!=null;bv++){if(!e||b.filter(e,[bw]).length){if(!bx&&bw.nodeType===1){b.cleanData(bw.getElementsByTagName("*"));b.cleanData([bw])}if(bw.parentNode){bw.parentNode.removeChild(bw)}}}return this},empty:function(){for(var e=0,bv;(bv=this[e])!=null;e++){if(bv.nodeType===1){b.cleanData(bv.getElementsByTagName("*"))}while(bv.firstChild){bv.removeChild(bv.firstChild)}}return this},clone:function(bv,e){bv=bv==null?false:bv;e=e==null?bv:e;return this.map(function(){return b.clone(this,bv,e)})},html:function(bx){if(bx===L){return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(ag,""):null}else{if(typeof bx==="string"&&!ae.test(bx)&&(b.support.leadingWhitespace||!ar.test(bx))&&!ax[(d.exec(bx)||["",""])[1].toLowerCase()]){bx=bx.replace(R,"<$1>");try{for(var bw=0,bv=this.length;bw1&&bw0?this.clone(true):this).get();b(bC[bA])[bv](by);bz=bz.concat(by)}return this.pushStack(bz,e,bC.selector)}}});function bg(e){if(typeof e.getElementsByTagName!=="undefined"){return e.getElementsByTagName("*")}else{if(typeof e.querySelectorAll!=="undefined"){return e.querySelectorAll("*")}else{return[]}}}function az(e){if(e.type==="checkbox"||e.type==="radio"){e.defaultChecked=e.checked}}function E(e){var bv=(e.nodeName||"").toLowerCase();if(bv==="input"){az(e)}else{if(bv!=="script"&&typeof e.getElementsByTagName!=="undefined"){b.grep(e.getElementsByTagName("input"),az)}}}function al(e){var bv=av.createElement("div");ac.appendChild(bv);bv.innerHTML=e.outerHTML;return bv.firstChild}b.extend({clone:function(by,bA,bw){var e,bv,bx,bz=b.support.html5Clone||!ah.test("<"+by.nodeName)?by.cloneNode(true):al(by);if((!b.support.noCloneEvent||!b.support.noCloneChecked)&&(by.nodeType===1||by.nodeType===11)&&!b.isXMLDoc(by)){ai(by,bz);e=bg(by);bv=bg(bz);for(bx=0;e[bx];++bx){if(bv[bx]){ai(e[bx],bv[bx])}}}if(bA){t(by,bz);if(bw){e=bg(by);bv=bg(bz);for(bx=0;e[bx];++bx){t(e[bx],bv[bx])}}}e=bv=null;return bz},clean:function(bw,by,bH,bA){var bF;by=by||av;if(typeof by.createElement==="undefined"){by=by.ownerDocument||by[0]&&by[0].ownerDocument||av}var bI=[],bB;for(var bE=0,bz;(bz=bw[bE])!=null;bE++){if(typeof bz==="number"){bz+=""}if(!bz){continue}if(typeof bz==="string"){if(!W.test(bz)){bz=by.createTextNode(bz)}else{bz=bz.replace(R,"<$1>");var bK=(d.exec(bz)||["",""])[1].toLowerCase(),bx=ax[bK]||ax._default,bD=bx[0],bv=by.createElement("div");if(by===av){ac.appendChild(bv)}else{a(by).appendChild(bv)}bv.innerHTML=bx[1]+bz+bx[2];while(bD--){bv=bv.lastChild}if(!b.support.tbody){var e=w.test(bz),bC=bK==="table"&&!e?bv.firstChild&&bv.firstChild.childNodes:bx[1]===""&&!e?bv.childNodes:[];for(bB=bC.length-1;bB>=0;--bB){if(b.nodeName(bC[bB],"tbody")&&!bC[bB].childNodes.length){bC[bB].parentNode.removeChild(bC[bB])}}}if(!b.support.leadingWhitespace&&ar.test(bz)){bv.insertBefore(by.createTextNode(ar.exec(bz)[0]),bv.firstChild)}bz=bv.childNodes}}var bG;if(!b.support.appendChecked){if(bz[0]&&typeof(bG=bz.length)==="number"){for(bB=0;bB=0){return bx+"px"}}else{return bx}}}});if(!b.support.opacity){b.cssHooks.opacity={get:function(bv,e){return au.test((e&&bv.currentStyle?bv.currentStyle.filter:bv.style.filter)||"")?(parseFloat(RegExp.$1)/100)+"":e?"1":""},set:function(by,bz){var bx=by.style,bv=by.currentStyle,e=b.isNumeric(bz)?"alpha(opacity="+bz*100+")":"",bw=bv&&bv.filter||bx.filter||"";bx.zoom=1;if(bz>=1&&b.trim(bw.replace(ak,""))===""){bx.removeAttribute("filter");if(bv&&!bv.filter){return}}bx.filter=ak.test(bw)?bw.replace(ak,e):bw+" "+e}}}b(function(){if(!b.support.reliableMarginRight){b.cssHooks.marginRight={get:function(bw,bv){var e;b.swap(bw,{display:"inline-block"},function(){if(bv){e=Z(bw,"margin-right","marginRight")}else{e=bw.style.marginRight}});return e}}}});if(av.defaultView&&av.defaultView.getComputedStyle){aI=function(by,bw){var bv,bx,e;bw=bw.replace(z,"-$1").toLowerCase();if((bx=by.ownerDocument.defaultView)&&(e=bx.getComputedStyle(by,null))){bv=e.getPropertyValue(bw);if(bv===""&&!b.contains(by.ownerDocument.documentElement,by)){bv=b.style(by,bw)}}return bv}}if(av.documentElement.currentStyle){aX=function(bz,bw){var bA,e,by,bv=bz.currentStyle&&bz.currentStyle[bw],bx=bz.style;if(bv===null&&bx&&(by=bx[bw])){bv=by}if(!bc.test(bv)&&bn.test(bv)){bA=bx.left;e=bz.runtimeStyle&&bz.runtimeStyle.left;if(e){bz.runtimeStyle.left=bz.currentStyle.left}bx.left=bw==="fontSize"?"1em":(bv||0);bv=bx.pixelLeft+"px";bx.left=bA;if(e){bz.runtimeStyle.left=e}}return bv===""?"auto":bv}}Z=aI||aX;function p(by,bw,bv){var bA=bw==="width"?by.offsetWidth:by.offsetHeight,bz=bw==="width"?an:a1,bx=0,e=bz.length; -if(bA>0){if(bv!=="border"){for(;bx)<[^<]*)*<\/script>/gi,q=/^(?:select|textarea)/i,h=/\s+/,br=/([?&])_=[^&]*/,K=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,A=b.fn.load,aa={},r={},aE,s,aV=["*/"]+["*"];try{aE=bl.href}catch(aw){aE=av.createElement("a");aE.href="";aE=aE.href}s=K.exec(aE.toLowerCase())||[];function f(e){return function(by,bA){if(typeof by!=="string"){bA=by;by="*"}if(b.isFunction(bA)){var bx=by.toLowerCase().split(h),bw=0,bz=bx.length,bv,bB,bC;for(;bw=0){var e=bw.slice(by,bw.length);bw=bw.slice(0,by)}var bx="GET";if(bz){if(b.isFunction(bz)){bA=bz;bz=L}else{if(typeof bz==="object"){bz=b.param(bz,b.ajaxSettings.traditional);bx="POST"}}}var bv=this;b.ajax({url:bw,type:bx,dataType:"html",data:bz,complete:function(bC,bB,bD){bD=bC.responseText;if(bC.isResolved()){bC.done(function(bE){bD=bE});bv.html(e?b("
    ").append(bD.replace(a6,"")).find(e):bD)}if(bA){bv.each(bA,[bD,bB,bC])}}});return this},serialize:function(){return b.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?b.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||q.test(this.nodeName)||aZ.test(this.type))}).map(function(e,bv){var bw=b(this).val();return bw==null?null:b.isArray(bw)?b.map(bw,function(by,bx){return{name:bv.name,value:by.replace(bs,"\r\n")}}):{name:bv.name,value:bw.replace(bs,"\r\n")}}).get()}});b.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(e,bv){b.fn[bv]=function(bw){return this.on(bv,bw)}});b.each(["get","post"],function(e,bv){b[bv]=function(bw,by,bz,bx){if(b.isFunction(by)){bx=bx||bz;bz=by;by=L}return b.ajax({type:bv,url:bw,data:by,success:bz,dataType:bx})}});b.extend({getScript:function(e,bv){return b.get(e,L,bv,"script")},getJSON:function(e,bv,bw){return b.get(e,bv,bw,"json")},ajaxSetup:function(bv,e){if(e){am(bv,b.ajaxSettings)}else{e=bv;bv=b.ajaxSettings}am(bv,e);return bv},ajaxSettings:{url:aE,isLocal:aM.test(s[1]),global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":aV},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":bb.String,"text html":true,"text json":b.parseJSON,"text xml":b.parseXML},flatOptions:{context:true,url:true}},ajaxPrefilter:f(aa),ajaxTransport:f(r),ajax:function(bz,bx){if(typeof bz==="object"){bx=bz;bz=L}bx=bx||{};var bD=b.ajaxSetup({},bx),bS=bD.context||bD,bG=bS!==bD&&(bS.nodeType||bS instanceof b)?b(bS):b.event,bR=b.Deferred(),bN=b.Callbacks("once memory"),bB=bD.statusCode||{},bC,bH={},bO={},bQ,by,bL,bE,bI,bA=0,bw,bK,bJ={readyState:0,setRequestHeader:function(bT,bU){if(!bA){var e=bT.toLowerCase();bT=bO[e]=bO[e]||bT;bH[bT]=bU}return this},getAllResponseHeaders:function(){return bA===2?bQ:null},getResponseHeader:function(bT){var e;if(bA===2){if(!by){by={};while((e=aD.exec(bQ))){by[e[1].toLowerCase()]=e[2]}}e=by[bT.toLowerCase()]}return e===L?null:e},overrideMimeType:function(e){if(!bA){bD.mimeType=e}return this},abort:function(e){e=e||"abort";if(bL){bL.abort(e)}bF(0,e);return this}};function bF(bZ,bU,b0,bW){if(bA===2){return}bA=2;if(bE){clearTimeout(bE)}bL=L;bQ=bW||"";bJ.readyState=bZ>0?4:0;var bT,b4,b3,bX=bU,bY=b0?bj(bD,bJ,b0):L,bV,b2;if(bZ>=200&&bZ<300||bZ===304){if(bD.ifModified){if((bV=bJ.getResponseHeader("Last-Modified"))){b.lastModified[bC]=bV}if((b2=bJ.getResponseHeader("Etag"))){b.etag[bC]=b2}}if(bZ===304){bX="notmodified";bT=true}else{try{b4=G(bD,bY);bX="success";bT=true}catch(b1){bX="parsererror";b3=b1}}}else{b3=bX;if(!bX||bZ){bX="error";if(bZ<0){bZ=0}}}bJ.status=bZ;bJ.statusText=""+(bU||bX);if(bT){bR.resolveWith(bS,[b4,bX,bJ])}else{bR.rejectWith(bS,[bJ,bX,b3])}bJ.statusCode(bB);bB=L;if(bw){bG.trigger("ajax"+(bT?"Success":"Error"),[bJ,bD,bT?b4:b3])}bN.fireWith(bS,[bJ,bX]);if(bw){bG.trigger("ajaxComplete",[bJ,bD]);if(!(--b.active)){b.event.trigger("ajaxStop")}}}bR.promise(bJ);bJ.success=bJ.done;bJ.error=bJ.fail;bJ.complete=bN.add;bJ.statusCode=function(bT){if(bT){var e;if(bA<2){for(e in bT){bB[e]=[bB[e],bT[e]]}}else{e=bT[bJ.status];bJ.then(e,e)}}return this};bD.url=((bz||bD.url)+"").replace(bq,"").replace(c,s[1]+"//");bD.dataTypes=b.trim(bD.dataType||"*").toLowerCase().split(h);if(bD.crossDomain==null){bI=K.exec(bD.url.toLowerCase());bD.crossDomain=!!(bI&&(bI[1]!=s[1]||bI[2]!=s[2]||(bI[3]||(bI[1]==="http:"?80:443))!=(s[3]||(s[1]==="http:"?80:443))))}if(bD.data&&bD.processData&&typeof bD.data!=="string"){bD.data=b.param(bD.data,bD.traditional)}aW(aa,bD,bx,bJ);if(bA===2){return false}bw=bD.global;bD.type=bD.type.toUpperCase();bD.hasContent=!aQ.test(bD.type);if(bw&&b.active++===0){b.event.trigger("ajaxStart")}if(!bD.hasContent){if(bD.data){bD.url+=(M.test(bD.url)?"&":"?")+bD.data;delete bD.data}bC=bD.url;if(bD.cache===false){var bv=b.now(),bP=bD.url.replace(br,"$1_="+bv);bD.url=bP+((bP===bD.url)?(M.test(bD.url)?"&":"?")+"_="+bv:"")}}if(bD.data&&bD.hasContent&&bD.contentType!==false||bx.contentType){bJ.setRequestHeader("Content-Type",bD.contentType)}if(bD.ifModified){bC=bC||bD.url;if(b.lastModified[bC]){bJ.setRequestHeader("If-Modified-Since",b.lastModified[bC])}if(b.etag[bC]){bJ.setRequestHeader("If-None-Match",b.etag[bC])}}bJ.setRequestHeader("Accept",bD.dataTypes[0]&&bD.accepts[bD.dataTypes[0]]?bD.accepts[bD.dataTypes[0]]+(bD.dataTypes[0]!=="*"?", "+aV+"; q=0.01":""):bD.accepts["*"]);for(bK in bD.headers){bJ.setRequestHeader(bK,bD.headers[bK])}if(bD.beforeSend&&(bD.beforeSend.call(bS,bJ,bD)===false||bA===2)){bJ.abort();return false}for(bK in {success:1,error:1,complete:1}){bJ[bK](bD[bK])}bL=aW(r,bD,bx,bJ);if(!bL){bF(-1,"No Transport")}else{bJ.readyState=1;if(bw){bG.trigger("ajaxSend",[bJ,bD])}if(bD.async&&bD.timeout>0){bE=setTimeout(function(){bJ.abort("timeout")},bD.timeout)}try{bA=1;bL.send(bH,bF)}catch(bM){if(bA<2){bF(-1,bM)}else{throw bM}}}return bJ},param:function(e,bw){var bv=[],by=function(bz,bA){bA=b.isFunction(bA)?bA():bA;bv[bv.length]=encodeURIComponent(bz)+"="+encodeURIComponent(bA)};if(bw===L){bw=b.ajaxSettings.traditional}if(b.isArray(e)||(e.jquery&&!b.isPlainObject(e))){b.each(e,function(){by(this.name,this.value)})}else{for(var bx in e){v(bx,e[bx],bw,by)}}return bv.join("&").replace(k,"+")}});function v(bw,by,bv,bx){if(b.isArray(by)){b.each(by,function(bA,bz){if(bv||ap.test(bw)){bx(bw,bz)}else{v(bw+"["+(typeof bz==="object"||b.isArray(bz)?bA:"")+"]",bz,bv,bx)}})}else{if(!bv&&by!=null&&typeof by==="object"){for(var e in by){v(bw+"["+e+"]",by[e],bv,bx)}}else{bx(bw,by)}}}b.extend({active:0,lastModified:{},etag:{}});function bj(bD,bC,bz){var bv=bD.contents,bB=bD.dataTypes,bw=bD.responseFields,by,bA,bx,e;for(bA in bw){if(bA in bz){bC[bw[bA]]=bz[bA]}}while(bB[0]==="*"){bB.shift();if(by===L){by=bD.mimeType||bC.getResponseHeader("content-type")}}if(by){for(bA in bv){if(bv[bA]&&bv[bA].test(by)){bB.unshift(bA);break}}}if(bB[0] in bz){bx=bB[0]}else{for(bA in bz){if(!bB[0]||bD.converters[bA+" "+bB[0]]){bx=bA;break}if(!e){e=bA}}bx=bx||e}if(bx){if(bx!==bB[0]){bB.unshift(bx)}return bz[bx]}}function G(bH,bz){if(bH.dataFilter){bz=bH.dataFilter(bz,bH.dataType)}var bD=bH.dataTypes,bG={},bA,bE,bw=bD.length,bB,bC=bD[0],bx,by,bF,bv,e;for(bA=1;bA=bw.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();bw.animatedProperties[this.prop]=true;for(bA in bw.animatedProperties){if(bw.animatedProperties[bA]!==true){e=false}}if(e){if(bw.overflow!=null&&!b.support.shrinkWrapBlocks){b.each(["","X","Y"],function(bC,bD){bz.style["overflow"+bD]=bw.overflow[bC]})}if(bw.hide){b(bz).hide()}if(bw.hide||bw.show){for(bA in bw.animatedProperties){b.style(bz,bA,bw.orig[bA]);b.removeData(bz,"fxshow"+bA,true);b.removeData(bz,"toggle"+bA,true)}}bv=bw.complete;if(bv){bw.complete=false;bv.call(bz)}}return false}else{if(bw.duration==Infinity){this.now=bx}else{bB=bx-this.startTime;this.state=bB/bw.duration;this.pos=b.easing[bw.animatedProperties[this.prop]](this.state,bB,0,1,bw.duration);this.now=this.start+((this.end-this.start)*this.pos)}this.update()}return true}};b.extend(b.fx,{tick:function(){var bw,bv=b.timers,e=0;for(;e").appendTo(e),bw=bv.css("display");bv.remove();if(bw==="none"||bw===""){if(!a8){a8=av.createElement("iframe");a8.frameBorder=a8.width=a8.height=0}e.appendChild(a8);if(!m||!a8.createElement){m=(a8.contentWindow||a8.contentDocument).document;m.write((av.compatMode==="CSS1Compat"?"":"")+"");m.close()}bv=m.createElement(bx);m.body.appendChild(bv);bw=b.css(bv,"display");e.removeChild(a8)}Q[bx]=bw}return Q[bx]}var V=/^t(?:able|d|h)$/i,ad=/^(?:body|html)$/i;if("getBoundingClientRect" in av.documentElement){b.fn.offset=function(bI){var by=this[0],bB;if(bI){return this.each(function(e){b.offset.setOffset(this,bI,e)})}if(!by||!by.ownerDocument){return null}if(by===by.ownerDocument.body){return b.offset.bodyOffset(by)}try{bB=by.getBoundingClientRect()}catch(bF){}var bH=by.ownerDocument,bw=bH.documentElement;if(!bB||!b.contains(bw,by)){return bB?{top:bB.top,left:bB.left}:{top:0,left:0}}var bC=bH.body,bD=aK(bH),bA=bw.clientTop||bC.clientTop||0,bE=bw.clientLeft||bC.clientLeft||0,bv=bD.pageYOffset||b.support.boxModel&&bw.scrollTop||bC.scrollTop,bz=bD.pageXOffset||b.support.boxModel&&bw.scrollLeft||bC.scrollLeft,bG=bB.top+bv-bA,bx=bB.left+bz-bE;return{top:bG,left:bx}}}else{b.fn.offset=function(bF){var bz=this[0];if(bF){return this.each(function(bG){b.offset.setOffset(this,bF,bG)})}if(!bz||!bz.ownerDocument){return null}if(bz===bz.ownerDocument.body){return b.offset.bodyOffset(bz)}var bC,bw=bz.offsetParent,bv=bz,bE=bz.ownerDocument,bx=bE.documentElement,bA=bE.body,bB=bE.defaultView,e=bB?bB.getComputedStyle(bz,null):bz.currentStyle,bD=bz.offsetTop,by=bz.offsetLeft;while((bz=bz.parentNode)&&bz!==bA&&bz!==bx){if(b.support.fixedPosition&&e.position==="fixed"){break}bC=bB?bB.getComputedStyle(bz,null):bz.currentStyle;bD-=bz.scrollTop;by-=bz.scrollLeft;if(bz===bw){bD+=bz.offsetTop;by+=bz.offsetLeft;if(b.support.doesNotAddBorder&&!(b.support.doesAddBorderForTableAndCells&&V.test(bz.nodeName))){bD+=parseFloat(bC.borderTopWidth)||0;by+=parseFloat(bC.borderLeftWidth)||0}bv=bw;bw=bz.offsetParent}if(b.support.subtractsBorderForOverflowNotVisible&&bC.overflow!=="visible"){bD+=parseFloat(bC.borderTopWidth)||0;by+=parseFloat(bC.borderLeftWidth)||0}e=bC}if(e.position==="relative"||e.position==="static"){bD+=bA.offsetTop;by+=bA.offsetLeft}if(b.support.fixedPosition&&e.position==="fixed"){bD+=Math.max(bx.scrollTop,bA.scrollTop);by+=Math.max(bx.scrollLeft,bA.scrollLeft)}return{top:bD,left:by}}}b.offset={bodyOffset:function(e){var bw=e.offsetTop,bv=e.offsetLeft;if(b.support.doesNotIncludeMarginInBodyOffset){bw+=parseFloat(b.css(e,"marginTop"))||0;bv+=parseFloat(b.css(e,"marginLeft"))||0}return{top:bw,left:bv}},setOffset:function(bx,bG,bA){var bB=b.css(bx,"position");if(bB==="static"){bx.style.position="relative"}var bz=b(bx),bv=bz.offset(),e=b.css(bx,"top"),bE=b.css(bx,"left"),bF=(bB==="absolute"||bB==="fixed")&&b.inArray("auto",[e,bE])>-1,bD={},bC={},bw,by;if(bF){bC=bz.position();bw=bC.top;by=bC.left}else{bw=parseFloat(e)||0;by=parseFloat(bE)||0}if(b.isFunction(bG)){bG=bG.call(bx,bA,bv)}if(bG.top!=null){bD.top=(bG.top-bv.top)+bw}if(bG.left!=null){bD.left=(bG.left-bv.left)+by}if("using" in bG){bG.using.call(bx,bD)}else{bz.css(bD)}}};b.fn.extend({position:function(){if(!this[0]){return null}var bw=this[0],bv=this.offsetParent(),bx=this.offset(),e=ad.test(bv[0].nodeName)?{top:0,left:0}:bv.offset();bx.top-=parseFloat(b.css(bw,"marginTop"))||0;bx.left-=parseFloat(b.css(bw,"marginLeft"))||0;e.top+=parseFloat(b.css(bv[0],"borderTopWidth"))||0;e.left+=parseFloat(b.css(bv[0],"borderLeftWidth"))||0;return{top:bx.top-e.top,left:bx.left-e.left}},offsetParent:function(){return this.map(function(){var e=this.offsetParent||av.body;while(e&&(!ad.test(e.nodeName)&&b.css(e,"position")==="static")){e=e.offsetParent}return e})}});b.each(["Left","Top"],function(bv,e){var bw="scroll"+e;b.fn[bw]=function(bz){var bx,by;if(bz===L){bx=this[0];if(!bx){return null}by=aK(bx);return by?("pageXOffset" in by)?by[bv?"pageYOffset":"pageXOffset"]:b.support.boxModel&&by.document.documentElement[bw]||by.document.body[bw]:bx[bw]}return this.each(function(){by=aK(this);if(by){by.scrollTo(!bv?bz:b(by).scrollLeft(),bv?bz:b(by).scrollTop())}else{this[bw]=bz}})}});function aK(e){return b.isWindow(e)?e:e.nodeType===9?e.defaultView||e.parentWindow:false}b.each(["Height","Width"],function(bv,e){var bw=e.toLowerCase();b.fn["inner"+e]=function(){var bx=this[0];return bx?bx.style?parseFloat(b.css(bx,bw,"padding")):this[bw]():null};b.fn["outer"+e]=function(by){var bx=this[0];return bx?bx.style?parseFloat(b.css(bx,bw,by?"margin":"border")):this[bw]():null};b.fn[bw]=function(bz){var bA=this[0];if(!bA){return bz==null?null:this}if(b.isFunction(bz)){return this.each(function(bE){var bD=b(this);bD[bw](bz.call(this,bE,bD[bw]()))})}if(b.isWindow(bA)){var bB=bA.document.documentElement["client"+e],bx=bA.document.body;return bA.document.compatMode==="CSS1Compat"&&bB||bx&&bx["client"+e]||bB}else{if(bA.nodeType===9){return Math.max(bA.documentElement["client"+e],bA.body["scroll"+e],bA.documentElement["scroll"+e],bA.body["offset"+e],bA.documentElement["offset"+e])}else{if(bz===L){var bC=b.css(bA,bw),by=parseFloat(bC);return b.isNumeric(by)?by:bC}else{return this.css(bw,typeof bz==="string"?bz:bz+"px")}}}}});bb.jQuery=bb.$=b;if(typeof define==="function"&&define.amd&&define.amd.jQuery){define("jquery",[],function(){return b -})}})(window); +(function(){var bH=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,bC="sizcache"+(Math.random()+"").replace(".",""),bI=0,bL=Object.prototype.toString,bB=false,bA=true,bK=/\\/g,bO=/\r\n/g,bQ=/\W/;[0,0].sort(function(){bA=false;return 0});var by=function(bV,e,bY,bZ){bY=bY||[];e=e||av;var b1=e;if(e.nodeType!==1&&e.nodeType!==9){return[]}if(!bV||typeof bV!=="string"){return bY}var bS,b3,b6,bR,b2,b5,b4,bX,bU=true,bT=by.isXML(e),bW=[],b0=bV;do{bH.exec("");bS=bH.exec(b0);if(bS){b0=bS[3];bW.push(bS[1]);if(bS[2]){bR=bS[3];break}}}while(bS);if(bW.length>1&&bD.exec(bV)){if(bW.length===2&&bE.relative[bW[0]]){b3=bM(bW[0]+bW[1],e,bZ)}else{b3=bE.relative[bW[0]]?[e]:by(bW.shift(),e);while(bW.length){bV=bW.shift();if(bE.relative[bV]){bV+=bW.shift()}b3=bM(bV,b3,bZ)}}}else{if(!bZ&&bW.length>1&&e.nodeType===9&&!bT&&bE.match.ID.test(bW[0])&&!bE.match.ID.test(bW[bW.length-1])){b2=by.find(bW.shift(),e,bT);e=b2.expr?by.filter(b2.expr,b2.set)[0]:b2.set[0]}if(e){b2=bZ?{expr:bW.pop(),set:bF(bZ)}:by.find(bW.pop(),bW.length===1&&(bW[0]==="~"||bW[0]==="+")&&e.parentNode?e.parentNode:e,bT);b3=b2.expr?by.filter(b2.expr,b2.set):b2.set;if(bW.length>0){b6=bF(b3)}else{bU=false}while(bW.length){b5=bW.pop();b4=b5;if(!bE.relative[b5]){b5=""}else{b4=bW.pop()}if(b4==null){b4=e}bE.relative[b5](b6,b4,bT)}}else{b6=bW=[]}}if(!b6){b6=b3}if(!b6){by.error(b5||bV)}if(bL.call(b6)==="[object Array]"){if(!bU){bY.push.apply(bY,b6)}else{if(e&&e.nodeType===1){for(bX=0;b6[bX]!=null;bX++){if(b6[bX]&&(b6[bX]===true||b6[bX].nodeType===1&&by.contains(e,b6[bX]))){bY.push(b3[bX])}}}else{for(bX=0;b6[bX]!=null;bX++){if(b6[bX]&&b6[bX].nodeType===1){bY.push(b3[bX])}}}}}else{bF(b6,bY)}if(bR){by(bR,b1,bY,bZ);by.uniqueSort(bY)}return bY};by.uniqueSort=function(bR){if(bJ){bB=bA;bR.sort(bJ);if(bB){for(var e=1;e0};by.find=function(bX,e,bY){var bW,bS,bU,bT,bV,bR;if(!bX){return[]}for(bS=0,bU=bE.order.length;bS":function(bW,bR){var bV,bU=typeof bR==="string",bS=0,e=bW.length;if(bU&&!bQ.test(bR)){bR=bR.toLowerCase();for(;bS=0)){if(!bS){e.push(bV)}}else{if(bS){bR[bU]=false}}}}return false},ID:function(e){return e[1].replace(bK,"")},TAG:function(bR,e){return bR[1].replace(bK,"").toLowerCase()},CHILD:function(e){if(e[1]==="nth"){if(!e[2]){by.error(e[0])}e[2]=e[2].replace(/^\+|\s*/g,"");var bR=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(e[2]==="even"&&"2n"||e[2]==="odd"&&"2n+1"||!/\D/.test(e[2])&&"0n+"+e[2]||e[2]);e[2]=(bR[1]+(bR[2]||1))-0;e[3]=bR[3]-0}else{if(e[2]){by.error(e[0])}}e[0]=bI++;return e},ATTR:function(bU,bR,bS,e,bV,bW){var bT=bU[1]=bU[1].replace(bK,"");if(!bW&&bE.attrMap[bT]){bU[1]=bE.attrMap[bT]}bU[4]=(bU[4]||bU[5]||"").replace(bK,"");if(bU[2]==="~="){bU[4]=" "+bU[4]+" "}return bU},PSEUDO:function(bU,bR,bS,e,bV){if(bU[1]==="not"){if((bH.exec(bU[3])||"").length>1||/^\w/.test(bU[3])){bU[3]=by(bU[3],null,null,bR)}else{var bT=by.filter(bU[3],bR,bS,true^bV);if(!bS){e.push.apply(e,bT)}return false}}else{if(bE.match.POS.test(bU[0])||bE.match.CHILD.test(bU[0])){return true}}return bU},POS:function(e){e.unshift(true);return e}},filters:{enabled:function(e){return e.disabled===false&&e.type!=="hidden"},disabled:function(e){return e.disabled===true},checked:function(e){return e.checked===true},selected:function(e){if(e.parentNode){e.parentNode.selectedIndex}return e.selected===true},parent:function(e){return !!e.firstChild},empty:function(e){return !e.firstChild},has:function(bS,bR,e){return !!by(e[3],bS).length},header:function(e){return(/h\d/i).test(e.nodeName)},text:function(bS){var e=bS.getAttribute("type"),bR=bS.type;return bS.nodeName.toLowerCase()==="input"&&"text"===bR&&(e===bR||e===null)},radio:function(e){return e.nodeName.toLowerCase()==="input"&&"radio"===e.type},checkbox:function(e){return e.nodeName.toLowerCase()==="input"&&"checkbox"===e.type},file:function(e){return e.nodeName.toLowerCase()==="input"&&"file"===e.type},password:function(e){return e.nodeName.toLowerCase()==="input"&&"password"===e.type},submit:function(bR){var e=bR.nodeName.toLowerCase();return(e==="input"||e==="button")&&"submit"===bR.type},image:function(e){return e.nodeName.toLowerCase()==="input"&&"image"===e.type},reset:function(bR){var e=bR.nodeName.toLowerCase();return(e==="input"||e==="button")&&"reset"===bR.type},button:function(bR){var e=bR.nodeName.toLowerCase();return e==="input"&&"button"===bR.type||e==="button"},input:function(e){return(/input|select|textarea|button/i).test(e.nodeName)},focus:function(e){return e===e.ownerDocument.activeElement}},setFilters:{first:function(bR,e){return e===0},last:function(bS,bR,e,bT){return bR===bT.length-1},even:function(bR,e){return e%2===0},odd:function(bR,e){return e%2===1},lt:function(bS,bR,e){return bRe[3]-0},nth:function(bS,bR,e){return e[3]-0===bR},eq:function(bS,bR,e){return e[3]-0===bR}},filter:{PSEUDO:function(bS,bX,bW,bY){var e=bX[1],bR=bE.filters[e];if(bR){return bR(bS,bW,bX,bY)}else{if(e==="contains"){return(bS.textContent||bS.innerText||bw([bS])||"").indexOf(bX[3])>=0}else{if(e==="not"){var bT=bX[3];for(var bV=0,bU=bT.length;bV=0)}}},ID:function(bR,e){return bR.nodeType===1&&bR.getAttribute("id")===e},TAG:function(bR,e){return(e==="*"&&bR.nodeType===1)||!!bR.nodeName&&bR.nodeName.toLowerCase()===e},CLASS:function(bR,e){return(" "+(bR.className||bR.getAttribute("class"))+" ").indexOf(e)>-1},ATTR:function(bV,bT){var bS=bT[1],e=by.attr?by.attr(bV,bS):bE.attrHandle[bS]?bE.attrHandle[bS](bV):bV[bS]!=null?bV[bS]:bV.getAttribute(bS),bW=e+"",bU=bT[2],bR=bT[4];return e==null?bU==="!=":!bU&&by.attr?e!=null:bU==="="?bW===bR:bU==="*="?bW.indexOf(bR)>=0:bU==="~="?(" "+bW+" ").indexOf(bR)>=0:!bR?bW&&e!==false:bU==="!="?bW!==bR:bU==="^="?bW.indexOf(bR)===0:bU==="$="?bW.substr(bW.length-bR.length)===bR:bU==="|="?bW===bR||bW.substr(0,bR.length+1)===bR+"-":false},POS:function(bU,bR,bS,bV){var e=bR[2],bT=bE.setFilters[e];if(bT){return bT(bU,bS,bR,bV)}}}};var bD=bE.match.POS,bx=function(bR,e){return"\\"+(e-0+1)};for(var bz in bE.match){bE.match[bz]=new RegExp(bE.match[bz].source+(/(?![^\[]*\])(?![^\(]*\))/.source));bE.leftMatch[bz]=new RegExp(/(^(?:.|\r|\n)*?)/.source+bE.match[bz].source.replace(/\\(\d+)/g,bx))}var bF=function(bR,e){bR=Array.prototype.slice.call(bR,0);if(e){e.push.apply(e,bR);return e}return bR};try{Array.prototype.slice.call(av.documentElement.childNodes,0)[0].nodeType}catch(bP){bF=function(bU,bT){var bS=0,bR=bT||[];if(bL.call(bU)==="[object Array]"){Array.prototype.push.apply(bR,bU)}else{if(typeof bU.length==="number"){for(var e=bU.length;bS";e.insertBefore(bR,e.firstChild);if(av.getElementById(bS)){bE.find.ID=function(bU,bV,bW){if(typeof bV.getElementById!=="undefined"&&!bW){var bT=bV.getElementById(bU[1]);return bT?bT.id===bU[1]||typeof bT.getAttributeNode!=="undefined"&&bT.getAttributeNode("id").nodeValue===bU[1]?[bT]:L:[]}};bE.filter.ID=function(bV,bT){var bU=typeof bV.getAttributeNode!=="undefined"&&bV.getAttributeNode("id");return bV.nodeType===1&&bU&&bU.nodeValue===bT}}e.removeChild(bR);e=bR=null})();(function(){var e=av.createElement("div");e.appendChild(av.createComment(""));if(e.getElementsByTagName("*").length>0){bE.find.TAG=function(bR,bV){var bU=bV.getElementsByTagName(bR[1]);if(bR[1]==="*"){var bT=[];for(var bS=0;bU[bS];bS++){if(bU[bS].nodeType===1){bT.push(bU[bS])}}bU=bT}return bU}}e.innerHTML="";if(e.firstChild&&typeof e.firstChild.getAttribute!=="undefined"&&e.firstChild.getAttribute("href")!=="#"){bE.attrHandle.href=function(bR){return bR.getAttribute("href",2)}}e=null})();if(av.querySelectorAll){(function(){var e=by,bT=av.createElement("div"),bS="__sizzle__";bT.innerHTML="

    ";if(bT.querySelectorAll&&bT.querySelectorAll(".TEST").length===0){return}by=function(b4,bV,bZ,b3){bV=bV||av;if(!b3&&!by.isXML(bV)){var b2=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b4);if(b2&&(bV.nodeType===1||bV.nodeType===9)){if(b2[1]){return bF(bV.getElementsByTagName(b4),bZ)}else{if(b2[2]&&bE.find.CLASS&&bV.getElementsByClassName){return bF(bV.getElementsByClassName(b2[2]),bZ)}}}if(bV.nodeType===9){if(b4==="body"&&bV.body){return bF([bV.body],bZ)}else{if(b2&&b2[3]){var bY=bV.getElementById(b2[3]);if(bY&&bY.parentNode){if(bY.id===b2[3]){return bF([bY],bZ)}}else{return bF([],bZ)}}}try{return bF(bV.querySelectorAll(b4),bZ)}catch(b0){}}else{if(bV.nodeType===1&&bV.nodeName.toLowerCase()!=="object"){var bW=bV,bX=bV.getAttribute("id"),bU=bX||bS,b6=bV.parentNode,b5=/^\s*[+~]/.test(b4);if(!bX){bV.setAttribute("id",bU)}else{bU=bU.replace(/'/g,"\\$&")}if(b5&&b6){bV=bV.parentNode}try{if(!b5||b6){return bF(bV.querySelectorAll("[id='"+bU+"'] "+b4),bZ)}}catch(b1){}finally{if(!bX){bW.removeAttribute("id")}}}}}return e(b4,bV,bZ,b3)};for(var bR in e){by[bR]=e[bR]}bT=null})()}(function(){var e=av.documentElement,bS=e.matchesSelector||e.mozMatchesSelector||e.webkitMatchesSelector||e.msMatchesSelector;if(bS){var bU=!bS.call(av.createElement("div"),"div"),bR=false;try{bS.call(av.documentElement,"[test!='']:sizzle")}catch(bT){bR=true}by.matchesSelector=function(bW,bY){bY=bY.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!by.isXML(bW)){try{if(bR||!bE.match.PSEUDO.test(bY)&&!/!=/.test(bY)){var bV=bS.call(bW,bY);if(bV||!bU||bW.document&&bW.document.nodeType!==11){return bV}}}catch(bX){}}return by(bY,null,null,[bW]).length>0}}})();(function(){var e=av.createElement("div");e.innerHTML="
    ";if(!e.getElementsByClassName||e.getElementsByClassName("e").length===0){return}e.lastChild.className="e";if(e.getElementsByClassName("e").length===1){return}bE.order.splice(1,0,"CLASS");bE.find.CLASS=function(bR,bS,bT){if(typeof bS.getElementsByClassName!=="undefined"&&!bT){return bS.getElementsByClassName(bR[1])}};e=null})();function bv(bR,bW,bV,bZ,bX,bY){for(var bT=0,bS=bZ.length;bT0){bU=e;break}}}e=e[bR]}bZ[bT]=bU}}}if(av.documentElement.contains){by.contains=function(bR,e){return bR!==e&&(bR.contains?bR.contains(e):true)}}else{if(av.documentElement.compareDocumentPosition){by.contains=function(bR,e){return !!(bR.compareDocumentPosition(e)&16)}}else{by.contains=function(){return false}}}by.isXML=function(e){var bR=(e?e.ownerDocument||e:0).documentElement;return bR?bR.nodeName!=="HTML":false};var bM=function(bS,e,bW){var bV,bX=[],bU="",bY=e.nodeType?[e]:e;while((bV=bE.match.PSEUDO.exec(bS))){bU+=bV[0];bS=bS.replace(bE.match.PSEUDO,"")}bS=bE.relative[bS]?bS+"*":bS;for(var bT=0,bR=bY.length;bT0){for(bB=bA;bB=0:b.filter(e,this).length>0:this.filter(e).length>0)},closest:function(by,bx){var bv=[],bw,e,bz=this[0];if(b.isArray(by)){var bB=1;while(bz&&bz.ownerDocument&&bz!==bx){for(bw=0;bw-1:b.find.matchesSelector(bz,by)){bv.push(bz);break}else{bz=bz.parentNode;if(!bz||!bz.ownerDocument||bz===bx||bz.nodeType===11){break}}}}bv=bv.length>1?b.unique(bv):bv;return this.pushStack(bv,"closest",by)},index:function(e){if(!e){return(this[0]&&this[0].parentNode)?this.prevAll().length:-1}if(typeof e==="string"){return b.inArray(this[0],b(e))}return b.inArray(e.jquery?e[0]:e,this)},add:function(e,bv){var bx=typeof e==="string"?b(e,bv):b.makeArray(e&&e.nodeType?[e]:e),bw=b.merge(this.get(),bx);return this.pushStack(C(bx[0])||C(bw[0])?bw:b.unique(bw))},andSelf:function(){return this.add(this.prevObject)}});function C(e){return !e||!e.parentNode||e.parentNode.nodeType===11}b.each({parent:function(bv){var e=bv.parentNode;return e&&e.nodeType!==11?e:null},parents:function(e){return b.dir(e,"parentNode")},parentsUntil:function(bv,e,bw){return b.dir(bv,"parentNode",bw)},next:function(e){return b.nth(e,2,"nextSibling")},prev:function(e){return b.nth(e,2,"previousSibling")},nextAll:function(e){return b.dir(e,"nextSibling")},prevAll:function(e){return b.dir(e,"previousSibling")},nextUntil:function(bv,e,bw){return b.dir(bv,"nextSibling",bw)},prevUntil:function(bv,e,bw){return b.dir(bv,"previousSibling",bw)},siblings:function(e){return b.sibling(e.parentNode.firstChild,e)},children:function(e){return b.sibling(e.firstChild)},contents:function(e){return b.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:b.makeArray(e.childNodes)}},function(e,bv){b.fn[e]=function(by,bw){var bx=b.map(this,bv,by);if(!ab.test(e)){bw=by}if(bw&&typeof bw==="string"){bx=b.filter(bw,bx)}bx=this.length>1&&!ay[e]?b.unique(bx):bx;if((this.length>1||a9.test(bw))&&aq.test(e)){bx=bx.reverse()}return this.pushStack(bx,e,P.call(arguments).join(","))}});b.extend({filter:function(bw,e,bv){if(bv){bw=":not("+bw+")"}return e.length===1?b.find.matchesSelector(e[0],bw)?[e[0]]:[]:b.find.matches(bw,e)},dir:function(bw,bv,by){var e=[],bx=bw[bv];while(bx&&bx.nodeType!==9&&(by===L||bx.nodeType!==1||!b(bx).is(by))){if(bx.nodeType===1){e.push(bx)}bx=bx[bv]}return e},nth:function(by,e,bw,bx){e=e||1;var bv=0;for(;by;by=by[bw]){if(by.nodeType===1&&++bv===e){break}}return by},sibling:function(bw,bv){var e=[];for(;bw;bw=bw.nextSibling){if(bw.nodeType===1&&bw!==bv){e.push(bw)}}return e}});function aG(bx,bw,e){bw=bw||0;if(b.isFunction(bw)){return b.grep(bx,function(bz,by){var bA=!!bw.call(bz,by,bz);return bA===e})}else{if(bw.nodeType){return b.grep(bx,function(bz,by){return(bz===bw)===e})}else{if(typeof bw==="string"){var bv=b.grep(bx,function(by){return by.nodeType===1});if(bp.test(bw)){return b.filter(bw,bv,!e)}else{bw=b.filter(bw,bv)}}}}return b.grep(bx,function(bz,by){return(b.inArray(bz,bw)>=0)===e})}function a(e){var bw=aR.split("|"),bv=e.createDocumentFragment();if(bv.createElement){while(bw.length){bv.createElement(bw.pop())}}return bv}var aR="abbr|article|aside|audio|canvas|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",ag=/ jQuery\d+="(?:\d+|null)"/g,ar=/^\s+/,R=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,d=/<([\w:]+)/,w=/
    ",""],legend:[1,"
    ","
    "],thead:[1,"
    ","
    "],tr:[2,"","
    "],td:[3,"","
    "],col:[2,"","
    "],area:[1,"",""],_default:[0,"",""]},ac=a(av);ax.optgroup=ax.option;ax.tbody=ax.tfoot=ax.colgroup=ax.caption=ax.thead;ax.th=ax.td;if(!b.support.htmlSerialize){ax._default=[1,"div
    ","
    "]}b.fn.extend({text:function(e){if(b.isFunction(e)){return this.each(function(bw){var bv=b(this);bv.text(e.call(this,bw,bv.text()))})}if(typeof e!=="object"&&e!==L){return this.empty().append((this[0]&&this[0].ownerDocument||av).createTextNode(e))}return b.text(this)},wrapAll:function(e){if(b.isFunction(e)){return this.each(function(bw){b(this).wrapAll(e.call(this,bw))})}if(this[0]){var bv=b(e,this[0].ownerDocument).eq(0).clone(true);if(this[0].parentNode){bv.insertBefore(this[0])}bv.map(function(){var bw=this;while(bw.firstChild&&bw.firstChild.nodeType===1){bw=bw.firstChild}return bw}).append(this)}return this},wrapInner:function(e){if(b.isFunction(e)){return this.each(function(bv){b(this).wrapInner(e.call(this,bv))})}return this.each(function(){var bv=b(this),bw=bv.contents();if(bw.length){bw.wrapAll(e)}else{bv.append(e)}})},wrap:function(e){var bv=b.isFunction(e);return this.each(function(bw){b(this).wrapAll(bv?e.call(this,bw):e)})},unwrap:function(){return this.parent().each(function(){if(!b.nodeName(this,"body")){b(this).replaceWith(this.childNodes)}}).end()},append:function(){return this.domManip(arguments,true,function(e){if(this.nodeType===1){this.appendChild(e)}})},prepend:function(){return this.domManip(arguments,true,function(e){if(this.nodeType===1){this.insertBefore(e,this.firstChild)}})},before:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(bv){this.parentNode.insertBefore(bv,this)})}else{if(arguments.length){var e=b.clean(arguments);e.push.apply(e,this.toArray());return this.pushStack(e,"before",arguments)}}},after:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(bv){this.parentNode.insertBefore(bv,this.nextSibling)})}else{if(arguments.length){var e=this.pushStack(this,"after",arguments);e.push.apply(e,b.clean(arguments));return e}}},remove:function(e,bx){for(var bv=0,bw;(bw=this[bv])!=null;bv++){if(!e||b.filter(e,[bw]).length){if(!bx&&bw.nodeType===1){b.cleanData(bw.getElementsByTagName("*"));b.cleanData([bw])}if(bw.parentNode){bw.parentNode.removeChild(bw)}}}return this},empty:function(){for(var e=0,bv;(bv=this[e])!=null;e++){if(bv.nodeType===1){b.cleanData(bv.getElementsByTagName("*"))}while(bv.firstChild){bv.removeChild(bv.firstChild)}}return this},clone:function(bv,e){bv=bv==null?false:bv;e=e==null?bv:e;return this.map(function(){return b.clone(this,bv,e)})},html:function(bx){if(bx===L){return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(ag,""):null}else{if(typeof bx==="string"&&!ae.test(bx)&&(b.support.leadingWhitespace||!ar.test(bx))&&!ax[(d.exec(bx)||["",""])[1].toLowerCase()]){bx=bx.replace(R,"<$1>");try{for(var bw=0,bv=this.length;bw1&&bw0?this.clone(true):this).get();b(bC[bA])[bv](by);bz=bz.concat(by)}return this.pushStack(bz,e,bC.selector)}}});function bg(e){if(typeof e.getElementsByTagName!=="undefined"){return e.getElementsByTagName("*")}else{if(typeof e.querySelectorAll!=="undefined"){return e.querySelectorAll("*")}else{return[]}}}function az(e){if(e.type==="checkbox"||e.type==="radio"){e.defaultChecked=e.checked}}function E(e){var bv=(e.nodeName||"").toLowerCase();if(bv==="input"){az(e)}else{if(bv!=="script"&&typeof e.getElementsByTagName!=="undefined"){b.grep(e.getElementsByTagName("input"),az)}}}function al(e){var bv=av.createElement("div");ac.appendChild(bv);bv.innerHTML=e.outerHTML;return bv.firstChild}b.extend({clone:function(by,bA,bw){var e,bv,bx,bz=b.support.html5Clone||!ah.test("<"+by.nodeName)?by.cloneNode(true):al(by);if((!b.support.noCloneEvent||!b.support.noCloneChecked)&&(by.nodeType===1||by.nodeType===11)&&!b.isXMLDoc(by)){ai(by,bz);e=bg(by);bv=bg(bz);for(bx=0;e[bx];++bx){if(bv[bx]){ai(e[bx],bv[bx])}}}if(bA){t(by,bz);if(bw){e=bg(by);bv=bg(bz);for(bx=0;e[bx];++bx){t(e[bx],bv[bx])}}}e=bv=null;return bz},clean:function(bw,by,bH,bA){var bF;by=by||av;if(typeof by.createElement==="undefined"){by=by.ownerDocument||by[0]&&by[0].ownerDocument||av}var bI=[],bB;for(var bE=0,bz;(bz=bw[bE])!=null;bE++){if(typeof bz==="number"){bz+=""}if(!bz){continue}if(typeof bz==="string"){if(!W.test(bz)){bz=by.createTextNode(bz)}else{bz=bz.replace(R,"<$1>");var bK=(d.exec(bz)||["",""])[1].toLowerCase(),bx=ax[bK]||ax._default,bD=bx[0],bv=by.createElement("div");if(by===av){ac.appendChild(bv)}else{a(by).appendChild(bv)}bv.innerHTML=bx[1]+bz+bx[2];while(bD--){bv=bv.lastChild}if(!b.support.tbody){var e=w.test(bz),bC=bK==="table"&&!e?bv.firstChild&&bv.firstChild.childNodes:bx[1]===""&&!e?bv.childNodes:[];for(bB=bC.length-1;bB>=0;--bB){if(b.nodeName(bC[bB],"tbody")&&!bC[bB].childNodes.length){bC[bB].parentNode.removeChild(bC[bB])}}}if(!b.support.leadingWhitespace&&ar.test(bz)){bv.insertBefore(by.createTextNode(ar.exec(bz)[0]),bv.firstChild)}bz=bv.childNodes}}var bG;if(!b.support.appendChecked){if(bz[0]&&typeof(bG=bz.length)==="number"){for(bB=0;bB=0){return bx+"px"}}else{return bx}}}});if(!b.support.opacity){b.cssHooks.opacity={get:function(bv,e){return au.test((e&&bv.currentStyle?bv.currentStyle.filter:bv.style.filter)||"")?(parseFloat(RegExp.$1)/100)+"":e?"1":""},set:function(by,bz){var bx=by.style,bv=by.currentStyle,e=b.isNumeric(bz)?"alpha(opacity="+bz*100+")":"",bw=bv&&bv.filter||bx.filter||"";bx.zoom=1;if(bz>=1&&b.trim(bw.replace(ak,""))===""){bx.removeAttribute("filter");if(bv&&!bv.filter){return}}bx.filter=ak.test(bw)?bw.replace(ak,e):bw+" "+e}}}b(function(){if(!b.support.reliableMarginRight){b.cssHooks.marginRight={get:function(bw,bv){var e;b.swap(bw,{display:"inline-block"},function(){if(bv){e=Z(bw,"margin-right","marginRight")}else{e=bw.style.marginRight}});return e}}}});if(av.defaultView&&av.defaultView.getComputedStyle){aI=function(by,bw){var bv,bx,e;bw=bw.replace(z,"-$1").toLowerCase();if((bx=by.ownerDocument.defaultView)&&(e=bx.getComputedStyle(by,null))){bv=e.getPropertyValue(bw);if(bv===""&&!b.contains(by.ownerDocument.documentElement,by)){bv=b.style(by,bw)}}return bv}}if(av.documentElement.currentStyle){aX=function(bz,bw){var bA,e,by,bv=bz.currentStyle&&bz.currentStyle[bw],bx=bz.style;if(bv===null&&bx&&(by=bx[bw])){bv=by}if(!bc.test(bv)&&bn.test(bv)){bA=bx.left;e=bz.runtimeStyle&&bz.runtimeStyle.left;if(e){bz.runtimeStyle.left=bz.currentStyle.left}bx.left=bw==="fontSize"?"1em":(bv||0);bv=bx.pixelLeft+"px";bx.left=bA;if(e){bz.runtimeStyle.left=e}}return bv===""?"auto":bv}}Z=aI||aX;function p(by,bw,bv){var bA=bw==="width"?by.offsetWidth:by.offsetHeight,bz=bw==="width"?an:a1,bx=0,e=bz.length;if(bA>0){if(bv!=="border"){for(;bx)<[^<]*)*<\/script>/gi,q=/^(?:select|textarea)/i,h=/\s+/,br=/([?&])_=[^&]*/,K=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,A=b.fn.load,aa={},r={},aE,s,aV=["*/"]+["*"];try{aE=bl.href}catch(aw){aE=av.createElement("a");aE.href="";aE=aE.href}s=K.exec(aE.toLowerCase())||[];function f(e){return function(by,bA){if(typeof by!=="string"){bA=by;by="*"}if(b.isFunction(bA)){var bx=by.toLowerCase().split(h),bw=0,bz=bx.length,bv,bB,bC;for(;bw=0){var e=bw.slice(by,bw.length);bw=bw.slice(0,by)}var bx="GET";if(bz){if(b.isFunction(bz)){bA=bz;bz=L}else{if(typeof bz==="object"){bz=b.param(bz,b.ajaxSettings.traditional);bx="POST"}}}var bv=this;b.ajax({url:bw,type:bx,dataType:"html",data:bz,complete:function(bC,bB,bD){bD=bC.responseText;if(bC.isResolved()){bC.done(function(bE){bD=bE});bv.html(e?b("
    ").append(bD.replace(a6,"")).find(e):bD)}if(bA){bv.each(bA,[bD,bB,bC])}}});return this},serialize:function(){return b.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?b.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||q.test(this.nodeName)||aZ.test(this.type))}).map(function(e,bv){var bw=b(this).val();return bw==null?null:b.isArray(bw)?b.map(bw,function(by,bx){return{name:bv.name,value:by.replace(bs,"\r\n")}}):{name:bv.name,value:bw.replace(bs,"\r\n")}}).get()}});b.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(e,bv){b.fn[bv]=function(bw){return this.on(bv,bw)}});b.each(["get","post"],function(e,bv){b[bv]=function(bw,by,bz,bx){if(b.isFunction(by)){bx=bx||bz;bz=by;by=L}return b.ajax({type:bv,url:bw,data:by,success:bz,dataType:bx})}});b.extend({getScript:function(e,bv){return b.get(e,L,bv,"script")},getJSON:function(e,bv,bw){return b.get(e,bv,bw,"json")},ajaxSetup:function(bv,e){if(e){am(bv,b.ajaxSettings)}else{e=bv;bv=b.ajaxSettings}am(bv,e);return bv},ajaxSettings:{url:aE,isLocal:aM.test(s[1]),global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":aV},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":bb.String,"text html":true,"text json":b.parseJSON,"text xml":b.parseXML},flatOptions:{context:true,url:true}},ajaxPrefilter:f(aa),ajaxTransport:f(r),ajax:function(bz,bx){if(typeof bz==="object"){bx=bz;bz=L}bx=bx||{};var bD=b.ajaxSetup({},bx),bS=bD.context||bD,bG=bS!==bD&&(bS.nodeType||bS instanceof b)?b(bS):b.event,bR=b.Deferred(),bN=b.Callbacks("once memory"),bB=bD.statusCode||{},bC,bH={},bO={},bQ,by,bL,bE,bI,bA=0,bw,bK,bJ={readyState:0,setRequestHeader:function(bT,bU){if(!bA){var e=bT.toLowerCase();bT=bO[e]=bO[e]||bT;bH[bT]=bU}return this},getAllResponseHeaders:function(){return bA===2?bQ:null},getResponseHeader:function(bT){var e;if(bA===2){if(!by){by={};while((e=aD.exec(bQ))){by[e[1].toLowerCase()]=e[2]}}e=by[bT.toLowerCase()]}return e===L?null:e},overrideMimeType:function(e){if(!bA){bD.mimeType=e}return this},abort:function(e){e=e||"abort";if(bL){bL.abort(e)}bF(0,e);return this}};function bF(bZ,bU,b0,bW){if(bA===2){return}bA=2;if(bE){clearTimeout(bE)}bL=L;bQ=bW||"";bJ.readyState=bZ>0?4:0;var bT,b4,b3,bX=bU,bY=b0?bj(bD,bJ,b0):L,bV,b2;if(bZ>=200&&bZ<300||bZ===304){if(bD.ifModified){if((bV=bJ.getResponseHeader("Last-Modified"))){b.lastModified[bC]=bV}if((b2=bJ.getResponseHeader("Etag"))){b.etag[bC]=b2}}if(bZ===304){bX="notmodified";bT=true}else{try{b4=G(bD,bY);bX="success";bT=true}catch(b1){bX="parsererror";b3=b1}}}else{b3=bX;if(!bX||bZ){bX="error";if(bZ<0){bZ=0}}}bJ.status=bZ;bJ.statusText=""+(bU||bX);if(bT){bR.resolveWith(bS,[b4,bX,bJ])}else{bR.rejectWith(bS,[bJ,bX,b3])}bJ.statusCode(bB);bB=L;if(bw){bG.trigger("ajax"+(bT?"Success":"Error"),[bJ,bD,bT?b4:b3])}bN.fireWith(bS,[bJ,bX]);if(bw){bG.trigger("ajaxComplete",[bJ,bD]);if(!(--b.active)){b.event.trigger("ajaxStop")}}}bR.promise(bJ);bJ.success=bJ.done;bJ.error=bJ.fail;bJ.complete=bN.add;bJ.statusCode=function(bT){if(bT){var e;if(bA<2){for(e in bT){bB[e]=[bB[e],bT[e]]}}else{e=bT[bJ.status];bJ.then(e,e)}}return this};bD.url=((bz||bD.url)+"").replace(bq,"").replace(c,s[1]+"//");bD.dataTypes=b.trim(bD.dataType||"*").toLowerCase().split(h);if(bD.crossDomain==null){bI=K.exec(bD.url.toLowerCase());bD.crossDomain=!!(bI&&(bI[1]!=s[1]||bI[2]!=s[2]||(bI[3]||(bI[1]==="http:"?80:443))!=(s[3]||(s[1]==="http:"?80:443))))}if(bD.data&&bD.processData&&typeof bD.data!=="string"){bD.data=b.param(bD.data,bD.traditional)}aW(aa,bD,bx,bJ);if(bA===2){return false}bw=bD.global;bD.type=bD.type.toUpperCase();bD.hasContent=!aQ.test(bD.type);if(bw&&b.active++===0){b.event.trigger("ajaxStart")}if(!bD.hasContent){if(bD.data){bD.url+=(M.test(bD.url)?"&":"?")+bD.data;delete bD.data}bC=bD.url;if(bD.cache===false){var bv=b.now(),bP=bD.url.replace(br,"$1_="+bv);bD.url=bP+((bP===bD.url)?(M.test(bD.url)?"&":"?")+"_="+bv:"")}}if(bD.data&&bD.hasContent&&bD.contentType!==false||bx.contentType){bJ.setRequestHeader("Content-Type",bD.contentType)}if(bD.ifModified){bC=bC||bD.url;if(b.lastModified[bC]){bJ.setRequestHeader("If-Modified-Since",b.lastModified[bC])}if(b.etag[bC]){bJ.setRequestHeader("If-None-Match",b.etag[bC])}}bJ.setRequestHeader("Accept",bD.dataTypes[0]&&bD.accepts[bD.dataTypes[0]]?bD.accepts[bD.dataTypes[0]]+(bD.dataTypes[0]!=="*"?", "+aV+"; q=0.01":""):bD.accepts["*"]);for(bK in bD.headers){bJ.setRequestHeader(bK,bD.headers[bK])}if(bD.beforeSend&&(bD.beforeSend.call(bS,bJ,bD)===false||bA===2)){bJ.abort();return false}for(bK in {success:1,error:1,complete:1}){bJ[bK](bD[bK])}bL=aW(r,bD,bx,bJ);if(!bL){bF(-1,"No Transport")}else{bJ.readyState=1;if(bw){bG.trigger("ajaxSend",[bJ,bD])}if(bD.async&&bD.timeout>0){bE=setTimeout(function(){bJ.abort("timeout")},bD.timeout)}try{bA=1;bL.send(bH,bF)}catch(bM){if(bA<2){bF(-1,bM)}else{throw bM}}}return bJ},param:function(e,bw){var bv=[],by=function(bz,bA){bA=b.isFunction(bA)?bA():bA;bv[bv.length]=encodeURIComponent(bz)+"="+encodeURIComponent(bA)};if(bw===L){bw=b.ajaxSettings.traditional}if(b.isArray(e)||(e.jquery&&!b.isPlainObject(e))){b.each(e,function(){by(this.name,this.value)})}else{for(var bx in e){v(bx,e[bx],bw,by)}}return bv.join("&").replace(k,"+")}});function v(bw,by,bv,bx){if(b.isArray(by)){b.each(by,function(bA,bz){if(bv||ap.test(bw)){bx(bw,bz)}else{v(bw+"["+(typeof bz==="object"||b.isArray(bz)?bA:"")+"]",bz,bv,bx)}})}else{if(!bv&&by!=null&&typeof by==="object"){for(var e in by){v(bw+"["+e+"]",by[e],bv,bx)}}else{bx(bw,by)}}}b.extend({active:0,lastModified:{},etag:{}});function bj(bD,bC,bz){var bv=bD.contents,bB=bD.dataTypes,bw=bD.responseFields,by,bA,bx,e;for(bA in bw){if(bA in bz){bC[bw[bA]]=bz[bA]}}while(bB[0]==="*"){bB.shift();if(by===L){by=bD.mimeType||bC.getResponseHeader("content-type")}}if(by){for(bA in bv){if(bv[bA]&&bv[bA].test(by)){bB.unshift(bA);break}}}if(bB[0] in bz){bx=bB[0]}else{for(bA in bz){if(!bB[0]||bD.converters[bA+" "+bB[0]]){bx=bA;break}if(!e){e=bA}}bx=bx||e}if(bx){if(bx!==bB[0]){bB.unshift(bx)}return bz[bx]}}function G(bH,bz){if(bH.dataFilter){bz=bH.dataFilter(bz,bH.dataType)}var bD=bH.dataTypes,bG={},bA,bE,bw=bD.length,bB,bC=bD[0],bx,by,bF,bv,e;for(bA=1;bA=bw.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();bw.animatedProperties[this.prop]=true;for(bA in bw.animatedProperties){if(bw.animatedProperties[bA]!==true){e=false}}if(e){if(bw.overflow!=null&&!b.support.shrinkWrapBlocks){b.each(["","X","Y"],function(bC,bD){bz.style["overflow"+bD]=bw.overflow[bC]})}if(bw.hide){b(bz).hide()}if(bw.hide||bw.show){for(bA in bw.animatedProperties){b.style(bz,bA,bw.orig[bA]);b.removeData(bz,"fxshow"+bA,true);b.removeData(bz,"toggle"+bA,true)}}bv=bw.complete;if(bv){bw.complete=false;bv.call(bz)}}return false}else{if(bw.duration==Infinity){this.now=bx}else{bB=bx-this.startTime;this.state=bB/bw.duration;this.pos=b.easing[bw.animatedProperties[this.prop]](this.state,bB,0,1,bw.duration);this.now=this.start+((this.end-this.start)*this.pos)}this.update()}return true}};b.extend(b.fx,{tick:function(){var bw,bv=b.timers,e=0;for(;e").appendTo(e),bw=bv.css("display");bv.remove();if(bw==="none"||bw===""){if(!a8){a8=av.createElement("iframe");a8.frameBorder=a8.width=a8.height=0}e.appendChild(a8);if(!m||!a8.createElement){m=(a8.contentWindow||a8.contentDocument).document;m.write((av.compatMode==="CSS1Compat"?"":"")+"");m.close()}bv=m.createElement(bx);m.body.appendChild(bv);bw=b.css(bv,"display");e.removeChild(a8)}Q[bx]=bw}return Q[bx]}var V=/^t(?:able|d|h)$/i,ad=/^(?:body|html)$/i;if("getBoundingClientRect" in av.documentElement){b.fn.offset=function(bI){var by=this[0],bB;if(bI){return this.each(function(e){b.offset.setOffset(this,bI,e)})}if(!by||!by.ownerDocument){return null}if(by===by.ownerDocument.body){return b.offset.bodyOffset(by)}try{bB=by.getBoundingClientRect()}catch(bF){}var bH=by.ownerDocument,bw=bH.documentElement;if(!bB||!b.contains(bw,by)){return bB?{top:bB.top,left:bB.left}:{top:0,left:0}}var bC=bH.body,bD=aK(bH),bA=bw.clientTop||bC.clientTop||0,bE=bw.clientLeft||bC.clientLeft||0,bv=bD.pageYOffset||b.support.boxModel&&bw.scrollTop||bC.scrollTop,bz=bD.pageXOffset||b.support.boxModel&&bw.scrollLeft||bC.scrollLeft,bG=bB.top+bv-bA,bx=bB.left+bz-bE;return{top:bG,left:bx}}}else{b.fn.offset=function(bF){var bz=this[0];if(bF){return this.each(function(bG){b.offset.setOffset(this,bF,bG)})}if(!bz||!bz.ownerDocument){return null}if(bz===bz.ownerDocument.body){return b.offset.bodyOffset(bz)}var bC,bw=bz.offsetParent,bv=bz,bE=bz.ownerDocument,bx=bE.documentElement,bA=bE.body,bB=bE.defaultView,e=bB?bB.getComputedStyle(bz,null):bz.currentStyle,bD=bz.offsetTop,by=bz.offsetLeft;while((bz=bz.parentNode)&&bz!==bA&&bz!==bx){if(b.support.fixedPosition&&e.position==="fixed"){break}bC=bB?bB.getComputedStyle(bz,null):bz.currentStyle;bD-=bz.scrollTop;by-=bz.scrollLeft;if(bz===bw){bD+=bz.offsetTop;by+=bz.offsetLeft;if(b.support.doesNotAddBorder&&!(b.support.doesAddBorderForTableAndCells&&V.test(bz.nodeName))){bD+=parseFloat(bC.borderTopWidth)||0;by+=parseFloat(bC.borderLeftWidth)||0}bv=bw;bw=bz.offsetParent}if(b.support.subtractsBorderForOverflowNotVisible&&bC.overflow!=="visible"){bD+=parseFloat(bC.borderTopWidth)||0;by+=parseFloat(bC.borderLeftWidth)||0}e=bC}if(e.position==="relative"||e.position==="static"){bD+=bA.offsetTop;by+=bA.offsetLeft}if(b.support.fixedPosition&&e.position==="fixed"){bD+=Math.max(bx.scrollTop,bA.scrollTop);by+=Math.max(bx.scrollLeft,bA.scrollLeft)}return{top:bD,left:by}}}b.offset={bodyOffset:function(e){var bw=e.offsetTop,bv=e.offsetLeft;if(b.support.doesNotIncludeMarginInBodyOffset){bw+=parseFloat(b.css(e,"marginTop"))||0;bv+=parseFloat(b.css(e,"marginLeft"))||0}return{top:bw,left:bv}},setOffset:function(bx,bG,bA){var bB=b.css(bx,"position");if(bB==="static"){bx.style.position="relative"}var bz=b(bx),bv=bz.offset(),e=b.css(bx,"top"),bE=b.css(bx,"left"),bF=(bB==="absolute"||bB==="fixed")&&b.inArray("auto",[e,bE])>-1,bD={},bC={},bw,by;if(bF){bC=bz.position();bw=bC.top;by=bC.left}else{bw=parseFloat(e)||0;by=parseFloat(bE)||0}if(b.isFunction(bG)){bG=bG.call(bx,bA,bv)}if(bG.top!=null){bD.top=(bG.top-bv.top)+bw}if(bG.left!=null){bD.left=(bG.left-bv.left)+by}if("using" in bG){bG.using.call(bx,bD)}else{bz.css(bD)}}};b.fn.extend({position:function(){if(!this[0]){return null}var bw=this[0],bv=this.offsetParent(),bx=this.offset(),e=ad.test(bv[0].nodeName)?{top:0,left:0}:bv.offset();bx.top-=parseFloat(b.css(bw,"marginTop"))||0;bx.left-=parseFloat(b.css(bw,"marginLeft"))||0;e.top+=parseFloat(b.css(bv[0],"borderTopWidth"))||0;e.left+=parseFloat(b.css(bv[0],"borderLeftWidth"))||0;return{top:bx.top-e.top,left:bx.left-e.left}},offsetParent:function(){return this.map(function(){var e=this.offsetParent||av.body;while(e&&(!ad.test(e.nodeName)&&b.css(e,"position")==="static")){e=e.offsetParent}return e})}});b.each(["Left","Top"],function(bv,e){var bw="scroll"+e;b.fn[bw]=function(bz){var bx,by;if(bz===L){bx=this[0];if(!bx){return null}by=aK(bx);return by?("pageXOffset" in by)?by[bv?"pageYOffset":"pageXOffset"]:b.support.boxModel&&by.document.documentElement[bw]||by.document.body[bw]:bx[bw]}return this.each(function(){by=aK(this);if(by){by.scrollTo(!bv?bz:b(by).scrollLeft(),bv?bz:b(by).scrollTop())}else{this[bw]=bz}})}});function aK(e){return b.isWindow(e)?e:e.nodeType===9?e.defaultView||e.parentWindow:false}b.each(["Height","Width"],function(bv,e){var bw=e.toLowerCase();b.fn["inner"+e]=function(){var bx=this[0];return bx?bx.style?parseFloat(b.css(bx,bw,"padding")):this[bw]():null};b.fn["outer"+e]=function(by){var bx=this[0];return bx?bx.style?parseFloat(b.css(bx,bw,by?"margin":"border")):this[bw]():null};b.fn[bw]=function(bz){var bA=this[0];if(!bA){return bz==null?null:this}if(b.isFunction(bz)){return this.each(function(bE){var bD=b(this);bD[bw](bz.call(this,bE,bD[bw]()))})}if(b.isWindow(bA)){var bB=bA.document.documentElement["client"+e],bx=bA.document.body;return bA.document.compatMode==="CSS1Compat"&&bB||bx&&bx["client"+e]||bB}else{if(bA.nodeType===9){return Math.max(bA.documentElement["client"+e],bA.body["scroll"+e],bA.documentElement["scroll"+e],bA.body["offset"+e],bA.documentElement["offset"+e])}else{if(bz===L){var bC=b.css(bA,bw),by=parseFloat(bC);return b.isNumeric(by)?by:bC}else{return this.css(bw,typeof bz==="string"?bz:bz+"px")}}}}});bb.jQuery=bb.$=b;if(typeof define==="function"&&define.amd&&define.amd.jQuery){define("jquery",[],function(){return b})}})(window);/* + * jQuery UI 1.8.18 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI + */ +(function(a,d){a.ui=a.ui||{};if(a.ui.version){return}a.extend(a.ui,{version:"1.8.18",keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91}});a.fn.extend({propAttr:a.fn.prop||a.fn.attr,_focus:a.fn.focus,focus:function(e,f){return typeof e==="number"?this.each(function(){var g=this;setTimeout(function(){a(g).focus();if(f){f.call(g)}},e)}):this._focus.apply(this,arguments)},scrollParent:function(){var e;if((a.browser.msie&&(/(static|relative)/).test(this.css("position")))||(/absolute/).test(this.css("position"))){e=this.parents().filter(function(){return(/(relative|absolute|fixed)/).test(a.curCSS(this,"position",1))&&(/(auto|scroll)/).test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0)}else{e=this.parents().filter(function(){return(/(auto|scroll)/).test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0)}return(/fixed/).test(this.css("position"))||!e.length?a(document):e},zIndex:function(h){if(h!==d){return this.css("zIndex",h)}if(this.length){var f=a(this[0]),e,g;while(f.length&&f[0]!==document){e=f.css("position");if(e==="absolute"||e==="relative"||e==="fixed"){g=parseInt(f.css("zIndex"),10);if(!isNaN(g)&&g!==0){return g}}f=f.parent()}}return 0},disableSelection:function(){return this.bind((a.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(e){e.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}});a.each(["Width","Height"],function(g,e){var f=e==="Width"?["Left","Right"]:["Top","Bottom"],h=e.toLowerCase(),k={innerWidth:a.fn.innerWidth,innerHeight:a.fn.innerHeight,outerWidth:a.fn.outerWidth,outerHeight:a.fn.outerHeight};function j(m,l,i,n){a.each(f,function(){l-=parseFloat(a.curCSS(m,"padding"+this,true))||0;if(i){l-=parseFloat(a.curCSS(m,"border"+this+"Width",true))||0}if(n){l-=parseFloat(a.curCSS(m,"margin"+this,true))||0}});return l}a.fn["inner"+e]=function(i){if(i===d){return k["inner"+e].call(this)}return this.each(function(){a(this).css(h,j(this,i)+"px")})};a.fn["outer"+e]=function(i,l){if(typeof i!=="number"){return k["outer"+e].call(this,i)}return this.each(function(){a(this).css(h,j(this,i,true,l)+"px")})}});function c(g,e){var j=g.nodeName.toLowerCase();if("area"===j){var i=g.parentNode,h=i.name,f;if(!g.href||!h||i.nodeName.toLowerCase()!=="map"){return false}f=a("img[usemap=#"+h+"]")[0];return !!f&&b(f)}return(/input|select|textarea|button|object/.test(j)?!g.disabled:"a"==j?g.href||e:e)&&b(g)}function b(e){return !a(e).parents().andSelf().filter(function(){return a.curCSS(this,"visibility")==="hidden"||a.expr.filters.hidden(this)}).length}a.extend(a.expr[":"],{data:function(g,f,e){return !!a.data(g,e[3])},focusable:function(e){return c(e,!isNaN(a.attr(e,"tabindex")))},tabbable:function(g){var e=a.attr(g,"tabindex"),f=isNaN(e);return(f||e>=0)&&c(g,!f)}});a(function(){var e=document.body,f=e.appendChild(f=document.createElement("div"));f.offsetHeight;a.extend(f.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0});a.support.minHeight=f.offsetHeight===100;a.support.selectstart="onselectstart" in f;e.removeChild(f).style.display="none"});a.extend(a.ui,{plugin:{add:function(f,g,j){var h=a.ui[f].prototype;for(var e in j){h.plugins[e]=h.plugins[e]||[];h.plugins[e].push([g,j[e]])}},call:function(e,g,f){var j=e.plugins[g];if(!j||!e.element[0].parentNode){return}for(var h=0;h0){return true}h[e]=1;g=(h[e]>0);h[e]=0;return g},isOverAxis:function(f,e,g){return(f>e)&&(f<(e+g))},isOver:function(j,f,i,h,e,g){return a.ui.isOverAxis(j,i,e)&&a.ui.isOverAxis(f,h,g)}})})(jQuery);/* + * jQuery UI Widget 1.8.18 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Widget + */ +(function(b,d){if(b.cleanData){var c=b.cleanData;b.cleanData=function(f){for(var g=0,h;(h=f[g])!=null;g++){try{b(h).triggerHandler("remove")}catch(j){}}c(f)}}else{var a=b.fn.remove;b.fn.remove=function(e,f){return this.each(function(){if(!f){if(!e||b.filter(e,[this]).length){b("*",this).add([this]).each(function(){try{b(this).triggerHandler("remove")}catch(g){}})}}return a.call(b(this),e,f)})}}b.widget=function(f,h,e){var g=f.split(".")[0],j;f=f.split(".")[1];j=g+"-"+f;if(!e){e=h;h=b.Widget}b.expr[":"][j]=function(k){return !!b.data(k,f)};b[g]=b[g]||{};b[g][f]=function(k,l){if(arguments.length){this._createWidget(k,l)}};var i=new h();i.options=b.extend(true,{},i.options);b[g][f].prototype=b.extend(true,i,{namespace:g,widgetName:f,widgetEventPrefix:b[g][f].prototype.widgetEventPrefix||f,widgetBaseClass:j},e);b.widget.bridge(f,b[g][f])};b.widget.bridge=function(f,e){b.fn[f]=function(i){var g=typeof i==="string",h=Array.prototype.slice.call(arguments,1),j=this;i=!g&&h.length?b.extend.apply(null,[true,i].concat(h)):i;if(g&&i.charAt(0)==="_"){return j}if(g){this.each(function(){var k=b.data(this,f),l=k&&b.isFunction(k[i])?k[i].apply(k,h):k;if(l!==k&&l!==d){j=l;return false}})}else{this.each(function(){var k=b.data(this,f);if(k){k.option(i||{})._init()}else{b.data(this,f,new e(i,this))}})}return j}};b.Widget=function(e,f){if(arguments.length){this._createWidget(e,f)}};b.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",options:{disabled:false},_createWidget:function(f,g){b.data(g,this.widgetName,this);this.element=b(g);this.options=b.extend(true,{},this.options,this._getCreateOptions(),f);var e=this;this.element.bind("remove."+this.widgetName,function(){e.destroy()});this._create();this._trigger("create");this._init()},_getCreateOptions:function(){return b.metadata&&b.metadata.get(this.element[0])[this.widgetName]},_create:function(){},_init:function(){},destroy:function(){this.element.unbind("."+this.widgetName).removeData(this.widgetName);this.widget().unbind("."+this.widgetName).removeAttr("aria-disabled").removeClass(this.widgetBaseClass+"-disabled ui-state-disabled")},widget:function(){return this.element},option:function(f,g){var e=f;if(arguments.length===0){return b.extend({},this.options)}if(typeof f==="string"){if(g===d){return this.options[f]}e={};e[f]=g}this._setOptions(e);return this},_setOptions:function(f){var e=this;b.each(f,function(g,h){e._setOption(g,h)});return this},_setOption:function(e,f){this.options[e]=f;if(e==="disabled"){this.widget()[f?"addClass":"removeClass"](this.widgetBaseClass+"-disabled ui-state-disabled").attr("aria-disabled",f)}return this},enable:function(){return this._setOption("disabled",false)},disable:function(){return this._setOption("disabled",true)},_trigger:function(e,f,g){var j,i,h=this.options[e];g=g||{};f=b.Event(f);f.type=(e===this.widgetEventPrefix?e:this.widgetEventPrefix+e).toLowerCase();f.target=this.element[0];i=f.originalEvent;if(i){for(j in i){if(!(j in f)){f[j]=i[j]}}}this.element.trigger(f,g);return !(b.isFunction(h)&&h.call(this.element[0],f,g)===false||f.isDefaultPrevented())}}})(jQuery);/* + * jQuery UI Mouse 1.8.18 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Mouse + * + * Depends: + * jquery.ui.widget.js + */ +(function(b,c){var a=false;b(document).mouseup(function(d){a=false});b.widget("ui.mouse",{options:{cancel:":input,option",distance:1,delay:0},_mouseInit:function(){var d=this;this.element.bind("mousedown."+this.widgetName,function(e){return d._mouseDown(e)}).bind("click."+this.widgetName,function(e){if(true===b.data(e.target,d.widgetName+".preventClickEvent")){b.removeData(e.target,d.widgetName+".preventClickEvent");e.stopImmediatePropagation();return false}});this.started=false},_mouseDestroy:function(){this.element.unbind("."+this.widgetName)},_mouseDown:function(f){if(a){return}(this._mouseStarted&&this._mouseUp(f));this._mouseDownEvent=f;var e=this,g=(f.which==1),d=(typeof this.options.cancel=="string"&&f.target.nodeName?b(f.target).closest(this.options.cancel).length:false);if(!g||d||!this._mouseCapture(f)){return true}this.mouseDelayMet=!this.options.delay;if(!this.mouseDelayMet){this._mouseDelayTimer=setTimeout(function(){e.mouseDelayMet=true},this.options.delay)}if(this._mouseDistanceMet(f)&&this._mouseDelayMet(f)){this._mouseStarted=(this._mouseStart(f)!==false);if(!this._mouseStarted){f.preventDefault();return true}}if(true===b.data(f.target,this.widgetName+".preventClickEvent")){b.removeData(f.target,this.widgetName+".preventClickEvent")}this._mouseMoveDelegate=function(h){return e._mouseMove(h)};this._mouseUpDelegate=function(h){return e._mouseUp(h)};b(document).bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate);f.preventDefault();a=true;return true},_mouseMove:function(d){if(b.browser.msie&&!(document.documentMode>=9)&&!d.button){return this._mouseUp(d)}if(this._mouseStarted){this._mouseDrag(d);return d.preventDefault()}if(this._mouseDistanceMet(d)&&this._mouseDelayMet(d)){this._mouseStarted=(this._mouseStart(this._mouseDownEvent,d)!==false);(this._mouseStarted?this._mouseDrag(d):this._mouseUp(d))}return !this._mouseStarted},_mouseUp:function(d){b(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate);if(this._mouseStarted){this._mouseStarted=false;if(d.target==this._mouseDownEvent.target){b.data(d.target,this.widgetName+".preventClickEvent",true)}this._mouseStop(d)}return false},_mouseDistanceMet:function(d){return(Math.max(Math.abs(this._mouseDownEvent.pageX-d.pageX),Math.abs(this._mouseDownEvent.pageY-d.pageY))>=this.options.distance)},_mouseDelayMet:function(d){return this.mouseDelayMet},_mouseStart:function(d){},_mouseDrag:function(d){},_mouseStop:function(d){},_mouseCapture:function(d){return true}})})(jQuery);(function(c,d){c.widget("ui.resizable",c.ui.mouse,{widgetEventPrefix:"resize",options:{alsoResize:false,animate:false,animateDuration:"slow",animateEasing:"swing",aspectRatio:false,autoHide:false,containment:false,ghost:false,grid:false,handles:"e,s,se",helper:false,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:1000},_create:function(){var f=this,k=this.options;this.element.addClass("ui-resizable");c.extend(this,{_aspectRatio:!!(k.aspectRatio),aspectRatio:k.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:k.helper||k.ghost||k.animate?k.helper||"ui-resizable-helper":null});if(this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)){this.element.wrap(c('
    ').css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")}));this.element=this.element.parent().data("resizable",this.element.data("resizable"));this.elementIsWrapper=true;this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")});this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0});this.originalResizeStyle=this.originalElement.css("resize");this.originalElement.css("resize","none");this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"}));this.originalElement.css({margin:this.originalElement.css("margin")});this._proportionallyResize()}this.handles=k.handles||(!c(".ui-resizable-handle",this.element).length?"e,s,se":{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"});if(this.handles.constructor==String){if(this.handles=="all"){this.handles="n,e,s,w,se,sw,ne,nw"}var l=this.handles.split(",");this.handles={};for(var g=0;g
    ');if(/sw|se|ne|nw/.test(j)){h.css({zIndex:++k.zIndex})}if("se"==j){h.addClass("ui-icon ui-icon-gripsmall-diagonal-se")}this.handles[j]=".ui-resizable-"+j;this.element.append(h)}}this._renderAxis=function(q){q=q||this.element;for(var n in this.handles){if(this.handles[n].constructor==String){this.handles[n]=c(this.handles[n],this.element).show()}if(this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)){var o=c(this.handles[n],this.element),p=0;p=/sw|ne|nw|se|n|s/.test(n)?o.outerHeight():o.outerWidth();var m=["padding",/ne|nw|n/.test(n)?"Top":/se|sw|s/.test(n)?"Bottom":/^e$/.test(n)?"Right":"Left"].join("");q.css(m,p);this._proportionallyResize()}if(!c(this.handles[n]).length){continue}}};this._renderAxis(this.element);this._handles=c(".ui-resizable-handle",this.element).disableSelection();this._handles.mouseover(function(){if(!f.resizing){if(this.className){var i=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)}f.axis=i&&i[1]?i[1]:"se"}});if(k.autoHide){this._handles.hide();c(this.element).addClass("ui-resizable-autohide").hover(function(){if(k.disabled){return}c(this).removeClass("ui-resizable-autohide");f._handles.show()},function(){if(k.disabled){return}if(!f.resizing){c(this).addClass("ui-resizable-autohide");f._handles.hide()}})}this._mouseInit()},destroy:function(){this._mouseDestroy();var e=function(g){c(g).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};if(this.elementIsWrapper){e(this.element);var f=this.element;f.after(this.originalElement.css({position:f.css("position"),width:f.outerWidth(),height:f.outerHeight(),top:f.css("top"),left:f.css("left")})).remove()}this.originalElement.css("resize",this.originalResizeStyle);e(this.originalElement);return this},_mouseCapture:function(f){var g=false;for(var e in this.handles){if(c(this.handles[e])[0]==f.target){g=true}}return !this.options.disabled&&g},_mouseStart:function(g){var j=this.options,f=this.element.position(),e=this.element;this.resizing=true;this.documentScroll={top:c(document).scrollTop(),left:c(document).scrollLeft()};if(e.is(".ui-draggable")||(/absolute/).test(e.css("position"))){e.css({position:"absolute",top:f.top,left:f.left})}this._renderProxy();var k=b(this.helper.css("left")),h=b(this.helper.css("top"));if(j.containment){k+=c(j.containment).scrollLeft()||0;h+=c(j.containment).scrollTop()||0}this.offset=this.helper.offset();this.position={left:k,top:h};this.size=this._helper?{width:e.outerWidth(),height:e.outerHeight()}:{width:e.width(),height:e.height()};this.originalSize=this._helper?{width:e.outerWidth(),height:e.outerHeight()}:{width:e.width(),height:e.height()};this.originalPosition={left:k,top:h};this.sizeDiff={width:e.outerWidth()-e.width(),height:e.outerHeight()-e.height()};this.originalMousePosition={left:g.pageX,top:g.pageY};this.aspectRatio=(typeof j.aspectRatio=="number")?j.aspectRatio:((this.originalSize.width/this.originalSize.height)||1);var i=c(".ui-resizable-"+this.axis).css("cursor");c("body").css("cursor",i=="auto"?this.axis+"-resize":i);e.addClass("ui-resizable-resizing");this._propagate("start",g);return true},_mouseDrag:function(e){var h=this.helper,g=this.options,m={},q=this,j=this.originalMousePosition,n=this.axis;var r=(e.pageX-j.left)||0,p=(e.pageY-j.top)||0;var i=this._change[n];if(!i){return false}var l=i.apply(this,[e,r,p]),k=c.browser.msie&&c.browser.version<7,f=this.sizeDiff;this._updateVirtualBoundaries(e.shiftKey);if(this._aspectRatio||e.shiftKey){l=this._updateRatio(l,e)}l=this._respectSize(l,e);this._propagate("resize",e);h.css({top:this.position.top+"px",left:this.position.left+"px",width:this.size.width+"px",height:this.size.height+"px"});if(!this._helper&&this._proportionallyResizeElements.length){this._proportionallyResize()}this._updateCache(l);this._trigger("resize",e,this.ui());return false},_mouseStop:function(h){this.resizing=false;var i=this.options,m=this;if(this._helper){var g=this._proportionallyResizeElements,e=g.length&&(/textarea/i).test(g[0].nodeName),f=e&&c.ui.hasScroll(g[0],"left")?0:m.sizeDiff.height,k=e?0:m.sizeDiff.width;var n={width:(m.helper.width()-k),height:(m.helper.height()-f)},j=(parseInt(m.element.css("left"),10)+(m.position.left-m.originalPosition.left))||null,l=(parseInt(m.element.css("top"),10)+(m.position.top-m.originalPosition.top))||null;if(!i.animate){this.element.css(c.extend(n,{top:l,left:j}))}m.helper.height(m.size.height);m.helper.width(m.size.width);if(this._helper&&!i.animate){this._proportionallyResize()}}c("body").css("cursor","auto");this.element.removeClass("ui-resizable-resizing");this._propagate("stop",h);if(this._helper){this.helper.remove()}return false},_updateVirtualBoundaries:function(g){var j=this.options,i,h,f,k,e;e={minWidth:a(j.minWidth)?j.minWidth:0,maxWidth:a(j.maxWidth)?j.maxWidth:Infinity,minHeight:a(j.minHeight)?j.minHeight:0,maxHeight:a(j.maxHeight)?j.maxHeight:Infinity};if(this._aspectRatio||g){i=e.minHeight*this.aspectRatio;f=e.minWidth/this.aspectRatio;h=e.maxHeight*this.aspectRatio;k=e.maxWidth/this.aspectRatio;if(i>e.minWidth){e.minWidth=i}if(f>e.minHeight){e.minHeight=f}if(hl.width),s=a(l.height)&&i.minHeight&&(i.minHeight>l.height);if(h){l.width=i.minWidth}if(s){l.height=i.minHeight}if(t){l.width=i.maxWidth}if(m){l.height=i.maxHeight}var f=this.originalPosition.left+this.originalSize.width,p=this.position.top+this.size.height;var k=/sw|nw|w/.test(q),e=/nw|ne|n/.test(q);if(h&&k){l.left=f-i.minWidth}if(t&&k){l.left=f-i.maxWidth}if(s&&e){l.top=p-i.minHeight}if(m&&e){l.top=p-i.maxHeight}var n=!l.width&&!l.height;if(n&&!l.left&&l.top){l.top=null}else{if(n&&!l.top&&l.left){l.left=null}}return l},_proportionallyResize:function(){var k=this.options;if(!this._proportionallyResizeElements.length){return}var g=this.helper||this.element;for(var f=0;f');var e=c.browser.msie&&c.browser.version<7,g=(e?1:0),h=(e?2:-1);this.helper.addClass(this._helper).css({width:this.element.outerWidth()+h,height:this.element.outerHeight()+h,position:"absolute",left:this.elementOffset.left-g+"px",top:this.elementOffset.top-g+"px",zIndex:++i.zIndex});this.helper.appendTo("body").disableSelection()}else{this.helper=this.element}},_change:{e:function(g,f,e){return{width:this.originalSize.width+f}},w:function(h,f,e){var j=this.options,g=this.originalSize,i=this.originalPosition;return{left:i.left+f,width:g.width-f}},n:function(h,f,e){var j=this.options,g=this.originalSize,i=this.originalPosition;return{top:i.top+e,height:g.height-e}},s:function(g,f,e){return{height:this.originalSize.height+e}},se:function(g,f,e){return c.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[g,f,e]))},sw:function(g,f,e){return c.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[g,f,e]))},ne:function(g,f,e){return c.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[g,f,e]))},nw:function(g,f,e){return c.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[g,f,e]))}},_propagate:function(f,e){c.ui.plugin.call(this,f,[e,this.ui()]);(f!="resize"&&this._trigger(f,e,this.ui()))},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}});c.extend(c.ui.resizable,{version:"1.8.18"});c.ui.plugin.add("resizable","alsoResize",{start:function(f,g){var e=c(this).data("resizable"),i=e.options;var h=function(j){c(j).each(function(){var k=c(this);k.data("resizable-alsoresize",{width:parseInt(k.width(),10),height:parseInt(k.height(),10),left:parseInt(k.css("left"),10),top:parseInt(k.css("top"),10)})})};if(typeof(i.alsoResize)=="object"&&!i.alsoResize.parentNode){if(i.alsoResize.length){i.alsoResize=i.alsoResize[0];h(i.alsoResize)}else{c.each(i.alsoResize,function(j){h(j)})}}else{h(i.alsoResize)}},resize:function(g,i){var f=c(this).data("resizable"),j=f.options,h=f.originalSize,l=f.originalPosition;var k={height:(f.size.height-h.height)||0,width:(f.size.width-h.width)||0,top:(f.position.top-l.top)||0,left:(f.position.left-l.left)||0},e=function(m,n){c(m).each(function(){var q=c(this),r=c(this).data("resizable-alsoresize"),p={},o=n&&n.length?n:q.parents(i.originalElement[0]).length?["width","height"]:["width","height","top","left"];c.each(o,function(s,u){var t=(r[u]||0)+(k[u]||0);if(t&&t>=0){p[u]=t||null}});q.css(p)})};if(typeof(j.alsoResize)=="object"&&!j.alsoResize.nodeType){c.each(j.alsoResize,function(m,n){e(m,n)})}else{e(j.alsoResize)}},stop:function(e,f){c(this).removeData("resizable-alsoresize")}});c.ui.plugin.add("resizable","animate",{stop:function(i,n){var p=c(this).data("resizable"),j=p.options;var h=p._proportionallyResizeElements,e=h.length&&(/textarea/i).test(h[0].nodeName),f=e&&c.ui.hasScroll(h[0],"left")?0:p.sizeDiff.height,l=e?0:p.sizeDiff.width;var g={width:(p.size.width-l),height:(p.size.height-f)},k=(parseInt(p.element.css("left"),10)+(p.position.left-p.originalPosition.left))||null,m=(parseInt(p.element.css("top"),10)+(p.position.top-p.originalPosition.top))||null;p.element.animate(c.extend(g,m&&k?{top:m,left:k}:{}),{duration:j.animateDuration,easing:j.animateEasing,step:function(){var o={width:parseInt(p.element.css("width"),10),height:parseInt(p.element.css("height"),10),top:parseInt(p.element.css("top"),10),left:parseInt(p.element.css("left"),10)};if(h&&h.length){c(h[0]).css({width:o.width,height:o.height})}p._updateCache(o);p._propagate("resize",i)}})}});c.ui.plugin.add("resizable","containment",{start:function(f,r){var t=c(this).data("resizable"),j=t.options,l=t.element;var g=j.containment,k=(g instanceof c)?g.get(0):(/parent/.test(g))?l.parent().get(0):g;if(!k){return}t.containerElement=c(k);if(/document/.test(g)||g==document){t.containerOffset={left:0,top:0};t.containerPosition={left:0,top:0};t.parentData={element:c(document),left:0,top:0,width:c(document).width(),height:c(document).height()||document.body.parentNode.scrollHeight}}else{var n=c(k),i=[];c(["Top","Right","Left","Bottom"]).each(function(p,o){i[p]=b(n.css("padding"+o))});t.containerOffset=n.offset();t.containerPosition=n.position();t.containerSize={height:(n.innerHeight()-i[3]),width:(n.innerWidth()-i[1])};var q=t.containerOffset,e=t.containerSize.height,m=t.containerSize.width,h=(c.ui.hasScroll(k,"left")?k.scrollWidth:m),s=(c.ui.hasScroll(k)?k.scrollHeight:e);t.parentData={element:k,left:q.left,top:q.top,width:h,height:s}}},resize:function(g,q){var t=c(this).data("resizable"),i=t.options,f=t.containerSize,p=t.containerOffset,m=t.size,n=t.position,r=t._aspectRatio||g.shiftKey,e={top:0,left:0},h=t.containerElement;if(h[0]!=document&&(/static/).test(h.css("position"))){e=p}if(n.left<(t._helper?p.left:0)){t.size.width=t.size.width+(t._helper?(t.position.left-p.left):(t.position.left-e.left));if(r){t.size.height=t.size.width/i.aspectRatio}t.position.left=i.helper?p.left:0}if(n.top<(t._helper?p.top:0)){t.size.height=t.size.height+(t._helper?(t.position.top-p.top):t.position.top);if(r){t.size.width=t.size.height*i.aspectRatio}t.position.top=t._helper?p.top:0}t.offset.left=t.parentData.left+t.position.left;t.offset.top=t.parentData.top+t.position.top;var l=Math.abs((t._helper?t.offset.left-e.left:(t.offset.left-e.left))+t.sizeDiff.width),s=Math.abs((t._helper?t.offset.top-e.top:(t.offset.top-p.top))+t.sizeDiff.height);var k=t.containerElement.get(0)==t.element.parent().get(0),j=/relative|absolute/.test(t.containerElement.css("position"));if(k&&j){l-=t.parentData.left}if(l+t.size.width>=t.parentData.width){t.size.width=t.parentData.width-l;if(r){t.size.height=t.size.width/t.aspectRatio}}if(s+t.size.height>=t.parentData.height){t.size.height=t.parentData.height-s;if(r){t.size.width=t.size.height*t.aspectRatio}}},stop:function(f,n){var q=c(this).data("resizable"),g=q.options,l=q.position,m=q.containerOffset,e=q.containerPosition,i=q.containerElement;var j=c(q.helper),r=j.offset(),p=j.outerWidth()-q.sizeDiff.width,k=j.outerHeight()-q.sizeDiff.height;if(q._helper&&!g.animate&&(/relative/).test(i.css("position"))){c(this).css({left:r.left-e.left-m.left,width:p,height:k})}if(q._helper&&!g.animate&&(/static/).test(i.css("position"))){c(this).css({left:r.left-e.left-m.left,width:p,height:k})}}});c.ui.plugin.add("resizable","ghost",{start:function(g,h){var e=c(this).data("resizable"),i=e.options,f=e.size;e.ghost=e.originalElement.clone();e.ghost.css({opacity:0.25,display:"block",position:"relative",height:f.height,width:f.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass(typeof i.ghost=="string"?i.ghost:"");e.ghost.appendTo(e.helper)},resize:function(f,g){var e=c(this).data("resizable"),h=e.options;if(e.ghost){e.ghost.css({position:"relative",height:e.size.height,width:e.size.width})}},stop:function(f,g){var e=c(this).data("resizable"),h=e.options;if(e.ghost&&e.helper){e.helper.get(0).removeChild(e.ghost.get(0))}}});c.ui.plugin.add("resizable","grid",{resize:function(e,m){var p=c(this).data("resizable"),h=p.options,k=p.size,i=p.originalSize,j=p.originalPosition,n=p.axis,l=h._aspectRatio||e.shiftKey;h.grid=typeof h.grid=="number"?[h.grid,h.grid]:h.grid;var g=Math.round((k.width-i.width)/(h.grid[0]||1))*(h.grid[0]||1),f=Math.round((k.height-i.height)/(h.grid[1]||1))*(h.grid[1]||1);if(/^(se|s|e)$/.test(n)){p.size.width=i.width+g;p.size.height=i.height+f}else{if(/^(ne)$/.test(n)){p.size.width=i.width+g;p.size.height=i.height+f;p.position.top=j.top-f}else{if(/^(sw)$/.test(n)){p.size.width=i.width+g;p.size.height=i.height+f;p.position.left=j.left-g}else{p.size.width=i.width+g;p.size.height=i.height+f;p.position.top=j.top-f;p.position.left=j.left-g}}}}});var b=function(e){return parseInt(e,10)||0};var a=function(e){return !isNaN(parseInt(e,10))}})(jQuery);/* + * jQuery hashchange event - v1.3 - 7/21/2010 + * http://benalman.com/projects/jquery-hashchange-plugin/ + * + * Copyright (c) 2010 "Cowboy" Ben Alman + * Dual licensed under the MIT and GPL licenses. + * http://benalman.com/about/license/ + */ +(function($,e,b){var c="hashchange",h=document,f,g=$.event.special,i=h.documentMode,d="on"+c in e&&(i===b||i>7);function a(j){j=j||location.href;return"#"+j.replace(/^[^#]*#?(.*)$/,"$1")}$.fn[c]=function(j){return j?this.bind(c,j):this.trigger(c)};$.fn[c].delay=50;g[c]=$.extend(g[c],{setup:function(){if(d){return false}$(f.start)},teardown:function(){if(d){return false}$(f.stop)}});f=(function(){var j={},p,m=a(),k=function(q){return q},l=k,o=k;j.start=function(){p||n()};j.stop=function(){p&&clearTimeout(p);p=b};function n(){var r=a(),q=o(m);if(r!==m){l(m=r,q);$(e).trigger(c)}else{if(q!==m){location.href=location.href.replace(/#.*/,"")+q}}p=setTimeout(n,$.fn[c].delay)}$.browser.msie&&!d&&(function(){var q,r;j.start=function(){if(!q){r=$.fn[c].src;r=r&&r+a();q=$(' - -
    low_level_renderer_2d.hpp
    -Go to the documentation of this file.
    1 #define NO_SDL_GLEXT
    -
    2 #include <SDL2/SDL.h>
    -
    3 #include <GL/glew.h>
    -
    4 #include <SDL2/SDL_opengl.h>
    -
    5 #include <SOIL/SOIL.h>
    -
    6 #include "../math/vec2f.hpp"
    -
    7 #include <string>
    -
    8 #include "color.hpp"
    -
    9 
    -
    10 #ifndef LOW_LEVEL_RENDERER_2D
    -
    11 #define LOW_LEVEL_RENDERER_2D
    -
    12 
    - -
    14 {
    +
    1 #ifndef LOW_LEVEL_RENDERER_2D
    +
    2 #define LOW_LEVEL_RENDERER_2D
    +
    3 
    +
    4 #define NO_SDL_GLEXT
    +
    5 #include <SDL2/SDL.h>
    +
    6 #include <GL/glew.h>
    +
    7 #include <SDL2/SDL_opengl.h>
    +
    8 #include <SOIL/SOIL.h>
    +
    9 #include "../math/vec2f.hpp"
    +
    10 #include <string>
    +
    11 #include <array>
    +
    12 #include "color.hpp"
    +
    13 
    +
    14 class AARect;
    15 
    -
    16 public:
    -
    17 
    -
    18  class Camera
    -
    19  {
    + +
    17 {
    +
    18 
    +
    19 public:
    20 
    -
    21  friend class LowLevelRenderer2D;
    - -
    23  float width, height;
    -
    24 
    -
    25  Camera();
    -
    26 
    -
    27  public:
    -
    28 
    -
    29  Vec2f getPosition()const;
    -
    30  void setPosition(const Vec2f& pos);
    +
    21  class Camera
    +
    22  {
    +
    23 
    +
    24  friend class LowLevelRenderer2D;
    +
    25  Vec2f pos;
    +
    26  float width, height;
    +
    27 
    +
    28  Camera();
    +
    29 
    +
    30  public:
    31 
    -
    32  float getWidth()const;
    -
    33  float getHeight()const;
    +
    32  Vec2f getPosition()const;
    +
    33  void setPosition(const Vec2f& pos);
    34 
    -
    35  void setWidth(float width);
    -
    36  void setHeight(float height);
    +
    35  float getWidth()const;
    +
    36  float getHeight()const;
    37 
    -
    38  };
    -
    39 
    -
    40  // Wraper for a low level OpenGL texture
    -
    41  class Texture
    -
    42  {
    -
    43 
    -
    44  friend class LowLevelRenderer2D;
    -
    45 
    -
    46  GLuint textureID;
    -
    47  int width, height;
    +
    38  void setWidth(float width);
    +
    39  void setHeight(float height);
    +
    40 
    +
    41  };
    +
    42 
    +
    43  // Wraper for a low level OpenGL texture
    +
    44  class Texture
    +
    45  {
    +
    46 
    +
    47  friend class LowLevelRenderer2D;
    48 
    -
    49  Texture(unsigned char* image, int width, int height);
    -
    50 
    -
    51  public:
    -
    52 
    -
    53  Texture(){}
    -
    54  Texture operator=(const Texture& texture);
    -
    55  ~Texture();
    -
    56 
    -
    57  float getWidth()const;
    -
    58  float getHeight()const;
    -
    59 
    -
    60  void setWidth(float width);
    -
    61  void setHeight(float height);
    -
    62 
    -
    63  };
    +
    49  GLuint textureID;
    +
    50  int width, height;
    +
    51 
    +
    52  Texture(const unsigned char* image, int width, int height);
    +
    53 
    +
    54  public:
    +
    55 
    +
    56  enum FilterMode
    +
    57  {
    +
    58  LINEAR,
    +
    59  NEAREST,
    +
    60 
    +
    61  NUM_FILTER_MODES
    +
    62  };
    +
    63  static const std::array<GLuint, NUM_FILTER_MODES> filterModesGL;
    64 
    -
    65 private:
    -
    66 
    - +
    65  Texture(){}
    +
    66  Texture operator=(const Texture& texture);
    +
    67  ~Texture();
    68 
    - - - -
    72  SDL_Window* window;
    -
    73 
    - - - - - - -
    80  GLint color;
    +
    69  float getWidth()const;
    +
    70  float getHeight()const;
    +
    71 
    +
    72  void setWidth(float width);
    +
    73  void setHeight(float height);
    +
    74 
    +
    75  void setFilterMode(FilterMode filterMode);
    +
    76 
    +
    77  };
    +
    78 
    +
    79  class SpriteVbo
    +
    80  {
    81 
    -
    82  GLuint texVAO;
    -
    83  GLuint colVAO;
    -
    84 
    +
    82  friend class LowLevelRenderer2D;
    +
    83 
    +
    84  GLuint VBO;
    85 
    -
    86 public:
    +
    86  static GLfloat verts[];
    87 
    - +
    88  public:
    89 
    - -
    91  (
    -
    92  std::string windowTitle,
    -
    93  unsigned int width, unsigned int height,
    -
    94  bool fullScreen
    -
    95  );
    -
    96 
    -
    97  Camera* getCamera();
    -
    98 
    -
    99  Texture createTexture(unsigned char* image, int width, int height);
    -
    100  void destroyTexture(Texture* texture);
    +
    90  SpriteVbo(){}
    +
    91  SpriteVbo(const AARect& rect);
    +
    92  SpriteVbo(const SpriteVbo& spriteVbo);
    +
    93 
    +
    94  const SpriteVbo& operator=(const SpriteVbo&);
    +
    95 
    +
    96  private:
    +
    97 
    +
    98  void setRectVerts(const AARect& rect);
    +
    99 
    +
    100  };
    101 
    -
    102  void clear();
    -
    103  void draw(const Vec2f& pos, const Vec2f& scale, Texture* texture);
    -
    104  void drawColorSquare(const Vec2f& pos, const Vec2f& scale, const Color& color);
    -
    105  void swap();
    -
    106 
    -
    107 };
    -
    108 
    -
    109 #endif
    -
    void setWidth(float width)
    Definition: low_level_renderer_2d.cpp:42
    -
    Definition: vec2f.hpp:9
    -
    float getWidth() const
    Definition: low_level_renderer_2d.cpp:100
    -
    GLuint colVAO
    Definition: low_level_renderer_2d.hpp:83
    -
    void setHeight(float height)
    Definition: low_level_renderer_2d.cpp:115
    -
    Camera()
    Definition: low_level_renderer_2d.cpp:15
    -
    int width
    Definition: low_level_renderer_2d.hpp:47
    -
    float width
    Definition: low_level_renderer_2d.hpp:23
    -
    Vec2f pos
    Definition: low_level_renderer_2d.hpp:22
    -
    GLint colModelMatrix
    Definition: low_level_renderer_2d.hpp:77
    -
    ~Texture()
    Definition: low_level_renderer_2d.cpp:95
    -
    SDL_Window * window
    Definition: low_level_renderer_2d.hpp:72
    -
    Texture createTexture(unsigned char *image, int width, int height)
    Definition: low_level_renderer_2d.cpp:435
    +
    102 private:
    +
    103 
    +
    104  static LowLevelRenderer2D uniqueInstance;
    +
    105 
    +
    106  static const GLuint posAttrib, texAttrib;
    +
    107 
    +
    108  Camera camera;
    +
    109  GLuint textureShaderProgram;
    +
    110  GLuint colorShaderProgram;
    +
    111  SDL_Window* window;
    +
    112 
    +
    113  GLint texModelMatrix;
    +
    114  GLint texViewMatrix;
    +
    115  GLint texProjMatrix;
    +
    116  GLint colModelMatrix;
    +
    117  GLint colViewMatrix;
    +
    118  GLint colProjMatrix;
    +
    119  GLint color;
    +
    120 
    +
    121  GLuint colVBO;
    +
    122  GLuint EBO; //< the default EBO
    +
    123 
    +
    124 public:
    +
    125 
    + +
    127 
    + +
    129  (
    +
    130  std::string windowTitle,
    +
    131  unsigned int width, unsigned int height,
    +
    132  bool fullScreen
    +
    133  );
    +
    134 
    +
    135  void setFullScreen(bool b);
    +
    136 
    +
    137  Camera* getCamera();
    +
    138 
    +
    139  Texture createTexture(const unsigned char* image, int width, int height);
    +
    140  void destroyTexture(Texture* texture);
    +
    141 
    +
    142  void clear();
    +
    143  void draw
    +
    144  (
    +
    145  const Vec2f& pos,
    +
    146  const Vec2f& scale,
    +
    147  const Texture& texture,
    +
    148  const SpriteVbo& sVao
    +
    149  );
    +
    150  void drawColorSquare(const Vec2f& pos, const Vec2f& scale, const Color& color);
    +
    151  void swap();
    +
    152 
    +
    153  void end();
    +
    154 
    +
    155 };
    +
    156 
    +
    157 typedef LowLevelRenderer2D::Texture::FilterMode LLRFilterMode;
    + +
    159 
    +
    160 #endif
    +
    Definition: vec2f.hpp:10
    represents a color of 4 float components(r, g, b, a)
    Definition: color.hpp:7
    -
    Definition: low_level_renderer_2d.hpp:41
    -
    Camera * getCamera()
    Definition: low_level_renderer_2d.cpp:429
    -
    float getHeight() const
    Definition: low_level_renderer_2d.cpp:37
    -
    High level abstraction camera You can set the position and dimensions of the camera.
    Definition: camera.hpp:13
    -
    void destroyTexture(Texture *texture)
    Definition: low_level_renderer_2d.cpp:447
    -
    void setHeight(float height)
    Definition: low_level_renderer_2d.cpp:47
    - -
    int height
    Definition: low_level_renderer_2d.hpp:47
    -
    GLint texViewMatrix
    Definition: low_level_renderer_2d.hpp:75
    -
    float getWidth() const
    Definition: low_level_renderer_2d.cpp:32
    -
    float getHeight() const
    Definition: low_level_renderer_2d.cpp:105
    -
    GLint colViewMatrix
    Definition: low_level_renderer_2d.hpp:78
    -
    void drawColorSquare(const Vec2f &pos, const Vec2f &scale, const Color &color)
    Definition: low_level_renderer_2d.cpp:510
    -
    Definition: low_level_renderer_2d.hpp:13
    -
    Definition: low_level_renderer_2d.hpp:18
    -
    LowLevelRenderer2D()
    Definition: low_level_renderer_2d.hpp:88
    -
    static LowLevelRenderer2D uniqueInstance
    Definition: low_level_renderer_2d.hpp:67
    -
    GLint texProjMatrix
    Definition: low_level_renderer_2d.hpp:76
    -
    GLint color
    Definition: low_level_renderer_2d.hpp:80
    -
    Texture()
    Definition: low_level_renderer_2d.hpp:53
    -
    void setPosition(const Vec2f &pos)
    Definition: low_level_renderer_2d.cpp:27
    -
    Texture operator=(const Texture &texture)
    Definition: low_level_renderer_2d.cpp:87
    -
    void setWidth(float width)
    Definition: low_level_renderer_2d.cpp:110
    -
    GLuint textureID
    Definition: low_level_renderer_2d.hpp:46
    -
    GLuint colorShaderProgram
    Definition: low_level_renderer_2d.hpp:71
    -
    void swap()
    Definition: low_level_renderer_2d.cpp:553
    -
    GLint colProjMatrix
    Definition: low_level_renderer_2d.hpp:79
    -
    void clear()
    Definition: low_level_renderer_2d.cpp:460
    -
    void draw(const Vec2f &pos, const Vec2f &scale, Texture *texture)
    Definition: low_level_renderer_2d.cpp:465
    -
    float height
    Definition: low_level_renderer_2d.hpp:23
    -
    GLuint textureShaderProgram
    Definition: low_level_renderer_2d.hpp:70
    -
    Camera camera
    Definition: low_level_renderer_2d.hpp:69
    -
    GLint texModelMatrix
    Definition: low_level_renderer_2d.hpp:74
    -
    Vec2f getPosition() const
    Definition: low_level_renderer_2d.cpp:22
    -
    GLuint texVAO
    Definition: low_level_renderer_2d.hpp:82
    +
    Definition: low_level_renderer_2d.hpp:44
    +
    Definition: low_level_renderer_2d.hpp:79
    +
    High level abstraction camera You can set the position and dimensions of the camera.
    Definition: camera.hpp:11
    +
    Definition: low_level_renderer_2d.hpp:16
    +
    Definition: low_level_renderer_2d.hpp:21
    +
    Definition: texture.hpp:10
    +
    Definition: aarect.hpp:5
    +
    - + diff --git a/doc/doxy/html/main__character_8hpp_source.html b/doc/doxy/html/main__character_8hpp_source.html index 3521c55..e169cf9 100644 --- a/doc/doxy/html/main__character_8hpp_source.html +++ b/doc/doxy/html/main__character_8hpp_source.html @@ -3,15 +3,24 @@ - -OWMAN: main_character.hpp Source File + +owman: main_character.hpp Source File + + + + + + @@ -21,18 +30,16 @@
    -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -63,16 +70,29 @@ +
    + +
    +
    +
    + +
    @@ -86,52 +106,50 @@
    main_character.hpp
    -Go to the documentation of this file.
    1 #include "entity.hpp"
    -
    2 #include "math/vec2i.hpp"
    +
    1 #include "entity.hpp"
    +
    2 #include "math/vec2i.hpp"
    3 
    4 #ifndef ENTITY_FACTORY
    -
    5 class EntityFactory;
    +
    5 class EntityFactory;
    6 #endif
    -
    7 
    +
    7 
    8 #ifndef MAIN_CHARACTER
    -
    9 #define MAIN_CHARACTER
    -
    10 
    +
    9 #define MAIN_CHARACTER
    +
    10 
    15 class MainCharacter : public Entity
    16 {
    17 
    -
    18  friend class EntityFactory;
    +
    18  friend class EntityFactory;
    19 
    20 private:
    21 
    - +
    22  Vec2i cell;
    23 
    -
    24  MainCharacter();
    +
    24  MainCharacter();
    25 
    26 public:
    27 
    -
    28  const Vec2i& getCell()const;
    -
    29  Vec2i& getCell();
    -
    30  void setCell( const Vec2i& cell );
    +
    28  const Vec2i& getCell()const;
    +
    29  Vec2i& getCell();
    +
    30  void setCell( const Vec2i& cell );
    31 
    32 };
    33 
    34 #endif
    -
    const Vec2i & getCell() const
    Definition: main_character.cpp:10
    Definition: entity_factory.hpp:12
    - -
    Vec2i cell
    Definition: main_character.hpp:22
    Components compounded entity.
    Definition: entity.hpp:19
    Definition: main_character.hpp:15
    - -
    MainCharacter()
    Definition: main_character.cpp:3
    -
    void setCell(const Vec2i &cell)
    Definition: main_character.cpp:24
    -
    Definition: vec2i.hpp:10
    +
    Definition: vec2i.hpp:11
    +
    - + diff --git a/doc/doxy/html/namespaces.html b/doc/doxy/html/namespaces.html index 62390b8..33f0c90 100644 --- a/doc/doxy/html/namespaces.html +++ b/doc/doxy/html/namespaces.html @@ -3,15 +3,24 @@ - -OWMAN: Namespace List + +owman: Namespace List + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -63,16 +70,29 @@ +
    + +
    +
    +
    + +
    @@ -86,18 +106,20 @@
    Namespace List
    -
    Here is a list of all namespaces with brief descriptions:
    +
    Here is a list of all documented namespaces with brief descriptions:
    +
    - + diff --git a/doc/doxy/html/namespaces.js b/doc/doxy/html/namespaces.js new file mode 100644 index 0000000..36dc6dd --- /dev/null +++ b/doc/doxy/html/namespaces.js @@ -0,0 +1,4 @@ +var namespaces = +[ + [ "xmlstr", "namespacexmlstr.html", null ] +]; \ No newline at end of file diff --git a/doc/doxy/html/namespacexmlstr.html b/doc/doxy/html/namespacexmlstr.html new file mode 100644 index 0000000..2d9a1fb --- /dev/null +++ b/doc/doxy/html/namespacexmlstr.html @@ -0,0 +1,183 @@ + + + + + + +owman: xmlstr Namespace Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    owman +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    xmlstr Namespace Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Variables

    +const char * entity = "entity"
     
    +const char * space = " "
     
    +const char * x = "x"
     
    +const char * y = "y"
     
    +const char * cell_x = "cell_x"
     
    +const char * cell_y = "cell_y"
     
    +const char * width = "width"
     
    +const char * height = "height"
     
    +const char * radius = "radius"
     
    +const char * position = "position"
     
    +const char * graphics = "graphics"
     
    +const char * physics = "physics"
     
    +const char * shape = "shape"
     
    +const char * box = "box"
     
    +const char * circle = "circle"
     
    +const char * priority = "priority"
     
    +const char * sprite = "sprite"
     
    +const char * mass = "mass"
     
    +

    Detailed Description

    +

    Here you will find shared strings for xml nodes

    +
    +
    + + + + diff --git a/doc/doxy/html/nav_f.png b/doc/doxy/html/nav_f.png index ec046c4..72a58a5 100644 Binary files a/doc/doxy/html/nav_f.png and b/doc/doxy/html/nav_f.png differ diff --git a/doc/doxy/html/nav_h.png b/doc/doxy/html/nav_h.png index 139be91..33389b1 100644 Binary files a/doc/doxy/html/nav_h.png and b/doc/doxy/html/nav_h.png differ diff --git a/doc/doxy/html/navtree.css b/doc/doxy/html/navtree.css index 41a9cb9..1a868b3 100644 --- a/doc/doxy/html/navtree.css +++ b/doc/doxy/html/navtree.css @@ -94,7 +94,7 @@ } .ui-resizable-e { - background:url("ftv2splitbar.png") repeat scroll right center transparent; + background:url("splitbar.png") repeat scroll right center transparent; cursor:e-resize; height:100%; right:0; diff --git a/doc/doxy/html/navtree.js b/doc/doxy/html/navtree.js index 33e3ebf..9df45a7 100644 --- a/doc/doxy/html/navtree.js +++ b/doc/doxy/html/navtree.js @@ -1,31 +1,3 @@ -var NAVTREE = -[ - [ "owman", "index.html", [ - [ "Classes", null, [ - [ "Class List", "annotated.html", "annotated" ], - [ "Class Index", "classes.html", null ], - [ "Class Hierarchy", "hierarchy.html", "hierarchy" ], - [ "Class Members", "functions.html", [ - [ "All", "functions.html", null ], - [ "Functions", "functions_func.html", null ] - ] ] - ] ], - [ "Files", null, [ - [ "File List", "files.html", "files" ] - ] ] - ] ] -]; - -var NAVTREEINDEX = -[ -"annotated.html", -"class_resource_texture.html#a21ed35a84be06c5e0cdf3f1141abc005" -]; - -var SYNCONMSG = 'click to disable panel synchronisation'; -var SYNCOFFMSG = 'click to enable panel synchronisation'; -var SYNCONMSG = 'click to disable panel synchronisation'; -var SYNCOFFMSG = 'click to enable panel synchronisation'; var navTreeSubIndices = new Array(); function getData(varName) @@ -48,6 +20,21 @@ function stripPath2(uri) return m ? uri.substring(i-6) : s; } +function hashValue() +{ + return $(location).attr('hash').substring(1).replace(/[^\w\-]/g,''); +} + +function hashUrl() +{ + return '#'+hashValue(); +} + +function pathName() +{ + return $(location).attr('pathname').replace(/[^-A-Za-z0-9+&@#/%?=~_|!:,.;\(\)]/g, ''); +} + function localStorageSupported() { try { @@ -70,7 +57,7 @@ function deleteLink() { if (localStorageSupported()) { window.localStorage.setItem('navpath',''); - } + } } function cachedLink() @@ -118,7 +105,7 @@ function createIndent(o,domNode,node,level) node.expandToggle.onclick = function() { if (node.expanded) { $(node.getChildrenUL()).slideUp("fast"); - node.plus_img.src = node.relpath+"ftv2pnode.png"; + node.plus_img.src = node.relpath+"arrowright.png"; node.expanded = false; } else { expandNode(o, node, false, false); @@ -126,7 +113,7 @@ function createIndent(o,domNode,node,level) } node.expandToggle.appendChild(imgNode); domNode.appendChild(node.expandToggle); - imgNode.src = node.relpath+"ftv2pnode.png"; + imgNode.src = node.relpath+"arrowright.png"; } else { var span = document.createElement("span"); span.style.display = 'inline-block'; @@ -142,11 +129,13 @@ var animationInProgress = false; function gotoAnchor(anchor,aname,updateLocation) { var pos, docContent = $('#doc-content'); - if (anchor.parent().attr('class')=='memItemLeft' || - anchor.parent().attr('class')=='fieldtype' || - anchor.parent().is(':header')) + var ancParent = $(anchor.parent()); + if (ancParent.hasClass('memItemLeft') || + ancParent.hasClass('fieldname') || + ancParent.hasClass('fieldtype') || + ancParent.is(':header')) { - pos = anchor.parent().position().top; + pos = ancParent.position().top; } else if (anchor.position()) { pos = anchor.position().top; } @@ -204,7 +193,7 @@ function newNode(o, po, text, link, childrenData, lastNode) a.className = stripPath(link.replace('#',':')); if (link.indexOf('#')!=-1) { var aname = '#'+link.split('#')[1]; - var srcPage = stripPath($(location).attr('pathname')); + var srcPage = stripPath(pathName()); var targetPage = stripPath(link.split('#')[0]); a.href = srcPage!=targetPage ? url : "javascript:void(0)"; a.onclick = function(){ @@ -280,9 +269,9 @@ function expandNode(o, node, imm, showRoot) $(node.getChildrenUL()).slideDown("fast"); } if (node.isLast) { - node.plus_img.src = node.relpath+"ftv2mlastnode.png"; + node.plus_img.src = node.relpath+"arrowdown.png"; } else { - node.plus_img.src = node.relpath+"ftv2mnode.png"; + node.plus_img.src = node.relpath+"arrowdown.png"; } node.expanded = true; } @@ -298,14 +287,13 @@ function glowEffect(n,duration) function highlightAnchor() { - var aname = $(location).attr('hash'); + var aname = hashUrl(); var anchor = $(aname); if (anchor.parent().attr('class')=='memItemLeft'){ - var rows = $('.memberdecls tr[class$="'+ - window.location.hash.substring(1)+'"]'); + var rows = $('.memberdecls tr[class$="'+hashValue()+'"]'); glowEffect(rows.children(),300); // member without details - } else if (anchor.parents().slice(2).prop('tagName')=='TR') { - glowEffect(anchor.parents('div.memitem'),1000); // enum value + } else if (anchor.parent().attr('class')=='fieldname'){ + glowEffect(anchor.parent().parent(),1000); // enum value } else if (anchor.parent().attr('class')=='fieldtype'){ glowEffect(anchor.parent().parent(),1000); // struct field } else if (anchor.parent().is(":header")) { @@ -320,7 +308,7 @@ function selectAndHighlight(hash,n) { var a; if (hash) { - var link=stripPath($(location).attr('pathname'))+':'+hash.substring(1); + var link=stripPath(pathName())+':'+hash.substring(1); a=$('.item a[class$="'+link+'"]'); } if (a && a.length) { @@ -353,11 +341,7 @@ function showNode(o, node, index, hash) getNode(o, node); } $(node.getChildrenUL()).css({'display':'block'}); - if (node.isLast) { - node.plus_img.src = node.relpath+"ftv2mlastnode.png"; - } else { - node.plus_img.src = node.relpath+"ftv2mnode.png"; - } + node.plus_img.src = node.relpath+"arrowdown.png"; node.expanded = true; var n = node.children[o.breadcrumbs[index]]; if (index+11) hash = '#'+parts[1]; + if (parts.length>1) hash = '#'+parts[1].replace(/[^\w\-]/g,''); else hash=''; } if (hash.match(/^#l\d+$/)) { var anchor=$('a[name='+hash.substring(1)+']'); glowEffect(anchor.parent(),1000); // line number hash=''; // strip line number anchors - //root=root.replace(/_source\./,'.'); // source link to doc link } var url=root+hash; var i=-1; @@ -472,7 +455,7 @@ function toggleSyncButton(relpath) if (navSync.hasClass('sync')) { navSync.removeClass('sync'); showSyncOff(navSync,relpath); - storeLink(stripPath2($(location).attr('pathname'))+$(location).attr('hash')); + storeLink(stripPath2(pathName())+hashUrl()); } else { navSync.addClass('sync'); showSyncOn(navSync,relpath); @@ -496,7 +479,7 @@ function initNavTree(toroot,relpath) o.node.expanded = false; o.node.isLast = true; o.node.plus_img = document.createElement("img"); - o.node.plus_img.src = relpath+"ftv2pnode.png"; + o.node.plus_img.src = relpath+"arrowright.png"; o.node.plus_img.width = 16; o.node.plus_img.height = 22; @@ -512,7 +495,7 @@ function initNavTree(toroot,relpath) } $(window).load(function(){ - navTo(o,toroot,window.location.hash,relpath); + navTo(o,toroot,hashUrl(),relpath); showRoot(); }); @@ -520,21 +503,20 @@ function initNavTree(toroot,relpath) if (window.location.hash && window.location.hash.length>1){ var a; if ($(location).attr('hash')){ - var clslink=stripPath($(location).attr('pathname'))+':'+ - $(location).attr('hash').substring(1); - a=$('.item a[class$="'+clslink+'"]'); + var clslink=stripPath(pathName())+':'+hashValue(); + a=$('.item a[class$="'+clslink.replace(/ - -OWMAN: physics/physics_box.hpp Source File + +owman: physics_box.hpp Source File + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -63,15 +70,29 @@ + +
    + +
    +
    +
    + +
    @@ -80,73 +101,57 @@
    - -
    physics_box.hpp
    -Go to the documentation of this file.
    1 #include "physics_component.hpp"
    -
    2 #include <Box2D/Box2D.h>
    -
    3 #include "../math/vec2f.hpp"
    -
    4 
    -
    5 #ifndef PHYSICS_BOX_FACTORY
    - -
    7 #endif
    -
    8 
    -
    9 #ifndef PHYSICS_BOX
    -
    10 #define PHYSICS_BOX
    -
    11 
    - -
    17 {
    -
    18 
    -
    19  friend class PhysicsBoxFactory;
    -
    20 
    -
    21  b2Body* body;
    -
    22 
    - -
    24 
    - -
    26 
    -
    27 public:
    -
    28 
    -
    29  Vec2f getPosition()const;
    -
    30  void setPosition(const Vec2f& v);
    -
    31 
    - -
    38 
    -
    39  virtual ~PhysicsBox(){}
    -
    40 
    -
    44  void destroyDispatcher();
    -
    45 
    -
    46 };
    -
    47 
    -
    48 #endif
    -
    Definition: vec2f.hpp:9
    -
    Vec2f scale
    Definition: physics_box.hpp:23
    -
    Definition: physics_box_factory.hpp:10
    -
    Vec2f getPosition() const
    Definition: physics_box.cpp:9
    -
    rapidxml::xml_node * createXmlNode(rapidxml::xml_document<> *doc)
    Creates a physics XML node Returns an XML node representing the class itself.
    Definition: physics_box.cpp:19
    -
    b2Body * body
    Definition: physics_box.hpp:21
    -
    void destroyDispatcher()
    this will call to the corresponding PhysicsSystem function \ in charge of deleting this PhysicsCompon...
    Definition: physics_box.cpp:57
    -
    virtual ~PhysicsBox()
    Definition: physics_box.hpp:39
    -
    void setPosition(const Vec2f &v)
    Definition: physics_box.cpp:14
    -
    PhysicsBox()
    Definition: physics_box.hpp:25
    -
    Definition: physics_box.hpp:16
    -
    Definition: physics_component.hpp:11
    - -
    Definition: rapidxml.hpp:139
    -
    Definition: rapidxml.hpp:137
    +
    1 #ifndef PHYSICS_BOX
    +
    2 #define PHYSICS_BOX
    +
    3 
    +
    4 #include "physics_component.hpp"
    +
    5 #include <Box2D/Box2D.h>
    +
    6 #include "../math/vec2f.hpp"
    +
    7 
    + +
    9 
    +
    10 
    + +
    16 {
    +
    17 
    +
    18  friend class PhysicsBoxFactory;
    +
    19 
    +
    20  Vec2f scale;
    +
    21 
    +
    22  PhysicsBox(){}
    +
    23 
    +
    24 public:
    +
    25 
    +
    31  rapidxml::xml_node<>* createXmlNode(rapidxml::xml_document<>* doc);
    +
    32 
    +
    33  virtual ~PhysicsBox(){}
    +
    34 
    +
    38  void destroyDispatcher();
    +
    39 
    +
    40 };
    +
    41 
    +
    42 #endif
    +
    Definition: vec2f.hpp:10
    +
    Definition: physics_box_factory.hpp:8
    +
    rapidxml::xml_node * createXmlNode(rapidxml::xml_document<> *doc)
    Creates a physics XML node Returns an XML node representing the class itself.
    Definition: physics_box.cpp:10
    +
    void destroyDispatcher()
    this will call to the corresponding PhysicsSystem function \ in charge of deleting this PhysicsCompon...
    Definition: physics_box.cpp:50
    +
    Definition: physics_box.hpp:15
    +
    Definition: physics_component.hpp:10
    +
    - + diff --git a/doc/doxy/html/physics__box__factory_8hpp_source.html b/doc/doxy/html/physics__box__factory_8hpp_source.html index 586e220..5c488d4 100644 --- a/doc/doxy/html/physics__box__factory_8hpp_source.html +++ b/doc/doxy/html/physics__box__factory_8hpp_source.html @@ -3,15 +3,24 @@ - -OWMAN: physics/physics_box_factory.hpp Source File + +owman: physics_box_factory.hpp Source File + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -63,15 +70,29 @@ + +
    + +
    +
    +
    + +
    @@ -80,64 +101,56 @@
    - -
    physics_box_factory.hpp
    -Go to the documentation of this file.
    1 #include "physics_box.hpp"
    -
    2 
    -
    3 #ifndef PHYSICS_SYSTEM
    -
    4 class PhysicsSystem;
    -
    5 #endif
    -
    6 
    -
    7 #ifndef PHYSICS_BOX_FACTORY
    -
    8 #define PHYSICS_BOX_FACTORY
    -
    9 
    - -
    11 {
    +
    1 #ifndef PHYSICS_BOX_FACTORY
    +
    2 #define PHYSICS_BOX_FACTORY
    +
    3 
    +
    4 #include "physics_box.hpp"
    +
    5 
    +
    6 class PhysicsSystem;
    +
    7 
    + +
    9 {
    +
    10 
    +
    11  friend class PhysicsSystem;
    12 
    -
    13  friend class PhysicsSystem;
    +
    13  PhysicsSystem* myPhysicsSystem;
    14 
    - +
    15  PhysicsBoxFactory( PhysicsSystem* physicsSystem );
    16 
    -
    17  PhysicsBoxFactory( PhysicsSystem* physicsSystem );
    +
    17 public:
    18 
    -
    19 public:
    -
    20 
    -
    21  PhysicsBox* createPhysicsBox( const Vec2f& position, const Vec2f& scale, float mass );
    -
    22  PhysicsBox* createPhysicsBoxKinematic( const Vec2f& position, const Vec2f& scale, float mass );
    -
    23 
    +
    19  PhysicsBox* createPhysicsBox( const Vec2f& position, const Vec2f& scale, float mass );
    +
    20  PhysicsBox* createPhysicsBoxKinematic( const Vec2f& position, const Vec2f& scale, float mass );
    +
    21 
    +
    22 
    +
    23  void destroyPhysicsBox( PhysicsBox* physicsBox );
    24 
    -
    25  void destroyPhysicsBox( PhysicsBox* physicsBox );
    +
    25  PhysicsSystem* getPhysicsSystem();
    26 
    - +
    27 };
    28 
    -
    29 };
    -
    30 
    -
    31 #endif
    -
    Definition: vec2f.hpp:9
    -
    Definition: physics_box_factory.hpp:10
    -
    Definition: physics_system.hpp:19
    -
    PhysicsBox * createPhysicsBox(const Vec2f &position, const Vec2f &scale, float mass)
    Definition: physics_box_factory.cpp:10
    -
    PhysicsBoxFactory(PhysicsSystem *physicsSystem)
    Definition: physics_box_factory.cpp:5
    -
    Definition: physics_box.hpp:16
    -
    PhysicsSystem * getPhysicsSystem()
    Definition: physics_box_factory.cpp:78
    -
    PhysicsBox * createPhysicsBoxKinematic(const Vec2f &position, const Vec2f &scale, float mass)
    Definition: physics_box_factory.cpp:39
    - -
    PhysicsSystem * myPhysicsSystem
    Definition: physics_box_factory.hpp:15
    -
    void destroyPhysicsBox(PhysicsBox *physicsBox)
    Definition: physics_box_factory.cpp:68
    +
    29 #endif
    +
    Definition: vec2f.hpp:10
    +
    Definition: physics_box_factory.hpp:8
    +
    Definition: physics_system.hpp:13
    +
    PhysicsBox * createPhysicsBoxKinematic(const Vec2f &position, const Vec2f &scale, float mass)
    Create a kinematic box Kinematic means that it is not affected by forces.
    Definition: physics_system.cpp:33
    +
    PhysicsBox * createPhysicsBox(const Vec2f &position, const Vec2f &scale, float mass)
    Create a dynamic box Dynamic means that it is affected by forces.
    Definition: physics_system.cpp:22
    +
    Definition: physics_box.hpp:15
    +
    - + diff --git a/doc/doxy/html/physics__circle_8hpp_source.html b/doc/doxy/html/physics__circle_8hpp_source.html new file mode 100644 index 0000000..25beee2 --- /dev/null +++ b/doc/doxy/html/physics__circle_8hpp_source.html @@ -0,0 +1,156 @@ + + + + + + +owman: physics_circle.hpp Source File + + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    owman +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    +
    physics_circle.hpp
    +
    +
    +
    1 #ifndef PHYSICS_CIRCLE
    +
    2 #define PHYSICS_CIRCLE
    +
    3 
    +
    4 #include "physics_component.hpp"
    +
    5 #include <Box2D/Box2D.h>
    +
    6 #include "../math/vec2f.hpp"
    +
    7 
    + +
    9 
    +
    10 
    + +
    16  {
    +
    17 
    +
    18  friend class PhysicsCircleFactory;
    +
    19 
    +
    20  float radius;
    +
    21 
    +
    22  PhysicsCircle(){}
    +
    23 
    +
    24 public:
    +
    25 
    +
    31  rapidxml::xml_node<>* createXmlNode(rapidxml::xml_document<>* doc);
    +
    32 
    +
    33  virtual ~PhysicsCircle(){}
    +
    34 
    +
    38  void destroyDispatcher();
    +
    39 
    +
    40  };
    +
    41 
    +
    42 #endif // PHYSICS_CIRCLE
    +
    rapidxml::xml_node * createXmlNode(rapidxml::xml_document<> *doc)
    Creates a physics XML node Returns an XML node representing the class itself.
    Definition: physics_circle.cpp:9
    +
    Definition: physics_circle.hpp:15
    +
    Definition: physics_circle_factory.hpp:6
    +
    void destroyDispatcher()
    this will call to the corresponding PhysicsSystem function \ in charge of deleting this PhysicsCompon...
    Definition: physics_circle.cpp:38
    +
    Definition: physics_component.hpp:10
    +
    +
    + + + + diff --git a/doc/doxy/html/physics__circle__factory_8hpp_source.html b/doc/doxy/html/physics__circle__factory_8hpp_source.html new file mode 100644 index 0000000..89ef017 --- /dev/null +++ b/doc/doxy/html/physics__circle__factory_8hpp_source.html @@ -0,0 +1,154 @@ + + + + + + +owman: physics_circle_factory.hpp Source File + + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    owman +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    +
    physics_circle_factory.hpp
    +
    +
    +
    1 #ifndef PHYSICS_CIRCLE_FACTORY
    +
    2 #define PHYSICS_CIRCLE_FACTORY
    +
    3 
    +
    4 #include "physics_circle.hpp"
    +
    5 
    + +
    7 {
    +
    8 
    +
    9  friend class PhysicsSystem;
    +
    10 
    +
    11  PhysicsSystem* myPhysicsSystem;
    +
    12 
    +
    13  PhysicsCircleFactory( PhysicsSystem* physicsSystem );
    +
    14 
    +
    15 public:
    +
    16 
    +
    17  PhysicsCircle* createPhysicsCircle( const Vec2f& position, float radius, float mass );
    +
    18  PhysicsCircle* createPhysicsCircleKinematic( const Vec2f& position, float radius, float mass );
    +
    19 
    +
    20 
    +
    21  void destroyPhysicsCircle( PhysicsCircle* physicsCircle );
    +
    22 
    +
    23  PhysicsSystem* getPhysicsSystem();
    +
    24 
    +
    25 };
    +
    26 
    +
    27 #endif // PHYSICS_CIRCLE_FACTORY
    +
    Definition: vec2f.hpp:10
    +
    PhysicsCircle * createPhysicsCircle(const Vec2f &position, float radius, float mass)
    Create a dynamic circle Dynamic means that it is affected by forces.
    Definition: physics_system.cpp:44
    +
    Definition: physics_system.hpp:13
    +
    Definition: physics_circle.hpp:15
    +
    PhysicsCircle * createPhysicsCircleKinematic(const Vec2f &position, float radius, float mass)
    Create a kinematic circle Kinematic means that it is not affected by forces.
    Definition: physics_system.cpp:53
    +
    Definition: physics_circle_factory.hpp:6
    +
    +
    + + + + diff --git a/doc/doxy/html/physics__component_8hpp_source.html b/doc/doxy/html/physics__component_8hpp_source.html index e4c0be2..3283122 100644 --- a/doc/doxy/html/physics__component_8hpp_source.html +++ b/doc/doxy/html/physics__component_8hpp_source.html @@ -3,15 +3,24 @@ - -OWMAN: physics/physics_component.hpp Source File + +owman: physics_component.hpp Source File + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -63,15 +70,29 @@ + +
    + +
    +
    +
    + +
    @@ -80,63 +101,61 @@
    - -
    physics_component.hpp
    -Go to the documentation of this file.
    1 #include "../math/vec2f.hpp"
    -
    2 #include "../dependencies/rapidxml/rapidxml.hpp"
    +
    1 #ifndef PHYSICS_COMPONENT
    +
    2 #define PHYSICS_COMPONENT
    3 
    -
    4 #ifndef PHYSICS_SYSTEM
    -
    5 class PhysicsSystem;
    -
    6 #endif
    -
    7 
    -
    8 #ifndef PHYSICS_COMPONENT
    -
    9 #define PHYSICS_COMPONENT
    -
    10 
    - -
    12 {
    -
    13 
    -
    14  friend class PhysicsSystem;
    -
    15 
    -
    16 protected:
    -
    17 
    - -
    19 
    -
    20 public:
    -
    21 
    -
    22  virtual Vec2f getPosition()const = 0;
    -
    23  virtual void setPosition(const Vec2f& v) = 0;
    -
    24 
    - -
    31 
    -
    35  virtual void destroyDispatcher() = 0;
    -
    36 
    -
    37 };
    -
    38 
    -
    39 #endif
    -
    Definition: vec2f.hpp:9
    -
    virtual void setPosition(const Vec2f &v)=0
    -
    Definition: physics_system.hpp:19
    +
    4 #include "../math/vec2f.hpp"
    +
    5 #include "../dependencies/rapidxml/rapidxml.hpp"
    +
    6 
    +
    7 class PhysicsSystem;
    +
    8 class b2Body;
    +
    9 
    + +
    11 {
    +
    12 
    +
    13  friend class PhysicsSystem;
    +
    14 
    +
    15 protected:
    +
    16 
    +
    17  PhysicsSystem* myPhysicsSystem;
    +
    18 
    +
    19  b2Body* body;
    +
    20 
    +
    21 public:
    +
    22 
    +
    23  Vec2f getPosition()const;
    +
    24  void setPosition(const Vec2f& v);
    +
    25 
    +
    26  Vec2f getSpeed()const;
    +
    27  void setSpeed(const Vec2f& v);
    +
    28 
    +
    34  virtual rapidxml::xml_node<>* createXmlNode(rapidxml::xml_document<>* doc) = 0;
    +
    35 
    +
    39  virtual void destroyDispatcher() = 0;
    +
    40 
    +
    41 };
    +
    42 
    +
    43 #endif
    +
    Definition: vec2f.hpp:10
    +
    Definition: physics_system.hpp:13
    virtual void destroyDispatcher()=0
    this will call to the corresponding PhysicsSystem function \ in charge of deleting this PhysicsCompon...
    -
    PhysicsSystem * myPhysicsSystem
    Definition: physics_component.hpp:18
    -
    virtual Vec2f getPosition() const =0
    virtual rapidxml::xml_node * createXmlNode(rapidxml::xml_document<> *doc)=0
    Creates a physics XML node Returns an XML node representing the class itself.
    -
    Definition: physics_component.hpp:11
    -
    Definition: rapidxml.hpp:139
    -
    Definition: rapidxml.hpp:137
    +
    Definition: physics_component.hpp:10
    +
    - + diff --git a/doc/doxy/html/physics__system_8hpp_source.html b/doc/doxy/html/physics__system_8hpp_source.html index eed792b..1bd065a 100644 --- a/doc/doxy/html/physics__system_8hpp_source.html +++ b/doc/doxy/html/physics__system_8hpp_source.html @@ -3,15 +3,24 @@ - -OWMAN: physics/physics_system.hpp Source File + +owman: physics_system.hpp Source File + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -63,15 +70,29 @@ + +
    + +
    +
    +
    + +
    @@ -80,80 +101,76 @@
    - -
    physics_system.hpp
    -Go to the documentation of this file.
    1 #include <Box2D/Box2D.h>
    -
    2 #include "../math/vec2f.hpp"
    +
    1 #ifndef PHYSICS_SYSTEM
    +
    2 #define PHYSICS_SYSTEM
    3 
    -
    4 #ifndef PHYSICS_COMPONENT
    -
    5 class PhysicsComponent;
    -
    6 #endif
    -
    7 
    -
    8 #ifndef PHYSICS_BOX
    -
    9 class PhysicsBox;
    -
    10 #endif
    -
    11 
    -
    12  #ifndef PHYSICS_BOX_FACTORY
    -
    13  class PhysicsBoxFactory;
    -
    14  #endif
    -
    15 
    -
    16 #ifndef PHYSICS_SYSTEM
    -
    17 #define PHYSICS_SYSTEM
    -
    18 
    - -
    20 {
    -
    21 
    -
    22  b2World* world;
    -
    23 
    - -
    25 
    -
    26 public:
    -
    27 
    -
    28  PhysicsSystem();
    -
    29 
    -
    30  void update(unsigned int delta);
    +
    4 #include <Box2D/Box2D.h>
    +
    5 #include "../math/vec2f.hpp"
    +
    6 
    +
    7 #include "physics_component.hpp"
    +
    8 #include "physics_box.hpp"
    +
    9 #include "physics_box_factory.hpp"
    +
    10 #include "physics_circle.hpp"
    +
    11 #include "physics_circle_factory.hpp"
    +
    12 
    + +
    14 {
    +
    15 
    +
    16  b2World* world;
    +
    17 
    +
    18  PhysicsBoxFactory* physicsBoxFactory;
    +
    19  PhysicsCircleFactory* physicsCircleFactory;
    +
    20 
    +
    21 public:
    +
    22 
    +
    23  PhysicsSystem();
    +
    24 
    +
    25  void update(unsigned int delta);
    +
    26 
    +
    30  PhysicsBox* createPhysicsBox( const Vec2f& position, const Vec2f& scale, float mass );
    31 
    -
    35  PhysicsBox* createPhysicsBox( const Vec2f& position, const Vec2f& scale, float mass );
    +
    35  PhysicsBox* createPhysicsBoxKinematic( const Vec2f& position, const Vec2f& scale, float mass );
    36 
    -
    40  PhysicsBox* createPhysicsBoxKinematic( const Vec2f& position, const Vec2f& scale, float mass );
    +
    40  PhysicsCircle* createPhysicsCircle( const Vec2f& position, float radius, float mass );
    41 
    -
    42  void destroyPhysicsComponent( PhysicsComponent* physicsComponent );
    -
    43  void destroyPhysicsBox( PhysicsBox* physicsBox );
    -
    44 
    -
    45  b2World* getWorld();
    +
    45  PhysicsCircle* createPhysicsCircleKinematic( const Vec2f& position, float radius, float mass );
    46 
    -
    47 };
    -
    48 
    -
    49 #endif
    -
    50 
    -
    Definition: vec2f.hpp:9
    -
    Definition: physics_box_factory.hpp:10
    -
    PhysicsBoxFactory * physicsBoxFactory
    Definition: physics_system.hpp:24
    -
    b2World * getWorld()
    Definition: physics_system.cpp:53
    -
    void update(unsigned int delta)
    Definition: physics_system.cpp:14
    -
    PhysicsSystem()
    Definition: physics_system.cpp:5
    -
    Definition: physics_system.hpp:19
    -
    PhysicsBox * createPhysicsBoxKinematic(const Vec2f &position, const Vec2f &scale, float mass)
    Create a kinematic box Kinematic means that it is not affected by forces.
    Definition: physics_system.cpp:31
    -
    PhysicsBox * createPhysicsBox(const Vec2f &position, const Vec2f &scale, float mass)
    Create a dynamic box Dynamic means that is is affected by forces.
    Definition: physics_system.cpp:21
    -
    Definition: physics_box.hpp:16
    -
    b2World * world
    Definition: physics_system.hpp:22
    -
    void destroyPhysicsBox(PhysicsBox *physicsBox)
    Definition: physics_system.cpp:48
    -
    void destroyPhysicsComponent(PhysicsComponent *physicsComponent)
    Definition: physics_system.cpp:43
    -
    Definition: physics_component.hpp:11
    +
    47  void destroyPhysicsComponent( PhysicsComponent* physicsComponent );
    +
    48  void destroyPhysicsBox( PhysicsBox* physicsBox );
    +
    49  void destroyPhysicsCircle( PhysicsCircle* physicsCircle );
    +
    50 
    +
    51  b2World* getWorld();
    +
    52 
    +
    53 };
    +
    54 
    +
    55 #endif
    +
    56 
    +
    Definition: vec2f.hpp:10
    +
    Definition: physics_box_factory.hpp:8
    +
    PhysicsCircle * createPhysicsCircle(const Vec2f &position, float radius, float mass)
    Create a dynamic circle Dynamic means that it is affected by forces.
    Definition: physics_system.cpp:44
    +
    Definition: physics_system.hpp:13
    +
    Definition: physics_circle.hpp:15
    +
    PhysicsCircle * createPhysicsCircleKinematic(const Vec2f &position, float radius, float mass)
    Create a kinematic circle Kinematic means that it is not affected by forces.
    Definition: physics_system.cpp:53
    +
    PhysicsBox * createPhysicsBoxKinematic(const Vec2f &position, const Vec2f &scale, float mass)
    Create a kinematic box Kinematic means that it is not affected by forces.
    Definition: physics_system.cpp:33
    +
    Definition: physics_circle_factory.hpp:6
    +
    PhysicsBox * createPhysicsBox(const Vec2f &position, const Vec2f &scale, float mass)
    Create a dynamic box Dynamic means that it is affected by forces.
    Definition: physics_system.cpp:22
    +
    Definition: physics_box.hpp:15
    +
    Definition: physics_component.hpp:10
    +
    - + diff --git a/doc/doxy/html/resource_8hpp_source.html b/doc/doxy/html/resource_8hpp_source.html index 645656b..e70db24 100644 --- a/doc/doxy/html/resource_8hpp_source.html +++ b/doc/doxy/html/resource_8hpp_source.html @@ -3,15 +3,24 @@ - -OWMAN: resource_manager/resource.hpp Source File + +owman: resource.hpp Source File + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -63,15 +70,29 @@ + +
    + +
    +
    +
    + +
    @@ -80,89 +101,69 @@
    - -
    resource.hpp
    -Go to the documentation of this file.
    1 #include <string>
    -
    2 
    -
    3 #ifndef RESOURCE
    -
    4 #define RESOURCE
    -
    5 
    -
    13 class Resource
    -
    14 {
    -
    15 
    -
    16  friend class ResourceManager;
    -
    17 
    -
    18 public:
    -
    19 
    -
    20  enum class Status
    -
    21  {
    -
    22  UNKOWN,
    -
    23  STORED,
    -
    24  QUEUED,
    -
    25  LOADING,
    -
    26  LOADED,
    -
    27  READY,
    -
    28  SAVING
    -
    29  };
    +
    1 #ifndef RESOURCE
    +
    2 #define RESOURCE
    +
    3 
    +
    4 #include <string>
    +
    5 
    +
    12 class Resource
    +
    13 {
    +
    14 
    +
    15  friend class ResourceManager;
    +
    16 
    +
    17 public:
    +
    18 
    +
    19  enum class Status
    +
    20  {
    +
    21  UNKOWN,
    +
    22  STORED,
    +
    23  QUEUED,
    +
    24  LOADING,
    +
    25  LOADED,
    +
    26  SAVING
    +
    27  };
    +
    28 
    +
    29 protected:
    30 
    -
    31 protected:
    -
    32 
    -
    33  std::string name;
    - -
    35 
    -
    36  virtual void load() = 0;
    -
    37  virtual void free() = 0;
    +
    31  std::string name;
    +
    32  Status status;
    +
    33 
    +
    34  virtual void load() = 0;
    +
    35  virtual void free() = 0;
    +
    36 
    +
    37  void setName(std::string name);
    38 
    -
    39  void setName(std::string name);
    +
    39 public:
    40 
    -
    41 public:
    +
    41  Resource(const std::string& name);
    42 
    -
    43  Resource();
    -
    44 
    -
    45  std::string getName()const;
    - +
    43  std::string getName()const;
    +
    44  Resource::Status getStatus()const;
    +
    45 
    +
    46  //virtual void destroyDispatcher() = 0;
    47 
    -
    48  virtual void destroyDispatcher() = 0;
    +
    48  virtual ~Resource(){};
    49 
    -
    50  virtual ~Resource(){};
    +
    50 };
    51 
    -
    52 };
    -
    53 
    -
    54 #endif
    -
    void setName(std::string name)
    Definition: resource.cpp:13
    -
    Resource()
    Definition: resource.cpp:3
    -
    virtual void destroyDispatcher()=0
    -
    virtual void free()=0
    -
    std::string name
    Definition: resource.hpp:33
    -
    Status status
    Definition: resource.hpp:34
    -
    virtual void load()=0
    -
    Abstract resource data class This class hold the data for different types of resource. In order to create a new type of resource just extend from this class.
    Definition: resource.hpp:13
    -
    std::string getName() const
    Definition: resource.cpp:8
    - - -
    Status
    Definition: resource.hpp:20
    - - - - -
    virtual ~Resource()
    Definition: resource.hpp:50
    - -
    Resource::Status getStatus() const
    Definition: resource.cpp:18
    -
    This is the singleton you should use Requesting resources will deliver a resource pointer event if th...
    Definition: resource_manager.hpp:24
    +
    52 #endif
    +
    Abstract resource data class This class hold the data for different types of resource. In order to create a new type of resource just extend from this class.
    Definition: resource.hpp:12
    +
    This is the singleton you should use Requesting resources will deliver a resource pointer event if th...
    Definition: resource_manager.hpp:18
    +
    - + diff --git a/doc/doxy/html/resource__cell_8hpp_source.html b/doc/doxy/html/resource__cell_8hpp_source.html index dc172a0..2e1171e 100644 --- a/doc/doxy/html/resource__cell_8hpp_source.html +++ b/doc/doxy/html/resource__cell_8hpp_source.html @@ -3,15 +3,24 @@ - -OWMAN: resource_manager/resource_cell.hpp Source File + +owman: resource_cell.hpp Source File + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -63,15 +70,29 @@ + +
    + +
    +
    +
    + +
    @@ -80,81 +101,57 @@
    - -
    resource_cell.hpp
    -Go to the documentation of this file.
    1 #include "resource.hpp"
    -
    2 #include "../dependencies/rapidxml/rapidxml.hpp"
    +
    1 #ifndef RESOURCE_CELL
    +
    2 #define RESOURCE_CELL
    3 
    -
    4 #ifndef RESOURCE_CELL_FACTORY
    - -
    6 #endif
    -
    7 
    -
    8 #ifndef RESOURCE_CELL
    -
    9 #define RESOURCE_CELL
    -
    10 
    -
    16 class ResourceCell : public Resource
    -
    17 {
    -
    18 
    -
    19  friend class ResourceCellFactory;
    -
    20  friend class ResourceManager;
    +
    4 #include "resource.hpp"
    +
    5 #include "../dependencies/rapidxml/rapidxml.hpp"
    +
    6 
    +
    12 class ResourceCell : public Resource
    +
    13 {
    +
    14 
    +
    15  friend class ResourceCellFactory;
    +
    16  friend class ResourceManager;
    +
    17 
    +
    18  char* text;
    +
    19  rapidxml::xml_document<> doc;
    +
    20  rapidxml::xml_node<> *node;
    21 
    - +
    22 protected:
    23 
    -
    24  char* text;
    - - -
    27 
    -
    28 protected:
    -
    29 
    -
    30  void load();
    -
    31  void free();
    -
    32 
    -
    33 public:
    -
    34 
    -
    35  ResourceCell();
    -
    36 
    - - -
    39 
    -
    40  void destroyDispatcher();
    -
    41 
    - -
    43 
    -
    44 };
    -
    45 
    -
    46 #endif
    -
    void free()
    Definition: resource_cell.cpp:41
    -
    char * text
    Definition: resource_cell.hpp:24
    -
    void destroyDispatcher()
    Definition: resource_cell.cpp:67
    - -
    Cell resource This class is a modifiable resource. When there are no references to this resource the ...
    Definition: resource_cell.hpp:16
    -
    Abstract resource data class This class hold the data for different types of resource. In order to create a new type of resource just extend from this class.
    Definition: resource.hpp:13
    -
    rapidxml::xml_node * node
    Definition: resource_cell.hpp:26
    -
    void load()
    Definition: resource_cell.cpp:15
    -
    rapidxml::xml_node * getNode()
    Definition: resource_cell.cpp:57
    -
    Definition: resource_cell_factory.hpp:8
    -
    rapidxml::xml_document * getDocument()
    Definition: resource_cell.cpp:62
    -
    ResourceCellFactory * myFactory
    Definition: resource_cell.hpp:22
    -
    Definition: rapidxml.hpp:139
    -
    Definition: rapidxml.hpp:137
    -
    ResourceCell()
    Definition: resource_cell.cpp:10
    -
    rapidxml::xml_document doc
    Definition: resource_cell.hpp:25
    -
    This is the singleton you should use Requesting resources will deliver a resource pointer event if th...
    Definition: resource_manager.hpp:24
    -
    ~ResourceCell()
    Definition: resource_cell.hpp:42
    +
    24  void load();
    +
    25  void free();
    +
    26 
    +
    27 public:
    +
    28 
    +
    29  ResourceCell(const std::string& name);
    +
    30 
    +
    31  rapidxml::xml_node<>* getNode();
    +
    32  rapidxml::xml_document<>* getDocument();
    +
    33 
    +
    34  ~ResourceCell(){}
    +
    35 
    +
    36 };
    +
    37 
    +
    38 #endif
    +
    Cell resource This class is a modifiable resource. When there are no references to this resource the ...
    Definition: resource_cell.hpp:12
    +
    Abstract resource data class This class hold the data for different types of resource. In order to create a new type of resource just extend from this class.
    Definition: resource.hpp:12
    +
    This is the singleton you should use Requesting resources will deliver a resource pointer event if th...
    Definition: resource_manager.hpp:18
    +
    - + diff --git a/doc/doxy/html/resource__manager_8hpp_source.html b/doc/doxy/html/resource__manager_8hpp_source.html index bfd2da0..6c18065 100644 --- a/doc/doxy/html/resource__manager_8hpp_source.html +++ b/doc/doxy/html/resource__manager_8hpp_source.html @@ -3,15 +3,24 @@ - -OWMAN: resource_manager/resource_manager.hpp Source File + +owman: resource_manager.hpp Source File + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -63,15 +70,29 @@ + +
    + +
    +
    +
    + +
    @@ -80,131 +101,81 @@
    - -
    resource_manager.hpp
    -Go to the documentation of this file.
    1 #include "resource_table.hpp"
    -
    2 #include "work_queue.hpp"
    -
    3 #include "resource_request.hpp"
    - - - +
    1 #ifndef RESOURCE_MANAGER
    +
    2 #define RESOURCE_MANAGER
    +
    3 
    +
    4 #include "resource_table.hpp"
    +
    5 #include "work_queue.hpp"
    +
    6 #include "resource_request.hpp"
    7 #include <pthread.h>
    8 #include <string>
    9 
    -
    10 #ifndef LOW_LEVEL_RENDERER_2D
    -
    11 class LowLevelRenderer2D;
    -
    12 #endif
    -
    13 
    -
    14 
    -
    15 #ifndef RESOURCE_MANAGER
    -
    16 #define RESOURCE_MANAGER
    -
    17 
    - -
    25 {
    -
    26 
    - -
    28 
    -
    29  pthread_t myThread;
    -
    30  pthread_mutex_t mutexTable; //< mutex for accessing the table
    +
    10 class LowLevelRenderer2D;
    +
    11 
    + +
    19 {
    +
    20 
    +
    21  static ResourceManager uniqueInstance;
    +
    22 
    +
    23  pthread_t myThread;
    +
    24  pthread_mutex_t mutexTable; //< mutex for accessing the table
    +
    25 
    +
    26  ResourceTable resourceTable;
    + +
    28  bool _stop;
    +
    29 
    +
    30 public:
    31 
    - - - - - -
    37  bool _stop;
    -
    38 
    -
    39 public:
    +
    32  static ResourceManager* getSingleton();
    +
    33 
    +
    34  ResourceManager(){}
    +
    35 
    +
    39  void launch();
    40 
    -
    41  static void init();
    -
    42 
    -
    43  static ResourceManager* getSingleton();
    -
    44 
    - +
    44  template <typename T>
    +
    45  T* obtain(std::string name);
    46 
    -
    50  void launch();
    +
    50  void release(Resource* resource);
    51 
    -
    55  ResourceText* obtainText(std::string name);
    +
    55  void stop();
    56 
    -
    60  void releaseText(ResourceText* resource);
    -
    61 
    -
    65  ResourceTexture* obtainTexture(std::string name);
    +
    57  bool hasStopped();
    +
    58 
    +
    59 private:
    +
    60 
    +
    65  void loop();
    66 
    -
    70  void releaseTexture(ResourceTexture* resource);
    -
    71 
    -
    75  ResourceCell* obtainCell(std::string name);
    -
    76 
    -
    80  void releaseCell(ResourceCell* resource);
    -
    81 
    -
    85  void stop();
    -
    86 
    -
    87  bool hasStopped();
    -
    88 
    -
    89  void setRenderer(LowLevelRenderer2D* renderer);
    -
    90 
    -
    91 private:
    -
    92 
    -
    97  void loop();
    -
    98 
    -
    104  static void* staticLoop(void* object);
    -
    105 
    -
    106 };
    -
    107 
    -
    108 #endif
    -
    static void init()
    Definition: resource_manager.cpp:8
    -
    ResourceText * obtainText(std::string name)
    request a pointer to a text resource
    Definition: resource_manager.cpp:38
    -
    ResourceTexture * obtainTexture(std::string name)
    request a pointer to a texture resource
    Definition: resource_manager.cpp:106
    -
    pthread_mutex_t mutexTable
    Definition: resource_manager.hpp:30
    +
    72  static void* staticLoop(void* object);
    +
    73 
    +
    74 };
    +
    75 
    +
    76 #include "resource_manager_templates.hpp"
    +
    77 
    +
    78 #endif
    void stop()
    stop the resource manager thread
    -
    Definition: resource_text.hpp:16
    -
    ResourceManager()
    Definition: resource_manager.hpp:45
    -
    void setRenderer(LowLevelRenderer2D *renderer)
    Definition: resource_manager.cpp:245
    -
    void loop()
    consumes requests Iterates for ever to handle requests.
    Definition: resource_manager.cpp:250
    - -
    WorkQueue< ResourceRequest > workQueue
    Definition: resource_manager.hpp:36
    - -
    void launch()
    launches the resurce manger in its own thread
    Definition: resource_manager.cpp:20
    -
    void releaseTexture(ResourceTexture *resource)
    release a pointer to a texture resource
    Definition: resource_manager.cpp:142
    -
    Cell resource This class is a modifiable resource. When there are no references to this resource the ...
    Definition: resource_cell.hpp:16
    -
    void releaseCell(ResourceCell *resource)
    release a pointer to a cell resource
    Definition: resource_manager.cpp:213
    -
    pthread_t myThread
    Definition: resource_manager.hpp:29
    -
    void releaseText(ResourceText *resource)
    release a pointer to a text resource
    Definition: resource_manager.cpp:75
    -
    static ResourceManager uniqueInstance
    Definition: resource_manager.hpp:27
    -
    static ResourceManager * getSingleton()
    Definition: resource_manager.cpp:15
    -
    Definition: low_level_renderer_2d.hpp:13
    - -
    bool _stop
    Definition: resource_manager.hpp:37
    - -
    ResourceCell * obtainCell(std::string name)
    request a pointer to a cell resource
    Definition: resource_manager.cpp:179
    -
    Definition: resource_text_factory.hpp:7
    +
    void launch()
    launches the resource manger in its own thread
    Definition: resource_manager.cpp:13
    +
    Abstract resource data class This class hold the data for different types of resource. In order to create a new type of resource just extend from this class.
    Definition: resource.hpp:12
    +
    Definition: low_level_renderer_2d.hpp:16
    - -
    static void * staticLoop(void *object)
    this function calls loop You can not create a pthread from a member funtion so I use this static func...
    Definition: resource_manager.cpp:305
    -
    ResourceCellFactory resourceCellFactory
    Definition: resource_manager.hpp:35
    -
    Definition: resource_texture_factory.hpp:11
    -
    Definition: resource_cell_factory.hpp:8
    - -
    ResourceTextFactory resourceTextFactory
    Definition: resource_manager.hpp:33
    -
    Represents a resource texture Since OpenGL does not allow to make any call from any other thread othe...
    Definition: resource_texture.hpp:24
    -
    ResourceTextureFactory resourceTextureFactory
    Definition: resource_manager.hpp:34
    -
    Definition: resource_table.hpp:10
    - -
    This is the singleton you should use Requesting resources will deliver a resource pointer event if th...
    Definition: resource_manager.hpp:24
    -
    ResourceTable resourceTable
    Definition: resource_manager.hpp:32
    +
    void release(Resource *resource)
    release a pointer to a resource
    Definition: resource_manager.cpp:31
    +
    Definition: resource_table.hpp:8
    +
    T * obtain(std::string name)
    request a pointer to a resource
    Definition: resource_manager_templates.hpp:5
    +
    This is the singleton you should use Requesting resources will deliver a resource pointer event if th...
    Definition: resource_manager.hpp:18
    +
    - + diff --git a/doc/doxy/html/resource__manager__templates_8hpp_source.html b/doc/doxy/html/resource__manager__templates_8hpp_source.html new file mode 100644 index 0000000..383006e --- /dev/null +++ b/doc/doxy/html/resource__manager__templates_8hpp_source.html @@ -0,0 +1,163 @@ + + + + + + +owman: resource_manager_templates.hpp Source File + + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    owman +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    +
    resource_manager_templates.hpp
    +
    +
    +
    1 #ifndef RESOURCE_MANAGER_TEMPLATES
    +
    2 #define RESOURCE_MANAGER_TEMPLATES
    +
    3 
    +
    4 template <typename T>
    +
    5 T* ResourceManager::obtain(std::string name)
    +
    6 {
    +
    7  pthread_mutex_lock(&mutexTable);
    +
    8  unsigned int count = resourceTable.getCount( name );
    +
    9  pthread_mutex_unlock(&mutexTable);
    +
    10 
    +
    11  // not loaded
    +
    12  if( count == 0 )
    +
    13  {
    +
    14  T* resource = new T(name);
    +
    15 
    +
    16  pthread_mutex_lock(&mutexTable);
    +
    17  resourceTable.addEntry(name, resource);
    +
    18  pthread_mutex_unlock(&mutexTable);
    +
    19 
    +
    20  workQueue.push( ResourceRequest( ResourceRequest::Type::OBTAIN, name ) );
    +
    21  return resource;
    +
    22  }
    +
    23 
    +
    24  // loaded
    +
    25  else
    +
    26  {
    +
    27  pthread_mutex_lock(&mutexTable);
    +
    28  resourceTable.incEntry(name);
    +
    29  pthread_mutex_unlock(&mutexTable);
    +
    30 
    +
    31  pthread_mutex_lock(&mutexTable);
    +
    32  T* res = (T*)resourceTable.getResource(name);
    +
    33  pthread_mutex_unlock(&mutexTable);
    +
    34 
    +
    35  return res;
    +
    36  }
    +
    37 }
    +
    38 
    +
    39 
    +
    40 #endif // RESOURCE_MANAGER_TEMPLATES
    +
    Definition: resource_request.hpp:7
    +
    T * obtain(std::string name)
    request a pointer to a resource
    Definition: resource_manager_templates.hpp:5
    +
    +
    + + + + diff --git a/doc/doxy/html/resource__request_8hpp_source.html b/doc/doxy/html/resource__request_8hpp_source.html index 5555aab..8a96041 100644 --- a/doc/doxy/html/resource__request_8hpp_source.html +++ b/doc/doxy/html/resource__request_8hpp_source.html @@ -3,15 +3,24 @@ - -OWMAN: resource_manager/resource_request.hpp Source File + +owman: resource_request.hpp Source File + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -63,15 +70,29 @@ + +
    + +
    +
    +
    + +
    @@ -80,70 +101,58 @@
    - -
    resource_request.hpp
    -Go to the documentation of this file.
    1 #include "resource.hpp"
    -
    2 #include <string>
    +
    1 #ifndef RESOURCE_REQUEST
    +
    2 #define RESOURCE_REQUEST
    3 
    -
    4 #ifndef RESOURCE_REQUEST
    -
    5 #define RESOURCE_REQUEST
    -
    6 
    +
    4 #include "resource.hpp"
    +
    5 #include <string>
    +
    6 
    8 {
    9 
    10 public:
    11 
    -
    12  enum class Type
    -
    13  {
    -
    14  OBTAIN, //< request a handle to a resource
    -
    15  RELEASE, //< notifies to release the resource handle
    -
    16  STOP //< stop the resource manager
    -
    17  };
    -
    18 
    +
    12  enum class Type
    +
    13  {
    +
    14  OBTAIN, //< request a handle to a resource
    +
    15  RELEASE, //< notifies to release the resource handle
    +
    16  STOP //< stop the resource manager
    +
    17  };
    +
    18 
    19 private:
    -
    20 
    - -
    22  std::string name;
    -
    23 
    +
    20 
    +
    21  Type type;
    +
    22  std::string name;
    +
    23 
    24 public:
    -
    25 
    - -
    27  ResourceRequest(Type type, std::string name);
    -
    28 
    -
    29  ResourceRequest operator=(const ResourceRequest& resourceRequest);
    -
    30 
    - -
    32  std::string getName()const;
    -
    33 
    +
    25 
    +
    26  ResourceRequest(){}
    +
    27  ResourceRequest(Type type, std::string name);
    +
    28 
    +
    29  ResourceRequest operator=(const ResourceRequest& resourceRequest);
    +
    30 
    +
    31  ResourceRequest::Type getType()const;
    +
    32  std::string getName()const;
    +
    33 
    34 };
    35 
    36 #endif
    -
    std::string name
    Definition: resource_request.hpp:22
    -
    ResourceRequest()
    Definition: resource_request.hpp:26
    - -
    ResourceRequest::Type getType() const
    Definition: resource_request.cpp:18
    - -
    Type
    Definition: resource_request.hpp:12
    -
    std::string getName() const
    Definition: resource_request.cpp:23
    Definition: resource_request.hpp:7
    -
    ResourceRequest operator=(const ResourceRequest &resourceRequest)
    Definition: resource_request.cpp:11
    - - -
    Type type
    Definition: resource_request.hpp:21
    +
    - + diff --git a/doc/doxy/html/resource__table_8hpp_source.html b/doc/doxy/html/resource__table_8hpp_source.html index 6057b70..b246deb 100644 --- a/doc/doxy/html/resource__table_8hpp_source.html +++ b/doc/doxy/html/resource__table_8hpp_source.html @@ -3,15 +3,24 @@ - -OWMAN: resource_manager/resource_table.hpp Source File + +owman: resource_table.hpp Source File + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -63,15 +70,29 @@ + +
    + +
    +
    +
    + +
    @@ -80,63 +101,50 @@
    - -
    resource_table.hpp
    -Go to the documentation of this file.
    -
    2 #include "resource_factory.hpp"
    - -
    4 #include <map>
    -
    5 #include <string>
    -
    6 
    -
    7 #ifndef RESOURCE_TABLE
    -
    8 #define RESOURCE_TABLE
    -
    9 
    - -
    11 {
    -
    12 
    -
    13  std::map< std::string, ResourceTableEntry > table;
    -
    14 
    -
    15 public:
    -
    16 
    -
    17  unsigned int getCount(std::string name)const;
    -
    18 
    -
    19  void addEntry(std::string name, Resource* resource);
    -
    20  void removeEntry(std::string name);
    -
    21 
    -
    22  void incEntry(std::string name);
    -
    23  void decEntry(std::string name);
    -
    24 
    -
    25  Resource* getResource(std::string name);
    -
    26 
    -
    27 };
    -
    28 
    -
    29 #endif
    -
    void removeEntry(std::string name)
    Definition: resource_table.cpp:59
    - -
    void incEntry(std::string name)
    Definition: resource_table.cpp:66
    -
    Resource * getResource(std::string name)
    Definition: resource_table.cpp:24
    -
    -
    void decEntry(std::string name)
    Definition: resource_table.cpp:92
    -
    Abstract resource data class This class hold the data for different types of resource. In order to create a new type of resource just extend from this class.
    Definition: resource.hpp:13
    -
    void addEntry(std::string name, Resource *resource)
    Definition: resource_table.cpp:51
    -
    std::map< std::string, ResourceTableEntry > table
    Definition: resource_table.hpp:13
    - -
    Definition: resource_table.hpp:10
    -
    unsigned int getCount(std::string name) const
    Definition: resource_table.cpp:7
    +
    1 #ifndef RESOURCE_TABLE
    +
    2 #define RESOURCE_TABLE
    +
    3 
    +
    4 #include "resource_table_entry.hpp"
    +
    5 #include <map>
    +
    6 #include <string>
    +
    7 
    + +
    9 {
    +
    10 
    +
    11  std::map< std::string, ResourceTableEntry > table;
    +
    12 
    +
    13 public:
    +
    14 
    +
    15  unsigned int getCount(std::string name)const;
    +
    16 
    +
    17  void addEntry(std::string name, Resource* resource);
    +
    18  void removeEntry(std::string name);
    +
    19 
    +
    20  void incEntry(std::string name);
    +
    21  void decEntry(std::string name);
    +
    22 
    +
    23  Resource* getResource(std::string name);
    +
    24 
    +
    25 };
    +
    26 
    +
    27 #endif
    +
    Abstract resource data class This class hold the data for different types of resource. In order to create a new type of resource just extend from this class.
    Definition: resource.hpp:12
    +
    Definition: resource_table.hpp:8
    +
    - + diff --git a/doc/doxy/html/resource__table__entry_8hpp_source.html b/doc/doxy/html/resource__table__entry_8hpp_source.html index 78d62fe..ac52457 100644 --- a/doc/doxy/html/resource__table__entry_8hpp_source.html +++ b/doc/doxy/html/resource__table__entry_8hpp_source.html @@ -3,15 +3,24 @@ - -OWMAN: resource_manager/resource_table_entry.hpp Source File + +owman: resource_table_entry.hpp Source File + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -63,15 +70,29 @@ + +
    + +
    +
    +
    + +
    @@ -80,72 +101,59 @@
    - -
    resource_table_entry.hpp
    -Go to the documentation of this file.
    1 #include "resource.hpp"
    -
    2 
    -
    3 #ifndef RESOURCE_TABLE_ENTRY
    -
    4 #define RESOURCE_TABLE_ENTRY
    -
    5 
    -
    6 #ifndef RESOURCE_TABLE
    -
    7 class ResourceTable;
    -
    8 #endif
    -
    9 
    - -
    11 {
    -
    12 
    -
    13  friend class ResourceTable;
    -
    14 
    -
    15 public:
    -
    16 
    - -
    18 
    -
    19 private:
    +
    1 #ifndef RESOURCE_TABLE_ENTRY
    +
    2 #define RESOURCE_TABLE_ENTRY
    +
    3 
    +
    4 #include "resource.hpp"
    +
    5 
    +
    6 class ResourceTable;
    +
    7 
    + +
    9 {
    +
    10 
    +
    11  friend class ResourceTable;
    +
    12 
    +
    13 public:
    +
    14 
    + +
    16 
    +
    17 private:
    +
    18 
    +
    19  ResourceTableEntry(Resource* resource);
    20 
    - -
    22 
    -
    23  unsigned int count;
    - -
    25 
    -
    26  unsigned int getCount()const;
    -
    27 
    -
    28  void setCount(unsigned int count);
    -
    29  void incCount();
    -
    30  void decCount();
    -
    31 
    -
    32  Resource* getPointer()const;
    - -
    34 
    -
    35 };
    -
    36 
    -
    37 #endif
    -
    void decCount()
    Definition: resource_table_entry.cpp:24
    -
    void setCount(unsigned int count)
    Definition: resource_table_entry.cpp:14
    - -
    Definition: resource_table_entry.hpp:10
    -
    Abstract resource data class This class hold the data for different types of resource. In order to create a new type of resource just extend from this class.
    Definition: resource.hpp:13
    -
    Resource * resource
    Definition: resource_table_entry.hpp:24
    -
    ResourceTableEntry()
    Definition: resource_table_entry.hpp:17
    -
    unsigned int count
    Definition: resource_table_entry.hpp:23
    -
    unsigned int getCount() const
    Definition: resource_table_entry.cpp:9
    -
    void incCount()
    Definition: resource_table_entry.cpp:19
    -
    Definition: resource_table.hpp:10
    -
    void setPointer(Resource *resource)
    Definition: resource_table_entry.cpp:34
    -
    Resource * getPointer() const
    Definition: resource_table_entry.cpp:29
    +
    21  unsigned int count;
    +
    22  Resource* resource;
    +
    23 
    +
    24  unsigned int getCount()const;
    +
    25 
    +
    26  void setCount(unsigned int count);
    +
    27  void incCount();
    +
    28  void decCount();
    +
    29 
    +
    30  Resource* getPointer()const;
    +
    31  void setPointer(Resource* resource);
    +
    32 
    +
    33 };
    +
    34 
    +
    35 #endif
    +
    Definition: resource_table_entry.hpp:8
    +
    Abstract resource data class This class hold the data for different types of resource. In order to create a new type of resource just extend from this class.
    Definition: resource.hpp:12
    +
    Definition: resource_table.hpp:8
    +
    - + diff --git a/doc/doxy/html/resource__text_8hpp_source.html b/doc/doxy/html/resource__text_8hpp_source.html index f2d12d7..da2f36b 100644 --- a/doc/doxy/html/resource__text_8hpp_source.html +++ b/doc/doxy/html/resource__text_8hpp_source.html @@ -3,15 +3,24 @@ - -OWMAN: resource_manager/resource_text.hpp Source File + +owman: resource_text.hpp Source File + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -63,15 +70,29 @@ + +
    + +
    +
    +
    + +
    @@ -80,77 +101,59 @@
    - -
    resource_text.hpp
    -Go to the documentation of this file.
    1 #include "resource.hpp"
    -
    2 
    -
    3 #ifndef RESOURCE_TEXT_FACTORY
    - -
    5 #endif
    -
    6 
    -
    7 #ifndef RESOURCE_MANAGER
    -
    8 class ResourceManager;
    -
    9 #endif
    -
    10 
    +
    1 #ifndef RESOURCE_TEXT
    +
    2 #define RESOURCE_TEXT
    +
    3 
    +
    4 #include "resource.hpp"
    +
    5 
    +
    6 class ResourceTextFactory;
    +
    7 class ResourceManager;
    +
    8 
    +
    9 class ResourceText : public Resource
    +
    10 {
    11 
    -
    12 
    -
    13 #ifndef RESOURCE_TEXT
    -
    14 #define RESOURCE_TEXT
    -
    15 
    -
    16 class ResourceText : public Resource
    -
    17 {
    -
    18 
    -
    19  friend class ResourceTextFactory;
    -
    20  friend class ResourceManager;
    -
    21 
    - -
    23  std::string text;
    +
    12  friend class ResourceTextFactory;
    +
    13  friend class ResourceManager;
    +
    14 
    +
    15  ResourceTextFactory* myFactory;
    +
    16  std::string text;
    +
    17 
    +
    18 protected:
    +
    19 
    +
    20  void load();
    +
    21  void free();
    +
    22 
    +
    23 public:
    24 
    -
    25 protected:
    +
    25  ResourceText(const std::string& name);
    26 
    -
    27  void load();
    -
    28  void free();
    -
    29 
    -
    30 public:
    -
    31 
    -
    32  ResourceText();
    -
    33 
    -
    34  std::string getText()const;
    -
    35 
    -
    36  void destroyDispatcher();
    -
    37 
    - -
    39 
    -
    40 };
    -
    41 
    -
    42 #endif
    -
    Definition: resource_text.hpp:16
    -
    std::string text
    Definition: resource_text.hpp:23
    -
    void destroyDispatcher()
    Definition: resource_text.cpp:46
    - -
    std::string getText() const
    Definition: resource_text.cpp:13
    -
    Abstract resource data class This class hold the data for different types of resource. In order to create a new type of resource just extend from this class.
    Definition: resource.hpp:13
    -
    void free()
    Definition: resource_text.cpp:38
    -
    Definition: resource_text_factory.hpp:7
    -
    ResourceText()
    Definition: resource_text.cpp:8
    -
    ~ResourceText()
    Definition: resource_text.hpp:38
    -
    void load()
    Definition: resource_text.cpp:18
    -
    ResourceTextFactory * myFactory
    Definition: resource_text.hpp:22
    -
    This is the singleton you should use Requesting resources will deliver a resource pointer event if th...
    Definition: resource_manager.hpp:24
    +
    27  std::string getText()const;
    +
    28 
    +
    29  //void destroyDispatcher();
    +
    30 
    +
    31  ~ResourceText(){}
    +
    32 
    +
    33 };
    +
    34 
    +
    35 #endif
    +
    Definition: resource_text.hpp:9
    +
    Abstract resource data class This class hold the data for different types of resource. In order to create a new type of resource just extend from this class.
    Definition: resource.hpp:12
    +
    This is the singleton you should use Requesting resources will deliver a resource pointer event if th...
    Definition: resource_manager.hpp:18
    +
    - + diff --git a/doc/doxy/html/resource__texture_8hpp_source.html b/doc/doxy/html/resource__texture_8hpp_source.html index dd49074..c7a15ff 100644 --- a/doc/doxy/html/resource__texture_8hpp_source.html +++ b/doc/doxy/html/resource__texture_8hpp_source.html @@ -3,15 +3,24 @@ - -OWMAN: resource_manager/resource_texture.hpp Source File + +owman: resource_texture.hpp Source File + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -63,15 +70,29 @@ + +
    + +
    +
    +
    + +
    @@ -80,87 +101,63 @@
    - -
    resource_texture.hpp
    -Go to the documentation of this file.
    1 #include "resource.hpp"
    -
    2 #include "../renderer/low_level_renderer_2d.hpp"
    +
    1 #ifndef RESOURCE_TEXTURE
    +
    2 #define RESOURCE_TEXTURE
    3 
    -
    4 #ifndef RESOURCE_TEXTURE_FACTORY
    - -
    6 #endif
    -
    7 
    -
    8 #ifndef RESOURCE_MANAGER
    -
    9 class ResourceManager;
    -
    10 #endif
    -
    11 
    -
    12 
    -
    13 #ifndef RESOURCE_TEXTURE
    -
    14 #define RESOURCE_TEXTURE
    -
    15 
    -
    24 class ResourceTexture : public Resource
    -
    25 {
    -
    26 
    -
    27  friend class ResourceTextureFactory;
    -
    28  friend class ResourceManager;
    +
    4 #include "resource.hpp"
    +
    5 #include "../renderer/low_level_renderer_2d.hpp"
    +
    6 
    +
    7 class ResourceTextureFactory;
    +
    8 class ResourceManager;
    +
    9 
    +
    10 
    +
    19 class ResourceTexture : public Resource
    +
    20 {
    +
    21 
    +
    22  friend class ResourceTextureFactory;
    +
    23  friend class ResourceManager;
    +
    24 
    +
    25  unsigned char* imageData;
    +
    26  int width, height;
    +
    27 
    +
    28 protected:
    29 
    -
    30  unsigned char* imageData;
    - -
    32  int width, height;
    -
    33 
    - -
    35 
    -
    36 protected:
    -
    37 
    -
    38  void load();
    -
    39  void free();
    +
    30  void load();
    +
    31  void free();
    +
    32 
    +
    33 public:
    +
    34 
    +
    35  ResourceTexture(const std::string& name);
    +
    36 
    +
    37  const unsigned char* getTextureData()const;
    +
    38  int getWidth()const;
    +
    39  int getHeight()const;
    40 
    -
    41 public:
    +
    41  //void destroyDispatcher();
    42 
    - +
    43  ~ResourceTexture(){}
    44 
    - +
    45 };
    46 
    -
    47  void loadToGraphicsCard();
    -
    48 
    -
    49  void destroyDispatcher();
    -
    50 
    - -
    52 
    -
    53 };
    -
    54 
    -
    55 #endif
    -
    LowLevelRenderer2D::Texture texture
    Definition: resource_texture.hpp:31
    -
    Definition: low_level_renderer_2d.hpp:41
    -
    void load()
    Definition: resource_texture.cpp:32
    -
    LowLevelRenderer2D::Texture * getTexture()
    Definition: resource_texture.cpp:13
    -
    ~ResourceTexture()
    Definition: resource_texture.hpp:51
    - -
    Abstract resource data class This class hold the data for different types of resource. In order to create a new type of resource just extend from this class.
    Definition: resource.hpp:13
    -
    unsigned char * imageData
    Definition: resource_texture.hpp:30
    -
    void free()
    Definition: resource_texture.cpp:61
    -
    ResourceTexture()
    Definition: resource_texture.cpp:8
    -
    int width
    Definition: resource_texture.hpp:32
    -
    void loadToGraphicsCard()
    Definition: resource_texture.cpp:18
    -
    Definition: resource_texture_factory.hpp:11
    -
    Represents a resource texture Since OpenGL does not allow to make any call from any other thread othe...
    Definition: resource_texture.hpp:24
    -
    void destroyDispatcher()
    Definition: resource_texture.cpp:70
    -
    int height
    Definition: resource_texture.hpp:32
    -
    ResourceTextureFactory * myFactory
    Definition: resource_texture.hpp:34
    -
    This is the singleton you should use Requesting resources will deliver a resource pointer event if th...
    Definition: resource_manager.hpp:24
    +
    47 #endif
    +
    Abstract resource data class This class hold the data for different types of resource. In order to create a new type of resource just extend from this class.
    Definition: resource.hpp:12
    +
    Represents a resource texture Since OpenGL does not allow to make any call from any other thread othe...
    Definition: resource_texture.hpp:19
    +
    This is the singleton you should use Requesting resources will deliver a resource pointer event if th...
    Definition: resource_manager.hpp:18
    +
    - + diff --git a/doc/doxy/html/search/all_0.html b/doc/doxy/html/search/all_0.html index 17b6da8..c491fd8 100644 --- a/doc/doxy/html/search/all_0.html +++ b/doc/doxy/html/search/all_0.html @@ -1,7 +1,7 @@ - + diff --git a/doc/doxy/html/search/all_0.js b/doc/doxy/html/search/all_0.js index 1dba224..d50f40a 100644 --- a/doc/doxy/html/search/all_0.js +++ b/doc/doxy/html/search/all_0.js @@ -1,4 +1,6 @@ var searchData= [ - ['_5fstop',['_stop',['../class_resource_manager.html#a34840c528e542e13177971cac55f3d04',1,'ResourceManager']]] + ['aarect',['AARect',['../class_a_a_rect.html',1,'']]], + ['animation',['Animation',['../class_animation.html',1,'']]], + ['animationframe',['AnimationFrame',['../class_animation_frame.html',1,'']]] ]; diff --git a/doc/doxy/html/search/all_1.html b/doc/doxy/html/search/all_1.html index e290644..89fd5f8 100644 --- a/doc/doxy/html/search/all_1.html +++ b/doc/doxy/html/search/all_1.html @@ -1,7 +1,7 @@ - + diff --git a/doc/doxy/html/search/all_1.js b/doc/doxy/html/search/all_1.js index 9191b5b..ffa3cbe 100644 --- a/doc/doxy/html/search/all_1.js +++ b/doc/doxy/html/search/all_1.js @@ -1,19 +1,14 @@ var searchData= [ - ['a',['a',['../class_color.html#a98047aee65fc3d825f88a76da728fd27',1,'Color']]], - ['addentry',['addEntry',['../class_resource_table.html#a677834028e027d5488fa583e14f8e14c',1,'ResourceTable']]], - ['align',['align',['../classrapidxml_1_1memory__pool.html#a317396afc1812f08b64a1dd9cde4039b',1,'rapidxml::memory_pool']]], - ['allocate_5faligned',['allocate_aligned',['../classrapidxml_1_1memory__pool.html#a4e9cf53fa5f9da3a8f31b754bd94b4ec',1,'rapidxml::memory_pool']]], - ['allocate_5fattribute',['allocate_attribute',['../classrapidxml_1_1memory__pool.html#a3de2a66c983336e006ea3844e244ed30',1,'rapidxml::memory_pool']]], - ['allocate_5fnode',['allocate_node',['../classrapidxml_1_1memory__pool.html#a4118581c29ee9a2f6b55ebf7dac185f8',1,'rapidxml::memory_pool']]], - ['allocate_5fraw',['allocate_raw',['../classrapidxml_1_1memory__pool.html#a1aed504a747303352e05f61c6ccbbebb',1,'rapidxml::memory_pool']]], - ['allocate_5fstring',['allocate_string',['../classrapidxml_1_1memory__pool.html#a171941b39d55b868358da97462185f58',1,'rapidxml::memory_pool']]], - ['append_5fattribute',['append_attribute',['../classrapidxml_1_1xml__node.html#a33ce3386f8c42dd4db658b75cbb6e6c4',1,'rapidxml::xml_node']]], - ['append_5fnode',['append_node',['../classrapidxml_1_1xml__node.html#a8696d098ecc9c4d2a646b43e91d58e31',1,'rapidxml::xml_node']]], - ['attribute_5fiterator',['attribute_iterator',['../classrapidxml_1_1attribute__iterator.html',1,'rapidxml']]], - ['attribute_5fiterator',['attribute_iterator',['../classrapidxml_1_1attribute__iterator.html#a30a82132793bc59d4e7b20f5be6237b9',1,'rapidxml::attribute_iterator::attribute_iterator()'],['../classrapidxml_1_1attribute__iterator.html#a1109344dead88533ae4dd68cea5d9613',1,'rapidxml::attribute_iterator::attribute_iterator(xml_node< Ch > *node)']]], - ['attribute_5fname_5fpred',['attribute_name_pred',['../structrapidxml_1_1xml__document_1_1attribute__name__pred.html',1,'rapidxml::xml_document']]], - ['attribute_5fvalue_5fpred',['attribute_value_pred',['../structrapidxml_1_1xml__document_1_1attribute__value__pred.html',1,'rapidxml::xml_document']]], - ['attribute_5fvalue_5fpure_5fpred',['attribute_value_pure_pred',['../structrapidxml_1_1xml__document_1_1attribute__value__pure__pred.html',1,'rapidxml::xml_document']]], - ['availablecells',['availableCells',['../class_world_streamer.html#a9375d05ed61838e557d7eb4a1cf36ac5',1,'WorldStreamer']]] + ['camera',['Camera',['../class_low_level_renderer2_d_1_1_camera.html',1,'LowLevelRenderer2D']]], + ['camera',['Camera',['../class_camera.html',1,'']]], + ['color',['Color',['../class_color.html',1,'']]], + ['comparespritebyname',['CompareSpriteByName',['../struct_compare_sprite_by_name.html',1,'']]], + ['createentity',['createEntity',['../class_entity_factory.html#a3aa5cd5100c9cf9891596ffdad675669',1,'EntityFactory']]], + ['createmaincharacter',['createMainCharacter',['../class_entity_factory.html#a1cb3be59b369c47c853cd35a770b3bfa',1,'EntityFactory']]], + ['createphysicsbox',['createPhysicsBox',['../class_physics_system.html#a60ce8b47b8b509506d20d4f87b4243b2',1,'PhysicsSystem']]], + ['createphysicsboxkinematic',['createPhysicsBoxKinematic',['../class_physics_system.html#a6092d628627413bf466bdf81a76c2496',1,'PhysicsSystem']]], + ['createphysicscircle',['createPhysicsCircle',['../class_physics_system.html#ac246e4403059f9a08efa6913df402aca',1,'PhysicsSystem']]], + ['createphysicscirclekinematic',['createPhysicsCircleKinematic',['../class_physics_system.html#a7c97407a7ef35572d9ebe5e1e2db3df3',1,'PhysicsSystem']]], + ['createxmlnode',['createXmlNode',['../class_entity.html#a8b76053b92d14f54ea2a096dae2c667e',1,'Entity::createXmlNode()'],['../class_graphics_component.html#a0aa72b1c36e3fdfa0e0de4d242a41e65',1,'GraphicsComponent::createXmlNode()'],['../class_physics_component.html#a5a2e3761a13d45a4dd38fe3b69253332',1,'PhysicsComponent::createXmlNode()'],['../class_sprite_status.html#af27ee28a71914590501f4482277d0065',1,'SpriteStatus::createXmlNode()'],['../class_physics_box.html#ab1f504cb2f8aeae61b06047c33cda9a9',1,'PhysicsBox::createXmlNode()'],['../class_physics_circle.html#a6c238978789f221d65464df879e5b898',1,'PhysicsCircle::createXmlNode()']]] ]; diff --git a/doc/doxy/html/search/all_10.html b/doc/doxy/html/search/all_10.html index c55c836..2abed7b 100644 --- a/doc/doxy/html/search/all_10.html +++ b/doc/doxy/html/search/all_10.html @@ -1,7 +1,7 @@ - + diff --git a/doc/doxy/html/search/all_10.js b/doc/doxy/html/search/all_10.js index babb621..06c403c 100644 --- a/doc/doxy/html/search/all_10.js +++ b/doc/doxy/html/search/all_10.js @@ -1,67 +1,4 @@ var searchData= [ - ['r',['r',['../class_color.html#a3958a556b47d2de3dd45c75aac833c20',1,'Color']]], - ['rapidxml',['rapidxml',['../namespacerapidxml.html',1,'']]], - ['rapidxml_2ehpp',['rapidxml.hpp',['../rapidxml_8hpp.html',1,'']]], - ['rapidxml_5falignment',['RAPIDXML_ALIGNMENT',['../rapidxml_8hpp.html#ad3344fdba5167e17f48a8b2318731198',1,'rapidxml.hpp']]], - ['rapidxml_5fdynamic_5fpool_5fsize',['RAPIDXML_DYNAMIC_POOL_SIZE',['../rapidxml_8hpp.html#a68d5603b71691d9dd745e45159259aa3',1,'rapidxml.hpp']]], - ['rapidxml_5fiterators_2ehpp',['rapidxml_iterators.hpp',['../rapidxml__iterators_8hpp.html',1,'']]], - ['rapidxml_5fparse_5ferror',['RAPIDXML_PARSE_ERROR',['../rapidxml_8hpp.html#a65f2be309896ffb841997d467c2f4fff',1,'rapidxml.hpp']]], - ['rapidxml_5fprint_2ehpp',['rapidxml_print.hpp',['../rapidxml__print_8hpp.html',1,'']]], - ['rapidxml_5fstatic_5fpool_5fsize',['RAPIDXML_STATIC_POOL_SIZE',['../rapidxml_8hpp.html#a001304844ab478e3b213749fc8d72ca2',1,'rapidxml.hpp']]], - ['rapidxml_5futils_2ehpp',['rapidxml_utils.hpp',['../rapidxml__utils_8hpp.html',1,'']]], - ['ready',['READY',['../class_resource.html#aefd3725a9fbea9db23e42c81be3b7f0da2baa69eafc7204f3bd8648eba580c489',1,'Resource']]], - ['reference',['reference',['../classrapidxml_1_1node__iterator.html#ad7fabbcb7d3d9e4e220299c5475b9e9c',1,'rapidxml::node_iterator::reference()'],['../classrapidxml_1_1attribute__iterator.html#a097343e44557de14de86b470d3f917d9',1,'rapidxml::attribute_iterator::reference()']]], - ['release',['RELEASE',['../class_resource_request.html#a554dcb9b16e2463d423c53cae5d5d174a7d649ef069df9885e382417c79f3d5cd',1,'ResourceRequest']]], - ['releasecell',['releaseCell',['../class_resource_manager.html#ac66406a2fed21469f50154f9abd84788',1,'ResourceManager']]], - ['releasetext',['releaseText',['../class_resource_manager.html#a75b591257254fd9583ec034c1d1c5e37',1,'ResourceManager']]], - ['releasetexture',['releaseTexture',['../class_resource_manager.html#a47b4a313293c4f2bd398175825a31697',1,'ResourceManager']]], - ['remove_5fall_5fattributes',['remove_all_attributes',['../classrapidxml_1_1xml__node.html#aa8d5d9484aa1eb5ff1841a073c84c1aa',1,'rapidxml::xml_node']]], - ['remove_5fall_5fnodes',['remove_all_nodes',['../classrapidxml_1_1xml__node.html#a95735358b079ae0adcfbbac69aa1fbc3',1,'rapidxml::xml_node']]], - ['remove_5fattribute',['remove_attribute',['../classrapidxml_1_1xml__node.html#a6f97b1b4f46a94a4587915df3c0c6b57',1,'rapidxml::xml_node']]], - ['remove_5ffirst_5fattribute',['remove_first_attribute',['../classrapidxml_1_1xml__node.html#aa95192d2a165cca16c551ed2a2a06aec',1,'rapidxml::xml_node']]], - ['remove_5ffirst_5fnode',['remove_first_node',['../classrapidxml_1_1xml__node.html#a62bf7b276cf7a651a3337f5e0a0ef6ac',1,'rapidxml::xml_node']]], - ['remove_5flast_5fattribute',['remove_last_attribute',['../classrapidxml_1_1xml__node.html#a1781a2cbedc9a51d609ad5b528125635',1,'rapidxml::xml_node']]], - ['remove_5flast_5fnode',['remove_last_node',['../classrapidxml_1_1xml__node.html#a9182512e948ec451a83f116cce7c7674',1,'rapidxml::xml_node']]], - ['remove_5fnode',['remove_node',['../classrapidxml_1_1xml__node.html#a98289923eb9e8889418a9eb0207ea35c',1,'rapidxml::xml_node']]], - ['removeentry',['removeEntry',['../class_resource_table.html#ac5904fce77e55b8941a2b2f645e28529',1,'ResourceTable']]], - ['renderer',['renderer',['../class_graphics_system.html#af92106e76669678a12a3330319ec9ce2',1,'GraphicsSystem::renderer()'],['../class_resource_texture_factory.html#ae5bbc5196be8f820033c610e1e99e72f',1,'ResourceTextureFactory::renderer()']]], - ['resource',['Resource',['../class_resource.html',1,'Resource'],['../class_resource.html#a5a87b23dc0327bbf8d53c6f38f637f48',1,'Resource::Resource()'],['../class_resource_table_entry.html#aad95f75896a2f619a34c49e7412c7147',1,'ResourceTableEntry::resource()']]], - ['resource_2ecpp',['resource.cpp',['../resource_8cpp.html',1,'']]], - ['resource_2ehpp',['resource.hpp',['../resource_8hpp.html',1,'']]], - ['resource_5fcell_2ecpp',['resource_cell.cpp',['../resource__cell_8cpp.html',1,'']]], - ['resource_5fcell_2ehpp',['resource_cell.hpp',['../resource__cell_8hpp.html',1,'']]], - ['resource_5fcell_5ffactory_2ecpp',['resource_cell_factory.cpp',['../resource__cell__factory_8cpp.html',1,'']]], - ['resource_5fcell_5ffactory_2ehpp',['resource_cell_factory.hpp',['../resource__cell__factory_8hpp.html',1,'']]], - ['resource_5ffactory_2ecpp',['resource_factory.cpp',['../resource__factory_8cpp.html',1,'']]], - ['resource_5ffactory_2ehpp',['resource_factory.hpp',['../resource__factory_8hpp.html',1,'']]], - ['resource_5fmanager',['RESOURCE_MANAGER',['../resource__manager_8hpp.html#a92152125191d80ad22c826e6af734cc0',1,'resource_manager.hpp']]], - ['resource_5fmanager_2ecpp',['resource_manager.cpp',['../resource__manager_8cpp.html',1,'']]], - ['resource_5fmanager_2ehpp',['resource_manager.hpp',['../resource__manager_8hpp.html',1,'']]], - ['resource_5frequest_2ecpp',['resource_request.cpp',['../resource__request_8cpp.html',1,'']]], - ['resource_5frequest_2ehpp',['resource_request.hpp',['../resource__request_8hpp.html',1,'']]], - ['resource_5ftable_2ecpp',['resource_table.cpp',['../resource__table_8cpp.html',1,'']]], - ['resource_5ftable_2ehpp',['resource_table.hpp',['../resource__table_8hpp.html',1,'']]], - ['resource_5ftable_5fentry_2ecpp',['resource_table_entry.cpp',['../resource__table__entry_8cpp.html',1,'']]], - ['resource_5ftable_5fentry_2ehpp',['resource_table_entry.hpp',['../resource__table__entry_8hpp.html',1,'']]], - ['resource_5ftext_2ecpp',['resource_text.cpp',['../resource__text_8cpp.html',1,'']]], - ['resource_5ftext_2ehpp',['resource_text.hpp',['../resource__text_8hpp.html',1,'']]], - ['resource_5ftext_5ffactory_2ecpp',['resource_text_factory.cpp',['../resource__text__factory_8cpp.html',1,'']]], - ['resource_5ftext_5ffactory_2ehpp',['resource_text_factory.hpp',['../resource__text__factory_8hpp.html',1,'']]], - ['resource_5ftexture_2ecpp',['resource_texture.cpp',['../resource__texture_8cpp.html',1,'']]], - ['resource_5ftexture_2ehpp',['resource_texture.hpp',['../resource__texture_8hpp.html',1,'']]], - ['resource_5ftexture_5ffactory',['RESOURCE_TEXTURE_FACTORY',['../resource__texture__factory_8hpp.html#a64e9fa996342c872799cbc2666d27ad3',1,'resource_texture_factory.hpp']]], - ['resource_5ftexture_5ffactory_2ecpp',['resource_texture_factory.cpp',['../resource__texture__factory_8cpp.html',1,'']]], - ['resource_5ftexture_5ffactory_2ehpp',['resource_texture_factory.hpp',['../resource__texture__factory_8hpp.html',1,'']]], - ['resourcecell',['ResourceCell',['../class_resource_cell.html',1,'ResourceCell'],['../class_resource_cell.html#a98e934a6ebe5a74bd6bd2e37288852ac',1,'ResourceCell::ResourceCell()']]], - ['resourcecellfactory',['ResourceCellFactory',['../class_resource_cell_factory.html',1,'ResourceCellFactory'],['../class_resource_cell.html#a3e7fe1c5f821ecd2507b32d87582db69',1,'ResourceCell::ResourceCellFactory()'],['../class_resource_manager.html#a2bac0dbf55db30dde330bbfa091c464a',1,'ResourceManager::resourceCellFactory()']]], - ['resourcefactory',['ResourceFactory',['../class_resource_factory.html',1,'']]], - ['resourcemanager',['ResourceManager',['../class_resource_manager.html',1,'ResourceManager'],['../class_resource.html#a54c1252abc87a78a301e6b6984470408',1,'Resource::ResourceManager()'],['../class_resource_cell.html#a54c1252abc87a78a301e6b6984470408',1,'ResourceCell::ResourceManager()'],['../class_resource_text.html#a54c1252abc87a78a301e6b6984470408',1,'ResourceText::ResourceManager()'],['../class_resource_texture.html#a54c1252abc87a78a301e6b6984470408',1,'ResourceTexture::ResourceManager()'],['../class_resource_manager.html#a3b32babd2e81909bbd90d7f2d566fadb',1,'ResourceManager::ResourceManager()']]], - ['resourcerequest',['ResourceRequest',['../class_resource_request.html',1,'ResourceRequest'],['../class_resource_request.html#a226cbfdb145a5dd110b1ea6dc15d69a8',1,'ResourceRequest::ResourceRequest()'],['../class_resource_request.html#a27f3a9c6644174c9aa7450d0a7888eac',1,'ResourceRequest::ResourceRequest(Type type, std::string name)']]], - ['resourcetable',['ResourceTable',['../class_resource_table.html',1,'ResourceTable'],['../class_resource_table_entry.html#aa6705f9749bc983f7904d4202f085bd6',1,'ResourceTableEntry::ResourceTable()'],['../class_resource_manager.html#a0ce884eb5fd57055db2970c570884e57',1,'ResourceManager::resourceTable()']]], - ['resourcetableentry',['ResourceTableEntry',['../class_resource_table_entry.html',1,'ResourceTableEntry'],['../class_resource_table_entry.html#ac463465b9de5e180c790179c766fc0c8',1,'ResourceTableEntry::ResourceTableEntry()'],['../class_resource_table_entry.html#af053e9fee00593eb4a995659f07670a7',1,'ResourceTableEntry::ResourceTableEntry(Resource *resource)']]], - ['resourcetext',['ResourceText',['../class_resource_text.html',1,'ResourceText'],['../class_resource_text.html#a49995d8e8c136f80c3add872e9c8d430',1,'ResourceText::ResourceText()']]], - ['resourcetextfactory',['ResourceTextFactory',['../class_resource_text_factory.html',1,'ResourceTextFactory'],['../class_resource_text.html#ab768651d1f551def3709917a9de34f86',1,'ResourceText::ResourceTextFactory()'],['../class_resource_manager.html#abc23438b5c7530e1d9c1580d4838650c',1,'ResourceManager::resourceTextFactory()']]], - ['resourcetexture',['ResourceTexture',['../class_resource_texture.html',1,'ResourceTexture'],['../class_sprite.html#a8591d0bb339e69230e7d479dceef6b65',1,'Sprite::resourceTexture()'],['../class_resource_texture.html#a2a0b9d7eda9d5a302228ec019a7eeba4',1,'ResourceTexture::ResourceTexture()']]], - ['resourcetexturefactory',['ResourceTextureFactory',['../class_resource_texture_factory.html',1,'ResourceTextureFactory'],['../class_resource_manager.html#a0aae5ee6f05d9c0abc873d8ff3a4825b',1,'ResourceManager::resourceTextureFactory()'],['../class_resource_texture.html#abeb70bc0a9997326b5ea07d325becac2',1,'ResourceTexture::ResourceTextureFactory()']]] + ['xmlstr',['xmlstr',['../namespacexmlstr.html',1,'']]] ]; diff --git a/doc/doxy/html/search/all_2.html b/doc/doxy/html/search/all_2.html index 95ded12..2c23ed4 100644 --- a/doc/doxy/html/search/all_2.html +++ b/doc/doxy/html/search/all_2.html @@ -1,7 +1,7 @@ - + diff --git a/doc/doxy/html/search/all_2.js b/doc/doxy/html/search/all_2.js index 9e4c104..c499fda 100644 --- a/doc/doxy/html/search/all_2.js +++ b/doc/doxy/html/search/all_2.js @@ -1,6 +1,5 @@ var searchData= [ - ['b',['b',['../class_color.html#a33e482be18d6ea31d2b403bee13683b7',1,'Color']]], - ['becomeready',['becomeReady',['../class_graphics_component.html#a24bc771dc0429b2242df65dcd96189d0',1,'GraphicsComponent::becomeReady()'],['../class_sprite.html#a2a98589b812f519b57db97ad96ab7e15',1,'Sprite::becomeReady()']]], - ['body',['body',['../class_physics_box.html#a9863f5824d0bc238348f7ff2bc3b38af',1,'PhysicsBox']]] + ['destroydispatcher',['destroyDispatcher',['../class_graphics_component.html#a3de01ba771b3ef54609c01c2a641faa4',1,'GraphicsComponent::destroyDispatcher()'],['../class_physics_component.html#a3c17f238e0ea725fc91a151591bf9510',1,'PhysicsComponent::destroyDispatcher()'],['../class_sprite_status.html#a6670f73fdd13aedb472f2b67ffec46c4',1,'SpriteStatus::destroyDispatcher()'],['../class_physics_box.html#a1e8ca933d2f827edc1a0f88bfbe0ab73',1,'PhysicsBox::destroyDispatcher()'],['../class_physics_circle.html#addccbe0fa780a1ff7a8347ce23e8f515',1,'PhysicsCircle::destroyDispatcher()']]], + ['draw',['draw',['../class_texture.html#aa282cf39212aa2d32c0f6a3098ef32d3',1,'Texture::draw(const Vec2f &pos, const Vec2f &scale, const LowLevelRenderer2D::SpriteVbo &sVbo) const '],['../class_texture.html#a625a23eee608264fde2795470788178d',1,'Texture::draw(const Vec2f &pos, const LowLevelRenderer2D::SpriteVbo &sVbo) const ']]] ]; diff --git a/doc/doxy/html/search/all_3.html b/doc/doxy/html/search/all_3.html index 4d312d0..7ddb0cf 100644 --- a/doc/doxy/html/search/all_3.html +++ b/doc/doxy/html/search/all_3.html @@ -1,7 +1,7 @@ - + diff --git a/doc/doxy/html/search/all_3.js b/doc/doxy/html/search/all_3.js index 846be66..93872ce 100644 --- a/doc/doxy/html/search/all_3.js +++ b/doc/doxy/html/search/all_3.js @@ -1,34 +1,8 @@ var searchData= [ - ['camera',['Camera',['../class_camera.html',1,'Camera'],['../class_camera.html#a01f94c3543f56ede7af49dc778f19331',1,'Camera::Camera()'],['../class_low_level_renderer2_d_1_1_camera.html#abd2df7a761fa945563c467c58f53cc8d',1,'LowLevelRenderer2D::Camera::Camera()'],['../class_graphics_system.html#a5ca4e3274f0ad5932539d417aed2017f',1,'GraphicsSystem::camera()'],['../class_low_level_renderer2_d.html#a7d759279aca48f499a079b49b2192a0f',1,'LowLevelRenderer2D::camera()']]], - ['camera',['Camera',['../class_low_level_renderer2_d_1_1_camera.html',1,'LowLevelRenderer2D']]], - ['camera_2ecpp',['camera.cpp',['../camera_8cpp.html',1,'']]], - ['camera_2ehpp',['camera.hpp',['../camera_8hpp.html',1,'']]], - ['cell',['cell',['../class_main_character.html#a129a88a7adbdf9bd74617d01649e0af9',1,'MainCharacter::cell()'],['../class_position.html#a73f049d15c480e8771c88a25b56fa46c',1,'Position::cell()']]], - ['cells',['cells',['../class_world_window.html#af263192d1406e041e0211f944721d764',1,'WorldWindow']]], - ['cellsize',['cellSize',['../class_world_streamer.html#a9ac6b1160741fbe482ab4b7cf7a8823d',1,'WorldStreamer']]], - ['celltoxmldocument',['cellToXmlDocument',['../world__streamer_8cpp.html#a04f5c0ff531709e65d46ddc922e04a36',1,'world_streamer.cpp']]], - ['clear',['clear',['../classrapidxml_1_1memory__pool.html#aad377c835fdaed1cb2cc9df194cf84e4',1,'rapidxml::memory_pool::clear()'],['../classrapidxml_1_1xml__document.html#a826929ff54242532198701f19ff5f83f',1,'rapidxml::xml_document::clear()'],['../class_low_level_renderer2_d.html#a7e6fc980198d8732dd3707097345ffc3',1,'LowLevelRenderer2D::clear()']]], - ['clone_5fnode',['clone_node',['../classrapidxml_1_1memory__pool.html#a0a10679fc17597d339a0dc107f8a94ac',1,'rapidxml::memory_pool']]], - ['colmodelmatrix',['colModelMatrix',['../class_low_level_renderer2_d.html#ac355a4c75498874f42e0d028b0789afa',1,'LowLevelRenderer2D']]], - ['color',['Color',['../class_color.html',1,'Color'],['../class_color.html#a373c542c99fb83ce9c7c08aae76b2718',1,'Color::Color(float r, float g, float b)'],['../class_color.html#a6e4627389673c8b5cce81bf3eec79938',1,'Color::Color(float r, float g, float b, float a)'],['../class_low_level_renderer2_d.html#a1107a2e73bbc6dc108df3ac9d97e0ff2',1,'LowLevelRenderer2D::color()']]], - ['color_2ehpp',['color.hpp',['../color_8hpp.html',1,'']]], - ['colorshaderprogram',['colorShaderProgram',['../class_low_level_renderer2_d.html#a5cd868504430c036d4f85a93e58efee5',1,'LowLevelRenderer2D']]], - ['colprojmatrix',['colProjMatrix',['../class_low_level_renderer2_d.html#aa3afbaa1172c3ae4c2244387327a5eee',1,'LowLevelRenderer2D']]], - ['colvao',['colVAO',['../class_low_level_renderer2_d.html#a04e55727c8774c295eb1369a31390794',1,'LowLevelRenderer2D']]], - ['colviewmatrix',['colViewMatrix',['../class_low_level_renderer2_d.html#aee5bf8bd3d5a4e6808b56df1b45af5cb',1,'LowLevelRenderer2D']]], - ['components',['components',['../class_graphics_system.html#aa0115b4884d29edbe83a0807242d7745',1,'GraphicsSystem']]], - ['cond',['cond',['../class_work_queue.html#a7ad07671ec0846815f17fd4ee59602c9',1,'WorkQueue']]], - ['count',['count',['../class_resource_table_entry.html#aad012e80402ca061a060eef6e80c0538',1,'ResourceTableEntry']]], - ['count_5fattributes',['count_attributes',['../namespacerapidxml.html#a6255d15e5d8ad12ebcd7c60da51c97e2',1,'rapidxml']]], - ['count_5fchildren',['count_children',['../namespacerapidxml.html#a21c1cf2814019385e6b8d09e75af1d34',1,'rapidxml']]], - ['countid',['countId',['../class_entity_factory.html#aafb1308bcf255a8f2e09cf498bf955ba',1,'EntityFactory']]], - ['createentity',['createEntity',['../class_entity_factory.html#a3aa5cd5100c9cf9891596ffdad675669',1,'EntityFactory']]], - ['createmaincharacter',['createMainCharacter',['../class_entity_factory.html#a1cb3be59b369c47c853cd35a770b3bfa',1,'EntityFactory']]], - ['createphysicsbox',['createPhysicsBox',['../class_physics_box_factory.html#a4f424dbf12659af10323da71c58ebac8',1,'PhysicsBoxFactory::createPhysicsBox()'],['../class_physics_system.html#a60ce8b47b8b509506d20d4f87b4243b2',1,'PhysicsSystem::createPhysicsBox()']]], - ['createphysicsboxkinematic',['createPhysicsBoxKinematic',['../class_physics_box_factory.html#a95bce678bb7dd261b190a31dd5cb902e',1,'PhysicsBoxFactory::createPhysicsBoxKinematic()'],['../class_physics_system.html#a6092d628627413bf466bdf81a76c2496',1,'PhysicsSystem::createPhysicsBoxKinematic()']]], - ['createresource',['createResource',['../class_resource_cell_factory.html#ab385d80dd813e7ae0a10cc9c1a35a164',1,'ResourceCellFactory::createResource()'],['../class_resource_factory.html#aa0b711558e98babc6fccbbdd32d3db7c',1,'ResourceFactory::createResource()'],['../class_resource_text_factory.html#afecad502ae47d393adf0528350fc6236',1,'ResourceTextFactory::createResource()'],['../class_resource_texture_factory.html#a9098659f1cf8502c5da3d796370f7393',1,'ResourceTextureFactory::createResource()']]], - ['createsprite',['createSprite',['../class_graphics_system.html#a5072115e40a9fbeab364367f42df9d3b',1,'GraphicsSystem::createSprite()'],['../class_sprite_factory.html#a6966a937d9d0de5fdd4999af17fb27c9',1,'SpriteFactory::createSprite()']]], - ['createtexture',['createTexture',['../class_low_level_renderer2_d.html#a06f3cbd5111d8e4f6179c24bbcd3463d',1,'LowLevelRenderer2D']]], - ['createxmlnode',['createXmlNode',['../class_entity.html#a8b76053b92d14f54ea2a096dae2c667e',1,'Entity::createXmlNode()'],['../class_physics_box.html#ab1f504cb2f8aeae61b06047c33cda9a9',1,'PhysicsBox::createXmlNode()'],['../class_physics_component.html#a5a2e3761a13d45a4dd38fe3b69253332',1,'PhysicsComponent::createXmlNode()'],['../class_graphics_component.html#a862cb8e27d304c93b579501305a0574e',1,'GraphicsComponent::createXmlNode()'],['../class_sprite.html#a59ed6e725aef75c23866f3c01fff53f4',1,'Sprite::createXmlNode()']]] + ['engine',['Engine',['../class_engine.html',1,'']]], + ['entity',['Entity',['../class_entity.html',1,'']]], + ['entityfactory',['EntityFactory',['../class_entity_factory.html',1,'']]], + ['eventhandler',['EventHandler',['../class_event_handler.html',1,'']]], + ['exception',['Exception',['../class_exception.html',1,'']]] ]; diff --git a/doc/doxy/html/search/all_4.html b/doc/doxy/html/search/all_4.html index d72a910..eab9eb1 100644 --- a/doc/doxy/html/search/all_4.html +++ b/doc/doxy/html/search/all_4.html @@ -1,7 +1,7 @@ - + diff --git a/doc/doxy/html/search/all_4.js b/doc/doxy/html/search/all_4.js index 1f87e73..2b0a7a1 100644 --- a/doc/doxy/html/search/all_4.js +++ b/doc/doxy/html/search/all_4.js @@ -1,22 +1,9 @@ var searchData= [ - ['data',['data',['../classrapidxml_1_1file.html#af1c71d65862c7af14e4708e32a80c1de',1,'rapidxml::file::data()'],['../classrapidxml_1_1file.html#aceb8f5ebd577c946a74b1ea3e2e0c576',1,'rapidxml::file::data() const ']]], - ['deccount',['decCount',['../class_resource_table_entry.html#ab7249bcc669ba73eb1732fe85e35ff41',1,'ResourceTableEntry']]], - ['decentry',['decEntry',['../class_resource_table.html#a568ed25b58a5ac7a24b72190bbb14e3b',1,'ResourceTable']]], - ['default_5finit_5fid',['DEFAULT_INIT_ID',['../class_entity_factory.html#add8771c1badd43de5bddd7e0684ef811',1,'EntityFactory']]], - ['demo_5fbox2d_2ecpp',['demo_box2d.cpp',['../demo__box2d_8cpp.html',1,'']]], - ['destroy_5fsprite',['DESTROY_SPRITE',['../class_graphics_system.html#a6f5863d51b83ae1c6abebf36933e8c6bad6a6948b34645a5d65f971f98e39d527',1,'GraphicsSystem']]], - ['destroydispatcher',['destroyDispatcher',['../class_physics_box.html#a1e8ca933d2f827edc1a0f88bfbe0ab73',1,'PhysicsBox::destroyDispatcher()'],['../class_physics_component.html#a3c17f238e0ea725fc91a151591bf9510',1,'PhysicsComponent::destroyDispatcher()'],['../class_graphics_component.html#a3de01ba771b3ef54609c01c2a641faa4',1,'GraphicsComponent::destroyDispatcher()'],['../class_sprite.html#a6d304b7aee41b4da7eecf62b4bb85c90',1,'Sprite::destroyDispatcher()'],['../class_resource.html#ae33be645ae137088833fddb83ae50ef0',1,'Resource::destroyDispatcher()'],['../class_resource_cell.html#ab22194a82c2266e2c46223fa95253bb3',1,'ResourceCell::destroyDispatcher()'],['../class_resource_text.html#ad6dff24c7cef9e2b1ef0b533b7cb3592',1,'ResourceText::destroyDispatcher()'],['../class_resource_texture.html#a01e5f29128a800981f74c525dc6a7003',1,'ResourceTexture::destroyDispatcher()']]], - ['destroyentity',['destroyEntity',['../class_entity_factory.html#aa817dae26801da60e19574eab0c920fd',1,'EntityFactory']]], - ['destroygraphicscomponent',['destroyGraphicsComponent',['../class_graphics_system.html#aa0cd675bb7d0570408bfafe8fdb30412',1,'GraphicsSystem::destroyGraphicsComponent()'],['../class_sprite_factory.html#a488ae0285a77bea8a696564ed8bd2637',1,'SpriteFactory::destroyGraphicsComponent()']]], - ['destroyphysicsbox',['destroyPhysicsBox',['../class_physics_box_factory.html#a7cf439b78fc336c227582a60cc122684',1,'PhysicsBoxFactory::destroyPhysicsBox()'],['../class_physics_system.html#a39f19a0a018bff611d4fd15e54cc49ca',1,'PhysicsSystem::destroyPhysicsBox()']]], - ['destroyphysicscomponent',['destroyPhysicsComponent',['../class_physics_system.html#a8c868b02518913fdfbb6750e5a9897b2',1,'PhysicsSystem']]], - ['destroyresource',['destroyResource',['../class_resource_cell_factory.html#af891f02a899487bc01f95e717007efef',1,'ResourceCellFactory::destroyResource(Resource *resource)'],['../class_resource_cell_factory.html#a41b6ab948d25f7627e201aba3a4c3ab2',1,'ResourceCellFactory::destroyResource(ResourceCell *resource)'],['../class_resource_factory.html#a647a1c5b7039f5578d64504a8efe3988',1,'ResourceFactory::destroyResource()'],['../class_resource_text_factory.html#a705bf0a69b03e2d93125e7e6a63dc02b',1,'ResourceTextFactory::destroyResource(Resource *resource)'],['../class_resource_text_factory.html#aad56ec91b0fe43b40211c9eab0a0a9ed',1,'ResourceTextFactory::destroyResource(ResourceText *resource)'],['../class_resource_texture_factory.html#a5caa446a7a88260e776392e68de6a82a',1,'ResourceTextureFactory::destroyResource(ResourceTexture *resource)'],['../class_resource_texture_factory.html#ada974ffa407ac68ee8f79cb631558f11',1,'ResourceTextureFactory::destroyResource(Resource *resource)']]], - ['destroysprite',['destroySprite',['../class_graphics_system.html#adade4310940b54ce4eb1ff1371c04adc',1,'GraphicsSystem::destroySprite()'],['../class_sprite_factory.html#aaffa38bfbd94a898182455d3774b992a',1,'SpriteFactory::destroySprite()']]], - ['destroytexture',['destroyTexture',['../class_low_level_renderer2_d.html#af07ce8d2cb928f61e20c6e0c1d25e210',1,'LowLevelRenderer2D']]], - ['difference_5ftype',['difference_type',['../classrapidxml_1_1node__iterator.html#a5bdc462b980a52c5fa2d99ac9f4f4bff',1,'rapidxml::node_iterator::difference_type()'],['../classrapidxml_1_1attribute__iterator.html#accfd6d8527d32b427496b42f71a2e37a',1,'rapidxml::attribute_iterator::difference_type()']]], - ['doc',['doc',['../class_resource_cell.html#a910cafd7d6c1dd8b7ba12f100e9435d6',1,'ResourceCell']]], - ['document',['document',['../classrapidxml_1_1xml__attribute.html#a8b6d31d899e27f01bde35b53d98496ec',1,'rapidxml::xml_attribute::document()'],['../classrapidxml_1_1xml__node.html#adb6ad21a4590cf13d4a6a5036e3cdbbc',1,'rapidxml::xml_node::document()']]], - ['draw',['draw',['../class_graphics_component.html#aa9f8c55be356cea6840be46ca5a12f2e',1,'GraphicsComponent::draw()'],['../class_graphics_system.html#a80ac4f715bec45eb49c311aaaa65de9c',1,'GraphicsSystem::draw()'],['../class_low_level_renderer2_d.html#a1eaf6d27664641e7468abcae0dbaa6c7',1,'LowLevelRenderer2D::draw()'],['../class_sprite.html#adf081374d1c56dd5038b80ffa98d6dba',1,'Sprite::draw()']]], - ['drawcolorsquare',['drawColorSquare',['../class_low_level_renderer2_d.html#a91a35cc242c2c2683784d08cfee0e6f8',1,'LowLevelRenderer2D']]] + ['getentities',['getEntities',['../class_world_streamer.html#a00eb0f9564b6a59ef7b39e9906d2e161',1,'WorldStreamer::getEntities()'],['../class_test_world_streamer.html#ac90c700061a4aef9e27bd1e617486ea0',1,'TestWorldStreamer::getEntities()'],['../class_i_world_streamer.html#a98e18b0890b428792cc5420a753c4f16',1,'IWorldStreamer::getEntities()']]], + ['getheight',['getHeight',['../class_texture.html#a883bf64cca7d60f715bd056659a59f7d',1,'Texture']]], + ['getname',['getName',['../class_texture.html#af36f3061ad7bcb938663ab8fcb75cd7f',1,'Texture']]], + ['getwidth',['getWidth',['../class_texture.html#a19c09b94a868b83e979f601f68977ddb',1,'Texture']]], + ['graphicscomponent',['GraphicsComponent',['../class_graphics_component.html',1,'']]], + ['graphicssystem',['GraphicsSystem',['../class_graphics_system.html',1,'']]] ]; diff --git a/doc/doxy/html/search/all_5.html b/doc/doxy/html/search/all_5.html index 99ef726..4dfd1d5 100644 --- a/doc/doxy/html/search/all_5.html +++ b/doc/doxy/html/search/all_5.html @@ -1,7 +1,7 @@ - + diff --git a/doc/doxy/html/search/all_5.js b/doc/doxy/html/search/all_5.js index 6519d42..d92c399 100644 --- a/doc/doxy/html/search/all_5.js +++ b/doc/doxy/html/search/all_5.js @@ -1,19 +1,7 @@ var searchData= [ - ['end',['end',['../class_engine.html#a6d57430c791f4661c6409ed8e2f064bc',1,'Engine::end()'],['../class_i_world_streamer.html#ab1299e2f271d079e4e45b4d8865c2d83',1,'IWorldStreamer::end()'],['../class_test_world_streamer.html#a8ec2df3ae1966dc4dd072137ac97dd8d',1,'TestWorldStreamer::end()'],['../class_world_streamer.html#a22666f84a99ac6c82ffaae02146d3b86',1,'WorldStreamer::end()']]], - ['endgame',['endGame',['../class_engine.html#accb8cf1843e3b08dfdf794849397c2df',1,'Engine']]], - ['engine',['Engine',['../class_engine.html',1,'Engine'],['../class_engine.html#aa3174db5c31cd12de9ccca5ca048c1c7',1,'Engine::Engine()'],['../class_event_handler.html#a4c080972d807abed5037521b29c4417f',1,'EventHandler::engine()']]], - ['engine_2ecpp',['engine.cpp',['../engine_8cpp.html',1,'']]], - ['engine_2ehpp',['engine.hpp',['../engine_8hpp.html',1,'']]], - ['entities',['entities',['../class_test_world_streamer.html#a5e0b37fb544a40962fa52547d73ccaad',1,'TestWorldStreamer']]], - ['entity',['Entity',['../class_entity.html',1,'Entity'],['../class_graphics_component.html#a614439ccac0344926adc4c0165d64060',1,'GraphicsComponent::Entity()'],['../class_sprite.html#a614439ccac0344926adc4c0165d64060',1,'Sprite::Entity()'],['../class_entity.html#a980f368aa07ce358583982821533a54a',1,'Entity::Entity()']]], - ['entity_2ecpp',['entity.cpp',['../entity_8cpp.html',1,'']]], - ['entity_2ehpp',['entity.hpp',['../entity_8hpp.html',1,'']]], - ['entity_5ffactory_2ecpp',['entity_factory.cpp',['../entity__factory_8cpp.html',1,'']]], - ['entity_5ffactory_2ehpp',['entity_factory.hpp',['../entity__factory_8hpp.html',1,'']]], - ['entityfactory',['EntityFactory',['../class_entity_factory.html',1,'EntityFactory'],['../class_engine.html#ad77f3ff208af5c9656298a24eb935332',1,'Engine::entityFactory()'],['../class_i_world_streamer.html#ad63bdb89b6a726463ea6cb90f6e3b5b6',1,'IWorldStreamer::entityFactory()'],['../class_world_streamer.html#a8bb42cb0faac4adb5c1a1e3aab264dee',1,'WorldStreamer::entityFactory()'],['../class_entity.html#a6ebd07b4b60153d4b7a405e1fe75419b',1,'Entity::EntityFactory()'],['../class_main_character.html#a6ebd07b4b60153d4b7a405e1fe75419b',1,'MainCharacter::EntityFactory()'],['../class_entity_factory.html#abaf0c4ceaa682e55f69b0ceae230008a',1,'EntityFactory::EntityFactory()'],['../class_entity_factory.html#a351778e6c9bbd22ff5dd44f4b354bb67',1,'EntityFactory::EntityFactory(Engine *engine)']]], - ['event',['event',['../class_event_handler.html#a6005e950bef134642e7afe47fd70e43f',1,'EventHandler']]], - ['event_5fhandler_2ecpp',['event_handler.cpp',['../event__handler_8cpp.html',1,'']]], - ['event_5fhandler_2ehpp',['event_handler.hpp',['../event__handler_8hpp.html',1,'']]], - ['eventhandler',['EventHandler',['../class_event_handler.html',1,'EventHandler'],['../class_engine.html#a99d7370f5cc8f375dce2541899ccbaeb',1,'Engine::eventHandler()'],['../class_event_handler.html#a4505d59ca374eea21f14282c631d833d',1,'EventHandler::EventHandler()']]] + ['init',['init',['../class_world_streamer.html#a3255018427331cc893bd50979a19e03e',1,'WorldStreamer::init()'],['../class_i_world_streamer.html#a30ceb6682ef2aac15b868f4f175aaf8a',1,'IWorldStreamer::init()']]], + ['isloaded',['isLoaded',['../class_texture.html#aade5860cd91b37acbcedf135b7d9a2fe',1,'Texture']]], + ['isready',['isReady',['../class_graphics_component.html#a4ccda0567ab0317ffb02d638e6396890',1,'GraphicsComponent::isReady()'],['../class_sprite_status.html#af970fdd79d53270033d7902cb3f28c55',1,'SpriteStatus::isReady()'],['../class_sprite.html#a0ebc48730a409500def754ec4476bb51',1,'Sprite::isReady()'],['../class_texture.html#ad84d17750c03aa92826f077921f97319',1,'Texture::isReady()']]], + ['iworldstreamer',['IWorldStreamer',['../class_i_world_streamer.html',1,'']]] ]; diff --git a/doc/doxy/html/search/all_6.html b/doc/doxy/html/search/all_6.html index 6133ab3..b98d731 100644 --- a/doc/doxy/html/search/all_6.html +++ b/doc/doxy/html/search/all_6.html @@ -1,7 +1,7 @@ - + diff --git a/doc/doxy/html/search/all_6.js b/doc/doxy/html/search/all_6.js index c4cd889..0084955 100644 --- a/doc/doxy/html/search/all_6.js +++ b/doc/doxy/html/search/all_6.js @@ -1,12 +1,7 @@ var searchData= [ - ['file',['file',['../classrapidxml_1_1file.html',1,'rapidxml']]], - ['file',['file',['../classrapidxml_1_1file.html#ae881a3cab1fe7152d45c92a8d7606cb3',1,'rapidxml::file::file(const char *filename)'],['../classrapidxml_1_1file.html#a90707ccd991cc392dcf4bef37eed9d1f',1,'rapidxml::file::file(std::basic_istream< Ch > &stream)']]], - ['file_5fto_5fstring_2ecpp',['file_to_string.cpp',['../file__to__string_8cpp.html',1,'']]], - ['file_5fto_5fstring_2ehpp',['file_to_string.hpp',['../file__to__string_8hpp.html',1,'']]], - ['filetostring',['fileToString',['../parse__xml_8cpp.html#acc8caadc050e50212bf047025128d836',1,'fileToString(const char *fileName): parse_xml.cpp'],['../file__to__string_8cpp.html#a1c5879dbffd0a5353b35f2813ea57887',1,'fileToString(const char *fileName): file_to_string.cpp'],['../file__to__string_8hpp.html#a1c5879dbffd0a5353b35f2813ea57887',1,'fileToString(const char *fileName): parse_xml.cpp']]], - ['first_5fattribute',['first_attribute',['../classrapidxml_1_1xml__node.html#ae426802be58114ffc41bf30ac6b8c37d',1,'rapidxml::xml_node']]], - ['first_5fnode',['first_node',['../classrapidxml_1_1xml__node.html#a2dedeb4e04bb35e06a9a7bddf6ba652d',1,'rapidxml::xml_node']]], - ['fps',['fps',['../class_engine.html#aa307bed929696142a577c476b63f5df0',1,'Engine']]], - ['free',['free',['../class_resource.html#a18b75bc5ab3eaa1719292fe6f2848100',1,'Resource::free()'],['../class_resource_cell.html#acfa4b2e3889a0a614c81b48d4831d6b0',1,'ResourceCell::free()'],['../class_resource_text.html#a8beeae30316a57629a545294a8e8da8d',1,'ResourceText::free()'],['../class_resource_texture.html#a21ed35a84be06c5e0cdf3f1141abc005',1,'ResourceTexture::free()']]] + ['launch',['launch',['../class_resource_manager.html#a9e887254c90e3d6802883f4fedde61f1',1,'ResourceManager']]], + ['loadresource',['loadResource',['../class_texture.html#a5faf97f474592c2bc8e71148cd6a3751',1,'Texture']]], + ['loadtogpu',['loadToGPU',['../class_texture.html#ae64c917248ac22019a3c2fdeb05e4e01',1,'Texture']]], + ['lowlevelrenderer2d',['LowLevelRenderer2D',['../class_low_level_renderer2_d.html',1,'']]] ]; diff --git a/doc/doxy/html/search/all_7.html b/doc/doxy/html/search/all_7.html index 5748125..ef20222 100644 --- a/doc/doxy/html/search/all_7.html +++ b/doc/doxy/html/search/all_7.html @@ -1,7 +1,7 @@ - + diff --git a/doc/doxy/html/search/all_7.js b/doc/doxy/html/search/all_7.js index 265a414..f5c955a 100644 --- a/doc/doxy/html/search/all_7.js +++ b/doc/doxy/html/search/all_7.js @@ -1,44 +1,4 @@ var searchData= [ - ['g',['g',['../class_color.html#a5defbb21620e480e556181772d665f34',1,'Color']]], - ['genfile',['genfile',['../namespacegenfile.html',1,'']]], - ['genfile_2epy',['genfile.py',['../genfile_8py.html',1,'']]], - ['getcamera',['getCamera',['../class_graphics_system.html#ad92b3ffc5de172a53ffd4932f1f7547c',1,'GraphicsSystem::getCamera()'],['../class_low_level_renderer2_d.html#ae0df346f0b068c435c3bd89c4e18f3a8',1,'LowLevelRenderer2D::getCamera()']]], - ['getcell',['getCell',['../class_main_character.html#ab1c161793006236c364430e6d172980b',1,'MainCharacter::getCell() const '],['../class_main_character.html#ad1c7cc786ebb830fcca1510fb1f6c157',1,'MainCharacter::getCell()'],['../class_position.html#ad6321ae4081f00752fb94bd628aebede',1,'Position::getCell() const '],['../class_position.html#ab913fb0f7eafded758339c240088d96f',1,'Position::getCell()'],['../test__is__cell__file_8cpp.html#ad15598a21666e3ffae66664da20c7282',1,'getCell(string fileName): test_is_cell_file.cpp'],['../world__streamer_8cpp.html#ad15598a21666e3ffae66664da20c7282',1,'getCell(string fileName): world_streamer.cpp']]], - ['getcellsize',['getCellSize',['../class_engine.html#a654b23212c98bd7224b2b80bc2ca91f0',1,'Engine::getCellSize()'],['../class_i_world_streamer.html#a984caf2eb6c96ec45f3c5c65cddb9819',1,'IWorldStreamer::getCellSize()'],['../class_world_streamer.html#aa8fd9c20f2802310f27980ffe3bc3d1c',1,'WorldStreamer::getCellSize()']]], - ['getcount',['getCount',['../class_resource_table.html#aa9cc60d687951d93339a2626c6c039c2',1,'ResourceTable::getCount()'],['../class_resource_table_entry.html#affb3700355e72352a8bc54654d34677f',1,'ResourceTableEntry::getCount()']]], - ['getdocument',['getDocument',['../class_resource_cell.html#ae6433f6e11c05f630553270ae698f67c',1,'ResourceCell']]], - ['getentities',['getEntities',['../class_i_world_streamer.html#a98e18b0890b428792cc5420a753c4f16',1,'IWorldStreamer::getEntities()'],['../class_test_world_streamer.html#ac90c700061a4aef9e27bd1e617486ea0',1,'TestWorldStreamer::getEntities()'],['../class_world_streamer.html#a00eb0f9564b6a59ef7b39e9906d2e161',1,'WorldStreamer::getEntities()'],['../class_world_window.html#a3042f99c79c8494e80555926f2437be9',1,'WorldWindow::getEntities()']]], - ['getentityfactory',['getEntityFactory',['../class_i_world_streamer.html#a061b134bf4cd4ceced0f6eb14a23a7cc',1,'IWorldStreamer']]], - ['getgraphicscomponent',['getGraphicsComponent',['../class_entity.html#a56a8cf98ad32020ee71196b5fba03edc',1,'Entity']]], - ['getgraphicssystem',['getGraphicsSystem',['../class_engine.html#a3f26667f69fbb65e8d542c8ec93b9b1b',1,'Engine::getGraphicsSystem()'],['../class_sprite_factory.html#ab00484a26072ce0703d641bf19087bd7',1,'SpriteFactory::getGraphicsSystem()']]], - ['getheight',['getHeight',['../class_camera.html#af34538e81e41b215ffcae141b238a84d',1,'Camera::getHeight()'],['../class_low_level_renderer2_d_1_1_camera.html#aa69b3e3c0f8be2b283cc1e478edc954c',1,'LowLevelRenderer2D::Camera::getHeight()'],['../class_low_level_renderer2_d_1_1_texture.html#a0a5e34ba7428004e5ba4408135302794',1,'LowLevelRenderer2D::Texture::getHeight()']]], - ['getid',['getId',['../class_entity.html#ac491ad0371fe54e82aa82ea39fa8aa93',1,'Entity']]], - ['getmaincharacter',['getMainCharacter',['../class_engine.html#adb95009cbd48e4dff024441ed2a6c97a',1,'Engine']]], - ['getname',['getName',['../class_resource.html#a0d47fabac6aa43499753d2f42208cdb9',1,'Resource::getName()'],['../class_resource_request.html#af491bc9f7e62484d641ab82faedc03d9',1,'ResourceRequest::getName()']]], - ['getnode',['getNode',['../class_resource_cell.html#aa4127f0a904a92f9128b4f5339e92875',1,'ResourceCell']]], - ['getoffset',['getOffset',['../class_position.html#a17ad01710463b1447cb55ffd59522890',1,'Position::getOffset() const '],['../class_position.html#a389c33b073c67b578e3f6f5390fa4e67',1,'Position::getOffset()']]], - ['getphysicscomponent',['getPhysicsComponent',['../class_entity.html#aa182100129320fa6c1977fdcf689258a',1,'Entity']]], - ['getphysicssystem',['getPhysicsSystem',['../class_engine.html#a81ed5136bb3047f9edd889ac83a97a84',1,'Engine::getPhysicsSystem()'],['../class_physics_box_factory.html#aea24907a7c79014fcdcd8f885c2ccb04',1,'PhysicsBoxFactory::getPhysicsSystem()']]], - ['getpointer',['getPointer',['../class_resource_table_entry.html#a605e7d441e1e8293f047cd652703b3f8',1,'ResourceTableEntry']]], - ['getposition',['getPosition',['../class_entity.html#a1539040ddf3a5b9d0a7acd8907785c0d',1,'Entity::getPosition()'],['../class_physics_box.html#a189de09086e5a6b79819cf92dd086468',1,'PhysicsBox::getPosition()'],['../class_physics_component.html#aeee07d4204bae0ff7747f5c0009907a1',1,'PhysicsComponent::getPosition()'],['../class_camera.html#a59e7e449271a6759e56e274ed6d6afdf',1,'Camera::getPosition()'],['../class_graphics_component.html#a01e4202e9debaa52598caec001dc0d47',1,'GraphicsComponent::getPosition() const '],['../class_graphics_component.html#aedc03dd14d72edb4b53b2085793f2de9',1,'GraphicsComponent::getPosition()'],['../class_low_level_renderer2_d_1_1_camera.html#a4d148d4b5c3bb329f7e9d08dd284497d',1,'LowLevelRenderer2D::Camera::getPosition()']]], - ['getpriority',['getPriority',['../class_graphics_component.html#adeb08c9a697f4dd8c1c9696105ae65af',1,'GraphicsComponent']]], - ['getrenderer',['getRenderer',['../class_graphics_system.html#ae64470872deb4df6061b0cd7b4dcea98',1,'GraphicsSystem::getRenderer()'],['../class_resource_texture_factory.html#afc65c80687513e5eee089a68baff8be5',1,'ResourceTextureFactory::getRenderer()']]], - ['getresource',['getResource',['../class_resource_table.html#aa46979cf59f719810b0d4d036c7765a1',1,'ResourceTable']]], - ['getscale',['getScale',['../class_graphics_component.html#ac737b82b77b1ea15ddbf721ed3ea519e',1,'GraphicsComponent']]], - ['getsingleton',['getSingleton',['../class_resource_manager.html#a32a3d2c3f98b5a34f8da4d6c9632e021',1,'ResourceManager']]], - ['getstatus',['getStatus',['../class_resource.html#abc9f11c8d49c927092988827a8ee895c',1,'Resource']]], - ['gettext',['getText',['../class_resource_text.html#aa0b1227d39cc8c3e11735879f5c83b32',1,'ResourceText']]], - ['gettexture',['getTexture',['../class_resource_texture.html#a969b484d9420210b577c510d3a1f2499',1,'ResourceTexture']]], - ['gettype',['getType',['../class_resource_request.html#a32bb9f0786563b6bae59d057e2467457',1,'ResourceRequest']]], - ['gettypeofentity',['getTypeOfEntity',['../class_entity.html#ae43060c4754d57ca834463e9b6c24ed6',1,'Entity']]], - ['getwidth',['getWidth',['../class_camera.html#a1b29933f81edb6cac6815a139442e6c5',1,'Camera::getWidth()'],['../class_low_level_renderer2_d_1_1_camera.html#a90ecdb07b6aefec3ec5b695d804e8399',1,'LowLevelRenderer2D::Camera::getWidth()'],['../class_low_level_renderer2_d_1_1_texture.html#a6965a6da9e04c72d89e891b9c927a672',1,'LowLevelRenderer2D::Texture::getWidth()']]], - ['getwindowposition',['getWindowPosition',['../class_world_streamer.html#af8d12ecd16d8bb7e462d3925c3c653b2',1,'WorldStreamer']]], - ['getworld',['getWorld',['../class_physics_system.html#a375c7e34377b12af460db7dd30467c26',1,'PhysicsSystem']]], - ['graphics_5fcomponent_2ecpp',['graphics_component.cpp',['../graphics__component_8cpp.html',1,'']]], - ['graphics_5fcomponent_2ehpp',['graphics_component.hpp',['../graphics__component_8hpp.html',1,'']]], - ['graphics_5fsystem_2ecpp',['graphics_system.cpp',['../graphics__system_8cpp.html',1,'']]], - ['graphics_5fsystem_2ehpp',['graphics_system.hpp',['../graphics__system_8hpp.html',1,'']]], - ['graphicscomponent',['GraphicsComponent',['../class_graphics_component.html',1,'GraphicsComponent'],['../class_graphics_component.html#a67fc1b715989a5e18d32e26b27a55c50',1,'GraphicsComponent::GraphicsComponent()'],['../class_entity.html#a379584f4c938d48f29f2cca5d0927d3a',1,'Entity::graphicsComponent()']]], - ['graphicssystem',['GraphicsSystem',['../class_graphics_system.html',1,'GraphicsSystem'],['../class_camera.html#a9778d1ee5d16b1ce8afda909275daae0',1,'Camera::GraphicsSystem()'],['../class_graphics_component.html#a9778d1ee5d16b1ce8afda909275daae0',1,'GraphicsComponent::GraphicsSystem()'],['../class_sprite.html#a9778d1ee5d16b1ce8afda909275daae0',1,'Sprite::GraphicsSystem()'],['../class_sprite_factory.html#a9778d1ee5d16b1ce8afda909275daae0',1,'SpriteFactory::GraphicsSystem()'],['../class_graphics_system.html#abb71bb483ad2e5a49e5ca177873fec55',1,'GraphicsSystem::GraphicsSystem()'],['../class_engine.html#a29a5a6685bc67828b1cc67005718f4ab',1,'Engine::graphicsSystem()']]] + ['maincharacter',['MainCharacter',['../class_main_character.html',1,'']]] ]; diff --git a/doc/doxy/html/search/all_8.html b/doc/doxy/html/search/all_8.html index 0179bdd..12e5aff 100644 --- a/doc/doxy/html/search/all_8.html +++ b/doc/doxy/html/search/all_8.html @@ -1,7 +1,7 @@ - + diff --git a/doc/doxy/html/search/all_8.js b/doc/doxy/html/search/all_8.js index f6ae3d1..ddb0e71 100644 --- a/doc/doxy/html/search/all_8.js +++ b/doc/doxy/html/search/all_8.js @@ -1,7 +1,4 @@ var searchData= [ - ['handle',['handle',['../class_event_handler.html#a7ac8e1a1cc6661b4738ea521b5d91706',1,'EventHandler']]], - ['hasstopped',['hasStopped',['../class_resource_manager.html#aa83c1a5f8d0277cc3c309733f1289f29',1,'ResourceManager']]], - ['header',['header',['../structrapidxml_1_1memory__pool_1_1header.html',1,'rapidxml::memory_pool']]], - ['height',['height',['../class_low_level_renderer2_d_1_1_camera.html#afce19a5574a3bd1c5c3ee23015d5520c',1,'LowLevelRenderer2D::Camera::height()'],['../class_low_level_renderer2_d_1_1_texture.html#ad4e797094d72e518de341846fa96c2f7',1,'LowLevelRenderer2D::Texture::height()'],['../class_resource_texture.html#a2889255445675646dd89fe292ce23003',1,'ResourceTexture::height()']]] + ['obtain',['obtain',['../class_resource_manager.html#a5930b0efc0f979265a11c2ff58d1c078',1,'ResourceManager']]] ]; diff --git a/doc/doxy/html/search/all_9.html b/doc/doxy/html/search/all_9.html index cd46d44..7e10007 100644 --- a/doc/doxy/html/search/all_9.html +++ b/doc/doxy/html/search/all_9.html @@ -1,7 +1,7 @@ - + diff --git a/doc/doxy/html/search/all_9.js b/doc/doxy/html/search/all_9.js index 912cb4b..69fb3fc 100644 --- a/doc/doxy/html/search/all_9.js +++ b/doc/doxy/html/search/all_9.js @@ -1,19 +1,9 @@ var searchData= [ - ['i_5fworld_5fstreamer_2ecpp',['i_world_streamer.cpp',['../i__world__streamer_8cpp.html',1,'']]], - ['i_5fworld_5fstreamer_2ehpp',['i_world_streamer.hpp',['../i__world__streamer_8hpp.html',1,'']]], - ['id',['Id',['../class_entity.html#ac17f382d622494cc40a2ad7f0bad22de',1,'Entity::Id()'],['../class_entity.html#acdb96952aa87980a7234ce1d5ca68d93',1,'Entity::id()']]], - ['imagedata',['imageData',['../class_resource_texture.html#a4e0d7deb6711f6aab37d6f9d0197ceee',1,'ResourceTexture']]], - ['inccount',['incCount',['../class_resource_table_entry.html#ad649e6f872dd17cf28c3f77f45159e8d',1,'ResourceTableEntry']]], - ['incentry',['incEntry',['../class_resource_table.html#a3f4920f336294b34cc3e451c96f80379',1,'ResourceTable']]], - ['init',['init',['../classrapidxml_1_1memory__pool.html#a1076043ef092e327e59dd988c1ba82fb',1,'rapidxml::memory_pool::init()'],['../class_engine.html#ab44d76e2ff6057e73d6210cf9af0d89e',1,'Engine::init()'],['../class_i_world_streamer.html#a30ceb6682ef2aac15b868f4f175aaf8a',1,'IWorldStreamer::init()'],['../class_resource_manager.html#a361b0f5b37615ef759ff6e345a63f616',1,'ResourceManager::init()'],['../class_test_world_streamer.html#a0bdd09d57168c90909a78957db1b2e97',1,'TestWorldStreamer::init()'],['../class_world_streamer.html#a3255018427331cc893bd50979a19e03e',1,'WorldStreamer::init()']]], - ['insert_5fattribute',['insert_attribute',['../classrapidxml_1_1xml__node.html#a9fe659cdf4a5b3bbf5e8ffc98db5a84f',1,'rapidxml::xml_node']]], - ['insert_5fcoded_5fcharacter',['insert_coded_character',['../classrapidxml_1_1xml__document.html#ae33040bcfa8e5a29dc6f6f130984a981',1,'rapidxml::xml_document']]], - ['insert_5fnode',['insert_node',['../classrapidxml_1_1xml__node.html#a666880f42a7e486d78cc45ed51c7c46d',1,'rapidxml::xml_node']]], - ['iscellfile',['isCellFile',['../test__is__cell__file_8cpp.html#af686733c1ba187fc74e20c2603a71b9c',1,'isCellFile(string fileName): test_is_cell_file.cpp'],['../world__streamer_8cpp.html#af686733c1ba187fc74e20c2603a71b9c',1,'isCellFile(string fileName): world_streamer.cpp']]], - ['isloaded',['isLoaded',['../class_graphics_component.html#ac849efb7ead2ac02326e79944fd8be68',1,'GraphicsComponent::isLoaded()'],['../class_sprite.html#a6c1f57f78b0a40a70a941266ebe6b483',1,'Sprite::isLoaded()']]], - ['isready',['isReady',['../class_graphics_component.html#a4ccda0567ab0317ffb02d638e6396890',1,'GraphicsComponent::isReady()'],['../class_sprite.html#a0ebc48730a409500def754ec4476bb51',1,'Sprite::isReady()']]], - ['isvisible',['isVisible',['../class_graphics_component.html#a5418e4001004fa20e0bcfc9776dd2986',1,'GraphicsComponent']]], - ['iterator_5fcategory',['iterator_category',['../classrapidxml_1_1node__iterator.html#a8e82d75f768e17bf7349d010ee26c037',1,'rapidxml::node_iterator::iterator_category()'],['../classrapidxml_1_1attribute__iterator.html#a97ac5d8b98f5b03c68cc566f5ac0a9e0',1,'rapidxml::attribute_iterator::iterator_category()']]], - ['iworldstreamer',['IWorldStreamer',['../class_i_world_streamer.html',1,'IWorldStreamer'],['../class_i_world_streamer.html#a51d7865fbb750126a84acfeaf0cf3a79',1,'IWorldStreamer::IWorldStreamer()'],['../class_i_world_streamer.html#a535a81132f38b8a78bbb7acf8a09ab4e',1,'IWorldStreamer::IWorldStreamer(EntityFactory *entityFactory)']]] + ['physicsbox',['PhysicsBox',['../class_physics_box.html',1,'']]], + ['physicsboxfactory',['PhysicsBoxFactory',['../class_physics_box_factory.html',1,'']]], + ['physicscircle',['PhysicsCircle',['../class_physics_circle.html',1,'']]], + ['physicscirclefactory',['PhysicsCircleFactory',['../class_physics_circle_factory.html',1,'']]], + ['physicscomponent',['PhysicsComponent',['../class_physics_component.html',1,'']]], + ['physicssystem',['PhysicsSystem',['../class_physics_system.html',1,'']]] ]; diff --git a/doc/doxy/html/search/all_a.html b/doc/doxy/html/search/all_a.html index eab6553..95b4c8f 100644 --- a/doc/doxy/html/search/all_a.html +++ b/doc/doxy/html/search/all_a.html @@ -1,7 +1,7 @@ - + diff --git a/doc/doxy/html/search/all_a.js b/doc/doxy/html/search/all_a.js index d9259b5..1db8927 100644 --- a/doc/doxy/html/search/all_a.js +++ b/doc/doxy/html/search/all_a.js @@ -1,18 +1,13 @@ var searchData= [ - ['last_5fattribute',['last_attribute',['../classrapidxml_1_1xml__node.html#a50c03f2db3fa51f27a73d86ec29a49d3',1,'rapidxml::xml_node']]], - ['last_5fnode',['last_node',['../classrapidxml_1_1xml__node.html#a2ace550c18cf10da6303773972d7157f',1,'rapidxml::xml_node']]], - ['launch',['launch',['../class_resource_manager.html#a9e887254c90e3d6802883f4fedde61f1',1,'ResourceManager']]], - ['load',['load',['../class_resource.html#af91f5b849ad4f2e9fcd039062cbb0bf3',1,'Resource::load()'],['../class_resource_cell.html#a78f1dbc0660613b8f4bd73b181d1f70c',1,'ResourceCell::load()'],['../class_resource_text.html#acedd72e9b86c323dad8e20ffe8b13174',1,'ResourceText::load()'],['../class_resource_texture.html#a080cd1ffb1dedf0c2024cabdc808f39a',1,'ResourceTexture::load()']]], - ['loaded',['LOADED',['../class_resource.html#aefd3725a9fbea9db23e42c81be3b7f0dab638272ceeff54912f043465e9a28c9b',1,'Resource']]], - ['loadedcellresources',['loadedCellResources',['../class_world_streamer.html#a50f013e1bfe0ce7e22125d82cc83d1a0',1,'WorldStreamer']]], - ['loading',['LOADING',['../class_resource.html#aefd3725a9fbea9db23e42c81be3b7f0daf9f6955ebca09a484157c05f80acd65e',1,'Resource']]], - ['loadingcellresources',['loadingCellResources',['../class_world_streamer.html#a47150fc32a0189626143fe66b44109e2',1,'WorldStreamer']]], - ['loadtexture',['loadTexture',['../low__level__renderer__2d_8cpp.html#af5c42e7a3fa5468785b0cfac5ac66875',1,'low_level_renderer_2d.cpp']]], - ['loadtographicscard',['loadToGraphicsCard',['../class_resource_texture.html#a96e373d53e2af54ba43c0935e64b3c52',1,'ResourceTexture']]], - ['loop',['loop',['../class_resource_manager.html#a915f77d873a27456ca003bd37868da0a',1,'ResourceManager']]], - ['low_5flevel_5frenderer_5f2d',['LOW_LEVEL_RENDERER_2D',['../low__level__renderer__2d_8hpp.html#a66fd8c4152430946d41f7475719b1e73',1,'low_level_renderer_2d.hpp']]], - ['low_5flevel_5frenderer_5f2d_2ecpp',['low_level_renderer_2d.cpp',['../low__level__renderer__2d_8cpp.html',1,'']]], - ['low_5flevel_5frenderer_5f2d_2ehpp',['low_level_renderer_2d.hpp',['../low__level__renderer__2d_8hpp.html',1,'']]], - ['lowlevelrenderer2d',['LowLevelRenderer2D',['../class_low_level_renderer2_d.html',1,'LowLevelRenderer2D'],['../class_low_level_renderer2_d_1_1_camera.html#ab9ebacbc3611dc67ac0fffbf8205d070',1,'LowLevelRenderer2D::Camera::LowLevelRenderer2D()'],['../class_low_level_renderer2_d_1_1_texture.html#ab9ebacbc3611dc67ac0fffbf8205d070',1,'LowLevelRenderer2D::Texture::LowLevelRenderer2D()'],['../class_low_level_renderer2_d.html#a49f785a14af93114f52b4cd4265e2fbe',1,'LowLevelRenderer2D::LowLevelRenderer2D()'],['../class_low_level_renderer2_d.html#a44280809120a5acc27bae2906363b1a0',1,'LowLevelRenderer2D::LowLevelRenderer2D(std::string windowTitle, unsigned int width, unsigned int height, bool fullScreen)']]] + ['release',['release',['../class_resource_manager.html#aa4a9b03566d9d95933d66434d1a7ca77',1,'ResourceManager::release()'],['../class_texture.html#a16c096defe40a38d6f22bd08b63eb826',1,'Texture::release()']]], + ['releaseresource',['releaseResource',['../class_texture.html#adad5ba7ee347f2c2bc81ec257fa6a342',1,'Texture']]], + ['resource',['Resource',['../class_resource.html',1,'']]], + ['resourcecell',['ResourceCell',['../class_resource_cell.html',1,'']]], + ['resourcemanager',['ResourceManager',['../class_resource_manager.html',1,'']]], + ['resourcerequest',['ResourceRequest',['../class_resource_request.html',1,'']]], + ['resourcetable',['ResourceTable',['../class_resource_table.html',1,'']]], + ['resourcetableentry',['ResourceTableEntry',['../class_resource_table_entry.html',1,'']]], + ['resourcetext',['ResourceText',['../class_resource_text.html',1,'']]], + ['resourcetexture',['ResourceTexture',['../class_resource_texture.html',1,'']]] ]; diff --git a/doc/doxy/html/search/all_b.html b/doc/doxy/html/search/all_b.html index a2c161e..1f1beb5 100644 --- a/doc/doxy/html/search/all_b.html +++ b/doc/doxy/html/search/all_b.html @@ -1,7 +1,7 @@ - + diff --git a/doc/doxy/html/search/all_b.js b/doc/doxy/html/search/all_b.js index ce80f66..472789a 100644 --- a/doc/doxy/html/search/all_b.js +++ b/doc/doxy/html/search/all_b.js @@ -1,46 +1,12 @@ var searchData= [ - ['m_5falloc_5ffunc',['m_alloc_func',['../classrapidxml_1_1memory__pool.html#ae8964773675d24f77a808356be773c1d',1,'rapidxml::memory_pool']]], - ['m_5fattribute',['m_attribute',['../classrapidxml_1_1attribute__iterator.html#a2b4de1b0d86015beeae10e9997438c7a',1,'rapidxml::attribute_iterator']]], - ['m_5fbegin',['m_begin',['../classrapidxml_1_1memory__pool.html#a775205c5faa60b63385c24368d26d4e1',1,'rapidxml::memory_pool']]], - ['m_5fdata',['m_data',['../classrapidxml_1_1file.html#a60c4a72a55bbf4dbcca07f251a09cddf',1,'rapidxml::file']]], - ['m_5fend',['m_end',['../classrapidxml_1_1memory__pool.html#a6c9a83514446842518c9ffb7a38b76eb',1,'rapidxml::memory_pool']]], - ['m_5ffirst_5fattribute',['m_first_attribute',['../classrapidxml_1_1xml__node.html#a5f7caf8d72d8fae634be6eb744ad8538',1,'rapidxml::xml_node']]], - ['m_5ffirst_5fnode',['m_first_node',['../classrapidxml_1_1xml__node.html#a3c2a0b286724865b5c000e3333f60d4a',1,'rapidxml::xml_node']]], - ['m_5ffree_5ffunc',['m_free_func',['../classrapidxml_1_1memory__pool.html#af8f41565f4de167eb2f40ca20695f24d',1,'rapidxml::memory_pool']]], - ['m_5flast_5fattribute',['m_last_attribute',['../classrapidxml_1_1xml__node.html#ad82c1bdd1a5c94927cf8a627f18953b9',1,'rapidxml::xml_node']]], - ['m_5flast_5fnode',['m_last_node',['../classrapidxml_1_1xml__node.html#adc211d26cfea2ba6fb51adb27694ff09',1,'rapidxml::xml_node']]], - ['m_5fname',['m_name',['../classrapidxml_1_1xml__base.html#afd9851ed43e14619db0d7075ef8e9e8a',1,'rapidxml::xml_base']]], - ['m_5fname_5fsize',['m_name_size',['../classrapidxml_1_1xml__base.html#a5a8c76a7274b4180213796422c4df76f',1,'rapidxml::xml_base']]], - ['m_5fnext_5fattribute',['m_next_attribute',['../classrapidxml_1_1xml__attribute.html#a3254e4b040a9b71c6b6d1c27ec03352a',1,'rapidxml::xml_attribute']]], - ['m_5fnext_5fsibling',['m_next_sibling',['../classrapidxml_1_1xml__node.html#a202e84dfdd34cb65557b64e31b7e205a',1,'rapidxml::xml_node']]], - ['m_5fnode',['m_node',['../classrapidxml_1_1node__iterator.html#adeb3cd87d8ea08aa56d14166146fa291',1,'rapidxml::node_iterator']]], - ['m_5fparent',['m_parent',['../classrapidxml_1_1xml__base.html#a90d5f660f078f66563fd7b2d8387ccb0',1,'rapidxml::xml_base']]], - ['m_5fprev_5fattribute',['m_prev_attribute',['../classrapidxml_1_1xml__attribute.html#a204438287a5ad384405584726a1d8559',1,'rapidxml::xml_attribute']]], - ['m_5fprev_5fsibling',['m_prev_sibling',['../classrapidxml_1_1xml__node.html#a571f24c86107f8442f46a514a7cc5d0d',1,'rapidxml::xml_node']]], - ['m_5fptr',['m_ptr',['../classrapidxml_1_1memory__pool.html#a4a89ff677c72afc163d1855cefc28013',1,'rapidxml::memory_pool']]], - ['m_5fstatic_5fmemory',['m_static_memory',['../classrapidxml_1_1memory__pool.html#aacc5ca734ebfbef7f42251764eb396f4',1,'rapidxml::memory_pool']]], - ['m_5ftype',['m_type',['../classrapidxml_1_1xml__node.html#a33912a5ceef221d662bbac67c70e1397',1,'rapidxml::xml_node']]], - ['m_5fvalue',['m_value',['../classrapidxml_1_1xml__base.html#a278a1ea63b0b70219b946cec47fa00ea',1,'rapidxml::xml_base']]], - ['m_5fvalue_5fsize',['m_value_size',['../classrapidxml_1_1xml__base.html#aa3a49d8ceddb8a8d7edb773a2226b89c',1,'rapidxml::xml_base']]], - ['m_5fwhat',['m_what',['../classrapidxml_1_1parse__error.html#a41bffadc72eec238cf4b7d14c10c16ca',1,'rapidxml::parse_error']]], - ['m_5fwhere',['m_where',['../classrapidxml_1_1parse__error.html#aa5a164653ac347adddf47b264620d80f',1,'rapidxml::parse_error']]], - ['main',['main',['../demo__box2d_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4',1,'main(): demo_box2d.cpp'],['../parse__xml_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4',1,'main(): parse_xml.cpp'],['../test__is__cell__file_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4',1,'main(): test_is_cell_file.cpp'],['../test__regex_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4',1,'main(): test_regex.cpp'],['../main_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4',1,'main(): main.cpp'],['../test1_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4',1,'main(): test1.cpp'],['../test2_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4',1,'main(): test2.cpp'],['../test3_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4',1,'main(): test3.cpp'],['../resource__manager_2test_2main_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4',1,'main(): main.cpp']]], - ['main_2ecpp',['main.cpp',['../resource__manager_2test_2main_8cpp.html',1,'']]], - ['main_2ecpp',['main.cpp',['../main_8cpp.html',1,'']]], - ['main_5fcharacter_2ecpp',['main_character.cpp',['../main__character_8cpp.html',1,'']]], - ['main_5fcharacter_2ehpp',['main_character.hpp',['../main__character_8hpp.html',1,'']]], - ['maincharacter',['MainCharacter',['../class_main_character.html',1,'MainCharacter'],['../class_engine.html#aecea8f5d0244688c072189a4d32e97dc',1,'Engine::mainCharacter()'],['../class_main_character.html#a822c6796f6cac04dedfaa12846f1dd42',1,'MainCharacter::MainCharacter()']]], - ['mainloop',['mainLoop',['../class_engine.html#a25ad610aaf59ae357c28796f75cfa3e0',1,'Engine']]], - ['memory_5fpool',['memory_pool',['../classrapidxml_1_1memory__pool.html',1,'rapidxml']]], - ['memory_5fpool',['memory_pool',['../classrapidxml_1_1memory__pool.html#a0b609da81dff28a19ebd704400788429',1,'rapidxml::memory_pool']]], - ['mutex',['mutex',['../class_work_queue.html#aa311c245fab6df45ffa10c2958bd2880',1,'WorkQueue']]], - ['mutextable',['mutexTable',['../class_resource_manager.html#a451c6f852f706152b9d50d789f8ea7f2',1,'ResourceManager']]], - ['myengine',['myEngine',['../class_entity_factory.html#a359d739e5cbd0a6b1b32f29d4813dfba',1,'EntityFactory::myEngine()'],['../class_graphics_system.html#aa7ecf0d03552cba4dff4ef27da178621',1,'GraphicsSystem::myEngine()']]], - ['myentity',['myEntity',['../class_graphics_component.html#a59e666c12333b2e1f198ba80f23965ac',1,'GraphicsComponent']]], - ['myfactory',['myFactory',['../class_sprite.html#a2623f51b9931b41761efa3f65edb48eb',1,'Sprite::myFactory()'],['../class_resource_cell.html#ab7573ebda34c61e551347bab40f47599',1,'ResourceCell::myFactory()'],['../class_resource_text.html#a5422fba5980280c58cb40ab03f50d8d8',1,'ResourceText::myFactory()'],['../class_resource_texture.html#a4369856eb8a81669c2a7638ba0b8c4a7',1,'ResourceTexture::myFactory()']]], - ['mygraphicssystem',['myGraphicsSystem',['../class_camera.html#abfd566f4f14061584234b4d389d26533',1,'Camera::myGraphicsSystem()'],['../class_graphics_component.html#a5b409aa9f33bd8ce7b2749d8a91fb9b6',1,'GraphicsComponent::myGraphicsSystem()'],['../class_sprite_factory.html#adb8eee7ab108decf589ef6c66855614b',1,'SpriteFactory::myGraphicsSystem()']]], - ['myphysicssystem',['myPhysicsSystem',['../class_physics_box_factory.html#a07286c6f2853c542de9935e5f2fb723a',1,'PhysicsBoxFactory::myPhysicsSystem()'],['../class_physics_component.html#a975c62b57bcba88f3738edfe308da17b',1,'PhysicsComponent::myPhysicsSystem()']]], - ['mysleep',['mySleep',['../resource__manager_2test_2main_8cpp.html#aa806aeb4ff41f46b5965c8654d5b6112',1,'main.cpp']]], - ['mythread',['myThread',['../class_resource_manager.html#a8bae0ca65b32c7575e0e591e044056bc',1,'ResourceManager']]] + ['setfiltermode',['setFilterMode',['../class_texture.html#a7e9e335038d30f451081f76983cd9afb',1,'Texture']]], + ['setfullscreen',['setFullScreen',['../class_graphics_system.html#a5f40861a47c315c8e16e89ddf3f25d80',1,'GraphicsSystem']]], + ['sprite',['Sprite',['../class_sprite.html',1,'']]], + ['spritemanager',['SpriteManager',['../class_sprite_manager.html',1,'']]], + ['spriterefcountentry',['SpriteRefCountEntry',['../struct_sprite_ref_count_entry.html',1,'']]], + ['spritestatus',['SpriteStatus',['../class_sprite_status.html',1,'']]], + ['spritevbo',['SpriteVbo',['../class_low_level_renderer2_d_1_1_sprite_vbo.html',1,'LowLevelRenderer2D']]], + ['stop',['stop',['../class_resource_manager.html#a0344d6d07d7649b5c44b26a1c43b3219',1,'ResourceManager']]], + ['swap',['swap',['../class_graphics_system.html#a8b5eba17b32d342f9d2ace7c2f439244',1,'GraphicsSystem']]] ]; diff --git a/doc/doxy/html/search/all_c.html b/doc/doxy/html/search/all_c.html index bdd3ee2..ec9a0c8 100644 --- a/doc/doxy/html/search/all_c.html +++ b/doc/doxy/html/search/all_c.html @@ -1,7 +1,7 @@ - + diff --git a/doc/doxy/html/search/all_c.js b/doc/doxy/html/search/all_c.js index 26d165c..686ca9e 100644 --- a/doc/doxy/html/search/all_c.js +++ b/doc/doxy/html/search/all_c.js @@ -1,22 +1,8 @@ var searchData= [ - ['name',['name',['../class_resource.html#a2470c0f38c44ae45229e2eb0d6ea1881',1,'Resource::name()'],['../class_resource_request.html#a16d2afc215ea93d68d64834d1c6deec8',1,'ResourceRequest::name()'],['../classrapidxml_1_1xml__base.html#a9a09739310469995db078ebd0da3ed45',1,'rapidxml::xml_base::name() const '],['../classrapidxml_1_1xml__base.html#ae55060ae958c6e6465d6c8db852ec6ce',1,'rapidxml::xml_base::name(const Ch *name, std::size_t size)'],['../classrapidxml_1_1xml__base.html#a4611ddc82ac83a527c65606600eb2a0d',1,'rapidxml::xml_base::name(const Ch *name)']]], - ['name_5fsize',['name_size',['../classrapidxml_1_1xml__base.html#a7e7f98b3d01e1eab8dc1ca69aad9af84',1,'rapidxml::xml_base']]], - ['next_5fattribute',['next_attribute',['../classrapidxml_1_1xml__attribute.html#a56c08d7c96203286c889a43849328a86',1,'rapidxml::xml_attribute']]], - ['next_5fsibling',['next_sibling',['../classrapidxml_1_1xml__node.html#ac59af4dd5f0ec715753e42467dff6aed',1,'rapidxml::xml_node']]], - ['no_5fsdl_5fglext',['NO_SDL_GLEXT',['../low__level__renderer__2d_8hpp.html#af86f7c4c381cfe54ef728a42b0b4152a',1,'low_level_renderer_2d.hpp']]], - ['node',['node',['../class_resource_cell.html#a1ec1f64be1a0e9968b12e3ad5b87eb28',1,'ResourceCell']]], - ['node_5fcdata',['node_cdata',['../namespacerapidxml.html#abb456db38f7efb746c4330eed6072a7caccf0b363d3876a3f83ff9b1bcdaaa536',1,'rapidxml']]], - ['node_5fcomment',['node_comment',['../namespacerapidxml.html#abb456db38f7efb746c4330eed6072a7ca1a695e1384ec3bd4df3eff65ec609a96',1,'rapidxml']]], - ['node_5fdata',['node_data',['../namespacerapidxml.html#abb456db38f7efb746c4330eed6072a7ca9d669d8e1f4ba9c7eeada4c14a11ad1d',1,'rapidxml']]], - ['node_5fdeclaration',['node_declaration',['../namespacerapidxml.html#abb456db38f7efb746c4330eed6072a7cafe4ca44261e5fbedf0eab43131751212',1,'rapidxml']]], - ['node_5fdoctype',['node_doctype',['../namespacerapidxml.html#abb456db38f7efb746c4330eed6072a7cadf5002f2efabe231bed01d16f08f832c',1,'rapidxml']]], - ['node_5fdocument',['node_document',['../namespacerapidxml.html#abb456db38f7efb746c4330eed6072a7ca4023b6a1c7059fd8fbec2112d5c35424',1,'rapidxml']]], - ['node_5felement',['node_element',['../namespacerapidxml.html#abb456db38f7efb746c4330eed6072a7ca89cbeb4d28046326e4ee953d3c4047ff',1,'rapidxml']]], - ['node_5fiterator',['node_iterator',['../classrapidxml_1_1node__iterator.html#a4e1244b9e9e1d2b5129235806d1e31ad',1,'rapidxml::node_iterator::node_iterator()'],['../classrapidxml_1_1node__iterator.html#a94c3da59b54e4bd003e226cc35b3c266',1,'rapidxml::node_iterator::node_iterator(xml_node< Ch > *node)']]], - ['node_5fiterator',['node_iterator',['../classrapidxml_1_1node__iterator.html',1,'rapidxml']]], - ['node_5fname_5fpred',['node_name_pred',['../structrapidxml_1_1xml__document_1_1node__name__pred.html',1,'rapidxml::xml_document']]], - ['node_5fpi',['node_pi',['../namespacerapidxml.html#abb456db38f7efb746c4330eed6072a7caeb73b472e77347b9aa89525f16493b87',1,'rapidxml']]], - ['node_5ftype',['node_type',['../namespacerapidxml.html#abb456db38f7efb746c4330eed6072a7c',1,'rapidxml']]], - ['nullstr',['nullstr',['../classrapidxml_1_1xml__base.html#ad96ff6b1e41dab3ff60b9bc4df769a75',1,'rapidxml::xml_base']]] + ['testworldstreamer',['TestWorldStreamer',['../class_test_world_streamer.html',1,'']]], + ['texture',['Texture',['../class_low_level_renderer2_d_1_1_texture.html',1,'LowLevelRenderer2D']]], + ['texture',['Texture',['../class_texture.html',1,'']]], + ['texturemanager',['TextureManager',['../class_texture_manager.html',1,'']]], + ['texturerefcountentry',['TextureRefCountEntry',['../class_texture_ref_count_entry.html',1,'']]] ]; diff --git a/doc/doxy/html/search/all_d.html b/doc/doxy/html/search/all_d.html index d510933..654d198 100644 --- a/doc/doxy/html/search/all_d.html +++ b/doc/doxy/html/search/all_d.html @@ -1,7 +1,7 @@ - + diff --git a/doc/doxy/html/search/all_d.js b/doc/doxy/html/search/all_d.js index ec94bc3..0d6c05f 100644 --- a/doc/doxy/html/search/all_d.js +++ b/doc/doxy/html/search/all_d.js @@ -1,21 +1,4 @@ var searchData= [ - ['obtain',['OBTAIN',['../class_resource_request.html#a554dcb9b16e2463d423c53cae5d5d174a27d989f2be8f00539395ec344ba07896',1,'ResourceRequest']]], - ['obtaincell',['obtainCell',['../class_resource_manager.html#af584b73147851d8cc87c0fa48e392102',1,'ResourceManager']]], - ['obtaintext',['obtainText',['../class_resource_manager.html#a71969c9e3618796d700b23654caebfc6',1,'ResourceManager']]], - ['obtaintexture',['obtainTexture',['../class_resource_manager.html#a721f78505ccac9f295c21150d952461c',1,'ResourceManager']]], - ['offset',['offset',['../class_position.html#a7758b4e418d82e61db62e7909d717c76',1,'Position']]], - ['operator_21_3d',['operator!=',['../classrapidxml_1_1node__iterator.html#a20f1e25347d7e3856694f18597f7c8e2',1,'rapidxml::node_iterator::operator!=()'],['../classrapidxml_1_1attribute__iterator.html#a39e8cf336c324521fd9c720abf280d88',1,'rapidxml::attribute_iterator::operator!=()'],['../class_vec2i.html#ade18ced851c4bf09f069956d3f0676bd',1,'Vec2i::operator!=()']]], - ['operator_2a',['operator*',['../classrapidxml_1_1node__iterator.html#ab31fe5bc1fd01fee8a2b31c3e42d78ed',1,'rapidxml::node_iterator::operator*()'],['../classrapidxml_1_1attribute__iterator.html#a5d8616bdd2d41119e2f342d77b4f56f9',1,'rapidxml::attribute_iterator::operator*()']]], - ['operator_2b',['operator+',['../class_vec2f.html#ae93f0df171348ce4f6ed32d75396acaf',1,'Vec2f::operator+()'],['../class_vec2i.html#a5b84792d7c12a1a25fdecd6b20dd9637',1,'Vec2i::operator+()'],['../class_position.html#af74b4e7c6809b52352271520449eff03',1,'Position::operator+()']]], - ['operator_2b_2b',['operator++',['../classrapidxml_1_1node__iterator.html#a8d6b184a76b2ec8a8b5e90bc013c80ed',1,'rapidxml::node_iterator::operator++()'],['../classrapidxml_1_1node__iterator.html#ad01b4e43e348a330984833fd4924d0f2',1,'rapidxml::node_iterator::operator++(int)'],['../classrapidxml_1_1attribute__iterator.html#afe7d15a4a1b228f97f1d4ebd4f3f6cca',1,'rapidxml::attribute_iterator::operator++()'],['../classrapidxml_1_1attribute__iterator.html#a82c8859b9eebd45caa3afc25b9e78c36',1,'rapidxml::attribute_iterator::operator++(int)']]], - ['operator_2b_3d',['operator+=',['../class_vec2i.html#a83aa608fb193de353489b13eb0ffdb8e',1,'Vec2i']]], - ['operator_2d',['operator-',['../class_vec2f.html#ac87658067c883a6a76f979c4bf29e99f',1,'Vec2f::operator-(const Vec2f &vec) const '],['../class_vec2f.html#aa36cbdb64b6d73304810e6d4d550b31b',1,'Vec2f::operator-() const '],['../class_vec2i.html#a733ba7fdb5115b8460fb8da659580298',1,'Vec2i::operator-(const Vec2i &vec) const '],['../class_vec2i.html#a066851458c1cc46e2924dbcabdc2c919',1,'Vec2i::operator-() const '],['../class_position.html#ae77ace1753f337985aa3c2576728595f',1,'Position::operator-(const Position &pos) const '],['../class_position.html#a195ed1edccd36180b1b7c36025630d71',1,'Position::operator-() const ']]], - ['operator_2d_2d',['operator--',['../classrapidxml_1_1node__iterator.html#ace52107ecd1bcf02e49619e86206e3a3',1,'rapidxml::node_iterator::operator--()'],['../classrapidxml_1_1node__iterator.html#a4ca35716bb7865f199a137b063af6080',1,'rapidxml::node_iterator::operator--(int)'],['../classrapidxml_1_1attribute__iterator.html#af22f1ad3c11d3269b43b49e29b89d7d1',1,'rapidxml::attribute_iterator::operator--()'],['../classrapidxml_1_1attribute__iterator.html#af52a8562ab1b2c0391cdde79f55e4a6f',1,'rapidxml::attribute_iterator::operator--(int)']]], - ['operator_2d_3d',['operator-=',['../class_vec2i.html#a55cbe6be2e10c958647bdc13c0fcd492',1,'Vec2i']]], - ['operator_2d_3e',['operator->',['../classrapidxml_1_1node__iterator.html#a9b3e7d58c4a628524914932e0663ddfb',1,'rapidxml::node_iterator::operator->()'],['../classrapidxml_1_1attribute__iterator.html#a0975adffe3d178c0ac83652b9ab78791',1,'rapidxml::attribute_iterator::operator->()']]], - ['operator_3c',['operator<',['../class_vec2i.html#aca9ae1c54474f3801d03d0c55e4b992e',1,'Vec2i']]], - ['operator_3c_3c',['operator<<',['../namespacerapidxml.html#a9ed8e626dd81348caede1f92a6c8418a',1,'rapidxml']]], - ['operator_3d',['operator=',['../classrapidxml_1_1xml__node.html#aa9320e2dd58cfbe5fe4b43b9f0d8c788',1,'rapidxml::xml_node::operator=()'],['../class_vec2f.html#a811d32b416b79067e410c2c6504891db',1,'Vec2f::operator=()'],['../class_vec2i.html#a4dc2832e7b1d432d34fc88e840327554',1,'Vec2i::operator=()'],['../class_position.html#a7f497d1adbaeb7beea88354a73ae476b',1,'Position::operator=()'],['../class_low_level_renderer2_d_1_1_texture.html#a8570c36d74684f4bd948b457fe58e052',1,'LowLevelRenderer2D::Texture::operator=()'],['../class_resource_request.html#ae451fcebd9b458351fa967d92c945833',1,'ResourceRequest::operator=()']]], - ['operator_3d_3d',['operator==',['../classrapidxml_1_1node__iterator.html#a5cb8a3b0d65a1a2517995e986a4debfd',1,'rapidxml::node_iterator::operator==()'],['../classrapidxml_1_1attribute__iterator.html#ab1dc8dd11d21e145a4e3f76d46aead0d',1,'rapidxml::attribute_iterator::operator==()'],['../class_vec2i.html#ac6df7873b913f57706fa2781dabb7053',1,'Vec2i::operator==()']]] + ['update',['update',['../class_graphics_system.html#a1d3dbce3ced4489bb51a69177ae99fa9',1,'GraphicsSystem::update()'],['../class_world_streamer.html#a87a6713b0a28875b64459cf800a765b3',1,'WorldStreamer::update()'],['../class_i_world_streamer.html#ad35eefe1183c1d11b3001e8ce62f7924',1,'IWorldStreamer::update()']]] ]; diff --git a/doc/doxy/html/search/all_e.html b/doc/doxy/html/search/all_e.html index 3cda017..812aced 100644 --- a/doc/doxy/html/search/all_e.html +++ b/doc/doxy/html/search/all_e.html @@ -1,7 +1,7 @@ - + diff --git a/doc/doxy/html/search/all_e.js b/doc/doxy/html/search/all_e.js index 4146fb0..154ce70 100644 --- a/doc/doxy/html/search/all_e.js +++ b/doc/doxy/html/search/all_e.js @@ -1,67 +1,5 @@ var searchData= [ - ['parent',['parent',['../classrapidxml_1_1xml__base.html#a7f31ae930f93852830234db1ae59c4c4',1,'rapidxml::xml_base']]], - ['parse',['parse',['../classrapidxml_1_1xml__document.html#ac6e73ff9ac323bf5a370c38feb03a6b1',1,'rapidxml::xml_document']]], - ['parse_5fand_5fappend_5fdata',['parse_and_append_data',['../classrapidxml_1_1xml__document.html#aec6cedf45179b6378c670bc3ea509e61',1,'rapidxml::xml_document']]], - ['parse_5fbom',['parse_bom',['../classrapidxml_1_1xml__document.html#aaa63a0c7b57ab8fce63d4aebe4da123d',1,'rapidxml::xml_document']]], - ['parse_5fcdata',['parse_cdata',['../classrapidxml_1_1xml__document.html#ab94daeb25e8a1609e31210a45b2afa6c',1,'rapidxml::xml_document']]], - ['parse_5fcomment',['parse_comment',['../classrapidxml_1_1xml__document.html#abc287ce83bcb2dc8519e300236004591',1,'rapidxml::xml_document']]], - ['parse_5fcomment_5fnodes',['parse_comment_nodes',['../namespacerapidxml.html#ae093dd49e2f59fa39eee95f1a6568e32',1,'rapidxml']]], - ['parse_5fdeclaration_5fnode',['parse_declaration_node',['../namespacerapidxml.html#a999d782659513f8015ea4236e3204c42',1,'rapidxml']]], - ['parse_5fdefault',['parse_default',['../namespacerapidxml.html#acf4edf952f59eb1b6124ea37ad7da3ab',1,'rapidxml']]], - ['parse_5fdoctype',['parse_doctype',['../classrapidxml_1_1xml__document.html#a4c613f3a928f763b4c788422edda5860',1,'rapidxml::xml_document']]], - ['parse_5fdoctype_5fnode',['parse_doctype_node',['../namespacerapidxml.html#a41002b49780a90a0bbcc28ce8b895fe4',1,'rapidxml']]], - ['parse_5felement',['parse_element',['../classrapidxml_1_1xml__document.html#aea385acd096ab200d63a777d53435ada',1,'rapidxml::xml_document']]], - ['parse_5ferror',['parse_error',['../classrapidxml_1_1parse__error.html',1,'rapidxml']]], - ['parse_5ferror',['parse_error',['../classrapidxml_1_1parse__error.html#aea12a301271c393fb627b368fb9f35c1',1,'rapidxml::parse_error']]], - ['parse_5ffastest',['parse_fastest',['../namespacerapidxml.html#a64da06dfdab7c86ca954bda4fecb978f',1,'rapidxml']]], - ['parse_5ffull',['parse_full',['../namespacerapidxml.html#abb48dc65db75d9e49734bc5bd2fabbfc',1,'rapidxml']]], - ['parse_5fno_5fdata_5fnodes',['parse_no_data_nodes',['../namespacerapidxml.html#ac2d21ef14a4e8936b94aca5d38b1a74d',1,'rapidxml']]], - ['parse_5fno_5felement_5fvalues',['parse_no_element_values',['../namespacerapidxml.html#a00e6fea134b786ea6efeed1c8bc4a668',1,'rapidxml']]], - ['parse_5fno_5fentity_5ftranslation',['parse_no_entity_translation',['../namespacerapidxml.html#a89113c103ffaf77615d1aa330c8dcca8',1,'rapidxml']]], - ['parse_5fno_5fstring_5fterminators',['parse_no_string_terminators',['../namespacerapidxml.html#af3fc88ba6bee33482a2db81b1da36ea1',1,'rapidxml']]], - ['parse_5fno_5futf8',['parse_no_utf8',['../namespacerapidxml.html#a22d4aefaceb00d7afabfef7107b108da',1,'rapidxml']]], - ['parse_5fnode',['parse_node',['../classrapidxml_1_1xml__document.html#a5e94cbc9b02e864cb80961ddb8cc63a7',1,'rapidxml::xml_document']]], - ['parse_5fnode_5fattributes',['parse_node_attributes',['../classrapidxml_1_1xml__document.html#ac0b3cd07b3d5cbaa83762a196c681519',1,'rapidxml::xml_document']]], - ['parse_5fnode_5fcontents',['parse_node_contents',['../classrapidxml_1_1xml__document.html#aae0a4c2e1972ab9a9e0ce91cf1166ac9',1,'rapidxml::xml_document']]], - ['parse_5fnon_5fdestructive',['parse_non_destructive',['../namespacerapidxml.html#a45d4d8fef551beaaba23a83b847fd6a3',1,'rapidxml']]], - ['parse_5fnormalize_5fwhitespace',['parse_normalize_whitespace',['../namespacerapidxml.html#a31f33885defb5176a7d99e524c35d386',1,'rapidxml']]], - ['parse_5fpi',['parse_pi',['../classrapidxml_1_1xml__document.html#a09e12a4233a07387d4b5a5ad239388aa',1,'rapidxml::xml_document']]], - ['parse_5fpi_5fnodes',['parse_pi_nodes',['../namespacerapidxml.html#a03fe68fcf5d28f38476e0fd31adecc4c',1,'rapidxml']]], - ['parse_5ftrim_5fwhitespace',['parse_trim_whitespace',['../namespacerapidxml.html#a61912424b47db5038e726d4e1c22417f',1,'rapidxml']]], - ['parse_5fvalidate_5fclosing_5ftags',['parse_validate_closing_tags',['../namespacerapidxml.html#a7ce8f40fda68338e20b56f41e48e49f3',1,'rapidxml']]], - ['parse_5fxml_2ecpp',['parse_xml.cpp',['../parse__xml_8cpp.html',1,'']]], - ['parse_5fxml_5fdeclaration',['parse_xml_declaration',['../classrapidxml_1_1xml__document.html#a0151c52c82ba79ea0605c2facf39c534',1,'rapidxml::xml_document']]], - ['pendingtask',['PendingTask',['../class_graphics_system_1_1_pending_task.html#a7041d6d3403a3d51818f892e61703c27',1,'GraphicsSystem::PendingTask']]], - ['pendingtask',['PendingTask',['../class_graphics_system_1_1_pending_task.html',1,'GraphicsSystem']]], - ['pendingtasks',['pendingTasks',['../class_graphics_system.html#a55dfeff5c7d8ac92cc9339b34380e5bd',1,'GraphicsSystem']]], - ['pendingtasktype',['pendingTaskType',['../class_graphics_system_1_1_pending_task.html#a384b860f3821f20a6e7041af1e50b9a0',1,'GraphicsSystem::PendingTask::pendingTaskType()'],['../class_graphics_system.html#a6f5863d51b83ae1c6abebf36933e8c6b',1,'GraphicsSystem::PendingTaskType()']]], - ['physics_5fbox_2ecpp',['physics_box.cpp',['../physics__box_8cpp.html',1,'']]], - ['physics_5fbox_2ehpp',['physics_box.hpp',['../physics__box_8hpp.html',1,'']]], - ['physics_5fbox_5ffactory_2ecpp',['physics_box_factory.cpp',['../physics__box__factory_8cpp.html',1,'']]], - ['physics_5fbox_5ffactory_2ehpp',['physics_box_factory.hpp',['../physics__box__factory_8hpp.html',1,'']]], - ['physics_5fcomponent_2ecpp',['physics_component.cpp',['../physics__component_8cpp.html',1,'']]], - ['physics_5fcomponent_2ehpp',['physics_component.hpp',['../physics__component_8hpp.html',1,'']]], - ['physics_5fsystem_2ecpp',['physics_system.cpp',['../physics__system_8cpp.html',1,'']]], - ['physics_5fsystem_2ehpp',['physics_system.hpp',['../physics__system_8hpp.html',1,'']]], - ['physicsbox',['PhysicsBox',['../class_physics_box.html',1,'PhysicsBox'],['../class_physics_box.html#acbac3aacccbb3708e21108f2270df822',1,'PhysicsBox::PhysicsBox()']]], - ['physicsboxfactory',['PhysicsBoxFactory',['../class_physics_box_factory.html',1,'PhysicsBoxFactory'],['../class_physics_system.html#a6c03b9d2a468324e5f041789330409da',1,'PhysicsSystem::physicsBoxFactory()'],['../class_physics_box.html#a120a8d074c874393e4e681db8564c950',1,'PhysicsBox::PhysicsBoxFactory()'],['../class_physics_box_factory.html#aa8d4d6afc6d66e9bb4bda97a85bcc68d',1,'PhysicsBoxFactory::PhysicsBoxFactory()']]], - ['physicscomponent',['PhysicsComponent',['../class_physics_component.html',1,'PhysicsComponent'],['../class_entity.html#a0427bb31f1d8bdeefcc1c11f8cb1de83',1,'Entity::physicsComponent()']]], - ['physicssystem',['PhysicsSystem',['../class_physics_system.html',1,'PhysicsSystem'],['../class_engine.html#a2a2521404acce92ed68881a470cb9388',1,'Engine::physicsSystem()'],['../class_physics_box_factory.html#a6fb7520528fab4a670001f041b872bf2',1,'PhysicsBoxFactory::PhysicsSystem()'],['../class_physics_component.html#a6fb7520528fab4a670001f041b872bf2',1,'PhysicsComponent::PhysicsSystem()'],['../class_physics_system.html#a4960fbd046fb332a5faa36fb5028e7c5',1,'PhysicsSystem::PhysicsSystem()']]], - ['pointer',['pointer',['../classrapidxml_1_1node__iterator.html#a65dca8bca2b9c29f635b9ad0bdeeecb9',1,'rapidxml::node_iterator::pointer()'],['../classrapidxml_1_1attribute__iterator.html#a69acc2e60270d6a062c03c9cb1cf2aa7',1,'rapidxml::attribute_iterator::pointer()'],['../class_graphics_system_1_1_pending_task.html#a74aa765d9065d75147c56af18b49f3e1',1,'GraphicsSystem::PendingTask::pointer()']]], - ['poll',['poll',['../class_event_handler.html#a37e9bda34e1a94123a0824d6f9dafc66',1,'EventHandler']]], - ['pop',['pop',['../class_work_queue.html#a24bf96f52305c5dd9176343afe39d1e0',1,'WorkQueue']]], - ['pos',['pos',['../class_low_level_renderer2_d_1_1_camera.html#a70269af2ce7907f86b804d53277f6e77',1,'LowLevelRenderer2D::Camera']]], - ['position',['Position',['../class_position.html',1,'Position'],['../class_position.html#a369a577425f8ba02e8750d04b6a088db',1,'Position::Position()'],['../class_position.html#a1714fdfc7b7e793d6293d9796b46c26b',1,'Position::Position(const Vec2i &cell, const Vec2f &offset)'],['../class_position.html#ae89a1c268c745eeb3f34a3e3f969fbf5',1,'Position::Position(const Position &pos)'],['../class_graphics_component.html#aec7fcd0d61e6fa1bb1db8b601777204c',1,'GraphicsComponent::position()']]], - ['position_2ecpp',['position.cpp',['../position_8cpp.html',1,'']]], - ['position_2ehpp',['position.hpp',['../position_8hpp.html',1,'']]], - ['prepend_5fattribute',['prepend_attribute',['../classrapidxml_1_1xml__node.html#a8b62ee76489faf8e2d1210869d547684',1,'rapidxml::xml_node']]], - ['prepend_5fnode',['prepend_node',['../classrapidxml_1_1xml__node.html#ae86e92908c3eab40bbed8216e4f3f3cb',1,'rapidxml::xml_node']]], - ['previous_5fattribute',['previous_attribute',['../classrapidxml_1_1xml__attribute.html#ae3547cc30b201fd6d7b98c04dda26f89',1,'rapidxml::xml_attribute']]], - ['previous_5fbegin',['previous_begin',['../structrapidxml_1_1memory__pool_1_1header.html#a3035f6741bb38f91c7f2efd05398c23d',1,'rapidxml::memory_pool::header']]], - ['previous_5fsibling',['previous_sibling',['../classrapidxml_1_1xml__node.html#a001ece4e227eebbd6ad0ec7dacf1c00b',1,'rapidxml::xml_node']]], - ['print',['print',['../namespacerapidxml.html#a0fb0be6eba49fb2e2646d5a72a0dc355',1,'rapidxml::print(OutIt out, const xml_node< Ch > &node, int flags=0)'],['../namespacerapidxml.html#a0d2e114d5dd85e13c23b8dab600720fe',1,'rapidxml::print(std::basic_ostream< Ch > &out, const xml_node< Ch > &node, int flags=0)']]], - ['print_5fno_5findenting',['print_no_indenting',['../namespacerapidxml.html#a65477b812a80f5bda693ec57e57de064',1,'rapidxml']]], - ['priority',['priority',['../class_graphics_component.html#aeab0a8bf71ed0e99b482ce85c2e01bec',1,'GraphicsComponent']]], - ['push',['push',['../class_work_queue.html#a9c981fa4753bf7d5dfc3ef69893ec0a0',1,'WorkQueue']]] + ['vec2f',['Vec2f',['../class_vec2f.html',1,'']]], + ['vec2i',['Vec2i',['../class_vec2i.html',1,'']]] ]; diff --git a/doc/doxy/html/search/all_f.html b/doc/doxy/html/search/all_f.html index 7419b02..c395a47 100644 --- a/doc/doxy/html/search/all_f.html +++ b/doc/doxy/html/search/all_f.html @@ -1,7 +1,7 @@ - + diff --git a/doc/doxy/html/search/all_f.js b/doc/doxy/html/search/all_f.js index 4b38c3e..ae13855 100644 --- a/doc/doxy/html/search/all_f.js +++ b/doc/doxy/html/search/all_f.js @@ -1,5 +1,7 @@ var searchData= [ - ['queue',['queue',['../class_work_queue.html#a61e66cbf268317b509a4e6fc4ef4f040',1,'WorkQueue']]], - ['queued',['QUEUED',['../class_resource.html#aefd3725a9fbea9db23e42c81be3b7f0da9df29ce7ca629ff1d47bca1149d9faae',1,'Resource']]] + ['workqueue',['WorkQueue',['../class_work_queue.html',1,'']]], + ['workqueue_3c_20resourcerequest_20_3e',['WorkQueue< ResourceRequest >',['../class_work_queue.html',1,'']]], + ['worldstreamer',['WorldStreamer',['../class_world_streamer.html',1,'']]], + ['worldwindow',['WorldWindow',['../class_world_window.html',1,'']]] ]; diff --git a/doc/doxy/html/search/classes_0.html b/doc/doxy/html/search/classes_0.html index fabdc03..8888fa8 100644 --- a/doc/doxy/html/search/classes_0.html +++ b/doc/doxy/html/search/classes_0.html @@ -1,7 +1,7 @@ - + diff --git a/doc/doxy/html/search/classes_0.js b/doc/doxy/html/search/classes_0.js index c6ac52d..d50f40a 100644 --- a/doc/doxy/html/search/classes_0.js +++ b/doc/doxy/html/search/classes_0.js @@ -1,7 +1,6 @@ var searchData= [ - ['attribute_5fiterator',['attribute_iterator',['../classrapidxml_1_1attribute__iterator.html',1,'rapidxml']]], - ['attribute_5fname_5fpred',['attribute_name_pred',['../structrapidxml_1_1xml__document_1_1attribute__name__pred.html',1,'rapidxml::xml_document']]], - ['attribute_5fvalue_5fpred',['attribute_value_pred',['../structrapidxml_1_1xml__document_1_1attribute__value__pred.html',1,'rapidxml::xml_document']]], - ['attribute_5fvalue_5fpure_5fpred',['attribute_value_pure_pred',['../structrapidxml_1_1xml__document_1_1attribute__value__pure__pred.html',1,'rapidxml::xml_document']]] + ['aarect',['AARect',['../class_a_a_rect.html',1,'']]], + ['animation',['Animation',['../class_animation.html',1,'']]], + ['animationframe',['AnimationFrame',['../class_animation_frame.html',1,'']]] ]; diff --git a/doc/doxy/html/search/classes_1.html b/doc/doxy/html/search/classes_1.html index 800b6ae..a402bbe 100644 --- a/doc/doxy/html/search/classes_1.html +++ b/doc/doxy/html/search/classes_1.html @@ -1,7 +1,7 @@ - + diff --git a/doc/doxy/html/search/classes_1.js b/doc/doxy/html/search/classes_1.js index 04f4367..c0156cc 100644 --- a/doc/doxy/html/search/classes_1.js +++ b/doc/doxy/html/search/classes_1.js @@ -1,6 +1,7 @@ var searchData= [ - ['camera',['Camera',['../class_camera.html',1,'']]], ['camera',['Camera',['../class_low_level_renderer2_d_1_1_camera.html',1,'LowLevelRenderer2D']]], - ['color',['Color',['../class_color.html',1,'']]] + ['camera',['Camera',['../class_camera.html',1,'']]], + ['color',['Color',['../class_color.html',1,'']]], + ['comparespritebyname',['CompareSpriteByName',['../struct_compare_sprite_by_name.html',1,'']]] ]; diff --git a/doc/doxy/html/search/classes_2.html b/doc/doxy/html/search/classes_2.html index f65d263..003214b 100644 --- a/doc/doxy/html/search/classes_2.html +++ b/doc/doxy/html/search/classes_2.html @@ -1,7 +1,7 @@ - + diff --git a/doc/doxy/html/search/classes_2.js b/doc/doxy/html/search/classes_2.js index b8ef1ce..93872ce 100644 --- a/doc/doxy/html/search/classes_2.js +++ b/doc/doxy/html/search/classes_2.js @@ -3,5 +3,6 @@ var searchData= ['engine',['Engine',['../class_engine.html',1,'']]], ['entity',['Entity',['../class_entity.html',1,'']]], ['entityfactory',['EntityFactory',['../class_entity_factory.html',1,'']]], - ['eventhandler',['EventHandler',['../class_event_handler.html',1,'']]] + ['eventhandler',['EventHandler',['../class_event_handler.html',1,'']]], + ['exception',['Exception',['../class_exception.html',1,'']]] ]; diff --git a/doc/doxy/html/search/classes_3.html b/doc/doxy/html/search/classes_3.html index 927e837..fadcfc8 100644 --- a/doc/doxy/html/search/classes_3.html +++ b/doc/doxy/html/search/classes_3.html @@ -1,7 +1,7 @@ - + diff --git a/doc/doxy/html/search/classes_3.js b/doc/doxy/html/search/classes_3.js index 88d397a..b184e26 100644 --- a/doc/doxy/html/search/classes_3.js +++ b/doc/doxy/html/search/classes_3.js @@ -1,4 +1,5 @@ var searchData= [ - ['file',['file',['../classrapidxml_1_1file.html',1,'rapidxml']]] + ['graphicscomponent',['GraphicsComponent',['../class_graphics_component.html',1,'']]], + ['graphicssystem',['GraphicsSystem',['../class_graphics_system.html',1,'']]] ]; diff --git a/doc/doxy/html/search/classes_4.html b/doc/doxy/html/search/classes_4.html index a447290..6056b20 100644 --- a/doc/doxy/html/search/classes_4.html +++ b/doc/doxy/html/search/classes_4.html @@ -1,7 +1,7 @@ - + diff --git a/doc/doxy/html/search/classes_4.js b/doc/doxy/html/search/classes_4.js index b184e26..9f862b0 100644 --- a/doc/doxy/html/search/classes_4.js +++ b/doc/doxy/html/search/classes_4.js @@ -1,5 +1,4 @@ var searchData= [ - ['graphicscomponent',['GraphicsComponent',['../class_graphics_component.html',1,'']]], - ['graphicssystem',['GraphicsSystem',['../class_graphics_system.html',1,'']]] + ['iworldstreamer',['IWorldStreamer',['../class_i_world_streamer.html',1,'']]] ]; diff --git a/doc/doxy/html/search/classes_5.html b/doc/doxy/html/search/classes_5.html index 63484c4..ca7c947 100644 --- a/doc/doxy/html/search/classes_5.html +++ b/doc/doxy/html/search/classes_5.html @@ -1,7 +1,7 @@ - + diff --git a/doc/doxy/html/search/classes_5.js b/doc/doxy/html/search/classes_5.js index 1fc1ea4..3f665cf 100644 --- a/doc/doxy/html/search/classes_5.js +++ b/doc/doxy/html/search/classes_5.js @@ -1,4 +1,4 @@ var searchData= [ - ['header',['header',['../structrapidxml_1_1memory__pool_1_1header.html',1,'rapidxml::memory_pool']]] + ['lowlevelrenderer2d',['LowLevelRenderer2D',['../class_low_level_renderer2_d.html',1,'']]] ]; diff --git a/doc/doxy/html/search/classes_6.html b/doc/doxy/html/search/classes_6.html index f3d7035..eb8935e 100644 --- a/doc/doxy/html/search/classes_6.html +++ b/doc/doxy/html/search/classes_6.html @@ -1,7 +1,7 @@ - + diff --git a/doc/doxy/html/search/classes_6.js b/doc/doxy/html/search/classes_6.js index 9f862b0..f5c955a 100644 --- a/doc/doxy/html/search/classes_6.js +++ b/doc/doxy/html/search/classes_6.js @@ -1,4 +1,4 @@ var searchData= [ - ['iworldstreamer',['IWorldStreamer',['../class_i_world_streamer.html',1,'']]] + ['maincharacter',['MainCharacter',['../class_main_character.html',1,'']]] ]; diff --git a/doc/doxy/html/search/classes_7.html b/doc/doxy/html/search/classes_7.html index 9e5f5c9..1068c77 100644 --- a/doc/doxy/html/search/classes_7.html +++ b/doc/doxy/html/search/classes_7.html @@ -1,7 +1,7 @@ - + diff --git a/doc/doxy/html/search/classes_7.js b/doc/doxy/html/search/classes_7.js index 3f665cf..69fb3fc 100644 --- a/doc/doxy/html/search/classes_7.js +++ b/doc/doxy/html/search/classes_7.js @@ -1,4 +1,9 @@ var searchData= [ - ['lowlevelrenderer2d',['LowLevelRenderer2D',['../class_low_level_renderer2_d.html',1,'']]] + ['physicsbox',['PhysicsBox',['../class_physics_box.html',1,'']]], + ['physicsboxfactory',['PhysicsBoxFactory',['../class_physics_box_factory.html',1,'']]], + ['physicscircle',['PhysicsCircle',['../class_physics_circle.html',1,'']]], + ['physicscirclefactory',['PhysicsCircleFactory',['../class_physics_circle_factory.html',1,'']]], + ['physicscomponent',['PhysicsComponent',['../class_physics_component.html',1,'']]], + ['physicssystem',['PhysicsSystem',['../class_physics_system.html',1,'']]] ]; diff --git a/doc/doxy/html/search/classes_8.html b/doc/doxy/html/search/classes_8.html index 82c35b3..9a52b63 100644 --- a/doc/doxy/html/search/classes_8.html +++ b/doc/doxy/html/search/classes_8.html @@ -1,7 +1,7 @@ - + diff --git a/doc/doxy/html/search/classes_8.js b/doc/doxy/html/search/classes_8.js index 95f79a4..61c84f4 100644 --- a/doc/doxy/html/search/classes_8.js +++ b/doc/doxy/html/search/classes_8.js @@ -1,5 +1,11 @@ var searchData= [ - ['maincharacter',['MainCharacter',['../class_main_character.html',1,'']]], - ['memory_5fpool',['memory_pool',['../classrapidxml_1_1memory__pool.html',1,'rapidxml']]] + ['resource',['Resource',['../class_resource.html',1,'']]], + ['resourcecell',['ResourceCell',['../class_resource_cell.html',1,'']]], + ['resourcemanager',['ResourceManager',['../class_resource_manager.html',1,'']]], + ['resourcerequest',['ResourceRequest',['../class_resource_request.html',1,'']]], + ['resourcetable',['ResourceTable',['../class_resource_table.html',1,'']]], + ['resourcetableentry',['ResourceTableEntry',['../class_resource_table_entry.html',1,'']]], + ['resourcetext',['ResourceText',['../class_resource_text.html',1,'']]], + ['resourcetexture',['ResourceTexture',['../class_resource_texture.html',1,'']]] ]; diff --git a/doc/doxy/html/search/classes_9.html b/doc/doxy/html/search/classes_9.html index 4e83ac8..9a3ffd8 100644 --- a/doc/doxy/html/search/classes_9.html +++ b/doc/doxy/html/search/classes_9.html @@ -1,7 +1,7 @@ - + diff --git a/doc/doxy/html/search/classes_9.js b/doc/doxy/html/search/classes_9.js index cd4d396..2bc812f 100644 --- a/doc/doxy/html/search/classes_9.js +++ b/doc/doxy/html/search/classes_9.js @@ -1,5 +1,8 @@ var searchData= [ - ['node_5fiterator',['node_iterator',['../classrapidxml_1_1node__iterator.html',1,'rapidxml']]], - ['node_5fname_5fpred',['node_name_pred',['../structrapidxml_1_1xml__document_1_1node__name__pred.html',1,'rapidxml::xml_document']]] + ['sprite',['Sprite',['../class_sprite.html',1,'']]], + ['spritemanager',['SpriteManager',['../class_sprite_manager.html',1,'']]], + ['spriterefcountentry',['SpriteRefCountEntry',['../struct_sprite_ref_count_entry.html',1,'']]], + ['spritestatus',['SpriteStatus',['../class_sprite_status.html',1,'']]], + ['spritevbo',['SpriteVbo',['../class_low_level_renderer2_d_1_1_sprite_vbo.html',1,'LowLevelRenderer2D']]] ]; diff --git a/doc/doxy/html/search/classes_a.html b/doc/doxy/html/search/classes_a.html index 616feb6..c78181a 100644 --- a/doc/doxy/html/search/classes_a.html +++ b/doc/doxy/html/search/classes_a.html @@ -1,7 +1,7 @@ - + diff --git a/doc/doxy/html/search/classes_a.js b/doc/doxy/html/search/classes_a.js index 5e32d0a..686ca9e 100644 --- a/doc/doxy/html/search/classes_a.js +++ b/doc/doxy/html/search/classes_a.js @@ -1,10 +1,8 @@ var searchData= [ - ['parse_5ferror',['parse_error',['../classrapidxml_1_1parse__error.html',1,'rapidxml']]], - ['pendingtask',['PendingTask',['../class_graphics_system_1_1_pending_task.html',1,'GraphicsSystem']]], - ['physicsbox',['PhysicsBox',['../class_physics_box.html',1,'']]], - ['physicsboxfactory',['PhysicsBoxFactory',['../class_physics_box_factory.html',1,'']]], - ['physicscomponent',['PhysicsComponent',['../class_physics_component.html',1,'']]], - ['physicssystem',['PhysicsSystem',['../class_physics_system.html',1,'']]], - ['position',['Position',['../class_position.html',1,'']]] + ['testworldstreamer',['TestWorldStreamer',['../class_test_world_streamer.html',1,'']]], + ['texture',['Texture',['../class_low_level_renderer2_d_1_1_texture.html',1,'LowLevelRenderer2D']]], + ['texture',['Texture',['../class_texture.html',1,'']]], + ['texturemanager',['TextureManager',['../class_texture_manager.html',1,'']]], + ['texturerefcountentry',['TextureRefCountEntry',['../class_texture_ref_count_entry.html',1,'']]] ]; diff --git a/doc/doxy/html/search/classes_b.html b/doc/doxy/html/search/classes_b.html index 4461152..b22f396 100644 --- a/doc/doxy/html/search/classes_b.html +++ b/doc/doxy/html/search/classes_b.html @@ -1,7 +1,7 @@ - + diff --git a/doc/doxy/html/search/classes_b.js b/doc/doxy/html/search/classes_b.js index 8e6c3e3..154ce70 100644 --- a/doc/doxy/html/search/classes_b.js +++ b/doc/doxy/html/search/classes_b.js @@ -1,15 +1,5 @@ var searchData= [ - ['resource',['Resource',['../class_resource.html',1,'']]], - ['resourcecell',['ResourceCell',['../class_resource_cell.html',1,'']]], - ['resourcecellfactory',['ResourceCellFactory',['../class_resource_cell_factory.html',1,'']]], - ['resourcefactory',['ResourceFactory',['../class_resource_factory.html',1,'']]], - ['resourcemanager',['ResourceManager',['../class_resource_manager.html',1,'']]], - ['resourcerequest',['ResourceRequest',['../class_resource_request.html',1,'']]], - ['resourcetable',['ResourceTable',['../class_resource_table.html',1,'']]], - ['resourcetableentry',['ResourceTableEntry',['../class_resource_table_entry.html',1,'']]], - ['resourcetext',['ResourceText',['../class_resource_text.html',1,'']]], - ['resourcetextfactory',['ResourceTextFactory',['../class_resource_text_factory.html',1,'']]], - ['resourcetexture',['ResourceTexture',['../class_resource_texture.html',1,'']]], - ['resourcetexturefactory',['ResourceTextureFactory',['../class_resource_texture_factory.html',1,'']]] + ['vec2f',['Vec2f',['../class_vec2f.html',1,'']]], + ['vec2i',['Vec2i',['../class_vec2i.html',1,'']]] ]; diff --git a/doc/doxy/html/search/classes_c.html b/doc/doxy/html/search/classes_c.html index 8f92c86..e71035e 100644 --- a/doc/doxy/html/search/classes_c.html +++ b/doc/doxy/html/search/classes_c.html @@ -1,7 +1,7 @@ - + diff --git a/doc/doxy/html/search/classes_c.js b/doc/doxy/html/search/classes_c.js index 449141c..ae13855 100644 --- a/doc/doxy/html/search/classes_c.js +++ b/doc/doxy/html/search/classes_c.js @@ -1,5 +1,7 @@ var searchData= [ - ['sprite',['Sprite',['../class_sprite.html',1,'']]], - ['spritefactory',['SpriteFactory',['../class_sprite_factory.html',1,'']]] + ['workqueue',['WorkQueue',['../class_work_queue.html',1,'']]], + ['workqueue_3c_20resourcerequest_20_3e',['WorkQueue< ResourceRequest >',['../class_work_queue.html',1,'']]], + ['worldstreamer',['WorldStreamer',['../class_world_streamer.html',1,'']]], + ['worldwindow',['WorldWindow',['../class_world_window.html',1,'']]] ]; diff --git a/doc/doxy/html/search/functions_0.html b/doc/doxy/html/search/functions_0.html index 16a5a52..88c8a26 100644 --- a/doc/doxy/html/search/functions_0.html +++ b/doc/doxy/html/search/functions_0.html @@ -1,7 +1,7 @@ - + diff --git a/doc/doxy/html/search/functions_0.js b/doc/doxy/html/search/functions_0.js index e372b53..4af5ce8 100644 --- a/doc/doxy/html/search/functions_0.js +++ b/doc/doxy/html/search/functions_0.js @@ -1,13 +1,10 @@ var searchData= [ - ['addentry',['addEntry',['../class_resource_table.html#a677834028e027d5488fa583e14f8e14c',1,'ResourceTable']]], - ['align',['align',['../classrapidxml_1_1memory__pool.html#a317396afc1812f08b64a1dd9cde4039b',1,'rapidxml::memory_pool']]], - ['allocate_5faligned',['allocate_aligned',['../classrapidxml_1_1memory__pool.html#a4e9cf53fa5f9da3a8f31b754bd94b4ec',1,'rapidxml::memory_pool']]], - ['allocate_5fattribute',['allocate_attribute',['../classrapidxml_1_1memory__pool.html#a3de2a66c983336e006ea3844e244ed30',1,'rapidxml::memory_pool']]], - ['allocate_5fnode',['allocate_node',['../classrapidxml_1_1memory__pool.html#a4118581c29ee9a2f6b55ebf7dac185f8',1,'rapidxml::memory_pool']]], - ['allocate_5fraw',['allocate_raw',['../classrapidxml_1_1memory__pool.html#a1aed504a747303352e05f61c6ccbbebb',1,'rapidxml::memory_pool']]], - ['allocate_5fstring',['allocate_string',['../classrapidxml_1_1memory__pool.html#a171941b39d55b868358da97462185f58',1,'rapidxml::memory_pool']]], - ['append_5fattribute',['append_attribute',['../classrapidxml_1_1xml__node.html#a33ce3386f8c42dd4db658b75cbb6e6c4',1,'rapidxml::xml_node']]], - ['append_5fnode',['append_node',['../classrapidxml_1_1xml__node.html#a8696d098ecc9c4d2a646b43e91d58e31',1,'rapidxml::xml_node']]], - ['attribute_5fiterator',['attribute_iterator',['../classrapidxml_1_1attribute__iterator.html#a30a82132793bc59d4e7b20f5be6237b9',1,'rapidxml::attribute_iterator::attribute_iterator()'],['../classrapidxml_1_1attribute__iterator.html#a1109344dead88533ae4dd68cea5d9613',1,'rapidxml::attribute_iterator::attribute_iterator(xml_node< Ch > *node)']]] + ['createentity',['createEntity',['../class_entity_factory.html#a3aa5cd5100c9cf9891596ffdad675669',1,'EntityFactory']]], + ['createmaincharacter',['createMainCharacter',['../class_entity_factory.html#a1cb3be59b369c47c853cd35a770b3bfa',1,'EntityFactory']]], + ['createphysicsbox',['createPhysicsBox',['../class_physics_system.html#a60ce8b47b8b509506d20d4f87b4243b2',1,'PhysicsSystem']]], + ['createphysicsboxkinematic',['createPhysicsBoxKinematic',['../class_physics_system.html#a6092d628627413bf466bdf81a76c2496',1,'PhysicsSystem']]], + ['createphysicscircle',['createPhysicsCircle',['../class_physics_system.html#ac246e4403059f9a08efa6913df402aca',1,'PhysicsSystem']]], + ['createphysicscirclekinematic',['createPhysicsCircleKinematic',['../class_physics_system.html#a7c97407a7ef35572d9ebe5e1e2db3df3',1,'PhysicsSystem']]], + ['createxmlnode',['createXmlNode',['../class_entity.html#a8b76053b92d14f54ea2a096dae2c667e',1,'Entity::createXmlNode()'],['../class_graphics_component.html#a0aa72b1c36e3fdfa0e0de4d242a41e65',1,'GraphicsComponent::createXmlNode()'],['../class_physics_component.html#a5a2e3761a13d45a4dd38fe3b69253332',1,'PhysicsComponent::createXmlNode()'],['../class_sprite_status.html#af27ee28a71914590501f4482277d0065',1,'SpriteStatus::createXmlNode()'],['../class_physics_box.html#ab1f504cb2f8aeae61b06047c33cda9a9',1,'PhysicsBox::createXmlNode()'],['../class_physics_circle.html#a6c238978789f221d65464df879e5b898',1,'PhysicsCircle::createXmlNode()']]] ]; diff --git a/doc/doxy/html/search/functions_1.html b/doc/doxy/html/search/functions_1.html index 3b4eacf..215c1bf 100644 --- a/doc/doxy/html/search/functions_1.html +++ b/doc/doxy/html/search/functions_1.html @@ -1,7 +1,7 @@ - + diff --git a/doc/doxy/html/search/functions_1.js b/doc/doxy/html/search/functions_1.js index cd0fe9f..c499fda 100644 --- a/doc/doxy/html/search/functions_1.js +++ b/doc/doxy/html/search/functions_1.js @@ -1,4 +1,5 @@ var searchData= [ - ['becomeready',['becomeReady',['../class_graphics_component.html#a24bc771dc0429b2242df65dcd96189d0',1,'GraphicsComponent::becomeReady()'],['../class_sprite.html#a2a98589b812f519b57db97ad96ab7e15',1,'Sprite::becomeReady()']]] + ['destroydispatcher',['destroyDispatcher',['../class_graphics_component.html#a3de01ba771b3ef54609c01c2a641faa4',1,'GraphicsComponent::destroyDispatcher()'],['../class_physics_component.html#a3c17f238e0ea725fc91a151591bf9510',1,'PhysicsComponent::destroyDispatcher()'],['../class_sprite_status.html#a6670f73fdd13aedb472f2b67ffec46c4',1,'SpriteStatus::destroyDispatcher()'],['../class_physics_box.html#a1e8ca933d2f827edc1a0f88bfbe0ab73',1,'PhysicsBox::destroyDispatcher()'],['../class_physics_circle.html#addccbe0fa780a1ff7a8347ce23e8f515',1,'PhysicsCircle::destroyDispatcher()']]], + ['draw',['draw',['../class_texture.html#aa282cf39212aa2d32c0f6a3098ef32d3',1,'Texture::draw(const Vec2f &pos, const Vec2f &scale, const LowLevelRenderer2D::SpriteVbo &sVbo) const '],['../class_texture.html#a625a23eee608264fde2795470788178d',1,'Texture::draw(const Vec2f &pos, const LowLevelRenderer2D::SpriteVbo &sVbo) const ']]] ]; diff --git a/doc/doxy/html/search/functions_2.html b/doc/doxy/html/search/functions_2.html index 78be8b4..f17abff 100644 --- a/doc/doxy/html/search/functions_2.html +++ b/doc/doxy/html/search/functions_2.html @@ -1,7 +1,7 @@ - + diff --git a/doc/doxy/html/search/functions_2.js b/doc/doxy/html/search/functions_2.js index 5a60952..a6e102b 100644 --- a/doc/doxy/html/search/functions_2.js +++ b/doc/doxy/html/search/functions_2.js @@ -1,18 +1,7 @@ var searchData= [ - ['camera',['Camera',['../class_camera.html#a01f94c3543f56ede7af49dc778f19331',1,'Camera::Camera()'],['../class_low_level_renderer2_d_1_1_camera.html#abd2df7a761fa945563c467c58f53cc8d',1,'LowLevelRenderer2D::Camera::Camera()']]], - ['celltoxmldocument',['cellToXmlDocument',['../world__streamer_8cpp.html#a04f5c0ff531709e65d46ddc922e04a36',1,'world_streamer.cpp']]], - ['clear',['clear',['../classrapidxml_1_1memory__pool.html#aad377c835fdaed1cb2cc9df194cf84e4',1,'rapidxml::memory_pool::clear()'],['../classrapidxml_1_1xml__document.html#a826929ff54242532198701f19ff5f83f',1,'rapidxml::xml_document::clear()'],['../class_low_level_renderer2_d.html#a7e6fc980198d8732dd3707097345ffc3',1,'LowLevelRenderer2D::clear()']]], - ['clone_5fnode',['clone_node',['../classrapidxml_1_1memory__pool.html#a0a10679fc17597d339a0dc107f8a94ac',1,'rapidxml::memory_pool']]], - ['color',['Color',['../class_color.html#a373c542c99fb83ce9c7c08aae76b2718',1,'Color::Color(float r, float g, float b)'],['../class_color.html#a6e4627389673c8b5cce81bf3eec79938',1,'Color::Color(float r, float g, float b, float a)']]], - ['count_5fattributes',['count_attributes',['../namespacerapidxml.html#a6255d15e5d8ad12ebcd7c60da51c97e2',1,'rapidxml']]], - ['count_5fchildren',['count_children',['../namespacerapidxml.html#a21c1cf2814019385e6b8d09e75af1d34',1,'rapidxml']]], - ['createentity',['createEntity',['../class_entity_factory.html#a3aa5cd5100c9cf9891596ffdad675669',1,'EntityFactory']]], - ['createmaincharacter',['createMainCharacter',['../class_entity_factory.html#a1cb3be59b369c47c853cd35a770b3bfa',1,'EntityFactory']]], - ['createphysicsbox',['createPhysicsBox',['../class_physics_box_factory.html#a4f424dbf12659af10323da71c58ebac8',1,'PhysicsBoxFactory::createPhysicsBox()'],['../class_physics_system.html#a60ce8b47b8b509506d20d4f87b4243b2',1,'PhysicsSystem::createPhysicsBox()']]], - ['createphysicsboxkinematic',['createPhysicsBoxKinematic',['../class_physics_box_factory.html#a95bce678bb7dd261b190a31dd5cb902e',1,'PhysicsBoxFactory::createPhysicsBoxKinematic()'],['../class_physics_system.html#a6092d628627413bf466bdf81a76c2496',1,'PhysicsSystem::createPhysicsBoxKinematic()']]], - ['createresource',['createResource',['../class_resource_cell_factory.html#ab385d80dd813e7ae0a10cc9c1a35a164',1,'ResourceCellFactory::createResource()'],['../class_resource_factory.html#aa0b711558e98babc6fccbbdd32d3db7c',1,'ResourceFactory::createResource()'],['../class_resource_text_factory.html#afecad502ae47d393adf0528350fc6236',1,'ResourceTextFactory::createResource()'],['../class_resource_texture_factory.html#a9098659f1cf8502c5da3d796370f7393',1,'ResourceTextureFactory::createResource()']]], - ['createsprite',['createSprite',['../class_graphics_system.html#a5072115e40a9fbeab364367f42df9d3b',1,'GraphicsSystem::createSprite()'],['../class_sprite_factory.html#a6966a937d9d0de5fdd4999af17fb27c9',1,'SpriteFactory::createSprite()']]], - ['createtexture',['createTexture',['../class_low_level_renderer2_d.html#a06f3cbd5111d8e4f6179c24bbcd3463d',1,'LowLevelRenderer2D']]], - ['createxmlnode',['createXmlNode',['../class_entity.html#a8b76053b92d14f54ea2a096dae2c667e',1,'Entity::createXmlNode()'],['../class_physics_box.html#ab1f504cb2f8aeae61b06047c33cda9a9',1,'PhysicsBox::createXmlNode()'],['../class_physics_component.html#a5a2e3761a13d45a4dd38fe3b69253332',1,'PhysicsComponent::createXmlNode()'],['../class_graphics_component.html#a862cb8e27d304c93b579501305a0574e',1,'GraphicsComponent::createXmlNode()'],['../class_sprite.html#a59ed6e725aef75c23866f3c01fff53f4',1,'Sprite::createXmlNode()']]] + ['getentities',['getEntities',['../class_world_streamer.html#a00eb0f9564b6a59ef7b39e9906d2e161',1,'WorldStreamer::getEntities()'],['../class_test_world_streamer.html#ac90c700061a4aef9e27bd1e617486ea0',1,'TestWorldStreamer::getEntities()'],['../class_i_world_streamer.html#a98e18b0890b428792cc5420a753c4f16',1,'IWorldStreamer::getEntities()']]], + ['getheight',['getHeight',['../class_texture.html#a883bf64cca7d60f715bd056659a59f7d',1,'Texture']]], + ['getname',['getName',['../class_texture.html#af36f3061ad7bcb938663ab8fcb75cd7f',1,'Texture']]], + ['getwidth',['getWidth',['../class_texture.html#a19c09b94a868b83e979f601f68977ddb',1,'Texture']]] ]; diff --git a/doc/doxy/html/search/functions_3.html b/doc/doxy/html/search/functions_3.html index ebf2eeb..8a4bbe1 100644 --- a/doc/doxy/html/search/functions_3.html +++ b/doc/doxy/html/search/functions_3.html @@ -1,7 +1,7 @@ - + diff --git a/doc/doxy/html/search/functions_3.js b/doc/doxy/html/search/functions_3.js index edc98ad..0f47bbd 100644 --- a/doc/doxy/html/search/functions_3.js +++ b/doc/doxy/html/search/functions_3.js @@ -1,17 +1,6 @@ var searchData= [ - ['data',['data',['../classrapidxml_1_1file.html#af1c71d65862c7af14e4708e32a80c1de',1,'rapidxml::file::data()'],['../classrapidxml_1_1file.html#aceb8f5ebd577c946a74b1ea3e2e0c576',1,'rapidxml::file::data() const ']]], - ['deccount',['decCount',['../class_resource_table_entry.html#ab7249bcc669ba73eb1732fe85e35ff41',1,'ResourceTableEntry']]], - ['decentry',['decEntry',['../class_resource_table.html#a568ed25b58a5ac7a24b72190bbb14e3b',1,'ResourceTable']]], - ['destroydispatcher',['destroyDispatcher',['../class_physics_box.html#a1e8ca933d2f827edc1a0f88bfbe0ab73',1,'PhysicsBox::destroyDispatcher()'],['../class_physics_component.html#a3c17f238e0ea725fc91a151591bf9510',1,'PhysicsComponent::destroyDispatcher()'],['../class_graphics_component.html#a3de01ba771b3ef54609c01c2a641faa4',1,'GraphicsComponent::destroyDispatcher()'],['../class_sprite.html#a6d304b7aee41b4da7eecf62b4bb85c90',1,'Sprite::destroyDispatcher()'],['../class_resource.html#ae33be645ae137088833fddb83ae50ef0',1,'Resource::destroyDispatcher()'],['../class_resource_cell.html#ab22194a82c2266e2c46223fa95253bb3',1,'ResourceCell::destroyDispatcher()'],['../class_resource_text.html#ad6dff24c7cef9e2b1ef0b533b7cb3592',1,'ResourceText::destroyDispatcher()'],['../class_resource_texture.html#a01e5f29128a800981f74c525dc6a7003',1,'ResourceTexture::destroyDispatcher()']]], - ['destroyentity',['destroyEntity',['../class_entity_factory.html#aa817dae26801da60e19574eab0c920fd',1,'EntityFactory']]], - ['destroygraphicscomponent',['destroyGraphicsComponent',['../class_graphics_system.html#aa0cd675bb7d0570408bfafe8fdb30412',1,'GraphicsSystem::destroyGraphicsComponent()'],['../class_sprite_factory.html#a488ae0285a77bea8a696564ed8bd2637',1,'SpriteFactory::destroyGraphicsComponent()']]], - ['destroyphysicsbox',['destroyPhysicsBox',['../class_physics_box_factory.html#a7cf439b78fc336c227582a60cc122684',1,'PhysicsBoxFactory::destroyPhysicsBox()'],['../class_physics_system.html#a39f19a0a018bff611d4fd15e54cc49ca',1,'PhysicsSystem::destroyPhysicsBox()']]], - ['destroyphysicscomponent',['destroyPhysicsComponent',['../class_physics_system.html#a8c868b02518913fdfbb6750e5a9897b2',1,'PhysicsSystem']]], - ['destroyresource',['destroyResource',['../class_resource_cell_factory.html#af891f02a899487bc01f95e717007efef',1,'ResourceCellFactory::destroyResource(Resource *resource)'],['../class_resource_cell_factory.html#a41b6ab948d25f7627e201aba3a4c3ab2',1,'ResourceCellFactory::destroyResource(ResourceCell *resource)'],['../class_resource_factory.html#a647a1c5b7039f5578d64504a8efe3988',1,'ResourceFactory::destroyResource()'],['../class_resource_text_factory.html#a705bf0a69b03e2d93125e7e6a63dc02b',1,'ResourceTextFactory::destroyResource(Resource *resource)'],['../class_resource_text_factory.html#aad56ec91b0fe43b40211c9eab0a0a9ed',1,'ResourceTextFactory::destroyResource(ResourceText *resource)'],['../class_resource_texture_factory.html#a5caa446a7a88260e776392e68de6a82a',1,'ResourceTextureFactory::destroyResource(ResourceTexture *resource)'],['../class_resource_texture_factory.html#ada974ffa407ac68ee8f79cb631558f11',1,'ResourceTextureFactory::destroyResource(Resource *resource)']]], - ['destroysprite',['destroySprite',['../class_graphics_system.html#adade4310940b54ce4eb1ff1371c04adc',1,'GraphicsSystem::destroySprite()'],['../class_sprite_factory.html#aaffa38bfbd94a898182455d3774b992a',1,'SpriteFactory::destroySprite()']]], - ['destroytexture',['destroyTexture',['../class_low_level_renderer2_d.html#af07ce8d2cb928f61e20c6e0c1d25e210',1,'LowLevelRenderer2D']]], - ['document',['document',['../classrapidxml_1_1xml__attribute.html#a8b6d31d899e27f01bde35b53d98496ec',1,'rapidxml::xml_attribute::document()'],['../classrapidxml_1_1xml__node.html#adb6ad21a4590cf13d4a6a5036e3cdbbc',1,'rapidxml::xml_node::document()']]], - ['draw',['draw',['../class_graphics_component.html#aa9f8c55be356cea6840be46ca5a12f2e',1,'GraphicsComponent::draw()'],['../class_graphics_system.html#a80ac4f715bec45eb49c311aaaa65de9c',1,'GraphicsSystem::draw()'],['../class_low_level_renderer2_d.html#a1eaf6d27664641e7468abcae0dbaa6c7',1,'LowLevelRenderer2D::draw()'],['../class_sprite.html#adf081374d1c56dd5038b80ffa98d6dba',1,'Sprite::draw()']]], - ['drawcolorsquare',['drawColorSquare',['../class_low_level_renderer2_d.html#a91a35cc242c2c2683784d08cfee0e6f8',1,'LowLevelRenderer2D']]] + ['init',['init',['../class_world_streamer.html#a3255018427331cc893bd50979a19e03e',1,'WorldStreamer::init()'],['../class_i_world_streamer.html#a30ceb6682ef2aac15b868f4f175aaf8a',1,'IWorldStreamer::init()']]], + ['isloaded',['isLoaded',['../class_texture.html#aade5860cd91b37acbcedf135b7d9a2fe',1,'Texture']]], + ['isready',['isReady',['../class_graphics_component.html#a4ccda0567ab0317ffb02d638e6396890',1,'GraphicsComponent::isReady()'],['../class_sprite_status.html#af970fdd79d53270033d7902cb3f28c55',1,'SpriteStatus::isReady()'],['../class_sprite.html#a0ebc48730a409500def754ec4476bb51',1,'Sprite::isReady()'],['../class_texture.html#ad84d17750c03aa92826f077921f97319',1,'Texture::isReady()']]] ]; diff --git a/doc/doxy/html/search/functions_4.html b/doc/doxy/html/search/functions_4.html index 7317ea9..cce7ce9 100644 --- a/doc/doxy/html/search/functions_4.html +++ b/doc/doxy/html/search/functions_4.html @@ -1,7 +1,7 @@ - + diff --git a/doc/doxy/html/search/functions_4.js b/doc/doxy/html/search/functions_4.js index ad95c78..d21a9b4 100644 --- a/doc/doxy/html/search/functions_4.js +++ b/doc/doxy/html/search/functions_4.js @@ -1,9 +1,6 @@ var searchData= [ - ['end',['end',['../class_i_world_streamer.html#ab1299e2f271d079e4e45b4d8865c2d83',1,'IWorldStreamer::end()'],['../class_test_world_streamer.html#a8ec2df3ae1966dc4dd072137ac97dd8d',1,'TestWorldStreamer::end()'],['../class_world_streamer.html#a22666f84a99ac6c82ffaae02146d3b86',1,'WorldStreamer::end()']]], - ['endgame',['endGame',['../class_engine.html#accb8cf1843e3b08dfdf794849397c2df',1,'Engine']]], - ['engine',['Engine',['../class_engine.html#aa3174db5c31cd12de9ccca5ca048c1c7',1,'Engine']]], - ['entity',['Entity',['../class_entity.html#a980f368aa07ce358583982821533a54a',1,'Entity']]], - ['entityfactory',['EntityFactory',['../class_entity_factory.html#abaf0c4ceaa682e55f69b0ceae230008a',1,'EntityFactory::EntityFactory()'],['../class_entity_factory.html#a351778e6c9bbd22ff5dd44f4b354bb67',1,'EntityFactory::EntityFactory(Engine *engine)']]], - ['eventhandler',['EventHandler',['../class_event_handler.html#a4505d59ca374eea21f14282c631d833d',1,'EventHandler']]] + ['launch',['launch',['../class_resource_manager.html#a9e887254c90e3d6802883f4fedde61f1',1,'ResourceManager']]], + ['loadresource',['loadResource',['../class_texture.html#a5faf97f474592c2bc8e71148cd6a3751',1,'Texture']]], + ['loadtogpu',['loadToGPU',['../class_texture.html#ae64c917248ac22019a3c2fdeb05e4e01',1,'Texture']]] ]; diff --git a/doc/doxy/html/search/functions_5.html b/doc/doxy/html/search/functions_5.html index 1f1d9ce..e2f6e31 100644 --- a/doc/doxy/html/search/functions_5.html +++ b/doc/doxy/html/search/functions_5.html @@ -1,7 +1,7 @@ - + diff --git a/doc/doxy/html/search/functions_5.js b/doc/doxy/html/search/functions_5.js index eb91f9a..ddb0e71 100644 --- a/doc/doxy/html/search/functions_5.js +++ b/doc/doxy/html/search/functions_5.js @@ -1,8 +1,4 @@ var searchData= [ - ['file',['file',['../classrapidxml_1_1file.html#ae881a3cab1fe7152d45c92a8d7606cb3',1,'rapidxml::file::file(const char *filename)'],['../classrapidxml_1_1file.html#a90707ccd991cc392dcf4bef37eed9d1f',1,'rapidxml::file::file(std::basic_istream< Ch > &stream)']]], - ['filetostring',['fileToString',['../parse__xml_8cpp.html#acc8caadc050e50212bf047025128d836',1,'fileToString(const char *fileName): parse_xml.cpp'],['../file__to__string_8cpp.html#a1c5879dbffd0a5353b35f2813ea57887',1,'fileToString(const char *fileName): file_to_string.cpp'],['../file__to__string_8hpp.html#a1c5879dbffd0a5353b35f2813ea57887',1,'fileToString(const char *fileName): parse_xml.cpp']]], - ['first_5fattribute',['first_attribute',['../classrapidxml_1_1xml__node.html#ae426802be58114ffc41bf30ac6b8c37d',1,'rapidxml::xml_node']]], - ['first_5fnode',['first_node',['../classrapidxml_1_1xml__node.html#a2dedeb4e04bb35e06a9a7bddf6ba652d',1,'rapidxml::xml_node']]], - ['free',['free',['../class_resource.html#a18b75bc5ab3eaa1719292fe6f2848100',1,'Resource::free()'],['../class_resource_cell.html#acfa4b2e3889a0a614c81b48d4831d6b0',1,'ResourceCell::free()'],['../class_resource_text.html#a8beeae30316a57629a545294a8e8da8d',1,'ResourceText::free()'],['../class_resource_texture.html#a21ed35a84be06c5e0cdf3f1141abc005',1,'ResourceTexture::free()']]] + ['obtain',['obtain',['../class_resource_manager.html#a5930b0efc0f979265a11c2ff58d1c078',1,'ResourceManager']]] ]; diff --git a/doc/doxy/html/search/functions_6.html b/doc/doxy/html/search/functions_6.html index c9faaa6..342a076 100644 --- a/doc/doxy/html/search/functions_6.html +++ b/doc/doxy/html/search/functions_6.html @@ -1,7 +1,7 @@ - + diff --git a/doc/doxy/html/search/functions_6.js b/doc/doxy/html/search/functions_6.js index 8388be8..79ef1da 100644 --- a/doc/doxy/html/search/functions_6.js +++ b/doc/doxy/html/search/functions_6.js @@ -1,37 +1,5 @@ var searchData= [ - ['getcamera',['getCamera',['../class_graphics_system.html#ad92b3ffc5de172a53ffd4932f1f7547c',1,'GraphicsSystem::getCamera()'],['../class_low_level_renderer2_d.html#ae0df346f0b068c435c3bd89c4e18f3a8',1,'LowLevelRenderer2D::getCamera()']]], - ['getcell',['getCell',['../class_main_character.html#ab1c161793006236c364430e6d172980b',1,'MainCharacter::getCell() const '],['../class_main_character.html#ad1c7cc786ebb830fcca1510fb1f6c157',1,'MainCharacter::getCell()'],['../class_position.html#ad6321ae4081f00752fb94bd628aebede',1,'Position::getCell() const '],['../class_position.html#ab913fb0f7eafded758339c240088d96f',1,'Position::getCell()'],['../test__is__cell__file_8cpp.html#ad15598a21666e3ffae66664da20c7282',1,'getCell(string fileName): test_is_cell_file.cpp'],['../world__streamer_8cpp.html#ad15598a21666e3ffae66664da20c7282',1,'getCell(string fileName): world_streamer.cpp']]], - ['getcellsize',['getCellSize',['../class_engine.html#a654b23212c98bd7224b2b80bc2ca91f0',1,'Engine::getCellSize()'],['../class_i_world_streamer.html#a984caf2eb6c96ec45f3c5c65cddb9819',1,'IWorldStreamer::getCellSize()'],['../class_world_streamer.html#aa8fd9c20f2802310f27980ffe3bc3d1c',1,'WorldStreamer::getCellSize()']]], - ['getcount',['getCount',['../class_resource_table.html#aa9cc60d687951d93339a2626c6c039c2',1,'ResourceTable::getCount()'],['../class_resource_table_entry.html#affb3700355e72352a8bc54654d34677f',1,'ResourceTableEntry::getCount()']]], - ['getdocument',['getDocument',['../class_resource_cell.html#ae6433f6e11c05f630553270ae698f67c',1,'ResourceCell']]], - ['getentities',['getEntities',['../class_i_world_streamer.html#a98e18b0890b428792cc5420a753c4f16',1,'IWorldStreamer::getEntities()'],['../class_test_world_streamer.html#ac90c700061a4aef9e27bd1e617486ea0',1,'TestWorldStreamer::getEntities()'],['../class_world_streamer.html#a00eb0f9564b6a59ef7b39e9906d2e161',1,'WorldStreamer::getEntities()'],['../class_world_window.html#a3042f99c79c8494e80555926f2437be9',1,'WorldWindow::getEntities()']]], - ['getentityfactory',['getEntityFactory',['../class_i_world_streamer.html#a061b134bf4cd4ceced0f6eb14a23a7cc',1,'IWorldStreamer']]], - ['getgraphicscomponent',['getGraphicsComponent',['../class_entity.html#a56a8cf98ad32020ee71196b5fba03edc',1,'Entity']]], - ['getgraphicssystem',['getGraphicsSystem',['../class_engine.html#a3f26667f69fbb65e8d542c8ec93b9b1b',1,'Engine::getGraphicsSystem()'],['../class_sprite_factory.html#ab00484a26072ce0703d641bf19087bd7',1,'SpriteFactory::getGraphicsSystem()']]], - ['getheight',['getHeight',['../class_camera.html#af34538e81e41b215ffcae141b238a84d',1,'Camera::getHeight()'],['../class_low_level_renderer2_d_1_1_camera.html#aa69b3e3c0f8be2b283cc1e478edc954c',1,'LowLevelRenderer2D::Camera::getHeight()'],['../class_low_level_renderer2_d_1_1_texture.html#a0a5e34ba7428004e5ba4408135302794',1,'LowLevelRenderer2D::Texture::getHeight()']]], - ['getid',['getId',['../class_entity.html#ac491ad0371fe54e82aa82ea39fa8aa93',1,'Entity']]], - ['getmaincharacter',['getMainCharacter',['../class_engine.html#adb95009cbd48e4dff024441ed2a6c97a',1,'Engine']]], - ['getname',['getName',['../class_resource.html#a0d47fabac6aa43499753d2f42208cdb9',1,'Resource::getName()'],['../class_resource_request.html#af491bc9f7e62484d641ab82faedc03d9',1,'ResourceRequest::getName()']]], - ['getnode',['getNode',['../class_resource_cell.html#aa4127f0a904a92f9128b4f5339e92875',1,'ResourceCell']]], - ['getoffset',['getOffset',['../class_position.html#a17ad01710463b1447cb55ffd59522890',1,'Position::getOffset() const '],['../class_position.html#a389c33b073c67b578e3f6f5390fa4e67',1,'Position::getOffset()']]], - ['getphysicscomponent',['getPhysicsComponent',['../class_entity.html#aa182100129320fa6c1977fdcf689258a',1,'Entity']]], - ['getphysicssystem',['getPhysicsSystem',['../class_engine.html#a81ed5136bb3047f9edd889ac83a97a84',1,'Engine::getPhysicsSystem()'],['../class_physics_box_factory.html#aea24907a7c79014fcdcd8f885c2ccb04',1,'PhysicsBoxFactory::getPhysicsSystem()']]], - ['getpointer',['getPointer',['../class_resource_table_entry.html#a605e7d441e1e8293f047cd652703b3f8',1,'ResourceTableEntry']]], - ['getposition',['getPosition',['../class_entity.html#a1539040ddf3a5b9d0a7acd8907785c0d',1,'Entity::getPosition()'],['../class_physics_box.html#a189de09086e5a6b79819cf92dd086468',1,'PhysicsBox::getPosition()'],['../class_physics_component.html#aeee07d4204bae0ff7747f5c0009907a1',1,'PhysicsComponent::getPosition()'],['../class_camera.html#a59e7e449271a6759e56e274ed6d6afdf',1,'Camera::getPosition()'],['../class_graphics_component.html#a01e4202e9debaa52598caec001dc0d47',1,'GraphicsComponent::getPosition() const '],['../class_graphics_component.html#aedc03dd14d72edb4b53b2085793f2de9',1,'GraphicsComponent::getPosition()'],['../class_low_level_renderer2_d_1_1_camera.html#a4d148d4b5c3bb329f7e9d08dd284497d',1,'LowLevelRenderer2D::Camera::getPosition()']]], - ['getpriority',['getPriority',['../class_graphics_component.html#adeb08c9a697f4dd8c1c9696105ae65af',1,'GraphicsComponent']]], - ['getrenderer',['getRenderer',['../class_graphics_system.html#ae64470872deb4df6061b0cd7b4dcea98',1,'GraphicsSystem::getRenderer()'],['../class_resource_texture_factory.html#afc65c80687513e5eee089a68baff8be5',1,'ResourceTextureFactory::getRenderer()']]], - ['getresource',['getResource',['../class_resource_table.html#aa46979cf59f719810b0d4d036c7765a1',1,'ResourceTable']]], - ['getscale',['getScale',['../class_graphics_component.html#ac737b82b77b1ea15ddbf721ed3ea519e',1,'GraphicsComponent']]], - ['getsingleton',['getSingleton',['../class_resource_manager.html#a32a3d2c3f98b5a34f8da4d6c9632e021',1,'ResourceManager']]], - ['getstatus',['getStatus',['../class_resource.html#abc9f11c8d49c927092988827a8ee895c',1,'Resource']]], - ['gettext',['getText',['../class_resource_text.html#aa0b1227d39cc8c3e11735879f5c83b32',1,'ResourceText']]], - ['gettexture',['getTexture',['../class_resource_texture.html#a969b484d9420210b577c510d3a1f2499',1,'ResourceTexture']]], - ['gettype',['getType',['../class_resource_request.html#a32bb9f0786563b6bae59d057e2467457',1,'ResourceRequest']]], - ['gettypeofentity',['getTypeOfEntity',['../class_entity.html#ae43060c4754d57ca834463e9b6c24ed6',1,'Entity']]], - ['getwidth',['getWidth',['../class_camera.html#a1b29933f81edb6cac6815a139442e6c5',1,'Camera::getWidth()'],['../class_low_level_renderer2_d_1_1_camera.html#a90ecdb07b6aefec3ec5b695d804e8399',1,'LowLevelRenderer2D::Camera::getWidth()'],['../class_low_level_renderer2_d_1_1_texture.html#a6965a6da9e04c72d89e891b9c927a672',1,'LowLevelRenderer2D::Texture::getWidth()']]], - ['getwindowposition',['getWindowPosition',['../class_world_streamer.html#af8d12ecd16d8bb7e462d3925c3c653b2',1,'WorldStreamer']]], - ['getworld',['getWorld',['../class_physics_system.html#a375c7e34377b12af460db7dd30467c26',1,'PhysicsSystem']]], - ['graphicscomponent',['GraphicsComponent',['../class_graphics_component.html#a67fc1b715989a5e18d32e26b27a55c50',1,'GraphicsComponent']]], - ['graphicssystem',['GraphicsSystem',['../class_graphics_system.html#abb71bb483ad2e5a49e5ca177873fec55',1,'GraphicsSystem']]] + ['release',['release',['../class_resource_manager.html#aa4a9b03566d9d95933d66434d1a7ca77',1,'ResourceManager::release()'],['../class_texture.html#a16c096defe40a38d6f22bd08b63eb826',1,'Texture::release()']]], + ['releaseresource',['releaseResource',['../class_texture.html#adad5ba7ee347f2c2bc81ec257fa6a342',1,'Texture']]] ]; diff --git a/doc/doxy/html/search/functions_7.html b/doc/doxy/html/search/functions_7.html index ec330da..04db8a6 100644 --- a/doc/doxy/html/search/functions_7.html +++ b/doc/doxy/html/search/functions_7.html @@ -1,7 +1,7 @@ - + diff --git a/doc/doxy/html/search/functions_7.js b/doc/doxy/html/search/functions_7.js index 47fa02e..f653197 100644 --- a/doc/doxy/html/search/functions_7.js +++ b/doc/doxy/html/search/functions_7.js @@ -1,5 +1,7 @@ var searchData= [ - ['handle',['handle',['../class_event_handler.html#a7ac8e1a1cc6661b4738ea521b5d91706',1,'EventHandler']]], - ['hasstopped',['hasStopped',['../class_resource_manager.html#aa83c1a5f8d0277cc3c309733f1289f29',1,'ResourceManager']]] + ['setfiltermode',['setFilterMode',['../class_texture.html#a7e9e335038d30f451081f76983cd9afb',1,'Texture']]], + ['setfullscreen',['setFullScreen',['../class_graphics_system.html#a5f40861a47c315c8e16e89ddf3f25d80',1,'GraphicsSystem']]], + ['stop',['stop',['../class_resource_manager.html#a0344d6d07d7649b5c44b26a1c43b3219',1,'ResourceManager']]], + ['swap',['swap',['../class_graphics_system.html#a8b5eba17b32d342f9d2ace7c2f439244',1,'GraphicsSystem']]] ]; diff --git a/doc/doxy/html/search/functions_8.html b/doc/doxy/html/search/functions_8.html index afd4fac..6bab2c8 100644 --- a/doc/doxy/html/search/functions_8.html +++ b/doc/doxy/html/search/functions_8.html @@ -1,7 +1,7 @@ - + diff --git a/doc/doxy/html/search/functions_8.js b/doc/doxy/html/search/functions_8.js index 1dc2ba8..0d6c05f 100644 --- a/doc/doxy/html/search/functions_8.js +++ b/doc/doxy/html/search/functions_8.js @@ -1,14 +1,4 @@ var searchData= [ - ['inccount',['incCount',['../class_resource_table_entry.html#ad649e6f872dd17cf28c3f77f45159e8d',1,'ResourceTableEntry']]], - ['incentry',['incEntry',['../class_resource_table.html#a3f4920f336294b34cc3e451c96f80379',1,'ResourceTable']]], - ['init',['init',['../classrapidxml_1_1memory__pool.html#a1076043ef092e327e59dd988c1ba82fb',1,'rapidxml::memory_pool::init()'],['../class_engine.html#ab44d76e2ff6057e73d6210cf9af0d89e',1,'Engine::init()'],['../class_i_world_streamer.html#a30ceb6682ef2aac15b868f4f175aaf8a',1,'IWorldStreamer::init()'],['../class_resource_manager.html#a361b0f5b37615ef759ff6e345a63f616',1,'ResourceManager::init()'],['../class_test_world_streamer.html#a0bdd09d57168c90909a78957db1b2e97',1,'TestWorldStreamer::init()'],['../class_world_streamer.html#a3255018427331cc893bd50979a19e03e',1,'WorldStreamer::init()']]], - ['insert_5fattribute',['insert_attribute',['../classrapidxml_1_1xml__node.html#a9fe659cdf4a5b3bbf5e8ffc98db5a84f',1,'rapidxml::xml_node']]], - ['insert_5fcoded_5fcharacter',['insert_coded_character',['../classrapidxml_1_1xml__document.html#ae33040bcfa8e5a29dc6f6f130984a981',1,'rapidxml::xml_document']]], - ['insert_5fnode',['insert_node',['../classrapidxml_1_1xml__node.html#a666880f42a7e486d78cc45ed51c7c46d',1,'rapidxml::xml_node']]], - ['iscellfile',['isCellFile',['../test__is__cell__file_8cpp.html#af686733c1ba187fc74e20c2603a71b9c',1,'isCellFile(string fileName): test_is_cell_file.cpp'],['../world__streamer_8cpp.html#af686733c1ba187fc74e20c2603a71b9c',1,'isCellFile(string fileName): world_streamer.cpp']]], - ['isloaded',['isLoaded',['../class_graphics_component.html#ac849efb7ead2ac02326e79944fd8be68',1,'GraphicsComponent::isLoaded()'],['../class_sprite.html#a6c1f57f78b0a40a70a941266ebe6b483',1,'Sprite::isLoaded()']]], - ['isready',['isReady',['../class_graphics_component.html#a4ccda0567ab0317ffb02d638e6396890',1,'GraphicsComponent::isReady()'],['../class_sprite.html#a0ebc48730a409500def754ec4476bb51',1,'Sprite::isReady()']]], - ['isvisible',['isVisible',['../class_graphics_component.html#a5418e4001004fa20e0bcfc9776dd2986',1,'GraphicsComponent']]], - ['iworldstreamer',['IWorldStreamer',['../class_i_world_streamer.html#a51d7865fbb750126a84acfeaf0cf3a79',1,'IWorldStreamer::IWorldStreamer()'],['../class_i_world_streamer.html#a535a81132f38b8a78bbb7acf8a09ab4e',1,'IWorldStreamer::IWorldStreamer(EntityFactory *entityFactory)']]] + ['update',['update',['../class_graphics_system.html#a1d3dbce3ced4489bb51a69177ae99fa9',1,'GraphicsSystem::update()'],['../class_world_streamer.html#a87a6713b0a28875b64459cf800a765b3',1,'WorldStreamer::update()'],['../class_i_world_streamer.html#ad35eefe1183c1d11b3001e8ce62f7924',1,'IWorldStreamer::update()']]] ]; diff --git a/doc/doxy/html/search/namespaces_0.html b/doc/doxy/html/search/namespaces_0.html index dc60686..6d5853b 100644 --- a/doc/doxy/html/search/namespaces_0.html +++ b/doc/doxy/html/search/namespaces_0.html @@ -1,7 +1,7 @@ - + diff --git a/doc/doxy/html/search/namespaces_0.js b/doc/doxy/html/search/namespaces_0.js index 8aedd1d..06c403c 100644 --- a/doc/doxy/html/search/namespaces_0.js +++ b/doc/doxy/html/search/namespaces_0.js @@ -1,4 +1,4 @@ var searchData= [ - ['genfile',['genfile',['../namespacegenfile.html',1,'']]] + ['xmlstr',['xmlstr',['../namespacexmlstr.html',1,'']]] ]; diff --git a/doc/doxy/html/search/search.css b/doc/doxy/html/search/search.css index 7803cf7..4d7612f 100644 --- a/doc/doxy/html/search/search.css +++ b/doc/doxy/html/search/search.css @@ -100,8 +100,8 @@ display: none; position: absolute; left: 0; top: 0; - border: 1px solid #84B981; - background-color: #F8FBF8; + border: 1px solid #90A5CE; + background-color: #F9FAFC; z-index: 1; padding-top: 4px; padding-bottom: 4px; @@ -145,7 +145,7 @@ a.SelectItem:active { a.SelectItem:hover { color: #FFFFFF; - background-color: #396336; + background-color: #3D578C; outline-style: none; text-decoration: none; cursor: pointer; @@ -164,7 +164,7 @@ iframe#MSearchResults { position: absolute; left: 0; top: 0; border: 1px solid #000; - background-color: #EBF4EB; + background-color: #EEF1F7; } /* ----------------------------------- */ @@ -199,7 +199,7 @@ body.SRPage { .SRSymbol { font-weight: bold; - color: #3E6D3C; + color: #425E97; font-family: Arial, Verdana, sans-serif; text-decoration: none; outline: none; @@ -207,7 +207,7 @@ body.SRPage { a.SRScope { display: block; - color: #3E6D3C; + color: #425E97; font-family: Arial, Verdana, sans-serif; text-decoration: none; outline: none; @@ -240,7 +240,7 @@ DIV.searchresults { /*---------------- External search page results */ .searchresult { - background-color: #EEF5ED; + background-color: #F0F3F8; } .pages b { diff --git a/doc/doxy/html/search/search.js b/doc/doxy/html/search/search.js index fae99fb..dedce3b 100644 --- a/doc/doxy/html/search/search.js +++ b/doc/doxy/html/search/search.js @@ -1,40 +1,3 @@ -// Search script generated by doxygen -// Copyright (C) 2009 by Dimitri van Heesch. - -// The code in this file is loosly based on main.js, part of Natural Docs, -// which is Copyright (C) 2003-2008 Greg Valure -// Natural Docs is licensed under the GPL. - -var indexSectionsWithContent = -{ - 0: "_abcdefghilmnopqrstuvwxy~", - 1: "acefghilmnprstvwx", - 2: "gr", - 3: "cdefgilmprstvw", - 4: "abcdefghilmnoprstuvwx~", - 5: "_abcdefghilmnopqrstuvwxy", - 6: "diprtvw", - 7: "npst", - 8: "dlnoqrsu", - 9: "eglprswx", - 10: "lnrs" -}; - -var indexSectionNames = -{ - 0: "all", - 1: "classes", - 2: "namespaces", - 3: "files", - 4: "functions", - 5: "variables", - 6: "typedefs", - 7: "enums", - 8: "enumvalues", - 9: "related", - 10: "defines" -}; - function convertToId(search) { var result = ''; @@ -46,11 +9,11 @@ function convertToId(search) { result+=c; } - else if (cn<16) + else if (cn<16) { result+="_0"+cn.toString(16); } - else + else { result+="_"+cn.toString(16); } @@ -89,14 +52,14 @@ function getYPos(item) /* A class handling everything associated with the search panel. Parameters: - name - The name of the global variable that will be + name - The name of the global variable that will be storing this instance. Is needed to be able to set timeouts. resultPath - path to use for external files */ function SearchBox(name, resultsPath, inFrame, label) { if (!name || !resultsPath) { alert("Missing parameters to SearchBox."); } - + // ---------- Instance variables this.name = name; this.resultsPath = resultsPath; @@ -173,7 +136,7 @@ function SearchBox(name, resultsPath, inFrame, label) } // stop selection hide timer - if (this.hideTimeout) + if (this.hideTimeout) { clearTimeout(this.hideTimeout); this.hideTimeout=0; @@ -202,7 +165,7 @@ function SearchBox(name, resultsPath, inFrame, label) if (e.shiftKey==1) { this.OnSearchSelectShow(); - var win=this.DOMSearchSelectWindow(); + var win=this.DOMSearchSelectWindow(); for (i=0;i - -OWMAN: renderer/sprite.hpp Source File + +owman: sprite.hpp Source File + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -63,15 +70,29 @@ + +
    + +
    +
    +
    + +
    @@ -80,98 +101,105 @@
    - -
    sprite.hpp
    -Go to the documentation of this file.
    1 #include "graphics_component.hpp"
    - -
    3 #include "../math/vec2f.hpp"
    -
    4 
    -
    5 #ifndef SPRITE_FACTORY
    -
    6 class SpriteFactory;
    -
    7 #endif
    -
    8 
    -
    9 #ifndef RESOURCE_TEXTURE
    -
    10 class ResourceTexture;
    -
    11 #endif
    -
    12 
    -
    13 #ifndef GRAPHICS_SYSTEM
    -
    14 class GraphicsSystem;
    -
    15 #endif
    -
    16 
    -
    17 #ifndef SPRITE
    -
    18 #define SPRITE
    -
    19 
    -
    23 class Sprite : public GraphicsComponent
    -
    24 {
    -
    25 
    -
    26  friend class Entity;
    -
    27  friend class GraphicsSystem;
    -
    28 
    -
    29  friend class SpriteFactory;
    -
    30 
    - -
    32 
    - -
    34 
    -
    35 public:
    +
    1 #ifndef SPRITE
    +
    2 #define SPRITE
    +
    3 
    +
    4 #include "graphics_component.hpp"
    +
    5 #include "low_level_renderer_2d.hpp"
    +
    6 #include "../math/vec2f.hpp"
    +
    7 #include <map>
    +
    8 #include <vector>
    +
    9 #include "animation.hpp"
    +
    10 
    +
    11 class SpriteManager;
    +
    12 class ResourceTexture;
    +
    13 class GraphicsSystem;
    +
    14 class Texture;
    +
    15 class ResourceText;
    +
    16 class SpriteStatus;
    +
    17 
    +
    21 class Sprite
    +
    22 {
    +
    23 
    +
    24  enum class Status
    +
    25  {
    +
    26  START,
    +
    27  LOADING_XML,
    +
    28  LOADING_TEXTURES,
    +
    29  EVERYTHING_LOADED
    +
    30  };
    +
    31 
    +
    32  friend class Entity;
    +
    33  friend class GraphicsSystem;
    +
    34  friend class SpriteManager;
    +
    35  friend class SpriteStatus;
    36 
    - - -
    39  myFactory(factory){}
    -
    40 
    -
    41  void update(unsigned int delta){}
    -
    42  void draw()const;
    -
    43 
    -
    48  bool isReady()const;
    -
    49 
    -
    54  bool isLoaded()const;
    -
    55 
    -
    61  void becomeReady()const;
    -
    62 
    - +
    37  SpriteManager* mySpriteManager;
    +
    38 
    +
    39  std::string name;
    +
    40  std::string fileName;
    +
    41 
    +
    42  std::map<std::string, unsigned> textureNameToIndex;
    +
    43  std::vector<Texture*> textures;
    +
    44 
    +
    45  std::map<std::string, unsigned> animNameToIndex;
    +
    46  std::map<std::string, unsigned> idToIndex;
    +
    47  std::vector<Animation> animations;
    +
    48 
    +
    49  Status status;
    +
    50  ResourceText* resourceText;
    +
    51  std::string xmlText;
    +
    52  rapidxml::xml_document<> doc;
    +
    53  rapidxml::xml_node<>* root;
    +
    54 
    +
    55 public:
    +
    56 
    +
    57  Sprite(SpriteManager* spriteManager, const std::string& name);
    +
    58 
    +
    59  SpriteManager* getSpriteManager();
    +
    60  GraphicsSystem* getGraphicsSystem();
    +
    61 
    +
    62  void update();
    +
    63 
    +
    66  bool isReady()const;
    +
    67 
    +
    68  const std::string& getName()const;
    69 
    -
    70  ~Sprite();
    +
    70  unsigned getAnimIndex(const std::string& animName)const;
    71 
    -
    75  void destroyDispatcher();
    -
    76 
    -
    77 };
    -
    78 
    -
    79 #endif
    -
    Sprite(SpriteFactory *factory)
    Definition: sprite.hpp:37
    -
    Definition: graphics_component.hpp:17
    -
    ~Sprite()
    Definition: sprite.cpp:75
    -
    void update(unsigned int delta)
    Definition: sprite.hpp:41
    - -
    bool isLoaded() const
    return if this component is loaded To be loaded means that it has been loaded to main \ memory ...
    Definition: sprite.cpp:17
    -
    Represents a static sprite This sprite has no animations.
    Definition: sprite.hpp:23
    +
    72  ~Sprite();
    +
    73 
    +
    74 private:
    +
    75 
    +
    80  void release();
    +
    81 
    +
    82 };
    +
    83 
    +
    84 #endif
    +
    Definition: resource_text.hpp:9
    +
    Represents a static sprite This sprite has no animations.
    Definition: sprite.hpp:21
    Components compounded entity.
    Definition: entity.hpp:19
    -
    void becomeReady() const
    load to video memory Once the resource of this component has been loaded \ into main memory it has to...
    Definition: sprite.cpp:22
    -
    Definition: graphics_system.hpp:15
    -
    bool isReady() const
    return if this components is ready To be ready means that is has been loaded to video \ memory ...
    Definition: sprite.cpp:12
    - -
    Definition: sprite_factory.hpp:11
    -
    void draw() const
    Definition: sprite.cpp:27
    -
    Definition: rapidxml.hpp:139
    -
    Definition: rapidxml.hpp:137
    -
    SpriteFactory * myFactory
    Definition: sprite.hpp:31
    -
    ResourceTexture * resourceTexture
    Definition: sprite.hpp:33
    -
    void destroyDispatcher()
    this will call to the corresponding GraphicsSystem function \ in charge of deleting this GraphicsComp...
    Definition: sprite.cpp:83
    -
    rapidxml::xml_node * createXmlNode(rapidxml::xml_document<> *doc)
    Creates a graphics XML node Returns an XML node representing the class itself.
    Definition: sprite.cpp:35
    -
    Represents a resource texture Since OpenGL does not allow to make any call from any other thread othe...
    Definition: resource_texture.hpp:24
    +
    Definition: graphics_system.hpp:17
    +
    bool isReady() const
    return if this component is ready
    Definition: sprite.cpp:34
    +
    Definition: texture.hpp:10
    +
    Represents a resource texture Since OpenGL does not allow to make any call from any other thread othe...
    Definition: resource_texture.hpp:19
    +
    Definition: sprite_manager.hpp:35
    +
    Definition: sprite_status.hpp:10
    +
    - + diff --git a/doc/doxy/html/sprite__manager_8hpp_source.html b/doc/doxy/html/sprite__manager_8hpp_source.html new file mode 100644 index 0000000..b1445a2 --- /dev/null +++ b/doc/doxy/html/sprite__manager_8hpp_source.html @@ -0,0 +1,200 @@ + + + + + + +owman: sprite_manager.hpp Source File + + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    owman +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    +
    sprite_manager.hpp
    +
    +
    +
    1 #ifndef SPRITE_MANAGER
    +
    2 #define SPRITE_MANAGER
    +
    3 
    +
    4 #include <vector>
    +
    5 #include <string>
    +
    6 #include <map>
    +
    7 #include <set>
    +
    8 
    +
    9 class GraphicsSystem;
    +
    10 class SpriteStatus;
    +
    11 class Sprite;
    +
    12 
    +
    13 // We use this struct to keep track of how many
    +
    14 // sprite statuses use each sprite
    + +
    16 {
    + +
    18  :count(0), sprite(0)
    +
    19  {}
    +
    20 
    +
    21  mutable int count; //< this variable is not involved in the comp function
    +
    22  Sprite* sprite;
    +
    23 
    +
    24 };
    +
    25 
    + +
    27 {
    +
    28  bool operator()(const SpriteRefCountEntry& entry1, const SpriteRefCountEntry& entry2);
    +
    29 };
    +
    30 
    +
    31 typedef
    +
    32 std::set<SpriteRefCountEntry, CompareSpriteByName>
    +
    33 SpritesSet;
    +
    34 
    + +
    36 {
    +
    37 
    +
    38 public:
    +
    39  // constants
    +
    40  static const std::string spritesPath;
    +
    41 
    +
    42 private:
    +
    43  // friendship
    +
    44  friend class GraphicsSystem;
    +
    45 
    +
    46  // members
    +
    47  GraphicsSystem* graphicsSystem;
    +
    48 
    +
    49  SpritesSet sprites;
    +
    50  //std::vector<SpriteStatus*> spriteStatuses;
    +
    51 
    +
    52  // functions
    +
    53  SpriteManager(){}
    +
    54 
    +
    55  SpritesSet::iterator getSpriteByName(const std::string& name);
    +
    56 
    +
    62  void releaseSprite(Sprite* sprite);
    +
    63 
    +
    64 public:
    +
    65 
    +
    66  SpriteManager(GraphicsSystem* graphicsSystem);
    +
    67 
    +
    68  GraphicsSystem* getGraphicsSystem();
    +
    69 
    +
    70  SpriteStatus* instanceSprite(const std::string name);
    +
    71  void releaseSpriteInstance(SpriteStatus* spriteStatus);
    +
    72 
    +
    73  void update(float delta);
    +
    74 
    +
    75 };
    +
    76 
    +
    77 #endif // SPRITE_MANAGER
    +
    void update(unsigned int delta)
    update animations
    Definition: graphics_system.cpp:38
    +
    Represents a static sprite This sprite has no animations.
    Definition: sprite.hpp:21
    +
    Definition: sprite_manager.hpp:15
    +
    Definition: graphics_system.hpp:17
    +
    Definition: sprite_manager.hpp:35
    +
    Definition: sprite_status.hpp:10
    +
    Definition: sprite_manager.hpp:26
    +
    +
    + + + + diff --git a/doc/doxy/html/sprite__status_8hpp_source.html b/doc/doxy/html/sprite__status_8hpp_source.html new file mode 100644 index 0000000..6df2813 --- /dev/null +++ b/doc/doxy/html/sprite__status_8hpp_source.html @@ -0,0 +1,172 @@ + + + + + + +owman: sprite_status.hpp Source File + + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    owman +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    +
    sprite_status.hpp
    +
    +
    +
    1 #ifndef SPRITE_STATUS
    +
    2 #define SPRITE_STATUS
    +
    3 
    +
    4 #include "graphics_component.hpp"
    +
    5 #include <string>
    +
    6 
    +
    7 class Sprite;
    +
    8 class SpriteManager;
    +
    9 
    + +
    11 {
    +
    12  unsigned currentAnimation;
    +
    13  unsigned currentFrame;
    +
    14  float elapsedTime; //< elapsed time in the current frame
    +
    15  Sprite* mySprite;
    +
    16 
    +
    17 public:
    +
    18 
    +
    19  SpriteStatus(Sprite* sprite);
    +
    20 
    +
    21  int getCurrentFrame()const;
    +
    22  float getElapsedTime()const;
    +
    23 
    +
    24  void setCurrentFrame(int frame);
    +
    25  void setElapsedTime(float time);
    +
    26 
    +
    27  Sprite* getSprite();
    +
    28  SpriteManager* getSpriteManager();
    +
    29 
    +
    30  bool isReady()const;
    +
    31  void update(float delta);
    +
    32  void draw()const;
    +
    33 
    +
    34  unsigned getAnimationIndex()const;
    +
    35  void setAnimation(const std::string& animName);
    +
    36  void setAnimation(unsigned animIndex);
    +
    37 
    +
    38  rapidxml::xml_node<>* createXmlNode(rapidxml::xml_document<>* doc);
    +
    39 
    +
    40  void destroyDispatcher();
    +
    41 
    +
    42 };
    +
    43 
    +
    44 #endif // SPRITE_STATUS
    +
    Definition: graphics_component.hpp:12
    +
    Represents a static sprite This sprite has no animations.
    Definition: sprite.hpp:21
    +
    bool isReady() const
    return if this components is ready To be ready means that is has been loaded to video \ memory ...
    Definition: sprite_status.cpp:56
    +
    rapidxml::xml_node * createXmlNode(rapidxml::xml_document<> *doc)
    Creates a graphics XML node Returns an XML node representing the class itself.
    Definition: sprite_status.cpp:126
    +
    void destroyDispatcher()
    this will call to the corresponding GraphicsSystem function \ in charge of deleting this GraphicsComp...
    Definition: sprite_status.cpp:138
    +
    Definition: sprite_manager.hpp:35
    +
    Definition: sprite_status.hpp:10
    +
    +
    + + + + diff --git a/doc/doxy/html/stack__trace_8hpp_source.html b/doc/doxy/html/stack__trace_8hpp_source.html new file mode 100644 index 0000000..f6a4f4e --- /dev/null +++ b/doc/doxy/html/stack__trace_8hpp_source.html @@ -0,0 +1,196 @@ + + + + + + +owman: stack_trace.hpp Source File + + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    owman +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    +
    stack_trace.hpp
    +
    +
    +
    1 #include <libunwind.h>
    +
    2 
    +
    3 static void debugInfo(FILE* out,const void* ip)
    +
    4 {
    +
    5 
    +
    6  char *debuginfo_path=NULL;
    +
    7 
    +
    8  Dwfl_Callbacks callbacks={
    +
    9  .find_elf=dwfl_linux_proc_find_elf,
    +
    10  .find_debuginfo=dwfl_standard_find_debuginfo,
    +
    11  .debuginfo_path=&debuginfo_path,
    +
    12  };
    +
    13 
    +
    14  Dwfl* dwfl=dwfl_begin(&callbacks);
    +
    15  assert(dwfl!=NULL);
    +
    16 
    +
    17  assert(dwfl_linux_proc_report (dwfl, getpid())==0);
    +
    18  assert(dwfl_report_end (dwfl, NULL, NULL)==0);
    +
    19 
    +
    20  Dwarf_Addr addr = (uintptr_t)ip;
    +
    21 
    +
    22  Dwfl_Module* module=dwfl_addrmodule (dwfl, addr);
    +
    23 
    +
    24  const char* function_name = dwfl_module_addrname(module, addr);
    +
    25 
    +
    26  fprintf(out,"%s(",function_name);
    +
    27 
    +
    28  Dwfl_Line *line=dwfl_getsrc (dwfl, addr);
    +
    29  if(line!=NULL)
    +
    30  {
    +
    31  int nline;
    +
    32  Dwarf_Addr addr;
    +
    33  const char* filename=dwfl_lineinfo (line, &addr,&nline,NULL,NULL,NULL);
    +
    34  fprintf(out,"%s:%d",strrchr(filename,'/')+1,nline);
    +
    35  }
    +
    36  else
    +
    37  {
    +
    38  fprintf(out,"%p",ip);
    +
    39  }
    +
    40 }
    +
    41 
    +
    42 static void __attribute__((noinline)) printStackTrace(FILE* out, int skip)
    +
    43 {
    +
    44 
    +
    45  unw_context_t uc;
    +
    46  unw_getcontext(&uc);
    +
    47 
    +
    48  unw_cursor_t cursor;
    +
    49  unw_init_local(&cursor, &uc);
    +
    50 
    +
    51  while(unw_step(&cursor)>0)
    +
    52  {
    +
    53 
    +
    54  unw_word_t ip;
    +
    55  unw_get_reg(&cursor, UNW_REG_IP, &ip);
    +
    56 
    +
    57  unw_word_t offset;
    +
    58  char name[32];
    +
    59  assert(unw_get_proc_name(&cursor, name,sizeof(name), &offset)==0);
    +
    60 
    +
    61  if(skip<=0)
    +
    62  {
    +
    63  fprintf(out,"\tat ");
    +
    64  debugInfo(out,(void*)(ip-4));
    +
    65  fprintf(out,")\n");
    +
    66  }
    +
    67 
    +
    68  if(strcmp(name,"main")==0)
    +
    69  break;
    +
    70 
    +
    71  skip--;
    +
    72 
    +
    73  }
    +
    74 
    +
    75 }
    +
    +
    + + + + diff --git a/doc/doxy/html/struct_compare_sprite_by_name-members.html b/doc/doxy/html/struct_compare_sprite_by_name-members.html new file mode 100644 index 0000000..136e154 --- /dev/null +++ b/doc/doxy/html/struct_compare_sprite_by_name-members.html @@ -0,0 +1,127 @@ + + + + + + +owman: Member List + + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    owman +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    +
    CompareSpriteByName Member List
    +
    +
    + +

    This is the complete list of members for CompareSpriteByName, including all inherited members.

    + + +
    operator()(const SpriteRefCountEntry &entry1, const SpriteRefCountEntry &entry2) (defined in CompareSpriteByName)CompareSpriteByName
    +
    + + + + diff --git a/doc/doxy/html/struct_compare_sprite_by_name.html b/doc/doxy/html/struct_compare_sprite_by_name.html new file mode 100644 index 0000000..7f7511c --- /dev/null +++ b/doc/doxy/html/struct_compare_sprite_by_name.html @@ -0,0 +1,138 @@ + + + + + + +owman: CompareSpriteByName Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    owman +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    CompareSpriteByName Struct Reference
    +
    +
    + + + + +

    +Public Member Functions

    +bool operator() (const SpriteRefCountEntry &entry1, const SpriteRefCountEntry &entry2)
     
    +
    The documentation for this struct was generated from the following files: +
    +
    + + + + diff --git a/doc/doxy/html/struct_compare_sprite_by_name.js b/doc/doxy/html/struct_compare_sprite_by_name.js new file mode 100644 index 0000000..20873bc --- /dev/null +++ b/doc/doxy/html/struct_compare_sprite_by_name.js @@ -0,0 +1,4 @@ +var struct_compare_sprite_by_name = +[ + [ "operator()", "struct_compare_sprite_by_name.html#a40451644ca9ebca69981b555baec6924", null ] +]; \ No newline at end of file diff --git a/doc/doxy/html/struct_sprite_ref_count_entry-members.html b/doc/doxy/html/struct_sprite_ref_count_entry-members.html new file mode 100644 index 0000000..3f7e7f6 --- /dev/null +++ b/doc/doxy/html/struct_sprite_ref_count_entry-members.html @@ -0,0 +1,129 @@ + + + + + + +owman: Member List + + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    owman +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    +
    SpriteRefCountEntry Member List
    +
    +
    + +

    This is the complete list of members for SpriteRefCountEntry, including all inherited members.

    + + + + +
    count (defined in SpriteRefCountEntry)SpriteRefCountEntrymutable
    sprite (defined in SpriteRefCountEntry)SpriteRefCountEntry
    SpriteRefCountEntry() (defined in SpriteRefCountEntry)SpriteRefCountEntryinline
    +
    + + + + diff --git a/doc/doxy/html/struct_sprite_ref_count_entry.html b/doc/doxy/html/struct_sprite_ref_count_entry.html new file mode 100644 index 0000000..64e80b9 --- /dev/null +++ b/doc/doxy/html/struct_sprite_ref_count_entry.html @@ -0,0 +1,140 @@ + + + + + + +owman: SpriteRefCountEntry Struct Reference + + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    owman +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    + +
    +
    SpriteRefCountEntry Struct Reference
    +
    +
    + + + + + + +

    +Public Attributes

    +int count
     
    +Spritesprite
     
    +
    The documentation for this struct was generated from the following file: +
    +
    + + + + diff --git a/doc/doxy/html/struct_sprite_ref_count_entry.js b/doc/doxy/html/struct_sprite_ref_count_entry.js new file mode 100644 index 0000000..b0e09ab --- /dev/null +++ b/doc/doxy/html/struct_sprite_ref_count_entry.js @@ -0,0 +1,6 @@ +var struct_sprite_ref_count_entry = +[ + [ "SpriteRefCountEntry", "struct_sprite_ref_count_entry.html#afb264752f8088a5de6011c803d3d0954", null ], + [ "count", "struct_sprite_ref_count_entry.html#a934d79fbc0c58cde9620a05eca2a9f62", null ], + [ "sprite", "struct_sprite_ref_count_entry.html#a55580be003366a61269e1354bb29ea93", null ] +]; \ No newline at end of file diff --git a/doc/doxy/html/sync_off.png b/doc/doxy/html/sync_off.png index fe7bd85..3b443fc 100644 Binary files a/doc/doxy/html/sync_off.png and b/doc/doxy/html/sync_off.png differ diff --git a/doc/doxy/html/sync_on.png b/doc/doxy/html/sync_on.png index c71a2e8..e08320f 100644 Binary files a/doc/doxy/html/sync_on.png and b/doc/doxy/html/sync_on.png differ diff --git a/doc/doxy/html/tab_a.png b/doc/doxy/html/tab_a.png index f0dbcfb..3b725c4 100644 Binary files a/doc/doxy/html/tab_a.png and b/doc/doxy/html/tab_a.png differ diff --git a/doc/doxy/html/tab_b.png b/doc/doxy/html/tab_b.png index 4277740..e2b4a86 100644 Binary files a/doc/doxy/html/tab_b.png and b/doc/doxy/html/tab_b.png differ diff --git a/doc/doxy/html/tab_h.png b/doc/doxy/html/tab_h.png index 10f867c..fd5cb70 100644 Binary files a/doc/doxy/html/tab_h.png and b/doc/doxy/html/tab_h.png differ diff --git a/doc/doxy/html/tab_s.png b/doc/doxy/html/tab_s.png index 38f94f2..ab478c9 100644 Binary files a/doc/doxy/html/tab_s.png and b/doc/doxy/html/tab_s.png differ diff --git a/doc/doxy/html/tabs.css b/doc/doxy/html/tabs.css index 756c151..9cf578f 100644 --- a/doc/doxy/html/tabs.css +++ b/doc/doxy/html/tabs.css @@ -34,7 +34,7 @@ background-image:url('tab_s.png'); background-repeat:no-repeat; background-position:right; - color: #213A20; + color: #283A5D; text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); text-decoration: none; outline: none; diff --git a/doc/doxy/html/test__world__streamer_8hpp_source.html b/doc/doxy/html/test__world__streamer_8hpp_source.html index 4570325..f7e73e8 100644 --- a/doc/doxy/html/test__world__streamer_8hpp_source.html +++ b/doc/doxy/html/test__world__streamer_8hpp_source.html @@ -3,15 +3,24 @@ - -OWMAN: test_world_streamer.hpp Source File + +owman: test_world_streamer.hpp Source File + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -63,16 +70,29 @@ +
    + +
    +
    +
    + +
    @@ -86,54 +106,51 @@
    test_world_streamer.hpp
    -Go to the documentation of this file.
    1 #include "i_world_streamer.hpp"
    +
    1 #include "i_world_streamer.hpp"
    2 
    3 #ifndef TEST_WORLD_STREAMER
    -
    4 #define TEST_WORLD_STREAMER
    -
    5 
    +
    4 #define TEST_WORLD_STREAMER
    +
    5 
    12 {
    13 
    14 protected:
    15 
    -
    16  std::vector<Entity*> entities;
    +
    16  std::vector<Entity*> entities;
    17 
    18 public:
    19 
    - +
    21 
    - +
    22  TestWorldStreamer(EntityFactory* entityFactory);
    23 
    -
    24  void init(Vec2i& cell, Vec2f& offset);
    +
    24  void init(Vec2i& cell, Vec2f& offset);
    25 
    -
    26  void update(Vec2f& position);
    +
    26  void update(Vec2f& position);
    27 
    -
    28  std::vector<Entity*> getEntities()const;
    +
    28  std::vector<Entity*> getEntities()const;
    29 
    -
    30  void end(){}
    +
    30  void end(){}
    31 
    32 };
    33 
    34 #endif
    -
    Definition: vec2f.hpp:9
    +
    Definition: vec2f.hpp:10
    Definition: i_world_streamer.hpp:20
    -
    void update(Vec2f &position)
    Definition: test_world_streamer.cpp:54
    Definition: test_world_streamer.hpp:11
    Definition: entity_factory.hpp:12
    - -
    void end()
    Definition: test_world_streamer.hpp:30
    -
    TestWorldStreamer()
    Definition: test_world_streamer.hpp:20
    -
    void init(Vec2i &cell, Vec2f &offset)
    Definition: test_world_streamer.cpp:17
    std::vector< Entity * > getEntities() const
    Returns a vector of pointers to all the active entities.
    Definition: test_world_streamer.cpp:59
    -
    Definition: vec2i.hpp:10
    -
    std::vector< Entity * > entities
    Definition: test_world_streamer.hpp:16
    -
    EntityFactory * entityFactory
    Definition: i_world_streamer.hpp:25
    +
    Definition: vec2i.hpp:11
    +
    - + diff --git a/doc/doxy/html/texture_8hpp_source.html b/doc/doxy/html/texture_8hpp_source.html new file mode 100644 index 0000000..37898bd --- /dev/null +++ b/doc/doxy/html/texture_8hpp_source.html @@ -0,0 +1,216 @@ + + + + + + +owman: texture.hpp Source File + + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    owman +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    +
    texture.hpp
    +
    +
    +
    1 #ifndef TEXTURE
    +
    2 #define TEXTURE
    +
    3 
    +
    4 #include "low_level_renderer_2d.hpp"
    +
    5 #include "../math/aarect.hpp"
    +
    6 
    +
    7 class TextureManager;
    +
    8 class ResourceTexture;
    +
    9 
    +
    10 class Texture
    +
    11 {
    +
    12  friend class TextureManager;
    +
    13 
    +
    14 public:
    +
    15 
    +
    16  const static std::string texturesPath;
    +
    17 
    +
    18  typedef LowLevelRenderer2D::Texture::FilterMode FilterMode;
    +
    19 
    +
    20  enum class Status
    +
    21  {
    +
    22  START,
    +
    23  LOADING,
    +
    24  LOADED,
    +
    25  READY,
    +
    26  };
    +
    27 
    +
    28  Texture(){}
    +
    29 
    +
    30  Texture(TextureManager* TextureManager, const std::string& name);
    +
    31 
    +
    35  const std::string& getName()const;
    +
    36 
    +
    40  void setFilterMode(FilterMode filterMode);
    +
    41 
    +
    45  bool isLoaded()const;
    +
    46 
    +
    50  bool isReady()const;
    +
    51 
    +
    58  void loadResource();
    +
    59 
    +
    65  void loadToGPU();
    +
    66 
    +
    71  void releaseResource();
    +
    72 
    +
    77  void release();
    +
    78 
    +
    82  void draw
    +
    83  (
    +
    84  const Vec2f& pos,
    +
    85  const Vec2f& scale,
    + +
    87  )const;
    +
    88 
    +
    92  void draw
    +
    93  (
    +
    94  const Vec2f& pos,
    + +
    96  )const;
    +
    97 
    +
    102  unsigned getWidth()const;
    +
    103 
    +
    108  unsigned getHeight()const;
    +
    109 
    +
    110 private:
    +
    111 
    +
    112  TextureManager* textureManager;
    +
    113 
    +
    114  std::string name;
    +
    115  Status status;
    +
    116  FilterMode filterMode;
    +
    117 
    +
    118  LowLevelRenderer2D::Texture llTexture;
    +
    119  ResourceTexture* resourceTexture;
    +
    120 
    +
    121 };
    +
    122 
    +
    123 #endif // TEXTURE
    +
    Definition: vec2f.hpp:10
    +
    void release()
    release from GPU Call this only after loadToGPU
    Definition: texture.cpp:72
    +
    Definition: texture_manager.hpp:18
    +
    bool isReady() const
    is laoded in graphics card
    Definition: texture.cpp:35
    +
    unsigned getHeight() const
    get the height of the texture the texture must be ready
    Definition: texture.cpp:114
    +
    Definition: low_level_renderer_2d.hpp:44
    +
    void loadToGPU()
    load this texture to the GPU The texture data will remain in MM unless you release it with releaseRes...
    Definition: texture.cpp:48
    +
    Definition: low_level_renderer_2d.hpp:79
    +
    void loadResource()
    load this texture to RAM The brings the texture resource from disk to MM.\ You will know that the sec...
    Definition: texture.cpp:40
    +
    void setFilterMode(FilterMode filterMode)
    set the filter mode
    Definition: texture.cpp:25
    +
    Definition: texture.hpp:10
    +
    bool isLoaded() const
    is loaded in main memory
    Definition: texture.cpp:30
    +
    unsigned getWidth() const
    get the width of the texture the texture must be ready
    Definition: texture.cpp:109
    +
    void releaseResource()
    release the data in MM You should call this function after using loadToGPU().
    Definition: texture.cpp:66
    +
    const std::string & getName() const
    get the name of the texture file
    Definition: texture.cpp:20
    +
    void draw(const Vec2f &pos, const Vec2f &scale, const LowLevelRenderer2D::SpriteVbo &sVbo) const
    draw a texture in the screen
    Definition: texture.cpp:90
    +
    Represents a resource texture Since OpenGL does not allow to make any call from any other thread othe...
    Definition: resource_texture.hpp:19
    +
    +
    + + + + diff --git a/doc/doxy/html/texture__manager_8hpp_source.html b/doc/doxy/html/texture__manager_8hpp_source.html new file mode 100644 index 0000000..9f202d8 --- /dev/null +++ b/doc/doxy/html/texture__manager_8hpp_source.html @@ -0,0 +1,168 @@ + + + + + + +owman: texture_manager.hpp Source File + + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    owman +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    +
    texture_manager.hpp
    +
    +
    +
    1 #ifndef TEXTURE_MANAGER_HPP_INCLUDED
    +
    2 #define TEXTURE_MANAGER_HPP_INCLUDED
    +
    3 
    +
    4 #include "texture.hpp"
    +
    5 #include <map>
    +
    6 #include <string>
    +
    7 #include <vector>
    +
    8 
    +
    9 class GraphicsSystem;
    +
    10 
    + +
    12 {
    +
    13  friend class TextureManager;
    +
    14  Texture* texture;
    +
    15  unsigned count;
    +
    16 };
    +
    17 
    + +
    19 {
    +
    20 
    +
    21 public:
    +
    22 
    +
    23  static const std::string texturesPath;
    +
    24 
    +
    25 private:
    +
    26 
    +
    27  GraphicsSystem* graphicsSystem;
    +
    28  std::map<std::string, TextureRefCountEntry> textures;
    +
    29 
    +
    30 public:
    +
    31 
    +
    32  TextureManager(GraphicsSystem* graphicsSystem);
    +
    33 
    +
    34  Texture* getTexture(const std::string &name);
    +
    35  void releaseTexture(Texture* texture);
    +
    36 
    +
    37  GraphicsSystem* getGraphicsSystem();
    +
    38 
    +
    39  void update();
    +
    40 
    +
    41 };
    +
    42 
    +
    43 #endif // TEXTURE_MANAGER_HPP_INCLUDED
    +
    Definition: texture_manager.hpp:18
    +
    Definition: graphics_system.hpp:17
    +
    Definition: texture.hpp:10
    +
    Definition: texture_manager.hpp:11
    +
    +
    + + + + diff --git a/doc/doxy/html/time__conversions_8hpp_source.html b/doc/doxy/html/time__conversions_8hpp_source.html new file mode 100644 index 0000000..296359f --- /dev/null +++ b/doc/doxy/html/time__conversions_8hpp_source.html @@ -0,0 +1,135 @@ + + + + + + +owman: time_conversions.hpp Source File + + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    owman +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    +
    time_conversions.hpp
    +
    +
    +
    1 #ifndef TIME_CONVERSIONS
    +
    2 #define TIME_CONVERSIONS
    +
    3 
    +
    4 float ticksToSeconds(unsigned ticks)
    +
    5 {
    +
    6  return ticks / 1000.0f;
    +
    7 }
    +
    8 
    +
    9 unsigned secondsToTicks(float seconds)
    +
    10 {
    +
    11  return (unsigned)(seconds * 1000);
    +
    12 }
    +
    13 
    +
    14 #endif // TIME_CONVERSIONS
    +
    +
    + + + + diff --git a/doc/doxy/html/vec2f_8hpp_source.html b/doc/doxy/html/vec2f_8hpp_source.html index 03df02b..d5414f3 100644 --- a/doc/doxy/html/vec2f_8hpp_source.html +++ b/doc/doxy/html/vec2f_8hpp_source.html @@ -3,15 +3,24 @@ - -OWMAN: math/vec2f.hpp Source File + +owman: vec2f.hpp Source File + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -63,15 +70,29 @@ + +
    + +
    +
    +
    + +
    @@ -80,52 +101,50 @@
    - -
    vec2f.hpp
    -Go to the documentation of this file.
    1 
    +
    1 
    2 #ifndef VEC2F
    -
    3 #define VEC2F
    -
    4 
    -
    9 class Vec2f
    -
    10 {
    -
    11 
    -
    12 public:
    -
    13 
    -
    14  float x, y;
    -
    15 
    -
    16  Vec2f(){}
    -
    17  Vec2f(float x, float y);
    -
    18 
    -
    19  Vec2f operator=(const Vec2f& vec);
    -
    20 
    -
    21  Vec2f operator+(const Vec2f& vec)const;
    -
    22  Vec2f operator-(const Vec2f& vec)const;
    -
    23  Vec2f operator-()const;
    -
    24 
    -
    25 };
    -
    26 
    -
    27 #endif
    -
    Definition: vec2f.hpp:9
    -
    Vec2f()
    Definition: vec2f.hpp:16
    -
    Vec2f operator=(const Vec2f &vec)
    Definition: vec2f.cpp:9
    -
    float x
    Definition: vec2f.hpp:14
    -
    float y
    Definition: vec2f.hpp:14
    -
    Vec2f operator-() const
    Definition: vec2f.cpp:32
    -
    Vec2f operator+(const Vec2f &vec) const
    Definition: vec2f.cpp:16
    +
    3 #define VEC2F
    +
    4 
    +
    5 class Vec2i;
    +
    6 
    +
    10 class Vec2f
    +
    11 {
    +
    12 
    +
    13 public:
    +
    14 
    +
    15  float x, y;
    +
    16 
    +
    17  Vec2f(){}
    +
    18  Vec2f(float x, float y);
    +
    19  Vec2f(const Vec2f& v);
    +
    20  Vec2f(const Vec2i& v);
    +
    21 
    +
    22  Vec2f operator=(const Vec2f& vec);
    +
    23 
    +
    24  Vec2f operator+(const Vec2f& vec)const;
    +
    25  Vec2f operator-(const Vec2f& vec)const;
    +
    26  Vec2f operator-()const;
    +
    27 
    +
    28 };
    +
    29 
    +
    30 #endif
    +
    Definition: vec2f.hpp:10
    +
    Definition: vec2i.hpp:11
    +
    - + diff --git a/doc/doxy/html/vec2i_8hpp_source.html b/doc/doxy/html/vec2i_8hpp_source.html index 72754d3..745b3e6 100644 --- a/doc/doxy/html/vec2i_8hpp_source.html +++ b/doc/doxy/html/vec2i_8hpp_source.html @@ -3,15 +3,24 @@ - -OWMAN: math/vec2i.hpp Source File + +owman: vec2i.hpp Source File + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -63,15 +70,29 @@ + +
    + +
    +
    +
    + +
    @@ -80,64 +101,57 @@
    - -
    vec2i.hpp
    -Go to the documentation of this file.
    1 
    +
    1 
    2 #ifndef VEC2I
    -
    3 #define VEC2I
    -
    4 
    -
    10 class Vec2i
    -
    11 {
    -
    12 
    -
    13 public:
    -
    14 
    -
    15  int x, y;
    -
    16 
    -
    17  Vec2i(){}
    -
    18  Vec2i(int x, int y);
    -
    19 
    -
    20  Vec2i operator=(const Vec2i& vec);
    -
    21 
    -
    22  Vec2i operator+=(const Vec2i& vec);
    -
    23  Vec2i operator-=(const Vec2i& vec);
    +
    3 #define VEC2I
    +
    4 
    +
    5 class Vec2f;
    +
    6 
    +
    11 class Vec2i
    +
    12 {
    +
    13 
    +
    14 public:
    +
    15 
    +
    16  int x, y;
    +
    17 
    +
    18  Vec2i(){}
    +
    19  Vec2i(int x, int y);
    +
    20  Vec2i(const Vec2i& v);
    +
    21  Vec2i(const Vec2f& v);
    +
    22 
    +
    23  Vec2i operator=(const Vec2i& vec);
    24 
    -
    25  Vec2i operator+(const Vec2i& vec)const;
    -
    26  Vec2i operator-(const Vec2i& vec)const;
    -
    27  Vec2i operator-()const;
    -
    28 
    -
    29  bool operator<(const Vec2i& v)const;
    -
    30  bool operator==(const Vec2i& v)const;
    -
    31  bool operator!=(const Vec2i& v)const;
    -
    32 
    -
    33 };
    -
    34 
    -
    35 #endif
    -
    Vec2i operator-=(const Vec2i &vec)
    Definition: vec2i.cpp:22
    -
    int x
    Definition: vec2i.hpp:15
    -
    int y
    Definition: vec2i.hpp:15
    -
    Vec2i operator-() const
    Definition: vec2i.cpp:44
    -
    bool operator!=(const Vec2i &v) const
    Definition: vec2i.cpp:66
    -
    Vec2i operator=(const Vec2i &vec)
    Definition: vec2i.cpp:9
    -
    Vec2i()
    Definition: vec2i.hpp:17
    -
    bool operator<(const Vec2i &v) const
    Definition: vec2i.cpp:50
    -
    Vec2i operator+(const Vec2i &vec) const
    Definition: vec2i.cpp:28
    -
    Definition: vec2i.hpp:10
    -
    Vec2i operator+=(const Vec2i &vec)
    Definition: vec2i.cpp:16
    -
    bool operator==(const Vec2i &v) const
    Definition: vec2i.cpp:59
    +
    25  Vec2i operator+=(const Vec2i& vec);
    +
    26  Vec2i operator-=(const Vec2i& vec);
    +
    27 
    +
    28  Vec2i operator+(const Vec2i& vec)const;
    +
    29  Vec2i operator-(const Vec2i& vec)const;
    +
    30  Vec2i operator-()const;
    +
    31 
    +
    32  bool operator<(const Vec2i& v)const;
    +
    33  bool operator==(const Vec2i& v)const;
    +
    34  bool operator!=(const Vec2i& v)const;
    +
    35 
    +
    36 };
    +
    37 
    +
    38 #endif
    +
    Definition: vec2f.hpp:10
    +
    Definition: vec2i.hpp:11
    +
    - + diff --git a/doc/doxy/html/work__queue_8hpp_source.html b/doc/doxy/html/work__queue_8hpp_source.html index 1b73952..d3f5e16 100644 --- a/doc/doxy/html/work__queue_8hpp_source.html +++ b/doc/doxy/html/work__queue_8hpp_source.html @@ -3,15 +3,24 @@ - -OWMAN: resource_manager/work_queue.hpp Source File + +owman: work_queue.hpp Source File + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -63,15 +70,29 @@ + +
    + +
    +
    +
    + +
    @@ -80,84 +101,76 @@
    - -
    work_queue.hpp
    -Go to the documentation of this file.
    1 #include <pthread.h>
    -
    2 #include <list>
    +
    1 #ifndef WORK_QUEUE
    +
    2 #define WORK_QUEUE
    3 
    -
    4 #ifndef WORK_QUEUE
    -
    5 #define WORK_QUEUE
    -
    6 
    +
    4 #include <pthread.h>
    +
    5 #include <list>
    +
    6 
    13 template <typename T>
    14 class WorkQueue
    15 {
    16 
    -
    17  std::list<T> queue;
    -
    18  pthread_mutex_t mutex;
    -
    19  pthread_cond_t cond;
    +
    17  std::list<T> queue;
    +
    18  pthread_mutex_t mutex;
    +
    19  pthread_cond_t cond;
    20 
    21 public:
    22 
    - -
    24  {
    -
    25  pthread_mutex_init(&mutex, 0);
    -
    26  pthread_cond_init(&cond, 0);
    -
    27  }
    +
    23  WorkQueue()
    +
    24  {
    +
    25  pthread_mutex_init(&mutex, 0);
    +
    26  pthread_cond_init(&cond, 0);
    +
    27  }
    28 
    -
    29  void push(T elem)
    -
    30  {
    -
    31  pthread_mutex_lock(&mutex);
    -
    32  queue.push_back(elem);
    -
    33  pthread_cond_signal(&cond);
    -
    34  pthread_mutex_unlock(&mutex);
    -
    35  }
    +
    29  void push(T elem)
    +
    30  {
    +
    31  pthread_mutex_lock(&mutex);
    +
    32  queue.push_back(elem);
    +
    33  pthread_cond_signal(&cond);
    +
    34  pthread_mutex_unlock(&mutex);
    +
    35  }
    36 
    -
    37  T pop()
    -
    38  {
    -
    39  pthread_mutex_lock(&mutex);
    -
    40  while( queue.size() == 0 )
    -
    41  {
    -
    42  // this instruction unlocks the mutex automatically
    -
    43  pthread_cond_wait(&cond, &mutex);
    -
    44  }
    -
    45  T elem = queue.front();
    -
    46  queue.pop_front();
    -
    47  pthread_mutex_unlock(&mutex);
    +
    37  T pop()
    +
    38  {
    +
    39  pthread_mutex_lock(&mutex);
    +
    40  while( queue.size() == 0 )
    +
    41  {
    +
    42  // this instruction unlocks the mutex automatically
    +
    43  pthread_cond_wait(&cond, &mutex);
    +
    44  }
    +
    45  T elem = queue.front();
    +
    46  queue.pop_front();
    +
    47  pthread_mutex_unlock(&mutex);
    48 
    -
    49  return elem;
    -
    50  };
    +
    49  return elem;
    +
    50  };
    51 
    - -
    53  {
    -
    54  pthread_mutex_destroy(&mutex);
    -
    55  pthread_cond_destroy(&cond);
    -
    56  }
    +
    52  ~WorkQueue()
    +
    53  {
    +
    54  pthread_mutex_destroy(&mutex);
    +
    55  pthread_cond_destroy(&cond);
    +
    56  }
    57 
    58 };
    59 
    60 #endif
    -
    std::list< T > queue
    Definition: work_queue.hpp:17
    -
    ~WorkQueue()
    Definition: work_queue.hpp:52
    -
    pthread_mutex_t mutex
    Definition: work_queue.hpp:18
    -
    pthread_cond_t cond
    Definition: work_queue.hpp:19
    Thread safe queue This queue can be used concurrently by several threads. It is specially designed fo...
    Definition: work_queue.hpp:14
    -
    T pop()
    Definition: work_queue.hpp:37
    -
    WorkQueue()
    Definition: work_queue.hpp:23
    -
    void push(T elem)
    Definition: work_queue.hpp:29
    +
    - + diff --git a/doc/doxy/html/world__cell_8hpp_source.html b/doc/doxy/html/world__cell_8hpp_source.html index 28be4e0..cc23dad 100644 --- a/doc/doxy/html/world__cell_8hpp_source.html +++ b/doc/doxy/html/world__cell_8hpp_source.html @@ -3,15 +3,24 @@ - -OWMAN: world_cell.hpp Source File + +owman: world_cell.hpp Source File + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -63,16 +70,29 @@ +
    + +
    +
    +
    + +
    @@ -86,26 +106,29 @@
    world_cell.hpp
    -Go to the documentation of this file.
    1  #include <vector>
    +
    1  #include <vector>
    2 
    3 #ifndef ENTITY
    -
    4 class Entity;
    +
    4 class Entity;
    5 #endif
    -
    6 
    +
    6 
    7 #ifndef WORLD_CELL
    -
    8 #define WORLD_CELL
    -
    9 
    -
    10 typedef std::vector<Entity*> WorldCell;
    +
    8 #define WORLD_CELL
    +
    9 
    +
    10 typedef std::vector<Entity*> WorldCell;
    11 
    12 #endif
    -
    std::vector< Entity * > WorldCell
    Definition: world_cell.hpp:4
    Components compounded entity.
    Definition: entity.hpp:19
    +
    - + diff --git a/doc/doxy/html/world__streamer_8hpp_source.html b/doc/doxy/html/world__streamer_8hpp_source.html index d0c665c..1f9833f 100644 --- a/doc/doxy/html/world__streamer_8hpp_source.html +++ b/doc/doxy/html/world__streamer_8hpp_source.html @@ -3,15 +3,24 @@ - -OWMAN: world_streamer.hpp Source File + +owman: world_streamer.hpp Source File + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -63,16 +70,29 @@ +
    + +
    +
    +
    + +
    @@ -86,121 +106,107 @@
    world_streamer.hpp
    -Go to the documentation of this file.
    1 #include "i_world_streamer.hpp"
    -
    2 #include "world_window.hpp"
    -
    3 #include "world_cell.hpp"
    -
    4 #include "entity.hpp"
    - - +
    1 #include "i_world_streamer.hpp"
    +
    2 #include "world_window.hpp"
    +
    3 #include "world_cell.hpp"
    +
    4 #include "entity.hpp"
    +
    5 #include "resource_manager/resource_text.hpp"
    +
    6 #include "resource_manager/resource_cell.hpp"
    7 #include <string>
    8 #include <map>
    9 #include <set>
    10 
    11 #ifndef ENTITY_FACTORY
    -
    12 class EntityFactory;
    +
    12 class EntityFactory;
    13 #endif
    -
    14 
    +
    14 
    15 #ifndef MAIN_CHARACTER
    -
    16 class MainCharacter;
    +
    16 class MainCharacter;
    17 #endif
    -
    18 
    +
    18 
    19 #ifndef GRAPHICS_SYSTEM
    -
    20 class GraphicsSystem;
    +
    20 class GraphicsSystem;
    21 #endif
    -
    22 
    +
    22 
    23 
    24 
    25 #ifndef WORLD_STREAMER
    -
    26 #define WORLD_STREAMER
    -
    27 
    +
    26 #define WORLD_STREAMER
    +
    27 
    29 {
    30 
    -
    31  // windowPos is the center of the squared window
    -
    32  // that holds the active entities
    -
    33  // concides with the cell where the main character is
    -
    34  // and with origin of coordinates
    - -
    36  const float cellSize = 250;
    +
    31  // windowPos is the center of the squared window
    +
    32  // that holds the active entities
    +
    33  // concides with the cell where the main character is
    +
    34  // and with origin of coordinates
    +
    35  Vec2i windowPos;
    +
    36  const float cellSize = 250;
    37 
    38  // data structure where the WorldCells(vector of entities) are located
    - +
    39  WorldWindow worldWindow;
    40 
    -
    41  // the folder where you can find the cell files and the main character file
    -
    42  std::string worldFolder;
    +
    41  // the folder where you can find the cell files and the main character file
    +
    42  std::string worldFolder;
    43 
    44  // In the initialization of the world streamer we search in the world folder
    45  // for all the files that are named like cell_X_Y.xml ( where X and Y are positive ints)
    46  // In the following set are stored all the found cells.
    -
    47  std::set<Vec2i> availableCells;
    +
    47  std::set<Vec2i> availableCells;
    48 
    49  // Cells for which we are still loading the .xml file
    -
    50  std::map<Vec2i, ResourceCell*> loadingCellResources;
    -
    51  std::map<Vec2i, ResourceCell*> loadedCellResources;
    +
    50  std::map<Vec2i, ResourceCell*> loadingCellResources;
    +
    51  std::map<Vec2i, ResourceCell*> loadedCellResources;
    52 
    - +
    53  EntityFactory* entityFactory;
    54 
    55 public:
    56 
    - - -
    59  (
    -
    60  std::string worldFolder,
    - -
    62  float cellSize = 250.f,
    -
    63  unsigned int windowSize = 2
    -
    64  );
    +
    57  WorldStreamer(){}
    + +
    59  (
    +
    60  std::string worldFolder,
    +
    61  EntityFactory* entityFactory,
    +
    62  float cellSize = 250.f,
    +
    63  unsigned int windowSize = 2
    +
    64  );
    65 
    -
    72  void init(const Vec2i& cell, const Vec2f& offset);
    +
    72  void init(const Vec2i& cell, const Vec2f& offset);
    73 
    -
    80  void update(const Vec2f& position, MainCharacter* mainCharacter);
    +
    80  void update(const Vec2f& position, MainCharacter* mainCharacter);
    81 
    -
    86  std::vector<Entity*> getEntities()const;
    +
    86  std::vector<Entity*> getEntities()const;
    87 
    -
    88  Vec2i getWindowPosition()const;
    +
    88  Vec2i getWindowPosition()const;
    89 
    -
    90  float getCellSize()const;
    +
    90  float getCellSize()const;
    91 
    -
    92  void end();
    +
    92  void end();
    93 
    94 };
    95 
    96 #endif
    -
    Definition: vec2f.hpp:9
    - -
    void update(const Vec2f &position, MainCharacter *mainCharacter)
    Updates the world streamer.
    Definition: world_streamer.cpp:287
    -
    Vec2i windowPos
    Definition: world_streamer.hpp:35
    +
    Definition: vec2f.hpp:10
    +
    void update(const Vec2f &position, MainCharacter *mainCharacter)
    Updates the world streamer.
    Definition: world_streamer.cpp:268
    Definition: world_window.hpp:16
    Definition: i_world_streamer.hpp:20
    - -
    std::string worldFolder
    Definition: world_streamer.hpp:42
    - -
    WorldStreamer()
    Definition: world_streamer.hpp:57
    Definition: entity_factory.hpp:12
    - -
    WorldWindow worldWindow
    Definition: world_streamer.hpp:39
    -
    std::map< Vec2i, ResourceCell * > loadedCellResources
    Definition: world_streamer.hpp:51
    -
    EntityFactory * entityFactory
    Definition: world_streamer.hpp:53
    -
    std::set< Vec2i > availableCells
    Definition: world_streamer.hpp:47
    -
    float getCellSize() const
    Definition: world_streamer.cpp:568
    -
    void init(const Vec2i &cell, const Vec2f &offset)
    Inits the world streamer.
    Definition: world_streamer.cpp:247
    -
    const float cellSize
    Definition: world_streamer.hpp:36
    -
    std::vector< Entity * > getEntities() const
    Returns a vector of pointers to all the active entities.
    Definition: world_streamer.cpp:573
    -
    void end()
    Definition: world_streamer.cpp:611
    +
    void init(const Vec2i &cell, const Vec2f &offset)
    Inits the world streamer.
    Definition: world_streamer.cpp:228
    +
    std::vector< Entity * > getEntities() const
    Returns a vector of pointers to all the active entities.
    Definition: world_streamer.cpp:563
    Definition: main_character.hpp:15
    -
    Definition: graphics_system.hpp:15
    +
    Definition: graphics_system.hpp:17
    Definition: world_streamer.hpp:28
    - -
    std::map< Vec2i, ResourceCell * > loadingCellResources
    Definition: world_streamer.hpp:50
    - -
    Vec2i getWindowPosition() const
    Definition: world_streamer.cpp:563
    -
    Definition: vec2i.hpp:10
    +
    Definition: vec2i.hpp:11
    +
    - + diff --git a/doc/doxy/html/world__window_8hpp_source.html b/doc/doxy/html/world__window_8hpp_source.html index 4c6a15e..27995ce 100644 --- a/doc/doxy/html/world__window_8hpp_source.html +++ b/doc/doxy/html/world__window_8hpp_source.html @@ -3,15 +3,24 @@ - -OWMAN: world_window.hpp Source File + +owman: world_window.hpp Source File + + + + + + @@ -21,18 +30,16 @@ -
    -
    OWMAN +
    owman
    -
    Open World Manager
    - + @@ -63,16 +70,29 @@ +
    + +
    +
    +
    + +
    @@ -86,56 +106,54 @@
    world_window.hpp
    -Go to the documentation of this file.
    1 #include <vector>
    +
    1 #include <vector>
    2 #include <map>
    -
    3 #include "position.hpp"
    -
    4 #include "world_cell.hpp"
    +
    3 #include "position.hpp"
    +
    4 #include "world_cell.hpp"
    5 
    6 #ifndef ENTITY
    -
    7 class Entity;
    +
    7 class Entity;
    8 #endif
    -
    9 
    +
    9 
    10 #ifndef WORLD_WINDOW
    -
    11 #define WORLD_WINDOW
    -
    12 
    +
    11 #define WORLD_WINDOW
    +
    12 
    17 {
    18 
    -
    19  friend class WorldStreamer;
    +
    19  friend class WorldStreamer;
    20 
    -
    21  std::map<Vec2i, WorldCell> cells;
    +
    21  std::map<Vec2i, WorldCell> cells;
    22 
    -
    23  unsigned int windowSize;
    +
    23  unsigned int windowSize;
    24 
    25 public:
    26 
    -
    27  WorldWindow();
    +
    27  WorldWindow();
    28 
    -
    29  WorldWindow(unsigned int windowSize);
    +
    29  WorldWindow(unsigned int windowSize);
    30 
    -
    31  std::vector<Entity*> getEntities()const;
    +
    31  std::vector<Entity*> getEntities()const;
    32 
    -
    33  ~WorldWindow();
    +
    33  ~WorldWindow();
    34 
    35 };
    36 
    37 #endif
    -
    ~WorldWindow()
    Definition: world_window.cpp:59
    Definition: world_window.hpp:16
    - -
    std::vector< Entity * > getEntities() const
    Definition: world_window.cpp:18
    Components compounded entity.
    Definition: entity.hpp:19
    -
    WorldWindow()
    Definition: world_window.cpp:6
    +
    std::vector< Entity * > getEntities() const
    Returns a vector of pointers to all the active entities.
    Definition: world_streamer.cpp:563
    Definition: world_streamer.hpp:28
    - -
    std::map< Vec2i, WorldCell > cells
    Definition: world_window.hpp:21
    -
    unsigned int windowSize
    Definition: world_window.hpp:23
    +
    - + diff --git a/doc/doxy/html/xmlstr_8hpp_source.html b/doc/doxy/html/xmlstr_8hpp_source.html new file mode 100644 index 0000000..66e9156 --- /dev/null +++ b/doc/doxy/html/xmlstr_8hpp_source.html @@ -0,0 +1,151 @@ + + + + + + +owman: xmlstr.hpp Source File + + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    owman +
    +
    +
    + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    + +
    + +
    +
    +
    xmlstr.hpp
    +
    +
    +
    1 
    +
    5 #ifndef XMLSTR
    +
    6 #define XMLSTR
    +
    7 
    +
    8 namespace xmlstr
    +
    9 {
    +
    10 
    +
    11  extern const char* entity;
    +
    12  extern const char* space;
    +
    13  extern const char* x;
    +
    14  extern const char* y;
    +
    15  extern const char* cell_x;
    +
    16  extern const char* cell_y;
    +
    17  extern const char* width;
    +
    18  extern const char* height;
    +
    19  extern const char* radius;
    +
    20  extern const char* position;
    +
    21  extern const char* graphics;
    +
    22  extern const char* physics;
    +
    23  extern const char* shape;
    +
    24  extern const char* box;
    +
    25  extern const char* circle;
    +
    26  extern const char* priority;
    +
    27  extern const char* sprite;
    +
    28  extern const char* mass;
    +
    29 
    +
    30 }
    +
    31 
    +
    32 #endif // XMLSTR
    +
    Definition: xmlstr.cpp:3
    +
    +
    + + + + diff --git a/doc/img/anim_screenshot.png b/doc/img/anim_screenshot.png new file mode 100644 index 0000000..0a35237 Binary files /dev/null and b/doc/img/anim_screenshot.png differ diff --git a/doc/img/etsinf_logo.png b/doc/img/etsinf_logo.png new file mode 100644 index 0000000..45ba7a8 Binary files /dev/null and b/doc/img/etsinf_logo.png differ diff --git a/doc/img/eurotruck.jpg b/doc/img/eurotruck.jpg new file mode 100644 index 0000000..cfcc6ed Binary files /dev/null and b/doc/img/eurotruck.jpg differ diff --git a/doc/img/farcry3.jpeg b/doc/img/farcry3.jpeg new file mode 100644 index 0000000..723bf5c Binary files /dev/null and b/doc/img/farcry3.jpeg differ diff --git a/doc/img/game_loop_disk.pdf b/doc/img/game_loop_disk.pdf new file mode 100644 index 0000000..87e7a27 Binary files /dev/null and b/doc/img/game_loop_disk.pdf differ diff --git a/doc/img/game_loop_disk_2.pdf b/doc/img/game_loop_disk_2.pdf new file mode 100644 index 0000000..e1ba9b3 Binary files /dev/null and b/doc/img/game_loop_disk_2.pdf differ diff --git a/doc/img/hd.png b/doc/img/hd.png new file mode 100644 index 0000000..269a960 Binary files /dev/null and b/doc/img/hd.png differ diff --git a/doc/img/hd_med.png b/doc/img/hd_med.png new file mode 100644 index 0000000..9eded29 Binary files /dev/null and b/doc/img/hd_med.png differ diff --git a/doc/img/hd_small.png b/doc/img/hd_small.png new file mode 100644 index 0000000..cc03314 Binary files /dev/null and b/doc/img/hd_small.png differ diff --git a/doc/img/level_loading_mechanics.svg b/doc/img/level_loading_mechanics.svg index b0e8ef5..45215a3 100644 --- a/doc/img/level_loading_mechanics.svg +++ b/doc/img/level_loading_mechanics.svg @@ -13,7 +13,7 @@ height="527.63971" id="svg2" version="1.1" - inkscape:version="0.48.3.1 r9886" + inkscape:version="0.48.4 r9939" sodipodi:docname="level_loading_mechanics.svg"> @@ -73,10 +73,10 @@ inkscape:document-units="px" inkscape:current-layer="layer1" showgrid="false" - inkscape:window-width="1280" - inkscape:window-height="965" - inkscape:window-x="0" - inkscape:window-y="27" + inkscape:window-width="1301" + inkscape:window-height="744" + inkscape:window-x="65" + inkscape:window-y="24" inkscape:window-maximized="1" fit-margin-top="0" fit-margin-left="0" @@ -341,7 +341,7 @@ height="674.28571" x="-192.85715" y="-71.923531" /> + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + Sprite + + + Texture + + * + * + + Animation + + 1..* + + Frame + 1..* + + + duration: floatrect: AARect + + reference + + diff --git a/doc/img/upv_logo.png b/doc/img/upv_logo.png new file mode 100644 index 0000000..ac9e9de Binary files /dev/null and b/doc/img/upv_logo.png differ diff --git a/doc/img/yt_streaming.png b/doc/img/yt_streaming.png new file mode 100644 index 0000000..b42cb1f Binary files /dev/null and b/doc/img/yt_streaming.png differ diff --git a/doc/present.odp b/doc/present.odp new file mode 100644 index 0000000..082894f Binary files /dev/null and b/doc/present.odp differ diff --git a/doc/sample_sprite.xml b/doc/sample_sprite.xml new file mode 100644 index 0000000..9ec65e2 --- /dev/null +++ b/doc/sample_sprite.xml @@ -0,0 +1,37 @@ + + + + sprite_sheet.png + + + + + + + sp1 + + 0 0 + 20 30 + + + + + sp1 + + 20 0 + 20 30 + + + + + sp1 + + 40 0 + 20 30 + + + + + + + diff --git a/owman.png b/owman.png new file mode 100644 index 0000000..a9ad97f Binary files /dev/null and b/owman.png differ diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt new file mode 100644 index 0000000..8a791f0 --- /dev/null +++ b/src/CMakeLists.txt @@ -0,0 +1,56 @@ + + +add_executable( + owman + #$ + IO/event_handler.cpp + math/aarect.cpp + math/vec2f.cpp + math/vec2i.cpp + math/functions.cpp + physics/physics_box.cpp + physics/physics_box_factory.cpp + physics/physics_circle.cpp + physics/physics_circle_factory.cpp + physics/physics_component.cpp + physics/physics_system.cpp + renderer/animation.cpp + renderer/animation_frame.cpp + renderer/camera.cpp + renderer/graphics_component.cpp + renderer/graphics_system.cpp + renderer/low_level_renderer_2d.cpp + renderer/sprite.cpp + renderer/sprite_manager.cpp + renderer/sprite_status.cpp + renderer/texture.cpp + renderer/texture_manager.cpp + resource_manager/resource.cpp + resource_manager/resource_cell.cpp + resource_manager/resource_manager.cpp + resource_manager/resource_request.cpp + resource_manager/resource_sprite.cpp + resource_manager/resource_table.cpp + resource_manager/resource_table_entry.cpp + resource_manager/resource_text.cpp + resource_manager/resource_texture.cpp + resource_manager/work_queue.cpp + util/file_to_string.cpp + util/xmlstr.cpp + engine.cpp + entity.cpp + entity_factory.cpp + i_world_streamer.cpp + main.cpp + main_character.cpp + position.cpp + world_cell.cpp + world_streamer.cpp + world_window.cpp +) +set_property(TARGET owman PROPERTY CXX_STANDARD 17) +target_link_libraries(owman PRIVATE SDL2::SDL2 SDL2::SDL2main) +target_link_libraries(owman PRIVATE glm) +target_link_libraries(owman PRIVATE unofficial::box2d::Box2D) +target_link_libraries(owman PRIVATE GLEW::GLEW) +target_link_libraries(owman PRIVATE OpenGL32) \ No newline at end of file diff --git a/src/IO/event_handler.cpp b/src/IO/event_handler.cpp index 120c84d..c7386a4 100644 --- a/src/IO/event_handler.cpp +++ b/src/IO/event_handler.cpp @@ -1,6 +1,7 @@ #include "event_handler.hpp" #include "../engine.hpp" #include "../physics/physics_component.hpp" +#include "../renderer/sprite_status.hpp" #include #include @@ -10,12 +11,14 @@ EventHandler::EventHandler( Engine* engine ) { this->engine = engine; SDL_Init(SDL_INIT_EVENTS); + for(unsigned i=0; i<4; i++) arrowKeysPressed[i] = false; } void EventHandler::handle() { Entity* mc = engine->getMainCharacter(); + static const float v = 2000; float vx = 0; float vy = 0; @@ -51,28 +54,87 @@ void EventHandler::handle() engine->endGame(); break; + case SDLK_w: case SDLK_UP: - vy += 2000; + upArrowStatus = true; break; + case SDLK_s: case SDLK_DOWN: - vy -= 2000; + downArrowStatus = true; break; + case SDLK_a: case SDLK_LEFT: - vx -= 2000; + leftArrowStatus = true; break; + case SDLK_d: case SDLK_RIGHT: - vx += 2000; + rightArrowStatus = true; break; + } + break; - default: - vx = 0; - vy = 0; - + case SDL_KEYUP: + switch (event.key.keysym.sym) { + case SDLK_w: + case SDLK_UP: + upArrowStatus = false; + break; + case SDLK_s: + case SDLK_DOWN: + downArrowStatus = false; + break; + case SDLK_a: + case SDLK_LEFT: + leftArrowStatus = false; + break; + case SDLK_d: + case SDLK_RIGHT: + rightArrowStatus = false; + break; } break; } + if(!mc->getGraphicsComponent()->isReady()) return; + + SpriteStatus* spr = ((SpriteStatus*)mc->getGraphicsComponent()); + + if(upArrowStatus) + { + vy += v; + spr->setAnimation("walking_up"); + } + if(downArrowStatus) + { + vy -= v; + spr->setAnimation("walking_down"); + } + if(leftArrowStatus) + { + vx -= v; + spr->setAnimation("walking_left"); + } + if(rightArrowStatus) + { + vx += v; + spr->setAnimation("walking_right"); + } + float len = sqrt(vx*vx + vy*vy); + if(len > 0) + { + vx /= len; + vy /= len; + vx *= v; + vy *= v; + } + else + { + unsigned animIndex = spr->getAnimationIndex(); + animIndex %= 4; + spr->setAnimation(animIndex); + } + mc->getPhysicsComponent()->setSpeed( Vec2f(vx, vy) ); } diff --git a/src/IO/event_handler.hpp b/src/IO/event_handler.hpp index 40bf841..a8c835f 100644 --- a/src/IO/event_handler.hpp +++ b/src/IO/event_handler.hpp @@ -14,6 +14,13 @@ class EventHandler Engine* engine; + bool arrowKeysPressed[4]; + + bool& upArrowStatus = arrowKeysPressed[0]; + bool& downArrowStatus = arrowKeysPressed[1]; + bool& leftArrowStatus = arrowKeysPressed[2]; + bool& rightArrowStatus = arrowKeysPressed[3]; + public: EventHandler( Engine* engine ); diff --git a/src/demo_box2d b/src/demo_box2d new file mode 100755 index 0000000..3f9e638 Binary files /dev/null and b/src/demo_box2d differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Box2D.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Box2D.h deleted file mode 100644 index f98f87a..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Box2D.h +++ /dev/null @@ -1,68 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef BOX2D_H -#define BOX2D_H - -/** -\mainpage Box2D API Documentation - -\section intro_sec Getting Started - -For documentation please see http://box2d.org/documentation.html - -For discussion please visit http://box2d.org/forum -*/ - -// These include files constitute the main Box2D API - -#include -#include -#include - -#include -#include -#include -#include - -#include -#include -#include -#include - -#include -#include -#include -#include -#include - -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Box2DConfig.cmake b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Box2DConfig.cmake deleted file mode 100644 index b567c17..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Box2DConfig.cmake +++ /dev/null @@ -1,3 +0,0 @@ -get_filename_component(SELF_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH) -include(${SELF_DIR}/Box2D-targets.cmake) -get_filename_component(Box2D_INCLUDE_DIRS "${SELF_DIR}/../../include" ABSOLUTE) diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeCache.txt b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeCache.txt deleted file mode 100644 index be62aa4..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeCache.txt +++ /dev/null @@ -1,321 +0,0 @@ -# This is the CMakeCache file. -# For build in directory: /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D -# It was generated by CMake: /usr/bin/cmake -# You can edit this file to change values found and used by cmake. -# If you do not want to change any of the values, simply exit the editor. -# If you do want to change a value, simply edit, save, and exit the editor. -# The syntax for the file is as follows: -# KEY:TYPE=VALUE -# KEY is the name of a variable in the cache. -# TYPE is a hint to GUIs for the type of VALUE, DO NOT EDIT TYPE!. -# VALUE is the current value for the KEY. - -######################## -# EXTERNAL cache entries -######################## - -//Path to a program. -CMAKE_AR:FILEPATH=/usr/bin/ar - -//For backwards compatibility, what version of CMake commands and -// syntax should this version of CMake try to support. -CMAKE_BACKWARDS_COMPATIBILITY:STRING=2.4 - -//Choose the type of build, options are: None(CMAKE_CXX_FLAGS or -// CMAKE_C_FLAGS used) Debug Release RelWithDebInfo MinSizeRel. -CMAKE_BUILD_TYPE:STRING= - -//Enable/Disable color output during build. -CMAKE_COLOR_MAKEFILE:BOOL=ON - -//CXX compiler. -CMAKE_CXX_COMPILER:FILEPATH=/usr/bin/c++ - -//Flags used by the compiler during all build types. -CMAKE_CXX_FLAGS:STRING= - -//Flags used by the compiler during debug builds. -CMAKE_CXX_FLAGS_DEBUG:STRING=-g - -//Flags used by the compiler during release minsize builds. -CMAKE_CXX_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG - -//Flags used by the compiler during release builds (/MD /Ob1 /Oi -// /Ot /Oy /Gs will produce slightly less optimized but smaller -// files). -CMAKE_CXX_FLAGS_RELEASE:STRING=-O3 -DNDEBUG - -//Flags used by the compiler during Release with Debug Info builds. -CMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG - -//C compiler. -CMAKE_C_COMPILER:FILEPATH=/usr/bin/cc - -//Flags used by the compiler during all build types. -CMAKE_C_FLAGS:STRING= - -//Flags used by the compiler during debug builds. -CMAKE_C_FLAGS_DEBUG:STRING=-g - -//Flags used by the compiler during release minsize builds. -CMAKE_C_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG - -//Flags used by the compiler during release builds (/MD /Ob1 /Oi -// /Ot /Oy /Gs will produce slightly less optimized but smaller -// files). -CMAKE_C_FLAGS_RELEASE:STRING=-O3 -DNDEBUG - -//Flags used by the compiler during Release with Debug Info builds. -CMAKE_C_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG - -//Flags used by the linker. -CMAKE_EXE_LINKER_FLAGS:STRING=' ' - -//Flags used by the linker during debug builds. -CMAKE_EXE_LINKER_FLAGS_DEBUG:STRING= - -//Flags used by the linker during release minsize builds. -CMAKE_EXE_LINKER_FLAGS_MINSIZEREL:STRING= - -//Flags used by the linker during release builds. -CMAKE_EXE_LINKER_FLAGS_RELEASE:STRING= - -//Flags used by the linker during Release with Debug Info builds. -CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO:STRING= - -//Enable/Disable output of compile commands during generation. -CMAKE_EXPORT_COMPILE_COMMANDS:BOOL=OFF - -//Install path prefix, prepended onto install directories. -CMAKE_INSTALL_PREFIX:PATH=/usr/local - -//Path to a program. -CMAKE_LINKER:FILEPATH=/usr/bin/ld - -//Path to a program. -CMAKE_MAKE_PROGRAM:FILEPATH=/usr/bin/make - -//Flags used by the linker during the creation of modules. -CMAKE_MODULE_LINKER_FLAGS:STRING=' ' - -//Flags used by the linker during debug builds. -CMAKE_MODULE_LINKER_FLAGS_DEBUG:STRING= - -//Flags used by the linker during release minsize builds. -CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL:STRING= - -//Flags used by the linker during release builds. -CMAKE_MODULE_LINKER_FLAGS_RELEASE:STRING= - -//Flags used by the linker during Release with Debug Info builds. -CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO:STRING= - -//Path to a program. -CMAKE_NM:FILEPATH=/usr/bin/nm - -//Path to a program. -CMAKE_OBJCOPY:FILEPATH=/usr/bin/objcopy - -//Path to a program. -CMAKE_OBJDUMP:FILEPATH=/usr/bin/objdump - -//Value Computed by CMake -CMAKE_PROJECT_NAME:STATIC=Project - -//Path to a program. -CMAKE_RANLIB:FILEPATH=/usr/bin/ranlib - -//Flags used by the linker during the creation of dll's. -CMAKE_SHARED_LINKER_FLAGS:STRING=' ' - -//Flags used by the linker during debug builds. -CMAKE_SHARED_LINKER_FLAGS_DEBUG:STRING= - -//Flags used by the linker during release minsize builds. -CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL:STRING= - -//Flags used by the linker during release builds. -CMAKE_SHARED_LINKER_FLAGS_RELEASE:STRING= - -//Flags used by the linker during Release with Debug Info builds. -CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO:STRING= - -//If set, runtime paths are not added when installing shared libraries, -// but are added when building. -CMAKE_SKIP_INSTALL_RPATH:BOOL=NO - -//If set, runtime paths are not added when using shared libraries. -CMAKE_SKIP_RPATH:BOOL=NO - -//Flags used by the linker during the creation of static libraries. -CMAKE_STATIC_LINKER_FLAGS:STRING= - -//Flags used by the linker during debug builds. -CMAKE_STATIC_LINKER_FLAGS_DEBUG:STRING= - -//Flags used by the linker during release minsize builds. -CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL:STRING= - -//Flags used by the linker during release builds. -CMAKE_STATIC_LINKER_FLAGS_RELEASE:STRING= - -//Flags used by the linker during Release with Debug Info builds. -CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO:STRING= - -//Path to a program. -CMAKE_STRIP:FILEPATH=/usr/bin/strip - -//If true, cmake will use relative paths in makefiles and projects. -CMAKE_USE_RELATIVE_PATHS:BOOL=OFF - -//If this value is on, makefiles will be generated without the -// .SILENT directive, and all commands will be echoed to the console -// during the make. This is useful for debugging only. With Visual -// Studio IDE projects all commands are done without /nologo. -CMAKE_VERBOSE_MAKEFILE:BOOL=FALSE - -//Single output directory for building all executables. -EXECUTABLE_OUTPUT_PATH:PATH= - -//Single output directory for building all libraries. -LIBRARY_OUTPUT_PATH:PATH= - -//Value Computed by CMake -Project_BINARY_DIR:STATIC=/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D - -//Value Computed by CMake -Project_SOURCE_DIR:STATIC=/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D - - -######################## -# INTERNAL cache entries -######################## - -//ADVANCED property for variable: CMAKE_AR -CMAKE_AR-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_BUILD_TOOL -CMAKE_BUILD_TOOL-ADVANCED:INTERNAL=1 -//What is the target build tool cmake is generating for. -CMAKE_BUILD_TOOL:INTERNAL=/usr/bin/make -//This is the directory where this CMakeCache.txt was created -CMAKE_CACHEFILE_DIR:INTERNAL=/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D -//Major version of cmake used to create the current loaded cache -CMAKE_CACHE_MAJOR_VERSION:INTERNAL=2 -//Minor version of cmake used to create the current loaded cache -CMAKE_CACHE_MINOR_VERSION:INTERNAL=8 -//Patch version of cmake used to create the current loaded cache -CMAKE_CACHE_PATCH_VERSION:INTERNAL=12 -//ADVANCED property for variable: CMAKE_COLOR_MAKEFILE -CMAKE_COLOR_MAKEFILE-ADVANCED:INTERNAL=1 -//Path to CMake executable. -CMAKE_COMMAND:INTERNAL=/usr/bin/cmake -//Path to cpack program executable. -CMAKE_CPACK_COMMAND:INTERNAL=/usr/bin/cpack -//Path to ctest program executable. -CMAKE_CTEST_COMMAND:INTERNAL=/usr/bin/ctest -//ADVANCED property for variable: CMAKE_CXX_COMPILER -CMAKE_CXX_COMPILER-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_CXX_FLAGS -CMAKE_CXX_FLAGS-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_CXX_FLAGS_DEBUG -CMAKE_CXX_FLAGS_DEBUG-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_CXX_FLAGS_MINSIZEREL -CMAKE_CXX_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELEASE -CMAKE_CXX_FLAGS_RELEASE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELWITHDEBINFO -CMAKE_CXX_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_C_COMPILER -CMAKE_C_COMPILER-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_C_FLAGS -CMAKE_C_FLAGS-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_C_FLAGS_DEBUG -CMAKE_C_FLAGS_DEBUG-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_C_FLAGS_MINSIZEREL -CMAKE_C_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_C_FLAGS_RELEASE -CMAKE_C_FLAGS_RELEASE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_C_FLAGS_RELWITHDEBINFO -CMAKE_C_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 -//Executable file format -CMAKE_EXECUTABLE_FORMAT:INTERNAL=ELF -//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS -CMAKE_EXE_LINKER_FLAGS-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_DEBUG -CMAKE_EXE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_MINSIZEREL -CMAKE_EXE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELEASE -CMAKE_EXE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO -CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_EXPORT_COMPILE_COMMANDS -CMAKE_EXPORT_COMPILE_COMMANDS-ADVANCED:INTERNAL=1 -//Name of generator. -CMAKE_GENERATOR:INTERNAL=Unix Makefiles -//Name of generator toolset. -CMAKE_GENERATOR_TOOLSET:INTERNAL= -//Start directory with the top level CMakeLists.txt file for this -// project -CMAKE_HOME_DIRECTORY:INTERNAL=/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D -//Install .so files without execute permission. -CMAKE_INSTALL_SO_NO_EXE:INTERNAL=1 -//ADVANCED property for variable: CMAKE_LINKER -CMAKE_LINKER-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_MAKE_PROGRAM -CMAKE_MAKE_PROGRAM-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS -CMAKE_MODULE_LINKER_FLAGS-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_DEBUG -CMAKE_MODULE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL -CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELEASE -CMAKE_MODULE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO -CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_NM -CMAKE_NM-ADVANCED:INTERNAL=1 -//number of local generators -CMAKE_NUMBER_OF_LOCAL_GENERATORS:INTERNAL=1 -//ADVANCED property for variable: CMAKE_OBJCOPY -CMAKE_OBJCOPY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_OBJDUMP -CMAKE_OBJDUMP-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_RANLIB -CMAKE_RANLIB-ADVANCED:INTERNAL=1 -//Path to CMake installation. -CMAKE_ROOT:INTERNAL=/usr/share/cmake-2.8 -//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS -CMAKE_SHARED_LINKER_FLAGS-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_DEBUG -CMAKE_SHARED_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL -CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELEASE -CMAKE_SHARED_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO -CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_SKIP_INSTALL_RPATH -CMAKE_SKIP_INSTALL_RPATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_SKIP_RPATH -CMAKE_SKIP_RPATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS -CMAKE_STATIC_LINKER_FLAGS-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_DEBUG -CMAKE_STATIC_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL -CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELEASE -CMAKE_STATIC_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO -CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_STRIP -CMAKE_STRIP-ADVANCED:INTERNAL=1 -//uname command -CMAKE_UNAME:INTERNAL=/bin/uname -//ADVANCED property for variable: CMAKE_USE_RELATIVE_PATHS -CMAKE_USE_RELATIVE_PATHS-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_VERBOSE_MAKEFILE -CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1 - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/2.8.12.2/CMakeCCompiler.cmake b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/2.8.12.2/CMakeCCompiler.cmake deleted file mode 100644 index 83254ce..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/2.8.12.2/CMakeCCompiler.cmake +++ /dev/null @@ -1,56 +0,0 @@ -set(CMAKE_C_COMPILER "/usr/bin/cc") -set(CMAKE_C_COMPILER_ARG1 "") -set(CMAKE_C_COMPILER_ID "GNU") -set(CMAKE_C_COMPILER_VERSION "4.8.2") -set(CMAKE_C_PLATFORM_ID "Linux") - -set(CMAKE_AR "/usr/bin/ar") -set(CMAKE_RANLIB "/usr/bin/ranlib") -set(CMAKE_LINKER "/usr/bin/ld") -set(CMAKE_COMPILER_IS_GNUCC 1) -set(CMAKE_C_COMPILER_LOADED 1) -set(CMAKE_C_COMPILER_WORKS TRUE) -set(CMAKE_C_ABI_COMPILED TRUE) -set(CMAKE_COMPILER_IS_MINGW ) -set(CMAKE_COMPILER_IS_CYGWIN ) -if(CMAKE_COMPILER_IS_CYGWIN) - set(CYGWIN 1) - set(UNIX 1) -endif() - -set(CMAKE_C_COMPILER_ENV_VAR "CC") - -if(CMAKE_COMPILER_IS_MINGW) - set(MINGW 1) -endif() -set(CMAKE_C_COMPILER_ID_RUN 1) -set(CMAKE_C_SOURCE_FILE_EXTENSIONS c) -set(CMAKE_C_IGNORE_EXTENSIONS h;H;o;O;obj;OBJ;def;DEF;rc;RC) -set(CMAKE_C_LINKER_PREFERENCE 10) - -# Save compiler ABI information. -set(CMAKE_C_SIZEOF_DATA_PTR "8") -set(CMAKE_C_COMPILER_ABI "ELF") -set(CMAKE_C_LIBRARY_ARCHITECTURE "x86_64-linux-gnu") - -if(CMAKE_C_SIZEOF_DATA_PTR) - set(CMAKE_SIZEOF_VOID_P "${CMAKE_C_SIZEOF_DATA_PTR}") -endif() - -if(CMAKE_C_COMPILER_ABI) - set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_C_COMPILER_ABI}") -endif() - -if(CMAKE_C_LIBRARY_ARCHITECTURE) - set(CMAKE_LIBRARY_ARCHITECTURE "x86_64-linux-gnu") -endif() - - - - -set(CMAKE_C_IMPLICIT_LINK_LIBRARIES "c") -set(CMAKE_C_IMPLICIT_LINK_DIRECTORIES "/usr/lib/gcc/x86_64-linux-gnu/4.8;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib") -set(CMAKE_C_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "") - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/2.8.12.2/CMakeCXXCompiler.cmake b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/2.8.12.2/CMakeCXXCompiler.cmake deleted file mode 100644 index c4373d5..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/2.8.12.2/CMakeCXXCompiler.cmake +++ /dev/null @@ -1,57 +0,0 @@ -set(CMAKE_CXX_COMPILER "/usr/bin/c++") -set(CMAKE_CXX_COMPILER_ARG1 "") -set(CMAKE_CXX_COMPILER_ID "GNU") -set(CMAKE_CXX_COMPILER_VERSION "4.8.2") -set(CMAKE_CXX_PLATFORM_ID "Linux") - -set(CMAKE_AR "/usr/bin/ar") -set(CMAKE_RANLIB "/usr/bin/ranlib") -set(CMAKE_LINKER "/usr/bin/ld") -set(CMAKE_COMPILER_IS_GNUCXX 1) -set(CMAKE_CXX_COMPILER_LOADED 1) -set(CMAKE_CXX_COMPILER_WORKS TRUE) -set(CMAKE_CXX_ABI_COMPILED TRUE) -set(CMAKE_COMPILER_IS_MINGW ) -set(CMAKE_COMPILER_IS_CYGWIN ) -if(CMAKE_COMPILER_IS_CYGWIN) - set(CYGWIN 1) - set(UNIX 1) -endif() - -set(CMAKE_CXX_COMPILER_ENV_VAR "CXX") - -if(CMAKE_COMPILER_IS_MINGW) - set(MINGW 1) -endif() -set(CMAKE_CXX_COMPILER_ID_RUN 1) -set(CMAKE_CXX_IGNORE_EXTENSIONS inl;h;hpp;HPP;H;o;O;obj;OBJ;def;DEF;rc;RC) -set(CMAKE_CXX_SOURCE_FILE_EXTENSIONS C;M;c++;cc;cpp;cxx;m;mm;CPP) -set(CMAKE_CXX_LINKER_PREFERENCE 30) -set(CMAKE_CXX_LINKER_PREFERENCE_PROPAGATES 1) - -# Save compiler ABI information. -set(CMAKE_CXX_SIZEOF_DATA_PTR "8") -set(CMAKE_CXX_COMPILER_ABI "ELF") -set(CMAKE_CXX_LIBRARY_ARCHITECTURE "x86_64-linux-gnu") - -if(CMAKE_CXX_SIZEOF_DATA_PTR) - set(CMAKE_SIZEOF_VOID_P "${CMAKE_CXX_SIZEOF_DATA_PTR}") -endif() - -if(CMAKE_CXX_COMPILER_ABI) - set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_CXX_COMPILER_ABI}") -endif() - -if(CMAKE_CXX_LIBRARY_ARCHITECTURE) - set(CMAKE_LIBRARY_ARCHITECTURE "x86_64-linux-gnu") -endif() - - - - -set(CMAKE_CXX_IMPLICIT_LINK_LIBRARIES "stdc++;m;c") -set(CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES "/usr/lib/gcc/x86_64-linux-gnu/4.8;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib") -set(CMAKE_CXX_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "") - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/2.8.12.2/CMakeDetermineCompilerABI_C.bin b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/2.8.12.2/CMakeDetermineCompilerABI_C.bin deleted file mode 100755 index 2f2ebe4..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/2.8.12.2/CMakeDetermineCompilerABI_C.bin and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/2.8.12.2/CMakeDetermineCompilerABI_CXX.bin b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/2.8.12.2/CMakeDetermineCompilerABI_CXX.bin deleted file mode 100755 index 16c737f..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/2.8.12.2/CMakeDetermineCompilerABI_CXX.bin and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/2.8.12.2/CMakeSystem.cmake b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/2.8.12.2/CMakeSystem.cmake deleted file mode 100644 index 8c76b98..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/2.8.12.2/CMakeSystem.cmake +++ /dev/null @@ -1,15 +0,0 @@ -set(CMAKE_HOST_SYSTEM "Linux-3.13.0-48-generic") -set(CMAKE_HOST_SYSTEM_NAME "Linux") -set(CMAKE_HOST_SYSTEM_VERSION "3.13.0-48-generic") -set(CMAKE_HOST_SYSTEM_PROCESSOR "x86_64") - - - -set(CMAKE_SYSTEM "Linux-3.13.0-48-generic") -set(CMAKE_SYSTEM_NAME "Linux") -set(CMAKE_SYSTEM_VERSION "3.13.0-48-generic") -set(CMAKE_SYSTEM_PROCESSOR "x86_64") - -set(CMAKE_CROSSCOMPILING "FALSE") - -set(CMAKE_SYSTEM_LOADED 1) diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/2.8.12.2/CompilerIdC/CMakeCCompilerId.c b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/2.8.12.2/CompilerIdC/CMakeCCompilerId.c deleted file mode 100644 index cba81d4..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/2.8.12.2/CompilerIdC/CMakeCCompilerId.c +++ /dev/null @@ -1,389 +0,0 @@ -#ifdef __cplusplus -# error "A C++ compiler has been selected for C." -#endif - -/* Version number components: V=Version, R=Revision, P=Patch - Version date components: YYYY=Year, MM=Month, DD=Day */ - -#if defined(__18CXX) -# define ID_VOID_MAIN -#endif - -#if defined(__INTEL_COMPILER) || defined(__ICC) -# define COMPILER_ID "Intel" - /* __INTEL_COMPILER = VRP */ -# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100) -# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10) -# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER % 10) -# if defined(__INTEL_COMPILER_BUILD_DATE) - /* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */ -# define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE) -# endif - -#elif defined(__PATHCC__) -# define COMPILER_ID "PathScale" -# define COMPILER_VERSION_MAJOR DEC(__PATHCC__) -# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__) -# if defined(__PATHCC_PATCHLEVEL__) -# define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__) -# endif - -#elif defined(__clang__) -# define COMPILER_ID "Clang" -# define COMPILER_VERSION_MAJOR DEC(__clang_major__) -# define COMPILER_VERSION_MINOR DEC(__clang_minor__) -# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) - -#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__) -# define COMPILER_ID "Embarcadero" -# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF) -# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF) -# define COMPILER_VERSION_PATCH HEX(__CODEGEARC_VERSION__ & 0xFFFF) - -#elif defined(__BORLANDC__) -# define COMPILER_ID "Borland" - /* __BORLANDC__ = 0xVRR */ -# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8) -# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF) - -#elif defined(__WATCOMC__) -# define COMPILER_ID "Watcom" - /* __WATCOMC__ = VVRR */ -# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100) -# define COMPILER_VERSION_MINOR DEC(__WATCOMC__ % 100) - -#elif defined(__SUNPRO_C) -# define COMPILER_ID "SunPro" -# if __SUNPRO_C >= 0x5100 - /* __SUNPRO_C = 0xVRRP */ -# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>12) -# define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xFF) -# define COMPILER_VERSION_PATCH HEX(__SUNPRO_C & 0xF) -# else - /* __SUNPRO_C = 0xVRP */ -# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>8) -# define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xF) -# define COMPILER_VERSION_PATCH HEX(__SUNPRO_C & 0xF) -# endif - -#elif defined(__HP_cc) -# define COMPILER_ID "HP" - /* __HP_cc = VVRRPP */ -# define COMPILER_VERSION_MAJOR DEC(__HP_cc/10000) -# define COMPILER_VERSION_MINOR DEC(__HP_cc/100 % 100) -# define COMPILER_VERSION_PATCH DEC(__HP_cc % 100) - -#elif defined(__DECC) -# define COMPILER_ID "Compaq" - /* __DECC_VER = VVRRTPPPP */ -# define COMPILER_VERSION_MAJOR DEC(__DECC_VER/10000000) -# define COMPILER_VERSION_MINOR DEC(__DECC_VER/100000 % 100) -# define COMPILER_VERSION_PATCH DEC(__DECC_VER % 10000) - -#elif defined(__IBMC__) -# if defined(__COMPILER_VER__) -# define COMPILER_ID "zOS" -# else -# if __IBMC__ >= 800 -# define COMPILER_ID "XL" -# else -# define COMPILER_ID "VisualAge" -# endif - /* __IBMC__ = VRP */ -# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100) -# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10) -# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10) -# endif - -#elif defined(__PGI) -# define COMPILER_ID "PGI" -# define COMPILER_VERSION_MAJOR DEC(__PGIC__) -# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__) -# if defined(__PGIC_PATCHLEVEL__) -# define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__) -# endif - -#elif defined(_CRAYC) -# define COMPILER_ID "Cray" -# define COMPILER_VERSION_MAJOR DEC(_RELEASE) -# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR) - -#elif defined(__TI_COMPILER_VERSION__) -# define COMPILER_ID "TI" - /* __TI_COMPILER_VERSION__ = VVVRRRPPP */ -# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000) -# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000 % 1000) -# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__ % 1000) - -#elif defined(__TINYC__) -# define COMPILER_ID "TinyCC" - -#elif defined(__SCO_VERSION__) -# define COMPILER_ID "SCO" - -#elif defined(__GNUC__) -# define COMPILER_ID "GNU" -# define COMPILER_VERSION_MAJOR DEC(__GNUC__) -# define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__) -# if defined(__GNUC_PATCHLEVEL__) -# define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) -# endif - -#elif defined(_MSC_VER) -# define COMPILER_ID "MSVC" - /* _MSC_VER = VVRR */ -# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100) -# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100) -# if defined(_MSC_FULL_VER) -# if _MSC_VER >= 1400 - /* _MSC_FULL_VER = VVRRPPPPP */ -# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000) -# else - /* _MSC_FULL_VER = VVRRPPPP */ -# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000) -# endif -# endif -# if defined(_MSC_BUILD) -# define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD) -# endif - -/* Analog VisualDSP++ >= 4.5.6 */ -#elif defined(__VISUALDSPVERSION__) -# define COMPILER_ID "ADSP" - /* __VISUALDSPVERSION__ = 0xVVRRPP00 */ -# define COMPILER_VERSION_MAJOR HEX(__VISUALDSPVERSION__>>24) -# define COMPILER_VERSION_MINOR HEX(__VISUALDSPVERSION__>>16 & 0xFF) -# define COMPILER_VERSION_PATCH HEX(__VISUALDSPVERSION__>>8 & 0xFF) - -/* Analog VisualDSP++ < 4.5.6 */ -#elif defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__) -# define COMPILER_ID "ADSP" - -/* IAR Systems compiler for embedded systems. - http://www.iar.com */ -#elif defined(__IAR_SYSTEMS_ICC__ ) || defined(__IAR_SYSTEMS_ICC) -# define COMPILER_ID "IAR" - -/* sdcc, the small devices C compiler for embedded systems, - http://sdcc.sourceforge.net */ -#elif defined(SDCC) -# define COMPILER_ID "SDCC" - /* SDCC = VRP */ -# define COMPILER_VERSION_MAJOR DEC(SDCC/100) -# define COMPILER_VERSION_MINOR DEC(SDCC/10 % 10) -# define COMPILER_VERSION_PATCH DEC(SDCC % 10) - -#elif defined(_SGI_COMPILER_VERSION) || defined(_COMPILER_VERSION) -# define COMPILER_ID "MIPSpro" -# if defined(_SGI_COMPILER_VERSION) - /* _SGI_COMPILER_VERSION = VRP */ -# define COMPILER_VERSION_MAJOR DEC(_SGI_COMPILER_VERSION/100) -# define COMPILER_VERSION_MINOR DEC(_SGI_COMPILER_VERSION/10 % 10) -# define COMPILER_VERSION_PATCH DEC(_SGI_COMPILER_VERSION % 10) -# else - /* _COMPILER_VERSION = VRP */ -# define COMPILER_VERSION_MAJOR DEC(_COMPILER_VERSION/100) -# define COMPILER_VERSION_MINOR DEC(_COMPILER_VERSION/10 % 10) -# define COMPILER_VERSION_PATCH DEC(_COMPILER_VERSION % 10) -# endif - -/* This compiler is either not known or is too old to define an - identification macro. Try to identify the platform and guess that - it is the native compiler. */ -#elif defined(__sgi) -# define COMPILER_ID "MIPSpro" - -#elif defined(__hpux) || defined(__hpua) -# define COMPILER_ID "HP" - -#else /* unknown compiler */ -# define COMPILER_ID "" - -#endif - -/* Construct the string literal in pieces to prevent the source from - getting matched. Store it in a pointer rather than an array - because some compilers will just produce instructions to fill the - array rather than assigning a pointer to a static array. */ -char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]"; - -/* Identify known platforms by name. */ -#if defined(__linux) || defined(__linux__) || defined(linux) -# define PLATFORM_ID "Linux" - -#elif defined(__CYGWIN__) -# define PLATFORM_ID "Cygwin" - -#elif defined(__MINGW32__) -# define PLATFORM_ID "MinGW" - -#elif defined(__APPLE__) -# define PLATFORM_ID "Darwin" - -#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32) -# define PLATFORM_ID "Windows" - -#elif defined(__FreeBSD__) || defined(__FreeBSD) -# define PLATFORM_ID "FreeBSD" - -#elif defined(__NetBSD__) || defined(__NetBSD) -# define PLATFORM_ID "NetBSD" - -#elif defined(__OpenBSD__) || defined(__OPENBSD) -# define PLATFORM_ID "OpenBSD" - -#elif defined(__sun) || defined(sun) -# define PLATFORM_ID "SunOS" - -#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__) -# define PLATFORM_ID "AIX" - -#elif defined(__sgi) || defined(__sgi__) || defined(_SGI) -# define PLATFORM_ID "IRIX" - -#elif defined(__hpux) || defined(__hpux__) -# define PLATFORM_ID "HP-UX" - -#elif defined(__HAIKU__) -# define PLATFORM_ID "Haiku" - -#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS) -# define PLATFORM_ID "BeOS" - -#elif defined(__QNX__) || defined(__QNXNTO__) -# define PLATFORM_ID "QNX" - -#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__) -# define PLATFORM_ID "Tru64" - -#elif defined(__riscos) || defined(__riscos__) -# define PLATFORM_ID "RISCos" - -#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__) -# define PLATFORM_ID "SINIX" - -#elif defined(__UNIX_SV__) -# define PLATFORM_ID "UNIX_SV" - -#elif defined(__bsdos__) -# define PLATFORM_ID "BSDOS" - -#elif defined(_MPRAS) || defined(MPRAS) -# define PLATFORM_ID "MP-RAS" - -#elif defined(__osf) || defined(__osf__) -# define PLATFORM_ID "OSF1" - -#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv) -# define PLATFORM_ID "SCO_SV" - -#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX) -# define PLATFORM_ID "ULTRIX" - -#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX) -# define PLATFORM_ID "Xenix" - -#else /* unknown platform */ -# define PLATFORM_ID "" - -#endif - -/* For windows compilers MSVC and Intel we can determine - the architecture of the compiler being used. This is because - the compilers do not have flags that can change the architecture, - but rather depend on which compiler is being used -*/ -#if defined(_WIN32) && defined(_MSC_VER) -# if defined(_M_IA64) -# define ARCHITECTURE_ID "IA64" - -# elif defined(_M_X64) || defined(_M_AMD64) -# define ARCHITECTURE_ID "x64" - -# elif defined(_M_IX86) -# define ARCHITECTURE_ID "X86" - -# elif defined(_M_ARM) -# define ARCHITECTURE_ID "ARM" - -# elif defined(_M_MIPS) -# define ARCHITECTURE_ID "MIPS" - -# elif defined(_M_SH) -# define ARCHITECTURE_ID "SHx" - -# else /* unknown architecture */ -# define ARCHITECTURE_ID "" -# endif - -#else -# define ARCHITECTURE_ID "" -#endif - -/* Convert integer to decimal digit literals. */ -#define DEC(n) \ - ('0' + (((n) / 10000000)%10)), \ - ('0' + (((n) / 1000000)%10)), \ - ('0' + (((n) / 100000)%10)), \ - ('0' + (((n) / 10000)%10)), \ - ('0' + (((n) / 1000)%10)), \ - ('0' + (((n) / 100)%10)), \ - ('0' + (((n) / 10)%10)), \ - ('0' + ((n) % 10)) - -/* Convert integer to hex digit literals. */ -#define HEX(n) \ - ('0' + ((n)>>28 & 0xF)), \ - ('0' + ((n)>>24 & 0xF)), \ - ('0' + ((n)>>20 & 0xF)), \ - ('0' + ((n)>>16 & 0xF)), \ - ('0' + ((n)>>12 & 0xF)), \ - ('0' + ((n)>>8 & 0xF)), \ - ('0' + ((n)>>4 & 0xF)), \ - ('0' + ((n) & 0xF)) - -/* Construct a string literal encoding the version number components. */ -#ifdef COMPILER_VERSION_MAJOR -char const info_version[] = { - 'I', 'N', 'F', 'O', ':', - 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[', - COMPILER_VERSION_MAJOR, -# ifdef COMPILER_VERSION_MINOR - '.', COMPILER_VERSION_MINOR, -# ifdef COMPILER_VERSION_PATCH - '.', COMPILER_VERSION_PATCH, -# ifdef COMPILER_VERSION_TWEAK - '.', COMPILER_VERSION_TWEAK, -# endif -# endif -# endif - ']','\0'}; -#endif - -/* Construct the string literal in pieces to prevent the source from - getting matched. Store it in a pointer rather than an array - because some compilers will just produce instructions to fill the - array rather than assigning a pointer to a static array. */ -char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]"; -char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]"; - - - -/*--------------------------------------------------------------------------*/ - -#ifdef ID_VOID_MAIN -void main() {} -#else -int main(int argc, char* argv[]) -{ - int require = 0; - require += info_compiler[argc]; - require += info_platform[argc]; - require += info_arch[argc]; -#ifdef COMPILER_VERSION_MAJOR - require += info_version[argc]; -#endif - (void)argv; - return require; -} -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/2.8.12.2/CompilerIdC/a.out b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/2.8.12.2/CompilerIdC/a.out deleted file mode 100755 index 33a3d2b..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/2.8.12.2/CompilerIdC/a.out and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/2.8.12.2/CompilerIdCXX/CMakeCXXCompilerId.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/2.8.12.2/CompilerIdCXX/CMakeCXXCompilerId.cpp deleted file mode 100644 index e8220b2..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/2.8.12.2/CompilerIdCXX/CMakeCXXCompilerId.cpp +++ /dev/null @@ -1,377 +0,0 @@ -/* This source file must have a .cpp extension so that all C++ compilers - recognize the extension without flags. Borland does not know .cxx for - example. */ -#ifndef __cplusplus -# error "A C compiler has been selected for C++." -#endif - -/* Version number components: V=Version, R=Revision, P=Patch - Version date components: YYYY=Year, MM=Month, DD=Day */ - -#if defined(__COMO__) -# define COMPILER_ID "Comeau" - /* __COMO_VERSION__ = VRR */ -# define COMPILER_VERSION_MAJOR DEC(__COMO_VERSION__ / 100) -# define COMPILER_VERSION_MINOR DEC(__COMO_VERSION__ % 100) - -#elif defined(__INTEL_COMPILER) || defined(__ICC) -# define COMPILER_ID "Intel" - /* __INTEL_COMPILER = VRP */ -# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100) -# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10) -# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER % 10) -# if defined(__INTEL_COMPILER_BUILD_DATE) - /* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */ -# define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE) -# endif - -#elif defined(__PATHCC__) -# define COMPILER_ID "PathScale" -# define COMPILER_VERSION_MAJOR DEC(__PATHCC__) -# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__) -# if defined(__PATHCC_PATCHLEVEL__) -# define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__) -# endif - -#elif defined(__clang__) -# define COMPILER_ID "Clang" -# define COMPILER_VERSION_MAJOR DEC(__clang_major__) -# define COMPILER_VERSION_MINOR DEC(__clang_minor__) -# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) - -#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__) -# define COMPILER_ID "Embarcadero" -# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF) -# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF) -# define COMPILER_VERSION_PATCH HEX(__CODEGEARC_VERSION__ & 0xFFFF) - -#elif defined(__BORLANDC__) -# define COMPILER_ID "Borland" - /* __BORLANDC__ = 0xVRR */ -# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8) -# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF) - -#elif defined(__WATCOMC__) -# define COMPILER_ID "Watcom" - /* __WATCOMC__ = VVRR */ -# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100) -# define COMPILER_VERSION_MINOR DEC(__WATCOMC__ % 100) - -#elif defined(__SUNPRO_CC) -# define COMPILER_ID "SunPro" -# if __SUNPRO_CC >= 0x5100 - /* __SUNPRO_CC = 0xVRRP */ -# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>12) -# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xFF) -# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF) -# else - /* __SUNPRO_CC = 0xVRP */ -# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>8) -# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xF) -# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF) -# endif - -#elif defined(__HP_aCC) -# define COMPILER_ID "HP" - /* __HP_aCC = VVRRPP */ -# define COMPILER_VERSION_MAJOR DEC(__HP_aCC/10000) -# define COMPILER_VERSION_MINOR DEC(__HP_aCC/100 % 100) -# define COMPILER_VERSION_PATCH DEC(__HP_aCC % 100) - -#elif defined(__DECCXX) -# define COMPILER_ID "Compaq" - /* __DECCXX_VER = VVRRTPPPP */ -# define COMPILER_VERSION_MAJOR DEC(__DECCXX_VER/10000000) -# define COMPILER_VERSION_MINOR DEC(__DECCXX_VER/100000 % 100) -# define COMPILER_VERSION_PATCH DEC(__DECCXX_VER % 10000) - -#elif defined(__IBMCPP__) -# if defined(__COMPILER_VER__) -# define COMPILER_ID "zOS" -# else -# if __IBMCPP__ >= 800 -# define COMPILER_ID "XL" -# else -# define COMPILER_ID "VisualAge" -# endif - /* __IBMCPP__ = VRP */ -# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) -# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) -# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) -# endif - -#elif defined(__PGI) -# define COMPILER_ID "PGI" -# define COMPILER_VERSION_MAJOR DEC(__PGIC__) -# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__) -# if defined(__PGIC_PATCHLEVEL__) -# define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__) -# endif - -#elif defined(_CRAYC) -# define COMPILER_ID "Cray" -# define COMPILER_VERSION_MAJOR DEC(_RELEASE) -# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR) - -#elif defined(__TI_COMPILER_VERSION__) -# define COMPILER_ID "TI" - /* __TI_COMPILER_VERSION__ = VVVRRRPPP */ -# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000) -# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000 % 1000) -# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__ % 1000) - -#elif defined(__SCO_VERSION__) -# define COMPILER_ID "SCO" - -#elif defined(__GNUC__) -# define COMPILER_ID "GNU" -# define COMPILER_VERSION_MAJOR DEC(__GNUC__) -# define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__) -# if defined(__GNUC_PATCHLEVEL__) -# define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) -# endif - -#elif defined(_MSC_VER) -# define COMPILER_ID "MSVC" - /* _MSC_VER = VVRR */ -# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100) -# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100) -# if defined(_MSC_FULL_VER) -# if _MSC_VER >= 1400 - /* _MSC_FULL_VER = VVRRPPPPP */ -# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000) -# else - /* _MSC_FULL_VER = VVRRPPPP */ -# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000) -# endif -# endif -# if defined(_MSC_BUILD) -# define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD) -# endif - -/* Analog VisualDSP++ >= 4.5.6 */ -#elif defined(__VISUALDSPVERSION__) -# define COMPILER_ID "ADSP" - /* __VISUALDSPVERSION__ = 0xVVRRPP00 */ -# define COMPILER_VERSION_MAJOR HEX(__VISUALDSPVERSION__>>24) -# define COMPILER_VERSION_MINOR HEX(__VISUALDSPVERSION__>>16 & 0xFF) -# define COMPILER_VERSION_PATCH HEX(__VISUALDSPVERSION__>>8 & 0xFF) - -/* Analog VisualDSP++ < 4.5.6 */ -#elif defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__) -# define COMPILER_ID "ADSP" - -/* IAR Systems compiler for embedded systems. - http://www.iar.com */ -#elif defined(__IAR_SYSTEMS_ICC__ ) || defined(__IAR_SYSTEMS_ICC) -# define COMPILER_ID "IAR" - -#elif defined(_SGI_COMPILER_VERSION) || defined(_COMPILER_VERSION) -# define COMPILER_ID "MIPSpro" -# if defined(_SGI_COMPILER_VERSION) - /* _SGI_COMPILER_VERSION = VRP */ -# define COMPILER_VERSION_MAJOR DEC(_SGI_COMPILER_VERSION/100) -# define COMPILER_VERSION_MINOR DEC(_SGI_COMPILER_VERSION/10 % 10) -# define COMPILER_VERSION_PATCH DEC(_SGI_COMPILER_VERSION % 10) -# else - /* _COMPILER_VERSION = VRP */ -# define COMPILER_VERSION_MAJOR DEC(_COMPILER_VERSION/100) -# define COMPILER_VERSION_MINOR DEC(_COMPILER_VERSION/10 % 10) -# define COMPILER_VERSION_PATCH DEC(_COMPILER_VERSION % 10) -# endif - -/* This compiler is either not known or is too old to define an - identification macro. Try to identify the platform and guess that - it is the native compiler. */ -#elif defined(__sgi) -# define COMPILER_ID "MIPSpro" - -#elif defined(__hpux) || defined(__hpua) -# define COMPILER_ID "HP" - -#else /* unknown compiler */ -# define COMPILER_ID "" - -#endif - -/* Construct the string literal in pieces to prevent the source from - getting matched. Store it in a pointer rather than an array - because some compilers will just produce instructions to fill the - array rather than assigning a pointer to a static array. */ -char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]"; - -/* Identify known platforms by name. */ -#if defined(__linux) || defined(__linux__) || defined(linux) -# define PLATFORM_ID "Linux" - -#elif defined(__CYGWIN__) -# define PLATFORM_ID "Cygwin" - -#elif defined(__MINGW32__) -# define PLATFORM_ID "MinGW" - -#elif defined(__APPLE__) -# define PLATFORM_ID "Darwin" - -#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32) -# define PLATFORM_ID "Windows" - -#elif defined(__FreeBSD__) || defined(__FreeBSD) -# define PLATFORM_ID "FreeBSD" - -#elif defined(__NetBSD__) || defined(__NetBSD) -# define PLATFORM_ID "NetBSD" - -#elif defined(__OpenBSD__) || defined(__OPENBSD) -# define PLATFORM_ID "OpenBSD" - -#elif defined(__sun) || defined(sun) -# define PLATFORM_ID "SunOS" - -#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__) -# define PLATFORM_ID "AIX" - -#elif defined(__sgi) || defined(__sgi__) || defined(_SGI) -# define PLATFORM_ID "IRIX" - -#elif defined(__hpux) || defined(__hpux__) -# define PLATFORM_ID "HP-UX" - -#elif defined(__HAIKU__) -# define PLATFORM_ID "Haiku" - -#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS) -# define PLATFORM_ID "BeOS" - -#elif defined(__QNX__) || defined(__QNXNTO__) -# define PLATFORM_ID "QNX" - -#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__) -# define PLATFORM_ID "Tru64" - -#elif defined(__riscos) || defined(__riscos__) -# define PLATFORM_ID "RISCos" - -#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__) -# define PLATFORM_ID "SINIX" - -#elif defined(__UNIX_SV__) -# define PLATFORM_ID "UNIX_SV" - -#elif defined(__bsdos__) -# define PLATFORM_ID "BSDOS" - -#elif defined(_MPRAS) || defined(MPRAS) -# define PLATFORM_ID "MP-RAS" - -#elif defined(__osf) || defined(__osf__) -# define PLATFORM_ID "OSF1" - -#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv) -# define PLATFORM_ID "SCO_SV" - -#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX) -# define PLATFORM_ID "ULTRIX" - -#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX) -# define PLATFORM_ID "Xenix" - -#else /* unknown platform */ -# define PLATFORM_ID "" - -#endif - -/* For windows compilers MSVC and Intel we can determine - the architecture of the compiler being used. This is because - the compilers do not have flags that can change the architecture, - but rather depend on which compiler is being used -*/ -#if defined(_WIN32) && defined(_MSC_VER) -# if defined(_M_IA64) -# define ARCHITECTURE_ID "IA64" - -# elif defined(_M_X64) || defined(_M_AMD64) -# define ARCHITECTURE_ID "x64" - -# elif defined(_M_IX86) -# define ARCHITECTURE_ID "X86" - -# elif defined(_M_ARM) -# define ARCHITECTURE_ID "ARM" - -# elif defined(_M_MIPS) -# define ARCHITECTURE_ID "MIPS" - -# elif defined(_M_SH) -# define ARCHITECTURE_ID "SHx" - -# else /* unknown architecture */ -# define ARCHITECTURE_ID "" -# endif - -#else -# define ARCHITECTURE_ID "" -#endif - -/* Convert integer to decimal digit literals. */ -#define DEC(n) \ - ('0' + (((n) / 10000000)%10)), \ - ('0' + (((n) / 1000000)%10)), \ - ('0' + (((n) / 100000)%10)), \ - ('0' + (((n) / 10000)%10)), \ - ('0' + (((n) / 1000)%10)), \ - ('0' + (((n) / 100)%10)), \ - ('0' + (((n) / 10)%10)), \ - ('0' + ((n) % 10)) - -/* Convert integer to hex digit literals. */ -#define HEX(n) \ - ('0' + ((n)>>28 & 0xF)), \ - ('0' + ((n)>>24 & 0xF)), \ - ('0' + ((n)>>20 & 0xF)), \ - ('0' + ((n)>>16 & 0xF)), \ - ('0' + ((n)>>12 & 0xF)), \ - ('0' + ((n)>>8 & 0xF)), \ - ('0' + ((n)>>4 & 0xF)), \ - ('0' + ((n) & 0xF)) - -/* Construct a string literal encoding the version number components. */ -#ifdef COMPILER_VERSION_MAJOR -char const info_version[] = { - 'I', 'N', 'F', 'O', ':', - 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[', - COMPILER_VERSION_MAJOR, -# ifdef COMPILER_VERSION_MINOR - '.', COMPILER_VERSION_MINOR, -# ifdef COMPILER_VERSION_PATCH - '.', COMPILER_VERSION_PATCH, -# ifdef COMPILER_VERSION_TWEAK - '.', COMPILER_VERSION_TWEAK, -# endif -# endif -# endif - ']','\0'}; -#endif - -/* Construct the string literal in pieces to prevent the source from - getting matched. Store it in a pointer rather than an array - because some compilers will just produce instructions to fill the - array rather than assigning a pointer to a static array. */ -char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]"; -char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]"; - - - -/*--------------------------------------------------------------------------*/ - -int main(int argc, char* argv[]) -{ - int require = 0; - require += info_compiler[argc]; - require += info_platform[argc]; -#ifdef COMPILER_VERSION_MAJOR - require += info_version[argc]; -#endif - (void)argv; - return require; -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/2.8.12.2/CompilerIdCXX/a.out b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/2.8.12.2/CompilerIdCXX/a.out deleted file mode 100755 index db35dbd..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/2.8.12.2/CompilerIdCXX/a.out and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/CXX.includecache b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/CXX.includecache deleted file mode 100644 index 8efa062..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/CXX.includecache +++ /dev/null @@ -1,766 +0,0 @@ -#IncludeRegexLine: ^[ ]*#[ ]*(include|import)[ ]*[<"]([^">]+)([">]) - -#IncludeRegexScan: ^.*$ - -#IncludeRegexComplain: ^$ - -#IncludeRegexTransform: - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2ChainShape.cpp -Box2D/Collision/Shapes/b2ChainShape.h -- -Box2D/Collision/Shapes/b2EdgeShape.h -- -new -- -memory.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2CircleShape.cpp -Box2D/Collision/Shapes/b2CircleShape.h -- -new -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2EdgeShape.cpp -Box2D/Collision/Shapes/b2EdgeShape.h -- -new -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2PolygonShape.cpp -Box2D/Collision/Shapes/b2PolygonShape.h -- -new -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2BroadPhase.cpp -Box2D/Collision/b2BroadPhase.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2CollideCircle.cpp -Box2D/Collision/b2Collision.h -- -Box2D/Collision/Shapes/b2CircleShape.h -- -Box2D/Collision/Shapes/b2PolygonShape.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2CollideEdge.cpp -Box2D/Collision/b2Collision.h -- -Box2D/Collision/Shapes/b2CircleShape.h -- -Box2D/Collision/Shapes/b2EdgeShape.h -- -Box2D/Collision/Shapes/b2PolygonShape.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2CollidePolygon.cpp -Box2D/Collision/b2Collision.h -- -Box2D/Collision/Shapes/b2PolygonShape.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2Collision.cpp -Box2D/Collision/b2Collision.h -- -Box2D/Collision/b2Distance.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2Distance.cpp -Box2D/Collision/b2Distance.h -- -Box2D/Collision/Shapes/b2CircleShape.h -- -Box2D/Collision/Shapes/b2EdgeShape.h -- -Box2D/Collision/Shapes/b2ChainShape.h -- -Box2D/Collision/Shapes/b2PolygonShape.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2DynamicTree.cpp -Box2D/Collision/b2DynamicTree.h -- -memory.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2TimeOfImpact.cpp -Box2D/Collision/b2Collision.h -- -Box2D/Collision/b2Distance.h -- -Box2D/Collision/b2TimeOfImpact.h -- -Box2D/Collision/Shapes/b2CircleShape.h -- -Box2D/Collision/Shapes/b2PolygonShape.h -- -Box2D/Common/b2Timer.h -- -stdio.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2BlockAllocator.cpp -Box2D/Common/b2BlockAllocator.h -- -limits.h -- -memory.h -- -stddef.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Draw.cpp -Box2D/Common/b2Draw.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Math.cpp -Box2D/Common/b2Math.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Settings.cpp -Box2D/Common/b2Settings.h -- -stdio.h -- -stdarg.h -- -stdlib.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2StackAllocator.cpp -Box2D/Common/b2StackAllocator.h -- -Box2D/Common/b2Math.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Timer.cpp -Box2D/Common/b2Timer.h -- -windows.h -- -sys/time.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2ChainAndCircleContact.cpp -Box2D/Dynamics/Contacts/b2ChainAndCircleContact.h -- -Box2D/Common/b2BlockAllocator.h -- -Box2D/Dynamics/b2Fixture.h -- -Box2D/Collision/Shapes/b2ChainShape.h -- -Box2D/Collision/Shapes/b2EdgeShape.h -- -new -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2ChainAndPolygonContact.cpp -Box2D/Dynamics/Contacts/b2ChainAndPolygonContact.h -- -Box2D/Common/b2BlockAllocator.h -- -Box2D/Dynamics/b2Fixture.h -- -Box2D/Collision/Shapes/b2ChainShape.h -- -Box2D/Collision/Shapes/b2EdgeShape.h -- -new -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2CircleContact.cpp -Box2D/Dynamics/Contacts/b2CircleContact.h -- -Box2D/Dynamics/b2Body.h -- -Box2D/Dynamics/b2Fixture.h -- -Box2D/Dynamics/b2WorldCallbacks.h -- -Box2D/Common/b2BlockAllocator.h -- -Box2D/Collision/b2TimeOfImpact.h -- -new -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2Contact.cpp -Box2D/Dynamics/Contacts/b2Contact.h -- -Box2D/Dynamics/Contacts/b2CircleContact.h -- -Box2D/Dynamics/Contacts/b2PolygonAndCircleContact.h -- -Box2D/Dynamics/Contacts/b2PolygonContact.h -- -Box2D/Dynamics/Contacts/b2EdgeAndCircleContact.h -- -Box2D/Dynamics/Contacts/b2EdgeAndPolygonContact.h -- -Box2D/Dynamics/Contacts/b2ChainAndCircleContact.h -- -Box2D/Dynamics/Contacts/b2ChainAndPolygonContact.h -- -Box2D/Dynamics/Contacts/b2ContactSolver.h -- -Box2D/Collision/b2Collision.h -- -Box2D/Collision/b2TimeOfImpact.h -- -Box2D/Collision/Shapes/b2Shape.h -- -Box2D/Common/b2BlockAllocator.h -- -Box2D/Dynamics/b2Body.h -- -Box2D/Dynamics/b2Fixture.h -- -Box2D/Dynamics/b2World.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2ContactSolver.cpp -Box2D/Dynamics/Contacts/b2ContactSolver.h -- -Box2D/Dynamics/Contacts/b2Contact.h -- -Box2D/Dynamics/b2Body.h -- -Box2D/Dynamics/b2Fixture.h -- -Box2D/Dynamics/b2World.h -- -Box2D/Common/b2StackAllocator.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2EdgeAndCircleContact.cpp -Box2D/Dynamics/Contacts/b2EdgeAndCircleContact.h -- -Box2D/Common/b2BlockAllocator.h -- -Box2D/Dynamics/b2Fixture.h -- -new -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp -Box2D/Dynamics/Contacts/b2EdgeAndPolygonContact.h -- -Box2D/Common/b2BlockAllocator.h -- -Box2D/Dynamics/b2Fixture.h -- -new -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2PolygonAndCircleContact.cpp -Box2D/Dynamics/Contacts/b2PolygonAndCircleContact.h -- -Box2D/Common/b2BlockAllocator.h -- -Box2D/Dynamics/b2Fixture.h -- -new -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2PolygonContact.cpp -Box2D/Dynamics/Contacts/b2PolygonContact.h -- -Box2D/Common/b2BlockAllocator.h -- -Box2D/Collision/b2TimeOfImpact.h -- -Box2D/Dynamics/b2Body.h -- -Box2D/Dynamics/b2Fixture.h -- -Box2D/Dynamics/b2WorldCallbacks.h -- -new -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2DistanceJoint.cpp -Box2D/Dynamics/Joints/b2DistanceJoint.h -- -Box2D/Dynamics/b2Body.h -- -Box2D/Dynamics/b2TimeStep.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2FrictionJoint.cpp -Box2D/Dynamics/Joints/b2FrictionJoint.h -- -Box2D/Dynamics/b2Body.h -- -Box2D/Dynamics/b2TimeStep.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2GearJoint.cpp -Box2D/Dynamics/Joints/b2GearJoint.h -- -Box2D/Dynamics/Joints/b2RevoluteJoint.h -- -Box2D/Dynamics/Joints/b2PrismaticJoint.h -- -Box2D/Dynamics/b2Body.h -- -Box2D/Dynamics/b2TimeStep.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2Joint.cpp -Box2D/Dynamics/Joints/b2Joint.h -- -Box2D/Dynamics/Joints/b2DistanceJoint.h -- -Box2D/Dynamics/Joints/b2WheelJoint.h -- -Box2D/Dynamics/Joints/b2MouseJoint.h -- -Box2D/Dynamics/Joints/b2RevoluteJoint.h -- -Box2D/Dynamics/Joints/b2PrismaticJoint.h -- -Box2D/Dynamics/Joints/b2PulleyJoint.h -- -Box2D/Dynamics/Joints/b2GearJoint.h -- -Box2D/Dynamics/Joints/b2WeldJoint.h -- -Box2D/Dynamics/Joints/b2FrictionJoint.h -- -Box2D/Dynamics/Joints/b2RopeJoint.h -- -Box2D/Dynamics/Joints/b2MotorJoint.h -- -Box2D/Dynamics/b2Body.h -- -Box2D/Dynamics/b2World.h -- -Box2D/Common/b2BlockAllocator.h -- -new -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2MotorJoint.cpp -Box2D/Dynamics/Joints/b2MotorJoint.h -- -Box2D/Dynamics/b2Body.h -- -Box2D/Dynamics/b2TimeStep.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2MouseJoint.cpp -Box2D/Dynamics/Joints/b2MouseJoint.h -- -Box2D/Dynamics/b2Body.h -- -Box2D/Dynamics/b2TimeStep.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2PrismaticJoint.cpp -Box2D/Dynamics/Joints/b2PrismaticJoint.h -- -Box2D/Dynamics/b2Body.h -- -Box2D/Dynamics/b2TimeStep.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2PulleyJoint.cpp -Box2D/Dynamics/Joints/b2PulleyJoint.h -- -Box2D/Dynamics/b2Body.h -- -Box2D/Dynamics/b2TimeStep.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2RevoluteJoint.cpp -Box2D/Dynamics/Joints/b2RevoluteJoint.h -- -Box2D/Dynamics/b2Body.h -- -Box2D/Dynamics/b2TimeStep.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2RopeJoint.cpp -Box2D/Dynamics/Joints/b2RopeJoint.h -- -Box2D/Dynamics/b2Body.h -- -Box2D/Dynamics/b2TimeStep.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2WeldJoint.cpp -Box2D/Dynamics/Joints/b2WeldJoint.h -- -Box2D/Dynamics/b2Body.h -- -Box2D/Dynamics/b2TimeStep.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2WheelJoint.cpp -Box2D/Dynamics/Joints/b2WheelJoint.h -- -Box2D/Dynamics/b2Body.h -- -Box2D/Dynamics/b2TimeStep.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2Body.cpp -Box2D/Dynamics/b2Body.h -- -Box2D/Dynamics/b2Fixture.h -- -Box2D/Dynamics/b2World.h -- -Box2D/Dynamics/Contacts/b2Contact.h -- -Box2D/Dynamics/Joints/b2Joint.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2ContactManager.cpp -Box2D/Dynamics/b2ContactManager.h -- -Box2D/Dynamics/b2Body.h -- -Box2D/Dynamics/b2Fixture.h -- -Box2D/Dynamics/b2WorldCallbacks.h -- -Box2D/Dynamics/Contacts/b2Contact.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2Fixture.cpp -Box2D/Dynamics/b2Fixture.h -- -Box2D/Dynamics/Contacts/b2Contact.h -- -Box2D/Dynamics/b2World.h -- -Box2D/Collision/Shapes/b2CircleShape.h -- -Box2D/Collision/Shapes/b2EdgeShape.h -- -Box2D/Collision/Shapes/b2PolygonShape.h -- -Box2D/Collision/Shapes/b2ChainShape.h -- -Box2D/Collision/b2BroadPhase.h -- -Box2D/Collision/b2Collision.h -- -Box2D/Common/b2BlockAllocator.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2Island.cpp -Box2D/Collision/b2Distance.h -- -Box2D/Dynamics/b2Island.h -- -Box2D/Dynamics/b2Body.h -- -Box2D/Dynamics/b2Fixture.h -- -Box2D/Dynamics/b2World.h -- -Box2D/Dynamics/Contacts/b2Contact.h -- -Box2D/Dynamics/Contacts/b2ContactSolver.h -- -Box2D/Dynamics/Joints/b2Joint.h -- -Box2D/Common/b2StackAllocator.h -- -Box2D/Common/b2Timer.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2World.cpp -Box2D/Dynamics/b2World.h -- -Box2D/Dynamics/b2Body.h -- -Box2D/Dynamics/b2Fixture.h -- -Box2D/Dynamics/b2Island.h -- -Box2D/Dynamics/Joints/b2PulleyJoint.h -- -Box2D/Dynamics/Contacts/b2Contact.h -- -Box2D/Dynamics/Contacts/b2ContactSolver.h -- -Box2D/Collision/b2Collision.h -- -Box2D/Collision/b2BroadPhase.h -- -Box2D/Collision/Shapes/b2CircleShape.h -- -Box2D/Collision/Shapes/b2EdgeShape.h -- -Box2D/Collision/Shapes/b2ChainShape.h -- -Box2D/Collision/Shapes/b2PolygonShape.h -- -Box2D/Collision/b2TimeOfImpact.h -- -Box2D/Common/b2Draw.h -- -Box2D/Common/b2Timer.h -- -new -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2WorldCallbacks.cpp -Box2D/Dynamics/b2WorldCallbacks.h -- -Box2D/Dynamics/b2Fixture.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Rope/b2Rope.cpp -Box2D/Rope/b2Rope.h -- -Box2D/Common/b2Draw.h -- - -Box2D/../Box2D/Collision/Shapes/b2ChainShape.h -Box2D/Collision/Shapes/b2Shape.h -- - -Box2D/../Box2D/Collision/Shapes/b2CircleShape.h -Box2D/Collision/Shapes/b2Shape.h -- - -Box2D/../Box2D/Collision/Shapes/b2EdgeShape.h -Box2D/Collision/Shapes/b2Shape.h -- - -Box2D/../Box2D/Collision/Shapes/b2PolygonShape.h -Box2D/Collision/Shapes/b2Shape.h -- - -Box2D/../Box2D/Collision/Shapes/b2Shape.h -Box2D/Common/b2BlockAllocator.h -- -Box2D/Common/b2Math.h -- -Box2D/Collision/b2Collision.h -- - -Box2D/../Box2D/Collision/b2BroadPhase.h -Box2D/Common/b2Settings.h -- -Box2D/Collision/b2Collision.h -- -Box2D/Collision/b2DynamicTree.h -- -algorithm -- - -Box2D/../Box2D/Collision/b2Collision.h -Box2D/Common/b2Math.h -- -limits.h -- - -Box2D/../Box2D/Collision/b2Distance.h -Box2D/Common/b2Math.h -- - -Box2D/../Box2D/Collision/b2DynamicTree.h -Box2D/Collision/b2Collision.h -- -Box2D/Common/b2GrowableStack.h -- - -Box2D/../Box2D/Collision/b2TimeOfImpact.h -Box2D/Common/b2Math.h -- -Box2D/Collision/b2Distance.h -- - -Box2D/../Box2D/Common/b2BlockAllocator.h -Box2D/Common/b2Settings.h -- - -Box2D/../Box2D/Common/b2Draw.h -Box2D/Common/b2Math.h -- - -Box2D/../Box2D/Common/b2GrowableStack.h -Box2D/Common/b2Settings.h -- -memory.h -- - -Box2D/../Box2D/Common/b2Math.h -Box2D/Common/b2Settings.h -- -math.h -- - -Box2D/../Box2D/Common/b2Settings.h -stddef.h -- -assert.h -- -float.h -- - -Box2D/../Box2D/Common/b2StackAllocator.h -Box2D/Common/b2Settings.h -- - -Box2D/../Box2D/Common/b2Timer.h -Box2D/Common/b2Settings.h -- - -Box2D/../Box2D/Dynamics/Contacts/b2ChainAndCircleContact.h -Box2D/Dynamics/Contacts/b2Contact.h -- - -Box2D/../Box2D/Dynamics/Contacts/b2ChainAndPolygonContact.h -Box2D/Dynamics/Contacts/b2Contact.h -- - -Box2D/../Box2D/Dynamics/Contacts/b2CircleContact.h -Box2D/Dynamics/Contacts/b2Contact.h -- - -Box2D/../Box2D/Dynamics/Contacts/b2Contact.h -Box2D/Common/b2Math.h -- -Box2D/Collision/b2Collision.h -- -Box2D/Collision/Shapes/b2Shape.h -- -Box2D/Dynamics/b2Fixture.h -- - -Box2D/../Box2D/Dynamics/Contacts/b2ContactSolver.h -Box2D/Common/b2Math.h -- -Box2D/Collision/b2Collision.h -- -Box2D/Dynamics/b2TimeStep.h -- - -Box2D/../Box2D/Dynamics/Contacts/b2EdgeAndCircleContact.h -Box2D/Dynamics/Contacts/b2Contact.h -- - -Box2D/../Box2D/Dynamics/Contacts/b2EdgeAndPolygonContact.h -Box2D/Dynamics/Contacts/b2Contact.h -- - -Box2D/../Box2D/Dynamics/Contacts/b2PolygonAndCircleContact.h -Box2D/Dynamics/Contacts/b2Contact.h -- - -Box2D/../Box2D/Dynamics/Contacts/b2PolygonContact.h -Box2D/Dynamics/Contacts/b2Contact.h -- - -Box2D/../Box2D/Dynamics/Joints/b2DistanceJoint.h -Box2D/Dynamics/Joints/b2Joint.h -- - -Box2D/../Box2D/Dynamics/Joints/b2FrictionJoint.h -Box2D/Dynamics/Joints/b2Joint.h -- - -Box2D/../Box2D/Dynamics/Joints/b2GearJoint.h -Box2D/Dynamics/Joints/b2Joint.h -- - -Box2D/../Box2D/Dynamics/Joints/b2Joint.h -Box2D/Common/b2Math.h -- - -Box2D/../Box2D/Dynamics/Joints/b2MotorJoint.h -Box2D/Dynamics/Joints/b2Joint.h -- - -Box2D/../Box2D/Dynamics/Joints/b2MouseJoint.h -Box2D/Dynamics/Joints/b2Joint.h -- - -Box2D/../Box2D/Dynamics/Joints/b2PrismaticJoint.h -Box2D/Dynamics/Joints/b2Joint.h -- - -Box2D/../Box2D/Dynamics/Joints/b2PulleyJoint.h -Box2D/Dynamics/Joints/b2Joint.h -- - -Box2D/../Box2D/Dynamics/Joints/b2RevoluteJoint.h -Box2D/Dynamics/Joints/b2Joint.h -- - -Box2D/../Box2D/Dynamics/Joints/b2RopeJoint.h -Box2D/Dynamics/Joints/b2Joint.h -- - -Box2D/../Box2D/Dynamics/Joints/b2WeldJoint.h -Box2D/Dynamics/Joints/b2Joint.h -- - -Box2D/../Box2D/Dynamics/Joints/b2WheelJoint.h -Box2D/Dynamics/Joints/b2Joint.h -- - -Box2D/../Box2D/Dynamics/b2Body.h -Box2D/Common/b2Math.h -- -Box2D/Collision/Shapes/b2Shape.h -- -memory -- - -Box2D/../Box2D/Dynamics/b2ContactManager.h -Box2D/Collision/b2BroadPhase.h -- - -Box2D/../Box2D/Dynamics/b2Fixture.h -Box2D/Dynamics/b2Body.h -- -Box2D/Collision/b2Collision.h -- -Box2D/Collision/Shapes/b2Shape.h -- - -Box2D/../Box2D/Dynamics/b2Island.h -Box2D/Common/b2Math.h -- -Box2D/Dynamics/b2Body.h -- -Box2D/Dynamics/b2TimeStep.h -- - -Box2D/../Box2D/Dynamics/b2TimeStep.h -Box2D/Common/b2Math.h -- - -Box2D/../Box2D/Dynamics/b2World.h -Box2D/Common/b2Math.h -- -Box2D/Common/b2BlockAllocator.h -- -Box2D/Common/b2StackAllocator.h -- -Box2D/Dynamics/b2ContactManager.h -- -Box2D/Dynamics/b2WorldCallbacks.h -- -Box2D/Dynamics/b2TimeStep.h -- - -Box2D/../Box2D/Dynamics/b2WorldCallbacks.h -Box2D/Common/b2Settings.h -- - -Box2D/../Box2D/Rope/b2Rope.h -Box2D/Common/b2Math.h -- - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2ChainShape.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2ChainShape.cpp.o deleted file mode 100644 index 54ab901..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2ChainShape.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2CircleShape.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2CircleShape.cpp.o deleted file mode 100644 index a2b907a..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2CircleShape.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2EdgeShape.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2EdgeShape.cpp.o deleted file mode 100644 index c8d6867..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2EdgeShape.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2PolygonShape.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2PolygonShape.cpp.o deleted file mode 100644 index 263008b..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2PolygonShape.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/b2BroadPhase.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/b2BroadPhase.cpp.o deleted file mode 100644 index 959c970..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/b2BroadPhase.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideCircle.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideCircle.cpp.o deleted file mode 100644 index eda2025..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideCircle.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideEdge.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideEdge.cpp.o deleted file mode 100644 index 0eee046..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideEdge.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/b2CollidePolygon.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/b2CollidePolygon.cpp.o deleted file mode 100644 index 7153458..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/b2CollidePolygon.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/b2Collision.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/b2Collision.cpp.o deleted file mode 100644 index 7243446..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/b2Collision.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/b2Distance.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/b2Distance.cpp.o deleted file mode 100644 index 491c69d..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/b2Distance.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/b2DynamicTree.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/b2DynamicTree.cpp.o deleted file mode 100644 index b1fe5ac..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/b2DynamicTree.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/b2TimeOfImpact.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/b2TimeOfImpact.cpp.o deleted file mode 100644 index 0e78008..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/b2TimeOfImpact.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Common/b2BlockAllocator.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Common/b2BlockAllocator.cpp.o deleted file mode 100644 index 9e25f46..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Common/b2BlockAllocator.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Common/b2Draw.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Common/b2Draw.cpp.o deleted file mode 100644 index b23fe47..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Common/b2Draw.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Common/b2Math.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Common/b2Math.cpp.o deleted file mode 100644 index a03f8b0..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Common/b2Math.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Common/b2Settings.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Common/b2Settings.cpp.o deleted file mode 100644 index 1a2a2e2..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Common/b2Settings.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Common/b2StackAllocator.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Common/b2StackAllocator.cpp.o deleted file mode 100644 index 6bf1b3b..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Common/b2StackAllocator.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Common/b2Timer.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Common/b2Timer.cpp.o deleted file mode 100644 index a523cbe..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Common/b2Timer.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/DependInfo.cmake b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/DependInfo.cmake deleted file mode 100644 index fd26bee..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/DependInfo.cmake +++ /dev/null @@ -1,66 +0,0 @@ -# The set of languages for which implicit dependencies are needed: -SET(CMAKE_DEPENDS_LANGUAGES - "CXX" - ) -# The set of files for implicit dependencies of each language: -SET(CMAKE_DEPENDS_CHECK_CXX - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2ChainShape.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2ChainShape.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2CircleShape.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2CircleShape.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2EdgeShape.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2EdgeShape.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2PolygonShape.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2PolygonShape.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2BroadPhase.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/b2BroadPhase.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2CollideCircle.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideCircle.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2CollideEdge.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideEdge.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2CollidePolygon.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/b2CollidePolygon.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2Collision.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/b2Collision.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2Distance.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/b2Distance.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2DynamicTree.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/b2DynamicTree.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2TimeOfImpact.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Collision/b2TimeOfImpact.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2BlockAllocator.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Common/b2BlockAllocator.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Draw.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Common/b2Draw.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Math.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Common/b2Math.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Settings.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Common/b2Settings.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2StackAllocator.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Common/b2StackAllocator.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Timer.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Common/b2Timer.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2ChainAndCircleContact.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndCircleContact.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2ChainAndPolygonContact.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndPolygonContact.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2CircleContact.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2Contact.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2ContactSolver.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2EdgeAndCircleContact.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndCircleContact.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2PolygonAndCircleContact.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonAndCircleContact.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2PolygonContact.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2DistanceJoint.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2DistanceJoint.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2FrictionJoint.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2FrictionJoint.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2GearJoint.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2GearJoint.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2Joint.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2MotorJoint.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MotorJoint.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2MouseJoint.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MouseJoint.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2PrismaticJoint.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PrismaticJoint.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2PulleyJoint.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PulleyJoint.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2RevoluteJoint.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RevoluteJoint.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2RopeJoint.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RopeJoint.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2WeldJoint.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WeldJoint.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2WheelJoint.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WheelJoint.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2Body.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2ContactManager.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2Fixture.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2Island.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2World.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2WorldCallbacks.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/b2WorldCallbacks.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Rope/b2Rope.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Rope/b2Rope.cpp.o" - ) -SET(CMAKE_CXX_COMPILER_ID "GNU") - -# Targets to which this target links. -SET(CMAKE_TARGET_LINKED_INFO_FILES - ) - -# The include file search paths: -SET(CMAKE_C_TARGET_INCLUDE_PATH - "Box2D/.." - ) -SET(CMAKE_CXX_TARGET_INCLUDE_PATH ${CMAKE_C_TARGET_INCLUDE_PATH}) -SET(CMAKE_Fortran_TARGET_INCLUDE_PATH ${CMAKE_C_TARGET_INCLUDE_PATH}) -SET(CMAKE_ASM_TARGET_INCLUDE_PATH ${CMAKE_C_TARGET_INCLUDE_PATH}) diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndCircleContact.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndCircleContact.cpp.o deleted file mode 100644 index 7a2ad05..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndCircleContact.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndPolygonContact.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndPolygonContact.cpp.o deleted file mode 100644 index 3306768..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndPolygonContact.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.o deleted file mode 100644 index 2f6d999..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o deleted file mode 100644 index cfa5a1f..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.o deleted file mode 100644 index 10c98d2..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndCircleContact.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndCircleContact.cpp.o deleted file mode 100644 index b4db5d1..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndCircleContact.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.o deleted file mode 100644 index 693c4d3..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonAndCircleContact.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonAndCircleContact.cpp.o deleted file mode 100644 index 07a1e12..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonAndCircleContact.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.o deleted file mode 100644 index 5e701b7..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2DistanceJoint.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2DistanceJoint.cpp.o deleted file mode 100644 index d4a9e3f..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2DistanceJoint.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2FrictionJoint.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2FrictionJoint.cpp.o deleted file mode 100644 index c4ce3df..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2FrictionJoint.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2GearJoint.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2GearJoint.cpp.o deleted file mode 100644 index 0a4bd1d..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2GearJoint.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o deleted file mode 100644 index 30f7fdf..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MotorJoint.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MotorJoint.cpp.o deleted file mode 100644 index 7b2c846..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MotorJoint.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MouseJoint.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MouseJoint.cpp.o deleted file mode 100644 index 44a976d..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MouseJoint.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PrismaticJoint.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PrismaticJoint.cpp.o deleted file mode 100644 index 3027e21..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PrismaticJoint.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PulleyJoint.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PulleyJoint.cpp.o deleted file mode 100644 index bd59dfa..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PulleyJoint.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RevoluteJoint.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RevoluteJoint.cpp.o deleted file mode 100644 index e28810b..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RevoluteJoint.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RopeJoint.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RopeJoint.cpp.o deleted file mode 100644 index da2901c..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RopeJoint.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WeldJoint.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WeldJoint.cpp.o deleted file mode 100644 index e05a389..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WeldJoint.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WheelJoint.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WheelJoint.cpp.o deleted file mode 100644 index 5f38060..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WheelJoint.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.o deleted file mode 100644 index fd8104a..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.o deleted file mode 100644 index 4540b87..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o deleted file mode 100644 index 38adfe3..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o deleted file mode 100644 index 99601f9..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o deleted file mode 100644 index aae026a..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/b2WorldCallbacks.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/b2WorldCallbacks.cpp.o deleted file mode 100644 index a7b1fff..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Dynamics/b2WorldCallbacks.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Rope/b2Rope.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Rope/b2Rope.cpp.o deleted file mode 100644 index b88f24c..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/Rope/b2Rope.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/build.make b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/build.make deleted file mode 100644 index e7e8e49..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/build.make +++ /dev/null @@ -1,1273 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 2.8 - -#============================================================================= -# Special targets provided by cmake. - -# Disable implicit rules so canonical targets will work. -.SUFFIXES: - -# Remove some rules from gmake that .SUFFIXES does not remove. -SUFFIXES = - -.SUFFIXES: .hpux_make_needs_suffix_list - -# Suppress display of executed commands. -$(VERBOSE).SILENT: - -# A target that is always out of date. -cmake_force: -.PHONY : cmake_force - -#============================================================================= -# Set environment variables for the build. - -# The shell in which to execute make rules. -SHELL = /bin/sh - -# The CMake executable. -CMAKE_COMMAND = /usr/bin/cmake - -# The command to remove a file. -RM = /usr/bin/cmake -E remove -f - -# Escaping for special characters. -EQUALS = = - -# The top-level source directory on which CMake was run. -CMAKE_SOURCE_DIR = /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D - -# The top-level build directory on which CMake was run. -CMAKE_BINARY_DIR = /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D - -# Include any dependencies generated for this target. -include Box2D/CMakeFiles/Box2D.dir/depend.make - -# Include the progress variables for this target. -include Box2D/CMakeFiles/Box2D.dir/progress.make - -# Include the compile flags for this target's objects. -include Box2D/CMakeFiles/Box2D.dir/flags.make - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2DistanceJoint.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2DistanceJoint.cpp.o: Box2D/Dynamics/Joints/b2DistanceJoint.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_1) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2DistanceJoint.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Dynamics/Joints/b2DistanceJoint.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2DistanceJoint.cpp - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2DistanceJoint.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Dynamics/Joints/b2DistanceJoint.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2DistanceJoint.cpp > CMakeFiles/Box2D.dir/Dynamics/Joints/b2DistanceJoint.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2DistanceJoint.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Dynamics/Joints/b2DistanceJoint.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2DistanceJoint.cpp -o CMakeFiles/Box2D.dir/Dynamics/Joints/b2DistanceJoint.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2DistanceJoint.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2DistanceJoint.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2DistanceJoint.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2DistanceJoint.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2DistanceJoint.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2DistanceJoint.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2DistanceJoint.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2DistanceJoint.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2FrictionJoint.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2FrictionJoint.cpp.o: Box2D/Dynamics/Joints/b2FrictionJoint.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_2) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2FrictionJoint.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Dynamics/Joints/b2FrictionJoint.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2FrictionJoint.cpp - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2FrictionJoint.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Dynamics/Joints/b2FrictionJoint.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2FrictionJoint.cpp > CMakeFiles/Box2D.dir/Dynamics/Joints/b2FrictionJoint.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2FrictionJoint.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Dynamics/Joints/b2FrictionJoint.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2FrictionJoint.cpp -o CMakeFiles/Box2D.dir/Dynamics/Joints/b2FrictionJoint.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2FrictionJoint.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2FrictionJoint.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2FrictionJoint.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2FrictionJoint.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2FrictionJoint.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2FrictionJoint.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2FrictionJoint.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2FrictionJoint.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2GearJoint.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2GearJoint.cpp.o: Box2D/Dynamics/Joints/b2GearJoint.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_3) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2GearJoint.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Dynamics/Joints/b2GearJoint.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2GearJoint.cpp - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2GearJoint.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Dynamics/Joints/b2GearJoint.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2GearJoint.cpp > CMakeFiles/Box2D.dir/Dynamics/Joints/b2GearJoint.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2GearJoint.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Dynamics/Joints/b2GearJoint.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2GearJoint.cpp -o CMakeFiles/Box2D.dir/Dynamics/Joints/b2GearJoint.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2GearJoint.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2GearJoint.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2GearJoint.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2GearJoint.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2GearJoint.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2GearJoint.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2GearJoint.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2GearJoint.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o: Box2D/Dynamics/Joints/b2Joint.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_4) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2Joint.cpp - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2Joint.cpp > CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2Joint.cpp -o CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MotorJoint.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MotorJoint.cpp.o: Box2D/Dynamics/Joints/b2MotorJoint.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_5) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MotorJoint.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Dynamics/Joints/b2MotorJoint.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2MotorJoint.cpp - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MotorJoint.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Dynamics/Joints/b2MotorJoint.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2MotorJoint.cpp > CMakeFiles/Box2D.dir/Dynamics/Joints/b2MotorJoint.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MotorJoint.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Dynamics/Joints/b2MotorJoint.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2MotorJoint.cpp -o CMakeFiles/Box2D.dir/Dynamics/Joints/b2MotorJoint.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MotorJoint.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MotorJoint.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MotorJoint.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MotorJoint.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MotorJoint.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MotorJoint.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MotorJoint.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MotorJoint.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MouseJoint.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MouseJoint.cpp.o: Box2D/Dynamics/Joints/b2MouseJoint.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_6) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MouseJoint.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Dynamics/Joints/b2MouseJoint.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2MouseJoint.cpp - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MouseJoint.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Dynamics/Joints/b2MouseJoint.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2MouseJoint.cpp > CMakeFiles/Box2D.dir/Dynamics/Joints/b2MouseJoint.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MouseJoint.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Dynamics/Joints/b2MouseJoint.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2MouseJoint.cpp -o CMakeFiles/Box2D.dir/Dynamics/Joints/b2MouseJoint.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MouseJoint.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MouseJoint.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MouseJoint.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MouseJoint.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MouseJoint.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MouseJoint.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MouseJoint.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MouseJoint.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PrismaticJoint.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PrismaticJoint.cpp.o: Box2D/Dynamics/Joints/b2PrismaticJoint.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_7) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PrismaticJoint.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Dynamics/Joints/b2PrismaticJoint.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2PrismaticJoint.cpp - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PrismaticJoint.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Dynamics/Joints/b2PrismaticJoint.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2PrismaticJoint.cpp > CMakeFiles/Box2D.dir/Dynamics/Joints/b2PrismaticJoint.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PrismaticJoint.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Dynamics/Joints/b2PrismaticJoint.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2PrismaticJoint.cpp -o CMakeFiles/Box2D.dir/Dynamics/Joints/b2PrismaticJoint.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PrismaticJoint.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PrismaticJoint.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PrismaticJoint.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PrismaticJoint.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PrismaticJoint.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PrismaticJoint.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PrismaticJoint.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PrismaticJoint.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PulleyJoint.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PulleyJoint.cpp.o: Box2D/Dynamics/Joints/b2PulleyJoint.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_8) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PulleyJoint.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Dynamics/Joints/b2PulleyJoint.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2PulleyJoint.cpp - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PulleyJoint.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Dynamics/Joints/b2PulleyJoint.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2PulleyJoint.cpp > CMakeFiles/Box2D.dir/Dynamics/Joints/b2PulleyJoint.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PulleyJoint.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Dynamics/Joints/b2PulleyJoint.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2PulleyJoint.cpp -o CMakeFiles/Box2D.dir/Dynamics/Joints/b2PulleyJoint.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PulleyJoint.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PulleyJoint.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PulleyJoint.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PulleyJoint.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PulleyJoint.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PulleyJoint.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PulleyJoint.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PulleyJoint.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RevoluteJoint.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RevoluteJoint.cpp.o: Box2D/Dynamics/Joints/b2RevoluteJoint.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_9) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RevoluteJoint.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Dynamics/Joints/b2RevoluteJoint.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2RevoluteJoint.cpp - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RevoluteJoint.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Dynamics/Joints/b2RevoluteJoint.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2RevoluteJoint.cpp > CMakeFiles/Box2D.dir/Dynamics/Joints/b2RevoluteJoint.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RevoluteJoint.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Dynamics/Joints/b2RevoluteJoint.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2RevoluteJoint.cpp -o CMakeFiles/Box2D.dir/Dynamics/Joints/b2RevoluteJoint.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RevoluteJoint.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RevoluteJoint.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RevoluteJoint.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RevoluteJoint.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RevoluteJoint.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RevoluteJoint.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RevoluteJoint.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RevoluteJoint.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RopeJoint.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RopeJoint.cpp.o: Box2D/Dynamics/Joints/b2RopeJoint.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_10) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RopeJoint.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Dynamics/Joints/b2RopeJoint.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2RopeJoint.cpp - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RopeJoint.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Dynamics/Joints/b2RopeJoint.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2RopeJoint.cpp > CMakeFiles/Box2D.dir/Dynamics/Joints/b2RopeJoint.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RopeJoint.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Dynamics/Joints/b2RopeJoint.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2RopeJoint.cpp -o CMakeFiles/Box2D.dir/Dynamics/Joints/b2RopeJoint.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RopeJoint.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RopeJoint.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RopeJoint.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RopeJoint.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RopeJoint.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RopeJoint.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RopeJoint.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RopeJoint.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WeldJoint.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WeldJoint.cpp.o: Box2D/Dynamics/Joints/b2WeldJoint.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_11) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WeldJoint.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Dynamics/Joints/b2WeldJoint.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2WeldJoint.cpp - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WeldJoint.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Dynamics/Joints/b2WeldJoint.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2WeldJoint.cpp > CMakeFiles/Box2D.dir/Dynamics/Joints/b2WeldJoint.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WeldJoint.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Dynamics/Joints/b2WeldJoint.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2WeldJoint.cpp -o CMakeFiles/Box2D.dir/Dynamics/Joints/b2WeldJoint.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WeldJoint.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WeldJoint.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WeldJoint.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WeldJoint.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WeldJoint.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WeldJoint.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WeldJoint.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WeldJoint.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WheelJoint.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WheelJoint.cpp.o: Box2D/Dynamics/Joints/b2WheelJoint.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_12) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WheelJoint.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Dynamics/Joints/b2WheelJoint.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2WheelJoint.cpp - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WheelJoint.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Dynamics/Joints/b2WheelJoint.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2WheelJoint.cpp > CMakeFiles/Box2D.dir/Dynamics/Joints/b2WheelJoint.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WheelJoint.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Dynamics/Joints/b2WheelJoint.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2WheelJoint.cpp -o CMakeFiles/Box2D.dir/Dynamics/Joints/b2WheelJoint.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WheelJoint.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WheelJoint.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WheelJoint.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WheelJoint.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WheelJoint.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WheelJoint.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WheelJoint.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WheelJoint.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.o: Box2D/Dynamics/Contacts/b2CircleContact.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_13) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2CircleContact.cpp - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2CircleContact.cpp > CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2CircleContact.cpp -o CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o: Box2D/Dynamics/Contacts/b2Contact.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_14) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2Contact.cpp - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2Contact.cpp > CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2Contact.cpp -o CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.o: Box2D/Dynamics/Contacts/b2ContactSolver.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_15) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2ContactSolver.cpp - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2ContactSolver.cpp > CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2ContactSolver.cpp -o CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonAndCircleContact.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonAndCircleContact.cpp.o: Box2D/Dynamics/Contacts/b2PolygonAndCircleContact.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_16) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonAndCircleContact.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonAndCircleContact.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2PolygonAndCircleContact.cpp - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonAndCircleContact.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonAndCircleContact.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2PolygonAndCircleContact.cpp > CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonAndCircleContact.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonAndCircleContact.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonAndCircleContact.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2PolygonAndCircleContact.cpp -o CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonAndCircleContact.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonAndCircleContact.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonAndCircleContact.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonAndCircleContact.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonAndCircleContact.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonAndCircleContact.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonAndCircleContact.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonAndCircleContact.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonAndCircleContact.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndCircleContact.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndCircleContact.cpp.o: Box2D/Dynamics/Contacts/b2EdgeAndCircleContact.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_17) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndCircleContact.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndCircleContact.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2EdgeAndCircleContact.cpp - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndCircleContact.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndCircleContact.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2EdgeAndCircleContact.cpp > CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndCircleContact.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndCircleContact.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndCircleContact.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2EdgeAndCircleContact.cpp -o CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndCircleContact.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndCircleContact.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndCircleContact.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndCircleContact.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndCircleContact.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndCircleContact.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndCircleContact.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndCircleContact.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndCircleContact.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.o: Box2D/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_18) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp > CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp -o CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndCircleContact.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndCircleContact.cpp.o: Box2D/Dynamics/Contacts/b2ChainAndCircleContact.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_19) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndCircleContact.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndCircleContact.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2ChainAndCircleContact.cpp - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndCircleContact.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndCircleContact.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2ChainAndCircleContact.cpp > CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndCircleContact.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndCircleContact.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndCircleContact.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2ChainAndCircleContact.cpp -o CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndCircleContact.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndCircleContact.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndCircleContact.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndCircleContact.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndCircleContact.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndCircleContact.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndCircleContact.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndCircleContact.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndCircleContact.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndPolygonContact.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndPolygonContact.cpp.o: Box2D/Dynamics/Contacts/b2ChainAndPolygonContact.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_20) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndPolygonContact.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndPolygonContact.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2ChainAndPolygonContact.cpp - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndPolygonContact.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndPolygonContact.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2ChainAndPolygonContact.cpp > CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndPolygonContact.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndPolygonContact.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndPolygonContact.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2ChainAndPolygonContact.cpp -o CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndPolygonContact.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndPolygonContact.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndPolygonContact.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndPolygonContact.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndPolygonContact.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndPolygonContact.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndPolygonContact.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndPolygonContact.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndPolygonContact.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.o: Box2D/Dynamics/Contacts/b2PolygonContact.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_21) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2PolygonContact.cpp - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2PolygonContact.cpp > CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2PolygonContact.cpp -o CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.o: Box2D/Dynamics/b2Body.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_22) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2Body.cpp - -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2Body.cpp > CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2Body.cpp -o CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.o: Box2D/Dynamics/b2ContactManager.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_23) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2ContactManager.cpp - -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2ContactManager.cpp > CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2ContactManager.cpp -o CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o: Box2D/Dynamics/b2Fixture.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_24) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2Fixture.cpp - -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2Fixture.cpp > CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2Fixture.cpp -o CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o: Box2D/Dynamics/b2Island.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_25) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2Island.cpp - -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2Island.cpp > CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2Island.cpp -o CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o: Box2D/Dynamics/b2World.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_26) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2World.cpp - -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2World.cpp > CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2World.cpp -o CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2WorldCallbacks.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2WorldCallbacks.cpp.o: Box2D/Dynamics/b2WorldCallbacks.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_27) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Dynamics/b2WorldCallbacks.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Dynamics/b2WorldCallbacks.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2WorldCallbacks.cpp - -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2WorldCallbacks.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Dynamics/b2WorldCallbacks.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2WorldCallbacks.cpp > CMakeFiles/Box2D.dir/Dynamics/b2WorldCallbacks.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2WorldCallbacks.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Dynamics/b2WorldCallbacks.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2WorldCallbacks.cpp -o CMakeFiles/Box2D.dir/Dynamics/b2WorldCallbacks.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2WorldCallbacks.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/b2WorldCallbacks.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2WorldCallbacks.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Dynamics/b2WorldCallbacks.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/b2WorldCallbacks.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Dynamics/b2WorldCallbacks.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2WorldCallbacks.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Dynamics/b2WorldCallbacks.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Common/b2BlockAllocator.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Common/b2BlockAllocator.cpp.o: Box2D/Common/b2BlockAllocator.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_28) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Common/b2BlockAllocator.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Common/b2BlockAllocator.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2BlockAllocator.cpp - -Box2D/CMakeFiles/Box2D.dir/Common/b2BlockAllocator.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Common/b2BlockAllocator.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2BlockAllocator.cpp > CMakeFiles/Box2D.dir/Common/b2BlockAllocator.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Common/b2BlockAllocator.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Common/b2BlockAllocator.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2BlockAllocator.cpp -o CMakeFiles/Box2D.dir/Common/b2BlockAllocator.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Common/b2BlockAllocator.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Common/b2BlockAllocator.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Common/b2BlockAllocator.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Common/b2BlockAllocator.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Common/b2BlockAllocator.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Common/b2BlockAllocator.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Common/b2BlockAllocator.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Common/b2BlockAllocator.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Common/b2Draw.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Common/b2Draw.cpp.o: Box2D/Common/b2Draw.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_29) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Common/b2Draw.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Common/b2Draw.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Draw.cpp - -Box2D/CMakeFiles/Box2D.dir/Common/b2Draw.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Common/b2Draw.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Draw.cpp > CMakeFiles/Box2D.dir/Common/b2Draw.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Common/b2Draw.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Common/b2Draw.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Draw.cpp -o CMakeFiles/Box2D.dir/Common/b2Draw.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Common/b2Draw.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Common/b2Draw.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Common/b2Draw.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Common/b2Draw.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Common/b2Draw.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Common/b2Draw.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Common/b2Draw.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Common/b2Draw.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Common/b2Math.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Common/b2Math.cpp.o: Box2D/Common/b2Math.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_30) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Common/b2Math.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Common/b2Math.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Math.cpp - -Box2D/CMakeFiles/Box2D.dir/Common/b2Math.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Common/b2Math.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Math.cpp > CMakeFiles/Box2D.dir/Common/b2Math.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Common/b2Math.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Common/b2Math.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Math.cpp -o CMakeFiles/Box2D.dir/Common/b2Math.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Common/b2Math.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Common/b2Math.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Common/b2Math.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Common/b2Math.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Common/b2Math.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Common/b2Math.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Common/b2Math.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Common/b2Math.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Common/b2Settings.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Common/b2Settings.cpp.o: Box2D/Common/b2Settings.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_31) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Common/b2Settings.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Common/b2Settings.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Settings.cpp - -Box2D/CMakeFiles/Box2D.dir/Common/b2Settings.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Common/b2Settings.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Settings.cpp > CMakeFiles/Box2D.dir/Common/b2Settings.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Common/b2Settings.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Common/b2Settings.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Settings.cpp -o CMakeFiles/Box2D.dir/Common/b2Settings.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Common/b2Settings.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Common/b2Settings.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Common/b2Settings.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Common/b2Settings.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Common/b2Settings.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Common/b2Settings.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Common/b2Settings.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Common/b2Settings.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Common/b2StackAllocator.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Common/b2StackAllocator.cpp.o: Box2D/Common/b2StackAllocator.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_32) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Common/b2StackAllocator.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Common/b2StackAllocator.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2StackAllocator.cpp - -Box2D/CMakeFiles/Box2D.dir/Common/b2StackAllocator.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Common/b2StackAllocator.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2StackAllocator.cpp > CMakeFiles/Box2D.dir/Common/b2StackAllocator.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Common/b2StackAllocator.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Common/b2StackAllocator.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2StackAllocator.cpp -o CMakeFiles/Box2D.dir/Common/b2StackAllocator.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Common/b2StackAllocator.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Common/b2StackAllocator.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Common/b2StackAllocator.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Common/b2StackAllocator.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Common/b2StackAllocator.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Common/b2StackAllocator.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Common/b2StackAllocator.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Common/b2StackAllocator.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Common/b2Timer.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Common/b2Timer.cpp.o: Box2D/Common/b2Timer.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_33) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Common/b2Timer.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Common/b2Timer.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Timer.cpp - -Box2D/CMakeFiles/Box2D.dir/Common/b2Timer.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Common/b2Timer.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Timer.cpp > CMakeFiles/Box2D.dir/Common/b2Timer.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Common/b2Timer.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Common/b2Timer.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Timer.cpp -o CMakeFiles/Box2D.dir/Common/b2Timer.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Common/b2Timer.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Common/b2Timer.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Common/b2Timer.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Common/b2Timer.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Common/b2Timer.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Common/b2Timer.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Common/b2Timer.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Common/b2Timer.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2CircleShape.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2CircleShape.cpp.o: Box2D/Collision/Shapes/b2CircleShape.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_34) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2CircleShape.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Collision/Shapes/b2CircleShape.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2CircleShape.cpp - -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2CircleShape.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Collision/Shapes/b2CircleShape.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2CircleShape.cpp > CMakeFiles/Box2D.dir/Collision/Shapes/b2CircleShape.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2CircleShape.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Collision/Shapes/b2CircleShape.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2CircleShape.cpp -o CMakeFiles/Box2D.dir/Collision/Shapes/b2CircleShape.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2CircleShape.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2CircleShape.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2CircleShape.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2CircleShape.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2CircleShape.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2CircleShape.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2CircleShape.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2CircleShape.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2EdgeShape.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2EdgeShape.cpp.o: Box2D/Collision/Shapes/b2EdgeShape.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_35) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2EdgeShape.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Collision/Shapes/b2EdgeShape.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2EdgeShape.cpp - -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2EdgeShape.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Collision/Shapes/b2EdgeShape.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2EdgeShape.cpp > CMakeFiles/Box2D.dir/Collision/Shapes/b2EdgeShape.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2EdgeShape.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Collision/Shapes/b2EdgeShape.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2EdgeShape.cpp -o CMakeFiles/Box2D.dir/Collision/Shapes/b2EdgeShape.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2EdgeShape.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2EdgeShape.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2EdgeShape.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2EdgeShape.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2EdgeShape.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2EdgeShape.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2EdgeShape.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2EdgeShape.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2ChainShape.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2ChainShape.cpp.o: Box2D/Collision/Shapes/b2ChainShape.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_36) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2ChainShape.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Collision/Shapes/b2ChainShape.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2ChainShape.cpp - -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2ChainShape.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Collision/Shapes/b2ChainShape.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2ChainShape.cpp > CMakeFiles/Box2D.dir/Collision/Shapes/b2ChainShape.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2ChainShape.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Collision/Shapes/b2ChainShape.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2ChainShape.cpp -o CMakeFiles/Box2D.dir/Collision/Shapes/b2ChainShape.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2ChainShape.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2ChainShape.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2ChainShape.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2ChainShape.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2ChainShape.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2ChainShape.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2ChainShape.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2ChainShape.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2PolygonShape.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2PolygonShape.cpp.o: Box2D/Collision/Shapes/b2PolygonShape.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_37) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2PolygonShape.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Collision/Shapes/b2PolygonShape.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2PolygonShape.cpp - -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2PolygonShape.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Collision/Shapes/b2PolygonShape.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2PolygonShape.cpp > CMakeFiles/Box2D.dir/Collision/Shapes/b2PolygonShape.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2PolygonShape.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Collision/Shapes/b2PolygonShape.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2PolygonShape.cpp -o CMakeFiles/Box2D.dir/Collision/Shapes/b2PolygonShape.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2PolygonShape.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2PolygonShape.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2PolygonShape.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2PolygonShape.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2PolygonShape.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2PolygonShape.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2PolygonShape.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2PolygonShape.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Collision/b2BroadPhase.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Collision/b2BroadPhase.cpp.o: Box2D/Collision/b2BroadPhase.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_38) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Collision/b2BroadPhase.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Collision/b2BroadPhase.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2BroadPhase.cpp - -Box2D/CMakeFiles/Box2D.dir/Collision/b2BroadPhase.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Collision/b2BroadPhase.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2BroadPhase.cpp > CMakeFiles/Box2D.dir/Collision/b2BroadPhase.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Collision/b2BroadPhase.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Collision/b2BroadPhase.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2BroadPhase.cpp -o CMakeFiles/Box2D.dir/Collision/b2BroadPhase.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Collision/b2BroadPhase.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Collision/b2BroadPhase.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Collision/b2BroadPhase.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Collision/b2BroadPhase.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/b2BroadPhase.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Collision/b2BroadPhase.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Collision/b2BroadPhase.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Collision/b2BroadPhase.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideCircle.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideCircle.cpp.o: Box2D/Collision/b2CollideCircle.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_39) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideCircle.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Collision/b2CollideCircle.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2CollideCircle.cpp - -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideCircle.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Collision/b2CollideCircle.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2CollideCircle.cpp > CMakeFiles/Box2D.dir/Collision/b2CollideCircle.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideCircle.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Collision/b2CollideCircle.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2CollideCircle.cpp -o CMakeFiles/Box2D.dir/Collision/b2CollideCircle.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideCircle.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideCircle.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideCircle.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideCircle.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideCircle.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideCircle.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideCircle.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideCircle.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideEdge.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideEdge.cpp.o: Box2D/Collision/b2CollideEdge.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_40) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideEdge.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Collision/b2CollideEdge.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2CollideEdge.cpp - -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideEdge.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Collision/b2CollideEdge.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2CollideEdge.cpp > CMakeFiles/Box2D.dir/Collision/b2CollideEdge.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideEdge.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Collision/b2CollideEdge.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2CollideEdge.cpp -o CMakeFiles/Box2D.dir/Collision/b2CollideEdge.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideEdge.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideEdge.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideEdge.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideEdge.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideEdge.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideEdge.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideEdge.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideEdge.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollidePolygon.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollidePolygon.cpp.o: Box2D/Collision/b2CollidePolygon.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_41) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Collision/b2CollidePolygon.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Collision/b2CollidePolygon.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2CollidePolygon.cpp - -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollidePolygon.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Collision/b2CollidePolygon.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2CollidePolygon.cpp > CMakeFiles/Box2D.dir/Collision/b2CollidePolygon.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollidePolygon.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Collision/b2CollidePolygon.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2CollidePolygon.cpp -o CMakeFiles/Box2D.dir/Collision/b2CollidePolygon.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollidePolygon.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Collision/b2CollidePolygon.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollidePolygon.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Collision/b2CollidePolygon.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/b2CollidePolygon.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Collision/b2CollidePolygon.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollidePolygon.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Collision/b2CollidePolygon.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Collision/b2Collision.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Collision/b2Collision.cpp.o: Box2D/Collision/b2Collision.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_42) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Collision/b2Collision.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Collision/b2Collision.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2Collision.cpp - -Box2D/CMakeFiles/Box2D.dir/Collision/b2Collision.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Collision/b2Collision.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2Collision.cpp > CMakeFiles/Box2D.dir/Collision/b2Collision.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Collision/b2Collision.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Collision/b2Collision.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2Collision.cpp -o CMakeFiles/Box2D.dir/Collision/b2Collision.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Collision/b2Collision.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Collision/b2Collision.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Collision/b2Collision.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Collision/b2Collision.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/b2Collision.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Collision/b2Collision.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Collision/b2Collision.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Collision/b2Collision.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Collision/b2Distance.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Collision/b2Distance.cpp.o: Box2D/Collision/b2Distance.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_43) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Collision/b2Distance.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Collision/b2Distance.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2Distance.cpp - -Box2D/CMakeFiles/Box2D.dir/Collision/b2Distance.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Collision/b2Distance.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2Distance.cpp > CMakeFiles/Box2D.dir/Collision/b2Distance.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Collision/b2Distance.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Collision/b2Distance.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2Distance.cpp -o CMakeFiles/Box2D.dir/Collision/b2Distance.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Collision/b2Distance.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Collision/b2Distance.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Collision/b2Distance.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Collision/b2Distance.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/b2Distance.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Collision/b2Distance.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Collision/b2Distance.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Collision/b2Distance.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Collision/b2DynamicTree.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Collision/b2DynamicTree.cpp.o: Box2D/Collision/b2DynamicTree.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_44) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Collision/b2DynamicTree.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Collision/b2DynamicTree.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2DynamicTree.cpp - -Box2D/CMakeFiles/Box2D.dir/Collision/b2DynamicTree.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Collision/b2DynamicTree.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2DynamicTree.cpp > CMakeFiles/Box2D.dir/Collision/b2DynamicTree.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Collision/b2DynamicTree.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Collision/b2DynamicTree.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2DynamicTree.cpp -o CMakeFiles/Box2D.dir/Collision/b2DynamicTree.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Collision/b2DynamicTree.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Collision/b2DynamicTree.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Collision/b2DynamicTree.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Collision/b2DynamicTree.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/b2DynamicTree.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Collision/b2DynamicTree.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Collision/b2DynamicTree.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Collision/b2DynamicTree.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Collision/b2TimeOfImpact.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Collision/b2TimeOfImpact.cpp.o: Box2D/Collision/b2TimeOfImpact.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_45) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Collision/b2TimeOfImpact.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Collision/b2TimeOfImpact.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2TimeOfImpact.cpp - -Box2D/CMakeFiles/Box2D.dir/Collision/b2TimeOfImpact.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Collision/b2TimeOfImpact.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2TimeOfImpact.cpp > CMakeFiles/Box2D.dir/Collision/b2TimeOfImpact.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Collision/b2TimeOfImpact.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Collision/b2TimeOfImpact.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2TimeOfImpact.cpp -o CMakeFiles/Box2D.dir/Collision/b2TimeOfImpact.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Collision/b2TimeOfImpact.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Collision/b2TimeOfImpact.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Collision/b2TimeOfImpact.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Collision/b2TimeOfImpact.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/b2TimeOfImpact.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Collision/b2TimeOfImpact.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Collision/b2TimeOfImpact.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Collision/b2TimeOfImpact.cpp.o - -Box2D/CMakeFiles/Box2D.dir/Rope/b2Rope.cpp.o: Box2D/CMakeFiles/Box2D.dir/flags.make -Box2D/CMakeFiles/Box2D.dir/Rope/b2Rope.cpp.o: Box2D/Rope/b2Rope.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_46) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Box2D/CMakeFiles/Box2D.dir/Rope/b2Rope.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Box2D.dir/Rope/b2Rope.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Rope/b2Rope.cpp - -Box2D/CMakeFiles/Box2D.dir/Rope/b2Rope.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Box2D.dir/Rope/b2Rope.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Rope/b2Rope.cpp > CMakeFiles/Box2D.dir/Rope/b2Rope.cpp.i - -Box2D/CMakeFiles/Box2D.dir/Rope/b2Rope.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Box2D.dir/Rope/b2Rope.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Rope/b2Rope.cpp -o CMakeFiles/Box2D.dir/Rope/b2Rope.cpp.s - -Box2D/CMakeFiles/Box2D.dir/Rope/b2Rope.cpp.o.requires: -.PHONY : Box2D/CMakeFiles/Box2D.dir/Rope/b2Rope.cpp.o.requires - -Box2D/CMakeFiles/Box2D.dir/Rope/b2Rope.cpp.o.provides: Box2D/CMakeFiles/Box2D.dir/Rope/b2Rope.cpp.o.requires - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Rope/b2Rope.cpp.o.provides.build -.PHONY : Box2D/CMakeFiles/Box2D.dir/Rope/b2Rope.cpp.o.provides - -Box2D/CMakeFiles/Box2D.dir/Rope/b2Rope.cpp.o.provides.build: Box2D/CMakeFiles/Box2D.dir/Rope/b2Rope.cpp.o - -# Object files for target Box2D -Box2D_OBJECTS = \ -"CMakeFiles/Box2D.dir/Dynamics/Joints/b2DistanceJoint.cpp.o" \ -"CMakeFiles/Box2D.dir/Dynamics/Joints/b2FrictionJoint.cpp.o" \ -"CMakeFiles/Box2D.dir/Dynamics/Joints/b2GearJoint.cpp.o" \ -"CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o" \ -"CMakeFiles/Box2D.dir/Dynamics/Joints/b2MotorJoint.cpp.o" \ -"CMakeFiles/Box2D.dir/Dynamics/Joints/b2MouseJoint.cpp.o" \ -"CMakeFiles/Box2D.dir/Dynamics/Joints/b2PrismaticJoint.cpp.o" \ -"CMakeFiles/Box2D.dir/Dynamics/Joints/b2PulleyJoint.cpp.o" \ -"CMakeFiles/Box2D.dir/Dynamics/Joints/b2RevoluteJoint.cpp.o" \ -"CMakeFiles/Box2D.dir/Dynamics/Joints/b2RopeJoint.cpp.o" \ -"CMakeFiles/Box2D.dir/Dynamics/Joints/b2WeldJoint.cpp.o" \ -"CMakeFiles/Box2D.dir/Dynamics/Joints/b2WheelJoint.cpp.o" \ -"CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.o" \ -"CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o" \ -"CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.o" \ -"CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonAndCircleContact.cpp.o" \ -"CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndCircleContact.cpp.o" \ -"CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.o" \ -"CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndCircleContact.cpp.o" \ -"CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndPolygonContact.cpp.o" \ -"CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.o" \ -"CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.o" \ -"CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.o" \ -"CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o" \ -"CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o" \ -"CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o" \ -"CMakeFiles/Box2D.dir/Dynamics/b2WorldCallbacks.cpp.o" \ -"CMakeFiles/Box2D.dir/Common/b2BlockAllocator.cpp.o" \ -"CMakeFiles/Box2D.dir/Common/b2Draw.cpp.o" \ -"CMakeFiles/Box2D.dir/Common/b2Math.cpp.o" \ -"CMakeFiles/Box2D.dir/Common/b2Settings.cpp.o" \ -"CMakeFiles/Box2D.dir/Common/b2StackAllocator.cpp.o" \ -"CMakeFiles/Box2D.dir/Common/b2Timer.cpp.o" \ -"CMakeFiles/Box2D.dir/Collision/Shapes/b2CircleShape.cpp.o" \ -"CMakeFiles/Box2D.dir/Collision/Shapes/b2EdgeShape.cpp.o" \ -"CMakeFiles/Box2D.dir/Collision/Shapes/b2ChainShape.cpp.o" \ -"CMakeFiles/Box2D.dir/Collision/Shapes/b2PolygonShape.cpp.o" \ -"CMakeFiles/Box2D.dir/Collision/b2BroadPhase.cpp.o" \ -"CMakeFiles/Box2D.dir/Collision/b2CollideCircle.cpp.o" \ -"CMakeFiles/Box2D.dir/Collision/b2CollideEdge.cpp.o" \ -"CMakeFiles/Box2D.dir/Collision/b2CollidePolygon.cpp.o" \ -"CMakeFiles/Box2D.dir/Collision/b2Collision.cpp.o" \ -"CMakeFiles/Box2D.dir/Collision/b2Distance.cpp.o" \ -"CMakeFiles/Box2D.dir/Collision/b2DynamicTree.cpp.o" \ -"CMakeFiles/Box2D.dir/Collision/b2TimeOfImpact.cpp.o" \ -"CMakeFiles/Box2D.dir/Rope/b2Rope.cpp.o" - -# External object files for target Box2D -Box2D_EXTERNAL_OBJECTS = - -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2DistanceJoint.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2FrictionJoint.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2GearJoint.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MotorJoint.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MouseJoint.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PrismaticJoint.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PulleyJoint.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RevoluteJoint.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RopeJoint.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WeldJoint.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WheelJoint.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonAndCircleContact.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndCircleContact.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndCircleContact.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndPolygonContact.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Dynamics/b2WorldCallbacks.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Common/b2BlockAllocator.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Common/b2Draw.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Common/b2Math.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Common/b2Settings.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Common/b2StackAllocator.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Common/b2Timer.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2CircleShape.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2EdgeShape.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2ChainShape.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2PolygonShape.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Collision/b2BroadPhase.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideCircle.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideEdge.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Collision/b2CollidePolygon.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Collision/b2Collision.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Collision/b2Distance.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Collision/b2DynamicTree.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Collision/b2TimeOfImpact.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/Rope/b2Rope.cpp.o -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/build.make -Box2D/libBox2D.a: Box2D/CMakeFiles/Box2D.dir/link.txt - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --red --bold "Linking CXX static library libBox2D.a" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && $(CMAKE_COMMAND) -P CMakeFiles/Box2D.dir/cmake_clean_target.cmake - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/Box2D.dir/link.txt --verbose=$(VERBOSE) - -# Rule to build all files generated by this target. -Box2D/CMakeFiles/Box2D.dir/build: Box2D/libBox2D.a -.PHONY : Box2D/CMakeFiles/Box2D.dir/build - -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2DistanceJoint.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2FrictionJoint.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2GearJoint.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MotorJoint.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MouseJoint.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PrismaticJoint.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PulleyJoint.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RevoluteJoint.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RopeJoint.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WeldJoint.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WheelJoint.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonAndCircleContact.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndCircleContact.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndCircleContact.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndPolygonContact.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Dynamics/b2WorldCallbacks.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Common/b2BlockAllocator.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Common/b2Draw.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Common/b2Math.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Common/b2Settings.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Common/b2StackAllocator.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Common/b2Timer.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2CircleShape.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2EdgeShape.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2ChainShape.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2PolygonShape.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Collision/b2BroadPhase.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideCircle.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideEdge.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Collision/b2CollidePolygon.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Collision/b2Collision.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Collision/b2Distance.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Collision/b2DynamicTree.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Collision/b2TimeOfImpact.cpp.o.requires -Box2D/CMakeFiles/Box2D.dir/requires: Box2D/CMakeFiles/Box2D.dir/Rope/b2Rope.cpp.o.requires -.PHONY : Box2D/CMakeFiles/Box2D.dir/requires - -Box2D/CMakeFiles/Box2D.dir/clean: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D && $(CMAKE_COMMAND) -P CMakeFiles/Box2D.dir/cmake_clean.cmake -.PHONY : Box2D/CMakeFiles/Box2D.dir/clean - -Box2D/CMakeFiles/Box2D.dir/depend: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/DependInfo.cmake --color=$(COLOR) -.PHONY : Box2D/CMakeFiles/Box2D.dir/depend - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/cmake_clean.cmake b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/cmake_clean.cmake deleted file mode 100644 index bf5bebd..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/cmake_clean.cmake +++ /dev/null @@ -1,55 +0,0 @@ -FILE(REMOVE_RECURSE - "CMakeFiles/Box2D.dir/Dynamics/Joints/b2DistanceJoint.cpp.o" - "CMakeFiles/Box2D.dir/Dynamics/Joints/b2FrictionJoint.cpp.o" - "CMakeFiles/Box2D.dir/Dynamics/Joints/b2GearJoint.cpp.o" - "CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o" - "CMakeFiles/Box2D.dir/Dynamics/Joints/b2MotorJoint.cpp.o" - "CMakeFiles/Box2D.dir/Dynamics/Joints/b2MouseJoint.cpp.o" - "CMakeFiles/Box2D.dir/Dynamics/Joints/b2PrismaticJoint.cpp.o" - "CMakeFiles/Box2D.dir/Dynamics/Joints/b2PulleyJoint.cpp.o" - "CMakeFiles/Box2D.dir/Dynamics/Joints/b2RevoluteJoint.cpp.o" - "CMakeFiles/Box2D.dir/Dynamics/Joints/b2RopeJoint.cpp.o" - "CMakeFiles/Box2D.dir/Dynamics/Joints/b2WeldJoint.cpp.o" - "CMakeFiles/Box2D.dir/Dynamics/Joints/b2WheelJoint.cpp.o" - "CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.o" - "CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o" - "CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.o" - "CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonAndCircleContact.cpp.o" - "CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndCircleContact.cpp.o" - "CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.o" - "CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndCircleContact.cpp.o" - "CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndPolygonContact.cpp.o" - "CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.o" - "CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.o" - "CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.o" - "CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o" - "CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o" - "CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o" - "CMakeFiles/Box2D.dir/Dynamics/b2WorldCallbacks.cpp.o" - "CMakeFiles/Box2D.dir/Common/b2BlockAllocator.cpp.o" - "CMakeFiles/Box2D.dir/Common/b2Draw.cpp.o" - "CMakeFiles/Box2D.dir/Common/b2Math.cpp.o" - "CMakeFiles/Box2D.dir/Common/b2Settings.cpp.o" - "CMakeFiles/Box2D.dir/Common/b2StackAllocator.cpp.o" - "CMakeFiles/Box2D.dir/Common/b2Timer.cpp.o" - "CMakeFiles/Box2D.dir/Collision/Shapes/b2CircleShape.cpp.o" - "CMakeFiles/Box2D.dir/Collision/Shapes/b2EdgeShape.cpp.o" - "CMakeFiles/Box2D.dir/Collision/Shapes/b2ChainShape.cpp.o" - "CMakeFiles/Box2D.dir/Collision/Shapes/b2PolygonShape.cpp.o" - "CMakeFiles/Box2D.dir/Collision/b2BroadPhase.cpp.o" - "CMakeFiles/Box2D.dir/Collision/b2CollideCircle.cpp.o" - "CMakeFiles/Box2D.dir/Collision/b2CollideEdge.cpp.o" - "CMakeFiles/Box2D.dir/Collision/b2CollidePolygon.cpp.o" - "CMakeFiles/Box2D.dir/Collision/b2Collision.cpp.o" - "CMakeFiles/Box2D.dir/Collision/b2Distance.cpp.o" - "CMakeFiles/Box2D.dir/Collision/b2DynamicTree.cpp.o" - "CMakeFiles/Box2D.dir/Collision/b2TimeOfImpact.cpp.o" - "CMakeFiles/Box2D.dir/Rope/b2Rope.cpp.o" - "libBox2D.pdb" - "libBox2D.a" -) - -# Per-language clean rules from dependency scanning. -FOREACH(lang CXX) - INCLUDE(CMakeFiles/Box2D.dir/cmake_clean_${lang}.cmake OPTIONAL) -ENDFOREACH(lang) diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/cmake_clean_target.cmake b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/cmake_clean_target.cmake deleted file mode 100644 index 165ad94..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/cmake_clean_target.cmake +++ /dev/null @@ -1,3 +0,0 @@ -FILE(REMOVE_RECURSE - "libBox2D.a" -) diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/depend.internal b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/depend.internal deleted file mode 100644 index 072b497..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/depend.internal +++ /dev/null @@ -1,543 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 2.8 - -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2ChainShape.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2ChainShape.cpp - Box2D/../Box2D/Collision/Shapes/b2ChainShape.h - Box2D/../Box2D/Collision/Shapes/b2EdgeShape.h - Box2D/../Box2D/Collision/Shapes/b2Shape.h - Box2D/../Box2D/Collision/b2Collision.h - Box2D/../Box2D/Common/b2BlockAllocator.h - Box2D/../Box2D/Common/b2Math.h - Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2CircleShape.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2CircleShape.cpp - Box2D/../Box2D/Collision/Shapes/b2CircleShape.h - Box2D/../Box2D/Collision/Shapes/b2Shape.h - Box2D/../Box2D/Collision/b2Collision.h - Box2D/../Box2D/Common/b2BlockAllocator.h - Box2D/../Box2D/Common/b2Math.h - Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2EdgeShape.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2EdgeShape.cpp - Box2D/../Box2D/Collision/Shapes/b2EdgeShape.h - Box2D/../Box2D/Collision/Shapes/b2Shape.h - Box2D/../Box2D/Collision/b2Collision.h - Box2D/../Box2D/Common/b2BlockAllocator.h - Box2D/../Box2D/Common/b2Math.h - Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2PolygonShape.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2PolygonShape.cpp - Box2D/../Box2D/Collision/Shapes/b2PolygonShape.h - Box2D/../Box2D/Collision/Shapes/b2Shape.h - Box2D/../Box2D/Collision/b2Collision.h - Box2D/../Box2D/Common/b2BlockAllocator.h - Box2D/../Box2D/Common/b2Math.h - Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2BroadPhase.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2BroadPhase.cpp - Box2D/../Box2D/Collision/b2BroadPhase.h - Box2D/../Box2D/Collision/b2Collision.h - Box2D/../Box2D/Collision/b2DynamicTree.h - Box2D/../Box2D/Common/b2GrowableStack.h - Box2D/../Box2D/Common/b2Math.h - Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideCircle.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2CollideCircle.cpp - Box2D/../Box2D/Collision/Shapes/b2CircleShape.h - Box2D/../Box2D/Collision/Shapes/b2PolygonShape.h - Box2D/../Box2D/Collision/Shapes/b2Shape.h - Box2D/../Box2D/Collision/b2Collision.h - Box2D/../Box2D/Common/b2BlockAllocator.h - Box2D/../Box2D/Common/b2Math.h - Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideEdge.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2CollideEdge.cpp - Box2D/../Box2D/Collision/Shapes/b2CircleShape.h - Box2D/../Box2D/Collision/Shapes/b2EdgeShape.h - Box2D/../Box2D/Collision/Shapes/b2PolygonShape.h - Box2D/../Box2D/Collision/Shapes/b2Shape.h - Box2D/../Box2D/Collision/b2Collision.h - Box2D/../Box2D/Common/b2BlockAllocator.h - Box2D/../Box2D/Common/b2Math.h - Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollidePolygon.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2CollidePolygon.cpp - Box2D/../Box2D/Collision/Shapes/b2PolygonShape.h - Box2D/../Box2D/Collision/Shapes/b2Shape.h - Box2D/../Box2D/Collision/b2Collision.h - Box2D/../Box2D/Common/b2BlockAllocator.h - Box2D/../Box2D/Common/b2Math.h - Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2Collision.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2Collision.cpp - Box2D/../Box2D/Collision/b2Collision.h - Box2D/../Box2D/Collision/b2Distance.h - Box2D/../Box2D/Common/b2Math.h - Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2Distance.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2Distance.cpp - Box2D/../Box2D/Collision/Shapes/b2ChainShape.h - Box2D/../Box2D/Collision/Shapes/b2CircleShape.h - Box2D/../Box2D/Collision/Shapes/b2EdgeShape.h - Box2D/../Box2D/Collision/Shapes/b2PolygonShape.h - Box2D/../Box2D/Collision/Shapes/b2Shape.h - Box2D/../Box2D/Collision/b2Collision.h - Box2D/../Box2D/Collision/b2Distance.h - Box2D/../Box2D/Common/b2BlockAllocator.h - Box2D/../Box2D/Common/b2Math.h - Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2DynamicTree.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2DynamicTree.cpp - Box2D/../Box2D/Collision/b2Collision.h - Box2D/../Box2D/Collision/b2DynamicTree.h - Box2D/../Box2D/Common/b2GrowableStack.h - Box2D/../Box2D/Common/b2Math.h - Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2TimeOfImpact.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2TimeOfImpact.cpp - Box2D/../Box2D/Collision/Shapes/b2CircleShape.h - Box2D/../Box2D/Collision/Shapes/b2PolygonShape.h - Box2D/../Box2D/Collision/Shapes/b2Shape.h - Box2D/../Box2D/Collision/b2Collision.h - Box2D/../Box2D/Collision/b2Distance.h - Box2D/../Box2D/Collision/b2TimeOfImpact.h - Box2D/../Box2D/Common/b2BlockAllocator.h - Box2D/../Box2D/Common/b2Math.h - Box2D/../Box2D/Common/b2Settings.h - Box2D/../Box2D/Common/b2Timer.h -Box2D/CMakeFiles/Box2D.dir/Common/b2BlockAllocator.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2BlockAllocator.cpp - Box2D/../Box2D/Common/b2BlockAllocator.h - Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Common/b2Draw.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Draw.cpp - Box2D/../Box2D/Common/b2Draw.h - Box2D/../Box2D/Common/b2Math.h - Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Common/b2Math.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Math.cpp - Box2D/../Box2D/Common/b2Math.h - Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Common/b2Settings.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Settings.cpp - Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Common/b2StackAllocator.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2StackAllocator.cpp - Box2D/../Box2D/Common/b2Math.h - Box2D/../Box2D/Common/b2Settings.h - Box2D/../Box2D/Common/b2StackAllocator.h -Box2D/CMakeFiles/Box2D.dir/Common/b2Timer.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Timer.cpp - Box2D/../Box2D/Common/b2Settings.h - Box2D/../Box2D/Common/b2Timer.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndCircleContact.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2ChainAndCircleContact.cpp - Box2D/../Box2D/Collision/Shapes/b2ChainShape.h - Box2D/../Box2D/Collision/Shapes/b2EdgeShape.h - Box2D/../Box2D/Collision/Shapes/b2Shape.h - Box2D/../Box2D/Collision/b2Collision.h - Box2D/../Box2D/Common/b2BlockAllocator.h - Box2D/../Box2D/Common/b2Math.h - Box2D/../Box2D/Common/b2Settings.h - Box2D/../Box2D/Dynamics/Contacts/b2ChainAndCircleContact.h - Box2D/../Box2D/Dynamics/Contacts/b2Contact.h - Box2D/../Box2D/Dynamics/b2Body.h - Box2D/../Box2D/Dynamics/b2Fixture.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndPolygonContact.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2ChainAndPolygonContact.cpp - Box2D/../Box2D/Collision/Shapes/b2ChainShape.h - Box2D/../Box2D/Collision/Shapes/b2EdgeShape.h - Box2D/../Box2D/Collision/Shapes/b2Shape.h - Box2D/../Box2D/Collision/b2Collision.h - Box2D/../Box2D/Common/b2BlockAllocator.h - Box2D/../Box2D/Common/b2Math.h - Box2D/../Box2D/Common/b2Settings.h - Box2D/../Box2D/Dynamics/Contacts/b2ChainAndPolygonContact.h - Box2D/../Box2D/Dynamics/Contacts/b2Contact.h - Box2D/../Box2D/Dynamics/b2Body.h - Box2D/../Box2D/Dynamics/b2Fixture.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2CircleContact.cpp - Box2D/../Box2D/Collision/Shapes/b2Shape.h - Box2D/../Box2D/Collision/b2Collision.h - Box2D/../Box2D/Collision/b2Distance.h - Box2D/../Box2D/Collision/b2TimeOfImpact.h - Box2D/../Box2D/Common/b2BlockAllocator.h - Box2D/../Box2D/Common/b2Math.h - Box2D/../Box2D/Common/b2Settings.h - Box2D/../Box2D/Dynamics/Contacts/b2CircleContact.h - Box2D/../Box2D/Dynamics/Contacts/b2Contact.h - Box2D/../Box2D/Dynamics/b2Body.h - Box2D/../Box2D/Dynamics/b2Fixture.h - Box2D/../Box2D/Dynamics/b2WorldCallbacks.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2Contact.cpp - Box2D/../Box2D/Collision/Shapes/b2Shape.h - Box2D/../Box2D/Collision/b2BroadPhase.h - Box2D/../Box2D/Collision/b2Collision.h - Box2D/../Box2D/Collision/b2Distance.h - Box2D/../Box2D/Collision/b2DynamicTree.h - Box2D/../Box2D/Collision/b2TimeOfImpact.h - Box2D/../Box2D/Common/b2BlockAllocator.h - Box2D/../Box2D/Common/b2GrowableStack.h - Box2D/../Box2D/Common/b2Math.h - Box2D/../Box2D/Common/b2Settings.h - Box2D/../Box2D/Common/b2StackAllocator.h - Box2D/../Box2D/Dynamics/Contacts/b2ChainAndCircleContact.h - Box2D/../Box2D/Dynamics/Contacts/b2ChainAndPolygonContact.h - Box2D/../Box2D/Dynamics/Contacts/b2CircleContact.h - Box2D/../Box2D/Dynamics/Contacts/b2Contact.h - Box2D/../Box2D/Dynamics/Contacts/b2ContactSolver.h - Box2D/../Box2D/Dynamics/Contacts/b2EdgeAndCircleContact.h - Box2D/../Box2D/Dynamics/Contacts/b2EdgeAndPolygonContact.h - Box2D/../Box2D/Dynamics/Contacts/b2PolygonAndCircleContact.h - Box2D/../Box2D/Dynamics/Contacts/b2PolygonContact.h - Box2D/../Box2D/Dynamics/b2Body.h - Box2D/../Box2D/Dynamics/b2ContactManager.h - Box2D/../Box2D/Dynamics/b2Fixture.h - Box2D/../Box2D/Dynamics/b2TimeStep.h - Box2D/../Box2D/Dynamics/b2World.h - Box2D/../Box2D/Dynamics/b2WorldCallbacks.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2ContactSolver.cpp - Box2D/../Box2D/Collision/Shapes/b2Shape.h - Box2D/../Box2D/Collision/b2BroadPhase.h - Box2D/../Box2D/Collision/b2Collision.h - Box2D/../Box2D/Collision/b2DynamicTree.h - Box2D/../Box2D/Common/b2BlockAllocator.h - Box2D/../Box2D/Common/b2GrowableStack.h - Box2D/../Box2D/Common/b2Math.h - Box2D/../Box2D/Common/b2Settings.h - Box2D/../Box2D/Common/b2StackAllocator.h - Box2D/../Box2D/Dynamics/Contacts/b2Contact.h - Box2D/../Box2D/Dynamics/Contacts/b2ContactSolver.h - Box2D/../Box2D/Dynamics/b2Body.h - Box2D/../Box2D/Dynamics/b2ContactManager.h - Box2D/../Box2D/Dynamics/b2Fixture.h - Box2D/../Box2D/Dynamics/b2TimeStep.h - Box2D/../Box2D/Dynamics/b2World.h - Box2D/../Box2D/Dynamics/b2WorldCallbacks.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndCircleContact.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2EdgeAndCircleContact.cpp - Box2D/../Box2D/Collision/Shapes/b2Shape.h - Box2D/../Box2D/Collision/b2Collision.h - Box2D/../Box2D/Common/b2BlockAllocator.h - Box2D/../Box2D/Common/b2Math.h - Box2D/../Box2D/Common/b2Settings.h - Box2D/../Box2D/Dynamics/Contacts/b2Contact.h - Box2D/../Box2D/Dynamics/Contacts/b2EdgeAndCircleContact.h - Box2D/../Box2D/Dynamics/b2Body.h - Box2D/../Box2D/Dynamics/b2Fixture.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp - Box2D/../Box2D/Collision/Shapes/b2Shape.h - Box2D/../Box2D/Collision/b2Collision.h - Box2D/../Box2D/Common/b2BlockAllocator.h - Box2D/../Box2D/Common/b2Math.h - Box2D/../Box2D/Common/b2Settings.h - Box2D/../Box2D/Dynamics/Contacts/b2Contact.h - Box2D/../Box2D/Dynamics/Contacts/b2EdgeAndPolygonContact.h - Box2D/../Box2D/Dynamics/b2Body.h - Box2D/../Box2D/Dynamics/b2Fixture.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonAndCircleContact.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2PolygonAndCircleContact.cpp - Box2D/../Box2D/Collision/Shapes/b2Shape.h - Box2D/../Box2D/Collision/b2Collision.h - Box2D/../Box2D/Common/b2BlockAllocator.h - Box2D/../Box2D/Common/b2Math.h - Box2D/../Box2D/Common/b2Settings.h - Box2D/../Box2D/Dynamics/Contacts/b2Contact.h - Box2D/../Box2D/Dynamics/Contacts/b2PolygonAndCircleContact.h - Box2D/../Box2D/Dynamics/b2Body.h - Box2D/../Box2D/Dynamics/b2Fixture.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2PolygonContact.cpp - Box2D/../Box2D/Collision/Shapes/b2Shape.h - Box2D/../Box2D/Collision/b2Collision.h - Box2D/../Box2D/Collision/b2Distance.h - Box2D/../Box2D/Collision/b2TimeOfImpact.h - Box2D/../Box2D/Common/b2BlockAllocator.h - Box2D/../Box2D/Common/b2Math.h - Box2D/../Box2D/Common/b2Settings.h - Box2D/../Box2D/Dynamics/Contacts/b2Contact.h - Box2D/../Box2D/Dynamics/Contacts/b2PolygonContact.h - Box2D/../Box2D/Dynamics/b2Body.h - Box2D/../Box2D/Dynamics/b2Fixture.h - Box2D/../Box2D/Dynamics/b2WorldCallbacks.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2DistanceJoint.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2DistanceJoint.cpp - Box2D/../Box2D/Collision/Shapes/b2Shape.h - Box2D/../Box2D/Collision/b2Collision.h - Box2D/../Box2D/Common/b2BlockAllocator.h - Box2D/../Box2D/Common/b2Math.h - Box2D/../Box2D/Common/b2Settings.h - Box2D/../Box2D/Dynamics/Joints/b2DistanceJoint.h - Box2D/../Box2D/Dynamics/Joints/b2Joint.h - Box2D/../Box2D/Dynamics/b2Body.h - Box2D/../Box2D/Dynamics/b2TimeStep.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2FrictionJoint.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2FrictionJoint.cpp - Box2D/../Box2D/Collision/Shapes/b2Shape.h - Box2D/../Box2D/Collision/b2Collision.h - Box2D/../Box2D/Common/b2BlockAllocator.h - Box2D/../Box2D/Common/b2Math.h - Box2D/../Box2D/Common/b2Settings.h - Box2D/../Box2D/Dynamics/Joints/b2FrictionJoint.h - Box2D/../Box2D/Dynamics/Joints/b2Joint.h - Box2D/../Box2D/Dynamics/b2Body.h - Box2D/../Box2D/Dynamics/b2TimeStep.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2GearJoint.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2GearJoint.cpp - Box2D/../Box2D/Collision/Shapes/b2Shape.h - Box2D/../Box2D/Collision/b2Collision.h - Box2D/../Box2D/Common/b2BlockAllocator.h - Box2D/../Box2D/Common/b2Math.h - Box2D/../Box2D/Common/b2Settings.h - Box2D/../Box2D/Dynamics/Joints/b2GearJoint.h - Box2D/../Box2D/Dynamics/Joints/b2Joint.h - Box2D/../Box2D/Dynamics/Joints/b2PrismaticJoint.h - Box2D/../Box2D/Dynamics/Joints/b2RevoluteJoint.h - Box2D/../Box2D/Dynamics/b2Body.h - Box2D/../Box2D/Dynamics/b2TimeStep.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2Joint.cpp - Box2D/../Box2D/Collision/Shapes/b2Shape.h - Box2D/../Box2D/Collision/b2BroadPhase.h - Box2D/../Box2D/Collision/b2Collision.h - Box2D/../Box2D/Collision/b2DynamicTree.h - Box2D/../Box2D/Common/b2BlockAllocator.h - Box2D/../Box2D/Common/b2GrowableStack.h - Box2D/../Box2D/Common/b2Math.h - Box2D/../Box2D/Common/b2Settings.h - Box2D/../Box2D/Common/b2StackAllocator.h - Box2D/../Box2D/Dynamics/Joints/b2DistanceJoint.h - Box2D/../Box2D/Dynamics/Joints/b2FrictionJoint.h - Box2D/../Box2D/Dynamics/Joints/b2GearJoint.h - Box2D/../Box2D/Dynamics/Joints/b2Joint.h - Box2D/../Box2D/Dynamics/Joints/b2MotorJoint.h - Box2D/../Box2D/Dynamics/Joints/b2MouseJoint.h - Box2D/../Box2D/Dynamics/Joints/b2PrismaticJoint.h - Box2D/../Box2D/Dynamics/Joints/b2PulleyJoint.h - Box2D/../Box2D/Dynamics/Joints/b2RevoluteJoint.h - Box2D/../Box2D/Dynamics/Joints/b2RopeJoint.h - Box2D/../Box2D/Dynamics/Joints/b2WeldJoint.h - Box2D/../Box2D/Dynamics/Joints/b2WheelJoint.h - Box2D/../Box2D/Dynamics/b2Body.h - Box2D/../Box2D/Dynamics/b2ContactManager.h - Box2D/../Box2D/Dynamics/b2TimeStep.h - Box2D/../Box2D/Dynamics/b2World.h - Box2D/../Box2D/Dynamics/b2WorldCallbacks.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MotorJoint.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2MotorJoint.cpp - Box2D/../Box2D/Collision/Shapes/b2Shape.h - Box2D/../Box2D/Collision/b2Collision.h - Box2D/../Box2D/Common/b2BlockAllocator.h - Box2D/../Box2D/Common/b2Math.h - Box2D/../Box2D/Common/b2Settings.h - Box2D/../Box2D/Dynamics/Joints/b2Joint.h - Box2D/../Box2D/Dynamics/Joints/b2MotorJoint.h - Box2D/../Box2D/Dynamics/b2Body.h - Box2D/../Box2D/Dynamics/b2TimeStep.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MouseJoint.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2MouseJoint.cpp - Box2D/../Box2D/Collision/Shapes/b2Shape.h - Box2D/../Box2D/Collision/b2Collision.h - Box2D/../Box2D/Common/b2BlockAllocator.h - Box2D/../Box2D/Common/b2Math.h - Box2D/../Box2D/Common/b2Settings.h - Box2D/../Box2D/Dynamics/Joints/b2Joint.h - Box2D/../Box2D/Dynamics/Joints/b2MouseJoint.h - Box2D/../Box2D/Dynamics/b2Body.h - Box2D/../Box2D/Dynamics/b2TimeStep.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PrismaticJoint.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2PrismaticJoint.cpp - Box2D/../Box2D/Collision/Shapes/b2Shape.h - Box2D/../Box2D/Collision/b2Collision.h - Box2D/../Box2D/Common/b2BlockAllocator.h - Box2D/../Box2D/Common/b2Math.h - Box2D/../Box2D/Common/b2Settings.h - Box2D/../Box2D/Dynamics/Joints/b2Joint.h - Box2D/../Box2D/Dynamics/Joints/b2PrismaticJoint.h - Box2D/../Box2D/Dynamics/b2Body.h - Box2D/../Box2D/Dynamics/b2TimeStep.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PulleyJoint.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2PulleyJoint.cpp - Box2D/../Box2D/Collision/Shapes/b2Shape.h - Box2D/../Box2D/Collision/b2Collision.h - Box2D/../Box2D/Common/b2BlockAllocator.h - Box2D/../Box2D/Common/b2Math.h - Box2D/../Box2D/Common/b2Settings.h - Box2D/../Box2D/Dynamics/Joints/b2Joint.h - Box2D/../Box2D/Dynamics/Joints/b2PulleyJoint.h - Box2D/../Box2D/Dynamics/b2Body.h - Box2D/../Box2D/Dynamics/b2TimeStep.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RevoluteJoint.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2RevoluteJoint.cpp - Box2D/../Box2D/Collision/Shapes/b2Shape.h - Box2D/../Box2D/Collision/b2Collision.h - Box2D/../Box2D/Common/b2BlockAllocator.h - Box2D/../Box2D/Common/b2Math.h - Box2D/../Box2D/Common/b2Settings.h - Box2D/../Box2D/Dynamics/Joints/b2Joint.h - Box2D/../Box2D/Dynamics/Joints/b2RevoluteJoint.h - Box2D/../Box2D/Dynamics/b2Body.h - Box2D/../Box2D/Dynamics/b2TimeStep.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RopeJoint.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2RopeJoint.cpp - Box2D/../Box2D/Collision/Shapes/b2Shape.h - Box2D/../Box2D/Collision/b2Collision.h - Box2D/../Box2D/Common/b2BlockAllocator.h - Box2D/../Box2D/Common/b2Math.h - Box2D/../Box2D/Common/b2Settings.h - Box2D/../Box2D/Dynamics/Joints/b2Joint.h - Box2D/../Box2D/Dynamics/Joints/b2RopeJoint.h - Box2D/../Box2D/Dynamics/b2Body.h - Box2D/../Box2D/Dynamics/b2TimeStep.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WeldJoint.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2WeldJoint.cpp - Box2D/../Box2D/Collision/Shapes/b2Shape.h - Box2D/../Box2D/Collision/b2Collision.h - Box2D/../Box2D/Common/b2BlockAllocator.h - Box2D/../Box2D/Common/b2Math.h - Box2D/../Box2D/Common/b2Settings.h - Box2D/../Box2D/Dynamics/Joints/b2Joint.h - Box2D/../Box2D/Dynamics/Joints/b2WeldJoint.h - Box2D/../Box2D/Dynamics/b2Body.h - Box2D/../Box2D/Dynamics/b2TimeStep.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WheelJoint.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2WheelJoint.cpp - Box2D/../Box2D/Collision/Shapes/b2Shape.h - Box2D/../Box2D/Collision/b2Collision.h - Box2D/../Box2D/Common/b2BlockAllocator.h - Box2D/../Box2D/Common/b2Math.h - Box2D/../Box2D/Common/b2Settings.h - Box2D/../Box2D/Dynamics/Joints/b2Joint.h - Box2D/../Box2D/Dynamics/Joints/b2WheelJoint.h - Box2D/../Box2D/Dynamics/b2Body.h - Box2D/../Box2D/Dynamics/b2TimeStep.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2Body.cpp - Box2D/../Box2D/Collision/Shapes/b2Shape.h - Box2D/../Box2D/Collision/b2BroadPhase.h - Box2D/../Box2D/Collision/b2Collision.h - Box2D/../Box2D/Collision/b2DynamicTree.h - Box2D/../Box2D/Common/b2BlockAllocator.h - Box2D/../Box2D/Common/b2GrowableStack.h - Box2D/../Box2D/Common/b2Math.h - Box2D/../Box2D/Common/b2Settings.h - Box2D/../Box2D/Common/b2StackAllocator.h - Box2D/../Box2D/Dynamics/Contacts/b2Contact.h - Box2D/../Box2D/Dynamics/Joints/b2Joint.h - Box2D/../Box2D/Dynamics/b2Body.h - Box2D/../Box2D/Dynamics/b2ContactManager.h - Box2D/../Box2D/Dynamics/b2Fixture.h - Box2D/../Box2D/Dynamics/b2TimeStep.h - Box2D/../Box2D/Dynamics/b2World.h - Box2D/../Box2D/Dynamics/b2WorldCallbacks.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2ContactManager.cpp - Box2D/../Box2D/Collision/Shapes/b2Shape.h - Box2D/../Box2D/Collision/b2BroadPhase.h - Box2D/../Box2D/Collision/b2Collision.h - Box2D/../Box2D/Collision/b2DynamicTree.h - Box2D/../Box2D/Common/b2BlockAllocator.h - Box2D/../Box2D/Common/b2GrowableStack.h - Box2D/../Box2D/Common/b2Math.h - Box2D/../Box2D/Common/b2Settings.h - Box2D/../Box2D/Dynamics/Contacts/b2Contact.h - Box2D/../Box2D/Dynamics/b2Body.h - Box2D/../Box2D/Dynamics/b2ContactManager.h - Box2D/../Box2D/Dynamics/b2Fixture.h - Box2D/../Box2D/Dynamics/b2WorldCallbacks.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2Fixture.cpp - Box2D/../Box2D/Collision/Shapes/b2ChainShape.h - Box2D/../Box2D/Collision/Shapes/b2CircleShape.h - Box2D/../Box2D/Collision/Shapes/b2EdgeShape.h - Box2D/../Box2D/Collision/Shapes/b2PolygonShape.h - Box2D/../Box2D/Collision/Shapes/b2Shape.h - Box2D/../Box2D/Collision/b2BroadPhase.h - Box2D/../Box2D/Collision/b2Collision.h - Box2D/../Box2D/Collision/b2DynamicTree.h - Box2D/../Box2D/Common/b2BlockAllocator.h - Box2D/../Box2D/Common/b2GrowableStack.h - Box2D/../Box2D/Common/b2Math.h - Box2D/../Box2D/Common/b2Settings.h - Box2D/../Box2D/Common/b2StackAllocator.h - Box2D/../Box2D/Dynamics/Contacts/b2Contact.h - Box2D/../Box2D/Dynamics/b2Body.h - Box2D/../Box2D/Dynamics/b2ContactManager.h - Box2D/../Box2D/Dynamics/b2Fixture.h - Box2D/../Box2D/Dynamics/b2TimeStep.h - Box2D/../Box2D/Dynamics/b2World.h - Box2D/../Box2D/Dynamics/b2WorldCallbacks.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2Island.cpp - Box2D/../Box2D/Collision/Shapes/b2Shape.h - Box2D/../Box2D/Collision/b2BroadPhase.h - Box2D/../Box2D/Collision/b2Collision.h - Box2D/../Box2D/Collision/b2Distance.h - Box2D/../Box2D/Collision/b2DynamicTree.h - Box2D/../Box2D/Common/b2BlockAllocator.h - Box2D/../Box2D/Common/b2GrowableStack.h - Box2D/../Box2D/Common/b2Math.h - Box2D/../Box2D/Common/b2Settings.h - Box2D/../Box2D/Common/b2StackAllocator.h - Box2D/../Box2D/Common/b2Timer.h - Box2D/../Box2D/Dynamics/Contacts/b2Contact.h - Box2D/../Box2D/Dynamics/Contacts/b2ContactSolver.h - Box2D/../Box2D/Dynamics/Joints/b2Joint.h - Box2D/../Box2D/Dynamics/b2Body.h - Box2D/../Box2D/Dynamics/b2ContactManager.h - Box2D/../Box2D/Dynamics/b2Fixture.h - Box2D/../Box2D/Dynamics/b2Island.h - Box2D/../Box2D/Dynamics/b2TimeStep.h - Box2D/../Box2D/Dynamics/b2World.h - Box2D/../Box2D/Dynamics/b2WorldCallbacks.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2World.cpp - Box2D/../Box2D/Collision/Shapes/b2ChainShape.h - Box2D/../Box2D/Collision/Shapes/b2CircleShape.h - Box2D/../Box2D/Collision/Shapes/b2EdgeShape.h - Box2D/../Box2D/Collision/Shapes/b2PolygonShape.h - Box2D/../Box2D/Collision/Shapes/b2Shape.h - Box2D/../Box2D/Collision/b2BroadPhase.h - Box2D/../Box2D/Collision/b2Collision.h - Box2D/../Box2D/Collision/b2Distance.h - Box2D/../Box2D/Collision/b2DynamicTree.h - Box2D/../Box2D/Collision/b2TimeOfImpact.h - Box2D/../Box2D/Common/b2BlockAllocator.h - Box2D/../Box2D/Common/b2Draw.h - Box2D/../Box2D/Common/b2GrowableStack.h - Box2D/../Box2D/Common/b2Math.h - Box2D/../Box2D/Common/b2Settings.h - Box2D/../Box2D/Common/b2StackAllocator.h - Box2D/../Box2D/Common/b2Timer.h - Box2D/../Box2D/Dynamics/Contacts/b2Contact.h - Box2D/../Box2D/Dynamics/Contacts/b2ContactSolver.h - Box2D/../Box2D/Dynamics/Joints/b2Joint.h - Box2D/../Box2D/Dynamics/Joints/b2PulleyJoint.h - Box2D/../Box2D/Dynamics/b2Body.h - Box2D/../Box2D/Dynamics/b2ContactManager.h - Box2D/../Box2D/Dynamics/b2Fixture.h - Box2D/../Box2D/Dynamics/b2Island.h - Box2D/../Box2D/Dynamics/b2TimeStep.h - Box2D/../Box2D/Dynamics/b2World.h - Box2D/../Box2D/Dynamics/b2WorldCallbacks.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2WorldCallbacks.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2WorldCallbacks.cpp - Box2D/../Box2D/Collision/Shapes/b2Shape.h - Box2D/../Box2D/Collision/b2Collision.h - Box2D/../Box2D/Common/b2BlockAllocator.h - Box2D/../Box2D/Common/b2Math.h - Box2D/../Box2D/Common/b2Settings.h - Box2D/../Box2D/Dynamics/b2Body.h - Box2D/../Box2D/Dynamics/b2Fixture.h - Box2D/../Box2D/Dynamics/b2WorldCallbacks.h -Box2D/CMakeFiles/Box2D.dir/Rope/b2Rope.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Rope/b2Rope.cpp - Box2D/../Box2D/Common/b2Draw.h - Box2D/../Box2D/Common/b2Math.h - Box2D/../Box2D/Common/b2Settings.h - Box2D/../Box2D/Rope/b2Rope.h diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/depend.make b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/depend.make deleted file mode 100644 index 7345c23..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/depend.make +++ /dev/null @@ -1,543 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 2.8 - -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2ChainShape.cpp.o: Box2D/Collision/Shapes/b2ChainShape.cpp -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2ChainShape.cpp.o: Box2D/../Box2D/Collision/Shapes/b2ChainShape.h -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2ChainShape.cpp.o: Box2D/../Box2D/Collision/Shapes/b2EdgeShape.h -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2ChainShape.cpp.o: Box2D/../Box2D/Collision/Shapes/b2Shape.h -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2ChainShape.cpp.o: Box2D/../Box2D/Collision/b2Collision.h -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2ChainShape.cpp.o: Box2D/../Box2D/Common/b2BlockAllocator.h -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2ChainShape.cpp.o: Box2D/../Box2D/Common/b2Math.h -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2ChainShape.cpp.o: Box2D/../Box2D/Common/b2Settings.h - -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2CircleShape.cpp.o: Box2D/Collision/Shapes/b2CircleShape.cpp -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2CircleShape.cpp.o: Box2D/../Box2D/Collision/Shapes/b2CircleShape.h -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2CircleShape.cpp.o: Box2D/../Box2D/Collision/Shapes/b2Shape.h -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2CircleShape.cpp.o: Box2D/../Box2D/Collision/b2Collision.h -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2CircleShape.cpp.o: Box2D/../Box2D/Common/b2BlockAllocator.h -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2CircleShape.cpp.o: Box2D/../Box2D/Common/b2Math.h -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2CircleShape.cpp.o: Box2D/../Box2D/Common/b2Settings.h - -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2EdgeShape.cpp.o: Box2D/Collision/Shapes/b2EdgeShape.cpp -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2EdgeShape.cpp.o: Box2D/../Box2D/Collision/Shapes/b2EdgeShape.h -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2EdgeShape.cpp.o: Box2D/../Box2D/Collision/Shapes/b2Shape.h -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2EdgeShape.cpp.o: Box2D/../Box2D/Collision/b2Collision.h -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2EdgeShape.cpp.o: Box2D/../Box2D/Common/b2BlockAllocator.h -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2EdgeShape.cpp.o: Box2D/../Box2D/Common/b2Math.h -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2EdgeShape.cpp.o: Box2D/../Box2D/Common/b2Settings.h - -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2PolygonShape.cpp.o: Box2D/Collision/Shapes/b2PolygonShape.cpp -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2PolygonShape.cpp.o: Box2D/../Box2D/Collision/Shapes/b2PolygonShape.h -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2PolygonShape.cpp.o: Box2D/../Box2D/Collision/Shapes/b2Shape.h -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2PolygonShape.cpp.o: Box2D/../Box2D/Collision/b2Collision.h -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2PolygonShape.cpp.o: Box2D/../Box2D/Common/b2BlockAllocator.h -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2PolygonShape.cpp.o: Box2D/../Box2D/Common/b2Math.h -Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2PolygonShape.cpp.o: Box2D/../Box2D/Common/b2Settings.h - -Box2D/CMakeFiles/Box2D.dir/Collision/b2BroadPhase.cpp.o: Box2D/Collision/b2BroadPhase.cpp -Box2D/CMakeFiles/Box2D.dir/Collision/b2BroadPhase.cpp.o: Box2D/../Box2D/Collision/b2BroadPhase.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2BroadPhase.cpp.o: Box2D/../Box2D/Collision/b2Collision.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2BroadPhase.cpp.o: Box2D/../Box2D/Collision/b2DynamicTree.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2BroadPhase.cpp.o: Box2D/../Box2D/Common/b2GrowableStack.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2BroadPhase.cpp.o: Box2D/../Box2D/Common/b2Math.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2BroadPhase.cpp.o: Box2D/../Box2D/Common/b2Settings.h - -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideCircle.cpp.o: Box2D/Collision/b2CollideCircle.cpp -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideCircle.cpp.o: Box2D/../Box2D/Collision/Shapes/b2CircleShape.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideCircle.cpp.o: Box2D/../Box2D/Collision/Shapes/b2PolygonShape.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideCircle.cpp.o: Box2D/../Box2D/Collision/Shapes/b2Shape.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideCircle.cpp.o: Box2D/../Box2D/Collision/b2Collision.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideCircle.cpp.o: Box2D/../Box2D/Common/b2BlockAllocator.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideCircle.cpp.o: Box2D/../Box2D/Common/b2Math.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideCircle.cpp.o: Box2D/../Box2D/Common/b2Settings.h - -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideEdge.cpp.o: Box2D/Collision/b2CollideEdge.cpp -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideEdge.cpp.o: Box2D/../Box2D/Collision/Shapes/b2CircleShape.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideEdge.cpp.o: Box2D/../Box2D/Collision/Shapes/b2EdgeShape.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideEdge.cpp.o: Box2D/../Box2D/Collision/Shapes/b2PolygonShape.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideEdge.cpp.o: Box2D/../Box2D/Collision/Shapes/b2Shape.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideEdge.cpp.o: Box2D/../Box2D/Collision/b2Collision.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideEdge.cpp.o: Box2D/../Box2D/Common/b2BlockAllocator.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideEdge.cpp.o: Box2D/../Box2D/Common/b2Math.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideEdge.cpp.o: Box2D/../Box2D/Common/b2Settings.h - -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollidePolygon.cpp.o: Box2D/Collision/b2CollidePolygon.cpp -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollidePolygon.cpp.o: Box2D/../Box2D/Collision/Shapes/b2PolygonShape.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollidePolygon.cpp.o: Box2D/../Box2D/Collision/Shapes/b2Shape.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollidePolygon.cpp.o: Box2D/../Box2D/Collision/b2Collision.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollidePolygon.cpp.o: Box2D/../Box2D/Common/b2BlockAllocator.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollidePolygon.cpp.o: Box2D/../Box2D/Common/b2Math.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2CollidePolygon.cpp.o: Box2D/../Box2D/Common/b2Settings.h - -Box2D/CMakeFiles/Box2D.dir/Collision/b2Collision.cpp.o: Box2D/Collision/b2Collision.cpp -Box2D/CMakeFiles/Box2D.dir/Collision/b2Collision.cpp.o: Box2D/../Box2D/Collision/b2Collision.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2Collision.cpp.o: Box2D/../Box2D/Collision/b2Distance.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2Collision.cpp.o: Box2D/../Box2D/Common/b2Math.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2Collision.cpp.o: Box2D/../Box2D/Common/b2Settings.h - -Box2D/CMakeFiles/Box2D.dir/Collision/b2Distance.cpp.o: Box2D/Collision/b2Distance.cpp -Box2D/CMakeFiles/Box2D.dir/Collision/b2Distance.cpp.o: Box2D/../Box2D/Collision/Shapes/b2ChainShape.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2Distance.cpp.o: Box2D/../Box2D/Collision/Shapes/b2CircleShape.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2Distance.cpp.o: Box2D/../Box2D/Collision/Shapes/b2EdgeShape.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2Distance.cpp.o: Box2D/../Box2D/Collision/Shapes/b2PolygonShape.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2Distance.cpp.o: Box2D/../Box2D/Collision/Shapes/b2Shape.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2Distance.cpp.o: Box2D/../Box2D/Collision/b2Collision.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2Distance.cpp.o: Box2D/../Box2D/Collision/b2Distance.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2Distance.cpp.o: Box2D/../Box2D/Common/b2BlockAllocator.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2Distance.cpp.o: Box2D/../Box2D/Common/b2Math.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2Distance.cpp.o: Box2D/../Box2D/Common/b2Settings.h - -Box2D/CMakeFiles/Box2D.dir/Collision/b2DynamicTree.cpp.o: Box2D/Collision/b2DynamicTree.cpp -Box2D/CMakeFiles/Box2D.dir/Collision/b2DynamicTree.cpp.o: Box2D/../Box2D/Collision/b2Collision.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2DynamicTree.cpp.o: Box2D/../Box2D/Collision/b2DynamicTree.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2DynamicTree.cpp.o: Box2D/../Box2D/Common/b2GrowableStack.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2DynamicTree.cpp.o: Box2D/../Box2D/Common/b2Math.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2DynamicTree.cpp.o: Box2D/../Box2D/Common/b2Settings.h - -Box2D/CMakeFiles/Box2D.dir/Collision/b2TimeOfImpact.cpp.o: Box2D/Collision/b2TimeOfImpact.cpp -Box2D/CMakeFiles/Box2D.dir/Collision/b2TimeOfImpact.cpp.o: Box2D/../Box2D/Collision/Shapes/b2CircleShape.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2TimeOfImpact.cpp.o: Box2D/../Box2D/Collision/Shapes/b2PolygonShape.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2TimeOfImpact.cpp.o: Box2D/../Box2D/Collision/Shapes/b2Shape.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2TimeOfImpact.cpp.o: Box2D/../Box2D/Collision/b2Collision.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2TimeOfImpact.cpp.o: Box2D/../Box2D/Collision/b2Distance.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2TimeOfImpact.cpp.o: Box2D/../Box2D/Collision/b2TimeOfImpact.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2TimeOfImpact.cpp.o: Box2D/../Box2D/Common/b2BlockAllocator.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2TimeOfImpact.cpp.o: Box2D/../Box2D/Common/b2Math.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2TimeOfImpact.cpp.o: Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Collision/b2TimeOfImpact.cpp.o: Box2D/../Box2D/Common/b2Timer.h - -Box2D/CMakeFiles/Box2D.dir/Common/b2BlockAllocator.cpp.o: Box2D/Common/b2BlockAllocator.cpp -Box2D/CMakeFiles/Box2D.dir/Common/b2BlockAllocator.cpp.o: Box2D/../Box2D/Common/b2BlockAllocator.h -Box2D/CMakeFiles/Box2D.dir/Common/b2BlockAllocator.cpp.o: Box2D/../Box2D/Common/b2Settings.h - -Box2D/CMakeFiles/Box2D.dir/Common/b2Draw.cpp.o: Box2D/Common/b2Draw.cpp -Box2D/CMakeFiles/Box2D.dir/Common/b2Draw.cpp.o: Box2D/../Box2D/Common/b2Draw.h -Box2D/CMakeFiles/Box2D.dir/Common/b2Draw.cpp.o: Box2D/../Box2D/Common/b2Math.h -Box2D/CMakeFiles/Box2D.dir/Common/b2Draw.cpp.o: Box2D/../Box2D/Common/b2Settings.h - -Box2D/CMakeFiles/Box2D.dir/Common/b2Math.cpp.o: Box2D/Common/b2Math.cpp -Box2D/CMakeFiles/Box2D.dir/Common/b2Math.cpp.o: Box2D/../Box2D/Common/b2Math.h -Box2D/CMakeFiles/Box2D.dir/Common/b2Math.cpp.o: Box2D/../Box2D/Common/b2Settings.h - -Box2D/CMakeFiles/Box2D.dir/Common/b2Settings.cpp.o: Box2D/Common/b2Settings.cpp -Box2D/CMakeFiles/Box2D.dir/Common/b2Settings.cpp.o: Box2D/../Box2D/Common/b2Settings.h - -Box2D/CMakeFiles/Box2D.dir/Common/b2StackAllocator.cpp.o: Box2D/Common/b2StackAllocator.cpp -Box2D/CMakeFiles/Box2D.dir/Common/b2StackAllocator.cpp.o: Box2D/../Box2D/Common/b2Math.h -Box2D/CMakeFiles/Box2D.dir/Common/b2StackAllocator.cpp.o: Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Common/b2StackAllocator.cpp.o: Box2D/../Box2D/Common/b2StackAllocator.h - -Box2D/CMakeFiles/Box2D.dir/Common/b2Timer.cpp.o: Box2D/Common/b2Timer.cpp -Box2D/CMakeFiles/Box2D.dir/Common/b2Timer.cpp.o: Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Common/b2Timer.cpp.o: Box2D/../Box2D/Common/b2Timer.h - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndCircleContact.cpp.o: Box2D/Dynamics/Contacts/b2ChainAndCircleContact.cpp -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndCircleContact.cpp.o: Box2D/../Box2D/Collision/Shapes/b2ChainShape.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndCircleContact.cpp.o: Box2D/../Box2D/Collision/Shapes/b2EdgeShape.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndCircleContact.cpp.o: Box2D/../Box2D/Collision/Shapes/b2Shape.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndCircleContact.cpp.o: Box2D/../Box2D/Collision/b2Collision.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndCircleContact.cpp.o: Box2D/../Box2D/Common/b2BlockAllocator.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndCircleContact.cpp.o: Box2D/../Box2D/Common/b2Math.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndCircleContact.cpp.o: Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndCircleContact.cpp.o: Box2D/../Box2D/Dynamics/Contacts/b2ChainAndCircleContact.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndCircleContact.cpp.o: Box2D/../Box2D/Dynamics/Contacts/b2Contact.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndCircleContact.cpp.o: Box2D/../Box2D/Dynamics/b2Body.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndCircleContact.cpp.o: Box2D/../Box2D/Dynamics/b2Fixture.h - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndPolygonContact.cpp.o: Box2D/Dynamics/Contacts/b2ChainAndPolygonContact.cpp -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndPolygonContact.cpp.o: Box2D/../Box2D/Collision/Shapes/b2ChainShape.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndPolygonContact.cpp.o: Box2D/../Box2D/Collision/Shapes/b2EdgeShape.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndPolygonContact.cpp.o: Box2D/../Box2D/Collision/Shapes/b2Shape.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndPolygonContact.cpp.o: Box2D/../Box2D/Collision/b2Collision.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndPolygonContact.cpp.o: Box2D/../Box2D/Common/b2BlockAllocator.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndPolygonContact.cpp.o: Box2D/../Box2D/Common/b2Math.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndPolygonContact.cpp.o: Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndPolygonContact.cpp.o: Box2D/../Box2D/Dynamics/Contacts/b2ChainAndPolygonContact.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndPolygonContact.cpp.o: Box2D/../Box2D/Dynamics/Contacts/b2Contact.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndPolygonContact.cpp.o: Box2D/../Box2D/Dynamics/b2Body.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndPolygonContact.cpp.o: Box2D/../Box2D/Dynamics/b2Fixture.h - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.o: Box2D/Dynamics/Contacts/b2CircleContact.cpp -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.o: Box2D/../Box2D/Collision/Shapes/b2Shape.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.o: Box2D/../Box2D/Collision/b2Collision.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.o: Box2D/../Box2D/Collision/b2Distance.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.o: Box2D/../Box2D/Collision/b2TimeOfImpact.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.o: Box2D/../Box2D/Common/b2BlockAllocator.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.o: Box2D/../Box2D/Common/b2Math.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.o: Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.o: Box2D/../Box2D/Dynamics/Contacts/b2CircleContact.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.o: Box2D/../Box2D/Dynamics/Contacts/b2Contact.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.o: Box2D/../Box2D/Dynamics/b2Body.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.o: Box2D/../Box2D/Dynamics/b2Fixture.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.o: Box2D/../Box2D/Dynamics/b2WorldCallbacks.h - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o: Box2D/Dynamics/Contacts/b2Contact.cpp -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o: Box2D/../Box2D/Collision/Shapes/b2Shape.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o: Box2D/../Box2D/Collision/b2BroadPhase.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o: Box2D/../Box2D/Collision/b2Collision.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o: Box2D/../Box2D/Collision/b2Distance.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o: Box2D/../Box2D/Collision/b2DynamicTree.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o: Box2D/../Box2D/Collision/b2TimeOfImpact.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o: Box2D/../Box2D/Common/b2BlockAllocator.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o: Box2D/../Box2D/Common/b2GrowableStack.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o: Box2D/../Box2D/Common/b2Math.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o: Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o: Box2D/../Box2D/Common/b2StackAllocator.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o: Box2D/../Box2D/Dynamics/Contacts/b2ChainAndCircleContact.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o: Box2D/../Box2D/Dynamics/Contacts/b2ChainAndPolygonContact.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o: Box2D/../Box2D/Dynamics/Contacts/b2CircleContact.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o: Box2D/../Box2D/Dynamics/Contacts/b2Contact.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o: Box2D/../Box2D/Dynamics/Contacts/b2ContactSolver.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o: Box2D/../Box2D/Dynamics/Contacts/b2EdgeAndCircleContact.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o: Box2D/../Box2D/Dynamics/Contacts/b2EdgeAndPolygonContact.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o: Box2D/../Box2D/Dynamics/Contacts/b2PolygonAndCircleContact.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o: Box2D/../Box2D/Dynamics/Contacts/b2PolygonContact.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o: Box2D/../Box2D/Dynamics/b2Body.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o: Box2D/../Box2D/Dynamics/b2ContactManager.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o: Box2D/../Box2D/Dynamics/b2Fixture.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o: Box2D/../Box2D/Dynamics/b2TimeStep.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o: Box2D/../Box2D/Dynamics/b2World.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o: Box2D/../Box2D/Dynamics/b2WorldCallbacks.h - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.o: Box2D/Dynamics/Contacts/b2ContactSolver.cpp -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.o: Box2D/../Box2D/Collision/Shapes/b2Shape.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.o: Box2D/../Box2D/Collision/b2BroadPhase.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.o: Box2D/../Box2D/Collision/b2Collision.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.o: Box2D/../Box2D/Collision/b2DynamicTree.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.o: Box2D/../Box2D/Common/b2BlockAllocator.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.o: Box2D/../Box2D/Common/b2GrowableStack.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.o: Box2D/../Box2D/Common/b2Math.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.o: Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.o: Box2D/../Box2D/Common/b2StackAllocator.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.o: Box2D/../Box2D/Dynamics/Contacts/b2Contact.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.o: Box2D/../Box2D/Dynamics/Contacts/b2ContactSolver.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.o: Box2D/../Box2D/Dynamics/b2Body.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.o: Box2D/../Box2D/Dynamics/b2ContactManager.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.o: Box2D/../Box2D/Dynamics/b2Fixture.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.o: Box2D/../Box2D/Dynamics/b2TimeStep.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.o: Box2D/../Box2D/Dynamics/b2World.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.o: Box2D/../Box2D/Dynamics/b2WorldCallbacks.h - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndCircleContact.cpp.o: Box2D/Dynamics/Contacts/b2EdgeAndCircleContact.cpp -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndCircleContact.cpp.o: Box2D/../Box2D/Collision/Shapes/b2Shape.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndCircleContact.cpp.o: Box2D/../Box2D/Collision/b2Collision.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndCircleContact.cpp.o: Box2D/../Box2D/Common/b2BlockAllocator.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndCircleContact.cpp.o: Box2D/../Box2D/Common/b2Math.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndCircleContact.cpp.o: Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndCircleContact.cpp.o: Box2D/../Box2D/Dynamics/Contacts/b2Contact.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndCircleContact.cpp.o: Box2D/../Box2D/Dynamics/Contacts/b2EdgeAndCircleContact.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndCircleContact.cpp.o: Box2D/../Box2D/Dynamics/b2Body.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndCircleContact.cpp.o: Box2D/../Box2D/Dynamics/b2Fixture.h - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.o: Box2D/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.o: Box2D/../Box2D/Collision/Shapes/b2Shape.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.o: Box2D/../Box2D/Collision/b2Collision.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.o: Box2D/../Box2D/Common/b2BlockAllocator.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.o: Box2D/../Box2D/Common/b2Math.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.o: Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.o: Box2D/../Box2D/Dynamics/Contacts/b2Contact.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.o: Box2D/../Box2D/Dynamics/Contacts/b2EdgeAndPolygonContact.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.o: Box2D/../Box2D/Dynamics/b2Body.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.o: Box2D/../Box2D/Dynamics/b2Fixture.h - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonAndCircleContact.cpp.o: Box2D/Dynamics/Contacts/b2PolygonAndCircleContact.cpp -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonAndCircleContact.cpp.o: Box2D/../Box2D/Collision/Shapes/b2Shape.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonAndCircleContact.cpp.o: Box2D/../Box2D/Collision/b2Collision.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonAndCircleContact.cpp.o: Box2D/../Box2D/Common/b2BlockAllocator.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonAndCircleContact.cpp.o: Box2D/../Box2D/Common/b2Math.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonAndCircleContact.cpp.o: Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonAndCircleContact.cpp.o: Box2D/../Box2D/Dynamics/Contacts/b2Contact.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonAndCircleContact.cpp.o: Box2D/../Box2D/Dynamics/Contacts/b2PolygonAndCircleContact.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonAndCircleContact.cpp.o: Box2D/../Box2D/Dynamics/b2Body.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonAndCircleContact.cpp.o: Box2D/../Box2D/Dynamics/b2Fixture.h - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.o: Box2D/Dynamics/Contacts/b2PolygonContact.cpp -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.o: Box2D/../Box2D/Collision/Shapes/b2Shape.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.o: Box2D/../Box2D/Collision/b2Collision.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.o: Box2D/../Box2D/Collision/b2Distance.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.o: Box2D/../Box2D/Collision/b2TimeOfImpact.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.o: Box2D/../Box2D/Common/b2BlockAllocator.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.o: Box2D/../Box2D/Common/b2Math.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.o: Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.o: Box2D/../Box2D/Dynamics/Contacts/b2Contact.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.o: Box2D/../Box2D/Dynamics/Contacts/b2PolygonContact.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.o: Box2D/../Box2D/Dynamics/b2Body.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.o: Box2D/../Box2D/Dynamics/b2Fixture.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.o: Box2D/../Box2D/Dynamics/b2WorldCallbacks.h - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2DistanceJoint.cpp.o: Box2D/Dynamics/Joints/b2DistanceJoint.cpp -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2DistanceJoint.cpp.o: Box2D/../Box2D/Collision/Shapes/b2Shape.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2DistanceJoint.cpp.o: Box2D/../Box2D/Collision/b2Collision.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2DistanceJoint.cpp.o: Box2D/../Box2D/Common/b2BlockAllocator.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2DistanceJoint.cpp.o: Box2D/../Box2D/Common/b2Math.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2DistanceJoint.cpp.o: Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2DistanceJoint.cpp.o: Box2D/../Box2D/Dynamics/Joints/b2DistanceJoint.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2DistanceJoint.cpp.o: Box2D/../Box2D/Dynamics/Joints/b2Joint.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2DistanceJoint.cpp.o: Box2D/../Box2D/Dynamics/b2Body.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2DistanceJoint.cpp.o: Box2D/../Box2D/Dynamics/b2TimeStep.h - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2FrictionJoint.cpp.o: Box2D/Dynamics/Joints/b2FrictionJoint.cpp -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2FrictionJoint.cpp.o: Box2D/../Box2D/Collision/Shapes/b2Shape.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2FrictionJoint.cpp.o: Box2D/../Box2D/Collision/b2Collision.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2FrictionJoint.cpp.o: Box2D/../Box2D/Common/b2BlockAllocator.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2FrictionJoint.cpp.o: Box2D/../Box2D/Common/b2Math.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2FrictionJoint.cpp.o: Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2FrictionJoint.cpp.o: Box2D/../Box2D/Dynamics/Joints/b2FrictionJoint.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2FrictionJoint.cpp.o: Box2D/../Box2D/Dynamics/Joints/b2Joint.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2FrictionJoint.cpp.o: Box2D/../Box2D/Dynamics/b2Body.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2FrictionJoint.cpp.o: Box2D/../Box2D/Dynamics/b2TimeStep.h - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2GearJoint.cpp.o: Box2D/Dynamics/Joints/b2GearJoint.cpp -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2GearJoint.cpp.o: Box2D/../Box2D/Collision/Shapes/b2Shape.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2GearJoint.cpp.o: Box2D/../Box2D/Collision/b2Collision.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2GearJoint.cpp.o: Box2D/../Box2D/Common/b2BlockAllocator.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2GearJoint.cpp.o: Box2D/../Box2D/Common/b2Math.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2GearJoint.cpp.o: Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2GearJoint.cpp.o: Box2D/../Box2D/Dynamics/Joints/b2GearJoint.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2GearJoint.cpp.o: Box2D/../Box2D/Dynamics/Joints/b2Joint.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2GearJoint.cpp.o: Box2D/../Box2D/Dynamics/Joints/b2PrismaticJoint.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2GearJoint.cpp.o: Box2D/../Box2D/Dynamics/Joints/b2RevoluteJoint.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2GearJoint.cpp.o: Box2D/../Box2D/Dynamics/b2Body.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2GearJoint.cpp.o: Box2D/../Box2D/Dynamics/b2TimeStep.h - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o: Box2D/Dynamics/Joints/b2Joint.cpp -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o: Box2D/../Box2D/Collision/Shapes/b2Shape.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o: Box2D/../Box2D/Collision/b2BroadPhase.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o: Box2D/../Box2D/Collision/b2Collision.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o: Box2D/../Box2D/Collision/b2DynamicTree.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o: Box2D/../Box2D/Common/b2BlockAllocator.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o: Box2D/../Box2D/Common/b2GrowableStack.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o: Box2D/../Box2D/Common/b2Math.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o: Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o: Box2D/../Box2D/Common/b2StackAllocator.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o: Box2D/../Box2D/Dynamics/Joints/b2DistanceJoint.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o: Box2D/../Box2D/Dynamics/Joints/b2FrictionJoint.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o: Box2D/../Box2D/Dynamics/Joints/b2GearJoint.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o: Box2D/../Box2D/Dynamics/Joints/b2Joint.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o: Box2D/../Box2D/Dynamics/Joints/b2MotorJoint.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o: Box2D/../Box2D/Dynamics/Joints/b2MouseJoint.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o: Box2D/../Box2D/Dynamics/Joints/b2PrismaticJoint.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o: Box2D/../Box2D/Dynamics/Joints/b2PulleyJoint.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o: Box2D/../Box2D/Dynamics/Joints/b2RevoluteJoint.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o: Box2D/../Box2D/Dynamics/Joints/b2RopeJoint.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o: Box2D/../Box2D/Dynamics/Joints/b2WeldJoint.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o: Box2D/../Box2D/Dynamics/Joints/b2WheelJoint.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o: Box2D/../Box2D/Dynamics/b2Body.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o: Box2D/../Box2D/Dynamics/b2ContactManager.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o: Box2D/../Box2D/Dynamics/b2TimeStep.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o: Box2D/../Box2D/Dynamics/b2World.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o: Box2D/../Box2D/Dynamics/b2WorldCallbacks.h - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MotorJoint.cpp.o: Box2D/Dynamics/Joints/b2MotorJoint.cpp -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MotorJoint.cpp.o: Box2D/../Box2D/Collision/Shapes/b2Shape.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MotorJoint.cpp.o: Box2D/../Box2D/Collision/b2Collision.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MotorJoint.cpp.o: Box2D/../Box2D/Common/b2BlockAllocator.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MotorJoint.cpp.o: Box2D/../Box2D/Common/b2Math.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MotorJoint.cpp.o: Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MotorJoint.cpp.o: Box2D/../Box2D/Dynamics/Joints/b2Joint.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MotorJoint.cpp.o: Box2D/../Box2D/Dynamics/Joints/b2MotorJoint.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MotorJoint.cpp.o: Box2D/../Box2D/Dynamics/b2Body.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MotorJoint.cpp.o: Box2D/../Box2D/Dynamics/b2TimeStep.h - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MouseJoint.cpp.o: Box2D/Dynamics/Joints/b2MouseJoint.cpp -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MouseJoint.cpp.o: Box2D/../Box2D/Collision/Shapes/b2Shape.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MouseJoint.cpp.o: Box2D/../Box2D/Collision/b2Collision.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MouseJoint.cpp.o: Box2D/../Box2D/Common/b2BlockAllocator.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MouseJoint.cpp.o: Box2D/../Box2D/Common/b2Math.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MouseJoint.cpp.o: Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MouseJoint.cpp.o: Box2D/../Box2D/Dynamics/Joints/b2Joint.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MouseJoint.cpp.o: Box2D/../Box2D/Dynamics/Joints/b2MouseJoint.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MouseJoint.cpp.o: Box2D/../Box2D/Dynamics/b2Body.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MouseJoint.cpp.o: Box2D/../Box2D/Dynamics/b2TimeStep.h - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PrismaticJoint.cpp.o: Box2D/Dynamics/Joints/b2PrismaticJoint.cpp -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PrismaticJoint.cpp.o: Box2D/../Box2D/Collision/Shapes/b2Shape.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PrismaticJoint.cpp.o: Box2D/../Box2D/Collision/b2Collision.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PrismaticJoint.cpp.o: Box2D/../Box2D/Common/b2BlockAllocator.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PrismaticJoint.cpp.o: Box2D/../Box2D/Common/b2Math.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PrismaticJoint.cpp.o: Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PrismaticJoint.cpp.o: Box2D/../Box2D/Dynamics/Joints/b2Joint.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PrismaticJoint.cpp.o: Box2D/../Box2D/Dynamics/Joints/b2PrismaticJoint.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PrismaticJoint.cpp.o: Box2D/../Box2D/Dynamics/b2Body.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PrismaticJoint.cpp.o: Box2D/../Box2D/Dynamics/b2TimeStep.h - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PulleyJoint.cpp.o: Box2D/Dynamics/Joints/b2PulleyJoint.cpp -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PulleyJoint.cpp.o: Box2D/../Box2D/Collision/Shapes/b2Shape.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PulleyJoint.cpp.o: Box2D/../Box2D/Collision/b2Collision.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PulleyJoint.cpp.o: Box2D/../Box2D/Common/b2BlockAllocator.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PulleyJoint.cpp.o: Box2D/../Box2D/Common/b2Math.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PulleyJoint.cpp.o: Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PulleyJoint.cpp.o: Box2D/../Box2D/Dynamics/Joints/b2Joint.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PulleyJoint.cpp.o: Box2D/../Box2D/Dynamics/Joints/b2PulleyJoint.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PulleyJoint.cpp.o: Box2D/../Box2D/Dynamics/b2Body.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PulleyJoint.cpp.o: Box2D/../Box2D/Dynamics/b2TimeStep.h - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RevoluteJoint.cpp.o: Box2D/Dynamics/Joints/b2RevoluteJoint.cpp -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RevoluteJoint.cpp.o: Box2D/../Box2D/Collision/Shapes/b2Shape.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RevoluteJoint.cpp.o: Box2D/../Box2D/Collision/b2Collision.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RevoluteJoint.cpp.o: Box2D/../Box2D/Common/b2BlockAllocator.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RevoluteJoint.cpp.o: Box2D/../Box2D/Common/b2Math.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RevoluteJoint.cpp.o: Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RevoluteJoint.cpp.o: Box2D/../Box2D/Dynamics/Joints/b2Joint.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RevoluteJoint.cpp.o: Box2D/../Box2D/Dynamics/Joints/b2RevoluteJoint.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RevoluteJoint.cpp.o: Box2D/../Box2D/Dynamics/b2Body.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RevoluteJoint.cpp.o: Box2D/../Box2D/Dynamics/b2TimeStep.h - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RopeJoint.cpp.o: Box2D/Dynamics/Joints/b2RopeJoint.cpp -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RopeJoint.cpp.o: Box2D/../Box2D/Collision/Shapes/b2Shape.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RopeJoint.cpp.o: Box2D/../Box2D/Collision/b2Collision.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RopeJoint.cpp.o: Box2D/../Box2D/Common/b2BlockAllocator.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RopeJoint.cpp.o: Box2D/../Box2D/Common/b2Math.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RopeJoint.cpp.o: Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RopeJoint.cpp.o: Box2D/../Box2D/Dynamics/Joints/b2Joint.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RopeJoint.cpp.o: Box2D/../Box2D/Dynamics/Joints/b2RopeJoint.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RopeJoint.cpp.o: Box2D/../Box2D/Dynamics/b2Body.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RopeJoint.cpp.o: Box2D/../Box2D/Dynamics/b2TimeStep.h - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WeldJoint.cpp.o: Box2D/Dynamics/Joints/b2WeldJoint.cpp -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WeldJoint.cpp.o: Box2D/../Box2D/Collision/Shapes/b2Shape.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WeldJoint.cpp.o: Box2D/../Box2D/Collision/b2Collision.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WeldJoint.cpp.o: Box2D/../Box2D/Common/b2BlockAllocator.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WeldJoint.cpp.o: Box2D/../Box2D/Common/b2Math.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WeldJoint.cpp.o: Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WeldJoint.cpp.o: Box2D/../Box2D/Dynamics/Joints/b2Joint.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WeldJoint.cpp.o: Box2D/../Box2D/Dynamics/Joints/b2WeldJoint.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WeldJoint.cpp.o: Box2D/../Box2D/Dynamics/b2Body.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WeldJoint.cpp.o: Box2D/../Box2D/Dynamics/b2TimeStep.h - -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WheelJoint.cpp.o: Box2D/Dynamics/Joints/b2WheelJoint.cpp -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WheelJoint.cpp.o: Box2D/../Box2D/Collision/Shapes/b2Shape.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WheelJoint.cpp.o: Box2D/../Box2D/Collision/b2Collision.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WheelJoint.cpp.o: Box2D/../Box2D/Common/b2BlockAllocator.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WheelJoint.cpp.o: Box2D/../Box2D/Common/b2Math.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WheelJoint.cpp.o: Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WheelJoint.cpp.o: Box2D/../Box2D/Dynamics/Joints/b2Joint.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WheelJoint.cpp.o: Box2D/../Box2D/Dynamics/Joints/b2WheelJoint.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WheelJoint.cpp.o: Box2D/../Box2D/Dynamics/b2Body.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WheelJoint.cpp.o: Box2D/../Box2D/Dynamics/b2TimeStep.h - -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.o: Box2D/Dynamics/b2Body.cpp -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.o: Box2D/../Box2D/Collision/Shapes/b2Shape.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.o: Box2D/../Box2D/Collision/b2BroadPhase.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.o: Box2D/../Box2D/Collision/b2Collision.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.o: Box2D/../Box2D/Collision/b2DynamicTree.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.o: Box2D/../Box2D/Common/b2BlockAllocator.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.o: Box2D/../Box2D/Common/b2GrowableStack.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.o: Box2D/../Box2D/Common/b2Math.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.o: Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.o: Box2D/../Box2D/Common/b2StackAllocator.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.o: Box2D/../Box2D/Dynamics/Contacts/b2Contact.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.o: Box2D/../Box2D/Dynamics/Joints/b2Joint.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.o: Box2D/../Box2D/Dynamics/b2Body.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.o: Box2D/../Box2D/Dynamics/b2ContactManager.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.o: Box2D/../Box2D/Dynamics/b2Fixture.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.o: Box2D/../Box2D/Dynamics/b2TimeStep.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.o: Box2D/../Box2D/Dynamics/b2World.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.o: Box2D/../Box2D/Dynamics/b2WorldCallbacks.h - -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.o: Box2D/Dynamics/b2ContactManager.cpp -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.o: Box2D/../Box2D/Collision/Shapes/b2Shape.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.o: Box2D/../Box2D/Collision/b2BroadPhase.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.o: Box2D/../Box2D/Collision/b2Collision.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.o: Box2D/../Box2D/Collision/b2DynamicTree.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.o: Box2D/../Box2D/Common/b2BlockAllocator.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.o: Box2D/../Box2D/Common/b2GrowableStack.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.o: Box2D/../Box2D/Common/b2Math.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.o: Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.o: Box2D/../Box2D/Dynamics/Contacts/b2Contact.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.o: Box2D/../Box2D/Dynamics/b2Body.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.o: Box2D/../Box2D/Dynamics/b2ContactManager.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.o: Box2D/../Box2D/Dynamics/b2Fixture.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.o: Box2D/../Box2D/Dynamics/b2WorldCallbacks.h - -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o: Box2D/Dynamics/b2Fixture.cpp -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o: Box2D/../Box2D/Collision/Shapes/b2ChainShape.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o: Box2D/../Box2D/Collision/Shapes/b2CircleShape.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o: Box2D/../Box2D/Collision/Shapes/b2EdgeShape.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o: Box2D/../Box2D/Collision/Shapes/b2PolygonShape.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o: Box2D/../Box2D/Collision/Shapes/b2Shape.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o: Box2D/../Box2D/Collision/b2BroadPhase.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o: Box2D/../Box2D/Collision/b2Collision.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o: Box2D/../Box2D/Collision/b2DynamicTree.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o: Box2D/../Box2D/Common/b2BlockAllocator.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o: Box2D/../Box2D/Common/b2GrowableStack.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o: Box2D/../Box2D/Common/b2Math.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o: Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o: Box2D/../Box2D/Common/b2StackAllocator.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o: Box2D/../Box2D/Dynamics/Contacts/b2Contact.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o: Box2D/../Box2D/Dynamics/b2Body.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o: Box2D/../Box2D/Dynamics/b2ContactManager.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o: Box2D/../Box2D/Dynamics/b2Fixture.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o: Box2D/../Box2D/Dynamics/b2TimeStep.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o: Box2D/../Box2D/Dynamics/b2World.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o: Box2D/../Box2D/Dynamics/b2WorldCallbacks.h - -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o: Box2D/Dynamics/b2Island.cpp -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o: Box2D/../Box2D/Collision/Shapes/b2Shape.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o: Box2D/../Box2D/Collision/b2BroadPhase.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o: Box2D/../Box2D/Collision/b2Collision.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o: Box2D/../Box2D/Collision/b2Distance.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o: Box2D/../Box2D/Collision/b2DynamicTree.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o: Box2D/../Box2D/Common/b2BlockAllocator.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o: Box2D/../Box2D/Common/b2GrowableStack.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o: Box2D/../Box2D/Common/b2Math.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o: Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o: Box2D/../Box2D/Common/b2StackAllocator.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o: Box2D/../Box2D/Common/b2Timer.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o: Box2D/../Box2D/Dynamics/Contacts/b2Contact.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o: Box2D/../Box2D/Dynamics/Contacts/b2ContactSolver.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o: Box2D/../Box2D/Dynamics/Joints/b2Joint.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o: Box2D/../Box2D/Dynamics/b2Body.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o: Box2D/../Box2D/Dynamics/b2ContactManager.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o: Box2D/../Box2D/Dynamics/b2Fixture.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o: Box2D/../Box2D/Dynamics/b2Island.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o: Box2D/../Box2D/Dynamics/b2TimeStep.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o: Box2D/../Box2D/Dynamics/b2World.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o: Box2D/../Box2D/Dynamics/b2WorldCallbacks.h - -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o: Box2D/Dynamics/b2World.cpp -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o: Box2D/../Box2D/Collision/Shapes/b2ChainShape.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o: Box2D/../Box2D/Collision/Shapes/b2CircleShape.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o: Box2D/../Box2D/Collision/Shapes/b2EdgeShape.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o: Box2D/../Box2D/Collision/Shapes/b2PolygonShape.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o: Box2D/../Box2D/Collision/Shapes/b2Shape.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o: Box2D/../Box2D/Collision/b2BroadPhase.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o: Box2D/../Box2D/Collision/b2Collision.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o: Box2D/../Box2D/Collision/b2Distance.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o: Box2D/../Box2D/Collision/b2DynamicTree.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o: Box2D/../Box2D/Collision/b2TimeOfImpact.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o: Box2D/../Box2D/Common/b2BlockAllocator.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o: Box2D/../Box2D/Common/b2Draw.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o: Box2D/../Box2D/Common/b2GrowableStack.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o: Box2D/../Box2D/Common/b2Math.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o: Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o: Box2D/../Box2D/Common/b2StackAllocator.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o: Box2D/../Box2D/Common/b2Timer.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o: Box2D/../Box2D/Dynamics/Contacts/b2Contact.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o: Box2D/../Box2D/Dynamics/Contacts/b2ContactSolver.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o: Box2D/../Box2D/Dynamics/Joints/b2Joint.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o: Box2D/../Box2D/Dynamics/Joints/b2PulleyJoint.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o: Box2D/../Box2D/Dynamics/b2Body.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o: Box2D/../Box2D/Dynamics/b2ContactManager.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o: Box2D/../Box2D/Dynamics/b2Fixture.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o: Box2D/../Box2D/Dynamics/b2Island.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o: Box2D/../Box2D/Dynamics/b2TimeStep.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o: Box2D/../Box2D/Dynamics/b2World.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o: Box2D/../Box2D/Dynamics/b2WorldCallbacks.h - -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2WorldCallbacks.cpp.o: Box2D/Dynamics/b2WorldCallbacks.cpp -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2WorldCallbacks.cpp.o: Box2D/../Box2D/Collision/Shapes/b2Shape.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2WorldCallbacks.cpp.o: Box2D/../Box2D/Collision/b2Collision.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2WorldCallbacks.cpp.o: Box2D/../Box2D/Common/b2BlockAllocator.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2WorldCallbacks.cpp.o: Box2D/../Box2D/Common/b2Math.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2WorldCallbacks.cpp.o: Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2WorldCallbacks.cpp.o: Box2D/../Box2D/Dynamics/b2Body.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2WorldCallbacks.cpp.o: Box2D/../Box2D/Dynamics/b2Fixture.h -Box2D/CMakeFiles/Box2D.dir/Dynamics/b2WorldCallbacks.cpp.o: Box2D/../Box2D/Dynamics/b2WorldCallbacks.h - -Box2D/CMakeFiles/Box2D.dir/Rope/b2Rope.cpp.o: Box2D/Rope/b2Rope.cpp -Box2D/CMakeFiles/Box2D.dir/Rope/b2Rope.cpp.o: Box2D/../Box2D/Common/b2Draw.h -Box2D/CMakeFiles/Box2D.dir/Rope/b2Rope.cpp.o: Box2D/../Box2D/Common/b2Math.h -Box2D/CMakeFiles/Box2D.dir/Rope/b2Rope.cpp.o: Box2D/../Box2D/Common/b2Settings.h -Box2D/CMakeFiles/Box2D.dir/Rope/b2Rope.cpp.o: Box2D/../Box2D/Rope/b2Rope.h - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/flags.make b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/flags.make deleted file mode 100644 index a77eb80..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/flags.make +++ /dev/null @@ -1,8 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 2.8 - -# compile CXX with /usr/bin/c++ -CXX_FLAGS = -I/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/.. - -CXX_DEFINES = - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/link.txt b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/link.txt deleted file mode 100644 index 3291ef5..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/link.txt +++ /dev/null @@ -1,2 +0,0 @@ -/usr/bin/ar cr libBox2D.a CMakeFiles/Box2D.dir/Dynamics/Joints/b2DistanceJoint.cpp.o CMakeFiles/Box2D.dir/Dynamics/Joints/b2FrictionJoint.cpp.o CMakeFiles/Box2D.dir/Dynamics/Joints/b2GearJoint.cpp.o CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o CMakeFiles/Box2D.dir/Dynamics/Joints/b2MotorJoint.cpp.o CMakeFiles/Box2D.dir/Dynamics/Joints/b2MouseJoint.cpp.o CMakeFiles/Box2D.dir/Dynamics/Joints/b2PrismaticJoint.cpp.o CMakeFiles/Box2D.dir/Dynamics/Joints/b2PulleyJoint.cpp.o CMakeFiles/Box2D.dir/Dynamics/Joints/b2RevoluteJoint.cpp.o CMakeFiles/Box2D.dir/Dynamics/Joints/b2RopeJoint.cpp.o CMakeFiles/Box2D.dir/Dynamics/Joints/b2WeldJoint.cpp.o CMakeFiles/Box2D.dir/Dynamics/Joints/b2WheelJoint.cpp.o CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.o CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.o CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonAndCircleContact.cpp.o CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndCircleContact.cpp.o CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.o CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndCircleContact.cpp.o CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndPolygonContact.cpp.o CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.o CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.o CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.o CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o CMakeFiles/Box2D.dir/Dynamics/b2WorldCallbacks.cpp.o CMakeFiles/Box2D.dir/Common/b2BlockAllocator.cpp.o CMakeFiles/Box2D.dir/Common/b2Draw.cpp.o CMakeFiles/Box2D.dir/Common/b2Math.cpp.o CMakeFiles/Box2D.dir/Common/b2Settings.cpp.o CMakeFiles/Box2D.dir/Common/b2StackAllocator.cpp.o CMakeFiles/Box2D.dir/Common/b2Timer.cpp.o CMakeFiles/Box2D.dir/Collision/Shapes/b2CircleShape.cpp.o CMakeFiles/Box2D.dir/Collision/Shapes/b2EdgeShape.cpp.o CMakeFiles/Box2D.dir/Collision/Shapes/b2ChainShape.cpp.o CMakeFiles/Box2D.dir/Collision/Shapes/b2PolygonShape.cpp.o CMakeFiles/Box2D.dir/Collision/b2BroadPhase.cpp.o CMakeFiles/Box2D.dir/Collision/b2CollideCircle.cpp.o CMakeFiles/Box2D.dir/Collision/b2CollideEdge.cpp.o CMakeFiles/Box2D.dir/Collision/b2CollidePolygon.cpp.o CMakeFiles/Box2D.dir/Collision/b2Collision.cpp.o CMakeFiles/Box2D.dir/Collision/b2Distance.cpp.o CMakeFiles/Box2D.dir/Collision/b2DynamicTree.cpp.o CMakeFiles/Box2D.dir/Collision/b2TimeOfImpact.cpp.o CMakeFiles/Box2D.dir/Rope/b2Rope.cpp.o -/usr/bin/ranlib libBox2D.a diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/progress.make b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/progress.make deleted file mode 100644 index 56aa4a5..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/progress.make +++ /dev/null @@ -1,47 +0,0 @@ -CMAKE_PROGRESS_1 = -CMAKE_PROGRESS_2 = 1 -CMAKE_PROGRESS_3 = 2 -CMAKE_PROGRESS_4 = 3 -CMAKE_PROGRESS_5 = 4 -CMAKE_PROGRESS_6 = 5 -CMAKE_PROGRESS_7 = 6 -CMAKE_PROGRESS_8 = 7 -CMAKE_PROGRESS_9 = 8 -CMAKE_PROGRESS_10 = 9 -CMAKE_PROGRESS_11 = 10 -CMAKE_PROGRESS_12 = 11 -CMAKE_PROGRESS_13 = 12 -CMAKE_PROGRESS_14 = 13 -CMAKE_PROGRESS_15 = 14 -CMAKE_PROGRESS_16 = -CMAKE_PROGRESS_17 = 15 -CMAKE_PROGRESS_18 = 16 -CMAKE_PROGRESS_19 = 17 -CMAKE_PROGRESS_20 = 18 -CMAKE_PROGRESS_21 = 19 -CMAKE_PROGRESS_22 = 20 -CMAKE_PROGRESS_23 = 21 -CMAKE_PROGRESS_24 = 22 -CMAKE_PROGRESS_25 = 23 -CMAKE_PROGRESS_26 = 24 -CMAKE_PROGRESS_27 = 25 -CMAKE_PROGRESS_28 = 26 -CMAKE_PROGRESS_29 = 27 -CMAKE_PROGRESS_30 = 28 -CMAKE_PROGRESS_31 = -CMAKE_PROGRESS_32 = 29 -CMAKE_PROGRESS_33 = 30 -CMAKE_PROGRESS_34 = 31 -CMAKE_PROGRESS_35 = 32 -CMAKE_PROGRESS_36 = 33 -CMAKE_PROGRESS_37 = 34 -CMAKE_PROGRESS_38 = 35 -CMAKE_PROGRESS_39 = 36 -CMAKE_PROGRESS_40 = 37 -CMAKE_PROGRESS_41 = 38 -CMAKE_PROGRESS_42 = 39 -CMAKE_PROGRESS_43 = 40 -CMAKE_PROGRESS_44 = 41 -CMAKE_PROGRESS_45 = 42 -CMAKE_PROGRESS_46 = - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/CMakeDirectoryInformation.cmake b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/CMakeDirectoryInformation.cmake deleted file mode 100644 index 21c61ba..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/CMakeDirectoryInformation.cmake +++ /dev/null @@ -1,16 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 2.8 - -# Relative path conversion top directories. -SET(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D") -SET(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D") - -# Force unix paths in dependencies. -SET(CMAKE_FORCE_UNIX_PATHS 1) - - -# The C and CXX include file regular expressions for this directory. -SET(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$") -SET(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$") -SET(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN}) -SET(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN}) diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/CMakeOutput.log b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/CMakeOutput.log deleted file mode 100644 index 34833f1..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/CMakeOutput.log +++ /dev/null @@ -1,263 +0,0 @@ -The system is: Linux - 3.13.0-48-generic - x86_64 -Compiling the C compiler identification source file "CMakeCCompilerId.c" succeeded. -Compiler: /usr/bin/cc -Build flags: -Id flags: - -The output was: -0 - - -Compilation of the C compiler identification source "CMakeCCompilerId.c" produced "a.out" - -The C compiler identification is GNU, found in "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/2.8.12.2/CompilerIdC/a.out" - -Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" succeeded. -Compiler: /usr/bin/c++ -Build flags: -Id flags: - -The output was: -0 - - -Compilation of the CXX compiler identification source "CMakeCXXCompilerId.cpp" produced "a.out" - -The CXX compiler identification is GNU, found in "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/2.8.12.2/CompilerIdCXX/a.out" - -Determining if the C compiler works passed with the following output: -Change Dir: /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/CMakeTmp - -Run Build Command:/usr/bin/make "cmTryCompileExec2155960696/fast" -/usr/bin/make -f CMakeFiles/cmTryCompileExec2155960696.dir/build.make CMakeFiles/cmTryCompileExec2155960696.dir/build -make[1]: Entering directory `/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/CMakeTmp' -/usr/bin/cmake -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/CMakeTmp/CMakeFiles 1 -Building C object CMakeFiles/cmTryCompileExec2155960696.dir/testCCompiler.c.o -/usr/bin/cc -o CMakeFiles/cmTryCompileExec2155960696.dir/testCCompiler.c.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/CMakeTmp/testCCompiler.c -Linking C executable cmTryCompileExec2155960696 -/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTryCompileExec2155960696.dir/link.txt --verbose=1 -/usr/bin/cc CMakeFiles/cmTryCompileExec2155960696.dir/testCCompiler.c.o -o cmTryCompileExec2155960696 -rdynamic -make[1]: Leaving directory `/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/CMakeTmp' - - -Detecting C compiler ABI info compiled with the following output: -Change Dir: /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/CMakeTmp - -Run Build Command:/usr/bin/make "cmTryCompileExec2188823615/fast" -/usr/bin/make -f CMakeFiles/cmTryCompileExec2188823615.dir/build.make CMakeFiles/cmTryCompileExec2188823615.dir/build -make[1]: Entering directory `/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/CMakeTmp' -/usr/bin/cmake -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/CMakeTmp/CMakeFiles 1 -Building C object CMakeFiles/cmTryCompileExec2188823615.dir/CMakeCCompilerABI.c.o -/usr/bin/cc -o CMakeFiles/cmTryCompileExec2188823615.dir/CMakeCCompilerABI.c.o -c /usr/share/cmake-2.8/Modules/CMakeCCompilerABI.c -Linking C executable cmTryCompileExec2188823615 -/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTryCompileExec2188823615.dir/link.txt --verbose=1 -/usr/bin/cc -v CMakeFiles/cmTryCompileExec2188823615.dir/CMakeCCompilerABI.c.o -o cmTryCompileExec2188823615 -rdynamic -Using built-in specs. -COLLECT_GCC=/usr/bin/cc -COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/4.8/lto-wrapper -Target: x86_64-linux-gnu -Configured with: ../src/configure -v --with-pkgversion='Ubuntu 4.8.2-19ubuntu1' --with-bugurl=file:///usr/share/doc/gcc-4.8/README.Bugs --enable-languages=c,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-4.8 --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.8 --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-gnu-unique-object --disable-libmudflap --enable-plugin --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-4.8-amd64/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-4.8-amd64 --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-4.8-amd64 --with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --enable-objc-gc --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu -Thread model: posix -gcc version 4.8.2 (Ubuntu 4.8.2-19ubuntu1) -COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/4.8/:/usr/lib/gcc/x86_64-linux-gnu/4.8/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/4.8/:/usr/lib/gcc/x86_64-linux-gnu/ -LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/4.8/:/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../:/lib/:/usr/lib/ -COLLECT_GCC_OPTIONS='-v' '-o' 'cmTryCompileExec2188823615' '-rdynamic' '-mtune=generic' '-march=x86-64' - /usr/lib/gcc/x86_64-linux-gnu/4.8/collect2 --sysroot=/ --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -z relro -o cmTryCompileExec2188823615 /usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/crt1.o /usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/4.8/crtbegin.o -L/usr/lib/gcc/x86_64-linux-gnu/4.8 -L/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/4.8/../../.. CMakeFiles/cmTryCompileExec2188823615.dir/CMakeCCompilerABI.c.o -lgcc --as-needed -lgcc_s --no-as-needed -lc -lgcc --as-needed -lgcc_s --no-as-needed /usr/lib/gcc/x86_64-linux-gnu/4.8/crtend.o /usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/crtn.o -make[1]: Leaving directory `/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/CMakeTmp' - - -Parsed C implicit link information from above output: - link line regex: [^( *|.*[/\])(ld|([^/\]+-)?ld|collect2)[^/\]*( |$)] - ignore line: [Change Dir: /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/CMakeTmp] - ignore line: [] - ignore line: [Run Build Command:/usr/bin/make "cmTryCompileExec2188823615/fast"] - ignore line: [/usr/bin/make -f CMakeFiles/cmTryCompileExec2188823615.dir/build.make CMakeFiles/cmTryCompileExec2188823615.dir/build] - ignore line: [make[1]: Entering directory `/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/CMakeTmp'] - ignore line: [/usr/bin/cmake -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/CMakeTmp/CMakeFiles 1] - ignore line: [Building C object CMakeFiles/cmTryCompileExec2188823615.dir/CMakeCCompilerABI.c.o] - ignore line: [/usr/bin/cc -o CMakeFiles/cmTryCompileExec2188823615.dir/CMakeCCompilerABI.c.o -c /usr/share/cmake-2.8/Modules/CMakeCCompilerABI.c] - ignore line: [Linking C executable cmTryCompileExec2188823615] - ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTryCompileExec2188823615.dir/link.txt --verbose=1] - ignore line: [/usr/bin/cc -v CMakeFiles/cmTryCompileExec2188823615.dir/CMakeCCompilerABI.c.o -o cmTryCompileExec2188823615 -rdynamic ] - ignore line: [Using built-in specs.] - ignore line: [COLLECT_GCC=/usr/bin/cc] - ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/4.8/lto-wrapper] - ignore line: [Target: x86_64-linux-gnu] - ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 4.8.2-19ubuntu1' --with-bugurl=file:///usr/share/doc/gcc-4.8/README.Bugs --enable-languages=c,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-4.8 --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.8 --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-gnu-unique-object --disable-libmudflap --enable-plugin --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-4.8-amd64/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-4.8-amd64 --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-4.8-amd64 --with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --enable-objc-gc --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu] - ignore line: [Thread model: posix] - ignore line: [gcc version 4.8.2 (Ubuntu 4.8.2-19ubuntu1) ] - ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/4.8/:/usr/lib/gcc/x86_64-linux-gnu/4.8/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/4.8/:/usr/lib/gcc/x86_64-linux-gnu/] - ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/4.8/:/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../:/lib/:/usr/lib/] - ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTryCompileExec2188823615' '-rdynamic' '-mtune=generic' '-march=x86-64'] - link line: [ /usr/lib/gcc/x86_64-linux-gnu/4.8/collect2 --sysroot=/ --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -z relro -o cmTryCompileExec2188823615 /usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/crt1.o /usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/4.8/crtbegin.o -L/usr/lib/gcc/x86_64-linux-gnu/4.8 -L/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/4.8/../../.. CMakeFiles/cmTryCompileExec2188823615.dir/CMakeCCompilerABI.c.o -lgcc --as-needed -lgcc_s --no-as-needed -lc -lgcc --as-needed -lgcc_s --no-as-needed /usr/lib/gcc/x86_64-linux-gnu/4.8/crtend.o /usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/crtn.o] - arg [/usr/lib/gcc/x86_64-linux-gnu/4.8/collect2] ==> ignore - arg [--sysroot=/] ==> ignore - arg [--build-id] ==> ignore - arg [--eh-frame-hdr] ==> ignore - arg [-m] ==> ignore - arg [elf_x86_64] ==> ignore - arg [--hash-style=gnu] ==> ignore - arg [--as-needed] ==> ignore - arg [-export-dynamic] ==> ignore - arg [-dynamic-linker] ==> ignore - arg [/lib64/ld-linux-x86-64.so.2] ==> ignore - arg [-zrelro] ==> ignore - arg [-o] ==> ignore - arg [cmTryCompileExec2188823615] ==> ignore - arg [/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/crt1.o] ==> ignore - arg [/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/crti.o] ==> ignore - arg [/usr/lib/gcc/x86_64-linux-gnu/4.8/crtbegin.o] ==> ignore - arg [-L/usr/lib/gcc/x86_64-linux-gnu/4.8] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/4.8] - arg [-L/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu] - arg [-L/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../lib] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../lib] - arg [-L/lib/x86_64-linux-gnu] ==> dir [/lib/x86_64-linux-gnu] - arg [-L/lib/../lib] ==> dir [/lib/../lib] - arg [-L/usr/lib/x86_64-linux-gnu] ==> dir [/usr/lib/x86_64-linux-gnu] - arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib] - arg [-L/usr/lib/gcc/x86_64-linux-gnu/4.8/../../..] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/4.8/../../..] - arg [CMakeFiles/cmTryCompileExec2188823615.dir/CMakeCCompilerABI.c.o] ==> ignore - arg [-lgcc] ==> lib [gcc] - arg [--as-needed] ==> ignore - arg [-lgcc_s] ==> lib [gcc_s] - arg [--no-as-needed] ==> ignore - arg [-lc] ==> lib [c] - arg [-lgcc] ==> lib [gcc] - arg [--as-needed] ==> ignore - arg [-lgcc_s] ==> lib [gcc_s] - arg [--no-as-needed] ==> ignore - arg [/usr/lib/gcc/x86_64-linux-gnu/4.8/crtend.o] ==> ignore - arg [/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/crtn.o] ==> ignore - remove lib [gcc] - remove lib [gcc_s] - remove lib [gcc] - remove lib [gcc_s] - collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/4.8] ==> [/usr/lib/gcc/x86_64-linux-gnu/4.8] - collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu] - collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../lib] ==> [/usr/lib] - collapse library dir [/lib/x86_64-linux-gnu] ==> [/lib/x86_64-linux-gnu] - collapse library dir [/lib/../lib] ==> [/lib] - collapse library dir [/usr/lib/x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu] - collapse library dir [/usr/lib/../lib] ==> [/usr/lib] - collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/4.8/../../..] ==> [/usr/lib] - implicit libs: [c] - implicit dirs: [/usr/lib/gcc/x86_64-linux-gnu/4.8;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib] - implicit fwks: [] - - -Determining if the CXX compiler works passed with the following output: -Change Dir: /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/CMakeTmp - -Run Build Command:/usr/bin/make "cmTryCompileExec3063583930/fast" -/usr/bin/make -f CMakeFiles/cmTryCompileExec3063583930.dir/build.make CMakeFiles/cmTryCompileExec3063583930.dir/build -make[1]: Entering directory `/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/CMakeTmp' -/usr/bin/cmake -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/CMakeTmp/CMakeFiles 1 -Building CXX object CMakeFiles/cmTryCompileExec3063583930.dir/testCXXCompiler.cxx.o -/usr/bin/c++ -o CMakeFiles/cmTryCompileExec3063583930.dir/testCXXCompiler.cxx.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/CMakeTmp/testCXXCompiler.cxx -Linking CXX executable cmTryCompileExec3063583930 -/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTryCompileExec3063583930.dir/link.txt --verbose=1 -/usr/bin/c++ CMakeFiles/cmTryCompileExec3063583930.dir/testCXXCompiler.cxx.o -o cmTryCompileExec3063583930 -rdynamic -make[1]: Leaving directory `/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/CMakeTmp' - - -Detecting CXX compiler ABI info compiled with the following output: -Change Dir: /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/CMakeTmp - -Run Build Command:/usr/bin/make "cmTryCompileExec2228353197/fast" -/usr/bin/make -f CMakeFiles/cmTryCompileExec2228353197.dir/build.make CMakeFiles/cmTryCompileExec2228353197.dir/build -make[1]: Entering directory `/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/CMakeTmp' -/usr/bin/cmake -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/CMakeTmp/CMakeFiles 1 -Building CXX object CMakeFiles/cmTryCompileExec2228353197.dir/CMakeCXXCompilerABI.cpp.o -/usr/bin/c++ -o CMakeFiles/cmTryCompileExec2228353197.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-2.8/Modules/CMakeCXXCompilerABI.cpp -Linking CXX executable cmTryCompileExec2228353197 -/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTryCompileExec2228353197.dir/link.txt --verbose=1 -/usr/bin/c++ -v CMakeFiles/cmTryCompileExec2228353197.dir/CMakeCXXCompilerABI.cpp.o -o cmTryCompileExec2228353197 -rdynamic -Using built-in specs. -COLLECT_GCC=/usr/bin/c++ -COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/4.8/lto-wrapper -Target: x86_64-linux-gnu -Configured with: ../src/configure -v --with-pkgversion='Ubuntu 4.8.2-19ubuntu1' --with-bugurl=file:///usr/share/doc/gcc-4.8/README.Bugs --enable-languages=c,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-4.8 --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.8 --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-gnu-unique-object --disable-libmudflap --enable-plugin --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-4.8-amd64/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-4.8-amd64 --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-4.8-amd64 --with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --enable-objc-gc --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu -Thread model: posix -gcc version 4.8.2 (Ubuntu 4.8.2-19ubuntu1) -COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/4.8/:/usr/lib/gcc/x86_64-linux-gnu/4.8/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/4.8/:/usr/lib/gcc/x86_64-linux-gnu/ -LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/4.8/:/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../:/lib/:/usr/lib/ -COLLECT_GCC_OPTIONS='-v' '-o' 'cmTryCompileExec2228353197' '-rdynamic' '-shared-libgcc' '-mtune=generic' '-march=x86-64' - /usr/lib/gcc/x86_64-linux-gnu/4.8/collect2 --sysroot=/ --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -z relro -o cmTryCompileExec2228353197 /usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/crt1.o /usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/4.8/crtbegin.o -L/usr/lib/gcc/x86_64-linux-gnu/4.8 -L/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/4.8/../../.. CMakeFiles/cmTryCompileExec2228353197.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/4.8/crtend.o /usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/crtn.o -make[1]: Leaving directory `/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/CMakeTmp' - - -Parsed CXX implicit link information from above output: - link line regex: [^( *|.*[/\])(ld|([^/\]+-)?ld|collect2)[^/\]*( |$)] - ignore line: [Change Dir: /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/CMakeTmp] - ignore line: [] - ignore line: [Run Build Command:/usr/bin/make "cmTryCompileExec2228353197/fast"] - ignore line: [/usr/bin/make -f CMakeFiles/cmTryCompileExec2228353197.dir/build.make CMakeFiles/cmTryCompileExec2228353197.dir/build] - ignore line: [make[1]: Entering directory `/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/CMakeTmp'] - ignore line: [/usr/bin/cmake -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/CMakeTmp/CMakeFiles 1] - ignore line: [Building CXX object CMakeFiles/cmTryCompileExec2228353197.dir/CMakeCXXCompilerABI.cpp.o] - ignore line: [/usr/bin/c++ -o CMakeFiles/cmTryCompileExec2228353197.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-2.8/Modules/CMakeCXXCompilerABI.cpp] - ignore line: [Linking CXX executable cmTryCompileExec2228353197] - ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTryCompileExec2228353197.dir/link.txt --verbose=1] - ignore line: [/usr/bin/c++ -v CMakeFiles/cmTryCompileExec2228353197.dir/CMakeCXXCompilerABI.cpp.o -o cmTryCompileExec2228353197 -rdynamic ] - ignore line: [Using built-in specs.] - ignore line: [COLLECT_GCC=/usr/bin/c++] - ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/4.8/lto-wrapper] - ignore line: [Target: x86_64-linux-gnu] - ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 4.8.2-19ubuntu1' --with-bugurl=file:///usr/share/doc/gcc-4.8/README.Bugs --enable-languages=c,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-4.8 --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.8 --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-gnu-unique-object --disable-libmudflap --enable-plugin --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-4.8-amd64/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-4.8-amd64 --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-4.8-amd64 --with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --enable-objc-gc --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu] - ignore line: [Thread model: posix] - ignore line: [gcc version 4.8.2 (Ubuntu 4.8.2-19ubuntu1) ] - ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/4.8/:/usr/lib/gcc/x86_64-linux-gnu/4.8/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/4.8/:/usr/lib/gcc/x86_64-linux-gnu/] - ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/4.8/:/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../:/lib/:/usr/lib/] - ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTryCompileExec2228353197' '-rdynamic' '-shared-libgcc' '-mtune=generic' '-march=x86-64'] - link line: [ /usr/lib/gcc/x86_64-linux-gnu/4.8/collect2 --sysroot=/ --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -z relro -o cmTryCompileExec2228353197 /usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/crt1.o /usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/4.8/crtbegin.o -L/usr/lib/gcc/x86_64-linux-gnu/4.8 -L/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/4.8/../../.. CMakeFiles/cmTryCompileExec2228353197.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/4.8/crtend.o /usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/crtn.o] - arg [/usr/lib/gcc/x86_64-linux-gnu/4.8/collect2] ==> ignore - arg [--sysroot=/] ==> ignore - arg [--build-id] ==> ignore - arg [--eh-frame-hdr] ==> ignore - arg [-m] ==> ignore - arg [elf_x86_64] ==> ignore - arg [--hash-style=gnu] ==> ignore - arg [--as-needed] ==> ignore - arg [-export-dynamic] ==> ignore - arg [-dynamic-linker] ==> ignore - arg [/lib64/ld-linux-x86-64.so.2] ==> ignore - arg [-zrelro] ==> ignore - arg [-o] ==> ignore - arg [cmTryCompileExec2228353197] ==> ignore - arg [/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/crt1.o] ==> ignore - arg [/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/crti.o] ==> ignore - arg [/usr/lib/gcc/x86_64-linux-gnu/4.8/crtbegin.o] ==> ignore - arg [-L/usr/lib/gcc/x86_64-linux-gnu/4.8] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/4.8] - arg [-L/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu] - arg [-L/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../lib] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../lib] - arg [-L/lib/x86_64-linux-gnu] ==> dir [/lib/x86_64-linux-gnu] - arg [-L/lib/../lib] ==> dir [/lib/../lib] - arg [-L/usr/lib/x86_64-linux-gnu] ==> dir [/usr/lib/x86_64-linux-gnu] - arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib] - arg [-L/usr/lib/gcc/x86_64-linux-gnu/4.8/../../..] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/4.8/../../..] - arg [CMakeFiles/cmTryCompileExec2228353197.dir/CMakeCXXCompilerABI.cpp.o] ==> ignore - arg [-lstdc++] ==> lib [stdc++] - arg [-lm] ==> lib [m] - arg [-lgcc_s] ==> lib [gcc_s] - arg [-lgcc] ==> lib [gcc] - arg [-lc] ==> lib [c] - arg [-lgcc_s] ==> lib [gcc_s] - arg [-lgcc] ==> lib [gcc] - arg [/usr/lib/gcc/x86_64-linux-gnu/4.8/crtend.o] ==> ignore - arg [/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/crtn.o] ==> ignore - remove lib [gcc_s] - remove lib [gcc] - remove lib [gcc_s] - remove lib [gcc] - collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/4.8] ==> [/usr/lib/gcc/x86_64-linux-gnu/4.8] - collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu] - collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../lib] ==> [/usr/lib] - collapse library dir [/lib/x86_64-linux-gnu] ==> [/lib/x86_64-linux-gnu] - collapse library dir [/lib/../lib] ==> [/lib] - collapse library dir [/usr/lib/x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu] - collapse library dir [/usr/lib/../lib] ==> [/usr/lib] - collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/4.8/../../..] ==> [/usr/lib] - implicit libs: [stdc++;m;c] - implicit dirs: [/usr/lib/gcc/x86_64-linux-gnu/4.8;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib] - implicit fwks: [] - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Export/lib/Box2D/Box2D-targets-noconfig.cmake b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Export/lib/Box2D/Box2D-targets-noconfig.cmake deleted file mode 100644 index b739c27..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Export/lib/Box2D/Box2D-targets-noconfig.cmake +++ /dev/null @@ -1,19 +0,0 @@ -#---------------------------------------------------------------- -# Generated CMake target import file for configuration "". -#---------------------------------------------------------------- - -# Commands may need to know the format version. -set(CMAKE_IMPORT_FILE_VERSION 1) - -# Import target "Box2D" for configuration "" -set_property(TARGET Box2D APPEND PROPERTY IMPORTED_CONFIGURATIONS NOCONFIG) -set_target_properties(Box2D PROPERTIES - IMPORTED_LINK_INTERFACE_LANGUAGES_NOCONFIG "CXX" - IMPORTED_LOCATION_NOCONFIG "${_IMPORT_PREFIX}/lib/libBox2D.a" - ) - -list(APPEND _IMPORT_CHECK_TARGETS Box2D ) -list(APPEND _IMPORT_CHECK_FILES_FOR_Box2D "${_IMPORT_PREFIX}/lib/libBox2D.a" ) - -# Commands beyond this point should not need to know the version. -set(CMAKE_IMPORT_FILE_VERSION) diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Export/lib/Box2D/Box2D-targets.cmake b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Export/lib/Box2D/Box2D-targets.cmake deleted file mode 100644 index 051be3b..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Export/lib/Box2D/Box2D-targets.cmake +++ /dev/null @@ -1,83 +0,0 @@ -# Generated by CMake 2.8.12.2 - -if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" LESS 2.5) - message(FATAL_ERROR "CMake >= 2.6.0 required") -endif() -cmake_policy(PUSH) -cmake_policy(VERSION 2.6) -#---------------------------------------------------------------- -# Generated CMake target import file. -#---------------------------------------------------------------- - -# Commands may need to know the format version. -set(CMAKE_IMPORT_FILE_VERSION 1) - -# Protect against multiple inclusion, which would fail when already imported targets are added once more. -set(_targetsDefined) -set(_targetsNotDefined) -set(_expectedTargets) -foreach(_expectedTarget Box2D) - list(APPEND _expectedTargets ${_expectedTarget}) - if(NOT TARGET ${_expectedTarget}) - list(APPEND _targetsNotDefined ${_expectedTarget}) - endif() - if(TARGET ${_expectedTarget}) - list(APPEND _targetsDefined ${_expectedTarget}) - endif() -endforeach() -if("${_targetsDefined}" STREQUAL "${_expectedTargets}") - set(CMAKE_IMPORT_FILE_VERSION) - cmake_policy(POP) - return() -endif() -if(NOT "${_targetsDefined}" STREQUAL "") - message(FATAL_ERROR "Some (but not all) targets in this export set were already defined.\nTargets Defined: ${_targetsDefined}\nTargets not yet defined: ${_targetsNotDefined}\n") -endif() -unset(_targetsDefined) -unset(_targetsNotDefined) -unset(_expectedTargets) - - -# Compute the installation prefix relative to this file. -get_filename_component(_IMPORT_PREFIX "${CMAKE_CURRENT_LIST_FILE}" PATH) -get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH) -get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH) - -# Create imported target Box2D -add_library(Box2D STATIC IMPORTED) - -# Load information for each installed configuration. -get_filename_component(_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH) -file(GLOB CONFIG_FILES "${_DIR}/Box2D-targets-*.cmake") -foreach(f ${CONFIG_FILES}) - include(${f}) -endforeach() - -# Cleanup temporary variables. -set(_IMPORT_PREFIX) - -# Loop over all imported files and verify that they actually exist -foreach(target ${_IMPORT_CHECK_TARGETS} ) - foreach(file ${_IMPORT_CHECK_FILES_FOR_${target}} ) - if(NOT EXISTS "${file}" ) - message(FATAL_ERROR "The imported target \"${target}\" references the file - \"${file}\" -but this file does not exist. Possible reasons include: -* The file was deleted, renamed, or moved to another location. -* An install or uninstall procedure did not complete successfully. -* The installation package was faulty and contained - \"${CMAKE_CURRENT_LIST_FILE}\" -but not all the files it references. -") - endif() - endforeach() - unset(_IMPORT_CHECK_FILES_FOR_${target}) -endforeach() -unset(_IMPORT_CHECK_TARGETS) - -# This file does not depend on other imported targets which have -# been exported from the same project but in a separate export set. - -# Commands beyond this point should not need to know the version. -set(CMAKE_IMPORT_FILE_VERSION) -cmake_policy(POP) diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Makefile.cmake b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Makefile.cmake deleted file mode 100644 index ad4cde9..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Makefile.cmake +++ /dev/null @@ -1,67 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 2.8 - -# The generator used is: -SET(CMAKE_DEPENDS_GENERATOR "Unix Makefiles") - -# The top level Makefile was generated from the following files: -SET(CMAKE_MAKEFILE_DEPENDS - "CMakeCache.txt" - "CMakeFiles/2.8.12.2/CMakeCCompiler.cmake" - "CMakeFiles/2.8.12.2/CMakeCXXCompiler.cmake" - "CMakeFiles/2.8.12.2/CMakeSystem.cmake" - "CMakeLists.txt" - "/usr/share/cmake-2.8/Modules/CMakeCCompiler.cmake.in" - "/usr/share/cmake-2.8/Modules/CMakeCCompilerABI.c" - "/usr/share/cmake-2.8/Modules/CMakeCInformation.cmake" - "/usr/share/cmake-2.8/Modules/CMakeCXXCompiler.cmake.in" - "/usr/share/cmake-2.8/Modules/CMakeCXXCompilerABI.cpp" - "/usr/share/cmake-2.8/Modules/CMakeCXXInformation.cmake" - "/usr/share/cmake-2.8/Modules/CMakeClDeps.cmake" - "/usr/share/cmake-2.8/Modules/CMakeCommonLanguageInclude.cmake" - "/usr/share/cmake-2.8/Modules/CMakeDetermineCCompiler.cmake" - "/usr/share/cmake-2.8/Modules/CMakeDetermineCXXCompiler.cmake" - "/usr/share/cmake-2.8/Modules/CMakeDetermineCompiler.cmake" - "/usr/share/cmake-2.8/Modules/CMakeDetermineCompilerABI.cmake" - "/usr/share/cmake-2.8/Modules/CMakeDetermineCompilerId.cmake" - "/usr/share/cmake-2.8/Modules/CMakeDetermineSystem.cmake" - "/usr/share/cmake-2.8/Modules/CMakeFindBinUtils.cmake" - "/usr/share/cmake-2.8/Modules/CMakeGenericSystem.cmake" - "/usr/share/cmake-2.8/Modules/CMakeParseImplicitLinkInfo.cmake" - "/usr/share/cmake-2.8/Modules/CMakeSystem.cmake.in" - "/usr/share/cmake-2.8/Modules/CMakeSystemSpecificInformation.cmake" - "/usr/share/cmake-2.8/Modules/CMakeTestCCompiler.cmake" - "/usr/share/cmake-2.8/Modules/CMakeTestCXXCompiler.cmake" - "/usr/share/cmake-2.8/Modules/CMakeTestCompilerCommon.cmake" - "/usr/share/cmake-2.8/Modules/CMakeUnixFindMake.cmake" - "/usr/share/cmake-2.8/Modules/Compiler/GNU-C.cmake" - "/usr/share/cmake-2.8/Modules/Compiler/GNU-CXX.cmake" - "/usr/share/cmake-2.8/Modules/Compiler/GNU.cmake" - "/usr/share/cmake-2.8/Modules/MultiArchCross.cmake" - "/usr/share/cmake-2.8/Modules/Platform/Linux-CXX.cmake" - "/usr/share/cmake-2.8/Modules/Platform/Linux-GNU-C.cmake" - "/usr/share/cmake-2.8/Modules/Platform/Linux-GNU-CXX.cmake" - "/usr/share/cmake-2.8/Modules/Platform/Linux-GNU.cmake" - "/usr/share/cmake-2.8/Modules/Platform/Linux.cmake" - "/usr/share/cmake-2.8/Modules/Platform/UnixPaths.cmake" - ) - -# The corresponding makefile is: -SET(CMAKE_MAKEFILE_OUTPUTS - "Makefile" - "CMakeFiles/cmake.check_cache" - ) - -# Byproducts of CMake generate step: -SET(CMAKE_MAKEFILE_PRODUCTS - "CMakeFiles/2.8.12.2/CMakeSystem.cmake" - "CMakeFiles/2.8.12.2/CMakeCCompiler.cmake" - "CMakeFiles/2.8.12.2/CMakeCXXCompiler.cmake" - "CMakeFiles/2.8.12.2/CMakeCCompiler.cmake" - "CMakeFiles/2.8.12.2/CMakeCXXCompiler.cmake" - "CMakeFiles/CMakeDirectoryInformation.cmake" - ) - -# Dependency information for all targets: -SET(CMAKE_DEPEND_INFO_FILES - ) diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Makefile2 b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Makefile2 deleted file mode 100644 index 79e33a3..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Makefile2 +++ /dev/null @@ -1,64 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 2.8 - -# Default target executed when no arguments are given to make. -default_target: all -.PHONY : default_target - -# The main recursive all target -all: -.PHONY : all - -# The main recursive preinstall target -preinstall: -.PHONY : preinstall - -#============================================================================= -# Special targets provided by cmake. - -# Disable implicit rules so canonical targets will work. -.SUFFIXES: - -# Remove some rules from gmake that .SUFFIXES does not remove. -SUFFIXES = - -.SUFFIXES: .hpux_make_needs_suffix_list - -# Suppress display of executed commands. -$(VERBOSE).SILENT: - -# A target that is always out of date. -cmake_force: -.PHONY : cmake_force - -#============================================================================= -# Set environment variables for the build. - -# The shell in which to execute make rules. -SHELL = /bin/sh - -# The CMake executable. -CMAKE_COMMAND = /usr/bin/cmake - -# The command to remove a file. -RM = /usr/bin/cmake -E remove -f - -# Escaping for special characters. -EQUALS = = - -# The top-level source directory on which CMake was run. -CMAKE_SOURCE_DIR = /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D - -# The top-level build directory on which CMake was run. -CMAKE_BINARY_DIR = /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D - -#============================================================================= -# Special targets to cleanup operation of make. - -# Special rule to run CMake to check the build system integrity. -# No rule that depends on this can have commands that come from listfiles -# because they might be regenerated. -cmake_check_build_system: - $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 -.PHONY : cmake_check_build_system - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/cmake.check_cache b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/cmake.check_cache deleted file mode 100644 index 3dccd73..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/cmake.check_cache +++ /dev/null @@ -1 +0,0 @@ -# This file is generated by cmake for dependency checking of the CMakeCache.txt file diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/progress.marks b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/progress.marks deleted file mode 100644 index d81cc07..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/progress.marks +++ /dev/null @@ -1 +0,0 @@ -42 diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeLists.txt b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeLists.txt deleted file mode 100644 index b800bcc..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeLists.txt +++ /dev/null @@ -1,207 +0,0 @@ -set(BOX2D_Collision_SRCS - Collision/b2BroadPhase.cpp - Collision/b2CollideCircle.cpp - Collision/b2CollideEdge.cpp - Collision/b2CollidePolygon.cpp - Collision/b2Collision.cpp - Collision/b2Distance.cpp - Collision/b2DynamicTree.cpp - Collision/b2TimeOfImpact.cpp -) -set(BOX2D_Collision_HDRS - Collision/b2BroadPhase.h - Collision/b2Collision.h - Collision/b2Distance.h - Collision/b2DynamicTree.h - Collision/b2TimeOfImpact.h -) -set(BOX2D_Shapes_SRCS - Collision/Shapes/b2CircleShape.cpp - Collision/Shapes/b2EdgeShape.cpp - Collision/Shapes/b2ChainShape.cpp - Collision/Shapes/b2PolygonShape.cpp -) -set(BOX2D_Shapes_HDRS - Collision/Shapes/b2CircleShape.h - Collision/Shapes/b2EdgeShape.h - Collision/Shapes/b2ChainShape.h - Collision/Shapes/b2PolygonShape.h - Collision/Shapes/b2Shape.h -) -set(BOX2D_Common_SRCS - Common/b2BlockAllocator.cpp - Common/b2Draw.cpp - Common/b2Math.cpp - Common/b2Settings.cpp - Common/b2StackAllocator.cpp - Common/b2Timer.cpp -) -set(BOX2D_Common_HDRS - Common/b2BlockAllocator.h - Common/b2Draw.h - Common/b2GrowableStack.h - Common/b2Math.h - Common/b2Settings.h - Common/b2StackAllocator.h - Common/b2Timer.h -) -set(BOX2D_Dynamics_SRCS - Dynamics/b2Body.cpp - Dynamics/b2ContactManager.cpp - Dynamics/b2Fixture.cpp - Dynamics/b2Island.cpp - Dynamics/b2World.cpp - Dynamics/b2WorldCallbacks.cpp -) -set(BOX2D_Dynamics_HDRS - Dynamics/b2Body.h - Dynamics/b2ContactManager.h - Dynamics/b2Fixture.h - Dynamics/b2Island.h - Dynamics/b2TimeStep.h - Dynamics/b2World.h - Dynamics/b2WorldCallbacks.h -) -set(BOX2D_Contacts_SRCS - Dynamics/Contacts/b2CircleContact.cpp - Dynamics/Contacts/b2Contact.cpp - Dynamics/Contacts/b2ContactSolver.cpp - Dynamics/Contacts/b2PolygonAndCircleContact.cpp - Dynamics/Contacts/b2EdgeAndCircleContact.cpp - Dynamics/Contacts/b2EdgeAndPolygonContact.cpp - Dynamics/Contacts/b2ChainAndCircleContact.cpp - Dynamics/Contacts/b2ChainAndPolygonContact.cpp - Dynamics/Contacts/b2PolygonContact.cpp -) -set(BOX2D_Contacts_HDRS - Dynamics/Contacts/b2CircleContact.h - Dynamics/Contacts/b2Contact.h - Dynamics/Contacts/b2ContactSolver.h - Dynamics/Contacts/b2PolygonAndCircleContact.h - Dynamics/Contacts/b2EdgeAndCircleContact.h - Dynamics/Contacts/b2EdgeAndPolygonContact.h - Dynamics/Contacts/b2ChainAndCircleContact.h - Dynamics/Contacts/b2ChainAndPolygonContact.h - Dynamics/Contacts/b2PolygonContact.h -) -set(BOX2D_Joints_SRCS - Dynamics/Joints/b2DistanceJoint.cpp - Dynamics/Joints/b2FrictionJoint.cpp - Dynamics/Joints/b2GearJoint.cpp - Dynamics/Joints/b2Joint.cpp - Dynamics/Joints/b2MotorJoint.cpp - Dynamics/Joints/b2MouseJoint.cpp - Dynamics/Joints/b2PrismaticJoint.cpp - Dynamics/Joints/b2PulleyJoint.cpp - Dynamics/Joints/b2RevoluteJoint.cpp - Dynamics/Joints/b2RopeJoint.cpp - Dynamics/Joints/b2WeldJoint.cpp - Dynamics/Joints/b2WheelJoint.cpp -) -set(BOX2D_Joints_HDRS - Dynamics/Joints/b2DistanceJoint.h - Dynamics/Joints/b2FrictionJoint.h - Dynamics/Joints/b2GearJoint.h - Dynamics/Joints/b2Joint.h - Dynamics/Joints/b2MotorJoint.h - Dynamics/Joints/b2MouseJoint.h - Dynamics/Joints/b2PrismaticJoint.h - Dynamics/Joints/b2PulleyJoint.h - Dynamics/Joints/b2RevoluteJoint.h - Dynamics/Joints/b2RopeJoint.h - Dynamics/Joints/b2WeldJoint.h - Dynamics/Joints/b2WheelJoint.h -) -set(BOX2D_Rope_SRCS - Rope/b2Rope.cpp -) -set(BOX2D_Rope_HDRS - Rope/b2Rope.h -) -set(BOX2D_General_HDRS - Box2D.h -) -include_directories( ../ ) - -if(BOX2D_BUILD_SHARED) - add_library(Box2D_shared SHARED - ${BOX2D_General_HDRS} - ${BOX2D_Joints_SRCS} - ${BOX2D_Joints_HDRS} - ${BOX2D_Contacts_SRCS} - ${BOX2D_Contacts_HDRS} - ${BOX2D_Dynamics_SRCS} - ${BOX2D_Dynamics_HDRS} - ${BOX2D_Common_SRCS} - ${BOX2D_Common_HDRS} - ${BOX2D_Shapes_SRCS} - ${BOX2D_Shapes_HDRS} - ${BOX2D_Collision_SRCS} - ${BOX2D_Collision_HDRS} - ${BOX2D_Rope_SRCS} - ${BOX2D_Rope_HDRS} - ) - set_target_properties(Box2D_shared PROPERTIES - OUTPUT_NAME "Box2D" - CLEAN_DIRECT_OUTPUT 1 - VERSION ${BOX2D_VERSION} - ) -endif() - -if(BOX2D_BUILD_STATIC) - add_library(Box2D STATIC - ${BOX2D_General_HDRS} - ${BOX2D_Joints_SRCS} - ${BOX2D_Joints_HDRS} - ${BOX2D_Contacts_SRCS} - ${BOX2D_Contacts_HDRS} - ${BOX2D_Dynamics_SRCS} - ${BOX2D_Dynamics_HDRS} - ${BOX2D_Common_SRCS} - ${BOX2D_Common_HDRS} - ${BOX2D_Shapes_SRCS} - ${BOX2D_Shapes_HDRS} - ${BOX2D_Collision_SRCS} - ${BOX2D_Collision_HDRS} - ${BOX2D_Rope_SRCS} - ${BOX2D_Rope_HDRS} - ) - set_target_properties(Box2D PROPERTIES - CLEAN_DIRECT_OUTPUT 1 - VERSION ${BOX2D_VERSION} - ) -endif() - -# These are used to create visual studio folders. -source_group(Collision FILES ${BOX2D_Collision_SRCS} ${BOX2D_Collision_HDRS}) -source_group(Collision\\Shapes FILES ${BOX2D_Shapes_SRCS} ${BOX2D_Shapes_HDRS}) -source_group(Common FILES ${BOX2D_Common_SRCS} ${BOX2D_Common_HDRS}) -source_group(Dynamics FILES ${BOX2D_Dynamics_SRCS} ${BOX2D_Dynamics_HDRS}) -source_group(Dynamics\\Contacts FILES ${BOX2D_Contacts_SRCS} ${BOX2D_Contacts_HDRS}) -source_group(Dynamics\\Joints FILES ${BOX2D_Joints_SRCS} ${BOX2D_Joints_HDRS}) -source_group(Include FILES ${BOX2D_General_HDRS}) -source_group(Rope FILES ${BOX2D_Rope_SRCS} ${BOX2D_Rope_HDRS}) - -if(BOX2D_INSTALL) - # install headers - install(FILES ${BOX2D_General_HDRS} DESTINATION include/Box2D) - install(FILES ${BOX2D_Collision_HDRS} DESTINATION include/Box2D/Collision) - install(FILES ${BOX2D_Shapes_HDRS} DESTINATION include/Box2D/Collision/Shapes) - install(FILES ${BOX2D_Common_HDRS} DESTINATION include/Box2D/Common) - install(FILES ${BOX2D_Dynamics_HDRS} DESTINATION include/Box2D/Dynamics) - install(FILES ${BOX2D_Contacts_HDRS} DESTINATION include/Box2D/Dynamics/Contacts) - install(FILES ${BOX2D_Joints_HDRS} DESTINATION include/Box2D/Dynamics/Joints) - install(FILES ${BOX2D_Rope_HDRS} DESTINATION include/Box2D/Rope) - - # install libraries - if(BOX2D_BUILD_SHARED) - install(TARGETS Box2D_shared EXPORT Box2D-targets DESTINATION ${LIB_INSTALL_DIR}) - endif() - if(BOX2D_BUILD_STATIC) - install(TARGETS Box2D EXPORT Box2D-targets DESTINATION ${LIB_INSTALL_DIR}) - endif() - - # install build system hooks for third-party apps - install(EXPORT Box2D-targets DESTINATION ${LIB_INSTALL_DIR}/Box2D) - install(FILES Box2DConfig.cmake DESTINATION ${LIB_INSTALL_DIR}/Box2D) -endif(BOX2D_INSTALL) diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2ChainShape.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2ChainShape.cpp deleted file mode 100644 index 6d293a9..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2ChainShape.cpp +++ /dev/null @@ -1,190 +0,0 @@ -/* -* Copyright (c) 2006-2010 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include -#include -#include -#include - -b2ChainShape::~b2ChainShape() -{ - b2Free(m_vertices); - m_vertices = NULL; - m_count = 0; -} - -void b2ChainShape::CreateLoop(const b2Vec2* vertices, int32 count) -{ - b2Assert(m_vertices == NULL && m_count == 0); - b2Assert(count >= 3); - for (int32 i = 1; i < count; ++i) - { - b2Vec2 v1 = vertices[i-1]; - b2Vec2 v2 = vertices[i]; - // If the code crashes here, it means your vertices are too close together. - b2Assert(b2DistanceSquared(v1, v2) > b2_linearSlop * b2_linearSlop); - } - - m_count = count + 1; - m_vertices = (b2Vec2*)b2Alloc(m_count * sizeof(b2Vec2)); - memcpy(m_vertices, vertices, count * sizeof(b2Vec2)); - m_vertices[count] = m_vertices[0]; - m_prevVertex = m_vertices[m_count - 2]; - m_nextVertex = m_vertices[1]; - m_hasPrevVertex = true; - m_hasNextVertex = true; -} - -void b2ChainShape::CreateChain(const b2Vec2* vertices, int32 count) -{ - b2Assert(m_vertices == NULL && m_count == 0); - b2Assert(count >= 2); - for (int32 i = 1; i < count; ++i) - { - b2Vec2 v1 = vertices[i-1]; - b2Vec2 v2 = vertices[i]; - // If the code crashes here, it means your vertices are too close together. - b2Assert(b2DistanceSquared(v1, v2) > b2_linearSlop * b2_linearSlop); - } - - m_count = count; - m_vertices = (b2Vec2*)b2Alloc(count * sizeof(b2Vec2)); - memcpy(m_vertices, vertices, m_count * sizeof(b2Vec2)); - - m_hasPrevVertex = false; - m_hasNextVertex = false; - - m_prevVertex.SetZero(); - m_nextVertex.SetZero(); -} - -void b2ChainShape::SetPrevVertex(const b2Vec2& prevVertex) -{ - m_prevVertex = prevVertex; - m_hasPrevVertex = true; -} - -void b2ChainShape::SetNextVertex(const b2Vec2& nextVertex) -{ - m_nextVertex = nextVertex; - m_hasNextVertex = true; -} - -b2Shape* b2ChainShape::Clone(b2BlockAllocator* allocator) const -{ - void* mem = allocator->Allocate(sizeof(b2ChainShape)); - b2ChainShape* clone = new (mem) b2ChainShape; - clone->CreateChain(m_vertices, m_count); - clone->m_prevVertex = m_prevVertex; - clone->m_nextVertex = m_nextVertex; - clone->m_hasPrevVertex = m_hasPrevVertex; - clone->m_hasNextVertex = m_hasNextVertex; - return clone; -} - -int32 b2ChainShape::GetChildCount() const -{ - // edge count = vertex count - 1 - return m_count - 1; -} - -void b2ChainShape::GetChildEdge(b2EdgeShape* edge, int32 index) const -{ - b2Assert(0 <= index && index < m_count - 1); - edge->m_type = b2Shape::e_edge; - edge->m_radius = m_radius; - - edge->m_vertex1 = m_vertices[index + 0]; - edge->m_vertex2 = m_vertices[index + 1]; - - if (index > 0) - { - edge->m_vertex0 = m_vertices[index - 1]; - edge->m_hasVertex0 = true; - } - else - { - edge->m_vertex0 = m_prevVertex; - edge->m_hasVertex0 = m_hasPrevVertex; - } - - if (index < m_count - 2) - { - edge->m_vertex3 = m_vertices[index + 2]; - edge->m_hasVertex3 = true; - } - else - { - edge->m_vertex3 = m_nextVertex; - edge->m_hasVertex3 = m_hasNextVertex; - } -} - -bool b2ChainShape::TestPoint(const b2Transform& xf, const b2Vec2& p) const -{ - B2_NOT_USED(xf); - B2_NOT_USED(p); - return false; -} - -bool b2ChainShape::RayCast(b2RayCastOutput* output, const b2RayCastInput& input, - const b2Transform& xf, int32 childIndex) const -{ - b2Assert(childIndex < m_count); - - b2EdgeShape edgeShape; - - int32 i1 = childIndex; - int32 i2 = childIndex + 1; - if (i2 == m_count) - { - i2 = 0; - } - - edgeShape.m_vertex1 = m_vertices[i1]; - edgeShape.m_vertex2 = m_vertices[i2]; - - return edgeShape.RayCast(output, input, xf, 0); -} - -void b2ChainShape::ComputeAABB(b2AABB* aabb, const b2Transform& xf, int32 childIndex) const -{ - b2Assert(childIndex < m_count); - - int32 i1 = childIndex; - int32 i2 = childIndex + 1; - if (i2 == m_count) - { - i2 = 0; - } - - b2Vec2 v1 = b2Mul(xf, m_vertices[i1]); - b2Vec2 v2 = b2Mul(xf, m_vertices[i2]); - - aabb->lowerBound = b2Min(v1, v2); - aabb->upperBound = b2Max(v1, v2); -} - -void b2ChainShape::ComputeMass(b2MassData* massData, float32 density) const -{ - B2_NOT_USED(density); - - massData->mass = 0.0f; - massData->center.SetZero(); - massData->I = 0.0f; -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2ChainShape.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2ChainShape.h deleted file mode 100644 index 01bf86f..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2ChainShape.h +++ /dev/null @@ -1,102 +0,0 @@ -/* -* Copyright (c) 2006-2010 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_CHAIN_SHAPE_H -#define B2_CHAIN_SHAPE_H - -#include - -class b2EdgeShape; - -/// A chain shape is a free form sequence of line segments. -/// The chain has two-sided collision, so you can use inside and outside collision. -/// Therefore, you may use any winding order. -/// Since there may be many vertices, they are allocated using b2Alloc. -/// Connectivity information is used to create smooth collisions. -/// WARNING: The chain will not collide properly if there are self-intersections. -class b2ChainShape : public b2Shape -{ -public: - b2ChainShape(); - - /// The destructor frees the vertices using b2Free. - ~b2ChainShape(); - - /// Create a loop. This automatically adjusts connectivity. - /// @param vertices an array of vertices, these are copied - /// @param count the vertex count - void CreateLoop(const b2Vec2* vertices, int32 count); - - /// Create a chain with isolated end vertices. - /// @param vertices an array of vertices, these are copied - /// @param count the vertex count - void CreateChain(const b2Vec2* vertices, int32 count); - - /// Establish connectivity to a vertex that precedes the first vertex. - /// Don't call this for loops. - void SetPrevVertex(const b2Vec2& prevVertex); - - /// Establish connectivity to a vertex that follows the last vertex. - /// Don't call this for loops. - void SetNextVertex(const b2Vec2& nextVertex); - - /// Implement b2Shape. Vertices are cloned using b2Alloc. - b2Shape* Clone(b2BlockAllocator* allocator) const; - - /// @see b2Shape::GetChildCount - int32 GetChildCount() const; - - /// Get a child edge. - void GetChildEdge(b2EdgeShape* edge, int32 index) const; - - /// This always return false. - /// @see b2Shape::TestPoint - bool TestPoint(const b2Transform& transform, const b2Vec2& p) const; - - /// Implement b2Shape. - bool RayCast(b2RayCastOutput* output, const b2RayCastInput& input, - const b2Transform& transform, int32 childIndex) const; - - /// @see b2Shape::ComputeAABB - void ComputeAABB(b2AABB* aabb, const b2Transform& transform, int32 childIndex) const; - - /// Chains have zero mass. - /// @see b2Shape::ComputeMass - void ComputeMass(b2MassData* massData, float32 density) const; - - /// The vertices. Owned by this class. - b2Vec2* m_vertices; - - /// The vertex count. - int32 m_count; - - b2Vec2 m_prevVertex, m_nextVertex; - bool m_hasPrevVertex, m_hasNextVertex; -}; - -inline b2ChainShape::b2ChainShape() -{ - m_type = e_chain; - m_radius = b2_polygonRadius; - m_vertices = NULL; - m_count = 0; - m_hasPrevVertex = false; - m_hasNextVertex = false; -} - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2CircleShape.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2CircleShape.cpp deleted file mode 100644 index 47e5b37..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2CircleShape.cpp +++ /dev/null @@ -1,99 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include -#include - -b2Shape* b2CircleShape::Clone(b2BlockAllocator* allocator) const -{ - void* mem = allocator->Allocate(sizeof(b2CircleShape)); - b2CircleShape* clone = new (mem) b2CircleShape; - *clone = *this; - return clone; -} - -int32 b2CircleShape::GetChildCount() const -{ - return 1; -} - -bool b2CircleShape::TestPoint(const b2Transform& transform, const b2Vec2& p) const -{ - b2Vec2 center = transform.p + b2Mul(transform.q, m_p); - b2Vec2 d = p - center; - return b2Dot(d, d) <= m_radius * m_radius; -} - -// Collision Detection in Interactive 3D Environments by Gino van den Bergen -// From Section 3.1.2 -// x = s + a * r -// norm(x) = radius -bool b2CircleShape::RayCast(b2RayCastOutput* output, const b2RayCastInput& input, - const b2Transform& transform, int32 childIndex) const -{ - B2_NOT_USED(childIndex); - - b2Vec2 position = transform.p + b2Mul(transform.q, m_p); - b2Vec2 s = input.p1 - position; - float32 b = b2Dot(s, s) - m_radius * m_radius; - - // Solve quadratic equation. - b2Vec2 r = input.p2 - input.p1; - float32 c = b2Dot(s, r); - float32 rr = b2Dot(r, r); - float32 sigma = c * c - rr * b; - - // Check for negative discriminant and short segment. - if (sigma < 0.0f || rr < b2_epsilon) - { - return false; - } - - // Find the point of intersection of the line with the circle. - float32 a = -(c + b2Sqrt(sigma)); - - // Is the intersection point on the segment? - if (0.0f <= a && a <= input.maxFraction * rr) - { - a /= rr; - output->fraction = a; - output->normal = s + a * r; - output->normal.Normalize(); - return true; - } - - return false; -} - -void b2CircleShape::ComputeAABB(b2AABB* aabb, const b2Transform& transform, int32 childIndex) const -{ - B2_NOT_USED(childIndex); - - b2Vec2 p = transform.p + b2Mul(transform.q, m_p); - aabb->lowerBound.Set(p.x - m_radius, p.y - m_radius); - aabb->upperBound.Set(p.x + m_radius, p.y + m_radius); -} - -void b2CircleShape::ComputeMass(b2MassData* massData, float32 density) const -{ - massData->mass = density * b2_pi * m_radius * m_radius; - massData->center = m_p; - - // inertia about the local origin - massData->I = massData->mass * (0.5f * m_radius * m_radius + b2Dot(m_p, m_p)); -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2CircleShape.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2CircleShape.h deleted file mode 100644 index 6c1fd54..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2CircleShape.h +++ /dev/null @@ -1,91 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_CIRCLE_SHAPE_H -#define B2_CIRCLE_SHAPE_H - -#include - -/// A circle shape. -class b2CircleShape : public b2Shape -{ -public: - b2CircleShape(); - - /// Implement b2Shape. - b2Shape* Clone(b2BlockAllocator* allocator) const; - - /// @see b2Shape::GetChildCount - int32 GetChildCount() const; - - /// Implement b2Shape. - bool TestPoint(const b2Transform& transform, const b2Vec2& p) const; - - /// Implement b2Shape. - bool RayCast(b2RayCastOutput* output, const b2RayCastInput& input, - const b2Transform& transform, int32 childIndex) const; - - /// @see b2Shape::ComputeAABB - void ComputeAABB(b2AABB* aabb, const b2Transform& transform, int32 childIndex) const; - - /// @see b2Shape::ComputeMass - void ComputeMass(b2MassData* massData, float32 density) const; - - /// Get the supporting vertex index in the given direction. - int32 GetSupport(const b2Vec2& d) const; - - /// Get the supporting vertex in the given direction. - const b2Vec2& GetSupportVertex(const b2Vec2& d) const; - - /// Get the vertex count. - int32 GetVertexCount() const { return 1; } - - /// Get a vertex by index. Used by b2Distance. - const b2Vec2& GetVertex(int32 index) const; - - /// Position - b2Vec2 m_p; -}; - -inline b2CircleShape::b2CircleShape() -{ - m_type = e_circle; - m_radius = 0.0f; - m_p.SetZero(); -} - -inline int32 b2CircleShape::GetSupport(const b2Vec2 &d) const -{ - B2_NOT_USED(d); - return 0; -} - -inline const b2Vec2& b2CircleShape::GetSupportVertex(const b2Vec2 &d) const -{ - B2_NOT_USED(d); - return m_p; -} - -inline const b2Vec2& b2CircleShape::GetVertex(int32 index) const -{ - B2_NOT_USED(index); - b2Assert(index == 0); - return m_p; -} - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2EdgeShape.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2EdgeShape.cpp deleted file mode 100644 index 3514b2e..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2EdgeShape.cpp +++ /dev/null @@ -1,138 +0,0 @@ -/* -* Copyright (c) 2006-2010 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include -#include - -void b2EdgeShape::Set(const b2Vec2& v1, const b2Vec2& v2) -{ - m_vertex1 = v1; - m_vertex2 = v2; - m_hasVertex0 = false; - m_hasVertex3 = false; -} - -b2Shape* b2EdgeShape::Clone(b2BlockAllocator* allocator) const -{ - void* mem = allocator->Allocate(sizeof(b2EdgeShape)); - b2EdgeShape* clone = new (mem) b2EdgeShape; - *clone = *this; - return clone; -} - -int32 b2EdgeShape::GetChildCount() const -{ - return 1; -} - -bool b2EdgeShape::TestPoint(const b2Transform& xf, const b2Vec2& p) const -{ - B2_NOT_USED(xf); - B2_NOT_USED(p); - return false; -} - -// p = p1 + t * d -// v = v1 + s * e -// p1 + t * d = v1 + s * e -// s * e - t * d = p1 - v1 -bool b2EdgeShape::RayCast(b2RayCastOutput* output, const b2RayCastInput& input, - const b2Transform& xf, int32 childIndex) const -{ - B2_NOT_USED(childIndex); - - // Put the ray into the edge's frame of reference. - b2Vec2 p1 = b2MulT(xf.q, input.p1 - xf.p); - b2Vec2 p2 = b2MulT(xf.q, input.p2 - xf.p); - b2Vec2 d = p2 - p1; - - b2Vec2 v1 = m_vertex1; - b2Vec2 v2 = m_vertex2; - b2Vec2 e = v2 - v1; - b2Vec2 normal(e.y, -e.x); - normal.Normalize(); - - // q = p1 + t * d - // dot(normal, q - v1) = 0 - // dot(normal, p1 - v1) + t * dot(normal, d) = 0 - float32 numerator = b2Dot(normal, v1 - p1); - float32 denominator = b2Dot(normal, d); - - if (denominator == 0.0f) - { - return false; - } - - float32 t = numerator / denominator; - if (t < 0.0f || input.maxFraction < t) - { - return false; - } - - b2Vec2 q = p1 + t * d; - - // q = v1 + s * r - // s = dot(q - v1, r) / dot(r, r) - b2Vec2 r = v2 - v1; - float32 rr = b2Dot(r, r); - if (rr == 0.0f) - { - return false; - } - - float32 s = b2Dot(q - v1, r) / rr; - if (s < 0.0f || 1.0f < s) - { - return false; - } - - output->fraction = t; - if (numerator > 0.0f) - { - output->normal = -b2Mul(xf.q, normal); - } - else - { - output->normal = b2Mul(xf.q, normal); - } - return true; -} - -void b2EdgeShape::ComputeAABB(b2AABB* aabb, const b2Transform& xf, int32 childIndex) const -{ - B2_NOT_USED(childIndex); - - b2Vec2 v1 = b2Mul(xf, m_vertex1); - b2Vec2 v2 = b2Mul(xf, m_vertex2); - - b2Vec2 lower = b2Min(v1, v2); - b2Vec2 upper = b2Max(v1, v2); - - b2Vec2 r(m_radius, m_radius); - aabb->lowerBound = lower - r; - aabb->upperBound = upper + r; -} - -void b2EdgeShape::ComputeMass(b2MassData* massData, float32 density) const -{ - B2_NOT_USED(density); - - massData->mass = 0.0f; - massData->center = 0.5f * (m_vertex1 + m_vertex2); - massData->I = 0.0f; -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2EdgeShape.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2EdgeShape.h deleted file mode 100644 index 99f822b..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2EdgeShape.h +++ /dev/null @@ -1,74 +0,0 @@ -/* -* Copyright (c) 2006-2010 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_EDGE_SHAPE_H -#define B2_EDGE_SHAPE_H - -#include - -/// A line segment (edge) shape. These can be connected in chains or loops -/// to other edge shapes. The connectivity information is used to ensure -/// correct contact normals. -class b2EdgeShape : public b2Shape -{ -public: - b2EdgeShape(); - - /// Set this as an isolated edge. - void Set(const b2Vec2& v1, const b2Vec2& v2); - - /// Implement b2Shape. - b2Shape* Clone(b2BlockAllocator* allocator) const; - - /// @see b2Shape::GetChildCount - int32 GetChildCount() const; - - /// @see b2Shape::TestPoint - bool TestPoint(const b2Transform& transform, const b2Vec2& p) const; - - /// Implement b2Shape. - bool RayCast(b2RayCastOutput* output, const b2RayCastInput& input, - const b2Transform& transform, int32 childIndex) const; - - /// @see b2Shape::ComputeAABB - void ComputeAABB(b2AABB* aabb, const b2Transform& transform, int32 childIndex) const; - - /// @see b2Shape::ComputeMass - void ComputeMass(b2MassData* massData, float32 density) const; - - /// These are the edge vertices - b2Vec2 m_vertex1, m_vertex2; - - /// Optional adjacent vertices. These are used for smooth collision. - b2Vec2 m_vertex0, m_vertex3; - bool m_hasVertex0, m_hasVertex3; -}; - -inline b2EdgeShape::b2EdgeShape() -{ - m_type = e_edge; - m_radius = b2_polygonRadius; - m_vertex0.x = 0.0f; - m_vertex0.y = 0.0f; - m_vertex3.x = 0.0f; - m_vertex3.y = 0.0f; - m_hasVertex0 = false; - m_hasVertex3 = false; -} - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2PolygonShape.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2PolygonShape.cpp deleted file mode 100644 index c3191fd..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2PolygonShape.cpp +++ /dev/null @@ -1,459 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include -#include - -b2Shape* b2PolygonShape::Clone(b2BlockAllocator* allocator) const -{ - void* mem = allocator->Allocate(sizeof(b2PolygonShape)); - b2PolygonShape* clone = new (mem) b2PolygonShape; - *clone = *this; - return clone; -} - -void b2PolygonShape::SetAsBox(float32 hx, float32 hy) -{ - m_count = 4; - m_vertices[0].Set(-hx, -hy); - m_vertices[1].Set( hx, -hy); - m_vertices[2].Set( hx, hy); - m_vertices[3].Set(-hx, hy); - m_normals[0].Set(0.0f, -1.0f); - m_normals[1].Set(1.0f, 0.0f); - m_normals[2].Set(0.0f, 1.0f); - m_normals[3].Set(-1.0f, 0.0f); - m_centroid.SetZero(); -} - -void b2PolygonShape::SetAsBox(float32 hx, float32 hy, const b2Vec2& center, float32 angle) -{ - m_count = 4; - m_vertices[0].Set(-hx, -hy); - m_vertices[1].Set( hx, -hy); - m_vertices[2].Set( hx, hy); - m_vertices[3].Set(-hx, hy); - m_normals[0].Set(0.0f, -1.0f); - m_normals[1].Set(1.0f, 0.0f); - m_normals[2].Set(0.0f, 1.0f); - m_normals[3].Set(-1.0f, 0.0f); - m_centroid = center; - - b2Transform xf; - xf.p = center; - xf.q.Set(angle); - - // Transform vertices and normals. - for (int32 i = 0; i < m_count; ++i) - { - m_vertices[i] = b2Mul(xf, m_vertices[i]); - m_normals[i] = b2Mul(xf.q, m_normals[i]); - } -} - -int32 b2PolygonShape::GetChildCount() const -{ - return 1; -} - -static b2Vec2 ComputeCentroid(const b2Vec2* vs, int32 count) -{ - b2Assert(count >= 3); - - b2Vec2 c; c.Set(0.0f, 0.0f); - float32 area = 0.0f; - - // pRef is the reference point for forming triangles. - // It's location doesn't change the result (except for rounding error). - b2Vec2 pRef(0.0f, 0.0f); -#if 0 - // This code would put the reference point inside the polygon. - for (int32 i = 0; i < count; ++i) - { - pRef += vs[i]; - } - pRef *= 1.0f / count; -#endif - - const float32 inv3 = 1.0f / 3.0f; - - for (int32 i = 0; i < count; ++i) - { - // Triangle vertices. - b2Vec2 p1 = pRef; - b2Vec2 p2 = vs[i]; - b2Vec2 p3 = i + 1 < count ? vs[i+1] : vs[0]; - - b2Vec2 e1 = p2 - p1; - b2Vec2 e2 = p3 - p1; - - float32 D = b2Cross(e1, e2); - - float32 triangleArea = 0.5f * D; - area += triangleArea; - - // Area weighted centroid - c += triangleArea * inv3 * (p1 + p2 + p3); - } - - // Centroid - b2Assert(area > b2_epsilon); - c *= 1.0f / area; - return c; -} - -void b2PolygonShape::Set(const b2Vec2* vertices, int32 count) -{ - b2Assert(3 <= count && count <= b2_maxPolygonVertices); - if (count < 3) - { - SetAsBox(1.0f, 1.0f); - return; - } - - int32 n = b2Min(count, b2_maxPolygonVertices); - - // Perform welding and copy vertices into local buffer. - b2Vec2 ps[b2_maxPolygonVertices]; - int32 tempCount = 0; - for (int32 i = 0; i < n; ++i) - { - b2Vec2 v = vertices[i]; - - bool unique = true; - for (int32 j = 0; j < tempCount; ++j) - { - if (b2DistanceSquared(v, ps[j]) < 0.5f * b2_linearSlop) - { - unique = false; - break; - } - } - - if (unique) - { - ps[tempCount++] = v; - } - } - - n = tempCount; - if (n < 3) - { - // Polygon is degenerate. - b2Assert(false); - SetAsBox(1.0f, 1.0f); - return; - } - - // Create the convex hull using the Gift wrapping algorithm - // http://en.wikipedia.org/wiki/Gift_wrapping_algorithm - - // Find the right most point on the hull - int32 i0 = 0; - float32 x0 = ps[0].x; - for (int32 i = 1; i < n; ++i) - { - float32 x = ps[i].x; - if (x > x0 || (x == x0 && ps[i].y < ps[i0].y)) - { - i0 = i; - x0 = x; - } - } - - int32 hull[b2_maxPolygonVertices]; - int32 m = 0; - int32 ih = i0; - - for (;;) - { - hull[m] = ih; - - int32 ie = 0; - for (int32 j = 1; j < n; ++j) - { - if (ie == ih) - { - ie = j; - continue; - } - - b2Vec2 r = ps[ie] - ps[hull[m]]; - b2Vec2 v = ps[j] - ps[hull[m]]; - float32 c = b2Cross(r, v); - if (c < 0.0f) - { - ie = j; - } - - // Collinearity check - if (c == 0.0f && v.LengthSquared() > r.LengthSquared()) - { - ie = j; - } - } - - ++m; - ih = ie; - - if (ie == i0) - { - break; - } - } - - m_count = m; - - // Copy vertices. - for (int32 i = 0; i < m; ++i) - { - m_vertices[i] = ps[hull[i]]; - } - - // Compute normals. Ensure the edges have non-zero length. - for (int32 i = 0; i < m; ++i) - { - int32 i1 = i; - int32 i2 = i + 1 < m ? i + 1 : 0; - b2Vec2 edge = m_vertices[i2] - m_vertices[i1]; - b2Assert(edge.LengthSquared() > b2_epsilon * b2_epsilon); - m_normals[i] = b2Cross(edge, 1.0f); - m_normals[i].Normalize(); - } - - // Compute the polygon centroid. - m_centroid = ComputeCentroid(m_vertices, m); -} - -bool b2PolygonShape::TestPoint(const b2Transform& xf, const b2Vec2& p) const -{ - b2Vec2 pLocal = b2MulT(xf.q, p - xf.p); - - for (int32 i = 0; i < m_count; ++i) - { - float32 dot = b2Dot(m_normals[i], pLocal - m_vertices[i]); - if (dot > 0.0f) - { - return false; - } - } - - return true; -} - -bool b2PolygonShape::RayCast(b2RayCastOutput* output, const b2RayCastInput& input, - const b2Transform& xf, int32 childIndex) const -{ - B2_NOT_USED(childIndex); - - // Put the ray into the polygon's frame of reference. - b2Vec2 p1 = b2MulT(xf.q, input.p1 - xf.p); - b2Vec2 p2 = b2MulT(xf.q, input.p2 - xf.p); - b2Vec2 d = p2 - p1; - - float32 lower = 0.0f, upper = input.maxFraction; - - int32 index = -1; - - for (int32 i = 0; i < m_count; ++i) - { - // p = p1 + a * d - // dot(normal, p - v) = 0 - // dot(normal, p1 - v) + a * dot(normal, d) = 0 - float32 numerator = b2Dot(m_normals[i], m_vertices[i] - p1); - float32 denominator = b2Dot(m_normals[i], d); - - if (denominator == 0.0f) - { - if (numerator < 0.0f) - { - return false; - } - } - else - { - // Note: we want this predicate without division: - // lower < numerator / denominator, where denominator < 0 - // Since denominator < 0, we have to flip the inequality: - // lower < numerator / denominator <==> denominator * lower > numerator. - if (denominator < 0.0f && numerator < lower * denominator) - { - // Increase lower. - // The segment enters this half-space. - lower = numerator / denominator; - index = i; - } - else if (denominator > 0.0f && numerator < upper * denominator) - { - // Decrease upper. - // The segment exits this half-space. - upper = numerator / denominator; - } - } - - // The use of epsilon here causes the assert on lower to trip - // in some cases. Apparently the use of epsilon was to make edge - // shapes work, but now those are handled separately. - //if (upper < lower - b2_epsilon) - if (upper < lower) - { - return false; - } - } - - b2Assert(0.0f <= lower && lower <= input.maxFraction); - - if (index >= 0) - { - output->fraction = lower; - output->normal = b2Mul(xf.q, m_normals[index]); - return true; - } - - return false; -} - -void b2PolygonShape::ComputeAABB(b2AABB* aabb, const b2Transform& xf, int32 childIndex) const -{ - B2_NOT_USED(childIndex); - - b2Vec2 lower = b2Mul(xf, m_vertices[0]); - b2Vec2 upper = lower; - - for (int32 i = 1; i < m_count; ++i) - { - b2Vec2 v = b2Mul(xf, m_vertices[i]); - lower = b2Min(lower, v); - upper = b2Max(upper, v); - } - - b2Vec2 r(m_radius, m_radius); - aabb->lowerBound = lower - r; - aabb->upperBound = upper + r; -} - -void b2PolygonShape::ComputeMass(b2MassData* massData, float32 density) const -{ - // Polygon mass, centroid, and inertia. - // Let rho be the polygon density in mass per unit area. - // Then: - // mass = rho * int(dA) - // centroid.x = (1/mass) * rho * int(x * dA) - // centroid.y = (1/mass) * rho * int(y * dA) - // I = rho * int((x*x + y*y) * dA) - // - // We can compute these integrals by summing all the integrals - // for each triangle of the polygon. To evaluate the integral - // for a single triangle, we make a change of variables to - // the (u,v) coordinates of the triangle: - // x = x0 + e1x * u + e2x * v - // y = y0 + e1y * u + e2y * v - // where 0 <= u && 0 <= v && u + v <= 1. - // - // We integrate u from [0,1-v] and then v from [0,1]. - // We also need to use the Jacobian of the transformation: - // D = cross(e1, e2) - // - // Simplification: triangle centroid = (1/3) * (p1 + p2 + p3) - // - // The rest of the derivation is handled by computer algebra. - - b2Assert(m_count >= 3); - - b2Vec2 center; center.Set(0.0f, 0.0f); - float32 area = 0.0f; - float32 I = 0.0f; - - // s is the reference point for forming triangles. - // It's location doesn't change the result (except for rounding error). - b2Vec2 s(0.0f, 0.0f); - - // This code would put the reference point inside the polygon. - for (int32 i = 0; i < m_count; ++i) - { - s += m_vertices[i]; - } - s *= 1.0f / m_count; - - const float32 k_inv3 = 1.0f / 3.0f; - - for (int32 i = 0; i < m_count; ++i) - { - // Triangle vertices. - b2Vec2 e1 = m_vertices[i] - s; - b2Vec2 e2 = i + 1 < m_count ? m_vertices[i+1] - s : m_vertices[0] - s; - - float32 D = b2Cross(e1, e2); - - float32 triangleArea = 0.5f * D; - area += triangleArea; - - // Area weighted centroid - center += triangleArea * k_inv3 * (e1 + e2); - - float32 ex1 = e1.x, ey1 = e1.y; - float32 ex2 = e2.x, ey2 = e2.y; - - float32 intx2 = ex1*ex1 + ex2*ex1 + ex2*ex2; - float32 inty2 = ey1*ey1 + ey2*ey1 + ey2*ey2; - - I += (0.25f * k_inv3 * D) * (intx2 + inty2); - } - - // Total mass - massData->mass = density * area; - - // Center of mass - b2Assert(area > b2_epsilon); - center *= 1.0f / area; - massData->center = center + s; - - // Inertia tensor relative to the local origin (point s). - massData->I = density * I; - - // Shift to center of mass then to original body origin. - massData->I += massData->mass * (b2Dot(massData->center, massData->center) - b2Dot(center, center)); -} - -bool b2PolygonShape::Validate() const -{ - for (int32 i = 0; i < m_count; ++i) - { - int32 i1 = i; - int32 i2 = i < m_count - 1 ? i1 + 1 : 0; - b2Vec2 p = m_vertices[i1]; - b2Vec2 e = m_vertices[i2] - p; - - for (int32 j = 0; j < m_count; ++j) - { - if (j == i1 || j == i2) - { - continue; - } - - b2Vec2 v = m_vertices[j] - p; - float32 c = b2Cross(e, v); - if (c < 0.0f) - { - return false; - } - } - } - - return true; -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2PolygonShape.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2PolygonShape.h deleted file mode 100644 index d5c0e74..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2PolygonShape.h +++ /dev/null @@ -1,101 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_POLYGON_SHAPE_H -#define B2_POLYGON_SHAPE_H - -#include - -/// A convex polygon. It is assumed that the interior of the polygon is to -/// the left of each edge. -/// Polygons have a maximum number of vertices equal to b2_maxPolygonVertices. -/// In most cases you should not need many vertices for a convex polygon. -class b2PolygonShape : public b2Shape -{ -public: - b2PolygonShape(); - - /// Implement b2Shape. - b2Shape* Clone(b2BlockAllocator* allocator) const; - - /// @see b2Shape::GetChildCount - int32 GetChildCount() const; - - /// Create a convex hull from the given array of local points. - /// The count must be in the range [3, b2_maxPolygonVertices]. - /// @warning the points may be re-ordered, even if they form a convex polygon - /// @warning collinear points are handled but not removed. Collinear points - /// may lead to poor stacking behavior. - void Set(const b2Vec2* points, int32 count); - - /// Build vertices to represent an axis-aligned box centered on the local origin. - /// @param hx the half-width. - /// @param hy the half-height. - void SetAsBox(float32 hx, float32 hy); - - /// Build vertices to represent an oriented box. - /// @param hx the half-width. - /// @param hy the half-height. - /// @param center the center of the box in local coordinates. - /// @param angle the rotation of the box in local coordinates. - void SetAsBox(float32 hx, float32 hy, const b2Vec2& center, float32 angle); - - /// @see b2Shape::TestPoint - bool TestPoint(const b2Transform& transform, const b2Vec2& p) const; - - /// Implement b2Shape. - bool RayCast(b2RayCastOutput* output, const b2RayCastInput& input, - const b2Transform& transform, int32 childIndex) const; - - /// @see b2Shape::ComputeAABB - void ComputeAABB(b2AABB* aabb, const b2Transform& transform, int32 childIndex) const; - - /// @see b2Shape::ComputeMass - void ComputeMass(b2MassData* massData, float32 density) const; - - /// Get the vertex count. - int32 GetVertexCount() const { return m_count; } - - /// Get a vertex by index. - const b2Vec2& GetVertex(int32 index) const; - - /// Validate convexity. This is a very time consuming operation. - /// @returns true if valid - bool Validate() const; - - b2Vec2 m_centroid; - b2Vec2 m_vertices[b2_maxPolygonVertices]; - b2Vec2 m_normals[b2_maxPolygonVertices]; - int32 m_count; -}; - -inline b2PolygonShape::b2PolygonShape() -{ - m_type = e_polygon; - m_radius = b2_polygonRadius; - m_count = 0; - m_centroid.SetZero(); -} - -inline const b2Vec2& b2PolygonShape::GetVertex(int32 index) const -{ - b2Assert(0 <= index && index < m_count); - return m_vertices[index]; -} - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2Shape.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2Shape.h deleted file mode 100644 index fd7de26..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2Shape.h +++ /dev/null @@ -1,101 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_SHAPE_H -#define B2_SHAPE_H - -#include -#include -#include - -/// This holds the mass data computed for a shape. -struct b2MassData -{ - /// The mass of the shape, usually in kilograms. - float32 mass; - - /// The position of the shape's centroid relative to the shape's origin. - b2Vec2 center; - - /// The rotational inertia of the shape about the local origin. - float32 I; -}; - -/// A shape is used for collision detection. You can create a shape however you like. -/// Shapes used for simulation in b2World are created automatically when a b2Fixture -/// is created. Shapes may encapsulate a one or more child shapes. -class b2Shape -{ -public: - - enum Type - { - e_circle = 0, - e_edge = 1, - e_polygon = 2, - e_chain = 3, - e_typeCount = 4 - }; - - virtual ~b2Shape() {} - - /// Clone the concrete shape using the provided allocator. - virtual b2Shape* Clone(b2BlockAllocator* allocator) const = 0; - - /// Get the type of this shape. You can use this to down cast to the concrete shape. - /// @return the shape type. - Type GetType() const; - - /// Get the number of child primitives. - virtual int32 GetChildCount() const = 0; - - /// Test a point for containment in this shape. This only works for convex shapes. - /// @param xf the shape world transform. - /// @param p a point in world coordinates. - virtual bool TestPoint(const b2Transform& xf, const b2Vec2& p) const = 0; - - /// Cast a ray against a child shape. - /// @param output the ray-cast results. - /// @param input the ray-cast input parameters. - /// @param transform the transform to be applied to the shape. - /// @param childIndex the child shape index - virtual bool RayCast(b2RayCastOutput* output, const b2RayCastInput& input, - const b2Transform& transform, int32 childIndex) const = 0; - - /// Given a transform, compute the associated axis aligned bounding box for a child shape. - /// @param aabb returns the axis aligned box. - /// @param xf the world transform of the shape. - /// @param childIndex the child shape - virtual void ComputeAABB(b2AABB* aabb, const b2Transform& xf, int32 childIndex) const = 0; - - /// Compute the mass properties of this shape using its dimensions and density. - /// The inertia tensor is computed about the local origin. - /// @param massData returns the mass data for this shape. - /// @param density the density in kilograms per meter squared. - virtual void ComputeMass(b2MassData* massData, float32 density) const = 0; - - Type m_type; - float32 m_radius; -}; - -inline b2Shape::Type b2Shape::GetType() const -{ - return m_type; -} - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2BroadPhase.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2BroadPhase.cpp deleted file mode 100644 index 6cddf71..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2BroadPhase.cpp +++ /dev/null @@ -1,119 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include - -b2BroadPhase::b2BroadPhase() -{ - m_proxyCount = 0; - - m_pairCapacity = 16; - m_pairCount = 0; - m_pairBuffer = (b2Pair*)b2Alloc(m_pairCapacity * sizeof(b2Pair)); - - m_moveCapacity = 16; - m_moveCount = 0; - m_moveBuffer = (int32*)b2Alloc(m_moveCapacity * sizeof(int32)); -} - -b2BroadPhase::~b2BroadPhase() -{ - b2Free(m_moveBuffer); - b2Free(m_pairBuffer); -} - -int32 b2BroadPhase::CreateProxy(const b2AABB& aabb, void* userData) -{ - int32 proxyId = m_tree.CreateProxy(aabb, userData); - ++m_proxyCount; - BufferMove(proxyId); - return proxyId; -} - -void b2BroadPhase::DestroyProxy(int32 proxyId) -{ - UnBufferMove(proxyId); - --m_proxyCount; - m_tree.DestroyProxy(proxyId); -} - -void b2BroadPhase::MoveProxy(int32 proxyId, const b2AABB& aabb, const b2Vec2& displacement) -{ - bool buffer = m_tree.MoveProxy(proxyId, aabb, displacement); - if (buffer) - { - BufferMove(proxyId); - } -} - -void b2BroadPhase::TouchProxy(int32 proxyId) -{ - BufferMove(proxyId); -} - -void b2BroadPhase::BufferMove(int32 proxyId) -{ - if (m_moveCount == m_moveCapacity) - { - int32* oldBuffer = m_moveBuffer; - m_moveCapacity *= 2; - m_moveBuffer = (int32*)b2Alloc(m_moveCapacity * sizeof(int32)); - memcpy(m_moveBuffer, oldBuffer, m_moveCount * sizeof(int32)); - b2Free(oldBuffer); - } - - m_moveBuffer[m_moveCount] = proxyId; - ++m_moveCount; -} - -void b2BroadPhase::UnBufferMove(int32 proxyId) -{ - for (int32 i = 0; i < m_moveCount; ++i) - { - if (m_moveBuffer[i] == proxyId) - { - m_moveBuffer[i] = e_nullProxy; - } - } -} - -// This is called from b2DynamicTree::Query when we are gathering pairs. -bool b2BroadPhase::QueryCallback(int32 proxyId) -{ - // A proxy cannot form a pair with itself. - if (proxyId == m_queryProxyId) - { - return true; - } - - // Grow the pair buffer as needed. - if (m_pairCount == m_pairCapacity) - { - b2Pair* oldBuffer = m_pairBuffer; - m_pairCapacity *= 2; - m_pairBuffer = (b2Pair*)b2Alloc(m_pairCapacity * sizeof(b2Pair)); - memcpy(m_pairBuffer, oldBuffer, m_pairCount * sizeof(b2Pair)); - b2Free(oldBuffer); - } - - m_pairBuffer[m_pairCount].proxyIdA = b2Min(proxyId, m_queryProxyId); - m_pairBuffer[m_pairCount].proxyIdB = b2Max(proxyId, m_queryProxyId); - ++m_pairCount; - - return true; -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2BroadPhase.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2BroadPhase.h deleted file mode 100644 index 4905710..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2BroadPhase.h +++ /dev/null @@ -1,257 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_BROAD_PHASE_H -#define B2_BROAD_PHASE_H - -#include -#include -#include -#include - -struct b2Pair -{ - int32 proxyIdA; - int32 proxyIdB; -}; - -/// The broad-phase is used for computing pairs and performing volume queries and ray casts. -/// This broad-phase does not persist pairs. Instead, this reports potentially new pairs. -/// It is up to the client to consume the new pairs and to track subsequent overlap. -class b2BroadPhase -{ -public: - - enum - { - e_nullProxy = -1 - }; - - b2BroadPhase(); - ~b2BroadPhase(); - - /// Create a proxy with an initial AABB. Pairs are not reported until - /// UpdatePairs is called. - int32 CreateProxy(const b2AABB& aabb, void* userData); - - /// Destroy a proxy. It is up to the client to remove any pairs. - void DestroyProxy(int32 proxyId); - - /// Call MoveProxy as many times as you like, then when you are done - /// call UpdatePairs to finalized the proxy pairs (for your time step). - void MoveProxy(int32 proxyId, const b2AABB& aabb, const b2Vec2& displacement); - - /// Call to trigger a re-processing of it's pairs on the next call to UpdatePairs. - void TouchProxy(int32 proxyId); - - /// Get the fat AABB for a proxy. - const b2AABB& GetFatAABB(int32 proxyId) const; - - /// Get user data from a proxy. Returns NULL if the id is invalid. - void* GetUserData(int32 proxyId) const; - - /// Test overlap of fat AABBs. - bool TestOverlap(int32 proxyIdA, int32 proxyIdB) const; - - /// Get the number of proxies. - int32 GetProxyCount() const; - - /// Update the pairs. This results in pair callbacks. This can only add pairs. - template - void UpdatePairs(T* callback); - - /// Query an AABB for overlapping proxies. The callback class - /// is called for each proxy that overlaps the supplied AABB. - template - void Query(T* callback, const b2AABB& aabb) const; - - /// Ray-cast against the proxies in the tree. This relies on the callback - /// to perform a exact ray-cast in the case were the proxy contains a shape. - /// The callback also performs the any collision filtering. This has performance - /// roughly equal to k * log(n), where k is the number of collisions and n is the - /// number of proxies in the tree. - /// @param input the ray-cast input data. The ray extends from p1 to p1 + maxFraction * (p2 - p1). - /// @param callback a callback class that is called for each proxy that is hit by the ray. - template - void RayCast(T* callback, const b2RayCastInput& input) const; - - /// Get the height of the embedded tree. - int32 GetTreeHeight() const; - - /// Get the balance of the embedded tree. - int32 GetTreeBalance() const; - - /// Get the quality metric of the embedded tree. - float32 GetTreeQuality() const; - - /// Shift the world origin. Useful for large worlds. - /// The shift formula is: position -= newOrigin - /// @param newOrigin the new origin with respect to the old origin - void ShiftOrigin(const b2Vec2& newOrigin); - -private: - - friend class b2DynamicTree; - - void BufferMove(int32 proxyId); - void UnBufferMove(int32 proxyId); - - bool QueryCallback(int32 proxyId); - - b2DynamicTree m_tree; - - int32 m_proxyCount; - - int32* m_moveBuffer; - int32 m_moveCapacity; - int32 m_moveCount; - - b2Pair* m_pairBuffer; - int32 m_pairCapacity; - int32 m_pairCount; - - int32 m_queryProxyId; -}; - -/// This is used to sort pairs. -inline bool b2PairLessThan(const b2Pair& pair1, const b2Pair& pair2) -{ - if (pair1.proxyIdA < pair2.proxyIdA) - { - return true; - } - - if (pair1.proxyIdA == pair2.proxyIdA) - { - return pair1.proxyIdB < pair2.proxyIdB; - } - - return false; -} - -inline void* b2BroadPhase::GetUserData(int32 proxyId) const -{ - return m_tree.GetUserData(proxyId); -} - -inline bool b2BroadPhase::TestOverlap(int32 proxyIdA, int32 proxyIdB) const -{ - const b2AABB& aabbA = m_tree.GetFatAABB(proxyIdA); - const b2AABB& aabbB = m_tree.GetFatAABB(proxyIdB); - return b2TestOverlap(aabbA, aabbB); -} - -inline const b2AABB& b2BroadPhase::GetFatAABB(int32 proxyId) const -{ - return m_tree.GetFatAABB(proxyId); -} - -inline int32 b2BroadPhase::GetProxyCount() const -{ - return m_proxyCount; -} - -inline int32 b2BroadPhase::GetTreeHeight() const -{ - return m_tree.GetHeight(); -} - -inline int32 b2BroadPhase::GetTreeBalance() const -{ - return m_tree.GetMaxBalance(); -} - -inline float32 b2BroadPhase::GetTreeQuality() const -{ - return m_tree.GetAreaRatio(); -} - -template -void b2BroadPhase::UpdatePairs(T* callback) -{ - // Reset pair buffer - m_pairCount = 0; - - // Perform tree queries for all moving proxies. - for (int32 i = 0; i < m_moveCount; ++i) - { - m_queryProxyId = m_moveBuffer[i]; - if (m_queryProxyId == e_nullProxy) - { - continue; - } - - // We have to query the tree with the fat AABB so that - // we don't fail to create a pair that may touch later. - const b2AABB& fatAABB = m_tree.GetFatAABB(m_queryProxyId); - - // Query tree, create pairs and add them pair buffer. - m_tree.Query(this, fatAABB); - } - - // Reset move buffer - m_moveCount = 0; - - // Sort the pair buffer to expose duplicates. - std::sort(m_pairBuffer, m_pairBuffer + m_pairCount, b2PairLessThan); - - // Send the pairs back to the client. - int32 i = 0; - while (i < m_pairCount) - { - b2Pair* primaryPair = m_pairBuffer + i; - void* userDataA = m_tree.GetUserData(primaryPair->proxyIdA); - void* userDataB = m_tree.GetUserData(primaryPair->proxyIdB); - - callback->AddPair(userDataA, userDataB); - ++i; - - // Skip any duplicate pairs. - while (i < m_pairCount) - { - b2Pair* pair = m_pairBuffer + i; - if (pair->proxyIdA != primaryPair->proxyIdA || pair->proxyIdB != primaryPair->proxyIdB) - { - break; - } - ++i; - } - } - - // Try to keep the tree balanced. - //m_tree.Rebalance(4); -} - -template -inline void b2BroadPhase::Query(T* callback, const b2AABB& aabb) const -{ - m_tree.Query(callback, aabb); -} - -template -inline void b2BroadPhase::RayCast(T* callback, const b2RayCastInput& input) const -{ - m_tree.RayCast(callback, input); -} - -inline void b2BroadPhase::ShiftOrigin(const b2Vec2& newOrigin) -{ - m_tree.ShiftOrigin(newOrigin); -} - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2CollideCircle.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2CollideCircle.cpp deleted file mode 100644 index e60b208..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2CollideCircle.cpp +++ /dev/null @@ -1,154 +0,0 @@ -/* -* Copyright (c) 2007-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include -#include -#include - -void b2CollideCircles( - b2Manifold* manifold, - const b2CircleShape* circleA, const b2Transform& xfA, - const b2CircleShape* circleB, const b2Transform& xfB) -{ - manifold->pointCount = 0; - - b2Vec2 pA = b2Mul(xfA, circleA->m_p); - b2Vec2 pB = b2Mul(xfB, circleB->m_p); - - b2Vec2 d = pB - pA; - float32 distSqr = b2Dot(d, d); - float32 rA = circleA->m_radius, rB = circleB->m_radius; - float32 radius = rA + rB; - if (distSqr > radius * radius) - { - return; - } - - manifold->type = b2Manifold::e_circles; - manifold->localPoint = circleA->m_p; - manifold->localNormal.SetZero(); - manifold->pointCount = 1; - - manifold->points[0].localPoint = circleB->m_p; - manifold->points[0].id.key = 0; -} - -void b2CollidePolygonAndCircle( - b2Manifold* manifold, - const b2PolygonShape* polygonA, const b2Transform& xfA, - const b2CircleShape* circleB, const b2Transform& xfB) -{ - manifold->pointCount = 0; - - // Compute circle position in the frame of the polygon. - b2Vec2 c = b2Mul(xfB, circleB->m_p); - b2Vec2 cLocal = b2MulT(xfA, c); - - // Find the min separating edge. - int32 normalIndex = 0; - float32 separation = -b2_maxFloat; - float32 radius = polygonA->m_radius + circleB->m_radius; - int32 vertexCount = polygonA->m_count; - const b2Vec2* vertices = polygonA->m_vertices; - const b2Vec2* normals = polygonA->m_normals; - - for (int32 i = 0; i < vertexCount; ++i) - { - float32 s = b2Dot(normals[i], cLocal - vertices[i]); - - if (s > radius) - { - // Early out. - return; - } - - if (s > separation) - { - separation = s; - normalIndex = i; - } - } - - // Vertices that subtend the incident face. - int32 vertIndex1 = normalIndex; - int32 vertIndex2 = vertIndex1 + 1 < vertexCount ? vertIndex1 + 1 : 0; - b2Vec2 v1 = vertices[vertIndex1]; - b2Vec2 v2 = vertices[vertIndex2]; - - // If the center is inside the polygon ... - if (separation < b2_epsilon) - { - manifold->pointCount = 1; - manifold->type = b2Manifold::e_faceA; - manifold->localNormal = normals[normalIndex]; - manifold->localPoint = 0.5f * (v1 + v2); - manifold->points[0].localPoint = circleB->m_p; - manifold->points[0].id.key = 0; - return; - } - - // Compute barycentric coordinates - float32 u1 = b2Dot(cLocal - v1, v2 - v1); - float32 u2 = b2Dot(cLocal - v2, v1 - v2); - if (u1 <= 0.0f) - { - if (b2DistanceSquared(cLocal, v1) > radius * radius) - { - return; - } - - manifold->pointCount = 1; - manifold->type = b2Manifold::e_faceA; - manifold->localNormal = cLocal - v1; - manifold->localNormal.Normalize(); - manifold->localPoint = v1; - manifold->points[0].localPoint = circleB->m_p; - manifold->points[0].id.key = 0; - } - else if (u2 <= 0.0f) - { - if (b2DistanceSquared(cLocal, v2) > radius * radius) - { - return; - } - - manifold->pointCount = 1; - manifold->type = b2Manifold::e_faceA; - manifold->localNormal = cLocal - v2; - manifold->localNormal.Normalize(); - manifold->localPoint = v2; - manifold->points[0].localPoint = circleB->m_p; - manifold->points[0].id.key = 0; - } - else - { - b2Vec2 faceCenter = 0.5f * (v1 + v2); - float32 separation = b2Dot(cLocal - faceCenter, normals[vertIndex1]); - if (separation > radius) - { - return; - } - - manifold->pointCount = 1; - manifold->type = b2Manifold::e_faceA; - manifold->localNormal = normals[vertIndex1]; - manifold->localPoint = faceCenter; - manifold->points[0].localPoint = circleB->m_p; - manifold->points[0].id.key = 0; - } -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2CollideEdge.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2CollideEdge.cpp deleted file mode 100644 index c8276be..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2CollideEdge.cpp +++ /dev/null @@ -1,698 +0,0 @@ -/* - * Copyright (c) 2007-2009 Erin Catto http://www.box2d.org - * - * This software is provided 'as-is', without any express or implied - * warranty. In no event will the authors be held liable for any damages - * arising from the use of this software. - * Permission is granted to anyone to use this software for any purpose, - * including commercial applications, and to alter it and redistribute it - * freely, subject to the following restrictions: - * 1. The origin of this software must not be misrepresented; you must not - * claim that you wrote the original software. If you use this software - * in a product, an acknowledgment in the product documentation would be - * appreciated but is not required. - * 2. Altered source versions must be plainly marked as such, and must not be - * misrepresented as being the original software. - * 3. This notice may not be removed or altered from any source distribution. - */ - -#include -#include -#include -#include - - -// Compute contact points for edge versus circle. -// This accounts for edge connectivity. -void b2CollideEdgeAndCircle(b2Manifold* manifold, - const b2EdgeShape* edgeA, const b2Transform& xfA, - const b2CircleShape* circleB, const b2Transform& xfB) -{ - manifold->pointCount = 0; - - // Compute circle in frame of edge - b2Vec2 Q = b2MulT(xfA, b2Mul(xfB, circleB->m_p)); - - b2Vec2 A = edgeA->m_vertex1, B = edgeA->m_vertex2; - b2Vec2 e = B - A; - - // Barycentric coordinates - float32 u = b2Dot(e, B - Q); - float32 v = b2Dot(e, Q - A); - - float32 radius = edgeA->m_radius + circleB->m_radius; - - b2ContactFeature cf; - cf.indexB = 0; - cf.typeB = b2ContactFeature::e_vertex; - - // Region A - if (v <= 0.0f) - { - b2Vec2 P = A; - b2Vec2 d = Q - P; - float32 dd = b2Dot(d, d); - if (dd > radius * radius) - { - return; - } - - // Is there an edge connected to A? - if (edgeA->m_hasVertex0) - { - b2Vec2 A1 = edgeA->m_vertex0; - b2Vec2 B1 = A; - b2Vec2 e1 = B1 - A1; - float32 u1 = b2Dot(e1, B1 - Q); - - // Is the circle in Region AB of the previous edge? - if (u1 > 0.0f) - { - return; - } - } - - cf.indexA = 0; - cf.typeA = b2ContactFeature::e_vertex; - manifold->pointCount = 1; - manifold->type = b2Manifold::e_circles; - manifold->localNormal.SetZero(); - manifold->localPoint = P; - manifold->points[0].id.key = 0; - manifold->points[0].id.cf = cf; - manifold->points[0].localPoint = circleB->m_p; - return; - } - - // Region B - if (u <= 0.0f) - { - b2Vec2 P = B; - b2Vec2 d = Q - P; - float32 dd = b2Dot(d, d); - if (dd > radius * radius) - { - return; - } - - // Is there an edge connected to B? - if (edgeA->m_hasVertex3) - { - b2Vec2 B2 = edgeA->m_vertex3; - b2Vec2 A2 = B; - b2Vec2 e2 = B2 - A2; - float32 v2 = b2Dot(e2, Q - A2); - - // Is the circle in Region AB of the next edge? - if (v2 > 0.0f) - { - return; - } - } - - cf.indexA = 1; - cf.typeA = b2ContactFeature::e_vertex; - manifold->pointCount = 1; - manifold->type = b2Manifold::e_circles; - manifold->localNormal.SetZero(); - manifold->localPoint = P; - manifold->points[0].id.key = 0; - manifold->points[0].id.cf = cf; - manifold->points[0].localPoint = circleB->m_p; - return; - } - - // Region AB - float32 den = b2Dot(e, e); - b2Assert(den > 0.0f); - b2Vec2 P = (1.0f / den) * (u * A + v * B); - b2Vec2 d = Q - P; - float32 dd = b2Dot(d, d); - if (dd > radius * radius) - { - return; - } - - b2Vec2 n(-e.y, e.x); - if (b2Dot(n, Q - A) < 0.0f) - { - n.Set(-n.x, -n.y); - } - n.Normalize(); - - cf.indexA = 0; - cf.typeA = b2ContactFeature::e_face; - manifold->pointCount = 1; - manifold->type = b2Manifold::e_faceA; - manifold->localNormal = n; - manifold->localPoint = A; - manifold->points[0].id.key = 0; - manifold->points[0].id.cf = cf; - manifold->points[0].localPoint = circleB->m_p; -} - -// This structure is used to keep track of the best separating axis. -struct b2EPAxis -{ - enum Type - { - e_unknown, - e_edgeA, - e_edgeB - }; - - Type type; - int32 index; - float32 separation; -}; - -// This holds polygon B expressed in frame A. -struct b2TempPolygon -{ - b2Vec2 vertices[b2_maxPolygonVertices]; - b2Vec2 normals[b2_maxPolygonVertices]; - int32 count; -}; - -// Reference face used for clipping -struct b2ReferenceFace -{ - int32 i1, i2; - - b2Vec2 v1, v2; - - b2Vec2 normal; - - b2Vec2 sideNormal1; - float32 sideOffset1; - - b2Vec2 sideNormal2; - float32 sideOffset2; -}; - -// This class collides and edge and a polygon, taking into account edge adjacency. -struct b2EPCollider -{ - void Collide(b2Manifold* manifold, const b2EdgeShape* edgeA, const b2Transform& xfA, - const b2PolygonShape* polygonB, const b2Transform& xfB); - b2EPAxis ComputeEdgeSeparation(); - b2EPAxis ComputePolygonSeparation(); - - enum VertexType - { - e_isolated, - e_concave, - e_convex - }; - - b2TempPolygon m_polygonB; - - b2Transform m_xf; - b2Vec2 m_centroidB; - b2Vec2 m_v0, m_v1, m_v2, m_v3; - b2Vec2 m_normal0, m_normal1, m_normal2; - b2Vec2 m_normal; - VertexType m_type1, m_type2; - b2Vec2 m_lowerLimit, m_upperLimit; - float32 m_radius; - bool m_front; -}; - -// Algorithm: -// 1. Classify v1 and v2 -// 2. Classify polygon centroid as front or back -// 3. Flip normal if necessary -// 4. Initialize normal range to [-pi, pi] about face normal -// 5. Adjust normal range according to adjacent edges -// 6. Visit each separating axes, only accept axes within the range -// 7. Return if _any_ axis indicates separation -// 8. Clip -void b2EPCollider::Collide(b2Manifold* manifold, const b2EdgeShape* edgeA, const b2Transform& xfA, - const b2PolygonShape* polygonB, const b2Transform& xfB) -{ - m_xf = b2MulT(xfA, xfB); - - m_centroidB = b2Mul(m_xf, polygonB->m_centroid); - - m_v0 = edgeA->m_vertex0; - m_v1 = edgeA->m_vertex1; - m_v2 = edgeA->m_vertex2; - m_v3 = edgeA->m_vertex3; - - bool hasVertex0 = edgeA->m_hasVertex0; - bool hasVertex3 = edgeA->m_hasVertex3; - - b2Vec2 edge1 = m_v2 - m_v1; - edge1.Normalize(); - m_normal1.Set(edge1.y, -edge1.x); - float32 offset1 = b2Dot(m_normal1, m_centroidB - m_v1); - float32 offset0 = 0.0f, offset2 = 0.0f; - bool convex1 = false, convex2 = false; - - // Is there a preceding edge? - if (hasVertex0) - { - b2Vec2 edge0 = m_v1 - m_v0; - edge0.Normalize(); - m_normal0.Set(edge0.y, -edge0.x); - convex1 = b2Cross(edge0, edge1) >= 0.0f; - offset0 = b2Dot(m_normal0, m_centroidB - m_v0); - } - - // Is there a following edge? - if (hasVertex3) - { - b2Vec2 edge2 = m_v3 - m_v2; - edge2.Normalize(); - m_normal2.Set(edge2.y, -edge2.x); - convex2 = b2Cross(edge1, edge2) > 0.0f; - offset2 = b2Dot(m_normal2, m_centroidB - m_v2); - } - - // Determine front or back collision. Determine collision normal limits. - if (hasVertex0 && hasVertex3) - { - if (convex1 && convex2) - { - m_front = offset0 >= 0.0f || offset1 >= 0.0f || offset2 >= 0.0f; - if (m_front) - { - m_normal = m_normal1; - m_lowerLimit = m_normal0; - m_upperLimit = m_normal2; - } - else - { - m_normal = -m_normal1; - m_lowerLimit = -m_normal1; - m_upperLimit = -m_normal1; - } - } - else if (convex1) - { - m_front = offset0 >= 0.0f || (offset1 >= 0.0f && offset2 >= 0.0f); - if (m_front) - { - m_normal = m_normal1; - m_lowerLimit = m_normal0; - m_upperLimit = m_normal1; - } - else - { - m_normal = -m_normal1; - m_lowerLimit = -m_normal2; - m_upperLimit = -m_normal1; - } - } - else if (convex2) - { - m_front = offset2 >= 0.0f || (offset0 >= 0.0f && offset1 >= 0.0f); - if (m_front) - { - m_normal = m_normal1; - m_lowerLimit = m_normal1; - m_upperLimit = m_normal2; - } - else - { - m_normal = -m_normal1; - m_lowerLimit = -m_normal1; - m_upperLimit = -m_normal0; - } - } - else - { - m_front = offset0 >= 0.0f && offset1 >= 0.0f && offset2 >= 0.0f; - if (m_front) - { - m_normal = m_normal1; - m_lowerLimit = m_normal1; - m_upperLimit = m_normal1; - } - else - { - m_normal = -m_normal1; - m_lowerLimit = -m_normal2; - m_upperLimit = -m_normal0; - } - } - } - else if (hasVertex0) - { - if (convex1) - { - m_front = offset0 >= 0.0f || offset1 >= 0.0f; - if (m_front) - { - m_normal = m_normal1; - m_lowerLimit = m_normal0; - m_upperLimit = -m_normal1; - } - else - { - m_normal = -m_normal1; - m_lowerLimit = m_normal1; - m_upperLimit = -m_normal1; - } - } - else - { - m_front = offset0 >= 0.0f && offset1 >= 0.0f; - if (m_front) - { - m_normal = m_normal1; - m_lowerLimit = m_normal1; - m_upperLimit = -m_normal1; - } - else - { - m_normal = -m_normal1; - m_lowerLimit = m_normal1; - m_upperLimit = -m_normal0; - } - } - } - else if (hasVertex3) - { - if (convex2) - { - m_front = offset1 >= 0.0f || offset2 >= 0.0f; - if (m_front) - { - m_normal = m_normal1; - m_lowerLimit = -m_normal1; - m_upperLimit = m_normal2; - } - else - { - m_normal = -m_normal1; - m_lowerLimit = -m_normal1; - m_upperLimit = m_normal1; - } - } - else - { - m_front = offset1 >= 0.0f && offset2 >= 0.0f; - if (m_front) - { - m_normal = m_normal1; - m_lowerLimit = -m_normal1; - m_upperLimit = m_normal1; - } - else - { - m_normal = -m_normal1; - m_lowerLimit = -m_normal2; - m_upperLimit = m_normal1; - } - } - } - else - { - m_front = offset1 >= 0.0f; - if (m_front) - { - m_normal = m_normal1; - m_lowerLimit = -m_normal1; - m_upperLimit = -m_normal1; - } - else - { - m_normal = -m_normal1; - m_lowerLimit = m_normal1; - m_upperLimit = m_normal1; - } - } - - // Get polygonB in frameA - m_polygonB.count = polygonB->m_count; - for (int32 i = 0; i < polygonB->m_count; ++i) - { - m_polygonB.vertices[i] = b2Mul(m_xf, polygonB->m_vertices[i]); - m_polygonB.normals[i] = b2Mul(m_xf.q, polygonB->m_normals[i]); - } - - m_radius = 2.0f * b2_polygonRadius; - - manifold->pointCount = 0; - - b2EPAxis edgeAxis = ComputeEdgeSeparation(); - - // If no valid normal can be found than this edge should not collide. - if (edgeAxis.type == b2EPAxis::e_unknown) - { - return; - } - - if (edgeAxis.separation > m_radius) - { - return; - } - - b2EPAxis polygonAxis = ComputePolygonSeparation(); - if (polygonAxis.type != b2EPAxis::e_unknown && polygonAxis.separation > m_radius) - { - return; - } - - // Use hysteresis for jitter reduction. - const float32 k_relativeTol = 0.98f; - const float32 k_absoluteTol = 0.001f; - - b2EPAxis primaryAxis; - if (polygonAxis.type == b2EPAxis::e_unknown) - { - primaryAxis = edgeAxis; - } - else if (polygonAxis.separation > k_relativeTol * edgeAxis.separation + k_absoluteTol) - { - primaryAxis = polygonAxis; - } - else - { - primaryAxis = edgeAxis; - } - - b2ClipVertex ie[2]; - b2ReferenceFace rf; - if (primaryAxis.type == b2EPAxis::e_edgeA) - { - manifold->type = b2Manifold::e_faceA; - - // Search for the polygon normal that is most anti-parallel to the edge normal. - int32 bestIndex = 0; - float32 bestValue = b2Dot(m_normal, m_polygonB.normals[0]); - for (int32 i = 1; i < m_polygonB.count; ++i) - { - float32 value = b2Dot(m_normal, m_polygonB.normals[i]); - if (value < bestValue) - { - bestValue = value; - bestIndex = i; - } - } - - int32 i1 = bestIndex; - int32 i2 = i1 + 1 < m_polygonB.count ? i1 + 1 : 0; - - ie[0].v = m_polygonB.vertices[i1]; - ie[0].id.cf.indexA = 0; - ie[0].id.cf.indexB = static_cast(i1); - ie[0].id.cf.typeA = b2ContactFeature::e_face; - ie[0].id.cf.typeB = b2ContactFeature::e_vertex; - - ie[1].v = m_polygonB.vertices[i2]; - ie[1].id.cf.indexA = 0; - ie[1].id.cf.indexB = static_cast(i2); - ie[1].id.cf.typeA = b2ContactFeature::e_face; - ie[1].id.cf.typeB = b2ContactFeature::e_vertex; - - if (m_front) - { - rf.i1 = 0; - rf.i2 = 1; - rf.v1 = m_v1; - rf.v2 = m_v2; - rf.normal = m_normal1; - } - else - { - rf.i1 = 1; - rf.i2 = 0; - rf.v1 = m_v2; - rf.v2 = m_v1; - rf.normal = -m_normal1; - } - } - else - { - manifold->type = b2Manifold::e_faceB; - - ie[0].v = m_v1; - ie[0].id.cf.indexA = 0; - ie[0].id.cf.indexB = static_cast(primaryAxis.index); - ie[0].id.cf.typeA = b2ContactFeature::e_vertex; - ie[0].id.cf.typeB = b2ContactFeature::e_face; - - ie[1].v = m_v2; - ie[1].id.cf.indexA = 0; - ie[1].id.cf.indexB = static_cast(primaryAxis.index); - ie[1].id.cf.typeA = b2ContactFeature::e_vertex; - ie[1].id.cf.typeB = b2ContactFeature::e_face; - - rf.i1 = primaryAxis.index; - rf.i2 = rf.i1 + 1 < m_polygonB.count ? rf.i1 + 1 : 0; - rf.v1 = m_polygonB.vertices[rf.i1]; - rf.v2 = m_polygonB.vertices[rf.i2]; - rf.normal = m_polygonB.normals[rf.i1]; - } - - rf.sideNormal1.Set(rf.normal.y, -rf.normal.x); - rf.sideNormal2 = -rf.sideNormal1; - rf.sideOffset1 = b2Dot(rf.sideNormal1, rf.v1); - rf.sideOffset2 = b2Dot(rf.sideNormal2, rf.v2); - - // Clip incident edge against extruded edge1 side edges. - b2ClipVertex clipPoints1[2]; - b2ClipVertex clipPoints2[2]; - int32 np; - - // Clip to box side 1 - np = b2ClipSegmentToLine(clipPoints1, ie, rf.sideNormal1, rf.sideOffset1, rf.i1); - - if (np < b2_maxManifoldPoints) - { - return; - } - - // Clip to negative box side 1 - np = b2ClipSegmentToLine(clipPoints2, clipPoints1, rf.sideNormal2, rf.sideOffset2, rf.i2); - - if (np < b2_maxManifoldPoints) - { - return; - } - - // Now clipPoints2 contains the clipped points. - if (primaryAxis.type == b2EPAxis::e_edgeA) - { - manifold->localNormal = rf.normal; - manifold->localPoint = rf.v1; - } - else - { - manifold->localNormal = polygonB->m_normals[rf.i1]; - manifold->localPoint = polygonB->m_vertices[rf.i1]; - } - - int32 pointCount = 0; - for (int32 i = 0; i < b2_maxManifoldPoints; ++i) - { - float32 separation; - - separation = b2Dot(rf.normal, clipPoints2[i].v - rf.v1); - - if (separation <= m_radius) - { - b2ManifoldPoint* cp = manifold->points + pointCount; - - if (primaryAxis.type == b2EPAxis::e_edgeA) - { - cp->localPoint = b2MulT(m_xf, clipPoints2[i].v); - cp->id = clipPoints2[i].id; - } - else - { - cp->localPoint = clipPoints2[i].v; - cp->id.cf.typeA = clipPoints2[i].id.cf.typeB; - cp->id.cf.typeB = clipPoints2[i].id.cf.typeA; - cp->id.cf.indexA = clipPoints2[i].id.cf.indexB; - cp->id.cf.indexB = clipPoints2[i].id.cf.indexA; - } - - ++pointCount; - } - } - - manifold->pointCount = pointCount; -} - -b2EPAxis b2EPCollider::ComputeEdgeSeparation() -{ - b2EPAxis axis; - axis.type = b2EPAxis::e_edgeA; - axis.index = m_front ? 0 : 1; - axis.separation = FLT_MAX; - - for (int32 i = 0; i < m_polygonB.count; ++i) - { - float32 s = b2Dot(m_normal, m_polygonB.vertices[i] - m_v1); - if (s < axis.separation) - { - axis.separation = s; - } - } - - return axis; -} - -b2EPAxis b2EPCollider::ComputePolygonSeparation() -{ - b2EPAxis axis; - axis.type = b2EPAxis::e_unknown; - axis.index = -1; - axis.separation = -FLT_MAX; - - b2Vec2 perp(-m_normal.y, m_normal.x); - - for (int32 i = 0; i < m_polygonB.count; ++i) - { - b2Vec2 n = -m_polygonB.normals[i]; - - float32 s1 = b2Dot(n, m_polygonB.vertices[i] - m_v1); - float32 s2 = b2Dot(n, m_polygonB.vertices[i] - m_v2); - float32 s = b2Min(s1, s2); - - if (s > m_radius) - { - // No collision - axis.type = b2EPAxis::e_edgeB; - axis.index = i; - axis.separation = s; - return axis; - } - - // Adjacency - if (b2Dot(n, perp) >= 0.0f) - { - if (b2Dot(n - m_upperLimit, m_normal) < -b2_angularSlop) - { - continue; - } - } - else - { - if (b2Dot(n - m_lowerLimit, m_normal) < -b2_angularSlop) - { - continue; - } - } - - if (s > axis.separation) - { - axis.type = b2EPAxis::e_edgeB; - axis.index = i; - axis.separation = s; - } - } - - return axis; -} - -void b2CollideEdgeAndPolygon( b2Manifold* manifold, - const b2EdgeShape* edgeA, const b2Transform& xfA, - const b2PolygonShape* polygonB, const b2Transform& xfB) -{ - b2EPCollider collider; - collider.Collide(manifold, edgeA, xfA, polygonB, xfB); -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2CollidePolygon.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2CollidePolygon.cpp deleted file mode 100644 index b24d01e..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2CollidePolygon.cpp +++ /dev/null @@ -1,239 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include -#include - -// Find the max separation between poly1 and poly2 using edge normals from poly1. -static float32 b2FindMaxSeparation(int32* edgeIndex, - const b2PolygonShape* poly1, const b2Transform& xf1, - const b2PolygonShape* poly2, const b2Transform& xf2) -{ - int32 count1 = poly1->m_count; - int32 count2 = poly2->m_count; - const b2Vec2* n1s = poly1->m_normals; - const b2Vec2* v1s = poly1->m_vertices; - const b2Vec2* v2s = poly2->m_vertices; - b2Transform xf = b2MulT(xf2, xf1); - - int32 bestIndex = 0; - float32 maxSeparation = -b2_maxFloat; - for (int32 i = 0; i < count1; ++i) - { - // Get poly1 normal in frame2. - b2Vec2 n = b2Mul(xf.q, n1s[i]); - b2Vec2 v1 = b2Mul(xf, v1s[i]); - - // Find deepest point for normal i. - float32 si = b2_maxFloat; - for (int32 j = 0; j < count2; ++j) - { - float32 sij = b2Dot(n, v2s[j] - v1); - if (sij < si) - { - si = sij; - } - } - - if (si > maxSeparation) - { - maxSeparation = si; - bestIndex = i; - } - } - - *edgeIndex = bestIndex; - return maxSeparation; -} - -static void b2FindIncidentEdge(b2ClipVertex c[2], - const b2PolygonShape* poly1, const b2Transform& xf1, int32 edge1, - const b2PolygonShape* poly2, const b2Transform& xf2) -{ - const b2Vec2* normals1 = poly1->m_normals; - - int32 count2 = poly2->m_count; - const b2Vec2* vertices2 = poly2->m_vertices; - const b2Vec2* normals2 = poly2->m_normals; - - b2Assert(0 <= edge1 && edge1 < poly1->m_count); - - // Get the normal of the reference edge in poly2's frame. - b2Vec2 normal1 = b2MulT(xf2.q, b2Mul(xf1.q, normals1[edge1])); - - // Find the incident edge on poly2. - int32 index = 0; - float32 minDot = b2_maxFloat; - for (int32 i = 0; i < count2; ++i) - { - float32 dot = b2Dot(normal1, normals2[i]); - if (dot < minDot) - { - minDot = dot; - index = i; - } - } - - // Build the clip vertices for the incident edge. - int32 i1 = index; - int32 i2 = i1 + 1 < count2 ? i1 + 1 : 0; - - c[0].v = b2Mul(xf2, vertices2[i1]); - c[0].id.cf.indexA = (uint8)edge1; - c[0].id.cf.indexB = (uint8)i1; - c[0].id.cf.typeA = b2ContactFeature::e_face; - c[0].id.cf.typeB = b2ContactFeature::e_vertex; - - c[1].v = b2Mul(xf2, vertices2[i2]); - c[1].id.cf.indexA = (uint8)edge1; - c[1].id.cf.indexB = (uint8)i2; - c[1].id.cf.typeA = b2ContactFeature::e_face; - c[1].id.cf.typeB = b2ContactFeature::e_vertex; -} - -// Find edge normal of max separation on A - return if separating axis is found -// Find edge normal of max separation on B - return if separation axis is found -// Choose reference edge as min(minA, minB) -// Find incident edge -// Clip - -// The normal points from 1 to 2 -void b2CollidePolygons(b2Manifold* manifold, - const b2PolygonShape* polyA, const b2Transform& xfA, - const b2PolygonShape* polyB, const b2Transform& xfB) -{ - manifold->pointCount = 0; - float32 totalRadius = polyA->m_radius + polyB->m_radius; - - int32 edgeA = 0; - float32 separationA = b2FindMaxSeparation(&edgeA, polyA, xfA, polyB, xfB); - if (separationA > totalRadius) - return; - - int32 edgeB = 0; - float32 separationB = b2FindMaxSeparation(&edgeB, polyB, xfB, polyA, xfA); - if (separationB > totalRadius) - return; - - const b2PolygonShape* poly1; // reference polygon - const b2PolygonShape* poly2; // incident polygon - b2Transform xf1, xf2; - int32 edge1; // reference edge - uint8 flip; - const float32 k_tol = 0.1f * b2_linearSlop; - - if (separationB > separationA + k_tol) - { - poly1 = polyB; - poly2 = polyA; - xf1 = xfB; - xf2 = xfA; - edge1 = edgeB; - manifold->type = b2Manifold::e_faceB; - flip = 1; - } - else - { - poly1 = polyA; - poly2 = polyB; - xf1 = xfA; - xf2 = xfB; - edge1 = edgeA; - manifold->type = b2Manifold::e_faceA; - flip = 0; - } - - b2ClipVertex incidentEdge[2]; - b2FindIncidentEdge(incidentEdge, poly1, xf1, edge1, poly2, xf2); - - int32 count1 = poly1->m_count; - const b2Vec2* vertices1 = poly1->m_vertices; - - int32 iv1 = edge1; - int32 iv2 = edge1 + 1 < count1 ? edge1 + 1 : 0; - - b2Vec2 v11 = vertices1[iv1]; - b2Vec2 v12 = vertices1[iv2]; - - b2Vec2 localTangent = v12 - v11; - localTangent.Normalize(); - - b2Vec2 localNormal = b2Cross(localTangent, 1.0f); - b2Vec2 planePoint = 0.5f * (v11 + v12); - - b2Vec2 tangent = b2Mul(xf1.q, localTangent); - b2Vec2 normal = b2Cross(tangent, 1.0f); - - v11 = b2Mul(xf1, v11); - v12 = b2Mul(xf1, v12); - - // Face offset. - float32 frontOffset = b2Dot(normal, v11); - - // Side offsets, extended by polytope skin thickness. - float32 sideOffset1 = -b2Dot(tangent, v11) + totalRadius; - float32 sideOffset2 = b2Dot(tangent, v12) + totalRadius; - - // Clip incident edge against extruded edge1 side edges. - b2ClipVertex clipPoints1[2]; - b2ClipVertex clipPoints2[2]; - int np; - - // Clip to box side 1 - np = b2ClipSegmentToLine(clipPoints1, incidentEdge, -tangent, sideOffset1, iv1); - - if (np < 2) - return; - - // Clip to negative box side 1 - np = b2ClipSegmentToLine(clipPoints2, clipPoints1, tangent, sideOffset2, iv2); - - if (np < 2) - { - return; - } - - // Now clipPoints2 contains the clipped points. - manifold->localNormal = localNormal; - manifold->localPoint = planePoint; - - int32 pointCount = 0; - for (int32 i = 0; i < b2_maxManifoldPoints; ++i) - { - float32 separation = b2Dot(normal, clipPoints2[i].v) - frontOffset; - - if (separation <= totalRadius) - { - b2ManifoldPoint* cp = manifold->points + pointCount; - cp->localPoint = b2MulT(xf2, clipPoints2[i].v); - cp->id = clipPoints2[i].id; - if (flip) - { - // Swap features - b2ContactFeature cf = cp->id.cf; - cp->id.cf.indexA = cf.indexB; - cp->id.cf.indexB = cf.indexA; - cp->id.cf.typeA = cf.typeB; - cp->id.cf.typeB = cf.typeA; - } - ++pointCount; - } - } - - manifold->pointCount = pointCount; -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2Collision.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2Collision.cpp deleted file mode 100644 index bd3e78b..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2Collision.cpp +++ /dev/null @@ -1,252 +0,0 @@ -/* -* Copyright (c) 2007-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include -#include - -void b2WorldManifold::Initialize(const b2Manifold* manifold, - const b2Transform& xfA, float32 radiusA, - const b2Transform& xfB, float32 radiusB) -{ - if (manifold->pointCount == 0) - { - return; - } - - switch (manifold->type) - { - case b2Manifold::e_circles: - { - normal.Set(1.0f, 0.0f); - b2Vec2 pointA = b2Mul(xfA, manifold->localPoint); - b2Vec2 pointB = b2Mul(xfB, manifold->points[0].localPoint); - if (b2DistanceSquared(pointA, pointB) > b2_epsilon * b2_epsilon) - { - normal = pointB - pointA; - normal.Normalize(); - } - - b2Vec2 cA = pointA + radiusA * normal; - b2Vec2 cB = pointB - radiusB * normal; - points[0] = 0.5f * (cA + cB); - separations[0] = b2Dot(cB - cA, normal); - } - break; - - case b2Manifold::e_faceA: - { - normal = b2Mul(xfA.q, manifold->localNormal); - b2Vec2 planePoint = b2Mul(xfA, manifold->localPoint); - - for (int32 i = 0; i < manifold->pointCount; ++i) - { - b2Vec2 clipPoint = b2Mul(xfB, manifold->points[i].localPoint); - b2Vec2 cA = clipPoint + (radiusA - b2Dot(clipPoint - planePoint, normal)) * normal; - b2Vec2 cB = clipPoint - radiusB * normal; - points[i] = 0.5f * (cA + cB); - separations[i] = b2Dot(cB - cA, normal); - } - } - break; - - case b2Manifold::e_faceB: - { - normal = b2Mul(xfB.q, manifold->localNormal); - b2Vec2 planePoint = b2Mul(xfB, manifold->localPoint); - - for (int32 i = 0; i < manifold->pointCount; ++i) - { - b2Vec2 clipPoint = b2Mul(xfA, manifold->points[i].localPoint); - b2Vec2 cB = clipPoint + (radiusB - b2Dot(clipPoint - planePoint, normal)) * normal; - b2Vec2 cA = clipPoint - radiusA * normal; - points[i] = 0.5f * (cA + cB); - separations[i] = b2Dot(cA - cB, normal); - } - - // Ensure normal points from A to B. - normal = -normal; - } - break; - } -} - -void b2GetPointStates(b2PointState state1[b2_maxManifoldPoints], b2PointState state2[b2_maxManifoldPoints], - const b2Manifold* manifold1, const b2Manifold* manifold2) -{ - for (int32 i = 0; i < b2_maxManifoldPoints; ++i) - { - state1[i] = b2_nullState; - state2[i] = b2_nullState; - } - - // Detect persists and removes. - for (int32 i = 0; i < manifold1->pointCount; ++i) - { - b2ContactID id = manifold1->points[i].id; - - state1[i] = b2_removeState; - - for (int32 j = 0; j < manifold2->pointCount; ++j) - { - if (manifold2->points[j].id.key == id.key) - { - state1[i] = b2_persistState; - break; - } - } - } - - // Detect persists and adds. - for (int32 i = 0; i < manifold2->pointCount; ++i) - { - b2ContactID id = manifold2->points[i].id; - - state2[i] = b2_addState; - - for (int32 j = 0; j < manifold1->pointCount; ++j) - { - if (manifold1->points[j].id.key == id.key) - { - state2[i] = b2_persistState; - break; - } - } - } -} - -// From Real-time Collision Detection, p179. -bool b2AABB::RayCast(b2RayCastOutput* output, const b2RayCastInput& input) const -{ - float32 tmin = -b2_maxFloat; - float32 tmax = b2_maxFloat; - - b2Vec2 p = input.p1; - b2Vec2 d = input.p2 - input.p1; - b2Vec2 absD = b2Abs(d); - - b2Vec2 normal; - - for (int32 i = 0; i < 2; ++i) - { - if (absD(i) < b2_epsilon) - { - // Parallel. - if (p(i) < lowerBound(i) || upperBound(i) < p(i)) - { - return false; - } - } - else - { - float32 inv_d = 1.0f / d(i); - float32 t1 = (lowerBound(i) - p(i)) * inv_d; - float32 t2 = (upperBound(i) - p(i)) * inv_d; - - // Sign of the normal vector. - float32 s = -1.0f; - - if (t1 > t2) - { - b2Swap(t1, t2); - s = 1.0f; - } - - // Push the min up - if (t1 > tmin) - { - normal.SetZero(); - normal(i) = s; - tmin = t1; - } - - // Pull the max down - tmax = b2Min(tmax, t2); - - if (tmin > tmax) - { - return false; - } - } - } - - // Does the ray start inside the box? - // Does the ray intersect beyond the max fraction? - if (tmin < 0.0f || input.maxFraction < tmin) - { - return false; - } - - // Intersection. - output->fraction = tmin; - output->normal = normal; - return true; -} - -// Sutherland-Hodgman clipping. -int32 b2ClipSegmentToLine(b2ClipVertex vOut[2], const b2ClipVertex vIn[2], - const b2Vec2& normal, float32 offset, int32 vertexIndexA) -{ - // Start with no output points - int32 numOut = 0; - - // Calculate the distance of end points to the line - float32 distance0 = b2Dot(normal, vIn[0].v) - offset; - float32 distance1 = b2Dot(normal, vIn[1].v) - offset; - - // If the points are behind the plane - if (distance0 <= 0.0f) vOut[numOut++] = vIn[0]; - if (distance1 <= 0.0f) vOut[numOut++] = vIn[1]; - - // If the points are on different sides of the plane - if (distance0 * distance1 < 0.0f) - { - // Find intersection point of edge and plane - float32 interp = distance0 / (distance0 - distance1); - vOut[numOut].v = vIn[0].v + interp * (vIn[1].v - vIn[0].v); - - // VertexA is hitting edgeB. - vOut[numOut].id.cf.indexA = static_cast(vertexIndexA); - vOut[numOut].id.cf.indexB = vIn[0].id.cf.indexB; - vOut[numOut].id.cf.typeA = b2ContactFeature::e_vertex; - vOut[numOut].id.cf.typeB = b2ContactFeature::e_face; - ++numOut; - } - - return numOut; -} - -bool b2TestOverlap( const b2Shape* shapeA, int32 indexA, - const b2Shape* shapeB, int32 indexB, - const b2Transform& xfA, const b2Transform& xfB) -{ - b2DistanceInput input; - input.proxyA.Set(shapeA, indexA); - input.proxyB.Set(shapeB, indexB); - input.transformA = xfA; - input.transformB = xfB; - input.useRadii = true; - - b2SimplexCache cache; - cache.count = 0; - - b2DistanceOutput output; - - b2Distance(&output, &cache, &input); - - return output.distance < 10.0f * b2_epsilon; -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2Collision.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2Collision.h deleted file mode 100644 index 8b0ed66..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2Collision.h +++ /dev/null @@ -1,277 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_COLLISION_H -#define B2_COLLISION_H - -#include -#include - -/// @file -/// Structures and functions used for computing contact points, distance -/// queries, and TOI queries. - -class b2Shape; -class b2CircleShape; -class b2EdgeShape; -class b2PolygonShape; - -const uint8 b2_nullFeature = UCHAR_MAX; - -/// The features that intersect to form the contact point -/// This must be 4 bytes or less. -struct b2ContactFeature -{ - enum Type - { - e_vertex = 0, - e_face = 1 - }; - - uint8 indexA; ///< Feature index on shapeA - uint8 indexB; ///< Feature index on shapeB - uint8 typeA; ///< The feature type on shapeA - uint8 typeB; ///< The feature type on shapeB -}; - -/// Contact ids to facilitate warm starting. -union b2ContactID -{ - b2ContactFeature cf; - uint32 key; ///< Used to quickly compare contact ids. -}; - -/// A manifold point is a contact point belonging to a contact -/// manifold. It holds details related to the geometry and dynamics -/// of the contact points. -/// The local point usage depends on the manifold type: -/// -e_circles: the local center of circleB -/// -e_faceA: the local center of cirlceB or the clip point of polygonB -/// -e_faceB: the clip point of polygonA -/// This structure is stored across time steps, so we keep it small. -/// Note: the impulses are used for internal caching and may not -/// provide reliable contact forces, especially for high speed collisions. -struct b2ManifoldPoint -{ - b2Vec2 localPoint; ///< usage depends on manifold type - float32 normalImpulse; ///< the non-penetration impulse - float32 tangentImpulse; ///< the friction impulse - b2ContactID id; ///< uniquely identifies a contact point between two shapes -}; - -/// A manifold for two touching convex shapes. -/// Box2D supports multiple types of contact: -/// - clip point versus plane with radius -/// - point versus point with radius (circles) -/// The local point usage depends on the manifold type: -/// -e_circles: the local center of circleA -/// -e_faceA: the center of faceA -/// -e_faceB: the center of faceB -/// Similarly the local normal usage: -/// -e_circles: not used -/// -e_faceA: the normal on polygonA -/// -e_faceB: the normal on polygonB -/// We store contacts in this way so that position correction can -/// account for movement, which is critical for continuous physics. -/// All contact scenarios must be expressed in one of these types. -/// This structure is stored across time steps, so we keep it small. -struct b2Manifold -{ - enum Type - { - e_circles, - e_faceA, - e_faceB - }; - - b2ManifoldPoint points[b2_maxManifoldPoints]; ///< the points of contact - b2Vec2 localNormal; ///< not use for Type::e_points - b2Vec2 localPoint; ///< usage depends on manifold type - Type type; - int32 pointCount; ///< the number of manifold points -}; - -/// This is used to compute the current state of a contact manifold. -struct b2WorldManifold -{ - /// Evaluate the manifold with supplied transforms. This assumes - /// modest motion from the original state. This does not change the - /// point count, impulses, etc. The radii must come from the shapes - /// that generated the manifold. - void Initialize(const b2Manifold* manifold, - const b2Transform& xfA, float32 radiusA, - const b2Transform& xfB, float32 radiusB); - - b2Vec2 normal; ///< world vector pointing from A to B - b2Vec2 points[b2_maxManifoldPoints]; ///< world contact point (point of intersection) - float32 separations[b2_maxManifoldPoints]; ///< a negative value indicates overlap, in meters -}; - -/// This is used for determining the state of contact points. -enum b2PointState -{ - b2_nullState, ///< point does not exist - b2_addState, ///< point was added in the update - b2_persistState, ///< point persisted across the update - b2_removeState ///< point was removed in the update -}; - -/// Compute the point states given two manifolds. The states pertain to the transition from manifold1 -/// to manifold2. So state1 is either persist or remove while state2 is either add or persist. -void b2GetPointStates(b2PointState state1[b2_maxManifoldPoints], b2PointState state2[b2_maxManifoldPoints], - const b2Manifold* manifold1, const b2Manifold* manifold2); - -/// Used for computing contact manifolds. -struct b2ClipVertex -{ - b2Vec2 v; - b2ContactID id; -}; - -/// Ray-cast input data. The ray extends from p1 to p1 + maxFraction * (p2 - p1). -struct b2RayCastInput -{ - b2Vec2 p1, p2; - float32 maxFraction; -}; - -/// Ray-cast output data. The ray hits at p1 + fraction * (p2 - p1), where p1 and p2 -/// come from b2RayCastInput. -struct b2RayCastOutput -{ - b2Vec2 normal; - float32 fraction; -}; - -/// An axis aligned bounding box. -struct b2AABB -{ - /// Verify that the bounds are sorted. - bool IsValid() const; - - /// Get the center of the AABB. - b2Vec2 GetCenter() const - { - return 0.5f * (lowerBound + upperBound); - } - - /// Get the extents of the AABB (half-widths). - b2Vec2 GetExtents() const - { - return 0.5f * (upperBound - lowerBound); - } - - /// Get the perimeter length - float32 GetPerimeter() const - { - float32 wx = upperBound.x - lowerBound.x; - float32 wy = upperBound.y - lowerBound.y; - return 2.0f * (wx + wy); - } - - /// Combine an AABB into this one. - void Combine(const b2AABB& aabb) - { - lowerBound = b2Min(lowerBound, aabb.lowerBound); - upperBound = b2Max(upperBound, aabb.upperBound); - } - - /// Combine two AABBs into this one. - void Combine(const b2AABB& aabb1, const b2AABB& aabb2) - { - lowerBound = b2Min(aabb1.lowerBound, aabb2.lowerBound); - upperBound = b2Max(aabb1.upperBound, aabb2.upperBound); - } - - /// Does this aabb contain the provided AABB. - bool Contains(const b2AABB& aabb) const - { - bool result = true; - result = result && lowerBound.x <= aabb.lowerBound.x; - result = result && lowerBound.y <= aabb.lowerBound.y; - result = result && aabb.upperBound.x <= upperBound.x; - result = result && aabb.upperBound.y <= upperBound.y; - return result; - } - - bool RayCast(b2RayCastOutput* output, const b2RayCastInput& input) const; - - b2Vec2 lowerBound; ///< the lower vertex - b2Vec2 upperBound; ///< the upper vertex -}; - -/// Compute the collision manifold between two circles. -void b2CollideCircles(b2Manifold* manifold, - const b2CircleShape* circleA, const b2Transform& xfA, - const b2CircleShape* circleB, const b2Transform& xfB); - -/// Compute the collision manifold between a polygon and a circle. -void b2CollidePolygonAndCircle(b2Manifold* manifold, - const b2PolygonShape* polygonA, const b2Transform& xfA, - const b2CircleShape* circleB, const b2Transform& xfB); - -/// Compute the collision manifold between two polygons. -void b2CollidePolygons(b2Manifold* manifold, - const b2PolygonShape* polygonA, const b2Transform& xfA, - const b2PolygonShape* polygonB, const b2Transform& xfB); - -/// Compute the collision manifold between an edge and a circle. -void b2CollideEdgeAndCircle(b2Manifold* manifold, - const b2EdgeShape* polygonA, const b2Transform& xfA, - const b2CircleShape* circleB, const b2Transform& xfB); - -/// Compute the collision manifold between an edge and a circle. -void b2CollideEdgeAndPolygon(b2Manifold* manifold, - const b2EdgeShape* edgeA, const b2Transform& xfA, - const b2PolygonShape* circleB, const b2Transform& xfB); - -/// Clipping for contact manifolds. -int32 b2ClipSegmentToLine(b2ClipVertex vOut[2], const b2ClipVertex vIn[2], - const b2Vec2& normal, float32 offset, int32 vertexIndexA); - -/// Determine if two generic shapes overlap. -bool b2TestOverlap( const b2Shape* shapeA, int32 indexA, - const b2Shape* shapeB, int32 indexB, - const b2Transform& xfA, const b2Transform& xfB); - -// ---------------- Inline Functions ------------------------------------------ - -inline bool b2AABB::IsValid() const -{ - b2Vec2 d = upperBound - lowerBound; - bool valid = d.x >= 0.0f && d.y >= 0.0f; - valid = valid && lowerBound.IsValid() && upperBound.IsValid(); - return valid; -} - -inline bool b2TestOverlap(const b2AABB& a, const b2AABB& b) -{ - b2Vec2 d1, d2; - d1 = b.lowerBound - a.upperBound; - d2 = a.lowerBound - b.upperBound; - - if (d1.x > 0.0f || d1.y > 0.0f) - return false; - - if (d2.x > 0.0f || d2.y > 0.0f) - return false; - - return true; -} - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2Distance.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2Distance.cpp deleted file mode 100644 index faa4c87..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2Distance.cpp +++ /dev/null @@ -1,603 +0,0 @@ -/* -* Copyright (c) 2007-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include -#include -#include -#include -#include - -// GJK using Voronoi regions (Christer Ericson) and Barycentric coordinates. -int32 b2_gjkCalls, b2_gjkIters, b2_gjkMaxIters; - -void b2DistanceProxy::Set(const b2Shape* shape, int32 index) -{ - switch (shape->GetType()) - { - case b2Shape::e_circle: - { - const b2CircleShape* circle = static_cast(shape); - m_vertices = &circle->m_p; - m_count = 1; - m_radius = circle->m_radius; - } - break; - - case b2Shape::e_polygon: - { - const b2PolygonShape* polygon = static_cast(shape); - m_vertices = polygon->m_vertices; - m_count = polygon->m_count; - m_radius = polygon->m_radius; - } - break; - - case b2Shape::e_chain: - { - const b2ChainShape* chain = static_cast(shape); - b2Assert(0 <= index && index < chain->m_count); - - m_buffer[0] = chain->m_vertices[index]; - if (index + 1 < chain->m_count) - { - m_buffer[1] = chain->m_vertices[index + 1]; - } - else - { - m_buffer[1] = chain->m_vertices[0]; - } - - m_vertices = m_buffer; - m_count = 2; - m_radius = chain->m_radius; - } - break; - - case b2Shape::e_edge: - { - const b2EdgeShape* edge = static_cast(shape); - m_vertices = &edge->m_vertex1; - m_count = 2; - m_radius = edge->m_radius; - } - break; - - default: - b2Assert(false); - } -} - - -struct b2SimplexVertex -{ - b2Vec2 wA; // support point in proxyA - b2Vec2 wB; // support point in proxyB - b2Vec2 w; // wB - wA - float32 a; // barycentric coordinate for closest point - int32 indexA; // wA index - int32 indexB; // wB index -}; - -struct b2Simplex -{ - void ReadCache( const b2SimplexCache* cache, - const b2DistanceProxy* proxyA, const b2Transform& transformA, - const b2DistanceProxy* proxyB, const b2Transform& transformB) - { - b2Assert(cache->count <= 3); - - // Copy data from cache. - m_count = cache->count; - b2SimplexVertex* vertices = &m_v1; - for (int32 i = 0; i < m_count; ++i) - { - b2SimplexVertex* v = vertices + i; - v->indexA = cache->indexA[i]; - v->indexB = cache->indexB[i]; - b2Vec2 wALocal = proxyA->GetVertex(v->indexA); - b2Vec2 wBLocal = proxyB->GetVertex(v->indexB); - v->wA = b2Mul(transformA, wALocal); - v->wB = b2Mul(transformB, wBLocal); - v->w = v->wB - v->wA; - v->a = 0.0f; - } - - // Compute the new simplex metric, if it is substantially different than - // old metric then flush the simplex. - if (m_count > 1) - { - float32 metric1 = cache->metric; - float32 metric2 = GetMetric(); - if (metric2 < 0.5f * metric1 || 2.0f * metric1 < metric2 || metric2 < b2_epsilon) - { - // Reset the simplex. - m_count = 0; - } - } - - // If the cache is empty or invalid ... - if (m_count == 0) - { - b2SimplexVertex* v = vertices + 0; - v->indexA = 0; - v->indexB = 0; - b2Vec2 wALocal = proxyA->GetVertex(0); - b2Vec2 wBLocal = proxyB->GetVertex(0); - v->wA = b2Mul(transformA, wALocal); - v->wB = b2Mul(transformB, wBLocal); - v->w = v->wB - v->wA; - v->a = 1.0f; - m_count = 1; - } - } - - void WriteCache(b2SimplexCache* cache) const - { - cache->metric = GetMetric(); - cache->count = uint16(m_count); - const b2SimplexVertex* vertices = &m_v1; - for (int32 i = 0; i < m_count; ++i) - { - cache->indexA[i] = uint8(vertices[i].indexA); - cache->indexB[i] = uint8(vertices[i].indexB); - } - } - - b2Vec2 GetSearchDirection() const - { - switch (m_count) - { - case 1: - return -m_v1.w; - - case 2: - { - b2Vec2 e12 = m_v2.w - m_v1.w; - float32 sgn = b2Cross(e12, -m_v1.w); - if (sgn > 0.0f) - { - // Origin is left of e12. - return b2Cross(1.0f, e12); - } - else - { - // Origin is right of e12. - return b2Cross(e12, 1.0f); - } - } - - default: - b2Assert(false); - return b2Vec2_zero; - } - } - - b2Vec2 GetClosestPoint() const - { - switch (m_count) - { - case 0: - b2Assert(false); - return b2Vec2_zero; - - case 1: - return m_v1.w; - - case 2: - return m_v1.a * m_v1.w + m_v2.a * m_v2.w; - - case 3: - return b2Vec2_zero; - - default: - b2Assert(false); - return b2Vec2_zero; - } - } - - void GetWitnessPoints(b2Vec2* pA, b2Vec2* pB) const - { - switch (m_count) - { - case 0: - b2Assert(false); - break; - - case 1: - *pA = m_v1.wA; - *pB = m_v1.wB; - break; - - case 2: - *pA = m_v1.a * m_v1.wA + m_v2.a * m_v2.wA; - *pB = m_v1.a * m_v1.wB + m_v2.a * m_v2.wB; - break; - - case 3: - *pA = m_v1.a * m_v1.wA + m_v2.a * m_v2.wA + m_v3.a * m_v3.wA; - *pB = *pA; - break; - - default: - b2Assert(false); - break; - } - } - - float32 GetMetric() const - { - switch (m_count) - { - case 0: - b2Assert(false); - return 0.0f; - - case 1: - return 0.0f; - - case 2: - return b2Distance(m_v1.w, m_v2.w); - - case 3: - return b2Cross(m_v2.w - m_v1.w, m_v3.w - m_v1.w); - - default: - b2Assert(false); - return 0.0f; - } - } - - void Solve2(); - void Solve3(); - - b2SimplexVertex m_v1, m_v2, m_v3; - int32 m_count; -}; - - -// Solve a line segment using barycentric coordinates. -// -// p = a1 * w1 + a2 * w2 -// a1 + a2 = 1 -// -// The vector from the origin to the closest point on the line is -// perpendicular to the line. -// e12 = w2 - w1 -// dot(p, e) = 0 -// a1 * dot(w1, e) + a2 * dot(w2, e) = 0 -// -// 2-by-2 linear system -// [1 1 ][a1] = [1] -// [w1.e12 w2.e12][a2] = [0] -// -// Define -// d12_1 = dot(w2, e12) -// d12_2 = -dot(w1, e12) -// d12 = d12_1 + d12_2 -// -// Solution -// a1 = d12_1 / d12 -// a2 = d12_2 / d12 -void b2Simplex::Solve2() -{ - b2Vec2 w1 = m_v1.w; - b2Vec2 w2 = m_v2.w; - b2Vec2 e12 = w2 - w1; - - // w1 region - float32 d12_2 = -b2Dot(w1, e12); - if (d12_2 <= 0.0f) - { - // a2 <= 0, so we clamp it to 0 - m_v1.a = 1.0f; - m_count = 1; - return; - } - - // w2 region - float32 d12_1 = b2Dot(w2, e12); - if (d12_1 <= 0.0f) - { - // a1 <= 0, so we clamp it to 0 - m_v2.a = 1.0f; - m_count = 1; - m_v1 = m_v2; - return; - } - - // Must be in e12 region. - float32 inv_d12 = 1.0f / (d12_1 + d12_2); - m_v1.a = d12_1 * inv_d12; - m_v2.a = d12_2 * inv_d12; - m_count = 2; -} - -// Possible regions: -// - points[2] -// - edge points[0]-points[2] -// - edge points[1]-points[2] -// - inside the triangle -void b2Simplex::Solve3() -{ - b2Vec2 w1 = m_v1.w; - b2Vec2 w2 = m_v2.w; - b2Vec2 w3 = m_v3.w; - - // Edge12 - // [1 1 ][a1] = [1] - // [w1.e12 w2.e12][a2] = [0] - // a3 = 0 - b2Vec2 e12 = w2 - w1; - float32 w1e12 = b2Dot(w1, e12); - float32 w2e12 = b2Dot(w2, e12); - float32 d12_1 = w2e12; - float32 d12_2 = -w1e12; - - // Edge13 - // [1 1 ][a1] = [1] - // [w1.e13 w3.e13][a3] = [0] - // a2 = 0 - b2Vec2 e13 = w3 - w1; - float32 w1e13 = b2Dot(w1, e13); - float32 w3e13 = b2Dot(w3, e13); - float32 d13_1 = w3e13; - float32 d13_2 = -w1e13; - - // Edge23 - // [1 1 ][a2] = [1] - // [w2.e23 w3.e23][a3] = [0] - // a1 = 0 - b2Vec2 e23 = w3 - w2; - float32 w2e23 = b2Dot(w2, e23); - float32 w3e23 = b2Dot(w3, e23); - float32 d23_1 = w3e23; - float32 d23_2 = -w2e23; - - // Triangle123 - float32 n123 = b2Cross(e12, e13); - - float32 d123_1 = n123 * b2Cross(w2, w3); - float32 d123_2 = n123 * b2Cross(w3, w1); - float32 d123_3 = n123 * b2Cross(w1, w2); - - // w1 region - if (d12_2 <= 0.0f && d13_2 <= 0.0f) - { - m_v1.a = 1.0f; - m_count = 1; - return; - } - - // e12 - if (d12_1 > 0.0f && d12_2 > 0.0f && d123_3 <= 0.0f) - { - float32 inv_d12 = 1.0f / (d12_1 + d12_2); - m_v1.a = d12_1 * inv_d12; - m_v2.a = d12_2 * inv_d12; - m_count = 2; - return; - } - - // e13 - if (d13_1 > 0.0f && d13_2 > 0.0f && d123_2 <= 0.0f) - { - float32 inv_d13 = 1.0f / (d13_1 + d13_2); - m_v1.a = d13_1 * inv_d13; - m_v3.a = d13_2 * inv_d13; - m_count = 2; - m_v2 = m_v3; - return; - } - - // w2 region - if (d12_1 <= 0.0f && d23_2 <= 0.0f) - { - m_v2.a = 1.0f; - m_count = 1; - m_v1 = m_v2; - return; - } - - // w3 region - if (d13_1 <= 0.0f && d23_1 <= 0.0f) - { - m_v3.a = 1.0f; - m_count = 1; - m_v1 = m_v3; - return; - } - - // e23 - if (d23_1 > 0.0f && d23_2 > 0.0f && d123_1 <= 0.0f) - { - float32 inv_d23 = 1.0f / (d23_1 + d23_2); - m_v2.a = d23_1 * inv_d23; - m_v3.a = d23_2 * inv_d23; - m_count = 2; - m_v1 = m_v3; - return; - } - - // Must be in triangle123 - float32 inv_d123 = 1.0f / (d123_1 + d123_2 + d123_3); - m_v1.a = d123_1 * inv_d123; - m_v2.a = d123_2 * inv_d123; - m_v3.a = d123_3 * inv_d123; - m_count = 3; -} - -void b2Distance(b2DistanceOutput* output, - b2SimplexCache* cache, - const b2DistanceInput* input) -{ - ++b2_gjkCalls; - - const b2DistanceProxy* proxyA = &input->proxyA; - const b2DistanceProxy* proxyB = &input->proxyB; - - b2Transform transformA = input->transformA; - b2Transform transformB = input->transformB; - - // Initialize the simplex. - b2Simplex simplex; - simplex.ReadCache(cache, proxyA, transformA, proxyB, transformB); - - // Get simplex vertices as an array. - b2SimplexVertex* vertices = &simplex.m_v1; - const int32 k_maxIters = 20; - - // These store the vertices of the last simplex so that we - // can check for duplicates and prevent cycling. - int32 saveA[3], saveB[3]; - int32 saveCount = 0; - - float32 distanceSqr1 = b2_maxFloat; - float32 distanceSqr2 = distanceSqr1; - - // Main iteration loop. - int32 iter = 0; - while (iter < k_maxIters) - { - // Copy simplex so we can identify duplicates. - saveCount = simplex.m_count; - for (int32 i = 0; i < saveCount; ++i) - { - saveA[i] = vertices[i].indexA; - saveB[i] = vertices[i].indexB; - } - - switch (simplex.m_count) - { - case 1: - break; - - case 2: - simplex.Solve2(); - break; - - case 3: - simplex.Solve3(); - break; - - default: - b2Assert(false); - } - - // If we have 3 points, then the origin is in the corresponding triangle. - if (simplex.m_count == 3) - { - break; - } - - // Compute closest point. - b2Vec2 p = simplex.GetClosestPoint(); - distanceSqr2 = p.LengthSquared(); - - // Ensure progress - if (distanceSqr2 >= distanceSqr1) - { - //break; - } - distanceSqr1 = distanceSqr2; - - // Get search direction. - b2Vec2 d = simplex.GetSearchDirection(); - - // Ensure the search direction is numerically fit. - if (d.LengthSquared() < b2_epsilon * b2_epsilon) - { - // The origin is probably contained by a line segment - // or triangle. Thus the shapes are overlapped. - - // We can't return zero here even though there may be overlap. - // In case the simplex is a point, segment, or triangle it is difficult - // to determine if the origin is contained in the CSO or very close to it. - break; - } - - // Compute a tentative new simplex vertex using support points. - b2SimplexVertex* vertex = vertices + simplex.m_count; - vertex->indexA = proxyA->GetSupport(b2MulT(transformA.q, -d)); - vertex->wA = b2Mul(transformA, proxyA->GetVertex(vertex->indexA)); - b2Vec2 wBLocal; - vertex->indexB = proxyB->GetSupport(b2MulT(transformB.q, d)); - vertex->wB = b2Mul(transformB, proxyB->GetVertex(vertex->indexB)); - vertex->w = vertex->wB - vertex->wA; - - // Iteration count is equated to the number of support point calls. - ++iter; - ++b2_gjkIters; - - // Check for duplicate support points. This is the main termination criteria. - bool duplicate = false; - for (int32 i = 0; i < saveCount; ++i) - { - if (vertex->indexA == saveA[i] && vertex->indexB == saveB[i]) - { - duplicate = true; - break; - } - } - - // If we found a duplicate support point we must exit to avoid cycling. - if (duplicate) - { - break; - } - - // New vertex is ok and needed. - ++simplex.m_count; - } - - b2_gjkMaxIters = b2Max(b2_gjkMaxIters, iter); - - // Prepare output. - simplex.GetWitnessPoints(&output->pointA, &output->pointB); - output->distance = b2Distance(output->pointA, output->pointB); - output->iterations = iter; - - // Cache the simplex. - simplex.WriteCache(cache); - - // Apply radii if requested. - if (input->useRadii) - { - float32 rA = proxyA->m_radius; - float32 rB = proxyB->m_radius; - - if (output->distance > rA + rB && output->distance > b2_epsilon) - { - // Shapes are still no overlapped. - // Move the witness points to the outer surface. - output->distance -= rA + rB; - b2Vec2 normal = output->pointB - output->pointA; - normal.Normalize(); - output->pointA += rA * normal; - output->pointB -= rB * normal; - } - else - { - // Shapes are overlapped when radii are considered. - // Move the witness points to the middle. - b2Vec2 p = 0.5f * (output->pointA + output->pointB); - output->pointA = p; - output->pointB = p; - output->distance = 0.0f; - } - } -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2Distance.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2Distance.h deleted file mode 100644 index 54ed1e1..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2Distance.h +++ /dev/null @@ -1,141 +0,0 @@ - -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_DISTANCE_H -#define B2_DISTANCE_H - -#include - -class b2Shape; - -/// A distance proxy is used by the GJK algorithm. -/// It encapsulates any shape. -struct b2DistanceProxy -{ - b2DistanceProxy() : m_vertices(NULL), m_count(0), m_radius(0.0f) {} - - /// Initialize the proxy using the given shape. The shape - /// must remain in scope while the proxy is in use. - void Set(const b2Shape* shape, int32 index); - - /// Get the supporting vertex index in the given direction. - int32 GetSupport(const b2Vec2& d) const; - - /// Get the supporting vertex in the given direction. - const b2Vec2& GetSupportVertex(const b2Vec2& d) const; - - /// Get the vertex count. - int32 GetVertexCount() const; - - /// Get a vertex by index. Used by b2Distance. - const b2Vec2& GetVertex(int32 index) const; - - b2Vec2 m_buffer[2]; - const b2Vec2* m_vertices; - int32 m_count; - float32 m_radius; -}; - -/// Used to warm start b2Distance. -/// Set count to zero on first call. -struct b2SimplexCache -{ - float32 metric; ///< length or area - uint16 count; - uint8 indexA[3]; ///< vertices on shape A - uint8 indexB[3]; ///< vertices on shape B -}; - -/// Input for b2Distance. -/// You have to option to use the shape radii -/// in the computation. Even -struct b2DistanceInput -{ - b2DistanceProxy proxyA; - b2DistanceProxy proxyB; - b2Transform transformA; - b2Transform transformB; - bool useRadii; -}; - -/// Output for b2Distance. -struct b2DistanceOutput -{ - b2Vec2 pointA; ///< closest point on shapeA - b2Vec2 pointB; ///< closest point on shapeB - float32 distance; - int32 iterations; ///< number of GJK iterations used -}; - -/// Compute the closest points between two shapes. Supports any combination of: -/// b2CircleShape, b2PolygonShape, b2EdgeShape. The simplex cache is input/output. -/// On the first call set b2SimplexCache.count to zero. -void b2Distance(b2DistanceOutput* output, - b2SimplexCache* cache, - const b2DistanceInput* input); - - -////////////////////////////////////////////////////////////////////////// - -inline int32 b2DistanceProxy::GetVertexCount() const -{ - return m_count; -} - -inline const b2Vec2& b2DistanceProxy::GetVertex(int32 index) const -{ - b2Assert(0 <= index && index < m_count); - return m_vertices[index]; -} - -inline int32 b2DistanceProxy::GetSupport(const b2Vec2& d) const -{ - int32 bestIndex = 0; - float32 bestValue = b2Dot(m_vertices[0], d); - for (int32 i = 1; i < m_count; ++i) - { - float32 value = b2Dot(m_vertices[i], d); - if (value > bestValue) - { - bestIndex = i; - bestValue = value; - } - } - - return bestIndex; -} - -inline const b2Vec2& b2DistanceProxy::GetSupportVertex(const b2Vec2& d) const -{ - int32 bestIndex = 0; - float32 bestValue = b2Dot(m_vertices[0], d); - for (int32 i = 1; i < m_count; ++i) - { - float32 value = b2Dot(m_vertices[i], d); - if (value > bestValue) - { - bestIndex = i; - bestValue = value; - } - } - - return m_vertices[bestIndex]; -} - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2DynamicTree.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2DynamicTree.cpp deleted file mode 100644 index 55e8e73..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2DynamicTree.cpp +++ /dev/null @@ -1,778 +0,0 @@ -/* -* Copyright (c) 2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include -#include - -b2DynamicTree::b2DynamicTree() -{ - m_root = b2_nullNode; - - m_nodeCapacity = 16; - m_nodeCount = 0; - m_nodes = (b2TreeNode*)b2Alloc(m_nodeCapacity * sizeof(b2TreeNode)); - memset(m_nodes, 0, m_nodeCapacity * sizeof(b2TreeNode)); - - // Build a linked list for the free list. - for (int32 i = 0; i < m_nodeCapacity - 1; ++i) - { - m_nodes[i].next = i + 1; - m_nodes[i].height = -1; - } - m_nodes[m_nodeCapacity-1].next = b2_nullNode; - m_nodes[m_nodeCapacity-1].height = -1; - m_freeList = 0; - - m_path = 0; - - m_insertionCount = 0; -} - -b2DynamicTree::~b2DynamicTree() -{ - // This frees the entire tree in one shot. - b2Free(m_nodes); -} - -// Allocate a node from the pool. Grow the pool if necessary. -int32 b2DynamicTree::AllocateNode() -{ - // Expand the node pool as needed. - if (m_freeList == b2_nullNode) - { - b2Assert(m_nodeCount == m_nodeCapacity); - - // The free list is empty. Rebuild a bigger pool. - b2TreeNode* oldNodes = m_nodes; - m_nodeCapacity *= 2; - m_nodes = (b2TreeNode*)b2Alloc(m_nodeCapacity * sizeof(b2TreeNode)); - memcpy(m_nodes, oldNodes, m_nodeCount * sizeof(b2TreeNode)); - b2Free(oldNodes); - - // Build a linked list for the free list. The parent - // pointer becomes the "next" pointer. - for (int32 i = m_nodeCount; i < m_nodeCapacity - 1; ++i) - { - m_nodes[i].next = i + 1; - m_nodes[i].height = -1; - } - m_nodes[m_nodeCapacity-1].next = b2_nullNode; - m_nodes[m_nodeCapacity-1].height = -1; - m_freeList = m_nodeCount; - } - - // Peel a node off the free list. - int32 nodeId = m_freeList; - m_freeList = m_nodes[nodeId].next; - m_nodes[nodeId].parent = b2_nullNode; - m_nodes[nodeId].child1 = b2_nullNode; - m_nodes[nodeId].child2 = b2_nullNode; - m_nodes[nodeId].height = 0; - m_nodes[nodeId].userData = NULL; - ++m_nodeCount; - return nodeId; -} - -// Return a node to the pool. -void b2DynamicTree::FreeNode(int32 nodeId) -{ - b2Assert(0 <= nodeId && nodeId < m_nodeCapacity); - b2Assert(0 < m_nodeCount); - m_nodes[nodeId].next = m_freeList; - m_nodes[nodeId].height = -1; - m_freeList = nodeId; - --m_nodeCount; -} - -// Create a proxy in the tree as a leaf node. We return the index -// of the node instead of a pointer so that we can grow -// the node pool. -int32 b2DynamicTree::CreateProxy(const b2AABB& aabb, void* userData) -{ - int32 proxyId = AllocateNode(); - - // Fatten the aabb. - b2Vec2 r(b2_aabbExtension, b2_aabbExtension); - m_nodes[proxyId].aabb.lowerBound = aabb.lowerBound - r; - m_nodes[proxyId].aabb.upperBound = aabb.upperBound + r; - m_nodes[proxyId].userData = userData; - m_nodes[proxyId].height = 0; - - InsertLeaf(proxyId); - - return proxyId; -} - -void b2DynamicTree::DestroyProxy(int32 proxyId) -{ - b2Assert(0 <= proxyId && proxyId < m_nodeCapacity); - b2Assert(m_nodes[proxyId].IsLeaf()); - - RemoveLeaf(proxyId); - FreeNode(proxyId); -} - -bool b2DynamicTree::MoveProxy(int32 proxyId, const b2AABB& aabb, const b2Vec2& displacement) -{ - b2Assert(0 <= proxyId && proxyId < m_nodeCapacity); - - b2Assert(m_nodes[proxyId].IsLeaf()); - - if (m_nodes[proxyId].aabb.Contains(aabb)) - { - return false; - } - - RemoveLeaf(proxyId); - - // Extend AABB. - b2AABB b = aabb; - b2Vec2 r(b2_aabbExtension, b2_aabbExtension); - b.lowerBound = b.lowerBound - r; - b.upperBound = b.upperBound + r; - - // Predict AABB displacement. - b2Vec2 d = b2_aabbMultiplier * displacement; - - if (d.x < 0.0f) - { - b.lowerBound.x += d.x; - } - else - { - b.upperBound.x += d.x; - } - - if (d.y < 0.0f) - { - b.lowerBound.y += d.y; - } - else - { - b.upperBound.y += d.y; - } - - m_nodes[proxyId].aabb = b; - - InsertLeaf(proxyId); - return true; -} - -void b2DynamicTree::InsertLeaf(int32 leaf) -{ - ++m_insertionCount; - - if (m_root == b2_nullNode) - { - m_root = leaf; - m_nodes[m_root].parent = b2_nullNode; - return; - } - - // Find the best sibling for this node - b2AABB leafAABB = m_nodes[leaf].aabb; - int32 index = m_root; - while (m_nodes[index].IsLeaf() == false) - { - int32 child1 = m_nodes[index].child1; - int32 child2 = m_nodes[index].child2; - - float32 area = m_nodes[index].aabb.GetPerimeter(); - - b2AABB combinedAABB; - combinedAABB.Combine(m_nodes[index].aabb, leafAABB); - float32 combinedArea = combinedAABB.GetPerimeter(); - - // Cost of creating a new parent for this node and the new leaf - float32 cost = 2.0f * combinedArea; - - // Minimum cost of pushing the leaf further down the tree - float32 inheritanceCost = 2.0f * (combinedArea - area); - - // Cost of descending into child1 - float32 cost1; - if (m_nodes[child1].IsLeaf()) - { - b2AABB aabb; - aabb.Combine(leafAABB, m_nodes[child1].aabb); - cost1 = aabb.GetPerimeter() + inheritanceCost; - } - else - { - b2AABB aabb; - aabb.Combine(leafAABB, m_nodes[child1].aabb); - float32 oldArea = m_nodes[child1].aabb.GetPerimeter(); - float32 newArea = aabb.GetPerimeter(); - cost1 = (newArea - oldArea) + inheritanceCost; - } - - // Cost of descending into child2 - float32 cost2; - if (m_nodes[child2].IsLeaf()) - { - b2AABB aabb; - aabb.Combine(leafAABB, m_nodes[child2].aabb); - cost2 = aabb.GetPerimeter() + inheritanceCost; - } - else - { - b2AABB aabb; - aabb.Combine(leafAABB, m_nodes[child2].aabb); - float32 oldArea = m_nodes[child2].aabb.GetPerimeter(); - float32 newArea = aabb.GetPerimeter(); - cost2 = newArea - oldArea + inheritanceCost; - } - - // Descend according to the minimum cost. - if (cost < cost1 && cost < cost2) - { - break; - } - - // Descend - if (cost1 < cost2) - { - index = child1; - } - else - { - index = child2; - } - } - - int32 sibling = index; - - // Create a new parent. - int32 oldParent = m_nodes[sibling].parent; - int32 newParent = AllocateNode(); - m_nodes[newParent].parent = oldParent; - m_nodes[newParent].userData = NULL; - m_nodes[newParent].aabb.Combine(leafAABB, m_nodes[sibling].aabb); - m_nodes[newParent].height = m_nodes[sibling].height + 1; - - if (oldParent != b2_nullNode) - { - // The sibling was not the root. - if (m_nodes[oldParent].child1 == sibling) - { - m_nodes[oldParent].child1 = newParent; - } - else - { - m_nodes[oldParent].child2 = newParent; - } - - m_nodes[newParent].child1 = sibling; - m_nodes[newParent].child2 = leaf; - m_nodes[sibling].parent = newParent; - m_nodes[leaf].parent = newParent; - } - else - { - // The sibling was the root. - m_nodes[newParent].child1 = sibling; - m_nodes[newParent].child2 = leaf; - m_nodes[sibling].parent = newParent; - m_nodes[leaf].parent = newParent; - m_root = newParent; - } - - // Walk back up the tree fixing heights and AABBs - index = m_nodes[leaf].parent; - while (index != b2_nullNode) - { - index = Balance(index); - - int32 child1 = m_nodes[index].child1; - int32 child2 = m_nodes[index].child2; - - b2Assert(child1 != b2_nullNode); - b2Assert(child2 != b2_nullNode); - - m_nodes[index].height = 1 + b2Max(m_nodes[child1].height, m_nodes[child2].height); - m_nodes[index].aabb.Combine(m_nodes[child1].aabb, m_nodes[child2].aabb); - - index = m_nodes[index].parent; - } - - //Validate(); -} - -void b2DynamicTree::RemoveLeaf(int32 leaf) -{ - if (leaf == m_root) - { - m_root = b2_nullNode; - return; - } - - int32 parent = m_nodes[leaf].parent; - int32 grandParent = m_nodes[parent].parent; - int32 sibling; - if (m_nodes[parent].child1 == leaf) - { - sibling = m_nodes[parent].child2; - } - else - { - sibling = m_nodes[parent].child1; - } - - if (grandParent != b2_nullNode) - { - // Destroy parent and connect sibling to grandParent. - if (m_nodes[grandParent].child1 == parent) - { - m_nodes[grandParent].child1 = sibling; - } - else - { - m_nodes[grandParent].child2 = sibling; - } - m_nodes[sibling].parent = grandParent; - FreeNode(parent); - - // Adjust ancestor bounds. - int32 index = grandParent; - while (index != b2_nullNode) - { - index = Balance(index); - - int32 child1 = m_nodes[index].child1; - int32 child2 = m_nodes[index].child2; - - m_nodes[index].aabb.Combine(m_nodes[child1].aabb, m_nodes[child2].aabb); - m_nodes[index].height = 1 + b2Max(m_nodes[child1].height, m_nodes[child2].height); - - index = m_nodes[index].parent; - } - } - else - { - m_root = sibling; - m_nodes[sibling].parent = b2_nullNode; - FreeNode(parent); - } - - //Validate(); -} - -// Perform a left or right rotation if node A is imbalanced. -// Returns the new root index. -int32 b2DynamicTree::Balance(int32 iA) -{ - b2Assert(iA != b2_nullNode); - - b2TreeNode* A = m_nodes + iA; - if (A->IsLeaf() || A->height < 2) - { - return iA; - } - - int32 iB = A->child1; - int32 iC = A->child2; - b2Assert(0 <= iB && iB < m_nodeCapacity); - b2Assert(0 <= iC && iC < m_nodeCapacity); - - b2TreeNode* B = m_nodes + iB; - b2TreeNode* C = m_nodes + iC; - - int32 balance = C->height - B->height; - - // Rotate C up - if (balance > 1) - { - int32 iF = C->child1; - int32 iG = C->child2; - b2TreeNode* F = m_nodes + iF; - b2TreeNode* G = m_nodes + iG; - b2Assert(0 <= iF && iF < m_nodeCapacity); - b2Assert(0 <= iG && iG < m_nodeCapacity); - - // Swap A and C - C->child1 = iA; - C->parent = A->parent; - A->parent = iC; - - // A's old parent should point to C - if (C->parent != b2_nullNode) - { - if (m_nodes[C->parent].child1 == iA) - { - m_nodes[C->parent].child1 = iC; - } - else - { - b2Assert(m_nodes[C->parent].child2 == iA); - m_nodes[C->parent].child2 = iC; - } - } - else - { - m_root = iC; - } - - // Rotate - if (F->height > G->height) - { - C->child2 = iF; - A->child2 = iG; - G->parent = iA; - A->aabb.Combine(B->aabb, G->aabb); - C->aabb.Combine(A->aabb, F->aabb); - - A->height = 1 + b2Max(B->height, G->height); - C->height = 1 + b2Max(A->height, F->height); - } - else - { - C->child2 = iG; - A->child2 = iF; - F->parent = iA; - A->aabb.Combine(B->aabb, F->aabb); - C->aabb.Combine(A->aabb, G->aabb); - - A->height = 1 + b2Max(B->height, F->height); - C->height = 1 + b2Max(A->height, G->height); - } - - return iC; - } - - // Rotate B up - if (balance < -1) - { - int32 iD = B->child1; - int32 iE = B->child2; - b2TreeNode* D = m_nodes + iD; - b2TreeNode* E = m_nodes + iE; - b2Assert(0 <= iD && iD < m_nodeCapacity); - b2Assert(0 <= iE && iE < m_nodeCapacity); - - // Swap A and B - B->child1 = iA; - B->parent = A->parent; - A->parent = iB; - - // A's old parent should point to B - if (B->parent != b2_nullNode) - { - if (m_nodes[B->parent].child1 == iA) - { - m_nodes[B->parent].child1 = iB; - } - else - { - b2Assert(m_nodes[B->parent].child2 == iA); - m_nodes[B->parent].child2 = iB; - } - } - else - { - m_root = iB; - } - - // Rotate - if (D->height > E->height) - { - B->child2 = iD; - A->child1 = iE; - E->parent = iA; - A->aabb.Combine(C->aabb, E->aabb); - B->aabb.Combine(A->aabb, D->aabb); - - A->height = 1 + b2Max(C->height, E->height); - B->height = 1 + b2Max(A->height, D->height); - } - else - { - B->child2 = iE; - A->child1 = iD; - D->parent = iA; - A->aabb.Combine(C->aabb, D->aabb); - B->aabb.Combine(A->aabb, E->aabb); - - A->height = 1 + b2Max(C->height, D->height); - B->height = 1 + b2Max(A->height, E->height); - } - - return iB; - } - - return iA; -} - -int32 b2DynamicTree::GetHeight() const -{ - if (m_root == b2_nullNode) - { - return 0; - } - - return m_nodes[m_root].height; -} - -// -float32 b2DynamicTree::GetAreaRatio() const -{ - if (m_root == b2_nullNode) - { - return 0.0f; - } - - const b2TreeNode* root = m_nodes + m_root; - float32 rootArea = root->aabb.GetPerimeter(); - - float32 totalArea = 0.0f; - for (int32 i = 0; i < m_nodeCapacity; ++i) - { - const b2TreeNode* node = m_nodes + i; - if (node->height < 0) - { - // Free node in pool - continue; - } - - totalArea += node->aabb.GetPerimeter(); - } - - return totalArea / rootArea; -} - -// Compute the height of a sub-tree. -int32 b2DynamicTree::ComputeHeight(int32 nodeId) const -{ - b2Assert(0 <= nodeId && nodeId < m_nodeCapacity); - b2TreeNode* node = m_nodes + nodeId; - - if (node->IsLeaf()) - { - return 0; - } - - int32 height1 = ComputeHeight(node->child1); - int32 height2 = ComputeHeight(node->child2); - return 1 + b2Max(height1, height2); -} - -int32 b2DynamicTree::ComputeHeight() const -{ - int32 height = ComputeHeight(m_root); - return height; -} - -void b2DynamicTree::ValidateStructure(int32 index) const -{ - if (index == b2_nullNode) - { - return; - } - - if (index == m_root) - { - b2Assert(m_nodes[index].parent == b2_nullNode); - } - - const b2TreeNode* node = m_nodes + index; - - int32 child1 = node->child1; - int32 child2 = node->child2; - - if (node->IsLeaf()) - { - b2Assert(child1 == b2_nullNode); - b2Assert(child2 == b2_nullNode); - b2Assert(node->height == 0); - return; - } - - b2Assert(0 <= child1 && child1 < m_nodeCapacity); - b2Assert(0 <= child2 && child2 < m_nodeCapacity); - - b2Assert(m_nodes[child1].parent == index); - b2Assert(m_nodes[child2].parent == index); - - ValidateStructure(child1); - ValidateStructure(child2); -} - -void b2DynamicTree::ValidateMetrics(int32 index) const -{ - if (index == b2_nullNode) - { - return; - } - - const b2TreeNode* node = m_nodes + index; - - int32 child1 = node->child1; - int32 child2 = node->child2; - - if (node->IsLeaf()) - { - b2Assert(child1 == b2_nullNode); - b2Assert(child2 == b2_nullNode); - b2Assert(node->height == 0); - return; - } - - b2Assert(0 <= child1 && child1 < m_nodeCapacity); - b2Assert(0 <= child2 && child2 < m_nodeCapacity); - - int32 height1 = m_nodes[child1].height; - int32 height2 = m_nodes[child2].height; - int32 height; - height = 1 + b2Max(height1, height2); - b2Assert(node->height == height); - - b2AABB aabb; - aabb.Combine(m_nodes[child1].aabb, m_nodes[child2].aabb); - - b2Assert(aabb.lowerBound == node->aabb.lowerBound); - b2Assert(aabb.upperBound == node->aabb.upperBound); - - ValidateMetrics(child1); - ValidateMetrics(child2); -} - -void b2DynamicTree::Validate() const -{ - ValidateStructure(m_root); - ValidateMetrics(m_root); - - int32 freeCount = 0; - int32 freeIndex = m_freeList; - while (freeIndex != b2_nullNode) - { - b2Assert(0 <= freeIndex && freeIndex < m_nodeCapacity); - freeIndex = m_nodes[freeIndex].next; - ++freeCount; - } - - b2Assert(GetHeight() == ComputeHeight()); - - b2Assert(m_nodeCount + freeCount == m_nodeCapacity); -} - -int32 b2DynamicTree::GetMaxBalance() const -{ - int32 maxBalance = 0; - for (int32 i = 0; i < m_nodeCapacity; ++i) - { - const b2TreeNode* node = m_nodes + i; - if (node->height <= 1) - { - continue; - } - - b2Assert(node->IsLeaf() == false); - - int32 child1 = node->child1; - int32 child2 = node->child2; - int32 balance = b2Abs(m_nodes[child2].height - m_nodes[child1].height); - maxBalance = b2Max(maxBalance, balance); - } - - return maxBalance; -} - -void b2DynamicTree::RebuildBottomUp() -{ - int32* nodes = (int32*)b2Alloc(m_nodeCount * sizeof(int32)); - int32 count = 0; - - // Build array of leaves. Free the rest. - for (int32 i = 0; i < m_nodeCapacity; ++i) - { - if (m_nodes[i].height < 0) - { - // free node in pool - continue; - } - - if (m_nodes[i].IsLeaf()) - { - m_nodes[i].parent = b2_nullNode; - nodes[count] = i; - ++count; - } - else - { - FreeNode(i); - } - } - - while (count > 1) - { - float32 minCost = b2_maxFloat; - int32 iMin = -1, jMin = -1; - for (int32 i = 0; i < count; ++i) - { - b2AABB aabbi = m_nodes[nodes[i]].aabb; - - for (int32 j = i + 1; j < count; ++j) - { - b2AABB aabbj = m_nodes[nodes[j]].aabb; - b2AABB b; - b.Combine(aabbi, aabbj); - float32 cost = b.GetPerimeter(); - if (cost < minCost) - { - iMin = i; - jMin = j; - minCost = cost; - } - } - } - - int32 index1 = nodes[iMin]; - int32 index2 = nodes[jMin]; - b2TreeNode* child1 = m_nodes + index1; - b2TreeNode* child2 = m_nodes + index2; - - int32 parentIndex = AllocateNode(); - b2TreeNode* parent = m_nodes + parentIndex; - parent->child1 = index1; - parent->child2 = index2; - parent->height = 1 + b2Max(child1->height, child2->height); - parent->aabb.Combine(child1->aabb, child2->aabb); - parent->parent = b2_nullNode; - - child1->parent = parentIndex; - child2->parent = parentIndex; - - nodes[jMin] = nodes[count-1]; - nodes[iMin] = parentIndex; - --count; - } - - m_root = nodes[0]; - b2Free(nodes); - - Validate(); -} - -void b2DynamicTree::ShiftOrigin(const b2Vec2& newOrigin) -{ - // Build array of leaves. Free the rest. - for (int32 i = 0; i < m_nodeCapacity; ++i) - { - m_nodes[i].aabb.lowerBound -= newOrigin; - m_nodes[i].aabb.upperBound -= newOrigin; - } -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2DynamicTree.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2DynamicTree.h deleted file mode 100644 index 97aa461..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2DynamicTree.h +++ /dev/null @@ -1,289 +0,0 @@ -/* -* Copyright (c) 2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_DYNAMIC_TREE_H -#define B2_DYNAMIC_TREE_H - -#include -#include - -#define b2_nullNode (-1) - -/// A node in the dynamic tree. The client does not interact with this directly. -struct b2TreeNode -{ - bool IsLeaf() const - { - return child1 == b2_nullNode; - } - - /// Enlarged AABB - b2AABB aabb; - - void* userData; - - union - { - int32 parent; - int32 next; - }; - - int32 child1; - int32 child2; - - // leaf = 0, free node = -1 - int32 height; -}; - -/// A dynamic AABB tree broad-phase, inspired by Nathanael Presson's btDbvt. -/// A dynamic tree arranges data in a binary tree to accelerate -/// queries such as volume queries and ray casts. Leafs are proxies -/// with an AABB. In the tree we expand the proxy AABB by b2_fatAABBFactor -/// so that the proxy AABB is bigger than the client object. This allows the client -/// object to move by small amounts without triggering a tree update. -/// -/// Nodes are pooled and relocatable, so we use node indices rather than pointers. -class b2DynamicTree -{ -public: - /// Constructing the tree initializes the node pool. - b2DynamicTree(); - - /// Destroy the tree, freeing the node pool. - ~b2DynamicTree(); - - /// Create a proxy. Provide a tight fitting AABB and a userData pointer. - int32 CreateProxy(const b2AABB& aabb, void* userData); - - /// Destroy a proxy. This asserts if the id is invalid. - void DestroyProxy(int32 proxyId); - - /// Move a proxy with a swepted AABB. If the proxy has moved outside of its fattened AABB, - /// then the proxy is removed from the tree and re-inserted. Otherwise - /// the function returns immediately. - /// @return true if the proxy was re-inserted. - bool MoveProxy(int32 proxyId, const b2AABB& aabb1, const b2Vec2& displacement); - - /// Get proxy user data. - /// @return the proxy user data or 0 if the id is invalid. - void* GetUserData(int32 proxyId) const; - - /// Get the fat AABB for a proxy. - const b2AABB& GetFatAABB(int32 proxyId) const; - - /// Query an AABB for overlapping proxies. The callback class - /// is called for each proxy that overlaps the supplied AABB. - template - void Query(T* callback, const b2AABB& aabb) const; - - /// Ray-cast against the proxies in the tree. This relies on the callback - /// to perform a exact ray-cast in the case were the proxy contains a shape. - /// The callback also performs the any collision filtering. This has performance - /// roughly equal to k * log(n), where k is the number of collisions and n is the - /// number of proxies in the tree. - /// @param input the ray-cast input data. The ray extends from p1 to p1 + maxFraction * (p2 - p1). - /// @param callback a callback class that is called for each proxy that is hit by the ray. - template - void RayCast(T* callback, const b2RayCastInput& input) const; - - /// Validate this tree. For testing. - void Validate() const; - - /// Compute the height of the binary tree in O(N) time. Should not be - /// called often. - int32 GetHeight() const; - - /// Get the maximum balance of an node in the tree. The balance is the difference - /// in height of the two children of a node. - int32 GetMaxBalance() const; - - /// Get the ratio of the sum of the node areas to the root area. - float32 GetAreaRatio() const; - - /// Build an optimal tree. Very expensive. For testing. - void RebuildBottomUp(); - - /// Shift the world origin. Useful for large worlds. - /// The shift formula is: position -= newOrigin - /// @param newOrigin the new origin with respect to the old origin - void ShiftOrigin(const b2Vec2& newOrigin); - -private: - - int32 AllocateNode(); - void FreeNode(int32 node); - - void InsertLeaf(int32 node); - void RemoveLeaf(int32 node); - - int32 Balance(int32 index); - - int32 ComputeHeight() const; - int32 ComputeHeight(int32 nodeId) const; - - void ValidateStructure(int32 index) const; - void ValidateMetrics(int32 index) const; - - int32 m_root; - - b2TreeNode* m_nodes; - int32 m_nodeCount; - int32 m_nodeCapacity; - - int32 m_freeList; - - /// This is used to incrementally traverse the tree for re-balancing. - uint32 m_path; - - int32 m_insertionCount; -}; - -inline void* b2DynamicTree::GetUserData(int32 proxyId) const -{ - b2Assert(0 <= proxyId && proxyId < m_nodeCapacity); - return m_nodes[proxyId].userData; -} - -inline const b2AABB& b2DynamicTree::GetFatAABB(int32 proxyId) const -{ - b2Assert(0 <= proxyId && proxyId < m_nodeCapacity); - return m_nodes[proxyId].aabb; -} - -template -inline void b2DynamicTree::Query(T* callback, const b2AABB& aabb) const -{ - b2GrowableStack stack; - stack.Push(m_root); - - while (stack.GetCount() > 0) - { - int32 nodeId = stack.Pop(); - if (nodeId == b2_nullNode) - { - continue; - } - - const b2TreeNode* node = m_nodes + nodeId; - - if (b2TestOverlap(node->aabb, aabb)) - { - if (node->IsLeaf()) - { - bool proceed = callback->QueryCallback(nodeId); - if (proceed == false) - { - return; - } - } - else - { - stack.Push(node->child1); - stack.Push(node->child2); - } - } - } -} - -template -inline void b2DynamicTree::RayCast(T* callback, const b2RayCastInput& input) const -{ - b2Vec2 p1 = input.p1; - b2Vec2 p2 = input.p2; - b2Vec2 r = p2 - p1; - b2Assert(r.LengthSquared() > 0.0f); - r.Normalize(); - - // v is perpendicular to the segment. - b2Vec2 v = b2Cross(1.0f, r); - b2Vec2 abs_v = b2Abs(v); - - // Separating axis for segment (Gino, p80). - // |dot(v, p1 - c)| > dot(|v|, h) - - float32 maxFraction = input.maxFraction; - - // Build a bounding box for the segment. - b2AABB segmentAABB; - { - b2Vec2 t = p1 + maxFraction * (p2 - p1); - segmentAABB.lowerBound = b2Min(p1, t); - segmentAABB.upperBound = b2Max(p1, t); - } - - b2GrowableStack stack; - stack.Push(m_root); - - while (stack.GetCount() > 0) - { - int32 nodeId = stack.Pop(); - if (nodeId == b2_nullNode) - { - continue; - } - - const b2TreeNode* node = m_nodes + nodeId; - - if (b2TestOverlap(node->aabb, segmentAABB) == false) - { - continue; - } - - // Separating axis for segment (Gino, p80). - // |dot(v, p1 - c)| > dot(|v|, h) - b2Vec2 c = node->aabb.GetCenter(); - b2Vec2 h = node->aabb.GetExtents(); - float32 separation = b2Abs(b2Dot(v, p1 - c)) - b2Dot(abs_v, h); - if (separation > 0.0f) - { - continue; - } - - if (node->IsLeaf()) - { - b2RayCastInput subInput; - subInput.p1 = input.p1; - subInput.p2 = input.p2; - subInput.maxFraction = maxFraction; - - float32 value = callback->RayCastCallback(subInput, nodeId); - - if (value == 0.0f) - { - // The client has terminated the ray cast. - return; - } - - if (value > 0.0f) - { - // Update segment bounding box. - maxFraction = value; - b2Vec2 t = p1 + maxFraction * (p2 - p1); - segmentAABB.lowerBound = b2Min(p1, t); - segmentAABB.upperBound = b2Max(p1, t); - } - } - else - { - stack.Push(node->child1); - stack.Push(node->child2); - } - } -} - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2TimeOfImpact.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2TimeOfImpact.cpp deleted file mode 100644 index fa2248c..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2TimeOfImpact.cpp +++ /dev/null @@ -1,486 +0,0 @@ -/* -* Copyright (c) 2007-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include -#include -#include -#include -#include -#include - -#include - -float32 b2_toiTime, b2_toiMaxTime; -int32 b2_toiCalls, b2_toiIters, b2_toiMaxIters; -int32 b2_toiRootIters, b2_toiMaxRootIters; - -// -struct b2SeparationFunction -{ - enum Type - { - e_points, - e_faceA, - e_faceB - }; - - // TODO_ERIN might not need to return the separation - - float32 Initialize(const b2SimplexCache* cache, - const b2DistanceProxy* proxyA, const b2Sweep& sweepA, - const b2DistanceProxy* proxyB, const b2Sweep& sweepB, - float32 t1) - { - m_proxyA = proxyA; - m_proxyB = proxyB; - int32 count = cache->count; - b2Assert(0 < count && count < 3); - - m_sweepA = sweepA; - m_sweepB = sweepB; - - b2Transform xfA, xfB; - m_sweepA.GetTransform(&xfA, t1); - m_sweepB.GetTransform(&xfB, t1); - - if (count == 1) - { - m_type = e_points; - b2Vec2 localPointA = m_proxyA->GetVertex(cache->indexA[0]); - b2Vec2 localPointB = m_proxyB->GetVertex(cache->indexB[0]); - b2Vec2 pointA = b2Mul(xfA, localPointA); - b2Vec2 pointB = b2Mul(xfB, localPointB); - m_axis = pointB - pointA; - float32 s = m_axis.Normalize(); - return s; - } - else if (cache->indexA[0] == cache->indexA[1]) - { - // Two points on B and one on A. - m_type = e_faceB; - b2Vec2 localPointB1 = proxyB->GetVertex(cache->indexB[0]); - b2Vec2 localPointB2 = proxyB->GetVertex(cache->indexB[1]); - - m_axis = b2Cross(localPointB2 - localPointB1, 1.0f); - m_axis.Normalize(); - b2Vec2 normal = b2Mul(xfB.q, m_axis); - - m_localPoint = 0.5f * (localPointB1 + localPointB2); - b2Vec2 pointB = b2Mul(xfB, m_localPoint); - - b2Vec2 localPointA = proxyA->GetVertex(cache->indexA[0]); - b2Vec2 pointA = b2Mul(xfA, localPointA); - - float32 s = b2Dot(pointA - pointB, normal); - if (s < 0.0f) - { - m_axis = -m_axis; - s = -s; - } - return s; - } - else - { - // Two points on A and one or two points on B. - m_type = e_faceA; - b2Vec2 localPointA1 = m_proxyA->GetVertex(cache->indexA[0]); - b2Vec2 localPointA2 = m_proxyA->GetVertex(cache->indexA[1]); - - m_axis = b2Cross(localPointA2 - localPointA1, 1.0f); - m_axis.Normalize(); - b2Vec2 normal = b2Mul(xfA.q, m_axis); - - m_localPoint = 0.5f * (localPointA1 + localPointA2); - b2Vec2 pointA = b2Mul(xfA, m_localPoint); - - b2Vec2 localPointB = m_proxyB->GetVertex(cache->indexB[0]); - b2Vec2 pointB = b2Mul(xfB, localPointB); - - float32 s = b2Dot(pointB - pointA, normal); - if (s < 0.0f) - { - m_axis = -m_axis; - s = -s; - } - return s; - } - } - - // - float32 FindMinSeparation(int32* indexA, int32* indexB, float32 t) const - { - b2Transform xfA, xfB; - m_sweepA.GetTransform(&xfA, t); - m_sweepB.GetTransform(&xfB, t); - - switch (m_type) - { - case e_points: - { - b2Vec2 axisA = b2MulT(xfA.q, m_axis); - b2Vec2 axisB = b2MulT(xfB.q, -m_axis); - - *indexA = m_proxyA->GetSupport(axisA); - *indexB = m_proxyB->GetSupport(axisB); - - b2Vec2 localPointA = m_proxyA->GetVertex(*indexA); - b2Vec2 localPointB = m_proxyB->GetVertex(*indexB); - - b2Vec2 pointA = b2Mul(xfA, localPointA); - b2Vec2 pointB = b2Mul(xfB, localPointB); - - float32 separation = b2Dot(pointB - pointA, m_axis); - return separation; - } - - case e_faceA: - { - b2Vec2 normal = b2Mul(xfA.q, m_axis); - b2Vec2 pointA = b2Mul(xfA, m_localPoint); - - b2Vec2 axisB = b2MulT(xfB.q, -normal); - - *indexA = -1; - *indexB = m_proxyB->GetSupport(axisB); - - b2Vec2 localPointB = m_proxyB->GetVertex(*indexB); - b2Vec2 pointB = b2Mul(xfB, localPointB); - - float32 separation = b2Dot(pointB - pointA, normal); - return separation; - } - - case e_faceB: - { - b2Vec2 normal = b2Mul(xfB.q, m_axis); - b2Vec2 pointB = b2Mul(xfB, m_localPoint); - - b2Vec2 axisA = b2MulT(xfA.q, -normal); - - *indexB = -1; - *indexA = m_proxyA->GetSupport(axisA); - - b2Vec2 localPointA = m_proxyA->GetVertex(*indexA); - b2Vec2 pointA = b2Mul(xfA, localPointA); - - float32 separation = b2Dot(pointA - pointB, normal); - return separation; - } - - default: - b2Assert(false); - *indexA = -1; - *indexB = -1; - return 0.0f; - } - } - - // - float32 Evaluate(int32 indexA, int32 indexB, float32 t) const - { - b2Transform xfA, xfB; - m_sweepA.GetTransform(&xfA, t); - m_sweepB.GetTransform(&xfB, t); - - switch (m_type) - { - case e_points: - { - b2Vec2 localPointA = m_proxyA->GetVertex(indexA); - b2Vec2 localPointB = m_proxyB->GetVertex(indexB); - - b2Vec2 pointA = b2Mul(xfA, localPointA); - b2Vec2 pointB = b2Mul(xfB, localPointB); - float32 separation = b2Dot(pointB - pointA, m_axis); - - return separation; - } - - case e_faceA: - { - b2Vec2 normal = b2Mul(xfA.q, m_axis); - b2Vec2 pointA = b2Mul(xfA, m_localPoint); - - b2Vec2 localPointB = m_proxyB->GetVertex(indexB); - b2Vec2 pointB = b2Mul(xfB, localPointB); - - float32 separation = b2Dot(pointB - pointA, normal); - return separation; - } - - case e_faceB: - { - b2Vec2 normal = b2Mul(xfB.q, m_axis); - b2Vec2 pointB = b2Mul(xfB, m_localPoint); - - b2Vec2 localPointA = m_proxyA->GetVertex(indexA); - b2Vec2 pointA = b2Mul(xfA, localPointA); - - float32 separation = b2Dot(pointA - pointB, normal); - return separation; - } - - default: - b2Assert(false); - return 0.0f; - } - } - - const b2DistanceProxy* m_proxyA; - const b2DistanceProxy* m_proxyB; - b2Sweep m_sweepA, m_sweepB; - Type m_type; - b2Vec2 m_localPoint; - b2Vec2 m_axis; -}; - -// CCD via the local separating axis method. This seeks progression -// by computing the largest time at which separation is maintained. -void b2TimeOfImpact(b2TOIOutput* output, const b2TOIInput* input) -{ - b2Timer timer; - - ++b2_toiCalls; - - output->state = b2TOIOutput::e_unknown; - output->t = input->tMax; - - const b2DistanceProxy* proxyA = &input->proxyA; - const b2DistanceProxy* proxyB = &input->proxyB; - - b2Sweep sweepA = input->sweepA; - b2Sweep sweepB = input->sweepB; - - // Large rotations can make the root finder fail, so we normalize the - // sweep angles. - sweepA.Normalize(); - sweepB.Normalize(); - - float32 tMax = input->tMax; - - float32 totalRadius = proxyA->m_radius + proxyB->m_radius; - float32 target = b2Max(b2_linearSlop, totalRadius - 3.0f * b2_linearSlop); - float32 tolerance = 0.25f * b2_linearSlop; - b2Assert(target > tolerance); - - float32 t1 = 0.0f; - const int32 k_maxIterations = 20; // TODO_ERIN b2Settings - int32 iter = 0; - - // Prepare input for distance query. - b2SimplexCache cache; - cache.count = 0; - b2DistanceInput distanceInput; - distanceInput.proxyA = input->proxyA; - distanceInput.proxyB = input->proxyB; - distanceInput.useRadii = false; - - // The outer loop progressively attempts to compute new separating axes. - // This loop terminates when an axis is repeated (no progress is made). - for(;;) - { - b2Transform xfA, xfB; - sweepA.GetTransform(&xfA, t1); - sweepB.GetTransform(&xfB, t1); - - // Get the distance between shapes. We can also use the results - // to get a separating axis. - distanceInput.transformA = xfA; - distanceInput.transformB = xfB; - b2DistanceOutput distanceOutput; - b2Distance(&distanceOutput, &cache, &distanceInput); - - // If the shapes are overlapped, we give up on continuous collision. - if (distanceOutput.distance <= 0.0f) - { - // Failure! - output->state = b2TOIOutput::e_overlapped; - output->t = 0.0f; - break; - } - - if (distanceOutput.distance < target + tolerance) - { - // Victory! - output->state = b2TOIOutput::e_touching; - output->t = t1; - break; - } - - // Initialize the separating axis. - b2SeparationFunction fcn; - fcn.Initialize(&cache, proxyA, sweepA, proxyB, sweepB, t1); -#if 0 - // Dump the curve seen by the root finder - { - const int32 N = 100; - float32 dx = 1.0f / N; - float32 xs[N+1]; - float32 fs[N+1]; - - float32 x = 0.0f; - - for (int32 i = 0; i <= N; ++i) - { - sweepA.GetTransform(&xfA, x); - sweepB.GetTransform(&xfB, x); - float32 f = fcn.Evaluate(xfA, xfB) - target; - - printf("%g %g\n", x, f); - - xs[i] = x; - fs[i] = f; - - x += dx; - } - } -#endif - - // Compute the TOI on the separating axis. We do this by successively - // resolving the deepest point. This loop is bounded by the number of vertices. - bool done = false; - float32 t2 = tMax; - int32 pushBackIter = 0; - for (;;) - { - // Find the deepest point at t2. Store the witness point indices. - int32 indexA, indexB; - float32 s2 = fcn.FindMinSeparation(&indexA, &indexB, t2); - - // Is the final configuration separated? - if (s2 > target + tolerance) - { - // Victory! - output->state = b2TOIOutput::e_separated; - output->t = tMax; - done = true; - break; - } - - // Has the separation reached tolerance? - if (s2 > target - tolerance) - { - // Advance the sweeps - t1 = t2; - break; - } - - // Compute the initial separation of the witness points. - float32 s1 = fcn.Evaluate(indexA, indexB, t1); - - // Check for initial overlap. This might happen if the root finder - // runs out of iterations. - if (s1 < target - tolerance) - { - output->state = b2TOIOutput::e_failed; - output->t = t1; - done = true; - break; - } - - // Check for touching - if (s1 <= target + tolerance) - { - // Victory! t1 should hold the TOI (could be 0.0). - output->state = b2TOIOutput::e_touching; - output->t = t1; - done = true; - break; - } - - // Compute 1D root of: f(x) - target = 0 - int32 rootIterCount = 0; - float32 a1 = t1, a2 = t2; - for (;;) - { - // Use a mix of the secant rule and bisection. - float32 t; - if (rootIterCount & 1) - { - // Secant rule to improve convergence. - t = a1 + (target - s1) * (a2 - a1) / (s2 - s1); - } - else - { - // Bisection to guarantee progress. - t = 0.5f * (a1 + a2); - } - - ++rootIterCount; - ++b2_toiRootIters; - - float32 s = fcn.Evaluate(indexA, indexB, t); - - if (b2Abs(s - target) < tolerance) - { - // t2 holds a tentative value for t1 - t2 = t; - break; - } - - // Ensure we continue to bracket the root. - if (s > target) - { - a1 = t; - s1 = s; - } - else - { - a2 = t; - s2 = s; - } - - if (rootIterCount == 50) - { - break; - } - } - - b2_toiMaxRootIters = b2Max(b2_toiMaxRootIters, rootIterCount); - - ++pushBackIter; - - if (pushBackIter == b2_maxPolygonVertices) - { - break; - } - } - - ++iter; - ++b2_toiIters; - - if (done) - { - break; - } - - if (iter == k_maxIterations) - { - // Root finder got stuck. Semi-victory. - output->state = b2TOIOutput::e_failed; - output->t = t1; - break; - } - } - - b2_toiMaxIters = b2Max(b2_toiMaxIters, iter); - - float32 time = timer.GetMilliseconds(); - b2_toiMaxTime = b2Max(b2_toiMaxTime, time); - b2_toiTime += time; -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2TimeOfImpact.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2TimeOfImpact.h deleted file mode 100644 index 179a170..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2TimeOfImpact.h +++ /dev/null @@ -1,58 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_TIME_OF_IMPACT_H -#define B2_TIME_OF_IMPACT_H - -#include -#include - -/// Input parameters for b2TimeOfImpact -struct b2TOIInput -{ - b2DistanceProxy proxyA; - b2DistanceProxy proxyB; - b2Sweep sweepA; - b2Sweep sweepB; - float32 tMax; // defines sweep interval [0, tMax] -}; - -// Output parameters for b2TimeOfImpact. -struct b2TOIOutput -{ - enum State - { - e_unknown, - e_failed, - e_overlapped, - e_touching, - e_separated - }; - - State state; - float32 t; -}; - -/// Compute the upper bound on time before two shapes penetrate. Time is represented as -/// a fraction between [0,tMax]. This uses a swept separating axis and may miss some intermediate, -/// non-tunneling collision. If you change the time interval, you should call this function -/// again. -/// Note: use b2Distance to compute the contact point and normal at the time of impact. -void b2TimeOfImpact(b2TOIOutput* output, const b2TOIInput* input); - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2BlockAllocator.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2BlockAllocator.cpp deleted file mode 100644 index fb5324f..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2BlockAllocator.cpp +++ /dev/null @@ -1,215 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include -#include -#include -#include - -int32 b2BlockAllocator::s_blockSizes[b2_blockSizes] = -{ - 16, // 0 - 32, // 1 - 64, // 2 - 96, // 3 - 128, // 4 - 160, // 5 - 192, // 6 - 224, // 7 - 256, // 8 - 320, // 9 - 384, // 10 - 448, // 11 - 512, // 12 - 640, // 13 -}; -uint8 b2BlockAllocator::s_blockSizeLookup[b2_maxBlockSize + 1]; -bool b2BlockAllocator::s_blockSizeLookupInitialized; - -struct b2Chunk -{ - int32 blockSize; - b2Block* blocks; -}; - -struct b2Block -{ - b2Block* next; -}; - -b2BlockAllocator::b2BlockAllocator() -{ - b2Assert(b2_blockSizes < UCHAR_MAX); - - m_chunkSpace = b2_chunkArrayIncrement; - m_chunkCount = 0; - m_chunks = (b2Chunk*)b2Alloc(m_chunkSpace * sizeof(b2Chunk)); - - memset(m_chunks, 0, m_chunkSpace * sizeof(b2Chunk)); - memset(m_freeLists, 0, sizeof(m_freeLists)); - - if (s_blockSizeLookupInitialized == false) - { - int32 j = 0; - for (int32 i = 1; i <= b2_maxBlockSize; ++i) - { - b2Assert(j < b2_blockSizes); - if (i <= s_blockSizes[j]) - { - s_blockSizeLookup[i] = (uint8)j; - } - else - { - ++j; - s_blockSizeLookup[i] = (uint8)j; - } - } - - s_blockSizeLookupInitialized = true; - } -} - -b2BlockAllocator::~b2BlockAllocator() -{ - for (int32 i = 0; i < m_chunkCount; ++i) - { - b2Free(m_chunks[i].blocks); - } - - b2Free(m_chunks); -} - -void* b2BlockAllocator::Allocate(int32 size) -{ - if (size == 0) - return NULL; - - b2Assert(0 < size); - - if (size > b2_maxBlockSize) - { - return b2Alloc(size); - } - - int32 index = s_blockSizeLookup[size]; - b2Assert(0 <= index && index < b2_blockSizes); - - if (m_freeLists[index]) - { - b2Block* block = m_freeLists[index]; - m_freeLists[index] = block->next; - return block; - } - else - { - if (m_chunkCount == m_chunkSpace) - { - b2Chunk* oldChunks = m_chunks; - m_chunkSpace += b2_chunkArrayIncrement; - m_chunks = (b2Chunk*)b2Alloc(m_chunkSpace * sizeof(b2Chunk)); - memcpy(m_chunks, oldChunks, m_chunkCount * sizeof(b2Chunk)); - memset(m_chunks + m_chunkCount, 0, b2_chunkArrayIncrement * sizeof(b2Chunk)); - b2Free(oldChunks); - } - - b2Chunk* chunk = m_chunks + m_chunkCount; - chunk->blocks = (b2Block*)b2Alloc(b2_chunkSize); -#if defined(_DEBUG) - memset(chunk->blocks, 0xcd, b2_chunkSize); -#endif - int32 blockSize = s_blockSizes[index]; - chunk->blockSize = blockSize; - int32 blockCount = b2_chunkSize / blockSize; - b2Assert(blockCount * blockSize <= b2_chunkSize); - for (int32 i = 0; i < blockCount - 1; ++i) - { - b2Block* block = (b2Block*)((int8*)chunk->blocks + blockSize * i); - b2Block* next = (b2Block*)((int8*)chunk->blocks + blockSize * (i + 1)); - block->next = next; - } - b2Block* last = (b2Block*)((int8*)chunk->blocks + blockSize * (blockCount - 1)); - last->next = NULL; - - m_freeLists[index] = chunk->blocks->next; - ++m_chunkCount; - - return chunk->blocks; - } -} - -void b2BlockAllocator::Free(void* p, int32 size) -{ - if (size == 0) - { - return; - } - - b2Assert(0 < size); - - if (size > b2_maxBlockSize) - { - b2Free(p); - return; - } - - int32 index = s_blockSizeLookup[size]; - b2Assert(0 <= index && index < b2_blockSizes); - -#ifdef _DEBUG - // Verify the memory address and size is valid. - int32 blockSize = s_blockSizes[index]; - bool found = false; - for (int32 i = 0; i < m_chunkCount; ++i) - { - b2Chunk* chunk = m_chunks + i; - if (chunk->blockSize != blockSize) - { - b2Assert( (int8*)p + blockSize <= (int8*)chunk->blocks || - (int8*)chunk->blocks + b2_chunkSize <= (int8*)p); - } - else - { - if ((int8*)chunk->blocks <= (int8*)p && (int8*)p + blockSize <= (int8*)chunk->blocks + b2_chunkSize) - { - found = true; - } - } - } - - b2Assert(found); - - memset(p, 0xfd, blockSize); -#endif - - b2Block* block = (b2Block*)p; - block->next = m_freeLists[index]; - m_freeLists[index] = block; -} - -void b2BlockAllocator::Clear() -{ - for (int32 i = 0; i < m_chunkCount; ++i) - { - b2Free(m_chunks[i].blocks); - } - - m_chunkCount = 0; - memset(m_chunks, 0, m_chunkSpace * sizeof(b2Chunk)); - - memset(m_freeLists, 0, sizeof(m_freeLists)); -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2BlockAllocator.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2BlockAllocator.h deleted file mode 100644 index 8ba29a5..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2BlockAllocator.h +++ /dev/null @@ -1,62 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_BLOCK_ALLOCATOR_H -#define B2_BLOCK_ALLOCATOR_H - -#include - -const int32 b2_chunkSize = 16 * 1024; -const int32 b2_maxBlockSize = 640; -const int32 b2_blockSizes = 14; -const int32 b2_chunkArrayIncrement = 128; - -struct b2Block; -struct b2Chunk; - -/// This is a small object allocator used for allocating small -/// objects that persist for more than one time step. -/// See: http://www.codeproject.com/useritems/Small_Block_Allocator.asp -class b2BlockAllocator -{ -public: - b2BlockAllocator(); - ~b2BlockAllocator(); - - /// Allocate memory. This will use b2Alloc if the size is larger than b2_maxBlockSize. - void* Allocate(int32 size); - - /// Free memory. This will use b2Free if the size is larger than b2_maxBlockSize. - void Free(void* p, int32 size); - - void Clear(); - -private: - - b2Chunk* m_chunks; - int32 m_chunkCount; - int32 m_chunkSpace; - - b2Block* m_freeLists[b2_blockSizes]; - - static int32 s_blockSizes[b2_blockSizes]; - static uint8 s_blockSizeLookup[b2_maxBlockSize + 1]; - static bool s_blockSizeLookupInitialized; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Draw.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Draw.cpp deleted file mode 100644 index 327b580..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Draw.cpp +++ /dev/null @@ -1,44 +0,0 @@ -/* -* Copyright (c) 2011 Erin Catto http://box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include - -b2Draw::b2Draw() -{ - m_drawFlags = 0; -} - -void b2Draw::SetFlags(uint32 flags) -{ - m_drawFlags = flags; -} - -uint32 b2Draw::GetFlags() const -{ - return m_drawFlags; -} - -void b2Draw::AppendFlags(uint32 flags) -{ - m_drawFlags |= flags; -} - -void b2Draw::ClearFlags(uint32 flags) -{ - m_drawFlags &= ~flags; -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Draw.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Draw.h deleted file mode 100644 index 14f3105..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Draw.h +++ /dev/null @@ -1,86 +0,0 @@ -/* -* Copyright (c) 2011 Erin Catto http://box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_DRAW_H -#define B2_DRAW_H - -#include - -/// Color for debug drawing. Each value has the range [0,1]. -struct b2Color -{ - b2Color() {} - b2Color(float32 r, float32 g, float32 b) : r(r), g(g), b(b) {} - void Set(float32 ri, float32 gi, float32 bi) { r = ri; g = gi; b = bi; } - float32 r, g, b; -}; - -/// Implement and register this class with a b2World to provide debug drawing of physics -/// entities in your game. -class b2Draw -{ -public: - b2Draw(); - - virtual ~b2Draw() {} - - enum - { - e_shapeBit = 0x0001, ///< draw shapes - e_jointBit = 0x0002, ///< draw joint connections - e_aabbBit = 0x0004, ///< draw axis aligned bounding boxes - e_pairBit = 0x0008, ///< draw broad-phase pairs - e_centerOfMassBit = 0x0010 ///< draw center of mass frame - }; - - /// Set the drawing flags. - void SetFlags(uint32 flags); - - /// Get the drawing flags. - uint32 GetFlags() const; - - /// Append flags to the current flags. - void AppendFlags(uint32 flags); - - /// Clear flags from the current flags. - void ClearFlags(uint32 flags); - - /// Draw a closed polygon provided in CCW order. - virtual void DrawPolygon(const b2Vec2* vertices, int32 vertexCount, const b2Color& color) = 0; - - /// Draw a solid closed polygon provided in CCW order. - virtual void DrawSolidPolygon(const b2Vec2* vertices, int32 vertexCount, const b2Color& color) = 0; - - /// Draw a circle. - virtual void DrawCircle(const b2Vec2& center, float32 radius, const b2Color& color) = 0; - - /// Draw a solid circle. - virtual void DrawSolidCircle(const b2Vec2& center, float32 radius, const b2Vec2& axis, const b2Color& color) = 0; - - /// Draw a line segment. - virtual void DrawSegment(const b2Vec2& p1, const b2Vec2& p2, const b2Color& color) = 0; - - /// Draw a transform. Choose your own length scale. - /// @param xf a transform. - virtual void DrawTransform(const b2Transform& xf) = 0; - -protected: - uint32 m_drawFlags; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2GrowableStack.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2GrowableStack.h deleted file mode 100644 index 80514f2..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2GrowableStack.h +++ /dev/null @@ -1,85 +0,0 @@ -/* -* Copyright (c) 2010 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_GROWABLE_STACK_H -#define B2_GROWABLE_STACK_H -#include -#include - -/// This is a growable LIFO stack with an initial capacity of N. -/// If the stack size exceeds the initial capacity, the heap is used -/// to increase the size of the stack. -template -class b2GrowableStack -{ -public: - b2GrowableStack() - { - m_stack = m_array; - m_count = 0; - m_capacity = N; - } - - ~b2GrowableStack() - { - if (m_stack != m_array) - { - b2Free(m_stack); - m_stack = NULL; - } - } - - void Push(const T& element) - { - if (m_count == m_capacity) - { - T* old = m_stack; - m_capacity *= 2; - m_stack = (T*)b2Alloc(m_capacity * sizeof(T)); - memcpy(m_stack, old, m_count * sizeof(T)); - if (old != m_array) - { - b2Free(old); - } - } - - m_stack[m_count] = element; - ++m_count; - } - - T Pop() - { - b2Assert(m_count > 0); - --m_count; - return m_stack[m_count]; - } - - int32 GetCount() - { - return m_count; - } - -private: - T* m_stack; - T m_array[N]; - int32 m_count; - int32 m_capacity; -}; - - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Math.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Math.cpp deleted file mode 100644 index 4974fe1..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Math.cpp +++ /dev/null @@ -1,94 +0,0 @@ -/* -* Copyright (c) 2007-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include - -const b2Vec2 b2Vec2_zero(0.0f, 0.0f); - -/// Solve A * x = b, where b is a column vector. This is more efficient -/// than computing the inverse in one-shot cases. -b2Vec3 b2Mat33::Solve33(const b2Vec3& b) const -{ - float32 det = b2Dot(ex, b2Cross(ey, ez)); - if (det != 0.0f) - { - det = 1.0f / det; - } - b2Vec3 x; - x.x = det * b2Dot(b, b2Cross(ey, ez)); - x.y = det * b2Dot(ex, b2Cross(b, ez)); - x.z = det * b2Dot(ex, b2Cross(ey, b)); - return x; -} - -/// Solve A * x = b, where b is a column vector. This is more efficient -/// than computing the inverse in one-shot cases. -b2Vec2 b2Mat33::Solve22(const b2Vec2& b) const -{ - float32 a11 = ex.x, a12 = ey.x, a21 = ex.y, a22 = ey.y; - float32 det = a11 * a22 - a12 * a21; - if (det != 0.0f) - { - det = 1.0f / det; - } - b2Vec2 x; - x.x = det * (a22 * b.x - a12 * b.y); - x.y = det * (a11 * b.y - a21 * b.x); - return x; -} - -/// -void b2Mat33::GetInverse22(b2Mat33* M) const -{ - float32 a = ex.x, b = ey.x, c = ex.y, d = ey.y; - float32 det = a * d - b * c; - if (det != 0.0f) - { - det = 1.0f / det; - } - - M->ex.x = det * d; M->ey.x = -det * b; M->ex.z = 0.0f; - M->ex.y = -det * c; M->ey.y = det * a; M->ey.z = 0.0f; - M->ez.x = 0.0f; M->ez.y = 0.0f; M->ez.z = 0.0f; -} - -/// Returns the zero matrix if singular. -void b2Mat33::GetSymInverse33(b2Mat33* M) const -{ - float32 det = b2Dot(ex, b2Cross(ey, ez)); - if (det != 0.0f) - { - det = 1.0f / det; - } - - float32 a11 = ex.x, a12 = ey.x, a13 = ez.x; - float32 a22 = ey.y, a23 = ez.y; - float32 a33 = ez.z; - - M->ex.x = det * (a22 * a33 - a23 * a23); - M->ex.y = det * (a13 * a23 - a12 * a33); - M->ex.z = det * (a12 * a23 - a13 * a22); - - M->ey.x = M->ex.y; - M->ey.y = det * (a11 * a33 - a13 * a13); - M->ey.z = det * (a13 * a12 - a11 * a23); - - M->ez.x = M->ex.z; - M->ez.y = M->ey.z; - M->ez.z = det * (a11 * a22 - a12 * a12); -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Math.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Math.h deleted file mode 100644 index a9b0813..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Math.h +++ /dev/null @@ -1,720 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_MATH_H -#define B2_MATH_H - -#include -#include - -/// This function is used to ensure that a floating point number is not a NaN or infinity. -inline bool b2IsValid(float32 x) -{ - int32 ix = *reinterpret_cast(&x); - return (ix & 0x7f800000) != 0x7f800000; -} - -/// This is a approximate yet fast inverse square-root. -inline float32 b2InvSqrt(float32 x) -{ - union - { - float32 x; - int32 i; - } convert; - - convert.x = x; - float32 xhalf = 0.5f * x; - convert.i = 0x5f3759df - (convert.i >> 1); - x = convert.x; - x = x * (1.5f - xhalf * x * x); - return x; -} - -#define b2Sqrt(x) sqrtf(x) -#define b2Atan2(y, x) atan2f(y, x) - -/// A 2D column vector. -struct b2Vec2 -{ - /// Default constructor does nothing (for performance). - b2Vec2() {} - - /// Construct using coordinates. - b2Vec2(float32 x, float32 y) : x(x), y(y) {} - - /// Set this vector to all zeros. - void SetZero() { x = 0.0f; y = 0.0f; } - - /// Set this vector to some specified coordinates. - void Set(float32 x_, float32 y_) { x = x_; y = y_; } - - /// Negate this vector. - b2Vec2 operator -() const { b2Vec2 v; v.Set(-x, -y); return v; } - - /// Read from and indexed element. - float32 operator () (int32 i) const - { - return (&x)[i]; - } - - /// Write to an indexed element. - float32& operator () (int32 i) - { - return (&x)[i]; - } - - /// Add a vector to this vector. - void operator += (const b2Vec2& v) - { - x += v.x; y += v.y; - } - - /// Subtract a vector from this vector. - void operator -= (const b2Vec2& v) - { - x -= v.x; y -= v.y; - } - - /// Multiply this vector by a scalar. - void operator *= (float32 a) - { - x *= a; y *= a; - } - - /// Get the length of this vector (the norm). - float32 Length() const - { - return b2Sqrt(x * x + y * y); - } - - /// Get the length squared. For performance, use this instead of - /// b2Vec2::Length (if possible). - float32 LengthSquared() const - { - return x * x + y * y; - } - - /// Convert this vector into a unit vector. Returns the length. - float32 Normalize() - { - float32 length = Length(); - if (length < b2_epsilon) - { - return 0.0f; - } - float32 invLength = 1.0f / length; - x *= invLength; - y *= invLength; - - return length; - } - - /// Does this vector contain finite coordinates? - bool IsValid() const - { - return b2IsValid(x) && b2IsValid(y); - } - - /// Get the skew vector such that dot(skew_vec, other) == cross(vec, other) - b2Vec2 Skew() const - { - return b2Vec2(-y, x); - } - - float32 x, y; -}; - -/// A 2D column vector with 3 elements. -struct b2Vec3 -{ - /// Default constructor does nothing (for performance). - b2Vec3() {} - - /// Construct using coordinates. - b2Vec3(float32 x, float32 y, float32 z) : x(x), y(y), z(z) {} - - /// Set this vector to all zeros. - void SetZero() { x = 0.0f; y = 0.0f; z = 0.0f; } - - /// Set this vector to some specified coordinates. - void Set(float32 x_, float32 y_, float32 z_) { x = x_; y = y_; z = z_; } - - /// Negate this vector. - b2Vec3 operator -() const { b2Vec3 v; v.Set(-x, -y, -z); return v; } - - /// Add a vector to this vector. - void operator += (const b2Vec3& v) - { - x += v.x; y += v.y; z += v.z; - } - - /// Subtract a vector from this vector. - void operator -= (const b2Vec3& v) - { - x -= v.x; y -= v.y; z -= v.z; - } - - /// Multiply this vector by a scalar. - void operator *= (float32 s) - { - x *= s; y *= s; z *= s; - } - - float32 x, y, z; -}; - -/// A 2-by-2 matrix. Stored in column-major order. -struct b2Mat22 -{ - /// The default constructor does nothing (for performance). - b2Mat22() {} - - /// Construct this matrix using columns. - b2Mat22(const b2Vec2& c1, const b2Vec2& c2) - { - ex = c1; - ey = c2; - } - - /// Construct this matrix using scalars. - b2Mat22(float32 a11, float32 a12, float32 a21, float32 a22) - { - ex.x = a11; ex.y = a21; - ey.x = a12; ey.y = a22; - } - - /// Initialize this matrix using columns. - void Set(const b2Vec2& c1, const b2Vec2& c2) - { - ex = c1; - ey = c2; - } - - /// Set this to the identity matrix. - void SetIdentity() - { - ex.x = 1.0f; ey.x = 0.0f; - ex.y = 0.0f; ey.y = 1.0f; - } - - /// Set this matrix to all zeros. - void SetZero() - { - ex.x = 0.0f; ey.x = 0.0f; - ex.y = 0.0f; ey.y = 0.0f; - } - - b2Mat22 GetInverse() const - { - float32 a = ex.x, b = ey.x, c = ex.y, d = ey.y; - b2Mat22 B; - float32 det = a * d - b * c; - if (det != 0.0f) - { - det = 1.0f / det; - } - B.ex.x = det * d; B.ey.x = -det * b; - B.ex.y = -det * c; B.ey.y = det * a; - return B; - } - - /// Solve A * x = b, where b is a column vector. This is more efficient - /// than computing the inverse in one-shot cases. - b2Vec2 Solve(const b2Vec2& b) const - { - float32 a11 = ex.x, a12 = ey.x, a21 = ex.y, a22 = ey.y; - float32 det = a11 * a22 - a12 * a21; - if (det != 0.0f) - { - det = 1.0f / det; - } - b2Vec2 x; - x.x = det * (a22 * b.x - a12 * b.y); - x.y = det * (a11 * b.y - a21 * b.x); - return x; - } - - b2Vec2 ex, ey; -}; - -/// A 3-by-3 matrix. Stored in column-major order. -struct b2Mat33 -{ - /// The default constructor does nothing (for performance). - b2Mat33() {} - - /// Construct this matrix using columns. - b2Mat33(const b2Vec3& c1, const b2Vec3& c2, const b2Vec3& c3) - { - ex = c1; - ey = c2; - ez = c3; - } - - /// Set this matrix to all zeros. - void SetZero() - { - ex.SetZero(); - ey.SetZero(); - ez.SetZero(); - } - - /// Solve A * x = b, where b is a column vector. This is more efficient - /// than computing the inverse in one-shot cases. - b2Vec3 Solve33(const b2Vec3& b) const; - - /// Solve A * x = b, where b is a column vector. This is more efficient - /// than computing the inverse in one-shot cases. Solve only the upper - /// 2-by-2 matrix equation. - b2Vec2 Solve22(const b2Vec2& b) const; - - /// Get the inverse of this matrix as a 2-by-2. - /// Returns the zero matrix if singular. - void GetInverse22(b2Mat33* M) const; - - /// Get the symmetric inverse of this matrix as a 3-by-3. - /// Returns the zero matrix if singular. - void GetSymInverse33(b2Mat33* M) const; - - b2Vec3 ex, ey, ez; -}; - -/// Rotation -struct b2Rot -{ - b2Rot() {} - - /// Initialize from an angle in radians - explicit b2Rot(float32 angle) - { - /// TODO_ERIN optimize - s = sinf(angle); - c = cosf(angle); - } - - /// Set using an angle in radians. - void Set(float32 angle) - { - /// TODO_ERIN optimize - s = sinf(angle); - c = cosf(angle); - } - - /// Set to the identity rotation - void SetIdentity() - { - s = 0.0f; - c = 1.0f; - } - - /// Get the angle in radians - float32 GetAngle() const - { - return b2Atan2(s, c); - } - - /// Get the x-axis - b2Vec2 GetXAxis() const - { - return b2Vec2(c, s); - } - - /// Get the u-axis - b2Vec2 GetYAxis() const - { - return b2Vec2(-s, c); - } - - /// Sine and cosine - float32 s, c; -}; - -/// A transform contains translation and rotation. It is used to represent -/// the position and orientation of rigid frames. -struct b2Transform -{ - /// The default constructor does nothing. - b2Transform() {} - - /// Initialize using a position vector and a rotation. - b2Transform(const b2Vec2& position, const b2Rot& rotation) : p(position), q(rotation) {} - - /// Set this to the identity transform. - void SetIdentity() - { - p.SetZero(); - q.SetIdentity(); - } - - /// Set this based on the position and angle. - void Set(const b2Vec2& position, float32 angle) - { - p = position; - q.Set(angle); - } - - b2Vec2 p; - b2Rot q; -}; - -/// This describes the motion of a body/shape for TOI computation. -/// Shapes are defined with respect to the body origin, which may -/// no coincide with the center of mass. However, to support dynamics -/// we must interpolate the center of mass position. -struct b2Sweep -{ - /// Get the interpolated transform at a specific time. - /// @param beta is a factor in [0,1], where 0 indicates alpha0. - void GetTransform(b2Transform* xfb, float32 beta) const; - - /// Advance the sweep forward, yielding a new initial state. - /// @param alpha the new initial time. - void Advance(float32 alpha); - - /// Normalize the angles. - void Normalize(); - - b2Vec2 localCenter; ///< local center of mass position - b2Vec2 c0, c; ///< center world positions - float32 a0, a; ///< world angles - - /// Fraction of the current time step in the range [0,1] - /// c0 and a0 are the positions at alpha0. - float32 alpha0; -}; - -/// Useful constant -extern const b2Vec2 b2Vec2_zero; - -/// Perform the dot product on two vectors. -inline float32 b2Dot(const b2Vec2& a, const b2Vec2& b) -{ - return a.x * b.x + a.y * b.y; -} - -/// Perform the cross product on two vectors. In 2D this produces a scalar. -inline float32 b2Cross(const b2Vec2& a, const b2Vec2& b) -{ - return a.x * b.y - a.y * b.x; -} - -/// Perform the cross product on a vector and a scalar. In 2D this produces -/// a vector. -inline b2Vec2 b2Cross(const b2Vec2& a, float32 s) -{ - return b2Vec2(s * a.y, -s * a.x); -} - -/// Perform the cross product on a scalar and a vector. In 2D this produces -/// a vector. -inline b2Vec2 b2Cross(float32 s, const b2Vec2& a) -{ - return b2Vec2(-s * a.y, s * a.x); -} - -/// Multiply a matrix times a vector. If a rotation matrix is provided, -/// then this transforms the vector from one frame to another. -inline b2Vec2 b2Mul(const b2Mat22& A, const b2Vec2& v) -{ - return b2Vec2(A.ex.x * v.x + A.ey.x * v.y, A.ex.y * v.x + A.ey.y * v.y); -} - -/// Multiply a matrix transpose times a vector. If a rotation matrix is provided, -/// then this transforms the vector from one frame to another (inverse transform). -inline b2Vec2 b2MulT(const b2Mat22& A, const b2Vec2& v) -{ - return b2Vec2(b2Dot(v, A.ex), b2Dot(v, A.ey)); -} - -/// Add two vectors component-wise. -inline b2Vec2 operator + (const b2Vec2& a, const b2Vec2& b) -{ - return b2Vec2(a.x + b.x, a.y + b.y); -} - -/// Subtract two vectors component-wise. -inline b2Vec2 operator - (const b2Vec2& a, const b2Vec2& b) -{ - return b2Vec2(a.x - b.x, a.y - b.y); -} - -inline b2Vec2 operator * (float32 s, const b2Vec2& a) -{ - return b2Vec2(s * a.x, s * a.y); -} - -inline bool operator == (const b2Vec2& a, const b2Vec2& b) -{ - return a.x == b.x && a.y == b.y; -} - -inline float32 b2Distance(const b2Vec2& a, const b2Vec2& b) -{ - b2Vec2 c = a - b; - return c.Length(); -} - -inline float32 b2DistanceSquared(const b2Vec2& a, const b2Vec2& b) -{ - b2Vec2 c = a - b; - return b2Dot(c, c); -} - -inline b2Vec3 operator * (float32 s, const b2Vec3& a) -{ - return b2Vec3(s * a.x, s * a.y, s * a.z); -} - -/// Add two vectors component-wise. -inline b2Vec3 operator + (const b2Vec3& a, const b2Vec3& b) -{ - return b2Vec3(a.x + b.x, a.y + b.y, a.z + b.z); -} - -/// Subtract two vectors component-wise. -inline b2Vec3 operator - (const b2Vec3& a, const b2Vec3& b) -{ - return b2Vec3(a.x - b.x, a.y - b.y, a.z - b.z); -} - -/// Perform the dot product on two vectors. -inline float32 b2Dot(const b2Vec3& a, const b2Vec3& b) -{ - return a.x * b.x + a.y * b.y + a.z * b.z; -} - -/// Perform the cross product on two vectors. -inline b2Vec3 b2Cross(const b2Vec3& a, const b2Vec3& b) -{ - return b2Vec3(a.y * b.z - a.z * b.y, a.z * b.x - a.x * b.z, a.x * b.y - a.y * b.x); -} - -inline b2Mat22 operator + (const b2Mat22& A, const b2Mat22& B) -{ - return b2Mat22(A.ex + B.ex, A.ey + B.ey); -} - -// A * B -inline b2Mat22 b2Mul(const b2Mat22& A, const b2Mat22& B) -{ - return b2Mat22(b2Mul(A, B.ex), b2Mul(A, B.ey)); -} - -// A^T * B -inline b2Mat22 b2MulT(const b2Mat22& A, const b2Mat22& B) -{ - b2Vec2 c1(b2Dot(A.ex, B.ex), b2Dot(A.ey, B.ex)); - b2Vec2 c2(b2Dot(A.ex, B.ey), b2Dot(A.ey, B.ey)); - return b2Mat22(c1, c2); -} - -/// Multiply a matrix times a vector. -inline b2Vec3 b2Mul(const b2Mat33& A, const b2Vec3& v) -{ - return v.x * A.ex + v.y * A.ey + v.z * A.ez; -} - -/// Multiply a matrix times a vector. -inline b2Vec2 b2Mul22(const b2Mat33& A, const b2Vec2& v) -{ - return b2Vec2(A.ex.x * v.x + A.ey.x * v.y, A.ex.y * v.x + A.ey.y * v.y); -} - -/// Multiply two rotations: q * r -inline b2Rot b2Mul(const b2Rot& q, const b2Rot& r) -{ - // [qc -qs] * [rc -rs] = [qc*rc-qs*rs -qc*rs-qs*rc] - // [qs qc] [rs rc] [qs*rc+qc*rs -qs*rs+qc*rc] - // s = qs * rc + qc * rs - // c = qc * rc - qs * rs - b2Rot qr; - qr.s = q.s * r.c + q.c * r.s; - qr.c = q.c * r.c - q.s * r.s; - return qr; -} - -/// Transpose multiply two rotations: qT * r -inline b2Rot b2MulT(const b2Rot& q, const b2Rot& r) -{ - // [ qc qs] * [rc -rs] = [qc*rc+qs*rs -qc*rs+qs*rc] - // [-qs qc] [rs rc] [-qs*rc+qc*rs qs*rs+qc*rc] - // s = qc * rs - qs * rc - // c = qc * rc + qs * rs - b2Rot qr; - qr.s = q.c * r.s - q.s * r.c; - qr.c = q.c * r.c + q.s * r.s; - return qr; -} - -/// Rotate a vector -inline b2Vec2 b2Mul(const b2Rot& q, const b2Vec2& v) -{ - return b2Vec2(q.c * v.x - q.s * v.y, q.s * v.x + q.c * v.y); -} - -/// Inverse rotate a vector -inline b2Vec2 b2MulT(const b2Rot& q, const b2Vec2& v) -{ - return b2Vec2(q.c * v.x + q.s * v.y, -q.s * v.x + q.c * v.y); -} - -inline b2Vec2 b2Mul(const b2Transform& T, const b2Vec2& v) -{ - float32 x = (T.q.c * v.x - T.q.s * v.y) + T.p.x; - float32 y = (T.q.s * v.x + T.q.c * v.y) + T.p.y; - - return b2Vec2(x, y); -} - -inline b2Vec2 b2MulT(const b2Transform& T, const b2Vec2& v) -{ - float32 px = v.x - T.p.x; - float32 py = v.y - T.p.y; - float32 x = (T.q.c * px + T.q.s * py); - float32 y = (-T.q.s * px + T.q.c * py); - - return b2Vec2(x, y); -} - -// v2 = A.q.Rot(B.q.Rot(v1) + B.p) + A.p -// = (A.q * B.q).Rot(v1) + A.q.Rot(B.p) + A.p -inline b2Transform b2Mul(const b2Transform& A, const b2Transform& B) -{ - b2Transform C; - C.q = b2Mul(A.q, B.q); - C.p = b2Mul(A.q, B.p) + A.p; - return C; -} - -// v2 = A.q' * (B.q * v1 + B.p - A.p) -// = A.q' * B.q * v1 + A.q' * (B.p - A.p) -inline b2Transform b2MulT(const b2Transform& A, const b2Transform& B) -{ - b2Transform C; - C.q = b2MulT(A.q, B.q); - C.p = b2MulT(A.q, B.p - A.p); - return C; -} - -template -inline T b2Abs(T a) -{ - return a > T(0) ? a : -a; -} - -inline b2Vec2 b2Abs(const b2Vec2& a) -{ - return b2Vec2(b2Abs(a.x), b2Abs(a.y)); -} - -inline b2Mat22 b2Abs(const b2Mat22& A) -{ - return b2Mat22(b2Abs(A.ex), b2Abs(A.ey)); -} - -template -inline T b2Min(T a, T b) -{ - return a < b ? a : b; -} - -inline b2Vec2 b2Min(const b2Vec2& a, const b2Vec2& b) -{ - return b2Vec2(b2Min(a.x, b.x), b2Min(a.y, b.y)); -} - -template -inline T b2Max(T a, T b) -{ - return a > b ? a : b; -} - -inline b2Vec2 b2Max(const b2Vec2& a, const b2Vec2& b) -{ - return b2Vec2(b2Max(a.x, b.x), b2Max(a.y, b.y)); -} - -template -inline T b2Clamp(T a, T low, T high) -{ - return b2Max(low, b2Min(a, high)); -} - -inline b2Vec2 b2Clamp(const b2Vec2& a, const b2Vec2& low, const b2Vec2& high) -{ - return b2Max(low, b2Min(a, high)); -} - -template inline void b2Swap(T& a, T& b) -{ - T tmp = a; - a = b; - b = tmp; -} - -/// "Next Largest Power of 2 -/// Given a binary integer value x, the next largest power of 2 can be computed by a SWAR algorithm -/// that recursively "folds" the upper bits into the lower bits. This process yields a bit vector with -/// the same most significant 1 as x, but all 1's below it. Adding 1 to that value yields the next -/// largest power of 2. For a 32-bit value:" -inline uint32 b2NextPowerOfTwo(uint32 x) -{ - x |= (x >> 1); - x |= (x >> 2); - x |= (x >> 4); - x |= (x >> 8); - x |= (x >> 16); - return x + 1; -} - -inline bool b2IsPowerOfTwo(uint32 x) -{ - bool result = x > 0 && (x & (x - 1)) == 0; - return result; -} - -inline void b2Sweep::GetTransform(b2Transform* xf, float32 beta) const -{ - xf->p = (1.0f - beta) * c0 + beta * c; - float32 angle = (1.0f - beta) * a0 + beta * a; - xf->q.Set(angle); - - // Shift to origin - xf->p -= b2Mul(xf->q, localCenter); -} - -inline void b2Sweep::Advance(float32 alpha) -{ - b2Assert(alpha0 < 1.0f); - float32 beta = (alpha - alpha0) / (1.0f - alpha0); - c0 += beta * (c - c0); - a0 += beta * (a - a0); - alpha0 = alpha; -} - -/// Normalize an angle in radians to be between -pi and pi -inline void b2Sweep::Normalize() -{ - float32 twoPi = 2.0f * b2_pi; - float32 d = twoPi * floorf(a0 / twoPi); - a0 -= d; - a -= d; -} - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Settings.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Settings.cpp deleted file mode 100644 index c3f36cd..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Settings.cpp +++ /dev/null @@ -1,44 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include -#include -#include -#include - -b2Version b2_version = {2, 3, 0}; - -// Memory allocators. Modify these to use your own allocator. -void* b2Alloc(int32 size) -{ - return malloc(size); -} - -void b2Free(void* mem) -{ - free(mem); -} - -// You can modify this to use your logging facility. -void b2Log(const char* string, ...) -{ - va_list args; - va_start(args, string); - vprintf(string, args); - va_end(args); -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Settings.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Settings.h deleted file mode 100644 index 617fdc8..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Settings.h +++ /dev/null @@ -1,151 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_SETTINGS_H -#define B2_SETTINGS_H - -#include -#include -#include - -#define B2_NOT_USED(x) ((void)(x)) -#define b2Assert(A) assert(A) - -typedef signed char int8; -typedef signed short int16; -typedef signed int int32; -typedef unsigned char uint8; -typedef unsigned short uint16; -typedef unsigned int uint32; -typedef float float32; -typedef double float64; - -#define b2_maxFloat FLT_MAX -#define b2_epsilon FLT_EPSILON -#define b2_pi 3.14159265359f - -/// @file -/// Global tuning constants based on meters-kilograms-seconds (MKS) units. -/// - -// Collision - -/// The maximum number of contact points between two convex shapes. Do -/// not change this value. -#define b2_maxManifoldPoints 2 - -/// The maximum number of vertices on a convex polygon. You cannot increase -/// this too much because b2BlockAllocator has a maximum object size. -#define b2_maxPolygonVertices 8 - -/// This is used to fatten AABBs in the dynamic tree. This allows proxies -/// to move by a small amount without triggering a tree adjustment. -/// This is in meters. -#define b2_aabbExtension 0.1f - -/// This is used to fatten AABBs in the dynamic tree. This is used to predict -/// the future position based on the current displacement. -/// This is a dimensionless multiplier. -#define b2_aabbMultiplier 2.0f - -/// A small length used as a collision and constraint tolerance. Usually it is -/// chosen to be numerically significant, but visually insignificant. -#define b2_linearSlop 0.005f - -/// A small angle used as a collision and constraint tolerance. Usually it is -/// chosen to be numerically significant, but visually insignificant. -#define b2_angularSlop (2.0f / 180.0f * b2_pi) - -/// The radius of the polygon/edge shape skin. This should not be modified. Making -/// this smaller means polygons will have an insufficient buffer for continuous collision. -/// Making it larger may create artifacts for vertex collision. -#define b2_polygonRadius (2.0f * b2_linearSlop) - -/// Maximum number of sub-steps per contact in continuous physics simulation. -#define b2_maxSubSteps 8 - - -// Dynamics - -/// Maximum number of contacts to be handled to solve a TOI impact. -#define b2_maxTOIContacts 32 - -/// A velocity threshold for elastic collisions. Any collision with a relative linear -/// velocity below this threshold will be treated as inelastic. -#define b2_velocityThreshold 1.0f - -/// The maximum linear position correction used when solving constraints. This helps to -/// prevent overshoot. -#define b2_maxLinearCorrection 0.2f - -/// The maximum angular position correction used when solving constraints. This helps to -/// prevent overshoot. -#define b2_maxAngularCorrection (8.0f / 180.0f * b2_pi) - -/// The maximum linear velocity of a body. This limit is very large and is used -/// to prevent numerical problems. You shouldn't need to adjust this. -#define b2_maxTranslation 2.0f -#define b2_maxTranslationSquared (b2_maxTranslation * b2_maxTranslation) - -/// The maximum angular velocity of a body. This limit is very large and is used -/// to prevent numerical problems. You shouldn't need to adjust this. -#define b2_maxRotation (0.5f * b2_pi) -#define b2_maxRotationSquared (b2_maxRotation * b2_maxRotation) - -/// This scale factor controls how fast overlap is resolved. Ideally this would be 1 so -/// that overlap is removed in one time step. However using values close to 1 often lead -/// to overshoot. -#define b2_baumgarte 0.2f -#define b2_toiBaugarte 0.75f - - -// Sleep - -/// The time that a body must be still before it will go to sleep. -#define b2_timeToSleep 0.5f - -/// A body cannot sleep if its linear velocity is above this tolerance. -#define b2_linearSleepTolerance 0.01f - -/// A body cannot sleep if its angular velocity is above this tolerance. -#define b2_angularSleepTolerance (2.0f / 180.0f * b2_pi) - -// Memory Allocation - -/// Implement this function to use your own memory allocator. -void* b2Alloc(int32 size); - -/// If you implement b2Alloc, you should also implement this function. -void b2Free(void* mem); - -/// Logging function. -void b2Log(const char* string, ...); - -/// Version numbering scheme. -/// See http://en.wikipedia.org/wiki/Software_versioning -struct b2Version -{ - int32 major; ///< significant changes - int32 minor; ///< incremental changes - int32 revision; ///< bug fixes -}; - -/// Current version. -extern b2Version b2_version; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2StackAllocator.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2StackAllocator.cpp deleted file mode 100644 index 4a86283..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2StackAllocator.cpp +++ /dev/null @@ -1,83 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include -#include - -b2StackAllocator::b2StackAllocator() -{ - m_index = 0; - m_allocation = 0; - m_maxAllocation = 0; - m_entryCount = 0; -} - -b2StackAllocator::~b2StackAllocator() -{ - b2Assert(m_index == 0); - b2Assert(m_entryCount == 0); -} - -void* b2StackAllocator::Allocate(int32 size) -{ - b2Assert(m_entryCount < b2_maxStackEntries); - - b2StackEntry* entry = m_entries + m_entryCount; - entry->size = size; - if (m_index + size > b2_stackSize) - { - entry->data = (char*)b2Alloc(size); - entry->usedMalloc = true; - } - else - { - entry->data = m_data + m_index; - entry->usedMalloc = false; - m_index += size; - } - - m_allocation += size; - m_maxAllocation = b2Max(m_maxAllocation, m_allocation); - ++m_entryCount; - - return entry->data; -} - -void b2StackAllocator::Free(void* p) -{ - b2Assert(m_entryCount > 0); - b2StackEntry* entry = m_entries + m_entryCount - 1; - b2Assert(p == entry->data); - if (entry->usedMalloc) - { - b2Free(p); - } - else - { - m_index -= entry->size; - } - m_allocation -= entry->size; - --m_entryCount; - - p = NULL; -} - -int32 b2StackAllocator::GetMaxAllocation() const -{ - return m_maxAllocation; -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2StackAllocator.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2StackAllocator.h deleted file mode 100644 index 796c51d..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2StackAllocator.h +++ /dev/null @@ -1,60 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_STACK_ALLOCATOR_H -#define B2_STACK_ALLOCATOR_H - -#include - -const int32 b2_stackSize = 100 * 1024; // 100k -const int32 b2_maxStackEntries = 32; - -struct b2StackEntry -{ - char* data; - int32 size; - bool usedMalloc; -}; - -// This is a stack allocator used for fast per step allocations. -// You must nest allocate/free pairs. The code will assert -// if you try to interleave multiple allocate/free pairs. -class b2StackAllocator -{ -public: - b2StackAllocator(); - ~b2StackAllocator(); - - void* Allocate(int32 size); - void Free(void* p); - - int32 GetMaxAllocation() const; - -private: - - char m_data[b2_stackSize]; - int32 m_index; - - int32 m_allocation; - int32 m_maxAllocation; - - b2StackEntry m_entries[b2_maxStackEntries]; - int32 m_entryCount; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Timer.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Timer.cpp deleted file mode 100644 index 44dc5ce..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Timer.cpp +++ /dev/null @@ -1,101 +0,0 @@ -/* -* Copyright (c) 2011 Erin Catto http://box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include - -#if defined(_WIN32) - -float64 b2Timer::s_invFrequency = 0.0f; - -#define WIN32_LEAN_AND_MEAN -#include - -b2Timer::b2Timer() -{ - LARGE_INTEGER largeInteger; - - if (s_invFrequency == 0.0f) - { - QueryPerformanceFrequency(&largeInteger); - s_invFrequency = float64(largeInteger.QuadPart); - if (s_invFrequency > 0.0f) - { - s_invFrequency = 1000.0f / s_invFrequency; - } - } - - QueryPerformanceCounter(&largeInteger); - m_start = float64(largeInteger.QuadPart); -} - -void b2Timer::Reset() -{ - LARGE_INTEGER largeInteger; - QueryPerformanceCounter(&largeInteger); - m_start = float64(largeInteger.QuadPart); -} - -float32 b2Timer::GetMilliseconds() const -{ - LARGE_INTEGER largeInteger; - QueryPerformanceCounter(&largeInteger); - float64 count = float64(largeInteger.QuadPart); - float32 ms = float32(s_invFrequency * (count - m_start)); - return ms; -} - -#elif defined(__linux__) || defined (__APPLE__) - -#include - -b2Timer::b2Timer() -{ - Reset(); -} - -void b2Timer::Reset() -{ - timeval t; - gettimeofday(&t, 0); - m_start_sec = t.tv_sec; - m_start_usec = t.tv_usec; -} - -float32 b2Timer::GetMilliseconds() const -{ - timeval t; - gettimeofday(&t, 0); - return 1000.0f * (t.tv_sec - m_start_sec) + 0.001f * (t.tv_usec - m_start_usec); -} - -#else - -b2Timer::b2Timer() -{ -} - -void b2Timer::Reset() -{ -} - -float32 b2Timer::GetMilliseconds() const -{ - return 0.0f; -} - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Timer.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Timer.h deleted file mode 100644 index 823404f..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Timer.h +++ /dev/null @@ -1,50 +0,0 @@ -/* -* Copyright (c) 2011 Erin Catto http://box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_TIMER_H -#define B2_TIMER_H - -#include - -/// Timer for profiling. This has platform specific code and may -/// not work on every platform. -class b2Timer -{ -public: - - /// Constructor - b2Timer(); - - /// Reset the timer. - void Reset(); - - /// Get the time since construction or the last reset. - float32 GetMilliseconds() const; - -private: - -#if defined(_WIN32) - float64 m_start; - static float64 s_invFrequency; -#elif defined(__linux__) || defined (__APPLE__) - unsigned long m_start_sec; - unsigned long m_start_usec; -#endif -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2ChainAndCircleContact.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2ChainAndCircleContact.cpp deleted file mode 100644 index 5e2f0f0..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2ChainAndCircleContact.cpp +++ /dev/null @@ -1,53 +0,0 @@ -/* -* Copyright (c) 2006-2010 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include -#include -#include -#include -#include - -#include - -b2Contact* b2ChainAndCircleContact::Create(b2Fixture* fixtureA, int32 indexA, b2Fixture* fixtureB, int32 indexB, b2BlockAllocator* allocator) -{ - void* mem = allocator->Allocate(sizeof(b2ChainAndCircleContact)); - return new (mem) b2ChainAndCircleContact(fixtureA, indexA, fixtureB, indexB); -} - -void b2ChainAndCircleContact::Destroy(b2Contact* contact, b2BlockAllocator* allocator) -{ - ((b2ChainAndCircleContact*)contact)->~b2ChainAndCircleContact(); - allocator->Free(contact, sizeof(b2ChainAndCircleContact)); -} - -b2ChainAndCircleContact::b2ChainAndCircleContact(b2Fixture* fixtureA, int32 indexA, b2Fixture* fixtureB, int32 indexB) -: b2Contact(fixtureA, indexA, fixtureB, indexB) -{ - b2Assert(m_fixtureA->GetType() == b2Shape::e_chain); - b2Assert(m_fixtureB->GetType() == b2Shape::e_circle); -} - -void b2ChainAndCircleContact::Evaluate(b2Manifold* manifold, const b2Transform& xfA, const b2Transform& xfB) -{ - b2ChainShape* chain = (b2ChainShape*)m_fixtureA->GetShape(); - b2EdgeShape edge; - chain->GetChildEdge(&edge, m_indexA); - b2CollideEdgeAndCircle( manifold, &edge, xfA, - (b2CircleShape*)m_fixtureB->GetShape(), xfB); -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2ChainAndCircleContact.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2ChainAndCircleContact.h deleted file mode 100644 index 2dad0b6..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2ChainAndCircleContact.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_CHAIN_AND_CIRCLE_CONTACT_H -#define B2_CHAIN_AND_CIRCLE_CONTACT_H - -#include - -class b2BlockAllocator; - -class b2ChainAndCircleContact : public b2Contact -{ -public: - static b2Contact* Create( b2Fixture* fixtureA, int32 indexA, - b2Fixture* fixtureB, int32 indexB, b2BlockAllocator* allocator); - static void Destroy(b2Contact* contact, b2BlockAllocator* allocator); - - b2ChainAndCircleContact(b2Fixture* fixtureA, int32 indexA, b2Fixture* fixtureB, int32 indexB); - ~b2ChainAndCircleContact() {} - - void Evaluate(b2Manifold* manifold, const b2Transform& xfA, const b2Transform& xfB); -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2ChainAndPolygonContact.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2ChainAndPolygonContact.cpp deleted file mode 100644 index a4a99b8..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2ChainAndPolygonContact.cpp +++ /dev/null @@ -1,53 +0,0 @@ -/* -* Copyright (c) 2006-2010 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include -#include -#include -#include -#include - -#include - -b2Contact* b2ChainAndPolygonContact::Create(b2Fixture* fixtureA, int32 indexA, b2Fixture* fixtureB, int32 indexB, b2BlockAllocator* allocator) -{ - void* mem = allocator->Allocate(sizeof(b2ChainAndPolygonContact)); - return new (mem) b2ChainAndPolygonContact(fixtureA, indexA, fixtureB, indexB); -} - -void b2ChainAndPolygonContact::Destroy(b2Contact* contact, b2BlockAllocator* allocator) -{ - ((b2ChainAndPolygonContact*)contact)->~b2ChainAndPolygonContact(); - allocator->Free(contact, sizeof(b2ChainAndPolygonContact)); -} - -b2ChainAndPolygonContact::b2ChainAndPolygonContact(b2Fixture* fixtureA, int32 indexA, b2Fixture* fixtureB, int32 indexB) -: b2Contact(fixtureA, indexA, fixtureB, indexB) -{ - b2Assert(m_fixtureA->GetType() == b2Shape::e_chain); - b2Assert(m_fixtureB->GetType() == b2Shape::e_polygon); -} - -void b2ChainAndPolygonContact::Evaluate(b2Manifold* manifold, const b2Transform& xfA, const b2Transform& xfB) -{ - b2ChainShape* chain = (b2ChainShape*)m_fixtureA->GetShape(); - b2EdgeShape edge; - chain->GetChildEdge(&edge, m_indexA); - b2CollideEdgeAndPolygon( manifold, &edge, xfA, - (b2PolygonShape*)m_fixtureB->GetShape(), xfB); -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2ChainAndPolygonContact.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2ChainAndPolygonContact.h deleted file mode 100644 index 8f30ee8..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2ChainAndPolygonContact.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_CHAIN_AND_POLYGON_CONTACT_H -#define B2_CHAIN_AND_POLYGON_CONTACT_H - -#include - -class b2BlockAllocator; - -class b2ChainAndPolygonContact : public b2Contact -{ -public: - static b2Contact* Create( b2Fixture* fixtureA, int32 indexA, - b2Fixture* fixtureB, int32 indexB, b2BlockAllocator* allocator); - static void Destroy(b2Contact* contact, b2BlockAllocator* allocator); - - b2ChainAndPolygonContact(b2Fixture* fixtureA, int32 indexA, b2Fixture* fixtureB, int32 indexB); - ~b2ChainAndPolygonContact() {} - - void Evaluate(b2Manifold* manifold, const b2Transform& xfA, const b2Transform& xfB); -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2CircleContact.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2CircleContact.cpp deleted file mode 100644 index 23b98a9..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2CircleContact.cpp +++ /dev/null @@ -1,52 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include -#include -#include -#include -#include -#include - -#include - -b2Contact* b2CircleContact::Create(b2Fixture* fixtureA, int32, b2Fixture* fixtureB, int32, b2BlockAllocator* allocator) -{ - void* mem = allocator->Allocate(sizeof(b2CircleContact)); - return new (mem) b2CircleContact(fixtureA, fixtureB); -} - -void b2CircleContact::Destroy(b2Contact* contact, b2BlockAllocator* allocator) -{ - ((b2CircleContact*)contact)->~b2CircleContact(); - allocator->Free(contact, sizeof(b2CircleContact)); -} - -b2CircleContact::b2CircleContact(b2Fixture* fixtureA, b2Fixture* fixtureB) - : b2Contact(fixtureA, 0, fixtureB, 0) -{ - b2Assert(m_fixtureA->GetType() == b2Shape::e_circle); - b2Assert(m_fixtureB->GetType() == b2Shape::e_circle); -} - -void b2CircleContact::Evaluate(b2Manifold* manifold, const b2Transform& xfA, const b2Transform& xfB) -{ - b2CollideCircles(manifold, - (b2CircleShape*)m_fixtureA->GetShape(), xfA, - (b2CircleShape*)m_fixtureB->GetShape(), xfB); -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2CircleContact.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2CircleContact.h deleted file mode 100644 index aac1f0b..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2CircleContact.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_CIRCLE_CONTACT_H -#define B2_CIRCLE_CONTACT_H - -#include - -class b2BlockAllocator; - -class b2CircleContact : public b2Contact -{ -public: - static b2Contact* Create( b2Fixture* fixtureA, int32 indexA, - b2Fixture* fixtureB, int32 indexB, b2BlockAllocator* allocator); - static void Destroy(b2Contact* contact, b2BlockAllocator* allocator); - - b2CircleContact(b2Fixture* fixtureA, b2Fixture* fixtureB); - ~b2CircleContact() {} - - void Evaluate(b2Manifold* manifold, const b2Transform& xfA, const b2Transform& xfB); -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2Contact.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2Contact.cpp deleted file mode 100644 index 8d0104e..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2Contact.cpp +++ /dev/null @@ -1,247 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include -#include -#include -#include -#include - -b2ContactRegister b2Contact::s_registers[b2Shape::e_typeCount][b2Shape::e_typeCount]; -bool b2Contact::s_initialized = false; - -void b2Contact::InitializeRegisters() -{ - AddType(b2CircleContact::Create, b2CircleContact::Destroy, b2Shape::e_circle, b2Shape::e_circle); - AddType(b2PolygonAndCircleContact::Create, b2PolygonAndCircleContact::Destroy, b2Shape::e_polygon, b2Shape::e_circle); - AddType(b2PolygonContact::Create, b2PolygonContact::Destroy, b2Shape::e_polygon, b2Shape::e_polygon); - AddType(b2EdgeAndCircleContact::Create, b2EdgeAndCircleContact::Destroy, b2Shape::e_edge, b2Shape::e_circle); - AddType(b2EdgeAndPolygonContact::Create, b2EdgeAndPolygonContact::Destroy, b2Shape::e_edge, b2Shape::e_polygon); - AddType(b2ChainAndCircleContact::Create, b2ChainAndCircleContact::Destroy, b2Shape::e_chain, b2Shape::e_circle); - AddType(b2ChainAndPolygonContact::Create, b2ChainAndPolygonContact::Destroy, b2Shape::e_chain, b2Shape::e_polygon); -} - -void b2Contact::AddType(b2ContactCreateFcn* createFcn, b2ContactDestroyFcn* destoryFcn, - b2Shape::Type type1, b2Shape::Type type2) -{ - b2Assert(0 <= type1 && type1 < b2Shape::e_typeCount); - b2Assert(0 <= type2 && type2 < b2Shape::e_typeCount); - - s_registers[type1][type2].createFcn = createFcn; - s_registers[type1][type2].destroyFcn = destoryFcn; - s_registers[type1][type2].primary = true; - - if (type1 != type2) - { - s_registers[type2][type1].createFcn = createFcn; - s_registers[type2][type1].destroyFcn = destoryFcn; - s_registers[type2][type1].primary = false; - } -} - -b2Contact* b2Contact::Create(b2Fixture* fixtureA, int32 indexA, b2Fixture* fixtureB, int32 indexB, b2BlockAllocator* allocator) -{ - if (s_initialized == false) - { - InitializeRegisters(); - s_initialized = true; - } - - b2Shape::Type type1 = fixtureA->GetType(); - b2Shape::Type type2 = fixtureB->GetType(); - - b2Assert(0 <= type1 && type1 < b2Shape::e_typeCount); - b2Assert(0 <= type2 && type2 < b2Shape::e_typeCount); - - b2ContactCreateFcn* createFcn = s_registers[type1][type2].createFcn; - if (createFcn) - { - if (s_registers[type1][type2].primary) - { - return createFcn(fixtureA, indexA, fixtureB, indexB, allocator); - } - else - { - return createFcn(fixtureB, indexB, fixtureA, indexA, allocator); - } - } - else - { - return NULL; - } -} - -void b2Contact::Destroy(b2Contact* contact, b2BlockAllocator* allocator) -{ - b2Assert(s_initialized == true); - - b2Fixture* fixtureA = contact->m_fixtureA; - b2Fixture* fixtureB = contact->m_fixtureB; - - if (contact->m_manifold.pointCount > 0 && - fixtureA->IsSensor() == false && - fixtureB->IsSensor() == false) - { - fixtureA->GetBody()->SetAwake(true); - fixtureB->GetBody()->SetAwake(true); - } - - b2Shape::Type typeA = fixtureA->GetType(); - b2Shape::Type typeB = fixtureB->GetType(); - - b2Assert(0 <= typeA && typeB < b2Shape::e_typeCount); - b2Assert(0 <= typeA && typeB < b2Shape::e_typeCount); - - b2ContactDestroyFcn* destroyFcn = s_registers[typeA][typeB].destroyFcn; - destroyFcn(contact, allocator); -} - -b2Contact::b2Contact(b2Fixture* fA, int32 indexA, b2Fixture* fB, int32 indexB) -{ - m_flags = e_enabledFlag; - - m_fixtureA = fA; - m_fixtureB = fB; - - m_indexA = indexA; - m_indexB = indexB; - - m_manifold.pointCount = 0; - - m_prev = NULL; - m_next = NULL; - - m_nodeA.contact = NULL; - m_nodeA.prev = NULL; - m_nodeA.next = NULL; - m_nodeA.other = NULL; - - m_nodeB.contact = NULL; - m_nodeB.prev = NULL; - m_nodeB.next = NULL; - m_nodeB.other = NULL; - - m_toiCount = 0; - - m_friction = b2MixFriction(m_fixtureA->m_friction, m_fixtureB->m_friction); - m_restitution = b2MixRestitution(m_fixtureA->m_restitution, m_fixtureB->m_restitution); - - m_tangentSpeed = 0.0f; -} - -// Update the contact manifold and touching status. -// Note: do not assume the fixture AABBs are overlapping or are valid. -void b2Contact::Update(b2ContactListener* listener) -{ - b2Manifold oldManifold = m_manifold; - - // Re-enable this contact. - m_flags |= e_enabledFlag; - - bool touching = false; - bool wasTouching = (m_flags & e_touchingFlag) == e_touchingFlag; - - bool sensorA = m_fixtureA->IsSensor(); - bool sensorB = m_fixtureB->IsSensor(); - bool sensor = sensorA || sensorB; - - b2Body* bodyA = m_fixtureA->GetBody(); - b2Body* bodyB = m_fixtureB->GetBody(); - const b2Transform& xfA = bodyA->GetTransform(); - const b2Transform& xfB = bodyB->GetTransform(); - - // Is this contact a sensor? - if (sensor) - { - const b2Shape* shapeA = m_fixtureA->GetShape(); - const b2Shape* shapeB = m_fixtureB->GetShape(); - touching = b2TestOverlap(shapeA, m_indexA, shapeB, m_indexB, xfA, xfB); - - // Sensors don't generate manifolds. - m_manifold.pointCount = 0; - } - else - { - Evaluate(&m_manifold, xfA, xfB); - touching = m_manifold.pointCount > 0; - - // Match old contact ids to new contact ids and copy the - // stored impulses to warm start the solver. - for (int32 i = 0; i < m_manifold.pointCount; ++i) - { - b2ManifoldPoint* mp2 = m_manifold.points + i; - mp2->normalImpulse = 0.0f; - mp2->tangentImpulse = 0.0f; - b2ContactID id2 = mp2->id; - - for (int32 j = 0; j < oldManifold.pointCount; ++j) - { - b2ManifoldPoint* mp1 = oldManifold.points + j; - - if (mp1->id.key == id2.key) - { - mp2->normalImpulse = mp1->normalImpulse; - mp2->tangentImpulse = mp1->tangentImpulse; - break; - } - } - } - - if (touching != wasTouching) - { - bodyA->SetAwake(true); - bodyB->SetAwake(true); - } - } - - if (touching) - { - m_flags |= e_touchingFlag; - } - else - { - m_flags &= ~e_touchingFlag; - } - - if (wasTouching == false && touching == true && listener) - { - listener->BeginContact(this); - } - - if (wasTouching == true && touching == false && listener) - { - listener->EndContact(this); - } - - if (sensor == false && touching && listener) - { - listener->PreSolve(this, &oldManifold); - } -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2Contact.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2Contact.h deleted file mode 100644 index 347da31..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2Contact.h +++ /dev/null @@ -1,349 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_CONTACT_H -#define B2_CONTACT_H - -#include -#include -#include -#include - -class b2Body; -class b2Contact; -class b2Fixture; -class b2World; -class b2BlockAllocator; -class b2StackAllocator; -class b2ContactListener; - -/// Friction mixing law. The idea is to allow either fixture to drive the restitution to zero. -/// For example, anything slides on ice. -inline float32 b2MixFriction(float32 friction1, float32 friction2) -{ - return b2Sqrt(friction1 * friction2); -} - -/// Restitution mixing law. The idea is allow for anything to bounce off an inelastic surface. -/// For example, a superball bounces on anything. -inline float32 b2MixRestitution(float32 restitution1, float32 restitution2) -{ - return restitution1 > restitution2 ? restitution1 : restitution2; -} - -typedef b2Contact* b2ContactCreateFcn( b2Fixture* fixtureA, int32 indexA, - b2Fixture* fixtureB, int32 indexB, - b2BlockAllocator* allocator); -typedef void b2ContactDestroyFcn(b2Contact* contact, b2BlockAllocator* allocator); - -struct b2ContactRegister -{ - b2ContactCreateFcn* createFcn; - b2ContactDestroyFcn* destroyFcn; - bool primary; -}; - -/// A contact edge is used to connect bodies and contacts together -/// in a contact graph where each body is a node and each contact -/// is an edge. A contact edge belongs to a doubly linked list -/// maintained in each attached body. Each contact has two contact -/// nodes, one for each attached body. -struct b2ContactEdge -{ - b2Body* other; ///< provides quick access to the other body attached. - b2Contact* contact; ///< the contact - b2ContactEdge* prev; ///< the previous contact edge in the body's contact list - b2ContactEdge* next; ///< the next contact edge in the body's contact list -}; - -/// The class manages contact between two shapes. A contact exists for each overlapping -/// AABB in the broad-phase (except if filtered). Therefore a contact object may exist -/// that has no contact points. -class b2Contact -{ -public: - - /// Get the contact manifold. Do not modify the manifold unless you understand the - /// internals of Box2D. - b2Manifold* GetManifold(); - const b2Manifold* GetManifold() const; - - /// Get the world manifold. - void GetWorldManifold(b2WorldManifold* worldManifold) const; - - /// Is this contact touching? - bool IsTouching() const; - - /// Enable/disable this contact. This can be used inside the pre-solve - /// contact listener. The contact is only disabled for the current - /// time step (or sub-step in continuous collisions). - void SetEnabled(bool flag); - - /// Has this contact been disabled? - bool IsEnabled() const; - - /// Get the next contact in the world's contact list. - b2Contact* GetNext(); - const b2Contact* GetNext() const; - - /// Get fixture A in this contact. - b2Fixture* GetFixtureA(); - const b2Fixture* GetFixtureA() const; - - /// Get the child primitive index for fixture A. - int32 GetChildIndexA() const; - - /// Get fixture B in this contact. - b2Fixture* GetFixtureB(); - const b2Fixture* GetFixtureB() const; - - /// Get the child primitive index for fixture B. - int32 GetChildIndexB() const; - - /// Override the default friction mixture. You can call this in b2ContactListener::PreSolve. - /// This value persists until set or reset. - void SetFriction(float32 friction); - - /// Get the friction. - float32 GetFriction() const; - - /// Reset the friction mixture to the default value. - void ResetFriction(); - - /// Override the default restitution mixture. You can call this in b2ContactListener::PreSolve. - /// The value persists until you set or reset. - void SetRestitution(float32 restitution); - - /// Get the restitution. - float32 GetRestitution() const; - - /// Reset the restitution to the default value. - void ResetRestitution(); - - /// Set the desired tangent speed for a conveyor belt behavior. In meters per second. - void SetTangentSpeed(float32 speed); - - /// Get the desired tangent speed. In meters per second. - float32 GetTangentSpeed() const; - - /// Evaluate this contact with your own manifold and transforms. - virtual void Evaluate(b2Manifold* manifold, const b2Transform& xfA, const b2Transform& xfB) = 0; - -protected: - friend class b2ContactManager; - friend class b2World; - friend class b2ContactSolver; - friend class b2Body; - friend class b2Fixture; - - // Flags stored in m_flags - enum - { - // Used when crawling contact graph when forming islands. - e_islandFlag = 0x0001, - - // Set when the shapes are touching. - e_touchingFlag = 0x0002, - - // This contact can be disabled (by user) - e_enabledFlag = 0x0004, - - // This contact needs filtering because a fixture filter was changed. - e_filterFlag = 0x0008, - - // This bullet contact had a TOI event - e_bulletHitFlag = 0x0010, - - // This contact has a valid TOI in m_toi - e_toiFlag = 0x0020 - }; - - /// Flag this contact for filtering. Filtering will occur the next time step. - void FlagForFiltering(); - - static void AddType(b2ContactCreateFcn* createFcn, b2ContactDestroyFcn* destroyFcn, - b2Shape::Type typeA, b2Shape::Type typeB); - static void InitializeRegisters(); - static b2Contact* Create(b2Fixture* fixtureA, int32 indexA, b2Fixture* fixtureB, int32 indexB, b2BlockAllocator* allocator); - static void Destroy(b2Contact* contact, b2Shape::Type typeA, b2Shape::Type typeB, b2BlockAllocator* allocator); - static void Destroy(b2Contact* contact, b2BlockAllocator* allocator); - - b2Contact() : m_fixtureA(NULL), m_fixtureB(NULL) {} - b2Contact(b2Fixture* fixtureA, int32 indexA, b2Fixture* fixtureB, int32 indexB); - virtual ~b2Contact() {} - - void Update(b2ContactListener* listener); - - static b2ContactRegister s_registers[b2Shape::e_typeCount][b2Shape::e_typeCount]; - static bool s_initialized; - - uint32 m_flags; - - // World pool and list pointers. - b2Contact* m_prev; - b2Contact* m_next; - - // Nodes for connecting bodies. - b2ContactEdge m_nodeA; - b2ContactEdge m_nodeB; - - b2Fixture* m_fixtureA; - b2Fixture* m_fixtureB; - - int32 m_indexA; - int32 m_indexB; - - b2Manifold m_manifold; - - int32 m_toiCount; - float32 m_toi; - - float32 m_friction; - float32 m_restitution; - - float32 m_tangentSpeed; -}; - -inline b2Manifold* b2Contact::GetManifold() -{ - return &m_manifold; -} - -inline const b2Manifold* b2Contact::GetManifold() const -{ - return &m_manifold; -} - -inline void b2Contact::GetWorldManifold(b2WorldManifold* worldManifold) const -{ - const b2Body* bodyA = m_fixtureA->GetBody(); - const b2Body* bodyB = m_fixtureB->GetBody(); - const b2Shape* shapeA = m_fixtureA->GetShape(); - const b2Shape* shapeB = m_fixtureB->GetShape(); - - worldManifold->Initialize(&m_manifold, bodyA->GetTransform(), shapeA->m_radius, bodyB->GetTransform(), shapeB->m_radius); -} - -inline void b2Contact::SetEnabled(bool flag) -{ - if (flag) - { - m_flags |= e_enabledFlag; - } - else - { - m_flags &= ~e_enabledFlag; - } -} - -inline bool b2Contact::IsEnabled() const -{ - return (m_flags & e_enabledFlag) == e_enabledFlag; -} - -inline bool b2Contact::IsTouching() const -{ - return (m_flags & e_touchingFlag) == e_touchingFlag; -} - -inline b2Contact* b2Contact::GetNext() -{ - return m_next; -} - -inline const b2Contact* b2Contact::GetNext() const -{ - return m_next; -} - -inline b2Fixture* b2Contact::GetFixtureA() -{ - return m_fixtureA; -} - -inline const b2Fixture* b2Contact::GetFixtureA() const -{ - return m_fixtureA; -} - -inline b2Fixture* b2Contact::GetFixtureB() -{ - return m_fixtureB; -} - -inline int32 b2Contact::GetChildIndexA() const -{ - return m_indexA; -} - -inline const b2Fixture* b2Contact::GetFixtureB() const -{ - return m_fixtureB; -} - -inline int32 b2Contact::GetChildIndexB() const -{ - return m_indexB; -} - -inline void b2Contact::FlagForFiltering() -{ - m_flags |= e_filterFlag; -} - -inline void b2Contact::SetFriction(float32 friction) -{ - m_friction = friction; -} - -inline float32 b2Contact::GetFriction() const -{ - return m_friction; -} - -inline void b2Contact::ResetFriction() -{ - m_friction = b2MixFriction(m_fixtureA->m_friction, m_fixtureB->m_friction); -} - -inline void b2Contact::SetRestitution(float32 restitution) -{ - m_restitution = restitution; -} - -inline float32 b2Contact::GetRestitution() const -{ - return m_restitution; -} - -inline void b2Contact::ResetRestitution() -{ - m_restitution = b2MixRestitution(m_fixtureA->m_restitution, m_fixtureB->m_restitution); -} - -inline void b2Contact::SetTangentSpeed(float32 speed) -{ - m_tangentSpeed = speed; -} - -inline float32 b2Contact::GetTangentSpeed() const -{ - return m_tangentSpeed; -} - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2ContactSolver.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2ContactSolver.cpp deleted file mode 100644 index 516b725..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2ContactSolver.cpp +++ /dev/null @@ -1,833 +0,0 @@ -/* -* Copyright (c) 2006-2011 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include - -#include -#include -#include -#include -#include - -#define B2_DEBUG_SOLVER 0 - -struct b2ContactPositionConstraint -{ - b2Vec2 localPoints[b2_maxManifoldPoints]; - b2Vec2 localNormal; - b2Vec2 localPoint; - int32 indexA; - int32 indexB; - float32 invMassA, invMassB; - b2Vec2 localCenterA, localCenterB; - float32 invIA, invIB; - b2Manifold::Type type; - float32 radiusA, radiusB; - int32 pointCount; -}; - -b2ContactSolver::b2ContactSolver(b2ContactSolverDef* def) -{ - m_step = def->step; - m_allocator = def->allocator; - m_count = def->count; - m_positionConstraints = (b2ContactPositionConstraint*)m_allocator->Allocate(m_count * sizeof(b2ContactPositionConstraint)); - m_velocityConstraints = (b2ContactVelocityConstraint*)m_allocator->Allocate(m_count * sizeof(b2ContactVelocityConstraint)); - m_positions = def->positions; - m_velocities = def->velocities; - m_contacts = def->contacts; - - // Initialize position independent portions of the constraints. - for (int32 i = 0; i < m_count; ++i) - { - b2Contact* contact = m_contacts[i]; - - b2Fixture* fixtureA = contact->m_fixtureA; - b2Fixture* fixtureB = contact->m_fixtureB; - b2Shape* shapeA = fixtureA->GetShape(); - b2Shape* shapeB = fixtureB->GetShape(); - float32 radiusA = shapeA->m_radius; - float32 radiusB = shapeB->m_radius; - b2Body* bodyA = fixtureA->GetBody(); - b2Body* bodyB = fixtureB->GetBody(); - b2Manifold* manifold = contact->GetManifold(); - - int32 pointCount = manifold->pointCount; - b2Assert(pointCount > 0); - - b2ContactVelocityConstraint* vc = m_velocityConstraints + i; - vc->friction = contact->m_friction; - vc->restitution = contact->m_restitution; - vc->tangentSpeed = contact->m_tangentSpeed; - vc->indexA = bodyA->m_islandIndex; - vc->indexB = bodyB->m_islandIndex; - vc->invMassA = bodyA->m_invMass; - vc->invMassB = bodyB->m_invMass; - vc->invIA = bodyA->m_invI; - vc->invIB = bodyB->m_invI; - vc->contactIndex = i; - vc->pointCount = pointCount; - vc->K.SetZero(); - vc->normalMass.SetZero(); - - b2ContactPositionConstraint* pc = m_positionConstraints + i; - pc->indexA = bodyA->m_islandIndex; - pc->indexB = bodyB->m_islandIndex; - pc->invMassA = bodyA->m_invMass; - pc->invMassB = bodyB->m_invMass; - pc->localCenterA = bodyA->m_sweep.localCenter; - pc->localCenterB = bodyB->m_sweep.localCenter; - pc->invIA = bodyA->m_invI; - pc->invIB = bodyB->m_invI; - pc->localNormal = manifold->localNormal; - pc->localPoint = manifold->localPoint; - pc->pointCount = pointCount; - pc->radiusA = radiusA; - pc->radiusB = radiusB; - pc->type = manifold->type; - - for (int32 j = 0; j < pointCount; ++j) - { - b2ManifoldPoint* cp = manifold->points + j; - b2VelocityConstraintPoint* vcp = vc->points + j; - - if (m_step.warmStarting) - { - vcp->normalImpulse = m_step.dtRatio * cp->normalImpulse; - vcp->tangentImpulse = m_step.dtRatio * cp->tangentImpulse; - } - else - { - vcp->normalImpulse = 0.0f; - vcp->tangentImpulse = 0.0f; - } - - vcp->rA.SetZero(); - vcp->rB.SetZero(); - vcp->normalMass = 0.0f; - vcp->tangentMass = 0.0f; - vcp->velocityBias = 0.0f; - - pc->localPoints[j] = cp->localPoint; - } - } -} - -b2ContactSolver::~b2ContactSolver() -{ - m_allocator->Free(m_velocityConstraints); - m_allocator->Free(m_positionConstraints); -} - -// Initialize position dependent portions of the velocity constraints. -void b2ContactSolver::InitializeVelocityConstraints() -{ - for (int32 i = 0; i < m_count; ++i) - { - b2ContactVelocityConstraint* vc = m_velocityConstraints + i; - b2ContactPositionConstraint* pc = m_positionConstraints + i; - - float32 radiusA = pc->radiusA; - float32 radiusB = pc->radiusB; - b2Manifold* manifold = m_contacts[vc->contactIndex]->GetManifold(); - - int32 indexA = vc->indexA; - int32 indexB = vc->indexB; - - float32 mA = vc->invMassA; - float32 mB = vc->invMassB; - float32 iA = vc->invIA; - float32 iB = vc->invIB; - b2Vec2 localCenterA = pc->localCenterA; - b2Vec2 localCenterB = pc->localCenterB; - - b2Vec2 cA = m_positions[indexA].c; - float32 aA = m_positions[indexA].a; - b2Vec2 vA = m_velocities[indexA].v; - float32 wA = m_velocities[indexA].w; - - b2Vec2 cB = m_positions[indexB].c; - float32 aB = m_positions[indexB].a; - b2Vec2 vB = m_velocities[indexB].v; - float32 wB = m_velocities[indexB].w; - - b2Assert(manifold->pointCount > 0); - - b2Transform xfA, xfB; - xfA.q.Set(aA); - xfB.q.Set(aB); - xfA.p = cA - b2Mul(xfA.q, localCenterA); - xfB.p = cB - b2Mul(xfB.q, localCenterB); - - b2WorldManifold worldManifold; - worldManifold.Initialize(manifold, xfA, radiusA, xfB, radiusB); - - vc->normal = worldManifold.normal; - - int32 pointCount = vc->pointCount; - for (int32 j = 0; j < pointCount; ++j) - { - b2VelocityConstraintPoint* vcp = vc->points + j; - - vcp->rA = worldManifold.points[j] - cA; - vcp->rB = worldManifold.points[j] - cB; - - float32 rnA = b2Cross(vcp->rA, vc->normal); - float32 rnB = b2Cross(vcp->rB, vc->normal); - - float32 kNormal = mA + mB + iA * rnA * rnA + iB * rnB * rnB; - - vcp->normalMass = kNormal > 0.0f ? 1.0f / kNormal : 0.0f; - - b2Vec2 tangent = b2Cross(vc->normal, 1.0f); - - float32 rtA = b2Cross(vcp->rA, tangent); - float32 rtB = b2Cross(vcp->rB, tangent); - - float32 kTangent = mA + mB + iA * rtA * rtA + iB * rtB * rtB; - - vcp->tangentMass = kTangent > 0.0f ? 1.0f / kTangent : 0.0f; - - // Setup a velocity bias for restitution. - vcp->velocityBias = 0.0f; - float32 vRel = b2Dot(vc->normal, vB + b2Cross(wB, vcp->rB) - vA - b2Cross(wA, vcp->rA)); - if (vRel < -b2_velocityThreshold) - { - vcp->velocityBias = -vc->restitution * vRel; - } - } - - // If we have two points, then prepare the block solver. - if (vc->pointCount == 2) - { - b2VelocityConstraintPoint* vcp1 = vc->points + 0; - b2VelocityConstraintPoint* vcp2 = vc->points + 1; - - float32 rn1A = b2Cross(vcp1->rA, vc->normal); - float32 rn1B = b2Cross(vcp1->rB, vc->normal); - float32 rn2A = b2Cross(vcp2->rA, vc->normal); - float32 rn2B = b2Cross(vcp2->rB, vc->normal); - - float32 k11 = mA + mB + iA * rn1A * rn1A + iB * rn1B * rn1B; - float32 k22 = mA + mB + iA * rn2A * rn2A + iB * rn2B * rn2B; - float32 k12 = mA + mB + iA * rn1A * rn2A + iB * rn1B * rn2B; - - // Ensure a reasonable condition number. - const float32 k_maxConditionNumber = 1000.0f; - if (k11 * k11 < k_maxConditionNumber * (k11 * k22 - k12 * k12)) - { - // K is safe to invert. - vc->K.ex.Set(k11, k12); - vc->K.ey.Set(k12, k22); - vc->normalMass = vc->K.GetInverse(); - } - else - { - // The constraints are redundant, just use one. - // TODO_ERIN use deepest? - vc->pointCount = 1; - } - } - } -} - -void b2ContactSolver::WarmStart() -{ - // Warm start. - for (int32 i = 0; i < m_count; ++i) - { - b2ContactVelocityConstraint* vc = m_velocityConstraints + i; - - int32 indexA = vc->indexA; - int32 indexB = vc->indexB; - float32 mA = vc->invMassA; - float32 iA = vc->invIA; - float32 mB = vc->invMassB; - float32 iB = vc->invIB; - int32 pointCount = vc->pointCount; - - b2Vec2 vA = m_velocities[indexA].v; - float32 wA = m_velocities[indexA].w; - b2Vec2 vB = m_velocities[indexB].v; - float32 wB = m_velocities[indexB].w; - - b2Vec2 normal = vc->normal; - b2Vec2 tangent = b2Cross(normal, 1.0f); - - for (int32 j = 0; j < pointCount; ++j) - { - b2VelocityConstraintPoint* vcp = vc->points + j; - b2Vec2 P = vcp->normalImpulse * normal + vcp->tangentImpulse * tangent; - wA -= iA * b2Cross(vcp->rA, P); - vA -= mA * P; - wB += iB * b2Cross(vcp->rB, P); - vB += mB * P; - } - - m_velocities[indexA].v = vA; - m_velocities[indexA].w = wA; - m_velocities[indexB].v = vB; - m_velocities[indexB].w = wB; - } -} - -void b2ContactSolver::SolveVelocityConstraints() -{ - for (int32 i = 0; i < m_count; ++i) - { - b2ContactVelocityConstraint* vc = m_velocityConstraints + i; - - int32 indexA = vc->indexA; - int32 indexB = vc->indexB; - float32 mA = vc->invMassA; - float32 iA = vc->invIA; - float32 mB = vc->invMassB; - float32 iB = vc->invIB; - int32 pointCount = vc->pointCount; - - b2Vec2 vA = m_velocities[indexA].v; - float32 wA = m_velocities[indexA].w; - b2Vec2 vB = m_velocities[indexB].v; - float32 wB = m_velocities[indexB].w; - - b2Vec2 normal = vc->normal; - b2Vec2 tangent = b2Cross(normal, 1.0f); - float32 friction = vc->friction; - - b2Assert(pointCount == 1 || pointCount == 2); - - // Solve tangent constraints first because non-penetration is more important - // than friction. - for (int32 j = 0; j < pointCount; ++j) - { - b2VelocityConstraintPoint* vcp = vc->points + j; - - // Relative velocity at contact - b2Vec2 dv = vB + b2Cross(wB, vcp->rB) - vA - b2Cross(wA, vcp->rA); - - // Compute tangent force - float32 vt = b2Dot(dv, tangent) - vc->tangentSpeed; - float32 lambda = vcp->tangentMass * (-vt); - - // b2Clamp the accumulated force - float32 maxFriction = friction * vcp->normalImpulse; - float32 newImpulse = b2Clamp(vcp->tangentImpulse + lambda, -maxFriction, maxFriction); - lambda = newImpulse - vcp->tangentImpulse; - vcp->tangentImpulse = newImpulse; - - // Apply contact impulse - b2Vec2 P = lambda * tangent; - - vA -= mA * P; - wA -= iA * b2Cross(vcp->rA, P); - - vB += mB * P; - wB += iB * b2Cross(vcp->rB, P); - } - - // Solve normal constraints - if (vc->pointCount == 1) - { - b2VelocityConstraintPoint* vcp = vc->points + 0; - - // Relative velocity at contact - b2Vec2 dv = vB + b2Cross(wB, vcp->rB) - vA - b2Cross(wA, vcp->rA); - - // Compute normal impulse - float32 vn = b2Dot(dv, normal); - float32 lambda = -vcp->normalMass * (vn - vcp->velocityBias); - - // b2Clamp the accumulated impulse - float32 newImpulse = b2Max(vcp->normalImpulse + lambda, 0.0f); - lambda = newImpulse - vcp->normalImpulse; - vcp->normalImpulse = newImpulse; - - // Apply contact impulse - b2Vec2 P = lambda * normal; - vA -= mA * P; - wA -= iA * b2Cross(vcp->rA, P); - - vB += mB * P; - wB += iB * b2Cross(vcp->rB, P); - } - else - { - // Block solver developed in collaboration with Dirk Gregorius (back in 01/07 on Box2D_Lite). - // Build the mini LCP for this contact patch - // - // vn = A * x + b, vn >= 0, , vn >= 0, x >= 0 and vn_i * x_i = 0 with i = 1..2 - // - // A = J * W * JT and J = ( -n, -r1 x n, n, r2 x n ) - // b = vn0 - velocityBias - // - // The system is solved using the "Total enumeration method" (s. Murty). The complementary constraint vn_i * x_i - // implies that we must have in any solution either vn_i = 0 or x_i = 0. So for the 2D contact problem the cases - // vn1 = 0 and vn2 = 0, x1 = 0 and x2 = 0, x1 = 0 and vn2 = 0, x2 = 0 and vn1 = 0 need to be tested. The first valid - // solution that satisfies the problem is chosen. - // - // In order to account of the accumulated impulse 'a' (because of the iterative nature of the solver which only requires - // that the accumulated impulse is clamped and not the incremental impulse) we change the impulse variable (x_i). - // - // Substitute: - // - // x = a + d - // - // a := old total impulse - // x := new total impulse - // d := incremental impulse - // - // For the current iteration we extend the formula for the incremental impulse - // to compute the new total impulse: - // - // vn = A * d + b - // = A * (x - a) + b - // = A * x + b - A * a - // = A * x + b' - // b' = b - A * a; - - b2VelocityConstraintPoint* cp1 = vc->points + 0; - b2VelocityConstraintPoint* cp2 = vc->points + 1; - - b2Vec2 a(cp1->normalImpulse, cp2->normalImpulse); - b2Assert(a.x >= 0.0f && a.y >= 0.0f); - - // Relative velocity at contact - b2Vec2 dv1 = vB + b2Cross(wB, cp1->rB) - vA - b2Cross(wA, cp1->rA); - b2Vec2 dv2 = vB + b2Cross(wB, cp2->rB) - vA - b2Cross(wA, cp2->rA); - - // Compute normal velocity - float32 vn1 = b2Dot(dv1, normal); - float32 vn2 = b2Dot(dv2, normal); - - b2Vec2 b; - b.x = vn1 - cp1->velocityBias; - b.y = vn2 - cp2->velocityBias; - - // Compute b' - b -= b2Mul(vc->K, a); - - const float32 k_errorTol = 1e-3f; - B2_NOT_USED(k_errorTol); - - for (;;) - { - // - // Case 1: vn = 0 - // - // 0 = A * x + b' - // - // Solve for x: - // - // x = - inv(A) * b' - // - b2Vec2 x = - b2Mul(vc->normalMass, b); - - if (x.x >= 0.0f && x.y >= 0.0f) - { - // Get the incremental impulse - b2Vec2 d = x - a; - - // Apply incremental impulse - b2Vec2 P1 = d.x * normal; - b2Vec2 P2 = d.y * normal; - vA -= mA * (P1 + P2); - wA -= iA * (b2Cross(cp1->rA, P1) + b2Cross(cp2->rA, P2)); - - vB += mB * (P1 + P2); - wB += iB * (b2Cross(cp1->rB, P1) + b2Cross(cp2->rB, P2)); - - // Accumulate - cp1->normalImpulse = x.x; - cp2->normalImpulse = x.y; - -#if B2_DEBUG_SOLVER == 1 - // Postconditions - dv1 = vB + b2Cross(wB, cp1->rB) - vA - b2Cross(wA, cp1->rA); - dv2 = vB + b2Cross(wB, cp2->rB) - vA - b2Cross(wA, cp2->rA); - - // Compute normal velocity - vn1 = b2Dot(dv1, normal); - vn2 = b2Dot(dv2, normal); - - b2Assert(b2Abs(vn1 - cp1->velocityBias) < k_errorTol); - b2Assert(b2Abs(vn2 - cp2->velocityBias) < k_errorTol); -#endif - break; - } - - // - // Case 2: vn1 = 0 and x2 = 0 - // - // 0 = a11 * x1 + a12 * 0 + b1' - // vn2 = a21 * x1 + a22 * 0 + b2' - // - x.x = - cp1->normalMass * b.x; - x.y = 0.0f; - vn1 = 0.0f; - vn2 = vc->K.ex.y * x.x + b.y; - - if (x.x >= 0.0f && vn2 >= 0.0f) - { - // Get the incremental impulse - b2Vec2 d = x - a; - - // Apply incremental impulse - b2Vec2 P1 = d.x * normal; - b2Vec2 P2 = d.y * normal; - vA -= mA * (P1 + P2); - wA -= iA * (b2Cross(cp1->rA, P1) + b2Cross(cp2->rA, P2)); - - vB += mB * (P1 + P2); - wB += iB * (b2Cross(cp1->rB, P1) + b2Cross(cp2->rB, P2)); - - // Accumulate - cp1->normalImpulse = x.x; - cp2->normalImpulse = x.y; - -#if B2_DEBUG_SOLVER == 1 - // Postconditions - dv1 = vB + b2Cross(wB, cp1->rB) - vA - b2Cross(wA, cp1->rA); - - // Compute normal velocity - vn1 = b2Dot(dv1, normal); - - b2Assert(b2Abs(vn1 - cp1->velocityBias) < k_errorTol); -#endif - break; - } - - - // - // Case 3: vn2 = 0 and x1 = 0 - // - // vn1 = a11 * 0 + a12 * x2 + b1' - // 0 = a21 * 0 + a22 * x2 + b2' - // - x.x = 0.0f; - x.y = - cp2->normalMass * b.y; - vn1 = vc->K.ey.x * x.y + b.x; - vn2 = 0.0f; - - if (x.y >= 0.0f && vn1 >= 0.0f) - { - // Resubstitute for the incremental impulse - b2Vec2 d = x - a; - - // Apply incremental impulse - b2Vec2 P1 = d.x * normal; - b2Vec2 P2 = d.y * normal; - vA -= mA * (P1 + P2); - wA -= iA * (b2Cross(cp1->rA, P1) + b2Cross(cp2->rA, P2)); - - vB += mB * (P1 + P2); - wB += iB * (b2Cross(cp1->rB, P1) + b2Cross(cp2->rB, P2)); - - // Accumulate - cp1->normalImpulse = x.x; - cp2->normalImpulse = x.y; - -#if B2_DEBUG_SOLVER == 1 - // Postconditions - dv2 = vB + b2Cross(wB, cp2->rB) - vA - b2Cross(wA, cp2->rA); - - // Compute normal velocity - vn2 = b2Dot(dv2, normal); - - b2Assert(b2Abs(vn2 - cp2->velocityBias) < k_errorTol); -#endif - break; - } - - // - // Case 4: x1 = 0 and x2 = 0 - // - // vn1 = b1 - // vn2 = b2; - x.x = 0.0f; - x.y = 0.0f; - vn1 = b.x; - vn2 = b.y; - - if (vn1 >= 0.0f && vn2 >= 0.0f ) - { - // Resubstitute for the incremental impulse - b2Vec2 d = x - a; - - // Apply incremental impulse - b2Vec2 P1 = d.x * normal; - b2Vec2 P2 = d.y * normal; - vA -= mA * (P1 + P2); - wA -= iA * (b2Cross(cp1->rA, P1) + b2Cross(cp2->rA, P2)); - - vB += mB * (P1 + P2); - wB += iB * (b2Cross(cp1->rB, P1) + b2Cross(cp2->rB, P2)); - - // Accumulate - cp1->normalImpulse = x.x; - cp2->normalImpulse = x.y; - - break; - } - - // No solution, give up. This is hit sometimes, but it doesn't seem to matter. - break; - } - } - - m_velocities[indexA].v = vA; - m_velocities[indexA].w = wA; - m_velocities[indexB].v = vB; - m_velocities[indexB].w = wB; - } -} - -void b2ContactSolver::StoreImpulses() -{ - for (int32 i = 0; i < m_count; ++i) - { - b2ContactVelocityConstraint* vc = m_velocityConstraints + i; - b2Manifold* manifold = m_contacts[vc->contactIndex]->GetManifold(); - - for (int32 j = 0; j < vc->pointCount; ++j) - { - manifold->points[j].normalImpulse = vc->points[j].normalImpulse; - manifold->points[j].tangentImpulse = vc->points[j].tangentImpulse; - } - } -} - -struct b2PositionSolverManifold -{ - void Initialize(b2ContactPositionConstraint* pc, const b2Transform& xfA, const b2Transform& xfB, int32 index) - { - b2Assert(pc->pointCount > 0); - - switch (pc->type) - { - case b2Manifold::e_circles: - { - b2Vec2 pointA = b2Mul(xfA, pc->localPoint); - b2Vec2 pointB = b2Mul(xfB, pc->localPoints[0]); - normal = pointB - pointA; - normal.Normalize(); - point = 0.5f * (pointA + pointB); - separation = b2Dot(pointB - pointA, normal) - pc->radiusA - pc->radiusB; - } - break; - - case b2Manifold::e_faceA: - { - normal = b2Mul(xfA.q, pc->localNormal); - b2Vec2 planePoint = b2Mul(xfA, pc->localPoint); - - b2Vec2 clipPoint = b2Mul(xfB, pc->localPoints[index]); - separation = b2Dot(clipPoint - planePoint, normal) - pc->radiusA - pc->radiusB; - point = clipPoint; - } - break; - - case b2Manifold::e_faceB: - { - normal = b2Mul(xfB.q, pc->localNormal); - b2Vec2 planePoint = b2Mul(xfB, pc->localPoint); - - b2Vec2 clipPoint = b2Mul(xfA, pc->localPoints[index]); - separation = b2Dot(clipPoint - planePoint, normal) - pc->radiusA - pc->radiusB; - point = clipPoint; - - // Ensure normal points from A to B - normal = -normal; - } - break; - } - } - - b2Vec2 normal; - b2Vec2 point; - float32 separation; -}; - -// Sequential solver. -bool b2ContactSolver::SolvePositionConstraints() -{ - float32 minSeparation = 0.0f; - - for (int32 i = 0; i < m_count; ++i) - { - b2ContactPositionConstraint* pc = m_positionConstraints + i; - - int32 indexA = pc->indexA; - int32 indexB = pc->indexB; - b2Vec2 localCenterA = pc->localCenterA; - float32 mA = pc->invMassA; - float32 iA = pc->invIA; - b2Vec2 localCenterB = pc->localCenterB; - float32 mB = pc->invMassB; - float32 iB = pc->invIB; - int32 pointCount = pc->pointCount; - - b2Vec2 cA = m_positions[indexA].c; - float32 aA = m_positions[indexA].a; - - b2Vec2 cB = m_positions[indexB].c; - float32 aB = m_positions[indexB].a; - - // Solve normal constraints - for (int32 j = 0; j < pointCount; ++j) - { - b2Transform xfA, xfB; - xfA.q.Set(aA); - xfB.q.Set(aB); - xfA.p = cA - b2Mul(xfA.q, localCenterA); - xfB.p = cB - b2Mul(xfB.q, localCenterB); - - b2PositionSolverManifold psm; - psm.Initialize(pc, xfA, xfB, j); - b2Vec2 normal = psm.normal; - - b2Vec2 point = psm.point; - float32 separation = psm.separation; - - b2Vec2 rA = point - cA; - b2Vec2 rB = point - cB; - - // Track max constraint error. - minSeparation = b2Min(minSeparation, separation); - - // Prevent large corrections and allow slop. - float32 C = b2Clamp(b2_baumgarte * (separation + b2_linearSlop), -b2_maxLinearCorrection, 0.0f); - - // Compute the effective mass. - float32 rnA = b2Cross(rA, normal); - float32 rnB = b2Cross(rB, normal); - float32 K = mA + mB + iA * rnA * rnA + iB * rnB * rnB; - - // Compute normal impulse - float32 impulse = K > 0.0f ? - C / K : 0.0f; - - b2Vec2 P = impulse * normal; - - cA -= mA * P; - aA -= iA * b2Cross(rA, P); - - cB += mB * P; - aB += iB * b2Cross(rB, P); - } - - m_positions[indexA].c = cA; - m_positions[indexA].a = aA; - - m_positions[indexB].c = cB; - m_positions[indexB].a = aB; - } - - // We can't expect minSpeparation >= -b2_linearSlop because we don't - // push the separation above -b2_linearSlop. - return minSeparation >= -3.0f * b2_linearSlop; -} - -// Sequential position solver for position constraints. -bool b2ContactSolver::SolveTOIPositionConstraints(int32 toiIndexA, int32 toiIndexB) -{ - float32 minSeparation = 0.0f; - - for (int32 i = 0; i < m_count; ++i) - { - b2ContactPositionConstraint* pc = m_positionConstraints + i; - - int32 indexA = pc->indexA; - int32 indexB = pc->indexB; - b2Vec2 localCenterA = pc->localCenterA; - b2Vec2 localCenterB = pc->localCenterB; - int32 pointCount = pc->pointCount; - - float32 mA = 0.0f; - float32 iA = 0.0f; - if (indexA == toiIndexA || indexA == toiIndexB) - { - mA = pc->invMassA; - iA = pc->invIA; - } - - float32 mB = 0.0f; - float32 iB = 0.; - if (indexB == toiIndexA || indexB == toiIndexB) - { - mB = pc->invMassB; - iB = pc->invIB; - } - - b2Vec2 cA = m_positions[indexA].c; - float32 aA = m_positions[indexA].a; - - b2Vec2 cB = m_positions[indexB].c; - float32 aB = m_positions[indexB].a; - - // Solve normal constraints - for (int32 j = 0; j < pointCount; ++j) - { - b2Transform xfA, xfB; - xfA.q.Set(aA); - xfB.q.Set(aB); - xfA.p = cA - b2Mul(xfA.q, localCenterA); - xfB.p = cB - b2Mul(xfB.q, localCenterB); - - b2PositionSolverManifold psm; - psm.Initialize(pc, xfA, xfB, j); - b2Vec2 normal = psm.normal; - - b2Vec2 point = psm.point; - float32 separation = psm.separation; - - b2Vec2 rA = point - cA; - b2Vec2 rB = point - cB; - - // Track max constraint error. - minSeparation = b2Min(minSeparation, separation); - - // Prevent large corrections and allow slop. - float32 C = b2Clamp(b2_toiBaugarte * (separation + b2_linearSlop), -b2_maxLinearCorrection, 0.0f); - - // Compute the effective mass. - float32 rnA = b2Cross(rA, normal); - float32 rnB = b2Cross(rB, normal); - float32 K = mA + mB + iA * rnA * rnA + iB * rnB * rnB; - - // Compute normal impulse - float32 impulse = K > 0.0f ? - C / K : 0.0f; - - b2Vec2 P = impulse * normal; - - cA -= mA * P; - aA -= iA * b2Cross(rA, P); - - cB += mB * P; - aB += iB * b2Cross(rB, P); - } - - m_positions[indexA].c = cA; - m_positions[indexA].a = aA; - - m_positions[indexB].c = cB; - m_positions[indexB].a = aB; - } - - // We can't expect minSpeparation >= -b2_linearSlop because we don't - // push the separation above -b2_linearSlop. - return minSeparation >= -1.5f * b2_linearSlop; -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2ContactSolver.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2ContactSolver.h deleted file mode 100644 index cb568a3..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2ContactSolver.h +++ /dev/null @@ -1,95 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_CONTACT_SOLVER_H -#define B2_CONTACT_SOLVER_H - -#include -#include -#include - -class b2Contact; -class b2Body; -class b2StackAllocator; -struct b2ContactPositionConstraint; - -struct b2VelocityConstraintPoint -{ - b2Vec2 rA; - b2Vec2 rB; - float32 normalImpulse; - float32 tangentImpulse; - float32 normalMass; - float32 tangentMass; - float32 velocityBias; -}; - -struct b2ContactVelocityConstraint -{ - b2VelocityConstraintPoint points[b2_maxManifoldPoints]; - b2Vec2 normal; - b2Mat22 normalMass; - b2Mat22 K; - int32 indexA; - int32 indexB; - float32 invMassA, invMassB; - float32 invIA, invIB; - float32 friction; - float32 restitution; - float32 tangentSpeed; - int32 pointCount; - int32 contactIndex; -}; - -struct b2ContactSolverDef -{ - b2TimeStep step; - b2Contact** contacts; - int32 count; - b2Position* positions; - b2Velocity* velocities; - b2StackAllocator* allocator; -}; - -class b2ContactSolver -{ -public: - b2ContactSolver(b2ContactSolverDef* def); - ~b2ContactSolver(); - - void InitializeVelocityConstraints(); - - void WarmStart(); - void SolveVelocityConstraints(); - void StoreImpulses(); - - bool SolvePositionConstraints(); - bool SolveTOIPositionConstraints(int32 toiIndexA, int32 toiIndexB); - - b2TimeStep m_step; - b2Position* m_positions; - b2Velocity* m_velocities; - b2StackAllocator* m_allocator; - b2ContactPositionConstraint* m_positionConstraints; - b2ContactVelocityConstraint* m_velocityConstraints; - b2Contact** m_contacts; - int m_count; -}; - -#endif - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2EdgeAndCircleContact.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2EdgeAndCircleContact.cpp deleted file mode 100644 index ee62268..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2EdgeAndCircleContact.cpp +++ /dev/null @@ -1,49 +0,0 @@ -/* -* Copyright (c) 2006-2010 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include -#include -#include - -#include - -b2Contact* b2EdgeAndCircleContact::Create(b2Fixture* fixtureA, int32, b2Fixture* fixtureB, int32, b2BlockAllocator* allocator) -{ - void* mem = allocator->Allocate(sizeof(b2EdgeAndCircleContact)); - return new (mem) b2EdgeAndCircleContact(fixtureA, fixtureB); -} - -void b2EdgeAndCircleContact::Destroy(b2Contact* contact, b2BlockAllocator* allocator) -{ - ((b2EdgeAndCircleContact*)contact)->~b2EdgeAndCircleContact(); - allocator->Free(contact, sizeof(b2EdgeAndCircleContact)); -} - -b2EdgeAndCircleContact::b2EdgeAndCircleContact(b2Fixture* fixtureA, b2Fixture* fixtureB) -: b2Contact(fixtureA, 0, fixtureB, 0) -{ - b2Assert(m_fixtureA->GetType() == b2Shape::e_edge); - b2Assert(m_fixtureB->GetType() == b2Shape::e_circle); -} - -void b2EdgeAndCircleContact::Evaluate(b2Manifold* manifold, const b2Transform& xfA, const b2Transform& xfB) -{ - b2CollideEdgeAndCircle( manifold, - (b2EdgeShape*)m_fixtureA->GetShape(), xfA, - (b2CircleShape*)m_fixtureB->GetShape(), xfB); -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2EdgeAndCircleContact.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2EdgeAndCircleContact.h deleted file mode 100644 index 11b61b8..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2EdgeAndCircleContact.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_EDGE_AND_CIRCLE_CONTACT_H -#define B2_EDGE_AND_CIRCLE_CONTACT_H - -#include - -class b2BlockAllocator; - -class b2EdgeAndCircleContact : public b2Contact -{ -public: - static b2Contact* Create( b2Fixture* fixtureA, int32 indexA, - b2Fixture* fixtureB, int32 indexB, b2BlockAllocator* allocator); - static void Destroy(b2Contact* contact, b2BlockAllocator* allocator); - - b2EdgeAndCircleContact(b2Fixture* fixtureA, b2Fixture* fixtureB); - ~b2EdgeAndCircleContact() {} - - void Evaluate(b2Manifold* manifold, const b2Transform& xfA, const b2Transform& xfB); -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp deleted file mode 100644 index 379ce24..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp +++ /dev/null @@ -1,49 +0,0 @@ -/* -* Copyright (c) 2006-2010 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include -#include -#include - -#include - -b2Contact* b2EdgeAndPolygonContact::Create(b2Fixture* fixtureA, int32, b2Fixture* fixtureB, int32, b2BlockAllocator* allocator) -{ - void* mem = allocator->Allocate(sizeof(b2EdgeAndPolygonContact)); - return new (mem) b2EdgeAndPolygonContact(fixtureA, fixtureB); -} - -void b2EdgeAndPolygonContact::Destroy(b2Contact* contact, b2BlockAllocator* allocator) -{ - ((b2EdgeAndPolygonContact*)contact)->~b2EdgeAndPolygonContact(); - allocator->Free(contact, sizeof(b2EdgeAndPolygonContact)); -} - -b2EdgeAndPolygonContact::b2EdgeAndPolygonContact(b2Fixture* fixtureA, b2Fixture* fixtureB) -: b2Contact(fixtureA, 0, fixtureB, 0) -{ - b2Assert(m_fixtureA->GetType() == b2Shape::e_edge); - b2Assert(m_fixtureB->GetType() == b2Shape::e_polygon); -} - -void b2EdgeAndPolygonContact::Evaluate(b2Manifold* manifold, const b2Transform& xfA, const b2Transform& xfB) -{ - b2CollideEdgeAndPolygon( manifold, - (b2EdgeShape*)m_fixtureA->GetShape(), xfA, - (b2PolygonShape*)m_fixtureB->GetShape(), xfB); -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2EdgeAndPolygonContact.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2EdgeAndPolygonContact.h deleted file mode 100644 index 74b27ee..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2EdgeAndPolygonContact.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_EDGE_AND_POLYGON_CONTACT_H -#define B2_EDGE_AND_POLYGON_CONTACT_H - -#include - -class b2BlockAllocator; - -class b2EdgeAndPolygonContact : public b2Contact -{ -public: - static b2Contact* Create( b2Fixture* fixtureA, int32 indexA, - b2Fixture* fixtureB, int32 indexB, b2BlockAllocator* allocator); - static void Destroy(b2Contact* contact, b2BlockAllocator* allocator); - - b2EdgeAndPolygonContact(b2Fixture* fixtureA, b2Fixture* fixtureB); - ~b2EdgeAndPolygonContact() {} - - void Evaluate(b2Manifold* manifold, const b2Transform& xfA, const b2Transform& xfB); -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2PolygonAndCircleContact.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2PolygonAndCircleContact.cpp deleted file mode 100644 index 41da9f1..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2PolygonAndCircleContact.cpp +++ /dev/null @@ -1,49 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include -#include -#include - -#include - -b2Contact* b2PolygonAndCircleContact::Create(b2Fixture* fixtureA, int32, b2Fixture* fixtureB, int32, b2BlockAllocator* allocator) -{ - void* mem = allocator->Allocate(sizeof(b2PolygonAndCircleContact)); - return new (mem) b2PolygonAndCircleContact(fixtureA, fixtureB); -} - -void b2PolygonAndCircleContact::Destroy(b2Contact* contact, b2BlockAllocator* allocator) -{ - ((b2PolygonAndCircleContact*)contact)->~b2PolygonAndCircleContact(); - allocator->Free(contact, sizeof(b2PolygonAndCircleContact)); -} - -b2PolygonAndCircleContact::b2PolygonAndCircleContact(b2Fixture* fixtureA, b2Fixture* fixtureB) -: b2Contact(fixtureA, 0, fixtureB, 0) -{ - b2Assert(m_fixtureA->GetType() == b2Shape::e_polygon); - b2Assert(m_fixtureB->GetType() == b2Shape::e_circle); -} - -void b2PolygonAndCircleContact::Evaluate(b2Manifold* manifold, const b2Transform& xfA, const b2Transform& xfB) -{ - b2CollidePolygonAndCircle( manifold, - (b2PolygonShape*)m_fixtureA->GetShape(), xfA, - (b2CircleShape*)m_fixtureB->GetShape(), xfB); -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2PolygonAndCircleContact.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2PolygonAndCircleContact.h deleted file mode 100644 index 6beca16..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2PolygonAndCircleContact.h +++ /dev/null @@ -1,38 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_POLYGON_AND_CIRCLE_CONTACT_H -#define B2_POLYGON_AND_CIRCLE_CONTACT_H - -#include - -class b2BlockAllocator; - -class b2PolygonAndCircleContact : public b2Contact -{ -public: - static b2Contact* Create(b2Fixture* fixtureA, int32 indexA, b2Fixture* fixtureB, int32 indexB, b2BlockAllocator* allocator); - static void Destroy(b2Contact* contact, b2BlockAllocator* allocator); - - b2PolygonAndCircleContact(b2Fixture* fixtureA, b2Fixture* fixtureB); - ~b2PolygonAndCircleContact() {} - - void Evaluate(b2Manifold* manifold, const b2Transform& xfA, const b2Transform& xfB); -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2PolygonContact.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2PolygonContact.cpp deleted file mode 100644 index e466190..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2PolygonContact.cpp +++ /dev/null @@ -1,52 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include -#include -#include -#include -#include -#include - -#include - -b2Contact* b2PolygonContact::Create(b2Fixture* fixtureA, int32, b2Fixture* fixtureB, int32, b2BlockAllocator* allocator) -{ - void* mem = allocator->Allocate(sizeof(b2PolygonContact)); - return new (mem) b2PolygonContact(fixtureA, fixtureB); -} - -void b2PolygonContact::Destroy(b2Contact* contact, b2BlockAllocator* allocator) -{ - ((b2PolygonContact*)contact)->~b2PolygonContact(); - allocator->Free(contact, sizeof(b2PolygonContact)); -} - -b2PolygonContact::b2PolygonContact(b2Fixture* fixtureA, b2Fixture* fixtureB) - : b2Contact(fixtureA, 0, fixtureB, 0) -{ - b2Assert(m_fixtureA->GetType() == b2Shape::e_polygon); - b2Assert(m_fixtureB->GetType() == b2Shape::e_polygon); -} - -void b2PolygonContact::Evaluate(b2Manifold* manifold, const b2Transform& xfA, const b2Transform& xfB) -{ - b2CollidePolygons( manifold, - (b2PolygonShape*)m_fixtureA->GetShape(), xfA, - (b2PolygonShape*)m_fixtureB->GetShape(), xfB); -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2PolygonContact.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2PolygonContact.h deleted file mode 100644 index 4593214..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2PolygonContact.h +++ /dev/null @@ -1,39 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_POLYGON_CONTACT_H -#define B2_POLYGON_CONTACT_H - -#include - -class b2BlockAllocator; - -class b2PolygonContact : public b2Contact -{ -public: - static b2Contact* Create( b2Fixture* fixtureA, int32 indexA, - b2Fixture* fixtureB, int32 indexB, b2BlockAllocator* allocator); - static void Destroy(b2Contact* contact, b2BlockAllocator* allocator); - - b2PolygonContact(b2Fixture* fixtureA, b2Fixture* fixtureB); - ~b2PolygonContact() {} - - void Evaluate(b2Manifold* manifold, const b2Transform& xfA, const b2Transform& xfB); -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2DistanceJoint.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2DistanceJoint.cpp deleted file mode 100644 index 1ced7d9..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2DistanceJoint.cpp +++ /dev/null @@ -1,260 +0,0 @@ -/* -* Copyright (c) 2006-2011 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include -#include -#include - -// 1-D constrained system -// m (v2 - v1) = lambda -// v2 + (beta/h) * x1 + gamma * lambda = 0, gamma has units of inverse mass. -// x2 = x1 + h * v2 - -// 1-D mass-damper-spring system -// m (v2 - v1) + h * d * v2 + h * k * - -// C = norm(p2 - p1) - L -// u = (p2 - p1) / norm(p2 - p1) -// Cdot = dot(u, v2 + cross(w2, r2) - v1 - cross(w1, r1)) -// J = [-u -cross(r1, u) u cross(r2, u)] -// K = J * invM * JT -// = invMass1 + invI1 * cross(r1, u)^2 + invMass2 + invI2 * cross(r2, u)^2 - -void b2DistanceJointDef::Initialize(b2Body* b1, b2Body* b2, - const b2Vec2& anchor1, const b2Vec2& anchor2) -{ - bodyA = b1; - bodyB = b2; - localAnchorA = bodyA->GetLocalPoint(anchor1); - localAnchorB = bodyB->GetLocalPoint(anchor2); - b2Vec2 d = anchor2 - anchor1; - length = d.Length(); -} - -b2DistanceJoint::b2DistanceJoint(const b2DistanceJointDef* def) -: b2Joint(def) -{ - m_localAnchorA = def->localAnchorA; - m_localAnchorB = def->localAnchorB; - m_length = def->length; - m_frequencyHz = def->frequencyHz; - m_dampingRatio = def->dampingRatio; - m_impulse = 0.0f; - m_gamma = 0.0f; - m_bias = 0.0f; -} - -void b2DistanceJoint::InitVelocityConstraints(const b2SolverData& data) -{ - m_indexA = m_bodyA->m_islandIndex; - m_indexB = m_bodyB->m_islandIndex; - m_localCenterA = m_bodyA->m_sweep.localCenter; - m_localCenterB = m_bodyB->m_sweep.localCenter; - m_invMassA = m_bodyA->m_invMass; - m_invMassB = m_bodyB->m_invMass; - m_invIA = m_bodyA->m_invI; - m_invIB = m_bodyB->m_invI; - - b2Vec2 cA = data.positions[m_indexA].c; - float32 aA = data.positions[m_indexA].a; - b2Vec2 vA = data.velocities[m_indexA].v; - float32 wA = data.velocities[m_indexA].w; - - b2Vec2 cB = data.positions[m_indexB].c; - float32 aB = data.positions[m_indexB].a; - b2Vec2 vB = data.velocities[m_indexB].v; - float32 wB = data.velocities[m_indexB].w; - - b2Rot qA(aA), qB(aB); - - m_rA = b2Mul(qA, m_localAnchorA - m_localCenterA); - m_rB = b2Mul(qB, m_localAnchorB - m_localCenterB); - m_u = cB + m_rB - cA - m_rA; - - // Handle singularity. - float32 length = m_u.Length(); - if (length > b2_linearSlop) - { - m_u *= 1.0f / length; - } - else - { - m_u.Set(0.0f, 0.0f); - } - - float32 crAu = b2Cross(m_rA, m_u); - float32 crBu = b2Cross(m_rB, m_u); - float32 invMass = m_invMassA + m_invIA * crAu * crAu + m_invMassB + m_invIB * crBu * crBu; - - // Compute the effective mass matrix. - m_mass = invMass != 0.0f ? 1.0f / invMass : 0.0f; - - if (m_frequencyHz > 0.0f) - { - float32 C = length - m_length; - - // Frequency - float32 omega = 2.0f * b2_pi * m_frequencyHz; - - // Damping coefficient - float32 d = 2.0f * m_mass * m_dampingRatio * omega; - - // Spring stiffness - float32 k = m_mass * omega * omega; - - // magic formulas - float32 h = data.step.dt; - m_gamma = h * (d + h * k); - m_gamma = m_gamma != 0.0f ? 1.0f / m_gamma : 0.0f; - m_bias = C * h * k * m_gamma; - - invMass += m_gamma; - m_mass = invMass != 0.0f ? 1.0f / invMass : 0.0f; - } - else - { - m_gamma = 0.0f; - m_bias = 0.0f; - } - - if (data.step.warmStarting) - { - // Scale the impulse to support a variable time step. - m_impulse *= data.step.dtRatio; - - b2Vec2 P = m_impulse * m_u; - vA -= m_invMassA * P; - wA -= m_invIA * b2Cross(m_rA, P); - vB += m_invMassB * P; - wB += m_invIB * b2Cross(m_rB, P); - } - else - { - m_impulse = 0.0f; - } - - data.velocities[m_indexA].v = vA; - data.velocities[m_indexA].w = wA; - data.velocities[m_indexB].v = vB; - data.velocities[m_indexB].w = wB; -} - -void b2DistanceJoint::SolveVelocityConstraints(const b2SolverData& data) -{ - b2Vec2 vA = data.velocities[m_indexA].v; - float32 wA = data.velocities[m_indexA].w; - b2Vec2 vB = data.velocities[m_indexB].v; - float32 wB = data.velocities[m_indexB].w; - - // Cdot = dot(u, v + cross(w, r)) - b2Vec2 vpA = vA + b2Cross(wA, m_rA); - b2Vec2 vpB = vB + b2Cross(wB, m_rB); - float32 Cdot = b2Dot(m_u, vpB - vpA); - - float32 impulse = -m_mass * (Cdot + m_bias + m_gamma * m_impulse); - m_impulse += impulse; - - b2Vec2 P = impulse * m_u; - vA -= m_invMassA * P; - wA -= m_invIA * b2Cross(m_rA, P); - vB += m_invMassB * P; - wB += m_invIB * b2Cross(m_rB, P); - - data.velocities[m_indexA].v = vA; - data.velocities[m_indexA].w = wA; - data.velocities[m_indexB].v = vB; - data.velocities[m_indexB].w = wB; -} - -bool b2DistanceJoint::SolvePositionConstraints(const b2SolverData& data) -{ - if (m_frequencyHz > 0.0f) - { - // There is no position correction for soft distance constraints. - return true; - } - - b2Vec2 cA = data.positions[m_indexA].c; - float32 aA = data.positions[m_indexA].a; - b2Vec2 cB = data.positions[m_indexB].c; - float32 aB = data.positions[m_indexB].a; - - b2Rot qA(aA), qB(aB); - - b2Vec2 rA = b2Mul(qA, m_localAnchorA - m_localCenterA); - b2Vec2 rB = b2Mul(qB, m_localAnchorB - m_localCenterB); - b2Vec2 u = cB + rB - cA - rA; - - float32 length = u.Normalize(); - float32 C = length - m_length; - C = b2Clamp(C, -b2_maxLinearCorrection, b2_maxLinearCorrection); - - float32 impulse = -m_mass * C; - b2Vec2 P = impulse * u; - - cA -= m_invMassA * P; - aA -= m_invIA * b2Cross(rA, P); - cB += m_invMassB * P; - aB += m_invIB * b2Cross(rB, P); - - data.positions[m_indexA].c = cA; - data.positions[m_indexA].a = aA; - data.positions[m_indexB].c = cB; - data.positions[m_indexB].a = aB; - - return b2Abs(C) < b2_linearSlop; -} - -b2Vec2 b2DistanceJoint::GetAnchorA() const -{ - return m_bodyA->GetWorldPoint(m_localAnchorA); -} - -b2Vec2 b2DistanceJoint::GetAnchorB() const -{ - return m_bodyB->GetWorldPoint(m_localAnchorB); -} - -b2Vec2 b2DistanceJoint::GetReactionForce(float32 inv_dt) const -{ - b2Vec2 F = (inv_dt * m_impulse) * m_u; - return F; -} - -float32 b2DistanceJoint::GetReactionTorque(float32 inv_dt) const -{ - B2_NOT_USED(inv_dt); - return 0.0f; -} - -void b2DistanceJoint::Dump() -{ - int32 indexA = m_bodyA->m_islandIndex; - int32 indexB = m_bodyB->m_islandIndex; - - b2Log(" b2DistanceJointDef jd;\n"); - b2Log(" jd.bodyA = bodies[%d];\n", indexA); - b2Log(" jd.bodyB = bodies[%d];\n", indexB); - b2Log(" jd.collideConnected = bool(%d);\n", m_collideConnected); - b2Log(" jd.localAnchorA.Set(%.15lef, %.15lef);\n", m_localAnchorA.x, m_localAnchorA.y); - b2Log(" jd.localAnchorB.Set(%.15lef, %.15lef);\n", m_localAnchorB.x, m_localAnchorB.y); - b2Log(" jd.length = %.15lef;\n", m_length); - b2Log(" jd.frequencyHz = %.15lef;\n", m_frequencyHz); - b2Log(" jd.dampingRatio = %.15lef;\n", m_dampingRatio); - b2Log(" joints[%d] = m_world->CreateJoint(&jd);\n", m_index); -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2DistanceJoint.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2DistanceJoint.h deleted file mode 100644 index 9d0528b..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2DistanceJoint.h +++ /dev/null @@ -1,169 +0,0 @@ -/* -* Copyright (c) 2006-2007 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_DISTANCE_JOINT_H -#define B2_DISTANCE_JOINT_H - -#include - -/// Distance joint definition. This requires defining an -/// anchor point on both bodies and the non-zero length of the -/// distance joint. The definition uses local anchor points -/// so that the initial configuration can violate the constraint -/// slightly. This helps when saving and loading a game. -/// @warning Do not use a zero or short length. -struct b2DistanceJointDef : public b2JointDef -{ - b2DistanceJointDef() - { - type = e_distanceJoint; - localAnchorA.Set(0.0f, 0.0f); - localAnchorB.Set(0.0f, 0.0f); - length = 1.0f; - frequencyHz = 0.0f; - dampingRatio = 0.0f; - } - - /// Initialize the bodies, anchors, and length using the world - /// anchors. - void Initialize(b2Body* bodyA, b2Body* bodyB, - const b2Vec2& anchorA, const b2Vec2& anchorB); - - /// The local anchor point relative to bodyA's origin. - b2Vec2 localAnchorA; - - /// The local anchor point relative to bodyB's origin. - b2Vec2 localAnchorB; - - /// The natural length between the anchor points. - float32 length; - - /// The mass-spring-damper frequency in Hertz. A value of 0 - /// disables softness. - float32 frequencyHz; - - /// The damping ratio. 0 = no damping, 1 = critical damping. - float32 dampingRatio; -}; - -/// A distance joint constrains two points on two bodies -/// to remain at a fixed distance from each other. You can view -/// this as a massless, rigid rod. -class b2DistanceJoint : public b2Joint -{ -public: - - b2Vec2 GetAnchorA() const; - b2Vec2 GetAnchorB() const; - - /// Get the reaction force given the inverse time step. - /// Unit is N. - b2Vec2 GetReactionForce(float32 inv_dt) const; - - /// Get the reaction torque given the inverse time step. - /// Unit is N*m. This is always zero for a distance joint. - float32 GetReactionTorque(float32 inv_dt) const; - - /// The local anchor point relative to bodyA's origin. - const b2Vec2& GetLocalAnchorA() const { return m_localAnchorA; } - - /// The local anchor point relative to bodyB's origin. - const b2Vec2& GetLocalAnchorB() const { return m_localAnchorB; } - - /// Set/get the natural length. - /// Manipulating the length can lead to non-physical behavior when the frequency is zero. - void SetLength(float32 length); - float32 GetLength() const; - - /// Set/get frequency in Hz. - void SetFrequency(float32 hz); - float32 GetFrequency() const; - - /// Set/get damping ratio. - void SetDampingRatio(float32 ratio); - float32 GetDampingRatio() const; - - /// Dump joint to dmLog - void Dump(); - -protected: - - friend class b2Joint; - b2DistanceJoint(const b2DistanceJointDef* data); - - void InitVelocityConstraints(const b2SolverData& data); - void SolveVelocityConstraints(const b2SolverData& data); - bool SolvePositionConstraints(const b2SolverData& data); - - float32 m_frequencyHz; - float32 m_dampingRatio; - float32 m_bias; - - // Solver shared - b2Vec2 m_localAnchorA; - b2Vec2 m_localAnchorB; - float32 m_gamma; - float32 m_impulse; - float32 m_length; - - // Solver temp - int32 m_indexA; - int32 m_indexB; - b2Vec2 m_u; - b2Vec2 m_rA; - b2Vec2 m_rB; - b2Vec2 m_localCenterA; - b2Vec2 m_localCenterB; - float32 m_invMassA; - float32 m_invMassB; - float32 m_invIA; - float32 m_invIB; - float32 m_mass; -}; - -inline void b2DistanceJoint::SetLength(float32 length) -{ - m_length = length; -} - -inline float32 b2DistanceJoint::GetLength() const -{ - return m_length; -} - -inline void b2DistanceJoint::SetFrequency(float32 hz) -{ - m_frequencyHz = hz; -} - -inline float32 b2DistanceJoint::GetFrequency() const -{ - return m_frequencyHz; -} - -inline void b2DistanceJoint::SetDampingRatio(float32 ratio) -{ - m_dampingRatio = ratio; -} - -inline float32 b2DistanceJoint::GetDampingRatio() const -{ - return m_dampingRatio; -} - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2FrictionJoint.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2FrictionJoint.cpp deleted file mode 100644 index 075e72b..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2FrictionJoint.cpp +++ /dev/null @@ -1,251 +0,0 @@ -/* -* Copyright (c) 2006-2011 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include -#include -#include - -// Point-to-point constraint -// Cdot = v2 - v1 -// = v2 + cross(w2, r2) - v1 - cross(w1, r1) -// J = [-I -r1_skew I r2_skew ] -// Identity used: -// w k % (rx i + ry j) = w * (-ry i + rx j) - -// Angle constraint -// Cdot = w2 - w1 -// J = [0 0 -1 0 0 1] -// K = invI1 + invI2 - -void b2FrictionJointDef::Initialize(b2Body* bA, b2Body* bB, const b2Vec2& anchor) -{ - bodyA = bA; - bodyB = bB; - localAnchorA = bodyA->GetLocalPoint(anchor); - localAnchorB = bodyB->GetLocalPoint(anchor); -} - -b2FrictionJoint::b2FrictionJoint(const b2FrictionJointDef* def) -: b2Joint(def) -{ - m_localAnchorA = def->localAnchorA; - m_localAnchorB = def->localAnchorB; - - m_linearImpulse.SetZero(); - m_angularImpulse = 0.0f; - - m_maxForce = def->maxForce; - m_maxTorque = def->maxTorque; -} - -void b2FrictionJoint::InitVelocityConstraints(const b2SolverData& data) -{ - m_indexA = m_bodyA->m_islandIndex; - m_indexB = m_bodyB->m_islandIndex; - m_localCenterA = m_bodyA->m_sweep.localCenter; - m_localCenterB = m_bodyB->m_sweep.localCenter; - m_invMassA = m_bodyA->m_invMass; - m_invMassB = m_bodyB->m_invMass; - m_invIA = m_bodyA->m_invI; - m_invIB = m_bodyB->m_invI; - - float32 aA = data.positions[m_indexA].a; - b2Vec2 vA = data.velocities[m_indexA].v; - float32 wA = data.velocities[m_indexA].w; - - float32 aB = data.positions[m_indexB].a; - b2Vec2 vB = data.velocities[m_indexB].v; - float32 wB = data.velocities[m_indexB].w; - - b2Rot qA(aA), qB(aB); - - // Compute the effective mass matrix. - m_rA = b2Mul(qA, m_localAnchorA - m_localCenterA); - m_rB = b2Mul(qB, m_localAnchorB - m_localCenterB); - - // J = [-I -r1_skew I r2_skew] - // [ 0 -1 0 1] - // r_skew = [-ry; rx] - - // Matlab - // K = [ mA+r1y^2*iA+mB+r2y^2*iB, -r1y*iA*r1x-r2y*iB*r2x, -r1y*iA-r2y*iB] - // [ -r1y*iA*r1x-r2y*iB*r2x, mA+r1x^2*iA+mB+r2x^2*iB, r1x*iA+r2x*iB] - // [ -r1y*iA-r2y*iB, r1x*iA+r2x*iB, iA+iB] - - float32 mA = m_invMassA, mB = m_invMassB; - float32 iA = m_invIA, iB = m_invIB; - - b2Mat22 K; - K.ex.x = mA + mB + iA * m_rA.y * m_rA.y + iB * m_rB.y * m_rB.y; - K.ex.y = -iA * m_rA.x * m_rA.y - iB * m_rB.x * m_rB.y; - K.ey.x = K.ex.y; - K.ey.y = mA + mB + iA * m_rA.x * m_rA.x + iB * m_rB.x * m_rB.x; - - m_linearMass = K.GetInverse(); - - m_angularMass = iA + iB; - if (m_angularMass > 0.0f) - { - m_angularMass = 1.0f / m_angularMass; - } - - if (data.step.warmStarting) - { - // Scale impulses to support a variable time step. - m_linearImpulse *= data.step.dtRatio; - m_angularImpulse *= data.step.dtRatio; - - b2Vec2 P(m_linearImpulse.x, m_linearImpulse.y); - vA -= mA * P; - wA -= iA * (b2Cross(m_rA, P) + m_angularImpulse); - vB += mB * P; - wB += iB * (b2Cross(m_rB, P) + m_angularImpulse); - } - else - { - m_linearImpulse.SetZero(); - m_angularImpulse = 0.0f; - } - - data.velocities[m_indexA].v = vA; - data.velocities[m_indexA].w = wA; - data.velocities[m_indexB].v = vB; - data.velocities[m_indexB].w = wB; -} - -void b2FrictionJoint::SolveVelocityConstraints(const b2SolverData& data) -{ - b2Vec2 vA = data.velocities[m_indexA].v; - float32 wA = data.velocities[m_indexA].w; - b2Vec2 vB = data.velocities[m_indexB].v; - float32 wB = data.velocities[m_indexB].w; - - float32 mA = m_invMassA, mB = m_invMassB; - float32 iA = m_invIA, iB = m_invIB; - - float32 h = data.step.dt; - - // Solve angular friction - { - float32 Cdot = wB - wA; - float32 impulse = -m_angularMass * Cdot; - - float32 oldImpulse = m_angularImpulse; - float32 maxImpulse = h * m_maxTorque; - m_angularImpulse = b2Clamp(m_angularImpulse + impulse, -maxImpulse, maxImpulse); - impulse = m_angularImpulse - oldImpulse; - - wA -= iA * impulse; - wB += iB * impulse; - } - - // Solve linear friction - { - b2Vec2 Cdot = vB + b2Cross(wB, m_rB) - vA - b2Cross(wA, m_rA); - - b2Vec2 impulse = -b2Mul(m_linearMass, Cdot); - b2Vec2 oldImpulse = m_linearImpulse; - m_linearImpulse += impulse; - - float32 maxImpulse = h * m_maxForce; - - if (m_linearImpulse.LengthSquared() > maxImpulse * maxImpulse) - { - m_linearImpulse.Normalize(); - m_linearImpulse *= maxImpulse; - } - - impulse = m_linearImpulse - oldImpulse; - - vA -= mA * impulse; - wA -= iA * b2Cross(m_rA, impulse); - - vB += mB * impulse; - wB += iB * b2Cross(m_rB, impulse); - } - - data.velocities[m_indexA].v = vA; - data.velocities[m_indexA].w = wA; - data.velocities[m_indexB].v = vB; - data.velocities[m_indexB].w = wB; -} - -bool b2FrictionJoint::SolvePositionConstraints(const b2SolverData& data) -{ - B2_NOT_USED(data); - - return true; -} - -b2Vec2 b2FrictionJoint::GetAnchorA() const -{ - return m_bodyA->GetWorldPoint(m_localAnchorA); -} - -b2Vec2 b2FrictionJoint::GetAnchorB() const -{ - return m_bodyB->GetWorldPoint(m_localAnchorB); -} - -b2Vec2 b2FrictionJoint::GetReactionForce(float32 inv_dt) const -{ - return inv_dt * m_linearImpulse; -} - -float32 b2FrictionJoint::GetReactionTorque(float32 inv_dt) const -{ - return inv_dt * m_angularImpulse; -} - -void b2FrictionJoint::SetMaxForce(float32 force) -{ - b2Assert(b2IsValid(force) && force >= 0.0f); - m_maxForce = force; -} - -float32 b2FrictionJoint::GetMaxForce() const -{ - return m_maxForce; -} - -void b2FrictionJoint::SetMaxTorque(float32 torque) -{ - b2Assert(b2IsValid(torque) && torque >= 0.0f); - m_maxTorque = torque; -} - -float32 b2FrictionJoint::GetMaxTorque() const -{ - return m_maxTorque; -} - -void b2FrictionJoint::Dump() -{ - int32 indexA = m_bodyA->m_islandIndex; - int32 indexB = m_bodyB->m_islandIndex; - - b2Log(" b2FrictionJointDef jd;\n"); - b2Log(" jd.bodyA = bodies[%d];\n", indexA); - b2Log(" jd.bodyB = bodies[%d];\n", indexB); - b2Log(" jd.collideConnected = bool(%d);\n", m_collideConnected); - b2Log(" jd.localAnchorA.Set(%.15lef, %.15lef);\n", m_localAnchorA.x, m_localAnchorA.y); - b2Log(" jd.localAnchorB.Set(%.15lef, %.15lef);\n", m_localAnchorB.x, m_localAnchorB.y); - b2Log(" jd.maxForce = %.15lef;\n", m_maxForce); - b2Log(" jd.maxTorque = %.15lef;\n", m_maxTorque); - b2Log(" joints[%d] = m_world->CreateJoint(&jd);\n", m_index); -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2FrictionJoint.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2FrictionJoint.h deleted file mode 100644 index 785d9ac..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2FrictionJoint.h +++ /dev/null @@ -1,119 +0,0 @@ -/* -* Copyright (c) 2006-2007 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_FRICTION_JOINT_H -#define B2_FRICTION_JOINT_H - -#include - -/// Friction joint definition. -struct b2FrictionJointDef : public b2JointDef -{ - b2FrictionJointDef() - { - type = e_frictionJoint; - localAnchorA.SetZero(); - localAnchorB.SetZero(); - maxForce = 0.0f; - maxTorque = 0.0f; - } - - /// Initialize the bodies, anchors, axis, and reference angle using the world - /// anchor and world axis. - void Initialize(b2Body* bodyA, b2Body* bodyB, const b2Vec2& anchor); - - /// The local anchor point relative to bodyA's origin. - b2Vec2 localAnchorA; - - /// The local anchor point relative to bodyB's origin. - b2Vec2 localAnchorB; - - /// The maximum friction force in N. - float32 maxForce; - - /// The maximum friction torque in N-m. - float32 maxTorque; -}; - -/// Friction joint. This is used for top-down friction. -/// It provides 2D translational friction and angular friction. -class b2FrictionJoint : public b2Joint -{ -public: - b2Vec2 GetAnchorA() const; - b2Vec2 GetAnchorB() const; - - b2Vec2 GetReactionForce(float32 inv_dt) const; - float32 GetReactionTorque(float32 inv_dt) const; - - /// The local anchor point relative to bodyA's origin. - const b2Vec2& GetLocalAnchorA() const { return m_localAnchorA; } - - /// The local anchor point relative to bodyB's origin. - const b2Vec2& GetLocalAnchorB() const { return m_localAnchorB; } - - /// Set the maximum friction force in N. - void SetMaxForce(float32 force); - - /// Get the maximum friction force in N. - float32 GetMaxForce() const; - - /// Set the maximum friction torque in N*m. - void SetMaxTorque(float32 torque); - - /// Get the maximum friction torque in N*m. - float32 GetMaxTorque() const; - - /// Dump joint to dmLog - void Dump(); - -protected: - - friend class b2Joint; - - b2FrictionJoint(const b2FrictionJointDef* def); - - void InitVelocityConstraints(const b2SolverData& data); - void SolveVelocityConstraints(const b2SolverData& data); - bool SolvePositionConstraints(const b2SolverData& data); - - b2Vec2 m_localAnchorA; - b2Vec2 m_localAnchorB; - - // Solver shared - b2Vec2 m_linearImpulse; - float32 m_angularImpulse; - float32 m_maxForce; - float32 m_maxTorque; - - // Solver temp - int32 m_indexA; - int32 m_indexB; - b2Vec2 m_rA; - b2Vec2 m_rB; - b2Vec2 m_localCenterA; - b2Vec2 m_localCenterB; - float32 m_invMassA; - float32 m_invMassB; - float32 m_invIA; - float32 m_invIB; - b2Mat22 m_linearMass; - float32 m_angularMass; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2GearJoint.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2GearJoint.cpp deleted file mode 100644 index 233d972..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2GearJoint.cpp +++ /dev/null @@ -1,419 +0,0 @@ -/* -* Copyright (c) 2007-2011 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include -#include -#include -#include -#include - -// Gear Joint: -// C0 = (coordinate1 + ratio * coordinate2)_initial -// C = (coordinate1 + ratio * coordinate2) - C0 = 0 -// J = [J1 ratio * J2] -// K = J * invM * JT -// = J1 * invM1 * J1T + ratio * ratio * J2 * invM2 * J2T -// -// Revolute: -// coordinate = rotation -// Cdot = angularVelocity -// J = [0 0 1] -// K = J * invM * JT = invI -// -// Prismatic: -// coordinate = dot(p - pg, ug) -// Cdot = dot(v + cross(w, r), ug) -// J = [ug cross(r, ug)] -// K = J * invM * JT = invMass + invI * cross(r, ug)^2 - -b2GearJoint::b2GearJoint(const b2GearJointDef* def) -: b2Joint(def) -{ - m_joint1 = def->joint1; - m_joint2 = def->joint2; - - m_typeA = m_joint1->GetType(); - m_typeB = m_joint2->GetType(); - - b2Assert(m_typeA == e_revoluteJoint || m_typeA == e_prismaticJoint); - b2Assert(m_typeB == e_revoluteJoint || m_typeB == e_prismaticJoint); - - float32 coordinateA, coordinateB; - - // TODO_ERIN there might be some problem with the joint edges in b2Joint. - - m_bodyC = m_joint1->GetBodyA(); - m_bodyA = m_joint1->GetBodyB(); - - // Get geometry of joint1 - b2Transform xfA = m_bodyA->m_xf; - float32 aA = m_bodyA->m_sweep.a; - b2Transform xfC = m_bodyC->m_xf; - float32 aC = m_bodyC->m_sweep.a; - - if (m_typeA == e_revoluteJoint) - { - b2RevoluteJoint* revolute = (b2RevoluteJoint*)def->joint1; - m_localAnchorC = revolute->m_localAnchorA; - m_localAnchorA = revolute->m_localAnchorB; - m_referenceAngleA = revolute->m_referenceAngle; - m_localAxisC.SetZero(); - - coordinateA = aA - aC - m_referenceAngleA; - } - else - { - b2PrismaticJoint* prismatic = (b2PrismaticJoint*)def->joint1; - m_localAnchorC = prismatic->m_localAnchorA; - m_localAnchorA = prismatic->m_localAnchorB; - m_referenceAngleA = prismatic->m_referenceAngle; - m_localAxisC = prismatic->m_localXAxisA; - - b2Vec2 pC = m_localAnchorC; - b2Vec2 pA = b2MulT(xfC.q, b2Mul(xfA.q, m_localAnchorA) + (xfA.p - xfC.p)); - coordinateA = b2Dot(pA - pC, m_localAxisC); - } - - m_bodyD = m_joint2->GetBodyA(); - m_bodyB = m_joint2->GetBodyB(); - - // Get geometry of joint2 - b2Transform xfB = m_bodyB->m_xf; - float32 aB = m_bodyB->m_sweep.a; - b2Transform xfD = m_bodyD->m_xf; - float32 aD = m_bodyD->m_sweep.a; - - if (m_typeB == e_revoluteJoint) - { - b2RevoluteJoint* revolute = (b2RevoluteJoint*)def->joint2; - m_localAnchorD = revolute->m_localAnchorA; - m_localAnchorB = revolute->m_localAnchorB; - m_referenceAngleB = revolute->m_referenceAngle; - m_localAxisD.SetZero(); - - coordinateB = aB - aD - m_referenceAngleB; - } - else - { - b2PrismaticJoint* prismatic = (b2PrismaticJoint*)def->joint2; - m_localAnchorD = prismatic->m_localAnchorA; - m_localAnchorB = prismatic->m_localAnchorB; - m_referenceAngleB = prismatic->m_referenceAngle; - m_localAxisD = prismatic->m_localXAxisA; - - b2Vec2 pD = m_localAnchorD; - b2Vec2 pB = b2MulT(xfD.q, b2Mul(xfB.q, m_localAnchorB) + (xfB.p - xfD.p)); - coordinateB = b2Dot(pB - pD, m_localAxisD); - } - - m_ratio = def->ratio; - - m_constant = coordinateA + m_ratio * coordinateB; - - m_impulse = 0.0f; -} - -void b2GearJoint::InitVelocityConstraints(const b2SolverData& data) -{ - m_indexA = m_bodyA->m_islandIndex; - m_indexB = m_bodyB->m_islandIndex; - m_indexC = m_bodyC->m_islandIndex; - m_indexD = m_bodyD->m_islandIndex; - m_lcA = m_bodyA->m_sweep.localCenter; - m_lcB = m_bodyB->m_sweep.localCenter; - m_lcC = m_bodyC->m_sweep.localCenter; - m_lcD = m_bodyD->m_sweep.localCenter; - m_mA = m_bodyA->m_invMass; - m_mB = m_bodyB->m_invMass; - m_mC = m_bodyC->m_invMass; - m_mD = m_bodyD->m_invMass; - m_iA = m_bodyA->m_invI; - m_iB = m_bodyB->m_invI; - m_iC = m_bodyC->m_invI; - m_iD = m_bodyD->m_invI; - - float32 aA = data.positions[m_indexA].a; - b2Vec2 vA = data.velocities[m_indexA].v; - float32 wA = data.velocities[m_indexA].w; - - float32 aB = data.positions[m_indexB].a; - b2Vec2 vB = data.velocities[m_indexB].v; - float32 wB = data.velocities[m_indexB].w; - - float32 aC = data.positions[m_indexC].a; - b2Vec2 vC = data.velocities[m_indexC].v; - float32 wC = data.velocities[m_indexC].w; - - float32 aD = data.positions[m_indexD].a; - b2Vec2 vD = data.velocities[m_indexD].v; - float32 wD = data.velocities[m_indexD].w; - - b2Rot qA(aA), qB(aB), qC(aC), qD(aD); - - m_mass = 0.0f; - - if (m_typeA == e_revoluteJoint) - { - m_JvAC.SetZero(); - m_JwA = 1.0f; - m_JwC = 1.0f; - m_mass += m_iA + m_iC; - } - else - { - b2Vec2 u = b2Mul(qC, m_localAxisC); - b2Vec2 rC = b2Mul(qC, m_localAnchorC - m_lcC); - b2Vec2 rA = b2Mul(qA, m_localAnchorA - m_lcA); - m_JvAC = u; - m_JwC = b2Cross(rC, u); - m_JwA = b2Cross(rA, u); - m_mass += m_mC + m_mA + m_iC * m_JwC * m_JwC + m_iA * m_JwA * m_JwA; - } - - if (m_typeB == e_revoluteJoint) - { - m_JvBD.SetZero(); - m_JwB = m_ratio; - m_JwD = m_ratio; - m_mass += m_ratio * m_ratio * (m_iB + m_iD); - } - else - { - b2Vec2 u = b2Mul(qD, m_localAxisD); - b2Vec2 rD = b2Mul(qD, m_localAnchorD - m_lcD); - b2Vec2 rB = b2Mul(qB, m_localAnchorB - m_lcB); - m_JvBD = m_ratio * u; - m_JwD = m_ratio * b2Cross(rD, u); - m_JwB = m_ratio * b2Cross(rB, u); - m_mass += m_ratio * m_ratio * (m_mD + m_mB) + m_iD * m_JwD * m_JwD + m_iB * m_JwB * m_JwB; - } - - // Compute effective mass. - m_mass = m_mass > 0.0f ? 1.0f / m_mass : 0.0f; - - if (data.step.warmStarting) - { - vA += (m_mA * m_impulse) * m_JvAC; - wA += m_iA * m_impulse * m_JwA; - vB += (m_mB * m_impulse) * m_JvBD; - wB += m_iB * m_impulse * m_JwB; - vC -= (m_mC * m_impulse) * m_JvAC; - wC -= m_iC * m_impulse * m_JwC; - vD -= (m_mD * m_impulse) * m_JvBD; - wD -= m_iD * m_impulse * m_JwD; - } - else - { - m_impulse = 0.0f; - } - - data.velocities[m_indexA].v = vA; - data.velocities[m_indexA].w = wA; - data.velocities[m_indexB].v = vB; - data.velocities[m_indexB].w = wB; - data.velocities[m_indexC].v = vC; - data.velocities[m_indexC].w = wC; - data.velocities[m_indexD].v = vD; - data.velocities[m_indexD].w = wD; -} - -void b2GearJoint::SolveVelocityConstraints(const b2SolverData& data) -{ - b2Vec2 vA = data.velocities[m_indexA].v; - float32 wA = data.velocities[m_indexA].w; - b2Vec2 vB = data.velocities[m_indexB].v; - float32 wB = data.velocities[m_indexB].w; - b2Vec2 vC = data.velocities[m_indexC].v; - float32 wC = data.velocities[m_indexC].w; - b2Vec2 vD = data.velocities[m_indexD].v; - float32 wD = data.velocities[m_indexD].w; - - float32 Cdot = b2Dot(m_JvAC, vA - vC) + b2Dot(m_JvBD, vB - vD); - Cdot += (m_JwA * wA - m_JwC * wC) + (m_JwB * wB - m_JwD * wD); - - float32 impulse = -m_mass * Cdot; - m_impulse += impulse; - - vA += (m_mA * impulse) * m_JvAC; - wA += m_iA * impulse * m_JwA; - vB += (m_mB * impulse) * m_JvBD; - wB += m_iB * impulse * m_JwB; - vC -= (m_mC * impulse) * m_JvAC; - wC -= m_iC * impulse * m_JwC; - vD -= (m_mD * impulse) * m_JvBD; - wD -= m_iD * impulse * m_JwD; - - data.velocities[m_indexA].v = vA; - data.velocities[m_indexA].w = wA; - data.velocities[m_indexB].v = vB; - data.velocities[m_indexB].w = wB; - data.velocities[m_indexC].v = vC; - data.velocities[m_indexC].w = wC; - data.velocities[m_indexD].v = vD; - data.velocities[m_indexD].w = wD; -} - -bool b2GearJoint::SolvePositionConstraints(const b2SolverData& data) -{ - b2Vec2 cA = data.positions[m_indexA].c; - float32 aA = data.positions[m_indexA].a; - b2Vec2 cB = data.positions[m_indexB].c; - float32 aB = data.positions[m_indexB].a; - b2Vec2 cC = data.positions[m_indexC].c; - float32 aC = data.positions[m_indexC].a; - b2Vec2 cD = data.positions[m_indexD].c; - float32 aD = data.positions[m_indexD].a; - - b2Rot qA(aA), qB(aB), qC(aC), qD(aD); - - float32 linearError = 0.0f; - - float32 coordinateA, coordinateB; - - b2Vec2 JvAC, JvBD; - float32 JwA, JwB, JwC, JwD; - float32 mass = 0.0f; - - if (m_typeA == e_revoluteJoint) - { - JvAC.SetZero(); - JwA = 1.0f; - JwC = 1.0f; - mass += m_iA + m_iC; - - coordinateA = aA - aC - m_referenceAngleA; - } - else - { - b2Vec2 u = b2Mul(qC, m_localAxisC); - b2Vec2 rC = b2Mul(qC, m_localAnchorC - m_lcC); - b2Vec2 rA = b2Mul(qA, m_localAnchorA - m_lcA); - JvAC = u; - JwC = b2Cross(rC, u); - JwA = b2Cross(rA, u); - mass += m_mC + m_mA + m_iC * JwC * JwC + m_iA * JwA * JwA; - - b2Vec2 pC = m_localAnchorC - m_lcC; - b2Vec2 pA = b2MulT(qC, rA + (cA - cC)); - coordinateA = b2Dot(pA - pC, m_localAxisC); - } - - if (m_typeB == e_revoluteJoint) - { - JvBD.SetZero(); - JwB = m_ratio; - JwD = m_ratio; - mass += m_ratio * m_ratio * (m_iB + m_iD); - - coordinateB = aB - aD - m_referenceAngleB; - } - else - { - b2Vec2 u = b2Mul(qD, m_localAxisD); - b2Vec2 rD = b2Mul(qD, m_localAnchorD - m_lcD); - b2Vec2 rB = b2Mul(qB, m_localAnchorB - m_lcB); - JvBD = m_ratio * u; - JwD = m_ratio * b2Cross(rD, u); - JwB = m_ratio * b2Cross(rB, u); - mass += m_ratio * m_ratio * (m_mD + m_mB) + m_iD * JwD * JwD + m_iB * JwB * JwB; - - b2Vec2 pD = m_localAnchorD - m_lcD; - b2Vec2 pB = b2MulT(qD, rB + (cB - cD)); - coordinateB = b2Dot(pB - pD, m_localAxisD); - } - - float32 C = (coordinateA + m_ratio * coordinateB) - m_constant; - - float32 impulse = 0.0f; - if (mass > 0.0f) - { - impulse = -C / mass; - } - - cA += m_mA * impulse * JvAC; - aA += m_iA * impulse * JwA; - cB += m_mB * impulse * JvBD; - aB += m_iB * impulse * JwB; - cC -= m_mC * impulse * JvAC; - aC -= m_iC * impulse * JwC; - cD -= m_mD * impulse * JvBD; - aD -= m_iD * impulse * JwD; - - data.positions[m_indexA].c = cA; - data.positions[m_indexA].a = aA; - data.positions[m_indexB].c = cB; - data.positions[m_indexB].a = aB; - data.positions[m_indexC].c = cC; - data.positions[m_indexC].a = aC; - data.positions[m_indexD].c = cD; - data.positions[m_indexD].a = aD; - - // TODO_ERIN not implemented - return linearError < b2_linearSlop; -} - -b2Vec2 b2GearJoint::GetAnchorA() const -{ - return m_bodyA->GetWorldPoint(m_localAnchorA); -} - -b2Vec2 b2GearJoint::GetAnchorB() const -{ - return m_bodyB->GetWorldPoint(m_localAnchorB); -} - -b2Vec2 b2GearJoint::GetReactionForce(float32 inv_dt) const -{ - b2Vec2 P = m_impulse * m_JvAC; - return inv_dt * P; -} - -float32 b2GearJoint::GetReactionTorque(float32 inv_dt) const -{ - float32 L = m_impulse * m_JwA; - return inv_dt * L; -} - -void b2GearJoint::SetRatio(float32 ratio) -{ - b2Assert(b2IsValid(ratio)); - m_ratio = ratio; -} - -float32 b2GearJoint::GetRatio() const -{ - return m_ratio; -} - -void b2GearJoint::Dump() -{ - int32 indexA = m_bodyA->m_islandIndex; - int32 indexB = m_bodyB->m_islandIndex; - - int32 index1 = m_joint1->m_index; - int32 index2 = m_joint2->m_index; - - b2Log(" b2GearJointDef jd;\n"); - b2Log(" jd.bodyA = bodies[%d];\n", indexA); - b2Log(" jd.bodyB = bodies[%d];\n", indexB); - b2Log(" jd.collideConnected = bool(%d);\n", m_collideConnected); - b2Log(" jd.joint1 = joints[%d];\n", index1); - b2Log(" jd.joint2 = joints[%d];\n", index2); - b2Log(" jd.ratio = %.15lef;\n", m_ratio); - b2Log(" joints[%d] = m_world->CreateJoint(&jd);\n", m_index); -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2GearJoint.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2GearJoint.h deleted file mode 100644 index 48cdfd8..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2GearJoint.h +++ /dev/null @@ -1,125 +0,0 @@ -/* -* Copyright (c) 2006-2011 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_GEAR_JOINT_H -#define B2_GEAR_JOINT_H - -#include - -/// Gear joint definition. This definition requires two existing -/// revolute or prismatic joints (any combination will work). -struct b2GearJointDef : public b2JointDef -{ - b2GearJointDef() - { - type = e_gearJoint; - joint1 = NULL; - joint2 = NULL; - ratio = 1.0f; - } - - /// The first revolute/prismatic joint attached to the gear joint. - b2Joint* joint1; - - /// The second revolute/prismatic joint attached to the gear joint. - b2Joint* joint2; - - /// The gear ratio. - /// @see b2GearJoint for explanation. - float32 ratio; -}; - -/// A gear joint is used to connect two joints together. Either joint -/// can be a revolute or prismatic joint. You specify a gear ratio -/// to bind the motions together: -/// coordinate1 + ratio * coordinate2 = constant -/// The ratio can be negative or positive. If one joint is a revolute joint -/// and the other joint is a prismatic joint, then the ratio will have units -/// of length or units of 1/length. -/// @warning You have to manually destroy the gear joint if joint1 or joint2 -/// is destroyed. -class b2GearJoint : public b2Joint -{ -public: - b2Vec2 GetAnchorA() const; - b2Vec2 GetAnchorB() const; - - b2Vec2 GetReactionForce(float32 inv_dt) const; - float32 GetReactionTorque(float32 inv_dt) const; - - /// Get the first joint. - b2Joint* GetJoint1() { return m_joint1; } - - /// Get the second joint. - b2Joint* GetJoint2() { return m_joint2; } - - /// Set/Get the gear ratio. - void SetRatio(float32 ratio); - float32 GetRatio() const; - - /// Dump joint to dmLog - void Dump(); - -protected: - - friend class b2Joint; - b2GearJoint(const b2GearJointDef* data); - - void InitVelocityConstraints(const b2SolverData& data); - void SolveVelocityConstraints(const b2SolverData& data); - bool SolvePositionConstraints(const b2SolverData& data); - - b2Joint* m_joint1; - b2Joint* m_joint2; - - b2JointType m_typeA; - b2JointType m_typeB; - - // Body A is connected to body C - // Body B is connected to body D - b2Body* m_bodyC; - b2Body* m_bodyD; - - // Solver shared - b2Vec2 m_localAnchorA; - b2Vec2 m_localAnchorB; - b2Vec2 m_localAnchorC; - b2Vec2 m_localAnchorD; - - b2Vec2 m_localAxisC; - b2Vec2 m_localAxisD; - - float32 m_referenceAngleA; - float32 m_referenceAngleB; - - float32 m_constant; - float32 m_ratio; - - float32 m_impulse; - - // Solver temp - int32 m_indexA, m_indexB, m_indexC, m_indexD; - b2Vec2 m_lcA, m_lcB, m_lcC, m_lcD; - float32 m_mA, m_mB, m_mC, m_mD; - float32 m_iA, m_iB, m_iC, m_iD; - b2Vec2 m_JvAC, m_JvBD; - float32 m_JwA, m_JwB, m_JwC, m_JwD; - float32 m_mass; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2Joint.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2Joint.cpp deleted file mode 100644 index 5091949..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2Joint.cpp +++ /dev/null @@ -1,211 +0,0 @@ -/* -* Copyright (c) 2006-2007 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include - -b2Joint* b2Joint::Create(const b2JointDef* def, b2BlockAllocator* allocator) -{ - b2Joint* joint = NULL; - - switch (def->type) - { - case e_distanceJoint: - { - void* mem = allocator->Allocate(sizeof(b2DistanceJoint)); - joint = new (mem) b2DistanceJoint(static_cast(def)); - } - break; - - case e_mouseJoint: - { - void* mem = allocator->Allocate(sizeof(b2MouseJoint)); - joint = new (mem) b2MouseJoint(static_cast(def)); - } - break; - - case e_prismaticJoint: - { - void* mem = allocator->Allocate(sizeof(b2PrismaticJoint)); - joint = new (mem) b2PrismaticJoint(static_cast(def)); - } - break; - - case e_revoluteJoint: - { - void* mem = allocator->Allocate(sizeof(b2RevoluteJoint)); - joint = new (mem) b2RevoluteJoint(static_cast(def)); - } - break; - - case e_pulleyJoint: - { - void* mem = allocator->Allocate(sizeof(b2PulleyJoint)); - joint = new (mem) b2PulleyJoint(static_cast(def)); - } - break; - - case e_gearJoint: - { - void* mem = allocator->Allocate(sizeof(b2GearJoint)); - joint = new (mem) b2GearJoint(static_cast(def)); - } - break; - - case e_wheelJoint: - { - void* mem = allocator->Allocate(sizeof(b2WheelJoint)); - joint = new (mem) b2WheelJoint(static_cast(def)); - } - break; - - case e_weldJoint: - { - void* mem = allocator->Allocate(sizeof(b2WeldJoint)); - joint = new (mem) b2WeldJoint(static_cast(def)); - } - break; - - case e_frictionJoint: - { - void* mem = allocator->Allocate(sizeof(b2FrictionJoint)); - joint = new (mem) b2FrictionJoint(static_cast(def)); - } - break; - - case e_ropeJoint: - { - void* mem = allocator->Allocate(sizeof(b2RopeJoint)); - joint = new (mem) b2RopeJoint(static_cast(def)); - } - break; - - case e_motorJoint: - { - void* mem = allocator->Allocate(sizeof(b2MotorJoint)); - joint = new (mem) b2MotorJoint(static_cast(def)); - } - break; - - default: - b2Assert(false); - break; - } - - return joint; -} - -void b2Joint::Destroy(b2Joint* joint, b2BlockAllocator* allocator) -{ - joint->~b2Joint(); - switch (joint->m_type) - { - case e_distanceJoint: - allocator->Free(joint, sizeof(b2DistanceJoint)); - break; - - case e_mouseJoint: - allocator->Free(joint, sizeof(b2MouseJoint)); - break; - - case e_prismaticJoint: - allocator->Free(joint, sizeof(b2PrismaticJoint)); - break; - - case e_revoluteJoint: - allocator->Free(joint, sizeof(b2RevoluteJoint)); - break; - - case e_pulleyJoint: - allocator->Free(joint, sizeof(b2PulleyJoint)); - break; - - case e_gearJoint: - allocator->Free(joint, sizeof(b2GearJoint)); - break; - - case e_wheelJoint: - allocator->Free(joint, sizeof(b2WheelJoint)); - break; - - case e_weldJoint: - allocator->Free(joint, sizeof(b2WeldJoint)); - break; - - case e_frictionJoint: - allocator->Free(joint, sizeof(b2FrictionJoint)); - break; - - case e_ropeJoint: - allocator->Free(joint, sizeof(b2RopeJoint)); - break; - - case e_motorJoint: - allocator->Free(joint, sizeof(b2MotorJoint)); - break; - - default: - b2Assert(false); - break; - } -} - -b2Joint::b2Joint(const b2JointDef* def) -{ - b2Assert(def->bodyA != def->bodyB); - - m_type = def->type; - m_prev = NULL; - m_next = NULL; - m_bodyA = def->bodyA; - m_bodyB = def->bodyB; - m_index = 0; - m_collideConnected = def->collideConnected; - m_islandFlag = false; - m_userData = def->userData; - - m_edgeA.joint = NULL; - m_edgeA.other = NULL; - m_edgeA.prev = NULL; - m_edgeA.next = NULL; - - m_edgeB.joint = NULL; - m_edgeB.other = NULL; - m_edgeB.prev = NULL; - m_edgeB.next = NULL; -} - -bool b2Joint::IsActive() const -{ - return m_bodyA->IsActive() && m_bodyB->IsActive(); -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2Joint.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2Joint.h deleted file mode 100644 index f6002e5..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2Joint.h +++ /dev/null @@ -1,226 +0,0 @@ -/* -* Copyright (c) 2006-2007 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_JOINT_H -#define B2_JOINT_H - -#include - -class b2Body; -class b2Joint; -struct b2SolverData; -class b2BlockAllocator; - -enum b2JointType -{ - e_unknownJoint, - e_revoluteJoint, - e_prismaticJoint, - e_distanceJoint, - e_pulleyJoint, - e_mouseJoint, - e_gearJoint, - e_wheelJoint, - e_weldJoint, - e_frictionJoint, - e_ropeJoint, - e_motorJoint -}; - -enum b2LimitState -{ - e_inactiveLimit, - e_atLowerLimit, - e_atUpperLimit, - e_equalLimits -}; - -struct b2Jacobian -{ - b2Vec2 linear; - float32 angularA; - float32 angularB; -}; - -/// A joint edge is used to connect bodies and joints together -/// in a joint graph where each body is a node and each joint -/// is an edge. A joint edge belongs to a doubly linked list -/// maintained in each attached body. Each joint has two joint -/// nodes, one for each attached body. -struct b2JointEdge -{ - b2Body* other; ///< provides quick access to the other body attached. - b2Joint* joint; ///< the joint - b2JointEdge* prev; ///< the previous joint edge in the body's joint list - b2JointEdge* next; ///< the next joint edge in the body's joint list -}; - -/// Joint definitions are used to construct joints. -struct b2JointDef -{ - b2JointDef() - { - type = e_unknownJoint; - userData = NULL; - bodyA = NULL; - bodyB = NULL; - collideConnected = false; - } - - /// The joint type is set automatically for concrete joint types. - b2JointType type; - - /// Use this to attach application specific data to your joints. - void* userData; - - /// The first attached body. - b2Body* bodyA; - - /// The second attached body. - b2Body* bodyB; - - /// Set this flag to true if the attached bodies should collide. - bool collideConnected; -}; - -/// The base joint class. Joints are used to constraint two bodies together in -/// various fashions. Some joints also feature limits and motors. -class b2Joint -{ -public: - - /// Get the type of the concrete joint. - b2JointType GetType() const; - - /// Get the first body attached to this joint. - b2Body* GetBodyA(); - - /// Get the second body attached to this joint. - b2Body* GetBodyB(); - - /// Get the anchor point on bodyA in world coordinates. - virtual b2Vec2 GetAnchorA() const = 0; - - /// Get the anchor point on bodyB in world coordinates. - virtual b2Vec2 GetAnchorB() const = 0; - - /// Get the reaction force on bodyB at the joint anchor in Newtons. - virtual b2Vec2 GetReactionForce(float32 inv_dt) const = 0; - - /// Get the reaction torque on bodyB in N*m. - virtual float32 GetReactionTorque(float32 inv_dt) const = 0; - - /// Get the next joint the world joint list. - b2Joint* GetNext(); - const b2Joint* GetNext() const; - - /// Get the user data pointer. - void* GetUserData() const; - - /// Set the user data pointer. - void SetUserData(void* data); - - /// Short-cut function to determine if either body is inactive. - bool IsActive() const; - - /// Get collide connected. - /// Note: modifying the collide connect flag won't work correctly because - /// the flag is only checked when fixture AABBs begin to overlap. - bool GetCollideConnected() const; - - /// Dump this joint to the log file. - virtual void Dump() { b2Log("// Dump is not supported for this joint type.\n"); } - - /// Shift the origin for any points stored in world coordinates. - virtual void ShiftOrigin(const b2Vec2& newOrigin) { B2_NOT_USED(newOrigin); } - -protected: - friend class b2World; - friend class b2Body; - friend class b2Island; - friend class b2GearJoint; - - static b2Joint* Create(const b2JointDef* def, b2BlockAllocator* allocator); - static void Destroy(b2Joint* joint, b2BlockAllocator* allocator); - - b2Joint(const b2JointDef* def); - virtual ~b2Joint() {} - - virtual void InitVelocityConstraints(const b2SolverData& data) = 0; - virtual void SolveVelocityConstraints(const b2SolverData& data) = 0; - - // This returns true if the position errors are within tolerance. - virtual bool SolvePositionConstraints(const b2SolverData& data) = 0; - - b2JointType m_type; - b2Joint* m_prev; - b2Joint* m_next; - b2JointEdge m_edgeA; - b2JointEdge m_edgeB; - b2Body* m_bodyA; - b2Body* m_bodyB; - - int32 m_index; - - bool m_islandFlag; - bool m_collideConnected; - - void* m_userData; -}; - -inline b2JointType b2Joint::GetType() const -{ - return m_type; -} - -inline b2Body* b2Joint::GetBodyA() -{ - return m_bodyA; -} - -inline b2Body* b2Joint::GetBodyB() -{ - return m_bodyB; -} - -inline b2Joint* b2Joint::GetNext() -{ - return m_next; -} - -inline const b2Joint* b2Joint::GetNext() const -{ - return m_next; -} - -inline void* b2Joint::GetUserData() const -{ - return m_userData; -} - -inline void b2Joint::SetUserData(void* data) -{ - m_userData = data; -} - -inline bool b2Joint::GetCollideConnected() const -{ - return m_collideConnected; -} - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2MotorJoint.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2MotorJoint.cpp deleted file mode 100644 index a07a640..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2MotorJoint.cpp +++ /dev/null @@ -1,304 +0,0 @@ -/* -* Copyright (c) 2006-2012 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include -#include -#include - -// Point-to-point constraint -// Cdot = v2 - v1 -// = v2 + cross(w2, r2) - v1 - cross(w1, r1) -// J = [-I -r1_skew I r2_skew ] -// Identity used: -// w k % (rx i + ry j) = w * (-ry i + rx j) - -// Angle constraint -// Cdot = w2 - w1 -// J = [0 0 -1 0 0 1] -// K = invI1 + invI2 - -void b2MotorJointDef::Initialize(b2Body* bA, b2Body* bB) -{ - bodyA = bA; - bodyB = bB; - b2Vec2 xB = bodyB->GetPosition(); - linearOffset = bodyA->GetLocalPoint(xB); - - float32 angleA = bodyA->GetAngle(); - float32 angleB = bodyB->GetAngle(); - angularOffset = angleB - angleA; -} - -b2MotorJoint::b2MotorJoint(const b2MotorJointDef* def) -: b2Joint(def) -{ - m_linearOffset = def->linearOffset; - m_angularOffset = def->angularOffset; - - m_linearImpulse.SetZero(); - m_angularImpulse = 0.0f; - - m_maxForce = def->maxForce; - m_maxTorque = def->maxTorque; - m_correctionFactor = def->correctionFactor; -} - -void b2MotorJoint::InitVelocityConstraints(const b2SolverData& data) -{ - m_indexA = m_bodyA->m_islandIndex; - m_indexB = m_bodyB->m_islandIndex; - m_localCenterA = m_bodyA->m_sweep.localCenter; - m_localCenterB = m_bodyB->m_sweep.localCenter; - m_invMassA = m_bodyA->m_invMass; - m_invMassB = m_bodyB->m_invMass; - m_invIA = m_bodyA->m_invI; - m_invIB = m_bodyB->m_invI; - - b2Vec2 cA = data.positions[m_indexA].c; - float32 aA = data.positions[m_indexA].a; - b2Vec2 vA = data.velocities[m_indexA].v; - float32 wA = data.velocities[m_indexA].w; - - b2Vec2 cB = data.positions[m_indexB].c; - float32 aB = data.positions[m_indexB].a; - b2Vec2 vB = data.velocities[m_indexB].v; - float32 wB = data.velocities[m_indexB].w; - - b2Rot qA(aA), qB(aB); - - // Compute the effective mass matrix. - m_rA = b2Mul(qA, -m_localCenterA); - m_rB = b2Mul(qB, -m_localCenterB); - - // J = [-I -r1_skew I r2_skew] - // [ 0 -1 0 1] - // r_skew = [-ry; rx] - - // Matlab - // K = [ mA+r1y^2*iA+mB+r2y^2*iB, -r1y*iA*r1x-r2y*iB*r2x, -r1y*iA-r2y*iB] - // [ -r1y*iA*r1x-r2y*iB*r2x, mA+r1x^2*iA+mB+r2x^2*iB, r1x*iA+r2x*iB] - // [ -r1y*iA-r2y*iB, r1x*iA+r2x*iB, iA+iB] - - float32 mA = m_invMassA, mB = m_invMassB; - float32 iA = m_invIA, iB = m_invIB; - - b2Mat22 K; - K.ex.x = mA + mB + iA * m_rA.y * m_rA.y + iB * m_rB.y * m_rB.y; - K.ex.y = -iA * m_rA.x * m_rA.y - iB * m_rB.x * m_rB.y; - K.ey.x = K.ex.y; - K.ey.y = mA + mB + iA * m_rA.x * m_rA.x + iB * m_rB.x * m_rB.x; - - m_linearMass = K.GetInverse(); - - m_angularMass = iA + iB; - if (m_angularMass > 0.0f) - { - m_angularMass = 1.0f / m_angularMass; - } - - m_linearError = cB + m_rB - cA - m_rA - b2Mul(qA, m_linearOffset); - m_angularError = aB - aA - m_angularOffset; - - if (data.step.warmStarting) - { - // Scale impulses to support a variable time step. - m_linearImpulse *= data.step.dtRatio; - m_angularImpulse *= data.step.dtRatio; - - b2Vec2 P(m_linearImpulse.x, m_linearImpulse.y); - vA -= mA * P; - wA -= iA * (b2Cross(m_rA, P) + m_angularImpulse); - vB += mB * P; - wB += iB * (b2Cross(m_rB, P) + m_angularImpulse); - } - else - { - m_linearImpulse.SetZero(); - m_angularImpulse = 0.0f; - } - - data.velocities[m_indexA].v = vA; - data.velocities[m_indexA].w = wA; - data.velocities[m_indexB].v = vB; - data.velocities[m_indexB].w = wB; -} - -void b2MotorJoint::SolveVelocityConstraints(const b2SolverData& data) -{ - b2Vec2 vA = data.velocities[m_indexA].v; - float32 wA = data.velocities[m_indexA].w; - b2Vec2 vB = data.velocities[m_indexB].v; - float32 wB = data.velocities[m_indexB].w; - - float32 mA = m_invMassA, mB = m_invMassB; - float32 iA = m_invIA, iB = m_invIB; - - float32 h = data.step.dt; - float32 inv_h = data.step.inv_dt; - - // Solve angular friction - { - float32 Cdot = wB - wA + inv_h * m_correctionFactor * m_angularError; - float32 impulse = -m_angularMass * Cdot; - - float32 oldImpulse = m_angularImpulse; - float32 maxImpulse = h * m_maxTorque; - m_angularImpulse = b2Clamp(m_angularImpulse + impulse, -maxImpulse, maxImpulse); - impulse = m_angularImpulse - oldImpulse; - - wA -= iA * impulse; - wB += iB * impulse; - } - - // Solve linear friction - { - b2Vec2 Cdot = vB + b2Cross(wB, m_rB) - vA - b2Cross(wA, m_rA) + inv_h * m_correctionFactor * m_linearError; - - b2Vec2 impulse = -b2Mul(m_linearMass, Cdot); - b2Vec2 oldImpulse = m_linearImpulse; - m_linearImpulse += impulse; - - float32 maxImpulse = h * m_maxForce; - - if (m_linearImpulse.LengthSquared() > maxImpulse * maxImpulse) - { - m_linearImpulse.Normalize(); - m_linearImpulse *= maxImpulse; - } - - impulse = m_linearImpulse - oldImpulse; - - vA -= mA * impulse; - wA -= iA * b2Cross(m_rA, impulse); - - vB += mB * impulse; - wB += iB * b2Cross(m_rB, impulse); - } - - data.velocities[m_indexA].v = vA; - data.velocities[m_indexA].w = wA; - data.velocities[m_indexB].v = vB; - data.velocities[m_indexB].w = wB; -} - -bool b2MotorJoint::SolvePositionConstraints(const b2SolverData& data) -{ - B2_NOT_USED(data); - - return true; -} - -b2Vec2 b2MotorJoint::GetAnchorA() const -{ - return m_bodyA->GetPosition(); -} - -b2Vec2 b2MotorJoint::GetAnchorB() const -{ - return m_bodyB->GetPosition(); -} - -b2Vec2 b2MotorJoint::GetReactionForce(float32 inv_dt) const -{ - return inv_dt * m_linearImpulse; -} - -float32 b2MotorJoint::GetReactionTorque(float32 inv_dt) const -{ - return inv_dt * m_angularImpulse; -} - -void b2MotorJoint::SetMaxForce(float32 force) -{ - b2Assert(b2IsValid(force) && force >= 0.0f); - m_maxForce = force; -} - -float32 b2MotorJoint::GetMaxForce() const -{ - return m_maxForce; -} - -void b2MotorJoint::SetMaxTorque(float32 torque) -{ - b2Assert(b2IsValid(torque) && torque >= 0.0f); - m_maxTorque = torque; -} - -float32 b2MotorJoint::GetMaxTorque() const -{ - return m_maxTorque; -} - -void b2MotorJoint::SetCorrectionFactor(float32 factor) -{ - b2Assert(b2IsValid(factor) && 0.0f <= factor && factor <= 1.0f); - m_correctionFactor = factor; -} - -float32 b2MotorJoint::GetCorrectionFactor() const -{ - return m_correctionFactor; -} - -void b2MotorJoint::SetLinearOffset(const b2Vec2& linearOffset) -{ - if (linearOffset.x != m_linearOffset.x || linearOffset.y != m_linearOffset.y) - { - m_bodyA->SetAwake(true); - m_bodyB->SetAwake(true); - m_linearOffset = linearOffset; - } -} - -const b2Vec2& b2MotorJoint::GetLinearOffset() const -{ - return m_linearOffset; -} - -void b2MotorJoint::SetAngularOffset(float32 angularOffset) -{ - if (angularOffset != m_angularOffset) - { - m_bodyA->SetAwake(true); - m_bodyB->SetAwake(true); - m_angularOffset = angularOffset; - } -} - -float32 b2MotorJoint::GetAngularOffset() const -{ - return m_angularOffset; -} - -void b2MotorJoint::Dump() -{ - int32 indexA = m_bodyA->m_islandIndex; - int32 indexB = m_bodyB->m_islandIndex; - - b2Log(" b2MotorJointDef jd;\n"); - b2Log(" jd.bodyA = bodies[%d];\n", indexA); - b2Log(" jd.bodyB = bodies[%d];\n", indexB); - b2Log(" jd.collideConnected = bool(%d);\n", m_collideConnected); - b2Log(" jd.linearOffset.Set(%.15lef, %.15lef);\n", m_linearOffset.x, m_linearOffset.y); - b2Log(" jd.angularOffset = %.15lef;\n", m_angularOffset); - b2Log(" jd.maxForce = %.15lef;\n", m_maxForce); - b2Log(" jd.maxTorque = %.15lef;\n", m_maxTorque); - b2Log(" jd.correctionFactor = %.15lef;\n", m_correctionFactor); - b2Log(" joints[%d] = m_world->CreateJoint(&jd);\n", m_index); -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2MotorJoint.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2MotorJoint.h deleted file mode 100644 index 486225b..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2MotorJoint.h +++ /dev/null @@ -1,133 +0,0 @@ -/* -* Copyright (c) 2006-2012 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_MOTOR_JOINT_H -#define B2_MOTOR_JOINT_H - -#include - -/// Motor joint definition. -struct b2MotorJointDef : public b2JointDef -{ - b2MotorJointDef() - { - type = e_motorJoint; - linearOffset.SetZero(); - angularOffset = 0.0f; - maxForce = 1.0f; - maxTorque = 1.0f; - correctionFactor = 0.3f; - } - - /// Initialize the bodies and offsets using the current transforms. - void Initialize(b2Body* bodyA, b2Body* bodyB); - - /// Position of bodyB minus the position of bodyA, in bodyA's frame, in meters. - b2Vec2 linearOffset; - - /// The bodyB angle minus bodyA angle in radians. - float32 angularOffset; - - /// The maximum motor force in N. - float32 maxForce; - - /// The maximum motor torque in N-m. - float32 maxTorque; - - /// Position correction factor in the range [0,1]. - float32 correctionFactor; -}; - -/// A motor joint is used to control the relative motion -/// between two bodies. A typical usage is to control the movement -/// of a dynamic body with respect to the ground. -class b2MotorJoint : public b2Joint -{ -public: - b2Vec2 GetAnchorA() const; - b2Vec2 GetAnchorB() const; - - b2Vec2 GetReactionForce(float32 inv_dt) const; - float32 GetReactionTorque(float32 inv_dt) const; - - /// Set/get the target linear offset, in frame A, in meters. - void SetLinearOffset(const b2Vec2& linearOffset); - const b2Vec2& GetLinearOffset() const; - - /// Set/get the target angular offset, in radians. - void SetAngularOffset(float32 angularOffset); - float32 GetAngularOffset() const; - - /// Set the maximum friction force in N. - void SetMaxForce(float32 force); - - /// Get the maximum friction force in N. - float32 GetMaxForce() const; - - /// Set the maximum friction torque in N*m. - void SetMaxTorque(float32 torque); - - /// Get the maximum friction torque in N*m. - float32 GetMaxTorque() const; - - /// Set the position correction factor in the range [0,1]. - void SetCorrectionFactor(float32 factor); - - /// Get the position correction factor in the range [0,1]. - float32 GetCorrectionFactor() const; - - /// Dump to b2Log - void Dump(); - -protected: - - friend class b2Joint; - - b2MotorJoint(const b2MotorJointDef* def); - - void InitVelocityConstraints(const b2SolverData& data); - void SolveVelocityConstraints(const b2SolverData& data); - bool SolvePositionConstraints(const b2SolverData& data); - - // Solver shared - b2Vec2 m_linearOffset; - float32 m_angularOffset; - b2Vec2 m_linearImpulse; - float32 m_angularImpulse; - float32 m_maxForce; - float32 m_maxTorque; - float32 m_correctionFactor; - - // Solver temp - int32 m_indexA; - int32 m_indexB; - b2Vec2 m_rA; - b2Vec2 m_rB; - b2Vec2 m_localCenterA; - b2Vec2 m_localCenterB; - b2Vec2 m_linearError; - float32 m_angularError; - float32 m_invMassA; - float32 m_invMassB; - float32 m_invIA; - float32 m_invIB; - b2Mat22 m_linearMass; - float32 m_angularMass; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2MouseJoint.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2MouseJoint.cpp deleted file mode 100644 index eb1de9d..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2MouseJoint.cpp +++ /dev/null @@ -1,222 +0,0 @@ -/* -* Copyright (c) 2006-2007 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include -#include -#include - -// p = attached point, m = mouse point -// C = p - m -// Cdot = v -// = v + cross(w, r) -// J = [I r_skew] -// Identity used: -// w k % (rx i + ry j) = w * (-ry i + rx j) - -b2MouseJoint::b2MouseJoint(const b2MouseJointDef* def) -: b2Joint(def) -{ - b2Assert(def->target.IsValid()); - b2Assert(b2IsValid(def->maxForce) && def->maxForce >= 0.0f); - b2Assert(b2IsValid(def->frequencyHz) && def->frequencyHz >= 0.0f); - b2Assert(b2IsValid(def->dampingRatio) && def->dampingRatio >= 0.0f); - - m_targetA = def->target; - m_localAnchorB = b2MulT(m_bodyB->GetTransform(), m_targetA); - - m_maxForce = def->maxForce; - m_impulse.SetZero(); - - m_frequencyHz = def->frequencyHz; - m_dampingRatio = def->dampingRatio; - - m_beta = 0.0f; - m_gamma = 0.0f; -} - -void b2MouseJoint::SetTarget(const b2Vec2& target) -{ - if (m_bodyB->IsAwake() == false) - { - m_bodyB->SetAwake(true); - } - m_targetA = target; -} - -const b2Vec2& b2MouseJoint::GetTarget() const -{ - return m_targetA; -} - -void b2MouseJoint::SetMaxForce(float32 force) -{ - m_maxForce = force; -} - -float32 b2MouseJoint::GetMaxForce() const -{ - return m_maxForce; -} - -void b2MouseJoint::SetFrequency(float32 hz) -{ - m_frequencyHz = hz; -} - -float32 b2MouseJoint::GetFrequency() const -{ - return m_frequencyHz; -} - -void b2MouseJoint::SetDampingRatio(float32 ratio) -{ - m_dampingRatio = ratio; -} - -float32 b2MouseJoint::GetDampingRatio() const -{ - return m_dampingRatio; -} - -void b2MouseJoint::InitVelocityConstraints(const b2SolverData& data) -{ - m_indexB = m_bodyB->m_islandIndex; - m_localCenterB = m_bodyB->m_sweep.localCenter; - m_invMassB = m_bodyB->m_invMass; - m_invIB = m_bodyB->m_invI; - - b2Vec2 cB = data.positions[m_indexB].c; - float32 aB = data.positions[m_indexB].a; - b2Vec2 vB = data.velocities[m_indexB].v; - float32 wB = data.velocities[m_indexB].w; - - b2Rot qB(aB); - - float32 mass = m_bodyB->GetMass(); - - // Frequency - float32 omega = 2.0f * b2_pi * m_frequencyHz; - - // Damping coefficient - float32 d = 2.0f * mass * m_dampingRatio * omega; - - // Spring stiffness - float32 k = mass * (omega * omega); - - // magic formulas - // gamma has units of inverse mass. - // beta has units of inverse time. - float32 h = data.step.dt; - b2Assert(d + h * k > b2_epsilon); - m_gamma = h * (d + h * k); - if (m_gamma != 0.0f) - { - m_gamma = 1.0f / m_gamma; - } - m_beta = h * k * m_gamma; - - // Compute the effective mass matrix. - m_rB = b2Mul(qB, m_localAnchorB - m_localCenterB); - - // K = [(1/m1 + 1/m2) * eye(2) - skew(r1) * invI1 * skew(r1) - skew(r2) * invI2 * skew(r2)] - // = [1/m1+1/m2 0 ] + invI1 * [r1.y*r1.y -r1.x*r1.y] + invI2 * [r1.y*r1.y -r1.x*r1.y] - // [ 0 1/m1+1/m2] [-r1.x*r1.y r1.x*r1.x] [-r1.x*r1.y r1.x*r1.x] - b2Mat22 K; - K.ex.x = m_invMassB + m_invIB * m_rB.y * m_rB.y + m_gamma; - K.ex.y = -m_invIB * m_rB.x * m_rB.y; - K.ey.x = K.ex.y; - K.ey.y = m_invMassB + m_invIB * m_rB.x * m_rB.x + m_gamma; - - m_mass = K.GetInverse(); - - m_C = cB + m_rB - m_targetA; - m_C *= m_beta; - - // Cheat with some damping - wB *= 0.98f; - - if (data.step.warmStarting) - { - m_impulse *= data.step.dtRatio; - vB += m_invMassB * m_impulse; - wB += m_invIB * b2Cross(m_rB, m_impulse); - } - else - { - m_impulse.SetZero(); - } - - data.velocities[m_indexB].v = vB; - data.velocities[m_indexB].w = wB; -} - -void b2MouseJoint::SolveVelocityConstraints(const b2SolverData& data) -{ - b2Vec2 vB = data.velocities[m_indexB].v; - float32 wB = data.velocities[m_indexB].w; - - // Cdot = v + cross(w, r) - b2Vec2 Cdot = vB + b2Cross(wB, m_rB); - b2Vec2 impulse = b2Mul(m_mass, -(Cdot + m_C + m_gamma * m_impulse)); - - b2Vec2 oldImpulse = m_impulse; - m_impulse += impulse; - float32 maxImpulse = data.step.dt * m_maxForce; - if (m_impulse.LengthSquared() > maxImpulse * maxImpulse) - { - m_impulse *= maxImpulse / m_impulse.Length(); - } - impulse = m_impulse - oldImpulse; - - vB += m_invMassB * impulse; - wB += m_invIB * b2Cross(m_rB, impulse); - - data.velocities[m_indexB].v = vB; - data.velocities[m_indexB].w = wB; -} - -bool b2MouseJoint::SolvePositionConstraints(const b2SolverData& data) -{ - B2_NOT_USED(data); - return true; -} - -b2Vec2 b2MouseJoint::GetAnchorA() const -{ - return m_targetA; -} - -b2Vec2 b2MouseJoint::GetAnchorB() const -{ - return m_bodyB->GetWorldPoint(m_localAnchorB); -} - -b2Vec2 b2MouseJoint::GetReactionForce(float32 inv_dt) const -{ - return inv_dt * m_impulse; -} - -float32 b2MouseJoint::GetReactionTorque(float32 inv_dt) const -{ - return inv_dt * 0.0f; -} - -void b2MouseJoint::ShiftOrigin(const b2Vec2& newOrigin) -{ - m_targetA -= newOrigin; -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2MouseJoint.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2MouseJoint.h deleted file mode 100644 index aba70ec..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2MouseJoint.h +++ /dev/null @@ -1,129 +0,0 @@ -/* -* Copyright (c) 2006-2007 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_MOUSE_JOINT_H -#define B2_MOUSE_JOINT_H - -#include - -/// Mouse joint definition. This requires a world target point, -/// tuning parameters, and the time step. -struct b2MouseJointDef : public b2JointDef -{ - b2MouseJointDef() - { - type = e_mouseJoint; - target.Set(0.0f, 0.0f); - maxForce = 0.0f; - frequencyHz = 5.0f; - dampingRatio = 0.7f; - } - - /// The initial world target point. This is assumed - /// to coincide with the body anchor initially. - b2Vec2 target; - - /// The maximum constraint force that can be exerted - /// to move the candidate body. Usually you will express - /// as some multiple of the weight (multiplier * mass * gravity). - float32 maxForce; - - /// The response speed. - float32 frequencyHz; - - /// The damping ratio. 0 = no damping, 1 = critical damping. - float32 dampingRatio; -}; - -/// A mouse joint is used to make a point on a body track a -/// specified world point. This a soft constraint with a maximum -/// force. This allows the constraint to stretch and without -/// applying huge forces. -/// NOTE: this joint is not documented in the manual because it was -/// developed to be used in the testbed. If you want to learn how to -/// use the mouse joint, look at the testbed. -class b2MouseJoint : public b2Joint -{ -public: - - /// Implements b2Joint. - b2Vec2 GetAnchorA() const; - - /// Implements b2Joint. - b2Vec2 GetAnchorB() const; - - /// Implements b2Joint. - b2Vec2 GetReactionForce(float32 inv_dt) const; - - /// Implements b2Joint. - float32 GetReactionTorque(float32 inv_dt) const; - - /// Use this to update the target point. - void SetTarget(const b2Vec2& target); - const b2Vec2& GetTarget() const; - - /// Set/get the maximum force in Newtons. - void SetMaxForce(float32 force); - float32 GetMaxForce() const; - - /// Set/get the frequency in Hertz. - void SetFrequency(float32 hz); - float32 GetFrequency() const; - - /// Set/get the damping ratio (dimensionless). - void SetDampingRatio(float32 ratio); - float32 GetDampingRatio() const; - - /// The mouse joint does not support dumping. - void Dump() { b2Log("Mouse joint dumping is not supported.\n"); } - - /// Implement b2Joint::ShiftOrigin - void ShiftOrigin(const b2Vec2& newOrigin); - -protected: - friend class b2Joint; - - b2MouseJoint(const b2MouseJointDef* def); - - void InitVelocityConstraints(const b2SolverData& data); - void SolveVelocityConstraints(const b2SolverData& data); - bool SolvePositionConstraints(const b2SolverData& data); - - b2Vec2 m_localAnchorB; - b2Vec2 m_targetA; - float32 m_frequencyHz; - float32 m_dampingRatio; - float32 m_beta; - - // Solver shared - b2Vec2 m_impulse; - float32 m_maxForce; - float32 m_gamma; - - // Solver temp - int32 m_indexA; - int32 m_indexB; - b2Vec2 m_rB; - b2Vec2 m_localCenterB; - float32 m_invMassB; - float32 m_invIB; - b2Mat22 m_mass; - b2Vec2 m_C; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2PrismaticJoint.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2PrismaticJoint.cpp deleted file mode 100644 index 171b012..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2PrismaticJoint.cpp +++ /dev/null @@ -1,626 +0,0 @@ -/* -* Copyright (c) 2006-2011 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include -#include -#include - -// Linear constraint (point-to-line) -// d = p2 - p1 = x2 + r2 - x1 - r1 -// C = dot(perp, d) -// Cdot = dot(d, cross(w1, perp)) + dot(perp, v2 + cross(w2, r2) - v1 - cross(w1, r1)) -// = -dot(perp, v1) - dot(cross(d + r1, perp), w1) + dot(perp, v2) + dot(cross(r2, perp), v2) -// J = [-perp, -cross(d + r1, perp), perp, cross(r2,perp)] -// -// Angular constraint -// C = a2 - a1 + a_initial -// Cdot = w2 - w1 -// J = [0 0 -1 0 0 1] -// -// K = J * invM * JT -// -// J = [-a -s1 a s2] -// [0 -1 0 1] -// a = perp -// s1 = cross(d + r1, a) = cross(p2 - x1, a) -// s2 = cross(r2, a) = cross(p2 - x2, a) - - -// Motor/Limit linear constraint -// C = dot(ax1, d) -// Cdot = = -dot(ax1, v1) - dot(cross(d + r1, ax1), w1) + dot(ax1, v2) + dot(cross(r2, ax1), v2) -// J = [-ax1 -cross(d+r1,ax1) ax1 cross(r2,ax1)] - -// Block Solver -// We develop a block solver that includes the joint limit. This makes the limit stiff (inelastic) even -// when the mass has poor distribution (leading to large torques about the joint anchor points). -// -// The Jacobian has 3 rows: -// J = [-uT -s1 uT s2] // linear -// [0 -1 0 1] // angular -// [-vT -a1 vT a2] // limit -// -// u = perp -// v = axis -// s1 = cross(d + r1, u), s2 = cross(r2, u) -// a1 = cross(d + r1, v), a2 = cross(r2, v) - -// M * (v2 - v1) = JT * df -// J * v2 = bias -// -// v2 = v1 + invM * JT * df -// J * (v1 + invM * JT * df) = bias -// K * df = bias - J * v1 = -Cdot -// K = J * invM * JT -// Cdot = J * v1 - bias -// -// Now solve for f2. -// df = f2 - f1 -// K * (f2 - f1) = -Cdot -// f2 = invK * (-Cdot) + f1 -// -// Clamp accumulated limit impulse. -// lower: f2(3) = max(f2(3), 0) -// upper: f2(3) = min(f2(3), 0) -// -// Solve for correct f2(1:2) -// K(1:2, 1:2) * f2(1:2) = -Cdot(1:2) - K(1:2,3) * f2(3) + K(1:2,1:3) * f1 -// = -Cdot(1:2) - K(1:2,3) * f2(3) + K(1:2,1:2) * f1(1:2) + K(1:2,3) * f1(3) -// K(1:2, 1:2) * f2(1:2) = -Cdot(1:2) - K(1:2,3) * (f2(3) - f1(3)) + K(1:2,1:2) * f1(1:2) -// f2(1:2) = invK(1:2,1:2) * (-Cdot(1:2) - K(1:2,3) * (f2(3) - f1(3))) + f1(1:2) -// -// Now compute impulse to be applied: -// df = f2 - f1 - -void b2PrismaticJointDef::Initialize(b2Body* bA, b2Body* bB, const b2Vec2& anchor, const b2Vec2& axis) -{ - bodyA = bA; - bodyB = bB; - localAnchorA = bodyA->GetLocalPoint(anchor); - localAnchorB = bodyB->GetLocalPoint(anchor); - localAxisA = bodyA->GetLocalVector(axis); - referenceAngle = bodyB->GetAngle() - bodyA->GetAngle(); -} - -b2PrismaticJoint::b2PrismaticJoint(const b2PrismaticJointDef* def) -: b2Joint(def) -{ - m_localAnchorA = def->localAnchorA; - m_localAnchorB = def->localAnchorB; - m_localXAxisA = def->localAxisA; - m_localXAxisA.Normalize(); - m_localYAxisA = b2Cross(1.0f, m_localXAxisA); - m_referenceAngle = def->referenceAngle; - - m_impulse.SetZero(); - m_motorMass = 0.0f; - m_motorImpulse = 0.0f; - - m_lowerTranslation = def->lowerTranslation; - m_upperTranslation = def->upperTranslation; - m_maxMotorForce = def->maxMotorForce; - m_motorSpeed = def->motorSpeed; - m_enableLimit = def->enableLimit; - m_enableMotor = def->enableMotor; - m_limitState = e_inactiveLimit; - - m_axis.SetZero(); - m_perp.SetZero(); -} - -void b2PrismaticJoint::InitVelocityConstraints(const b2SolverData& data) -{ - m_indexA = m_bodyA->m_islandIndex; - m_indexB = m_bodyB->m_islandIndex; - m_localCenterA = m_bodyA->m_sweep.localCenter; - m_localCenterB = m_bodyB->m_sweep.localCenter; - m_invMassA = m_bodyA->m_invMass; - m_invMassB = m_bodyB->m_invMass; - m_invIA = m_bodyA->m_invI; - m_invIB = m_bodyB->m_invI; - - b2Vec2 cA = data.positions[m_indexA].c; - float32 aA = data.positions[m_indexA].a; - b2Vec2 vA = data.velocities[m_indexA].v; - float32 wA = data.velocities[m_indexA].w; - - b2Vec2 cB = data.positions[m_indexB].c; - float32 aB = data.positions[m_indexB].a; - b2Vec2 vB = data.velocities[m_indexB].v; - float32 wB = data.velocities[m_indexB].w; - - b2Rot qA(aA), qB(aB); - - // Compute the effective masses. - b2Vec2 rA = b2Mul(qA, m_localAnchorA - m_localCenterA); - b2Vec2 rB = b2Mul(qB, m_localAnchorB - m_localCenterB); - b2Vec2 d = (cB - cA) + rB - rA; - - float32 mA = m_invMassA, mB = m_invMassB; - float32 iA = m_invIA, iB = m_invIB; - - // Compute motor Jacobian and effective mass. - { - m_axis = b2Mul(qA, m_localXAxisA); - m_a1 = b2Cross(d + rA, m_axis); - m_a2 = b2Cross(rB, m_axis); - - m_motorMass = mA + mB + iA * m_a1 * m_a1 + iB * m_a2 * m_a2; - if (m_motorMass > 0.0f) - { - m_motorMass = 1.0f / m_motorMass; - } - } - - // Prismatic constraint. - { - m_perp = b2Mul(qA, m_localYAxisA); - - m_s1 = b2Cross(d + rA, m_perp); - m_s2 = b2Cross(rB, m_perp); - - float32 k11 = mA + mB + iA * m_s1 * m_s1 + iB * m_s2 * m_s2; - float32 k12 = iA * m_s1 + iB * m_s2; - float32 k13 = iA * m_s1 * m_a1 + iB * m_s2 * m_a2; - float32 k22 = iA + iB; - if (k22 == 0.0f) - { - // For bodies with fixed rotation. - k22 = 1.0f; - } - float32 k23 = iA * m_a1 + iB * m_a2; - float32 k33 = mA + mB + iA * m_a1 * m_a1 + iB * m_a2 * m_a2; - - m_K.ex.Set(k11, k12, k13); - m_K.ey.Set(k12, k22, k23); - m_K.ez.Set(k13, k23, k33); - } - - // Compute motor and limit terms. - if (m_enableLimit) - { - float32 jointTranslation = b2Dot(m_axis, d); - if (b2Abs(m_upperTranslation - m_lowerTranslation) < 2.0f * b2_linearSlop) - { - m_limitState = e_equalLimits; - } - else if (jointTranslation <= m_lowerTranslation) - { - if (m_limitState != e_atLowerLimit) - { - m_limitState = e_atLowerLimit; - m_impulse.z = 0.0f; - } - } - else if (jointTranslation >= m_upperTranslation) - { - if (m_limitState != e_atUpperLimit) - { - m_limitState = e_atUpperLimit; - m_impulse.z = 0.0f; - } - } - else - { - m_limitState = e_inactiveLimit; - m_impulse.z = 0.0f; - } - } - else - { - m_limitState = e_inactiveLimit; - m_impulse.z = 0.0f; - } - - if (m_enableMotor == false) - { - m_motorImpulse = 0.0f; - } - - if (data.step.warmStarting) - { - // Account for variable time step. - m_impulse *= data.step.dtRatio; - m_motorImpulse *= data.step.dtRatio; - - b2Vec2 P = m_impulse.x * m_perp + (m_motorImpulse + m_impulse.z) * m_axis; - float32 LA = m_impulse.x * m_s1 + m_impulse.y + (m_motorImpulse + m_impulse.z) * m_a1; - float32 LB = m_impulse.x * m_s2 + m_impulse.y + (m_motorImpulse + m_impulse.z) * m_a2; - - vA -= mA * P; - wA -= iA * LA; - - vB += mB * P; - wB += iB * LB; - } - else - { - m_impulse.SetZero(); - m_motorImpulse = 0.0f; - } - - data.velocities[m_indexA].v = vA; - data.velocities[m_indexA].w = wA; - data.velocities[m_indexB].v = vB; - data.velocities[m_indexB].w = wB; -} - -void b2PrismaticJoint::SolveVelocityConstraints(const b2SolverData& data) -{ - b2Vec2 vA = data.velocities[m_indexA].v; - float32 wA = data.velocities[m_indexA].w; - b2Vec2 vB = data.velocities[m_indexB].v; - float32 wB = data.velocities[m_indexB].w; - - float32 mA = m_invMassA, mB = m_invMassB; - float32 iA = m_invIA, iB = m_invIB; - - // Solve linear motor constraint. - if (m_enableMotor && m_limitState != e_equalLimits) - { - float32 Cdot = b2Dot(m_axis, vB - vA) + m_a2 * wB - m_a1 * wA; - float32 impulse = m_motorMass * (m_motorSpeed - Cdot); - float32 oldImpulse = m_motorImpulse; - float32 maxImpulse = data.step.dt * m_maxMotorForce; - m_motorImpulse = b2Clamp(m_motorImpulse + impulse, -maxImpulse, maxImpulse); - impulse = m_motorImpulse - oldImpulse; - - b2Vec2 P = impulse * m_axis; - float32 LA = impulse * m_a1; - float32 LB = impulse * m_a2; - - vA -= mA * P; - wA -= iA * LA; - - vB += mB * P; - wB += iB * LB; - } - - b2Vec2 Cdot1; - Cdot1.x = b2Dot(m_perp, vB - vA) + m_s2 * wB - m_s1 * wA; - Cdot1.y = wB - wA; - - if (m_enableLimit && m_limitState != e_inactiveLimit) - { - // Solve prismatic and limit constraint in block form. - float32 Cdot2; - Cdot2 = b2Dot(m_axis, vB - vA) + m_a2 * wB - m_a1 * wA; - b2Vec3 Cdot(Cdot1.x, Cdot1.y, Cdot2); - - b2Vec3 f1 = m_impulse; - b2Vec3 df = m_K.Solve33(-Cdot); - m_impulse += df; - - if (m_limitState == e_atLowerLimit) - { - m_impulse.z = b2Max(m_impulse.z, 0.0f); - } - else if (m_limitState == e_atUpperLimit) - { - m_impulse.z = b2Min(m_impulse.z, 0.0f); - } - - // f2(1:2) = invK(1:2,1:2) * (-Cdot(1:2) - K(1:2,3) * (f2(3) - f1(3))) + f1(1:2) - b2Vec2 b = -Cdot1 - (m_impulse.z - f1.z) * b2Vec2(m_K.ez.x, m_K.ez.y); - b2Vec2 f2r = m_K.Solve22(b) + b2Vec2(f1.x, f1.y); - m_impulse.x = f2r.x; - m_impulse.y = f2r.y; - - df = m_impulse - f1; - - b2Vec2 P = df.x * m_perp + df.z * m_axis; - float32 LA = df.x * m_s1 + df.y + df.z * m_a1; - float32 LB = df.x * m_s2 + df.y + df.z * m_a2; - - vA -= mA * P; - wA -= iA * LA; - - vB += mB * P; - wB += iB * LB; - } - else - { - // Limit is inactive, just solve the prismatic constraint in block form. - b2Vec2 df = m_K.Solve22(-Cdot1); - m_impulse.x += df.x; - m_impulse.y += df.y; - - b2Vec2 P = df.x * m_perp; - float32 LA = df.x * m_s1 + df.y; - float32 LB = df.x * m_s2 + df.y; - - vA -= mA * P; - wA -= iA * LA; - - vB += mB * P; - wB += iB * LB; - } - - data.velocities[m_indexA].v = vA; - data.velocities[m_indexA].w = wA; - data.velocities[m_indexB].v = vB; - data.velocities[m_indexB].w = wB; -} - -bool b2PrismaticJoint::SolvePositionConstraints(const b2SolverData& data) -{ - b2Vec2 cA = data.positions[m_indexA].c; - float32 aA = data.positions[m_indexA].a; - b2Vec2 cB = data.positions[m_indexB].c; - float32 aB = data.positions[m_indexB].a; - - b2Rot qA(aA), qB(aB); - - float32 mA = m_invMassA, mB = m_invMassB; - float32 iA = m_invIA, iB = m_invIB; - - // Compute fresh Jacobians - b2Vec2 rA = b2Mul(qA, m_localAnchorA - m_localCenterA); - b2Vec2 rB = b2Mul(qB, m_localAnchorB - m_localCenterB); - b2Vec2 d = cB + rB - cA - rA; - - b2Vec2 axis = b2Mul(qA, m_localXAxisA); - float32 a1 = b2Cross(d + rA, axis); - float32 a2 = b2Cross(rB, axis); - b2Vec2 perp = b2Mul(qA, m_localYAxisA); - - float32 s1 = b2Cross(d + rA, perp); - float32 s2 = b2Cross(rB, perp); - - b2Vec3 impulse; - b2Vec2 C1; - C1.x = b2Dot(perp, d); - C1.y = aB - aA - m_referenceAngle; - - float32 linearError = b2Abs(C1.x); - float32 angularError = b2Abs(C1.y); - - bool active = false; - float32 C2 = 0.0f; - if (m_enableLimit) - { - float32 translation = b2Dot(axis, d); - if (b2Abs(m_upperTranslation - m_lowerTranslation) < 2.0f * b2_linearSlop) - { - // Prevent large angular corrections - C2 = b2Clamp(translation, -b2_maxLinearCorrection, b2_maxLinearCorrection); - linearError = b2Max(linearError, b2Abs(translation)); - active = true; - } - else if (translation <= m_lowerTranslation) - { - // Prevent large linear corrections and allow some slop. - C2 = b2Clamp(translation - m_lowerTranslation + b2_linearSlop, -b2_maxLinearCorrection, 0.0f); - linearError = b2Max(linearError, m_lowerTranslation - translation); - active = true; - } - else if (translation >= m_upperTranslation) - { - // Prevent large linear corrections and allow some slop. - C2 = b2Clamp(translation - m_upperTranslation - b2_linearSlop, 0.0f, b2_maxLinearCorrection); - linearError = b2Max(linearError, translation - m_upperTranslation); - active = true; - } - } - - if (active) - { - float32 k11 = mA + mB + iA * s1 * s1 + iB * s2 * s2; - float32 k12 = iA * s1 + iB * s2; - float32 k13 = iA * s1 * a1 + iB * s2 * a2; - float32 k22 = iA + iB; - if (k22 == 0.0f) - { - // For fixed rotation - k22 = 1.0f; - } - float32 k23 = iA * a1 + iB * a2; - float32 k33 = mA + mB + iA * a1 * a1 + iB * a2 * a2; - - b2Mat33 K; - K.ex.Set(k11, k12, k13); - K.ey.Set(k12, k22, k23); - K.ez.Set(k13, k23, k33); - - b2Vec3 C; - C.x = C1.x; - C.y = C1.y; - C.z = C2; - - impulse = K.Solve33(-C); - } - else - { - float32 k11 = mA + mB + iA * s1 * s1 + iB * s2 * s2; - float32 k12 = iA * s1 + iB * s2; - float32 k22 = iA + iB; - if (k22 == 0.0f) - { - k22 = 1.0f; - } - - b2Mat22 K; - K.ex.Set(k11, k12); - K.ey.Set(k12, k22); - - b2Vec2 impulse1 = K.Solve(-C1); - impulse.x = impulse1.x; - impulse.y = impulse1.y; - impulse.z = 0.0f; - } - - b2Vec2 P = impulse.x * perp + impulse.z * axis; - float32 LA = impulse.x * s1 + impulse.y + impulse.z * a1; - float32 LB = impulse.x * s2 + impulse.y + impulse.z * a2; - - cA -= mA * P; - aA -= iA * LA; - cB += mB * P; - aB += iB * LB; - - data.positions[m_indexA].c = cA; - data.positions[m_indexA].a = aA; - data.positions[m_indexB].c = cB; - data.positions[m_indexB].a = aB; - - return linearError <= b2_linearSlop && angularError <= b2_angularSlop; -} - -b2Vec2 b2PrismaticJoint::GetAnchorA() const -{ - return m_bodyA->GetWorldPoint(m_localAnchorA); -} - -b2Vec2 b2PrismaticJoint::GetAnchorB() const -{ - return m_bodyB->GetWorldPoint(m_localAnchorB); -} - -b2Vec2 b2PrismaticJoint::GetReactionForce(float32 inv_dt) const -{ - return inv_dt * (m_impulse.x * m_perp + (m_motorImpulse + m_impulse.z) * m_axis); -} - -float32 b2PrismaticJoint::GetReactionTorque(float32 inv_dt) const -{ - return inv_dt * m_impulse.y; -} - -float32 b2PrismaticJoint::GetJointTranslation() const -{ - b2Vec2 pA = m_bodyA->GetWorldPoint(m_localAnchorA); - b2Vec2 pB = m_bodyB->GetWorldPoint(m_localAnchorB); - b2Vec2 d = pB - pA; - b2Vec2 axis = m_bodyA->GetWorldVector(m_localXAxisA); - - float32 translation = b2Dot(d, axis); - return translation; -} - -float32 b2PrismaticJoint::GetJointSpeed() const -{ - b2Body* bA = m_bodyA; - b2Body* bB = m_bodyB; - - b2Vec2 rA = b2Mul(bA->m_xf.q, m_localAnchorA - bA->m_sweep.localCenter); - b2Vec2 rB = b2Mul(bB->m_xf.q, m_localAnchorB - bB->m_sweep.localCenter); - b2Vec2 p1 = bA->m_sweep.c + rA; - b2Vec2 p2 = bB->m_sweep.c + rB; - b2Vec2 d = p2 - p1; - b2Vec2 axis = b2Mul(bA->m_xf.q, m_localXAxisA); - - b2Vec2 vA = bA->m_linearVelocity; - b2Vec2 vB = bB->m_linearVelocity; - float32 wA = bA->m_angularVelocity; - float32 wB = bB->m_angularVelocity; - - float32 speed = b2Dot(d, b2Cross(wA, axis)) + b2Dot(axis, vB + b2Cross(wB, rB) - vA - b2Cross(wA, rA)); - return speed; -} - -bool b2PrismaticJoint::IsLimitEnabled() const -{ - return m_enableLimit; -} - -void b2PrismaticJoint::EnableLimit(bool flag) -{ - if (flag != m_enableLimit) - { - m_bodyA->SetAwake(true); - m_bodyB->SetAwake(true); - m_enableLimit = flag; - m_impulse.z = 0.0f; - } -} - -float32 b2PrismaticJoint::GetLowerLimit() const -{ - return m_lowerTranslation; -} - -float32 b2PrismaticJoint::GetUpperLimit() const -{ - return m_upperTranslation; -} - -void b2PrismaticJoint::SetLimits(float32 lower, float32 upper) -{ - b2Assert(lower <= upper); - if (lower != m_lowerTranslation || upper != m_upperTranslation) - { - m_bodyA->SetAwake(true); - m_bodyB->SetAwake(true); - m_lowerTranslation = lower; - m_upperTranslation = upper; - m_impulse.z = 0.0f; - } -} - -bool b2PrismaticJoint::IsMotorEnabled() const -{ - return m_enableMotor; -} - -void b2PrismaticJoint::EnableMotor(bool flag) -{ - m_bodyA->SetAwake(true); - m_bodyB->SetAwake(true); - m_enableMotor = flag; -} - -void b2PrismaticJoint::SetMotorSpeed(float32 speed) -{ - m_bodyA->SetAwake(true); - m_bodyB->SetAwake(true); - m_motorSpeed = speed; -} - -void b2PrismaticJoint::SetMaxMotorForce(float32 force) -{ - m_bodyA->SetAwake(true); - m_bodyB->SetAwake(true); - m_maxMotorForce = force; -} - -float32 b2PrismaticJoint::GetMotorForce(float32 inv_dt) const -{ - return inv_dt * m_motorImpulse; -} - -void b2PrismaticJoint::Dump() -{ - int32 indexA = m_bodyA->m_islandIndex; - int32 indexB = m_bodyB->m_islandIndex; - - b2Log(" b2PrismaticJointDef jd;\n"); - b2Log(" jd.bodyA = bodies[%d];\n", indexA); - b2Log(" jd.bodyB = bodies[%d];\n", indexB); - b2Log(" jd.collideConnected = bool(%d);\n", m_collideConnected); - b2Log(" jd.localAnchorA.Set(%.15lef, %.15lef);\n", m_localAnchorA.x, m_localAnchorA.y); - b2Log(" jd.localAnchorB.Set(%.15lef, %.15lef);\n", m_localAnchorB.x, m_localAnchorB.y); - b2Log(" jd.localAxisA.Set(%.15lef, %.15lef);\n", m_localXAxisA.x, m_localXAxisA.y); - b2Log(" jd.referenceAngle = %.15lef;\n", m_referenceAngle); - b2Log(" jd.enableLimit = bool(%d);\n", m_enableLimit); - b2Log(" jd.lowerTranslation = %.15lef;\n", m_lowerTranslation); - b2Log(" jd.upperTranslation = %.15lef;\n", m_upperTranslation); - b2Log(" jd.enableMotor = bool(%d);\n", m_enableMotor); - b2Log(" jd.motorSpeed = %.15lef;\n", m_motorSpeed); - b2Log(" jd.maxMotorForce = %.15lef;\n", m_maxMotorForce); - b2Log(" joints[%d] = m_world->CreateJoint(&jd);\n", m_index); -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2PrismaticJoint.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2PrismaticJoint.h deleted file mode 100644 index 8d0f342..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2PrismaticJoint.h +++ /dev/null @@ -1,196 +0,0 @@ -/* -* Copyright (c) 2006-2011 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_PRISMATIC_JOINT_H -#define B2_PRISMATIC_JOINT_H - -#include - -/// Prismatic joint definition. This requires defining a line of -/// motion using an axis and an anchor point. The definition uses local -/// anchor points and a local axis so that the initial configuration -/// can violate the constraint slightly. The joint translation is zero -/// when the local anchor points coincide in world space. Using local -/// anchors and a local axis helps when saving and loading a game. -struct b2PrismaticJointDef : public b2JointDef -{ - b2PrismaticJointDef() - { - type = e_prismaticJoint; - localAnchorA.SetZero(); - localAnchorB.SetZero(); - localAxisA.Set(1.0f, 0.0f); - referenceAngle = 0.0f; - enableLimit = false; - lowerTranslation = 0.0f; - upperTranslation = 0.0f; - enableMotor = false; - maxMotorForce = 0.0f; - motorSpeed = 0.0f; - } - - /// Initialize the bodies, anchors, axis, and reference angle using the world - /// anchor and unit world axis. - void Initialize(b2Body* bodyA, b2Body* bodyB, const b2Vec2& anchor, const b2Vec2& axis); - - /// The local anchor point relative to bodyA's origin. - b2Vec2 localAnchorA; - - /// The local anchor point relative to bodyB's origin. - b2Vec2 localAnchorB; - - /// The local translation unit axis in bodyA. - b2Vec2 localAxisA; - - /// The constrained angle between the bodies: bodyB_angle - bodyA_angle. - float32 referenceAngle; - - /// Enable/disable the joint limit. - bool enableLimit; - - /// The lower translation limit, usually in meters. - float32 lowerTranslation; - - /// The upper translation limit, usually in meters. - float32 upperTranslation; - - /// Enable/disable the joint motor. - bool enableMotor; - - /// The maximum motor torque, usually in N-m. - float32 maxMotorForce; - - /// The desired motor speed in radians per second. - float32 motorSpeed; -}; - -/// A prismatic joint. This joint provides one degree of freedom: translation -/// along an axis fixed in bodyA. Relative rotation is prevented. You can -/// use a joint limit to restrict the range of motion and a joint motor to -/// drive the motion or to model joint friction. -class b2PrismaticJoint : public b2Joint -{ -public: - b2Vec2 GetAnchorA() const; - b2Vec2 GetAnchorB() const; - - b2Vec2 GetReactionForce(float32 inv_dt) const; - float32 GetReactionTorque(float32 inv_dt) const; - - /// The local anchor point relative to bodyA's origin. - const b2Vec2& GetLocalAnchorA() const { return m_localAnchorA; } - - /// The local anchor point relative to bodyB's origin. - const b2Vec2& GetLocalAnchorB() const { return m_localAnchorB; } - - /// The local joint axis relative to bodyA. - const b2Vec2& GetLocalAxisA() const { return m_localXAxisA; } - - /// Get the reference angle. - float32 GetReferenceAngle() const { return m_referenceAngle; } - - /// Get the current joint translation, usually in meters. - float32 GetJointTranslation() const; - - /// Get the current joint translation speed, usually in meters per second. - float32 GetJointSpeed() const; - - /// Is the joint limit enabled? - bool IsLimitEnabled() const; - - /// Enable/disable the joint limit. - void EnableLimit(bool flag); - - /// Get the lower joint limit, usually in meters. - float32 GetLowerLimit() const; - - /// Get the upper joint limit, usually in meters. - float32 GetUpperLimit() const; - - /// Set the joint limits, usually in meters. - void SetLimits(float32 lower, float32 upper); - - /// Is the joint motor enabled? - bool IsMotorEnabled() const; - - /// Enable/disable the joint motor. - void EnableMotor(bool flag); - - /// Set the motor speed, usually in meters per second. - void SetMotorSpeed(float32 speed); - - /// Get the motor speed, usually in meters per second. - float32 GetMotorSpeed() const; - - /// Set the maximum motor force, usually in N. - void SetMaxMotorForce(float32 force); - float32 GetMaxMotorForce() const { return m_maxMotorForce; } - - /// Get the current motor force given the inverse time step, usually in N. - float32 GetMotorForce(float32 inv_dt) const; - - /// Dump to b2Log - void Dump(); - -protected: - friend class b2Joint; - friend class b2GearJoint; - b2PrismaticJoint(const b2PrismaticJointDef* def); - - void InitVelocityConstraints(const b2SolverData& data); - void SolveVelocityConstraints(const b2SolverData& data); - bool SolvePositionConstraints(const b2SolverData& data); - - // Solver shared - b2Vec2 m_localAnchorA; - b2Vec2 m_localAnchorB; - b2Vec2 m_localXAxisA; - b2Vec2 m_localYAxisA; - float32 m_referenceAngle; - b2Vec3 m_impulse; - float32 m_motorImpulse; - float32 m_lowerTranslation; - float32 m_upperTranslation; - float32 m_maxMotorForce; - float32 m_motorSpeed; - bool m_enableLimit; - bool m_enableMotor; - b2LimitState m_limitState; - - // Solver temp - int32 m_indexA; - int32 m_indexB; - b2Vec2 m_localCenterA; - b2Vec2 m_localCenterB; - float32 m_invMassA; - float32 m_invMassB; - float32 m_invIA; - float32 m_invIB; - b2Vec2 m_axis, m_perp; - float32 m_s1, m_s2; - float32 m_a1, m_a2; - b2Mat33 m_K; - float32 m_motorMass; -}; - -inline float32 b2PrismaticJoint::GetMotorSpeed() const -{ - return m_motorSpeed; -} - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2PulleyJoint.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2PulleyJoint.cpp deleted file mode 100644 index f8b2285..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2PulleyJoint.cpp +++ /dev/null @@ -1,348 +0,0 @@ -/* -* Copyright (c) 2007 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include -#include -#include - -// Pulley: -// length1 = norm(p1 - s1) -// length2 = norm(p2 - s2) -// C0 = (length1 + ratio * length2)_initial -// C = C0 - (length1 + ratio * length2) -// u1 = (p1 - s1) / norm(p1 - s1) -// u2 = (p2 - s2) / norm(p2 - s2) -// Cdot = -dot(u1, v1 + cross(w1, r1)) - ratio * dot(u2, v2 + cross(w2, r2)) -// J = -[u1 cross(r1, u1) ratio * u2 ratio * cross(r2, u2)] -// K = J * invM * JT -// = invMass1 + invI1 * cross(r1, u1)^2 + ratio^2 * (invMass2 + invI2 * cross(r2, u2)^2) - -void b2PulleyJointDef::Initialize(b2Body* bA, b2Body* bB, - const b2Vec2& groundA, const b2Vec2& groundB, - const b2Vec2& anchorA, const b2Vec2& anchorB, - float32 r) -{ - bodyA = bA; - bodyB = bB; - groundAnchorA = groundA; - groundAnchorB = groundB; - localAnchorA = bodyA->GetLocalPoint(anchorA); - localAnchorB = bodyB->GetLocalPoint(anchorB); - b2Vec2 dA = anchorA - groundA; - lengthA = dA.Length(); - b2Vec2 dB = anchorB - groundB; - lengthB = dB.Length(); - ratio = r; - b2Assert(ratio > b2_epsilon); -} - -b2PulleyJoint::b2PulleyJoint(const b2PulleyJointDef* def) -: b2Joint(def) -{ - m_groundAnchorA = def->groundAnchorA; - m_groundAnchorB = def->groundAnchorB; - m_localAnchorA = def->localAnchorA; - m_localAnchorB = def->localAnchorB; - - m_lengthA = def->lengthA; - m_lengthB = def->lengthB; - - b2Assert(def->ratio != 0.0f); - m_ratio = def->ratio; - - m_constant = def->lengthA + m_ratio * def->lengthB; - - m_impulse = 0.0f; -} - -void b2PulleyJoint::InitVelocityConstraints(const b2SolverData& data) -{ - m_indexA = m_bodyA->m_islandIndex; - m_indexB = m_bodyB->m_islandIndex; - m_localCenterA = m_bodyA->m_sweep.localCenter; - m_localCenterB = m_bodyB->m_sweep.localCenter; - m_invMassA = m_bodyA->m_invMass; - m_invMassB = m_bodyB->m_invMass; - m_invIA = m_bodyA->m_invI; - m_invIB = m_bodyB->m_invI; - - b2Vec2 cA = data.positions[m_indexA].c; - float32 aA = data.positions[m_indexA].a; - b2Vec2 vA = data.velocities[m_indexA].v; - float32 wA = data.velocities[m_indexA].w; - - b2Vec2 cB = data.positions[m_indexB].c; - float32 aB = data.positions[m_indexB].a; - b2Vec2 vB = data.velocities[m_indexB].v; - float32 wB = data.velocities[m_indexB].w; - - b2Rot qA(aA), qB(aB); - - m_rA = b2Mul(qA, m_localAnchorA - m_localCenterA); - m_rB = b2Mul(qB, m_localAnchorB - m_localCenterB); - - // Get the pulley axes. - m_uA = cA + m_rA - m_groundAnchorA; - m_uB = cB + m_rB - m_groundAnchorB; - - float32 lengthA = m_uA.Length(); - float32 lengthB = m_uB.Length(); - - if (lengthA > 10.0f * b2_linearSlop) - { - m_uA *= 1.0f / lengthA; - } - else - { - m_uA.SetZero(); - } - - if (lengthB > 10.0f * b2_linearSlop) - { - m_uB *= 1.0f / lengthB; - } - else - { - m_uB.SetZero(); - } - - // Compute effective mass. - float32 ruA = b2Cross(m_rA, m_uA); - float32 ruB = b2Cross(m_rB, m_uB); - - float32 mA = m_invMassA + m_invIA * ruA * ruA; - float32 mB = m_invMassB + m_invIB * ruB * ruB; - - m_mass = mA + m_ratio * m_ratio * mB; - - if (m_mass > 0.0f) - { - m_mass = 1.0f / m_mass; - } - - if (data.step.warmStarting) - { - // Scale impulses to support variable time steps. - m_impulse *= data.step.dtRatio; - - // Warm starting. - b2Vec2 PA = -(m_impulse) * m_uA; - b2Vec2 PB = (-m_ratio * m_impulse) * m_uB; - - vA += m_invMassA * PA; - wA += m_invIA * b2Cross(m_rA, PA); - vB += m_invMassB * PB; - wB += m_invIB * b2Cross(m_rB, PB); - } - else - { - m_impulse = 0.0f; - } - - data.velocities[m_indexA].v = vA; - data.velocities[m_indexA].w = wA; - data.velocities[m_indexB].v = vB; - data.velocities[m_indexB].w = wB; -} - -void b2PulleyJoint::SolveVelocityConstraints(const b2SolverData& data) -{ - b2Vec2 vA = data.velocities[m_indexA].v; - float32 wA = data.velocities[m_indexA].w; - b2Vec2 vB = data.velocities[m_indexB].v; - float32 wB = data.velocities[m_indexB].w; - - b2Vec2 vpA = vA + b2Cross(wA, m_rA); - b2Vec2 vpB = vB + b2Cross(wB, m_rB); - - float32 Cdot = -b2Dot(m_uA, vpA) - m_ratio * b2Dot(m_uB, vpB); - float32 impulse = -m_mass * Cdot; - m_impulse += impulse; - - b2Vec2 PA = -impulse * m_uA; - b2Vec2 PB = -m_ratio * impulse * m_uB; - vA += m_invMassA * PA; - wA += m_invIA * b2Cross(m_rA, PA); - vB += m_invMassB * PB; - wB += m_invIB * b2Cross(m_rB, PB); - - data.velocities[m_indexA].v = vA; - data.velocities[m_indexA].w = wA; - data.velocities[m_indexB].v = vB; - data.velocities[m_indexB].w = wB; -} - -bool b2PulleyJoint::SolvePositionConstraints(const b2SolverData& data) -{ - b2Vec2 cA = data.positions[m_indexA].c; - float32 aA = data.positions[m_indexA].a; - b2Vec2 cB = data.positions[m_indexB].c; - float32 aB = data.positions[m_indexB].a; - - b2Rot qA(aA), qB(aB); - - b2Vec2 rA = b2Mul(qA, m_localAnchorA - m_localCenterA); - b2Vec2 rB = b2Mul(qB, m_localAnchorB - m_localCenterB); - - // Get the pulley axes. - b2Vec2 uA = cA + rA - m_groundAnchorA; - b2Vec2 uB = cB + rB - m_groundAnchorB; - - float32 lengthA = uA.Length(); - float32 lengthB = uB.Length(); - - if (lengthA > 10.0f * b2_linearSlop) - { - uA *= 1.0f / lengthA; - } - else - { - uA.SetZero(); - } - - if (lengthB > 10.0f * b2_linearSlop) - { - uB *= 1.0f / lengthB; - } - else - { - uB.SetZero(); - } - - // Compute effective mass. - float32 ruA = b2Cross(rA, uA); - float32 ruB = b2Cross(rB, uB); - - float32 mA = m_invMassA + m_invIA * ruA * ruA; - float32 mB = m_invMassB + m_invIB * ruB * ruB; - - float32 mass = mA + m_ratio * m_ratio * mB; - - if (mass > 0.0f) - { - mass = 1.0f / mass; - } - - float32 C = m_constant - lengthA - m_ratio * lengthB; - float32 linearError = b2Abs(C); - - float32 impulse = -mass * C; - - b2Vec2 PA = -impulse * uA; - b2Vec2 PB = -m_ratio * impulse * uB; - - cA += m_invMassA * PA; - aA += m_invIA * b2Cross(rA, PA); - cB += m_invMassB * PB; - aB += m_invIB * b2Cross(rB, PB); - - data.positions[m_indexA].c = cA; - data.positions[m_indexA].a = aA; - data.positions[m_indexB].c = cB; - data.positions[m_indexB].a = aB; - - return linearError < b2_linearSlop; -} - -b2Vec2 b2PulleyJoint::GetAnchorA() const -{ - return m_bodyA->GetWorldPoint(m_localAnchorA); -} - -b2Vec2 b2PulleyJoint::GetAnchorB() const -{ - return m_bodyB->GetWorldPoint(m_localAnchorB); -} - -b2Vec2 b2PulleyJoint::GetReactionForce(float32 inv_dt) const -{ - b2Vec2 P = m_impulse * m_uB; - return inv_dt * P; -} - -float32 b2PulleyJoint::GetReactionTorque(float32 inv_dt) const -{ - B2_NOT_USED(inv_dt); - return 0.0f; -} - -b2Vec2 b2PulleyJoint::GetGroundAnchorA() const -{ - return m_groundAnchorA; -} - -b2Vec2 b2PulleyJoint::GetGroundAnchorB() const -{ - return m_groundAnchorB; -} - -float32 b2PulleyJoint::GetLengthA() const -{ - return m_lengthA; -} - -float32 b2PulleyJoint::GetLengthB() const -{ - return m_lengthB; -} - -float32 b2PulleyJoint::GetRatio() const -{ - return m_ratio; -} - -float32 b2PulleyJoint::GetCurrentLengthA() const -{ - b2Vec2 p = m_bodyA->GetWorldPoint(m_localAnchorA); - b2Vec2 s = m_groundAnchorA; - b2Vec2 d = p - s; - return d.Length(); -} - -float32 b2PulleyJoint::GetCurrentLengthB() const -{ - b2Vec2 p = m_bodyB->GetWorldPoint(m_localAnchorB); - b2Vec2 s = m_groundAnchorB; - b2Vec2 d = p - s; - return d.Length(); -} - -void b2PulleyJoint::Dump() -{ - int32 indexA = m_bodyA->m_islandIndex; - int32 indexB = m_bodyB->m_islandIndex; - - b2Log(" b2PulleyJointDef jd;\n"); - b2Log(" jd.bodyA = bodies[%d];\n", indexA); - b2Log(" jd.bodyB = bodies[%d];\n", indexB); - b2Log(" jd.collideConnected = bool(%d);\n", m_collideConnected); - b2Log(" jd.groundAnchorA.Set(%.15lef, %.15lef);\n", m_groundAnchorA.x, m_groundAnchorA.y); - b2Log(" jd.groundAnchorB.Set(%.15lef, %.15lef);\n", m_groundAnchorB.x, m_groundAnchorB.y); - b2Log(" jd.localAnchorA.Set(%.15lef, %.15lef);\n", m_localAnchorA.x, m_localAnchorA.y); - b2Log(" jd.localAnchorB.Set(%.15lef, %.15lef);\n", m_localAnchorB.x, m_localAnchorB.y); - b2Log(" jd.lengthA = %.15lef;\n", m_lengthA); - b2Log(" jd.lengthB = %.15lef;\n", m_lengthB); - b2Log(" jd.ratio = %.15lef;\n", m_ratio); - b2Log(" joints[%d] = m_world->CreateJoint(&jd);\n", m_index); -} - -void b2PulleyJoint::ShiftOrigin(const b2Vec2& newOrigin) -{ - m_groundAnchorA -= newOrigin; - m_groundAnchorB -= newOrigin; -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2PulleyJoint.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2PulleyJoint.h deleted file mode 100644 index 2dcdd34..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2PulleyJoint.h +++ /dev/null @@ -1,152 +0,0 @@ -/* -* Copyright (c) 2006-2011 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_PULLEY_JOINT_H -#define B2_PULLEY_JOINT_H - -#include - -const float32 b2_minPulleyLength = 2.0f; - -/// Pulley joint definition. This requires two ground anchors, -/// two dynamic body anchor points, and a pulley ratio. -struct b2PulleyJointDef : public b2JointDef -{ - b2PulleyJointDef() - { - type = e_pulleyJoint; - groundAnchorA.Set(-1.0f, 1.0f); - groundAnchorB.Set(1.0f, 1.0f); - localAnchorA.Set(-1.0f, 0.0f); - localAnchorB.Set(1.0f, 0.0f); - lengthA = 0.0f; - lengthB = 0.0f; - ratio = 1.0f; - collideConnected = true; - } - - /// Initialize the bodies, anchors, lengths, max lengths, and ratio using the world anchors. - void Initialize(b2Body* bodyA, b2Body* bodyB, - const b2Vec2& groundAnchorA, const b2Vec2& groundAnchorB, - const b2Vec2& anchorA, const b2Vec2& anchorB, - float32 ratio); - - /// The first ground anchor in world coordinates. This point never moves. - b2Vec2 groundAnchorA; - - /// The second ground anchor in world coordinates. This point never moves. - b2Vec2 groundAnchorB; - - /// The local anchor point relative to bodyA's origin. - b2Vec2 localAnchorA; - - /// The local anchor point relative to bodyB's origin. - b2Vec2 localAnchorB; - - /// The a reference length for the segment attached to bodyA. - float32 lengthA; - - /// The a reference length for the segment attached to bodyB. - float32 lengthB; - - /// The pulley ratio, used to simulate a block-and-tackle. - float32 ratio; -}; - -/// The pulley joint is connected to two bodies and two fixed ground points. -/// The pulley supports a ratio such that: -/// length1 + ratio * length2 <= constant -/// Yes, the force transmitted is scaled by the ratio. -/// Warning: the pulley joint can get a bit squirrelly by itself. They often -/// work better when combined with prismatic joints. You should also cover the -/// the anchor points with static shapes to prevent one side from going to -/// zero length. -class b2PulleyJoint : public b2Joint -{ -public: - b2Vec2 GetAnchorA() const; - b2Vec2 GetAnchorB() const; - - b2Vec2 GetReactionForce(float32 inv_dt) const; - float32 GetReactionTorque(float32 inv_dt) const; - - /// Get the first ground anchor. - b2Vec2 GetGroundAnchorA() const; - - /// Get the second ground anchor. - b2Vec2 GetGroundAnchorB() const; - - /// Get the current length of the segment attached to bodyA. - float32 GetLengthA() const; - - /// Get the current length of the segment attached to bodyB. - float32 GetLengthB() const; - - /// Get the pulley ratio. - float32 GetRatio() const; - - /// Get the current length of the segment attached to bodyA. - float32 GetCurrentLengthA() const; - - /// Get the current length of the segment attached to bodyB. - float32 GetCurrentLengthB() const; - - /// Dump joint to dmLog - void Dump(); - - /// Implement b2Joint::ShiftOrigin - void ShiftOrigin(const b2Vec2& newOrigin); - -protected: - - friend class b2Joint; - b2PulleyJoint(const b2PulleyJointDef* data); - - void InitVelocityConstraints(const b2SolverData& data); - void SolveVelocityConstraints(const b2SolverData& data); - bool SolvePositionConstraints(const b2SolverData& data); - - b2Vec2 m_groundAnchorA; - b2Vec2 m_groundAnchorB; - float32 m_lengthA; - float32 m_lengthB; - - // Solver shared - b2Vec2 m_localAnchorA; - b2Vec2 m_localAnchorB; - float32 m_constant; - float32 m_ratio; - float32 m_impulse; - - // Solver temp - int32 m_indexA; - int32 m_indexB; - b2Vec2 m_uA; - b2Vec2 m_uB; - b2Vec2 m_rA; - b2Vec2 m_rB; - b2Vec2 m_localCenterA; - b2Vec2 m_localCenterB; - float32 m_invMassA; - float32 m_invMassB; - float32 m_invIA; - float32 m_invIB; - float32 m_mass; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2RevoluteJoint.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2RevoluteJoint.cpp deleted file mode 100644 index d48cae8..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2RevoluteJoint.cpp +++ /dev/null @@ -1,502 +0,0 @@ -/* -* Copyright (c) 2006-2011 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include -#include -#include - -// Point-to-point constraint -// C = p2 - p1 -// Cdot = v2 - v1 -// = v2 + cross(w2, r2) - v1 - cross(w1, r1) -// J = [-I -r1_skew I r2_skew ] -// Identity used: -// w k % (rx i + ry j) = w * (-ry i + rx j) - -// Motor constraint -// Cdot = w2 - w1 -// J = [0 0 -1 0 0 1] -// K = invI1 + invI2 - -void b2RevoluteJointDef::Initialize(b2Body* bA, b2Body* bB, const b2Vec2& anchor) -{ - bodyA = bA; - bodyB = bB; - localAnchorA = bodyA->GetLocalPoint(anchor); - localAnchorB = bodyB->GetLocalPoint(anchor); - referenceAngle = bodyB->GetAngle() - bodyA->GetAngle(); -} - -b2RevoluteJoint::b2RevoluteJoint(const b2RevoluteJointDef* def) -: b2Joint(def) -{ - m_localAnchorA = def->localAnchorA; - m_localAnchorB = def->localAnchorB; - m_referenceAngle = def->referenceAngle; - - m_impulse.SetZero(); - m_motorImpulse = 0.0f; - - m_lowerAngle = def->lowerAngle; - m_upperAngle = def->upperAngle; - m_maxMotorTorque = def->maxMotorTorque; - m_motorSpeed = def->motorSpeed; - m_enableLimit = def->enableLimit; - m_enableMotor = def->enableMotor; - m_limitState = e_inactiveLimit; -} - -void b2RevoluteJoint::InitVelocityConstraints(const b2SolverData& data) -{ - m_indexA = m_bodyA->m_islandIndex; - m_indexB = m_bodyB->m_islandIndex; - m_localCenterA = m_bodyA->m_sweep.localCenter; - m_localCenterB = m_bodyB->m_sweep.localCenter; - m_invMassA = m_bodyA->m_invMass; - m_invMassB = m_bodyB->m_invMass; - m_invIA = m_bodyA->m_invI; - m_invIB = m_bodyB->m_invI; - - float32 aA = data.positions[m_indexA].a; - b2Vec2 vA = data.velocities[m_indexA].v; - float32 wA = data.velocities[m_indexA].w; - - float32 aB = data.positions[m_indexB].a; - b2Vec2 vB = data.velocities[m_indexB].v; - float32 wB = data.velocities[m_indexB].w; - - b2Rot qA(aA), qB(aB); - - m_rA = b2Mul(qA, m_localAnchorA - m_localCenterA); - m_rB = b2Mul(qB, m_localAnchorB - m_localCenterB); - - // J = [-I -r1_skew I r2_skew] - // [ 0 -1 0 1] - // r_skew = [-ry; rx] - - // Matlab - // K = [ mA+r1y^2*iA+mB+r2y^2*iB, -r1y*iA*r1x-r2y*iB*r2x, -r1y*iA-r2y*iB] - // [ -r1y*iA*r1x-r2y*iB*r2x, mA+r1x^2*iA+mB+r2x^2*iB, r1x*iA+r2x*iB] - // [ -r1y*iA-r2y*iB, r1x*iA+r2x*iB, iA+iB] - - float32 mA = m_invMassA, mB = m_invMassB; - float32 iA = m_invIA, iB = m_invIB; - - bool fixedRotation = (iA + iB == 0.0f); - - m_mass.ex.x = mA + mB + m_rA.y * m_rA.y * iA + m_rB.y * m_rB.y * iB; - m_mass.ey.x = -m_rA.y * m_rA.x * iA - m_rB.y * m_rB.x * iB; - m_mass.ez.x = -m_rA.y * iA - m_rB.y * iB; - m_mass.ex.y = m_mass.ey.x; - m_mass.ey.y = mA + mB + m_rA.x * m_rA.x * iA + m_rB.x * m_rB.x * iB; - m_mass.ez.y = m_rA.x * iA + m_rB.x * iB; - m_mass.ex.z = m_mass.ez.x; - m_mass.ey.z = m_mass.ez.y; - m_mass.ez.z = iA + iB; - - m_motorMass = iA + iB; - if (m_motorMass > 0.0f) - { - m_motorMass = 1.0f / m_motorMass; - } - - if (m_enableMotor == false || fixedRotation) - { - m_motorImpulse = 0.0f; - } - - if (m_enableLimit && fixedRotation == false) - { - float32 jointAngle = aB - aA - m_referenceAngle; - if (b2Abs(m_upperAngle - m_lowerAngle) < 2.0f * b2_angularSlop) - { - m_limitState = e_equalLimits; - } - else if (jointAngle <= m_lowerAngle) - { - if (m_limitState != e_atLowerLimit) - { - m_impulse.z = 0.0f; - } - m_limitState = e_atLowerLimit; - } - else if (jointAngle >= m_upperAngle) - { - if (m_limitState != e_atUpperLimit) - { - m_impulse.z = 0.0f; - } - m_limitState = e_atUpperLimit; - } - else - { - m_limitState = e_inactiveLimit; - m_impulse.z = 0.0f; - } - } - else - { - m_limitState = e_inactiveLimit; - } - - if (data.step.warmStarting) - { - // Scale impulses to support a variable time step. - m_impulse *= data.step.dtRatio; - m_motorImpulse *= data.step.dtRatio; - - b2Vec2 P(m_impulse.x, m_impulse.y); - - vA -= mA * P; - wA -= iA * (b2Cross(m_rA, P) + m_motorImpulse + m_impulse.z); - - vB += mB * P; - wB += iB * (b2Cross(m_rB, P) + m_motorImpulse + m_impulse.z); - } - else - { - m_impulse.SetZero(); - m_motorImpulse = 0.0f; - } - - data.velocities[m_indexA].v = vA; - data.velocities[m_indexA].w = wA; - data.velocities[m_indexB].v = vB; - data.velocities[m_indexB].w = wB; -} - -void b2RevoluteJoint::SolveVelocityConstraints(const b2SolverData& data) -{ - b2Vec2 vA = data.velocities[m_indexA].v; - float32 wA = data.velocities[m_indexA].w; - b2Vec2 vB = data.velocities[m_indexB].v; - float32 wB = data.velocities[m_indexB].w; - - float32 mA = m_invMassA, mB = m_invMassB; - float32 iA = m_invIA, iB = m_invIB; - - bool fixedRotation = (iA + iB == 0.0f); - - // Solve motor constraint. - if (m_enableMotor && m_limitState != e_equalLimits && fixedRotation == false) - { - float32 Cdot = wB - wA - m_motorSpeed; - float32 impulse = -m_motorMass * Cdot; - float32 oldImpulse = m_motorImpulse; - float32 maxImpulse = data.step.dt * m_maxMotorTorque; - m_motorImpulse = b2Clamp(m_motorImpulse + impulse, -maxImpulse, maxImpulse); - impulse = m_motorImpulse - oldImpulse; - - wA -= iA * impulse; - wB += iB * impulse; - } - - // Solve limit constraint. - if (m_enableLimit && m_limitState != e_inactiveLimit && fixedRotation == false) - { - b2Vec2 Cdot1 = vB + b2Cross(wB, m_rB) - vA - b2Cross(wA, m_rA); - float32 Cdot2 = wB - wA; - b2Vec3 Cdot(Cdot1.x, Cdot1.y, Cdot2); - - b2Vec3 impulse = -m_mass.Solve33(Cdot); - - if (m_limitState == e_equalLimits) - { - m_impulse += impulse; - } - else if (m_limitState == e_atLowerLimit) - { - float32 newImpulse = m_impulse.z + impulse.z; - if (newImpulse < 0.0f) - { - b2Vec2 rhs = -Cdot1 + m_impulse.z * b2Vec2(m_mass.ez.x, m_mass.ez.y); - b2Vec2 reduced = m_mass.Solve22(rhs); - impulse.x = reduced.x; - impulse.y = reduced.y; - impulse.z = -m_impulse.z; - m_impulse.x += reduced.x; - m_impulse.y += reduced.y; - m_impulse.z = 0.0f; - } - else - { - m_impulse += impulse; - } - } - else if (m_limitState == e_atUpperLimit) - { - float32 newImpulse = m_impulse.z + impulse.z; - if (newImpulse > 0.0f) - { - b2Vec2 rhs = -Cdot1 + m_impulse.z * b2Vec2(m_mass.ez.x, m_mass.ez.y); - b2Vec2 reduced = m_mass.Solve22(rhs); - impulse.x = reduced.x; - impulse.y = reduced.y; - impulse.z = -m_impulse.z; - m_impulse.x += reduced.x; - m_impulse.y += reduced.y; - m_impulse.z = 0.0f; - } - else - { - m_impulse += impulse; - } - } - - b2Vec2 P(impulse.x, impulse.y); - - vA -= mA * P; - wA -= iA * (b2Cross(m_rA, P) + impulse.z); - - vB += mB * P; - wB += iB * (b2Cross(m_rB, P) + impulse.z); - } - else - { - // Solve point-to-point constraint - b2Vec2 Cdot = vB + b2Cross(wB, m_rB) - vA - b2Cross(wA, m_rA); - b2Vec2 impulse = m_mass.Solve22(-Cdot); - - m_impulse.x += impulse.x; - m_impulse.y += impulse.y; - - vA -= mA * impulse; - wA -= iA * b2Cross(m_rA, impulse); - - vB += mB * impulse; - wB += iB * b2Cross(m_rB, impulse); - } - - data.velocities[m_indexA].v = vA; - data.velocities[m_indexA].w = wA; - data.velocities[m_indexB].v = vB; - data.velocities[m_indexB].w = wB; -} - -bool b2RevoluteJoint::SolvePositionConstraints(const b2SolverData& data) -{ - b2Vec2 cA = data.positions[m_indexA].c; - float32 aA = data.positions[m_indexA].a; - b2Vec2 cB = data.positions[m_indexB].c; - float32 aB = data.positions[m_indexB].a; - - b2Rot qA(aA), qB(aB); - - float32 angularError = 0.0f; - float32 positionError = 0.0f; - - bool fixedRotation = (m_invIA + m_invIB == 0.0f); - - // Solve angular limit constraint. - if (m_enableLimit && m_limitState != e_inactiveLimit && fixedRotation == false) - { - float32 angle = aB - aA - m_referenceAngle; - float32 limitImpulse = 0.0f; - - if (m_limitState == e_equalLimits) - { - // Prevent large angular corrections - float32 C = b2Clamp(angle - m_lowerAngle, -b2_maxAngularCorrection, b2_maxAngularCorrection); - limitImpulse = -m_motorMass * C; - angularError = b2Abs(C); - } - else if (m_limitState == e_atLowerLimit) - { - float32 C = angle - m_lowerAngle; - angularError = -C; - - // Prevent large angular corrections and allow some slop. - C = b2Clamp(C + b2_angularSlop, -b2_maxAngularCorrection, 0.0f); - limitImpulse = -m_motorMass * C; - } - else if (m_limitState == e_atUpperLimit) - { - float32 C = angle - m_upperAngle; - angularError = C; - - // Prevent large angular corrections and allow some slop. - C = b2Clamp(C - b2_angularSlop, 0.0f, b2_maxAngularCorrection); - limitImpulse = -m_motorMass * C; - } - - aA -= m_invIA * limitImpulse; - aB += m_invIB * limitImpulse; - } - - // Solve point-to-point constraint. - { - qA.Set(aA); - qB.Set(aB); - b2Vec2 rA = b2Mul(qA, m_localAnchorA - m_localCenterA); - b2Vec2 rB = b2Mul(qB, m_localAnchorB - m_localCenterB); - - b2Vec2 C = cB + rB - cA - rA; - positionError = C.Length(); - - float32 mA = m_invMassA, mB = m_invMassB; - float32 iA = m_invIA, iB = m_invIB; - - b2Mat22 K; - K.ex.x = mA + mB + iA * rA.y * rA.y + iB * rB.y * rB.y; - K.ex.y = -iA * rA.x * rA.y - iB * rB.x * rB.y; - K.ey.x = K.ex.y; - K.ey.y = mA + mB + iA * rA.x * rA.x + iB * rB.x * rB.x; - - b2Vec2 impulse = -K.Solve(C); - - cA -= mA * impulse; - aA -= iA * b2Cross(rA, impulse); - - cB += mB * impulse; - aB += iB * b2Cross(rB, impulse); - } - - data.positions[m_indexA].c = cA; - data.positions[m_indexA].a = aA; - data.positions[m_indexB].c = cB; - data.positions[m_indexB].a = aB; - - return positionError <= b2_linearSlop && angularError <= b2_angularSlop; -} - -b2Vec2 b2RevoluteJoint::GetAnchorA() const -{ - return m_bodyA->GetWorldPoint(m_localAnchorA); -} - -b2Vec2 b2RevoluteJoint::GetAnchorB() const -{ - return m_bodyB->GetWorldPoint(m_localAnchorB); -} - -b2Vec2 b2RevoluteJoint::GetReactionForce(float32 inv_dt) const -{ - b2Vec2 P(m_impulse.x, m_impulse.y); - return inv_dt * P; -} - -float32 b2RevoluteJoint::GetReactionTorque(float32 inv_dt) const -{ - return inv_dt * m_impulse.z; -} - -float32 b2RevoluteJoint::GetJointAngle() const -{ - b2Body* bA = m_bodyA; - b2Body* bB = m_bodyB; - return bB->m_sweep.a - bA->m_sweep.a - m_referenceAngle; -} - -float32 b2RevoluteJoint::GetJointSpeed() const -{ - b2Body* bA = m_bodyA; - b2Body* bB = m_bodyB; - return bB->m_angularVelocity - bA->m_angularVelocity; -} - -bool b2RevoluteJoint::IsMotorEnabled() const -{ - return m_enableMotor; -} - -void b2RevoluteJoint::EnableMotor(bool flag) -{ - m_bodyA->SetAwake(true); - m_bodyB->SetAwake(true); - m_enableMotor = flag; -} - -float32 b2RevoluteJoint::GetMotorTorque(float32 inv_dt) const -{ - return inv_dt * m_motorImpulse; -} - -void b2RevoluteJoint::SetMotorSpeed(float32 speed) -{ - m_bodyA->SetAwake(true); - m_bodyB->SetAwake(true); - m_motorSpeed = speed; -} - -void b2RevoluteJoint::SetMaxMotorTorque(float32 torque) -{ - m_bodyA->SetAwake(true); - m_bodyB->SetAwake(true); - m_maxMotorTorque = torque; -} - -bool b2RevoluteJoint::IsLimitEnabled() const -{ - return m_enableLimit; -} - -void b2RevoluteJoint::EnableLimit(bool flag) -{ - if (flag != m_enableLimit) - { - m_bodyA->SetAwake(true); - m_bodyB->SetAwake(true); - m_enableLimit = flag; - m_impulse.z = 0.0f; - } -} - -float32 b2RevoluteJoint::GetLowerLimit() const -{ - return m_lowerAngle; -} - -float32 b2RevoluteJoint::GetUpperLimit() const -{ - return m_upperAngle; -} - -void b2RevoluteJoint::SetLimits(float32 lower, float32 upper) -{ - b2Assert(lower <= upper); - - if (lower != m_lowerAngle || upper != m_upperAngle) - { - m_bodyA->SetAwake(true); - m_bodyB->SetAwake(true); - m_impulse.z = 0.0f; - m_lowerAngle = lower; - m_upperAngle = upper; - } -} - -void b2RevoluteJoint::Dump() -{ - int32 indexA = m_bodyA->m_islandIndex; - int32 indexB = m_bodyB->m_islandIndex; - - b2Log(" b2RevoluteJointDef jd;\n"); - b2Log(" jd.bodyA = bodies[%d];\n", indexA); - b2Log(" jd.bodyB = bodies[%d];\n", indexB); - b2Log(" jd.collideConnected = bool(%d);\n", m_collideConnected); - b2Log(" jd.localAnchorA.Set(%.15lef, %.15lef);\n", m_localAnchorA.x, m_localAnchorA.y); - b2Log(" jd.localAnchorB.Set(%.15lef, %.15lef);\n", m_localAnchorB.x, m_localAnchorB.y); - b2Log(" jd.referenceAngle = %.15lef;\n", m_referenceAngle); - b2Log(" jd.enableLimit = bool(%d);\n", m_enableLimit); - b2Log(" jd.lowerAngle = %.15lef;\n", m_lowerAngle); - b2Log(" jd.upperAngle = %.15lef;\n", m_upperAngle); - b2Log(" jd.enableMotor = bool(%d);\n", m_enableMotor); - b2Log(" jd.motorSpeed = %.15lef;\n", m_motorSpeed); - b2Log(" jd.maxMotorTorque = %.15lef;\n", m_maxMotorTorque); - b2Log(" joints[%d] = m_world->CreateJoint(&jd);\n", m_index); -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2RevoluteJoint.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2RevoluteJoint.h deleted file mode 100644 index e62cdbc..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2RevoluteJoint.h +++ /dev/null @@ -1,204 +0,0 @@ -/* -* Copyright (c) 2006-2011 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_REVOLUTE_JOINT_H -#define B2_REVOLUTE_JOINT_H - -#include - -/// Revolute joint definition. This requires defining an -/// anchor point where the bodies are joined. The definition -/// uses local anchor points so that the initial configuration -/// can violate the constraint slightly. You also need to -/// specify the initial relative angle for joint limits. This -/// helps when saving and loading a game. -/// The local anchor points are measured from the body's origin -/// rather than the center of mass because: -/// 1. you might not know where the center of mass will be. -/// 2. if you add/remove shapes from a body and recompute the mass, -/// the joints will be broken. -struct b2RevoluteJointDef : public b2JointDef -{ - b2RevoluteJointDef() - { - type = e_revoluteJoint; - localAnchorA.Set(0.0f, 0.0f); - localAnchorB.Set(0.0f, 0.0f); - referenceAngle = 0.0f; - lowerAngle = 0.0f; - upperAngle = 0.0f; - maxMotorTorque = 0.0f; - motorSpeed = 0.0f; - enableLimit = false; - enableMotor = false; - } - - /// Initialize the bodies, anchors, and reference angle using a world - /// anchor point. - void Initialize(b2Body* bodyA, b2Body* bodyB, const b2Vec2& anchor); - - /// The local anchor point relative to bodyA's origin. - b2Vec2 localAnchorA; - - /// The local anchor point relative to bodyB's origin. - b2Vec2 localAnchorB; - - /// The bodyB angle minus bodyA angle in the reference state (radians). - float32 referenceAngle; - - /// A flag to enable joint limits. - bool enableLimit; - - /// The lower angle for the joint limit (radians). - float32 lowerAngle; - - /// The upper angle for the joint limit (radians). - float32 upperAngle; - - /// A flag to enable the joint motor. - bool enableMotor; - - /// The desired motor speed. Usually in radians per second. - float32 motorSpeed; - - /// The maximum motor torque used to achieve the desired motor speed. - /// Usually in N-m. - float32 maxMotorTorque; -}; - -/// A revolute joint constrains two bodies to share a common point while they -/// are free to rotate about the point. The relative rotation about the shared -/// point is the joint angle. You can limit the relative rotation with -/// a joint limit that specifies a lower and upper angle. You can use a motor -/// to drive the relative rotation about the shared point. A maximum motor torque -/// is provided so that infinite forces are not generated. -class b2RevoluteJoint : public b2Joint -{ -public: - b2Vec2 GetAnchorA() const; - b2Vec2 GetAnchorB() const; - - /// The local anchor point relative to bodyA's origin. - const b2Vec2& GetLocalAnchorA() const { return m_localAnchorA; } - - /// The local anchor point relative to bodyB's origin. - const b2Vec2& GetLocalAnchorB() const { return m_localAnchorB; } - - /// Get the reference angle. - float32 GetReferenceAngle() const { return m_referenceAngle; } - - /// Get the current joint angle in radians. - float32 GetJointAngle() const; - - /// Get the current joint angle speed in radians per second. - float32 GetJointSpeed() const; - - /// Is the joint limit enabled? - bool IsLimitEnabled() const; - - /// Enable/disable the joint limit. - void EnableLimit(bool flag); - - /// Get the lower joint limit in radians. - float32 GetLowerLimit() const; - - /// Get the upper joint limit in radians. - float32 GetUpperLimit() const; - - /// Set the joint limits in radians. - void SetLimits(float32 lower, float32 upper); - - /// Is the joint motor enabled? - bool IsMotorEnabled() const; - - /// Enable/disable the joint motor. - void EnableMotor(bool flag); - - /// Set the motor speed in radians per second. - void SetMotorSpeed(float32 speed); - - /// Get the motor speed in radians per second. - float32 GetMotorSpeed() const; - - /// Set the maximum motor torque, usually in N-m. - void SetMaxMotorTorque(float32 torque); - float32 GetMaxMotorTorque() const { return m_maxMotorTorque; } - - /// Get the reaction force given the inverse time step. - /// Unit is N. - b2Vec2 GetReactionForce(float32 inv_dt) const; - - /// Get the reaction torque due to the joint limit given the inverse time step. - /// Unit is N*m. - float32 GetReactionTorque(float32 inv_dt) const; - - /// Get the current motor torque given the inverse time step. - /// Unit is N*m. - float32 GetMotorTorque(float32 inv_dt) const; - - /// Dump to b2Log. - void Dump(); - -protected: - - friend class b2Joint; - friend class b2GearJoint; - - b2RevoluteJoint(const b2RevoluteJointDef* def); - - void InitVelocityConstraints(const b2SolverData& data); - void SolveVelocityConstraints(const b2SolverData& data); - bool SolvePositionConstraints(const b2SolverData& data); - - // Solver shared - b2Vec2 m_localAnchorA; - b2Vec2 m_localAnchorB; - b2Vec3 m_impulse; - float32 m_motorImpulse; - - bool m_enableMotor; - float32 m_maxMotorTorque; - float32 m_motorSpeed; - - bool m_enableLimit; - float32 m_referenceAngle; - float32 m_lowerAngle; - float32 m_upperAngle; - - // Solver temp - int32 m_indexA; - int32 m_indexB; - b2Vec2 m_rA; - b2Vec2 m_rB; - b2Vec2 m_localCenterA; - b2Vec2 m_localCenterB; - float32 m_invMassA; - float32 m_invMassB; - float32 m_invIA; - float32 m_invIB; - b2Mat33 m_mass; // effective mass for point-to-point constraint. - float32 m_motorMass; // effective mass for motor/limit angular constraint. - b2LimitState m_limitState; -}; - -inline float32 b2RevoluteJoint::GetMotorSpeed() const -{ - return m_motorSpeed; -} - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2RopeJoint.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2RopeJoint.cpp deleted file mode 100644 index 107ce1f..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2RopeJoint.cpp +++ /dev/null @@ -1,241 +0,0 @@ -/* -* Copyright (c) 2007-2011 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include -#include -#include - - -// Limit: -// C = norm(pB - pA) - L -// u = (pB - pA) / norm(pB - pA) -// Cdot = dot(u, vB + cross(wB, rB) - vA - cross(wA, rA)) -// J = [-u -cross(rA, u) u cross(rB, u)] -// K = J * invM * JT -// = invMassA + invIA * cross(rA, u)^2 + invMassB + invIB * cross(rB, u)^2 - -b2RopeJoint::b2RopeJoint(const b2RopeJointDef* def) -: b2Joint(def) -{ - m_localAnchorA = def->localAnchorA; - m_localAnchorB = def->localAnchorB; - - m_maxLength = def->maxLength; - - m_mass = 0.0f; - m_impulse = 0.0f; - m_state = e_inactiveLimit; - m_length = 0.0f; -} - -void b2RopeJoint::InitVelocityConstraints(const b2SolverData& data) -{ - m_indexA = m_bodyA->m_islandIndex; - m_indexB = m_bodyB->m_islandIndex; - m_localCenterA = m_bodyA->m_sweep.localCenter; - m_localCenterB = m_bodyB->m_sweep.localCenter; - m_invMassA = m_bodyA->m_invMass; - m_invMassB = m_bodyB->m_invMass; - m_invIA = m_bodyA->m_invI; - m_invIB = m_bodyB->m_invI; - - b2Vec2 cA = data.positions[m_indexA].c; - float32 aA = data.positions[m_indexA].a; - b2Vec2 vA = data.velocities[m_indexA].v; - float32 wA = data.velocities[m_indexA].w; - - b2Vec2 cB = data.positions[m_indexB].c; - float32 aB = data.positions[m_indexB].a; - b2Vec2 vB = data.velocities[m_indexB].v; - float32 wB = data.velocities[m_indexB].w; - - b2Rot qA(aA), qB(aB); - - m_rA = b2Mul(qA, m_localAnchorA - m_localCenterA); - m_rB = b2Mul(qB, m_localAnchorB - m_localCenterB); - m_u = cB + m_rB - cA - m_rA; - - m_length = m_u.Length(); - - float32 C = m_length - m_maxLength; - if (C > 0.0f) - { - m_state = e_atUpperLimit; - } - else - { - m_state = e_inactiveLimit; - } - - if (m_length > b2_linearSlop) - { - m_u *= 1.0f / m_length; - } - else - { - m_u.SetZero(); - m_mass = 0.0f; - m_impulse = 0.0f; - return; - } - - // Compute effective mass. - float32 crA = b2Cross(m_rA, m_u); - float32 crB = b2Cross(m_rB, m_u); - float32 invMass = m_invMassA + m_invIA * crA * crA + m_invMassB + m_invIB * crB * crB; - - m_mass = invMass != 0.0f ? 1.0f / invMass : 0.0f; - - if (data.step.warmStarting) - { - // Scale the impulse to support a variable time step. - m_impulse *= data.step.dtRatio; - - b2Vec2 P = m_impulse * m_u; - vA -= m_invMassA * P; - wA -= m_invIA * b2Cross(m_rA, P); - vB += m_invMassB * P; - wB += m_invIB * b2Cross(m_rB, P); - } - else - { - m_impulse = 0.0f; - } - - data.velocities[m_indexA].v = vA; - data.velocities[m_indexA].w = wA; - data.velocities[m_indexB].v = vB; - data.velocities[m_indexB].w = wB; -} - -void b2RopeJoint::SolveVelocityConstraints(const b2SolverData& data) -{ - b2Vec2 vA = data.velocities[m_indexA].v; - float32 wA = data.velocities[m_indexA].w; - b2Vec2 vB = data.velocities[m_indexB].v; - float32 wB = data.velocities[m_indexB].w; - - // Cdot = dot(u, v + cross(w, r)) - b2Vec2 vpA = vA + b2Cross(wA, m_rA); - b2Vec2 vpB = vB + b2Cross(wB, m_rB); - float32 C = m_length - m_maxLength; - float32 Cdot = b2Dot(m_u, vpB - vpA); - - // Predictive constraint. - if (C < 0.0f) - { - Cdot += data.step.inv_dt * C; - } - - float32 impulse = -m_mass * Cdot; - float32 oldImpulse = m_impulse; - m_impulse = b2Min(0.0f, m_impulse + impulse); - impulse = m_impulse - oldImpulse; - - b2Vec2 P = impulse * m_u; - vA -= m_invMassA * P; - wA -= m_invIA * b2Cross(m_rA, P); - vB += m_invMassB * P; - wB += m_invIB * b2Cross(m_rB, P); - - data.velocities[m_indexA].v = vA; - data.velocities[m_indexA].w = wA; - data.velocities[m_indexB].v = vB; - data.velocities[m_indexB].w = wB; -} - -bool b2RopeJoint::SolvePositionConstraints(const b2SolverData& data) -{ - b2Vec2 cA = data.positions[m_indexA].c; - float32 aA = data.positions[m_indexA].a; - b2Vec2 cB = data.positions[m_indexB].c; - float32 aB = data.positions[m_indexB].a; - - b2Rot qA(aA), qB(aB); - - b2Vec2 rA = b2Mul(qA, m_localAnchorA - m_localCenterA); - b2Vec2 rB = b2Mul(qB, m_localAnchorB - m_localCenterB); - b2Vec2 u = cB + rB - cA - rA; - - float32 length = u.Normalize(); - float32 C = length - m_maxLength; - - C = b2Clamp(C, 0.0f, b2_maxLinearCorrection); - - float32 impulse = -m_mass * C; - b2Vec2 P = impulse * u; - - cA -= m_invMassA * P; - aA -= m_invIA * b2Cross(rA, P); - cB += m_invMassB * P; - aB += m_invIB * b2Cross(rB, P); - - data.positions[m_indexA].c = cA; - data.positions[m_indexA].a = aA; - data.positions[m_indexB].c = cB; - data.positions[m_indexB].a = aB; - - return length - m_maxLength < b2_linearSlop; -} - -b2Vec2 b2RopeJoint::GetAnchorA() const -{ - return m_bodyA->GetWorldPoint(m_localAnchorA); -} - -b2Vec2 b2RopeJoint::GetAnchorB() const -{ - return m_bodyB->GetWorldPoint(m_localAnchorB); -} - -b2Vec2 b2RopeJoint::GetReactionForce(float32 inv_dt) const -{ - b2Vec2 F = (inv_dt * m_impulse) * m_u; - return F; -} - -float32 b2RopeJoint::GetReactionTorque(float32 inv_dt) const -{ - B2_NOT_USED(inv_dt); - return 0.0f; -} - -float32 b2RopeJoint::GetMaxLength() const -{ - return m_maxLength; -} - -b2LimitState b2RopeJoint::GetLimitState() const -{ - return m_state; -} - -void b2RopeJoint::Dump() -{ - int32 indexA = m_bodyA->m_islandIndex; - int32 indexB = m_bodyB->m_islandIndex; - - b2Log(" b2RopeJointDef jd;\n"); - b2Log(" jd.bodyA = bodies[%d];\n", indexA); - b2Log(" jd.bodyB = bodies[%d];\n", indexB); - b2Log(" jd.collideConnected = bool(%d);\n", m_collideConnected); - b2Log(" jd.localAnchorA.Set(%.15lef, %.15lef);\n", m_localAnchorA.x, m_localAnchorA.y); - b2Log(" jd.localAnchorB.Set(%.15lef, %.15lef);\n", m_localAnchorB.x, m_localAnchorB.y); - b2Log(" jd.maxLength = %.15lef;\n", m_maxLength); - b2Log(" joints[%d] = m_world->CreateJoint(&jd);\n", m_index); -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2RopeJoint.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2RopeJoint.h deleted file mode 100644 index 3025246..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2RopeJoint.h +++ /dev/null @@ -1,114 +0,0 @@ -/* -* Copyright (c) 2006-2011 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_ROPE_JOINT_H -#define B2_ROPE_JOINT_H - -#include - -/// Rope joint definition. This requires two body anchor points and -/// a maximum lengths. -/// Note: by default the connected objects will not collide. -/// see collideConnected in b2JointDef. -struct b2RopeJointDef : public b2JointDef -{ - b2RopeJointDef() - { - type = e_ropeJoint; - localAnchorA.Set(-1.0f, 0.0f); - localAnchorB.Set(1.0f, 0.0f); - maxLength = 0.0f; - } - - /// The local anchor point relative to bodyA's origin. - b2Vec2 localAnchorA; - - /// The local anchor point relative to bodyB's origin. - b2Vec2 localAnchorB; - - /// The maximum length of the rope. - /// Warning: this must be larger than b2_linearSlop or - /// the joint will have no effect. - float32 maxLength; -}; - -/// A rope joint enforces a maximum distance between two points -/// on two bodies. It has no other effect. -/// Warning: if you attempt to change the maximum length during -/// the simulation you will get some non-physical behavior. -/// A model that would allow you to dynamically modify the length -/// would have some sponginess, so I chose not to implement it -/// that way. See b2DistanceJoint if you want to dynamically -/// control length. -class b2RopeJoint : public b2Joint -{ -public: - b2Vec2 GetAnchorA() const; - b2Vec2 GetAnchorB() const; - - b2Vec2 GetReactionForce(float32 inv_dt) const; - float32 GetReactionTorque(float32 inv_dt) const; - - /// The local anchor point relative to bodyA's origin. - const b2Vec2& GetLocalAnchorA() const { return m_localAnchorA; } - - /// The local anchor point relative to bodyB's origin. - const b2Vec2& GetLocalAnchorB() const { return m_localAnchorB; } - - /// Set/Get the maximum length of the rope. - void SetMaxLength(float32 length) { m_maxLength = length; } - float32 GetMaxLength() const; - - b2LimitState GetLimitState() const; - - /// Dump joint to dmLog - void Dump(); - -protected: - - friend class b2Joint; - b2RopeJoint(const b2RopeJointDef* data); - - void InitVelocityConstraints(const b2SolverData& data); - void SolveVelocityConstraints(const b2SolverData& data); - bool SolvePositionConstraints(const b2SolverData& data); - - // Solver shared - b2Vec2 m_localAnchorA; - b2Vec2 m_localAnchorB; - float32 m_maxLength; - float32 m_length; - float32 m_impulse; - - // Solver temp - int32 m_indexA; - int32 m_indexB; - b2Vec2 m_u; - b2Vec2 m_rA; - b2Vec2 m_rB; - b2Vec2 m_localCenterA; - b2Vec2 m_localCenterB; - float32 m_invMassA; - float32 m_invMassB; - float32 m_invIA; - float32 m_invIB; - float32 m_mass; - b2LimitState m_state; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2WeldJoint.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2WeldJoint.cpp deleted file mode 100644 index e5cddf3..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2WeldJoint.cpp +++ /dev/null @@ -1,328 +0,0 @@ -/* -* Copyright (c) 2006-2011 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include -#include -#include - -// Point-to-point constraint -// C = p2 - p1 -// Cdot = v2 - v1 -// = v2 + cross(w2, r2) - v1 - cross(w1, r1) -// J = [-I -r1_skew I r2_skew ] -// Identity used: -// w k % (rx i + ry j) = w * (-ry i + rx j) - -// Angle constraint -// C = angle2 - angle1 - referenceAngle -// Cdot = w2 - w1 -// J = [0 0 -1 0 0 1] -// K = invI1 + invI2 - -void b2WeldJointDef::Initialize(b2Body* bA, b2Body* bB, const b2Vec2& anchor) -{ - bodyA = bA; - bodyB = bB; - localAnchorA = bodyA->GetLocalPoint(anchor); - localAnchorB = bodyB->GetLocalPoint(anchor); - referenceAngle = bodyB->GetAngle() - bodyA->GetAngle(); -} - -b2WeldJoint::b2WeldJoint(const b2WeldJointDef* def) -: b2Joint(def) -{ - m_localAnchorA = def->localAnchorA; - m_localAnchorB = def->localAnchorB; - m_referenceAngle = def->referenceAngle; - m_frequencyHz = def->frequencyHz; - m_dampingRatio = def->dampingRatio; - - m_impulse.SetZero(); -} - -void b2WeldJoint::InitVelocityConstraints(const b2SolverData& data) -{ - m_indexA = m_bodyA->m_islandIndex; - m_indexB = m_bodyB->m_islandIndex; - m_localCenterA = m_bodyA->m_sweep.localCenter; - m_localCenterB = m_bodyB->m_sweep.localCenter; - m_invMassA = m_bodyA->m_invMass; - m_invMassB = m_bodyB->m_invMass; - m_invIA = m_bodyA->m_invI; - m_invIB = m_bodyB->m_invI; - - float32 aA = data.positions[m_indexA].a; - b2Vec2 vA = data.velocities[m_indexA].v; - float32 wA = data.velocities[m_indexA].w; - - float32 aB = data.positions[m_indexB].a; - b2Vec2 vB = data.velocities[m_indexB].v; - float32 wB = data.velocities[m_indexB].w; - - b2Rot qA(aA), qB(aB); - - m_rA = b2Mul(qA, m_localAnchorA - m_localCenterA); - m_rB = b2Mul(qB, m_localAnchorB - m_localCenterB); - - // J = [-I -r1_skew I r2_skew] - // [ 0 -1 0 1] - // r_skew = [-ry; rx] - - // Matlab - // K = [ mA+r1y^2*iA+mB+r2y^2*iB, -r1y*iA*r1x-r2y*iB*r2x, -r1y*iA-r2y*iB] - // [ -r1y*iA*r1x-r2y*iB*r2x, mA+r1x^2*iA+mB+r2x^2*iB, r1x*iA+r2x*iB] - // [ -r1y*iA-r2y*iB, r1x*iA+r2x*iB, iA+iB] - - float32 mA = m_invMassA, mB = m_invMassB; - float32 iA = m_invIA, iB = m_invIB; - - b2Mat33 K; - K.ex.x = mA + mB + m_rA.y * m_rA.y * iA + m_rB.y * m_rB.y * iB; - K.ey.x = -m_rA.y * m_rA.x * iA - m_rB.y * m_rB.x * iB; - K.ez.x = -m_rA.y * iA - m_rB.y * iB; - K.ex.y = K.ey.x; - K.ey.y = mA + mB + m_rA.x * m_rA.x * iA + m_rB.x * m_rB.x * iB; - K.ez.y = m_rA.x * iA + m_rB.x * iB; - K.ex.z = K.ez.x; - K.ey.z = K.ez.y; - K.ez.z = iA + iB; - - if (m_frequencyHz > 0.0f) - { - K.GetInverse22(&m_mass); - - float32 invM = iA + iB; - float32 m = invM > 0.0f ? 1.0f / invM : 0.0f; - - float32 C = aB - aA - m_referenceAngle; - - // Frequency - float32 omega = 2.0f * b2_pi * m_frequencyHz; - - // Damping coefficient - float32 d = 2.0f * m * m_dampingRatio * omega; - - // Spring stiffness - float32 k = m * omega * omega; - - // magic formulas - float32 h = data.step.dt; - m_gamma = h * (d + h * k); - m_gamma = m_gamma != 0.0f ? 1.0f / m_gamma : 0.0f; - m_bias = C * h * k * m_gamma; - - invM += m_gamma; - m_mass.ez.z = invM != 0.0f ? 1.0f / invM : 0.0f; - } - else - { - K.GetSymInverse33(&m_mass); - m_gamma = 0.0f; - m_bias = 0.0f; - } - - if (data.step.warmStarting) - { - // Scale impulses to support a variable time step. - m_impulse *= data.step.dtRatio; - - b2Vec2 P(m_impulse.x, m_impulse.y); - - vA -= mA * P; - wA -= iA * (b2Cross(m_rA, P) + m_impulse.z); - - vB += mB * P; - wB += iB * (b2Cross(m_rB, P) + m_impulse.z); - } - else - { - m_impulse.SetZero(); - } - - data.velocities[m_indexA].v = vA; - data.velocities[m_indexA].w = wA; - data.velocities[m_indexB].v = vB; - data.velocities[m_indexB].w = wB; -} - -void b2WeldJoint::SolveVelocityConstraints(const b2SolverData& data) -{ - b2Vec2 vA = data.velocities[m_indexA].v; - float32 wA = data.velocities[m_indexA].w; - b2Vec2 vB = data.velocities[m_indexB].v; - float32 wB = data.velocities[m_indexB].w; - - float32 mA = m_invMassA, mB = m_invMassB; - float32 iA = m_invIA, iB = m_invIB; - - if (m_frequencyHz > 0.0f) - { - float32 Cdot2 = wB - wA; - - float32 impulse2 = -m_mass.ez.z * (Cdot2 + m_bias + m_gamma * m_impulse.z); - m_impulse.z += impulse2; - - wA -= iA * impulse2; - wB += iB * impulse2; - - b2Vec2 Cdot1 = vB + b2Cross(wB, m_rB) - vA - b2Cross(wA, m_rA); - - b2Vec2 impulse1 = -b2Mul22(m_mass, Cdot1); - m_impulse.x += impulse1.x; - m_impulse.y += impulse1.y; - - b2Vec2 P = impulse1; - - vA -= mA * P; - wA -= iA * b2Cross(m_rA, P); - - vB += mB * P; - wB += iB * b2Cross(m_rB, P); - } - else - { - b2Vec2 Cdot1 = vB + b2Cross(wB, m_rB) - vA - b2Cross(wA, m_rA); - float32 Cdot2 = wB - wA; - b2Vec3 Cdot(Cdot1.x, Cdot1.y, Cdot2); - - b2Vec3 impulse = -b2Mul(m_mass, Cdot); - m_impulse += impulse; - - b2Vec2 P(impulse.x, impulse.y); - - vA -= mA * P; - wA -= iA * (b2Cross(m_rA, P) + impulse.z); - - vB += mB * P; - wB += iB * (b2Cross(m_rB, P) + impulse.z); - } - - data.velocities[m_indexA].v = vA; - data.velocities[m_indexA].w = wA; - data.velocities[m_indexB].v = vB; - data.velocities[m_indexB].w = wB; -} - -bool b2WeldJoint::SolvePositionConstraints(const b2SolverData& data) -{ - b2Vec2 cA = data.positions[m_indexA].c; - float32 aA = data.positions[m_indexA].a; - b2Vec2 cB = data.positions[m_indexB].c; - float32 aB = data.positions[m_indexB].a; - - b2Rot qA(aA), qB(aB); - - float32 mA = m_invMassA, mB = m_invMassB; - float32 iA = m_invIA, iB = m_invIB; - - b2Vec2 rA = b2Mul(qA, m_localAnchorA - m_localCenterA); - b2Vec2 rB = b2Mul(qB, m_localAnchorB - m_localCenterB); - - float32 positionError, angularError; - - b2Mat33 K; - K.ex.x = mA + mB + rA.y * rA.y * iA + rB.y * rB.y * iB; - K.ey.x = -rA.y * rA.x * iA - rB.y * rB.x * iB; - K.ez.x = -rA.y * iA - rB.y * iB; - K.ex.y = K.ey.x; - K.ey.y = mA + mB + rA.x * rA.x * iA + rB.x * rB.x * iB; - K.ez.y = rA.x * iA + rB.x * iB; - K.ex.z = K.ez.x; - K.ey.z = K.ez.y; - K.ez.z = iA + iB; - - if (m_frequencyHz > 0.0f) - { - b2Vec2 C1 = cB + rB - cA - rA; - - positionError = C1.Length(); - angularError = 0.0f; - - b2Vec2 P = -K.Solve22(C1); - - cA -= mA * P; - aA -= iA * b2Cross(rA, P); - - cB += mB * P; - aB += iB * b2Cross(rB, P); - } - else - { - b2Vec2 C1 = cB + rB - cA - rA; - float32 C2 = aB - aA - m_referenceAngle; - - positionError = C1.Length(); - angularError = b2Abs(C2); - - b2Vec3 C(C1.x, C1.y, C2); - - b2Vec3 impulse = -K.Solve33(C); - b2Vec2 P(impulse.x, impulse.y); - - cA -= mA * P; - aA -= iA * (b2Cross(rA, P) + impulse.z); - - cB += mB * P; - aB += iB * (b2Cross(rB, P) + impulse.z); - } - - data.positions[m_indexA].c = cA; - data.positions[m_indexA].a = aA; - data.positions[m_indexB].c = cB; - data.positions[m_indexB].a = aB; - - return positionError <= b2_linearSlop && angularError <= b2_angularSlop; -} - -b2Vec2 b2WeldJoint::GetAnchorA() const -{ - return m_bodyA->GetWorldPoint(m_localAnchorA); -} - -b2Vec2 b2WeldJoint::GetAnchorB() const -{ - return m_bodyB->GetWorldPoint(m_localAnchorB); -} - -b2Vec2 b2WeldJoint::GetReactionForce(float32 inv_dt) const -{ - b2Vec2 P(m_impulse.x, m_impulse.y); - return inv_dt * P; -} - -float32 b2WeldJoint::GetReactionTorque(float32 inv_dt) const -{ - return inv_dt * m_impulse.z; -} - -void b2WeldJoint::Dump() -{ - int32 indexA = m_bodyA->m_islandIndex; - int32 indexB = m_bodyB->m_islandIndex; - - b2Log(" b2WeldJointDef jd;\n"); - b2Log(" jd.bodyA = bodies[%d];\n", indexA); - b2Log(" jd.bodyB = bodies[%d];\n", indexB); - b2Log(" jd.collideConnected = bool(%d);\n", m_collideConnected); - b2Log(" jd.localAnchorA.Set(%.15lef, %.15lef);\n", m_localAnchorA.x, m_localAnchorA.y); - b2Log(" jd.localAnchorB.Set(%.15lef, %.15lef);\n", m_localAnchorB.x, m_localAnchorB.y); - b2Log(" jd.referenceAngle = %.15lef;\n", m_referenceAngle); - b2Log(" jd.frequencyHz = %.15lef;\n", m_frequencyHz); - b2Log(" jd.dampingRatio = %.15lef;\n", m_dampingRatio); - b2Log(" joints[%d] = m_world->CreateJoint(&jd);\n", m_index); -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2WeldJoint.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2WeldJoint.h deleted file mode 100644 index 2adfc26..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2WeldJoint.h +++ /dev/null @@ -1,126 +0,0 @@ -/* -* Copyright (c) 2006-2011 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_WELD_JOINT_H -#define B2_WELD_JOINT_H - -#include - -/// Weld joint definition. You need to specify local anchor points -/// where they are attached and the relative body angle. The position -/// of the anchor points is important for computing the reaction torque. -struct b2WeldJointDef : public b2JointDef -{ - b2WeldJointDef() - { - type = e_weldJoint; - localAnchorA.Set(0.0f, 0.0f); - localAnchorB.Set(0.0f, 0.0f); - referenceAngle = 0.0f; - frequencyHz = 0.0f; - dampingRatio = 0.0f; - } - - /// Initialize the bodies, anchors, and reference angle using a world - /// anchor point. - void Initialize(b2Body* bodyA, b2Body* bodyB, const b2Vec2& anchor); - - /// The local anchor point relative to bodyA's origin. - b2Vec2 localAnchorA; - - /// The local anchor point relative to bodyB's origin. - b2Vec2 localAnchorB; - - /// The bodyB angle minus bodyA angle in the reference state (radians). - float32 referenceAngle; - - /// The mass-spring-damper frequency in Hertz. Rotation only. - /// Disable softness with a value of 0. - float32 frequencyHz; - - /// The damping ratio. 0 = no damping, 1 = critical damping. - float32 dampingRatio; -}; - -/// A weld joint essentially glues two bodies together. A weld joint may -/// distort somewhat because the island constraint solver is approximate. -class b2WeldJoint : public b2Joint -{ -public: - b2Vec2 GetAnchorA() const; - b2Vec2 GetAnchorB() const; - - b2Vec2 GetReactionForce(float32 inv_dt) const; - float32 GetReactionTorque(float32 inv_dt) const; - - /// The local anchor point relative to bodyA's origin. - const b2Vec2& GetLocalAnchorA() const { return m_localAnchorA; } - - /// The local anchor point relative to bodyB's origin. - const b2Vec2& GetLocalAnchorB() const { return m_localAnchorB; } - - /// Get the reference angle. - float32 GetReferenceAngle() const { return m_referenceAngle; } - - /// Set/get frequency in Hz. - void SetFrequency(float32 hz) { m_frequencyHz = hz; } - float32 GetFrequency() const { return m_frequencyHz; } - - /// Set/get damping ratio. - void SetDampingRatio(float32 ratio) { m_dampingRatio = ratio; } - float32 GetDampingRatio() const { return m_dampingRatio; } - - /// Dump to b2Log - void Dump(); - -protected: - - friend class b2Joint; - - b2WeldJoint(const b2WeldJointDef* def); - - void InitVelocityConstraints(const b2SolverData& data); - void SolveVelocityConstraints(const b2SolverData& data); - bool SolvePositionConstraints(const b2SolverData& data); - - float32 m_frequencyHz; - float32 m_dampingRatio; - float32 m_bias; - - // Solver shared - b2Vec2 m_localAnchorA; - b2Vec2 m_localAnchorB; - float32 m_referenceAngle; - float32 m_gamma; - b2Vec3 m_impulse; - - // Solver temp - int32 m_indexA; - int32 m_indexB; - b2Vec2 m_rA; - b2Vec2 m_rB; - b2Vec2 m_localCenterA; - b2Vec2 m_localCenterB; - float32 m_invMassA; - float32 m_invMassB; - float32 m_invIA; - float32 m_invIB; - b2Mat33 m_mass; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2WheelJoint.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2WheelJoint.cpp deleted file mode 100644 index 74eda68..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2WheelJoint.cpp +++ /dev/null @@ -1,419 +0,0 @@ -/* -* Copyright (c) 2006-2007 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include -#include -#include - -// Linear constraint (point-to-line) -// d = pB - pA = xB + rB - xA - rA -// C = dot(ay, d) -// Cdot = dot(d, cross(wA, ay)) + dot(ay, vB + cross(wB, rB) - vA - cross(wA, rA)) -// = -dot(ay, vA) - dot(cross(d + rA, ay), wA) + dot(ay, vB) + dot(cross(rB, ay), vB) -// J = [-ay, -cross(d + rA, ay), ay, cross(rB, ay)] - -// Spring linear constraint -// C = dot(ax, d) -// Cdot = = -dot(ax, vA) - dot(cross(d + rA, ax), wA) + dot(ax, vB) + dot(cross(rB, ax), vB) -// J = [-ax -cross(d+rA, ax) ax cross(rB, ax)] - -// Motor rotational constraint -// Cdot = wB - wA -// J = [0 0 -1 0 0 1] - -void b2WheelJointDef::Initialize(b2Body* bA, b2Body* bB, const b2Vec2& anchor, const b2Vec2& axis) -{ - bodyA = bA; - bodyB = bB; - localAnchorA = bodyA->GetLocalPoint(anchor); - localAnchorB = bodyB->GetLocalPoint(anchor); - localAxisA = bodyA->GetLocalVector(axis); -} - -b2WheelJoint::b2WheelJoint(const b2WheelJointDef* def) -: b2Joint(def) -{ - m_localAnchorA = def->localAnchorA; - m_localAnchorB = def->localAnchorB; - m_localXAxisA = def->localAxisA; - m_localYAxisA = b2Cross(1.0f, m_localXAxisA); - - m_mass = 0.0f; - m_impulse = 0.0f; - m_motorMass = 0.0f; - m_motorImpulse = 0.0f; - m_springMass = 0.0f; - m_springImpulse = 0.0f; - - m_maxMotorTorque = def->maxMotorTorque; - m_motorSpeed = def->motorSpeed; - m_enableMotor = def->enableMotor; - - m_frequencyHz = def->frequencyHz; - m_dampingRatio = def->dampingRatio; - - m_bias = 0.0f; - m_gamma = 0.0f; - - m_ax.SetZero(); - m_ay.SetZero(); -} - -void b2WheelJoint::InitVelocityConstraints(const b2SolverData& data) -{ - m_indexA = m_bodyA->m_islandIndex; - m_indexB = m_bodyB->m_islandIndex; - m_localCenterA = m_bodyA->m_sweep.localCenter; - m_localCenterB = m_bodyB->m_sweep.localCenter; - m_invMassA = m_bodyA->m_invMass; - m_invMassB = m_bodyB->m_invMass; - m_invIA = m_bodyA->m_invI; - m_invIB = m_bodyB->m_invI; - - float32 mA = m_invMassA, mB = m_invMassB; - float32 iA = m_invIA, iB = m_invIB; - - b2Vec2 cA = data.positions[m_indexA].c; - float32 aA = data.positions[m_indexA].a; - b2Vec2 vA = data.velocities[m_indexA].v; - float32 wA = data.velocities[m_indexA].w; - - b2Vec2 cB = data.positions[m_indexB].c; - float32 aB = data.positions[m_indexB].a; - b2Vec2 vB = data.velocities[m_indexB].v; - float32 wB = data.velocities[m_indexB].w; - - b2Rot qA(aA), qB(aB); - - // Compute the effective masses. - b2Vec2 rA = b2Mul(qA, m_localAnchorA - m_localCenterA); - b2Vec2 rB = b2Mul(qB, m_localAnchorB - m_localCenterB); - b2Vec2 d = cB + rB - cA - rA; - - // Point to line constraint - { - m_ay = b2Mul(qA, m_localYAxisA); - m_sAy = b2Cross(d + rA, m_ay); - m_sBy = b2Cross(rB, m_ay); - - m_mass = mA + mB + iA * m_sAy * m_sAy + iB * m_sBy * m_sBy; - - if (m_mass > 0.0f) - { - m_mass = 1.0f / m_mass; - } - } - - // Spring constraint - m_springMass = 0.0f; - m_bias = 0.0f; - m_gamma = 0.0f; - if (m_frequencyHz > 0.0f) - { - m_ax = b2Mul(qA, m_localXAxisA); - m_sAx = b2Cross(d + rA, m_ax); - m_sBx = b2Cross(rB, m_ax); - - float32 invMass = mA + mB + iA * m_sAx * m_sAx + iB * m_sBx * m_sBx; - - if (invMass > 0.0f) - { - m_springMass = 1.0f / invMass; - - float32 C = b2Dot(d, m_ax); - - // Frequency - float32 omega = 2.0f * b2_pi * m_frequencyHz; - - // Damping coefficient - float32 d = 2.0f * m_springMass * m_dampingRatio * omega; - - // Spring stiffness - float32 k = m_springMass * omega * omega; - - // magic formulas - float32 h = data.step.dt; - m_gamma = h * (d + h * k); - if (m_gamma > 0.0f) - { - m_gamma = 1.0f / m_gamma; - } - - m_bias = C * h * k * m_gamma; - - m_springMass = invMass + m_gamma; - if (m_springMass > 0.0f) - { - m_springMass = 1.0f / m_springMass; - } - } - } - else - { - m_springImpulse = 0.0f; - } - - // Rotational motor - if (m_enableMotor) - { - m_motorMass = iA + iB; - if (m_motorMass > 0.0f) - { - m_motorMass = 1.0f / m_motorMass; - } - } - else - { - m_motorMass = 0.0f; - m_motorImpulse = 0.0f; - } - - if (data.step.warmStarting) - { - // Account for variable time step. - m_impulse *= data.step.dtRatio; - m_springImpulse *= data.step.dtRatio; - m_motorImpulse *= data.step.dtRatio; - - b2Vec2 P = m_impulse * m_ay + m_springImpulse * m_ax; - float32 LA = m_impulse * m_sAy + m_springImpulse * m_sAx + m_motorImpulse; - float32 LB = m_impulse * m_sBy + m_springImpulse * m_sBx + m_motorImpulse; - - vA -= m_invMassA * P; - wA -= m_invIA * LA; - - vB += m_invMassB * P; - wB += m_invIB * LB; - } - else - { - m_impulse = 0.0f; - m_springImpulse = 0.0f; - m_motorImpulse = 0.0f; - } - - data.velocities[m_indexA].v = vA; - data.velocities[m_indexA].w = wA; - data.velocities[m_indexB].v = vB; - data.velocities[m_indexB].w = wB; -} - -void b2WheelJoint::SolveVelocityConstraints(const b2SolverData& data) -{ - float32 mA = m_invMassA, mB = m_invMassB; - float32 iA = m_invIA, iB = m_invIB; - - b2Vec2 vA = data.velocities[m_indexA].v; - float32 wA = data.velocities[m_indexA].w; - b2Vec2 vB = data.velocities[m_indexB].v; - float32 wB = data.velocities[m_indexB].w; - - // Solve spring constraint - { - float32 Cdot = b2Dot(m_ax, vB - vA) + m_sBx * wB - m_sAx * wA; - float32 impulse = -m_springMass * (Cdot + m_bias + m_gamma * m_springImpulse); - m_springImpulse += impulse; - - b2Vec2 P = impulse * m_ax; - float32 LA = impulse * m_sAx; - float32 LB = impulse * m_sBx; - - vA -= mA * P; - wA -= iA * LA; - - vB += mB * P; - wB += iB * LB; - } - - // Solve rotational motor constraint - { - float32 Cdot = wB - wA - m_motorSpeed; - float32 impulse = -m_motorMass * Cdot; - - float32 oldImpulse = m_motorImpulse; - float32 maxImpulse = data.step.dt * m_maxMotorTorque; - m_motorImpulse = b2Clamp(m_motorImpulse + impulse, -maxImpulse, maxImpulse); - impulse = m_motorImpulse - oldImpulse; - - wA -= iA * impulse; - wB += iB * impulse; - } - - // Solve point to line constraint - { - float32 Cdot = b2Dot(m_ay, vB - vA) + m_sBy * wB - m_sAy * wA; - float32 impulse = -m_mass * Cdot; - m_impulse += impulse; - - b2Vec2 P = impulse * m_ay; - float32 LA = impulse * m_sAy; - float32 LB = impulse * m_sBy; - - vA -= mA * P; - wA -= iA * LA; - - vB += mB * P; - wB += iB * LB; - } - - data.velocities[m_indexA].v = vA; - data.velocities[m_indexA].w = wA; - data.velocities[m_indexB].v = vB; - data.velocities[m_indexB].w = wB; -} - -bool b2WheelJoint::SolvePositionConstraints(const b2SolverData& data) -{ - b2Vec2 cA = data.positions[m_indexA].c; - float32 aA = data.positions[m_indexA].a; - b2Vec2 cB = data.positions[m_indexB].c; - float32 aB = data.positions[m_indexB].a; - - b2Rot qA(aA), qB(aB); - - b2Vec2 rA = b2Mul(qA, m_localAnchorA - m_localCenterA); - b2Vec2 rB = b2Mul(qB, m_localAnchorB - m_localCenterB); - b2Vec2 d = (cB - cA) + rB - rA; - - b2Vec2 ay = b2Mul(qA, m_localYAxisA); - - float32 sAy = b2Cross(d + rA, ay); - float32 sBy = b2Cross(rB, ay); - - float32 C = b2Dot(d, ay); - - float32 k = m_invMassA + m_invMassB + m_invIA * m_sAy * m_sAy + m_invIB * m_sBy * m_sBy; - - float32 impulse; - if (k != 0.0f) - { - impulse = - C / k; - } - else - { - impulse = 0.0f; - } - - b2Vec2 P = impulse * ay; - float32 LA = impulse * sAy; - float32 LB = impulse * sBy; - - cA -= m_invMassA * P; - aA -= m_invIA * LA; - cB += m_invMassB * P; - aB += m_invIB * LB; - - data.positions[m_indexA].c = cA; - data.positions[m_indexA].a = aA; - data.positions[m_indexB].c = cB; - data.positions[m_indexB].a = aB; - - return b2Abs(C) <= b2_linearSlop; -} - -b2Vec2 b2WheelJoint::GetAnchorA() const -{ - return m_bodyA->GetWorldPoint(m_localAnchorA); -} - -b2Vec2 b2WheelJoint::GetAnchorB() const -{ - return m_bodyB->GetWorldPoint(m_localAnchorB); -} - -b2Vec2 b2WheelJoint::GetReactionForce(float32 inv_dt) const -{ - return inv_dt * (m_impulse * m_ay + m_springImpulse * m_ax); -} - -float32 b2WheelJoint::GetReactionTorque(float32 inv_dt) const -{ - return inv_dt * m_motorImpulse; -} - -float32 b2WheelJoint::GetJointTranslation() const -{ - b2Body* bA = m_bodyA; - b2Body* bB = m_bodyB; - - b2Vec2 pA = bA->GetWorldPoint(m_localAnchorA); - b2Vec2 pB = bB->GetWorldPoint(m_localAnchorB); - b2Vec2 d = pB - pA; - b2Vec2 axis = bA->GetWorldVector(m_localXAxisA); - - float32 translation = b2Dot(d, axis); - return translation; -} - -float32 b2WheelJoint::GetJointSpeed() const -{ - float32 wA = m_bodyA->m_angularVelocity; - float32 wB = m_bodyB->m_angularVelocity; - return wB - wA; -} - -bool b2WheelJoint::IsMotorEnabled() const -{ - return m_enableMotor; -} - -void b2WheelJoint::EnableMotor(bool flag) -{ - m_bodyA->SetAwake(true); - m_bodyB->SetAwake(true); - m_enableMotor = flag; -} - -void b2WheelJoint::SetMotorSpeed(float32 speed) -{ - m_bodyA->SetAwake(true); - m_bodyB->SetAwake(true); - m_motorSpeed = speed; -} - -void b2WheelJoint::SetMaxMotorTorque(float32 torque) -{ - m_bodyA->SetAwake(true); - m_bodyB->SetAwake(true); - m_maxMotorTorque = torque; -} - -float32 b2WheelJoint::GetMotorTorque(float32 inv_dt) const -{ - return inv_dt * m_motorImpulse; -} - -void b2WheelJoint::Dump() -{ - int32 indexA = m_bodyA->m_islandIndex; - int32 indexB = m_bodyB->m_islandIndex; - - b2Log(" b2WheelJointDef jd;\n"); - b2Log(" jd.bodyA = bodies[%d];\n", indexA); - b2Log(" jd.bodyB = bodies[%d];\n", indexB); - b2Log(" jd.collideConnected = bool(%d);\n", m_collideConnected); - b2Log(" jd.localAnchorA.Set(%.15lef, %.15lef);\n", m_localAnchorA.x, m_localAnchorA.y); - b2Log(" jd.localAnchorB.Set(%.15lef, %.15lef);\n", m_localAnchorB.x, m_localAnchorB.y); - b2Log(" jd.localAxisA.Set(%.15lef, %.15lef);\n", m_localXAxisA.x, m_localXAxisA.y); - b2Log(" jd.enableMotor = bool(%d);\n", m_enableMotor); - b2Log(" jd.motorSpeed = %.15lef;\n", m_motorSpeed); - b2Log(" jd.maxMotorTorque = %.15lef;\n", m_maxMotorTorque); - b2Log(" jd.frequencyHz = %.15lef;\n", m_frequencyHz); - b2Log(" jd.dampingRatio = %.15lef;\n", m_dampingRatio); - b2Log(" joints[%d] = m_world->CreateJoint(&jd);\n", m_index); -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2WheelJoint.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2WheelJoint.h deleted file mode 100644 index 6e8b645..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2WheelJoint.h +++ /dev/null @@ -1,211 +0,0 @@ -/* -* Copyright (c) 2006-2011 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_WHEEL_JOINT_H -#define B2_WHEEL_JOINT_H - -#include - -/// Wheel joint definition. This requires defining a line of -/// motion using an axis and an anchor point. The definition uses local -/// anchor points and a local axis so that the initial configuration -/// can violate the constraint slightly. The joint translation is zero -/// when the local anchor points coincide in world space. Using local -/// anchors and a local axis helps when saving and loading a game. -struct b2WheelJointDef : public b2JointDef -{ - b2WheelJointDef() - { - type = e_wheelJoint; - localAnchorA.SetZero(); - localAnchorB.SetZero(); - localAxisA.Set(1.0f, 0.0f); - enableMotor = false; - maxMotorTorque = 0.0f; - motorSpeed = 0.0f; - frequencyHz = 2.0f; - dampingRatio = 0.7f; - } - - /// Initialize the bodies, anchors, axis, and reference angle using the world - /// anchor and world axis. - void Initialize(b2Body* bodyA, b2Body* bodyB, const b2Vec2& anchor, const b2Vec2& axis); - - /// The local anchor point relative to bodyA's origin. - b2Vec2 localAnchorA; - - /// The local anchor point relative to bodyB's origin. - b2Vec2 localAnchorB; - - /// The local translation axis in bodyA. - b2Vec2 localAxisA; - - /// Enable/disable the joint motor. - bool enableMotor; - - /// The maximum motor torque, usually in N-m. - float32 maxMotorTorque; - - /// The desired motor speed in radians per second. - float32 motorSpeed; - - /// Suspension frequency, zero indicates no suspension - float32 frequencyHz; - - /// Suspension damping ratio, one indicates critical damping - float32 dampingRatio; -}; - -/// A wheel joint. This joint provides two degrees of freedom: translation -/// along an axis fixed in bodyA and rotation in the plane. You can use a -/// joint limit to restrict the range of motion and a joint motor to drive -/// the rotation or to model rotational friction. -/// This joint is designed for vehicle suspensions. -class b2WheelJoint : public b2Joint -{ -public: - b2Vec2 GetAnchorA() const; - b2Vec2 GetAnchorB() const; - - b2Vec2 GetReactionForce(float32 inv_dt) const; - float32 GetReactionTorque(float32 inv_dt) const; - - /// The local anchor point relative to bodyA's origin. - const b2Vec2& GetLocalAnchorA() const { return m_localAnchorA; } - - /// The local anchor point relative to bodyB's origin. - const b2Vec2& GetLocalAnchorB() const { return m_localAnchorB; } - - /// The local joint axis relative to bodyA. - const b2Vec2& GetLocalAxisA() const { return m_localXAxisA; } - - /// Get the current joint translation, usually in meters. - float32 GetJointTranslation() const; - - /// Get the current joint translation speed, usually in meters per second. - float32 GetJointSpeed() const; - - /// Is the joint motor enabled? - bool IsMotorEnabled() const; - - /// Enable/disable the joint motor. - void EnableMotor(bool flag); - - /// Set the motor speed, usually in radians per second. - void SetMotorSpeed(float32 speed); - - /// Get the motor speed, usually in radians per second. - float32 GetMotorSpeed() const; - - /// Set/Get the maximum motor force, usually in N-m. - void SetMaxMotorTorque(float32 torque); - float32 GetMaxMotorTorque() const; - - /// Get the current motor torque given the inverse time step, usually in N-m. - float32 GetMotorTorque(float32 inv_dt) const; - - /// Set/Get the spring frequency in hertz. Setting the frequency to zero disables the spring. - void SetSpringFrequencyHz(float32 hz); - float32 GetSpringFrequencyHz() const; - - /// Set/Get the spring damping ratio - void SetSpringDampingRatio(float32 ratio); - float32 GetSpringDampingRatio() const; - - /// Dump to b2Log - void Dump(); - -protected: - - friend class b2Joint; - b2WheelJoint(const b2WheelJointDef* def); - - void InitVelocityConstraints(const b2SolverData& data); - void SolveVelocityConstraints(const b2SolverData& data); - bool SolvePositionConstraints(const b2SolverData& data); - - float32 m_frequencyHz; - float32 m_dampingRatio; - - // Solver shared - b2Vec2 m_localAnchorA; - b2Vec2 m_localAnchorB; - b2Vec2 m_localXAxisA; - b2Vec2 m_localYAxisA; - - float32 m_impulse; - float32 m_motorImpulse; - float32 m_springImpulse; - - float32 m_maxMotorTorque; - float32 m_motorSpeed; - bool m_enableMotor; - - // Solver temp - int32 m_indexA; - int32 m_indexB; - b2Vec2 m_localCenterA; - b2Vec2 m_localCenterB; - float32 m_invMassA; - float32 m_invMassB; - float32 m_invIA; - float32 m_invIB; - - b2Vec2 m_ax, m_ay; - float32 m_sAx, m_sBx; - float32 m_sAy, m_sBy; - - float32 m_mass; - float32 m_motorMass; - float32 m_springMass; - - float32 m_bias; - float32 m_gamma; -}; - -inline float32 b2WheelJoint::GetMotorSpeed() const -{ - return m_motorSpeed; -} - -inline float32 b2WheelJoint::GetMaxMotorTorque() const -{ - return m_maxMotorTorque; -} - -inline void b2WheelJoint::SetSpringFrequencyHz(float32 hz) -{ - m_frequencyHz = hz; -} - -inline float32 b2WheelJoint::GetSpringFrequencyHz() const -{ - return m_frequencyHz; -} - -inline void b2WheelJoint::SetSpringDampingRatio(float32 ratio) -{ - m_dampingRatio = ratio; -} - -inline float32 b2WheelJoint::GetSpringDampingRatio() const -{ - return m_dampingRatio; -} - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2Body.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2Body.cpp deleted file mode 100644 index d99fc49..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2Body.cpp +++ /dev/null @@ -1,549 +0,0 @@ -/* -* Copyright (c) 2006-2007 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include -#include -#include -#include -#include - -b2Body::b2Body(const b2BodyDef* bd, b2World* world) -{ - b2Assert(bd->position.IsValid()); - b2Assert(bd->linearVelocity.IsValid()); - b2Assert(b2IsValid(bd->angle)); - b2Assert(b2IsValid(bd->angularVelocity)); - b2Assert(b2IsValid(bd->angularDamping) && bd->angularDamping >= 0.0f); - b2Assert(b2IsValid(bd->linearDamping) && bd->linearDamping >= 0.0f); - - m_flags = 0; - - if (bd->bullet) - { - m_flags |= e_bulletFlag; - } - if (bd->fixedRotation) - { - m_flags |= e_fixedRotationFlag; - } - if (bd->allowSleep) - { - m_flags |= e_autoSleepFlag; - } - if (bd->awake) - { - m_flags |= e_awakeFlag; - } - if (bd->active) - { - m_flags |= e_activeFlag; - } - - m_world = world; - - m_xf.p = bd->position; - m_xf.q.Set(bd->angle); - - m_sweep.localCenter.SetZero(); - m_sweep.c0 = m_xf.p; - m_sweep.c = m_xf.p; - m_sweep.a0 = bd->angle; - m_sweep.a = bd->angle; - m_sweep.alpha0 = 0.0f; - - m_jointList = NULL; - m_contactList = NULL; - m_prev = NULL; - m_next = NULL; - - m_linearVelocity = bd->linearVelocity; - m_angularVelocity = bd->angularVelocity; - - m_linearDamping = bd->linearDamping; - m_angularDamping = bd->angularDamping; - m_gravityScale = bd->gravityScale; - - m_force.SetZero(); - m_torque = 0.0f; - - m_sleepTime = 0.0f; - - m_type = bd->type; - - if (m_type == b2_dynamicBody) - { - m_mass = 1.0f; - m_invMass = 1.0f; - } - else - { - m_mass = 0.0f; - m_invMass = 0.0f; - } - - m_I = 0.0f; - m_invI = 0.0f; - - m_userData = bd->userData; - - m_fixtureList = NULL; - m_fixtureCount = 0; -} - -b2Body::~b2Body() -{ - // shapes and joints are destroyed in b2World::Destroy -} - -void b2Body::SetType(b2BodyType type) -{ - b2Assert(m_world->IsLocked() == false); - if (m_world->IsLocked() == true) - { - return; - } - - if (m_type == type) - { - return; - } - - m_type = type; - - ResetMassData(); - - if (m_type == b2_staticBody) - { - m_linearVelocity.SetZero(); - m_angularVelocity = 0.0f; - m_sweep.a0 = m_sweep.a; - m_sweep.c0 = m_sweep.c; - SynchronizeFixtures(); - } - - SetAwake(true); - - m_force.SetZero(); - m_torque = 0.0f; - - // Delete the attached contacts. - b2ContactEdge* ce = m_contactList; - while (ce) - { - b2ContactEdge* ce0 = ce; - ce = ce->next; - m_world->m_contactManager.Destroy(ce0->contact); - } - m_contactList = NULL; - - // Touch the proxies so that new contacts will be created (when appropriate) - b2BroadPhase* broadPhase = &m_world->m_contactManager.m_broadPhase; - for (b2Fixture* f = m_fixtureList; f; f = f->m_next) - { - int32 proxyCount = f->m_proxyCount; - for (int32 i = 0; i < proxyCount; ++i) - { - broadPhase->TouchProxy(f->m_proxies[i].proxyId); - } - } -} - -b2Fixture* b2Body::CreateFixture(const b2FixtureDef* def) -{ - b2Assert(m_world->IsLocked() == false); - if (m_world->IsLocked() == true) - { - return NULL; - } - - b2BlockAllocator* allocator = &m_world->m_blockAllocator; - - void* memory = allocator->Allocate(sizeof(b2Fixture)); - b2Fixture* fixture = new (memory) b2Fixture; - fixture->Create(allocator, this, def); - - if (m_flags & e_activeFlag) - { - b2BroadPhase* broadPhase = &m_world->m_contactManager.m_broadPhase; - fixture->CreateProxies(broadPhase, m_xf); - } - - fixture->m_next = m_fixtureList; - m_fixtureList = fixture; - ++m_fixtureCount; - - fixture->m_body = this; - - // Adjust mass properties if needed. - if (fixture->m_density > 0.0f) - { - ResetMassData(); - } - - // Let the world know we have a new fixture. This will cause new contacts - // to be created at the beginning of the next time step. - m_world->m_flags |= b2World::e_newFixture; - - return fixture; -} - -b2Fixture* b2Body::CreateFixture(const b2Shape* shape, float32 density) -{ - b2FixtureDef def; - def.shape = shape; - def.density = density; - - return CreateFixture(&def); -} - -void b2Body::DestroyFixture(b2Fixture* fixture) -{ - b2Assert(m_world->IsLocked() == false); - if (m_world->IsLocked() == true) - { - return; - } - - b2Assert(fixture->m_body == this); - - // Remove the fixture from this body's singly linked list. - b2Assert(m_fixtureCount > 0); - b2Fixture** node = &m_fixtureList; - bool found = false; - while (*node != NULL) - { - if (*node == fixture) - { - *node = fixture->m_next; - found = true; - break; - } - - node = &(*node)->m_next; - } - - // You tried to remove a shape that is not attached to this body. - b2Assert(found); - - // Destroy any contacts associated with the fixture. - b2ContactEdge* edge = m_contactList; - while (edge) - { - b2Contact* c = edge->contact; - edge = edge->next; - - b2Fixture* fixtureA = c->GetFixtureA(); - b2Fixture* fixtureB = c->GetFixtureB(); - - if (fixture == fixtureA || fixture == fixtureB) - { - // This destroys the contact and removes it from - // this body's contact list. - m_world->m_contactManager.Destroy(c); - } - } - - b2BlockAllocator* allocator = &m_world->m_blockAllocator; - - if (m_flags & e_activeFlag) - { - b2BroadPhase* broadPhase = &m_world->m_contactManager.m_broadPhase; - fixture->DestroyProxies(broadPhase); - } - - fixture->Destroy(allocator); - fixture->m_body = NULL; - fixture->m_next = NULL; - fixture->~b2Fixture(); - allocator->Free(fixture, sizeof(b2Fixture)); - - --m_fixtureCount; - - // Reset the mass data. - ResetMassData(); -} - -void b2Body::ResetMassData() -{ - // Compute mass data from shapes. Each shape has its own density. - m_mass = 0.0f; - m_invMass = 0.0f; - m_I = 0.0f; - m_invI = 0.0f; - m_sweep.localCenter.SetZero(); - - // Static and kinematic bodies have zero mass. - if (m_type == b2_staticBody || m_type == b2_kinematicBody) - { - m_sweep.c0 = m_xf.p; - m_sweep.c = m_xf.p; - m_sweep.a0 = m_sweep.a; - return; - } - - b2Assert(m_type == b2_dynamicBody); - - // Accumulate mass over all fixtures. - b2Vec2 localCenter = b2Vec2_zero; - for (b2Fixture* f = m_fixtureList; f; f = f->m_next) - { - if (f->m_density == 0.0f) - { - continue; - } - - b2MassData massData; - f->GetMassData(&massData); - m_mass += massData.mass; - localCenter += massData.mass * massData.center; - m_I += massData.I; - } - - // Compute center of mass. - if (m_mass > 0.0f) - { - m_invMass = 1.0f / m_mass; - localCenter *= m_invMass; - } - else - { - // Force all dynamic bodies to have a positive mass. - m_mass = 1.0f; - m_invMass = 1.0f; - } - - if (m_I > 0.0f && (m_flags & e_fixedRotationFlag) == 0) - { - // Center the inertia about the center of mass. - m_I -= m_mass * b2Dot(localCenter, localCenter); - b2Assert(m_I > 0.0f); - m_invI = 1.0f / m_I; - - } - else - { - m_I = 0.0f; - m_invI = 0.0f; - } - - // Move center of mass. - b2Vec2 oldCenter = m_sweep.c; - m_sweep.localCenter = localCenter; - m_sweep.c0 = m_sweep.c = b2Mul(m_xf, m_sweep.localCenter); - - // Update center of mass velocity. - m_linearVelocity += b2Cross(m_angularVelocity, m_sweep.c - oldCenter); -} - -void b2Body::SetMassData(const b2MassData* massData) -{ - b2Assert(m_world->IsLocked() == false); - if (m_world->IsLocked() == true) - { - return; - } - - if (m_type != b2_dynamicBody) - { - return; - } - - m_invMass = 0.0f; - m_I = 0.0f; - m_invI = 0.0f; - - m_mass = massData->mass; - if (m_mass <= 0.0f) - { - m_mass = 1.0f; - } - - m_invMass = 1.0f / m_mass; - - if (massData->I > 0.0f && (m_flags & b2Body::e_fixedRotationFlag) == 0) - { - m_I = massData->I - m_mass * b2Dot(massData->center, massData->center); - b2Assert(m_I > 0.0f); - m_invI = 1.0f / m_I; - } - - // Move center of mass. - b2Vec2 oldCenter = m_sweep.c; - m_sweep.localCenter = massData->center; - m_sweep.c0 = m_sweep.c = b2Mul(m_xf, m_sweep.localCenter); - - // Update center of mass velocity. - m_linearVelocity += b2Cross(m_angularVelocity, m_sweep.c - oldCenter); -} - -bool b2Body::ShouldCollide(const b2Body* other) const -{ - // At least one body should be dynamic. - if (m_type != b2_dynamicBody && other->m_type != b2_dynamicBody) - { - return false; - } - - // Does a joint prevent collision? - for (b2JointEdge* jn = m_jointList; jn; jn = jn->next) - { - if (jn->other == other) - { - if (jn->joint->m_collideConnected == false) - { - return false; - } - } - } - - return true; -} - -void b2Body::SetTransform(const b2Vec2& position, float32 angle) -{ - b2Assert(m_world->IsLocked() == false); - if (m_world->IsLocked() == true) - { - return; - } - - m_xf.q.Set(angle); - m_xf.p = position; - - m_sweep.c = b2Mul(m_xf, m_sweep.localCenter); - m_sweep.a = angle; - - m_sweep.c0 = m_sweep.c; - m_sweep.a0 = angle; - - b2BroadPhase* broadPhase = &m_world->m_contactManager.m_broadPhase; - for (b2Fixture* f = m_fixtureList; f; f = f->m_next) - { - f->Synchronize(broadPhase, m_xf, m_xf); - } -} - -void b2Body::SynchronizeFixtures() -{ - b2Transform xf1; - xf1.q.Set(m_sweep.a0); - xf1.p = m_sweep.c0 - b2Mul(xf1.q, m_sweep.localCenter); - - b2BroadPhase* broadPhase = &m_world->m_contactManager.m_broadPhase; - for (b2Fixture* f = m_fixtureList; f; f = f->m_next) - { - f->Synchronize(broadPhase, xf1, m_xf); - } -} - -void b2Body::SetActive(bool flag) -{ - b2Assert(m_world->IsLocked() == false); - - if (flag == IsActive()) - { - return; - } - - if (flag) - { - m_flags |= e_activeFlag; - - // Create all proxies. - b2BroadPhase* broadPhase = &m_world->m_contactManager.m_broadPhase; - for (b2Fixture* f = m_fixtureList; f; f = f->m_next) - { - f->CreateProxies(broadPhase, m_xf); - } - - // Contacts are created the next time step. - } - else - { - m_flags &= ~e_activeFlag; - - // Destroy all proxies. - b2BroadPhase* broadPhase = &m_world->m_contactManager.m_broadPhase; - for (b2Fixture* f = m_fixtureList; f; f = f->m_next) - { - f->DestroyProxies(broadPhase); - } - - // Destroy the attached contacts. - b2ContactEdge* ce = m_contactList; - while (ce) - { - b2ContactEdge* ce0 = ce; - ce = ce->next; - m_world->m_contactManager.Destroy(ce0->contact); - } - m_contactList = NULL; - } -} - -void b2Body::SetFixedRotation(bool flag) -{ - bool status = (m_flags & e_fixedRotationFlag) == e_fixedRotationFlag; - if (status == flag) - { - return; - } - - if (flag) - { - m_flags |= e_fixedRotationFlag; - } - else - { - m_flags &= ~e_fixedRotationFlag; - } - - m_angularVelocity = 0.0f; - - ResetMassData(); -} - -void b2Body::Dump() -{ - int32 bodyIndex = m_islandIndex; - - b2Log("{\n"); - b2Log(" b2BodyDef bd;\n"); - b2Log(" bd.type = b2BodyType(%d);\n", m_type); - b2Log(" bd.position.Set(%.15lef, %.15lef);\n", m_xf.p.x, m_xf.p.y); - b2Log(" bd.angle = %.15lef;\n", m_sweep.a); - b2Log(" bd.linearVelocity.Set(%.15lef, %.15lef);\n", m_linearVelocity.x, m_linearVelocity.y); - b2Log(" bd.angularVelocity = %.15lef;\n", m_angularVelocity); - b2Log(" bd.linearDamping = %.15lef;\n", m_linearDamping); - b2Log(" bd.angularDamping = %.15lef;\n", m_angularDamping); - b2Log(" bd.allowSleep = bool(%d);\n", m_flags & e_autoSleepFlag); - b2Log(" bd.awake = bool(%d);\n", m_flags & e_awakeFlag); - b2Log(" bd.fixedRotation = bool(%d);\n", m_flags & e_fixedRotationFlag); - b2Log(" bd.bullet = bool(%d);\n", m_flags & e_bulletFlag); - b2Log(" bd.active = bool(%d);\n", m_flags & e_activeFlag); - b2Log(" bd.gravityScale = %.15lef;\n", m_gravityScale); - b2Log(" bodies[%d] = m_world->CreateBody(&bd);\n", m_islandIndex); - b2Log("\n"); - for (b2Fixture* f = m_fixtureList; f; f = f->m_next) - { - b2Log(" {\n"); - f->Dump(bodyIndex); - b2Log(" }\n"); - } - b2Log("}\n"); -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2Body.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2Body.h deleted file mode 100644 index 5c4d96a..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2Body.h +++ /dev/null @@ -1,860 +0,0 @@ -/* -* Copyright (c) 2006-2011 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_BODY_H -#define B2_BODY_H - -#include -#include -#include - -class b2Fixture; -class b2Joint; -class b2Contact; -class b2Controller; -class b2World; -struct b2FixtureDef; -struct b2JointEdge; -struct b2ContactEdge; - -/// The body type. -/// static: zero mass, zero velocity, may be manually moved -/// kinematic: zero mass, non-zero velocity set by user, moved by solver -/// dynamic: positive mass, non-zero velocity determined by forces, moved by solver -enum b2BodyType -{ - b2_staticBody = 0, - b2_kinematicBody, - b2_dynamicBody - - // TODO_ERIN - //b2_bulletBody, -}; - -/// A body definition holds all the data needed to construct a rigid body. -/// You can safely re-use body definitions. Shapes are added to a body after construction. -struct b2BodyDef -{ - /// This constructor sets the body definition default values. - b2BodyDef() - { - userData = NULL; - position.Set(0.0f, 0.0f); - angle = 0.0f; - linearVelocity.Set(0.0f, 0.0f); - angularVelocity = 0.0f; - linearDamping = 0.0f; - angularDamping = 0.0f; - allowSleep = true; - awake = true; - fixedRotation = false; - bullet = false; - type = b2_staticBody; - active = true; - gravityScale = 1.0f; - } - - /// The body type: static, kinematic, or dynamic. - /// Note: if a dynamic body would have zero mass, the mass is set to one. - b2BodyType type; - - /// The world position of the body. Avoid creating bodies at the origin - /// since this can lead to many overlapping shapes. - b2Vec2 position; - - /// The world angle of the body in radians. - float32 angle; - - /// The linear velocity of the body's origin in world co-ordinates. - b2Vec2 linearVelocity; - - /// The angular velocity of the body. - float32 angularVelocity; - - /// Linear damping is use to reduce the linear velocity. The damping parameter - /// can be larger than 1.0f but the damping effect becomes sensitive to the - /// time step when the damping parameter is large. - float32 linearDamping; - - /// Angular damping is use to reduce the angular velocity. The damping parameter - /// can be larger than 1.0f but the damping effect becomes sensitive to the - /// time step when the damping parameter is large. - float32 angularDamping; - - /// Set this flag to false if this body should never fall asleep. Note that - /// this increases CPU usage. - bool allowSleep; - - /// Is this body initially awake or sleeping? - bool awake; - - /// Should this body be prevented from rotating? Useful for characters. - bool fixedRotation; - - /// Is this a fast moving body that should be prevented from tunneling through - /// other moving bodies? Note that all bodies are prevented from tunneling through - /// kinematic and static bodies. This setting is only considered on dynamic bodies. - /// @warning You should use this flag sparingly since it increases processing time. - bool bullet; - - /// Does this body start out active? - bool active; - - /// Use this to store application specific body data. - void* userData; - - /// Scale the gravity applied to this body. - float32 gravityScale; -}; - -/// A rigid body. These are created via b2World::CreateBody. -class b2Body -{ -public: - /// Creates a fixture and attach it to this body. Use this function if you need - /// to set some fixture parameters, like friction. Otherwise you can create the - /// fixture directly from a shape. - /// If the density is non-zero, this function automatically updates the mass of the body. - /// Contacts are not created until the next time step. - /// @param def the fixture definition. - /// @warning This function is locked during callbacks. - b2Fixture* CreateFixture(const b2FixtureDef* def); - - /// Creates a fixture from a shape and attach it to this body. - /// This is a convenience function. Use b2FixtureDef if you need to set parameters - /// like friction, restitution, user data, or filtering. - /// If the density is non-zero, this function automatically updates the mass of the body. - /// @param shape the shape to be cloned. - /// @param density the shape density (set to zero for static bodies). - /// @warning This function is locked during callbacks. - b2Fixture* CreateFixture(const b2Shape* shape, float32 density); - - /// Destroy a fixture. This removes the fixture from the broad-phase and - /// destroys all contacts associated with this fixture. This will - /// automatically adjust the mass of the body if the body is dynamic and the - /// fixture has positive density. - /// All fixtures attached to a body are implicitly destroyed when the body is destroyed. - /// @param fixture the fixture to be removed. - /// @warning This function is locked during callbacks. - void DestroyFixture(b2Fixture* fixture); - - /// Set the position of the body's origin and rotation. - /// Manipulating a body's transform may cause non-physical behavior. - /// Note: contacts are updated on the next call to b2World::Step. - /// @param position the world position of the body's local origin. - /// @param angle the world rotation in radians. - void SetTransform(const b2Vec2& position, float32 angle); - - /// Get the body transform for the body's origin. - /// @return the world transform of the body's origin. - const b2Transform& GetTransform() const; - - /// Get the world body origin position. - /// @return the world position of the body's origin. - const b2Vec2& GetPosition() const; - - /// Get the angle in radians. - /// @return the current world rotation angle in radians. - float32 GetAngle() const; - - /// Get the world position of the center of mass. - const b2Vec2& GetWorldCenter() const; - - /// Get the local position of the center of mass. - const b2Vec2& GetLocalCenter() const; - - /// Set the linear velocity of the center of mass. - /// @param v the new linear velocity of the center of mass. - void SetLinearVelocity(const b2Vec2& v); - - /// Get the linear velocity of the center of mass. - /// @return the linear velocity of the center of mass. - const b2Vec2& GetLinearVelocity() const; - - /// Set the angular velocity. - /// @param omega the new angular velocity in radians/second. - void SetAngularVelocity(float32 omega); - - /// Get the angular velocity. - /// @return the angular velocity in radians/second. - float32 GetAngularVelocity() const; - - /// Apply a force at a world point. If the force is not - /// applied at the center of mass, it will generate a torque and - /// affect the angular velocity. This wakes up the body. - /// @param force the world force vector, usually in Newtons (N). - /// @param point the world position of the point of application. - /// @param wake also wake up the body - void ApplyForce(const b2Vec2& force, const b2Vec2& point, bool wake); - - /// Apply a force to the center of mass. This wakes up the body. - /// @param force the world force vector, usually in Newtons (N). - /// @param wake also wake up the body - void ApplyForceToCenter(const b2Vec2& force, bool wake); - - /// Apply a torque. This affects the angular velocity - /// without affecting the linear velocity of the center of mass. - /// This wakes up the body. - /// @param torque about the z-axis (out of the screen), usually in N-m. - /// @param wake also wake up the body - void ApplyTorque(float32 torque, bool wake); - - /// Apply an impulse at a point. This immediately modifies the velocity. - /// It also modifies the angular velocity if the point of application - /// is not at the center of mass. This wakes up the body. - /// @param impulse the world impulse vector, usually in N-seconds or kg-m/s. - /// @param point the world position of the point of application. - /// @param wake also wake up the body - void ApplyLinearImpulse(const b2Vec2& impulse, const b2Vec2& point, bool wake); - - /// Apply an angular impulse. - /// @param impulse the angular impulse in units of kg*m*m/s - /// @param wake also wake up the body - void ApplyAngularImpulse(float32 impulse, bool wake); - - /// Get the total mass of the body. - /// @return the mass, usually in kilograms (kg). - float32 GetMass() const; - - /// Get the rotational inertia of the body about the local origin. - /// @return the rotational inertia, usually in kg-m^2. - float32 GetInertia() const; - - /// Get the mass data of the body. - /// @return a struct containing the mass, inertia and center of the body. - void GetMassData(b2MassData* data) const; - - /// Set the mass properties to override the mass properties of the fixtures. - /// Note that this changes the center of mass position. - /// Note that creating or destroying fixtures can also alter the mass. - /// This function has no effect if the body isn't dynamic. - /// @param massData the mass properties. - void SetMassData(const b2MassData* data); - - /// This resets the mass properties to the sum of the mass properties of the fixtures. - /// This normally does not need to be called unless you called SetMassData to override - /// the mass and you later want to reset the mass. - void ResetMassData(); - - /// Get the world coordinates of a point given the local coordinates. - /// @param localPoint a point on the body measured relative the the body's origin. - /// @return the same point expressed in world coordinates. - b2Vec2 GetWorldPoint(const b2Vec2& localPoint) const; - - /// Get the world coordinates of a vector given the local coordinates. - /// @param localVector a vector fixed in the body. - /// @return the same vector expressed in world coordinates. - b2Vec2 GetWorldVector(const b2Vec2& localVector) const; - - /// Gets a local point relative to the body's origin given a world point. - /// @param a point in world coordinates. - /// @return the corresponding local point relative to the body's origin. - b2Vec2 GetLocalPoint(const b2Vec2& worldPoint) const; - - /// Gets a local vector given a world vector. - /// @param a vector in world coordinates. - /// @return the corresponding local vector. - b2Vec2 GetLocalVector(const b2Vec2& worldVector) const; - - /// Get the world linear velocity of a world point attached to this body. - /// @param a point in world coordinates. - /// @return the world velocity of a point. - b2Vec2 GetLinearVelocityFromWorldPoint(const b2Vec2& worldPoint) const; - - /// Get the world velocity of a local point. - /// @param a point in local coordinates. - /// @return the world velocity of a point. - b2Vec2 GetLinearVelocityFromLocalPoint(const b2Vec2& localPoint) const; - - /// Get the linear damping of the body. - float32 GetLinearDamping() const; - - /// Set the linear damping of the body. - void SetLinearDamping(float32 linearDamping); - - /// Get the angular damping of the body. - float32 GetAngularDamping() const; - - /// Set the angular damping of the body. - void SetAngularDamping(float32 angularDamping); - - /// Get the gravity scale of the body. - float32 GetGravityScale() const; - - /// Set the gravity scale of the body. - void SetGravityScale(float32 scale); - - /// Set the type of this body. This may alter the mass and velocity. - void SetType(b2BodyType type); - - /// Get the type of this body. - b2BodyType GetType() const; - - /// Should this body be treated like a bullet for continuous collision detection? - void SetBullet(bool flag); - - /// Is this body treated like a bullet for continuous collision detection? - bool IsBullet() const; - - /// You can disable sleeping on this body. If you disable sleeping, the - /// body will be woken. - void SetSleepingAllowed(bool flag); - - /// Is this body allowed to sleep - bool IsSleepingAllowed() const; - - /// Set the sleep state of the body. A sleeping body has very - /// low CPU cost. - /// @param flag set to true to wake the body, false to put it to sleep. - void SetAwake(bool flag); - - /// Get the sleeping state of this body. - /// @return true if the body is awake. - bool IsAwake() const; - - /// Set the active state of the body. An inactive body is not - /// simulated and cannot be collided with or woken up. - /// If you pass a flag of true, all fixtures will be added to the - /// broad-phase. - /// If you pass a flag of false, all fixtures will be removed from - /// the broad-phase and all contacts will be destroyed. - /// Fixtures and joints are otherwise unaffected. You may continue - /// to create/destroy fixtures and joints on inactive bodies. - /// Fixtures on an inactive body are implicitly inactive and will - /// not participate in collisions, ray-casts, or queries. - /// Joints connected to an inactive body are implicitly inactive. - /// An inactive body is still owned by a b2World object and remains - /// in the body list. - void SetActive(bool flag); - - /// Get the active state of the body. - bool IsActive() const; - - /// Set this body to have fixed rotation. This causes the mass - /// to be reset. - void SetFixedRotation(bool flag); - - /// Does this body have fixed rotation? - bool IsFixedRotation() const; - - /// Get the list of all fixtures attached to this body. - b2Fixture* GetFixtureList(); - const b2Fixture* GetFixtureList() const; - - /// Get the list of all joints attached to this body. - b2JointEdge* GetJointList(); - const b2JointEdge* GetJointList() const; - - /// Get the list of all contacts attached to this body. - /// @warning this list changes during the time step and you may - /// miss some collisions if you don't use b2ContactListener. - b2ContactEdge* GetContactList(); - const b2ContactEdge* GetContactList() const; - - /// Get the next body in the world's body list. - b2Body* GetNext(); - const b2Body* GetNext() const; - - /// Get the user data pointer that was provided in the body definition. - void* GetUserData() const; - - /// Set the user data. Use this to store your application specific data. - void SetUserData(void* data); - - /// Get the parent world of this body. - b2World* GetWorld(); - const b2World* GetWorld() const; - - /// Dump this body to a log file - void Dump(); - -private: - - friend class b2World; - friend class b2Island; - friend class b2ContactManager; - friend class b2ContactSolver; - friend class b2Contact; - - friend class b2DistanceJoint; - friend class b2FrictionJoint; - friend class b2GearJoint; - friend class b2MotorJoint; - friend class b2MouseJoint; - friend class b2PrismaticJoint; - friend class b2PulleyJoint; - friend class b2RevoluteJoint; - friend class b2RopeJoint; - friend class b2WeldJoint; - friend class b2WheelJoint; - - // m_flags - enum - { - e_islandFlag = 0x0001, - e_awakeFlag = 0x0002, - e_autoSleepFlag = 0x0004, - e_bulletFlag = 0x0008, - e_fixedRotationFlag = 0x0010, - e_activeFlag = 0x0020, - e_toiFlag = 0x0040 - }; - - b2Body(const b2BodyDef* bd, b2World* world); - ~b2Body(); - - void SynchronizeFixtures(); - void SynchronizeTransform(); - - // This is used to prevent connected bodies from colliding. - // It may lie, depending on the collideConnected flag. - bool ShouldCollide(const b2Body* other) const; - - void Advance(float32 t); - - b2BodyType m_type; - - uint16 m_flags; - - int32 m_islandIndex; - - b2Transform m_xf; // the body origin transform - b2Sweep m_sweep; // the swept motion for CCD - - b2Vec2 m_linearVelocity; - float32 m_angularVelocity; - - b2Vec2 m_force; - float32 m_torque; - - b2World* m_world; - b2Body* m_prev; - b2Body* m_next; - - b2Fixture* m_fixtureList; - int32 m_fixtureCount; - - b2JointEdge* m_jointList; - b2ContactEdge* m_contactList; - - float32 m_mass, m_invMass; - - // Rotational inertia about the center of mass. - float32 m_I, m_invI; - - float32 m_linearDamping; - float32 m_angularDamping; - float32 m_gravityScale; - - float32 m_sleepTime; - - void* m_userData; -}; - -inline b2BodyType b2Body::GetType() const -{ - return m_type; -} - -inline const b2Transform& b2Body::GetTransform() const -{ - return m_xf; -} - -inline const b2Vec2& b2Body::GetPosition() const -{ - return m_xf.p; -} - -inline float32 b2Body::GetAngle() const -{ - return m_sweep.a; -} - -inline const b2Vec2& b2Body::GetWorldCenter() const -{ - return m_sweep.c; -} - -inline const b2Vec2& b2Body::GetLocalCenter() const -{ - return m_sweep.localCenter; -} - -inline void b2Body::SetLinearVelocity(const b2Vec2& v) -{ - if (m_type == b2_staticBody) - { - return; - } - - if (b2Dot(v,v) > 0.0f) - { - SetAwake(true); - } - - m_linearVelocity = v; -} - -inline const b2Vec2& b2Body::GetLinearVelocity() const -{ - return m_linearVelocity; -} - -inline void b2Body::SetAngularVelocity(float32 w) -{ - if (m_type == b2_staticBody) - { - return; - } - - if (w * w > 0.0f) - { - SetAwake(true); - } - - m_angularVelocity = w; -} - -inline float32 b2Body::GetAngularVelocity() const -{ - return m_angularVelocity; -} - -inline float32 b2Body::GetMass() const -{ - return m_mass; -} - -inline float32 b2Body::GetInertia() const -{ - return m_I + m_mass * b2Dot(m_sweep.localCenter, m_sweep.localCenter); -} - -inline void b2Body::GetMassData(b2MassData* data) const -{ - data->mass = m_mass; - data->I = m_I + m_mass * b2Dot(m_sweep.localCenter, m_sweep.localCenter); - data->center = m_sweep.localCenter; -} - -inline b2Vec2 b2Body::GetWorldPoint(const b2Vec2& localPoint) const -{ - return b2Mul(m_xf, localPoint); -} - -inline b2Vec2 b2Body::GetWorldVector(const b2Vec2& localVector) const -{ - return b2Mul(m_xf.q, localVector); -} - -inline b2Vec2 b2Body::GetLocalPoint(const b2Vec2& worldPoint) const -{ - return b2MulT(m_xf, worldPoint); -} - -inline b2Vec2 b2Body::GetLocalVector(const b2Vec2& worldVector) const -{ - return b2MulT(m_xf.q, worldVector); -} - -inline b2Vec2 b2Body::GetLinearVelocityFromWorldPoint(const b2Vec2& worldPoint) const -{ - return m_linearVelocity + b2Cross(m_angularVelocity, worldPoint - m_sweep.c); -} - -inline b2Vec2 b2Body::GetLinearVelocityFromLocalPoint(const b2Vec2& localPoint) const -{ - return GetLinearVelocityFromWorldPoint(GetWorldPoint(localPoint)); -} - -inline float32 b2Body::GetLinearDamping() const -{ - return m_linearDamping; -} - -inline void b2Body::SetLinearDamping(float32 linearDamping) -{ - m_linearDamping = linearDamping; -} - -inline float32 b2Body::GetAngularDamping() const -{ - return m_angularDamping; -} - -inline void b2Body::SetAngularDamping(float32 angularDamping) -{ - m_angularDamping = angularDamping; -} - -inline float32 b2Body::GetGravityScale() const -{ - return m_gravityScale; -} - -inline void b2Body::SetGravityScale(float32 scale) -{ - m_gravityScale = scale; -} - -inline void b2Body::SetBullet(bool flag) -{ - if (flag) - { - m_flags |= e_bulletFlag; - } - else - { - m_flags &= ~e_bulletFlag; - } -} - -inline bool b2Body::IsBullet() const -{ - return (m_flags & e_bulletFlag) == e_bulletFlag; -} - -inline void b2Body::SetAwake(bool flag) -{ - if (flag) - { - if ((m_flags & e_awakeFlag) == 0) - { - m_flags |= e_awakeFlag; - m_sleepTime = 0.0f; - } - } - else - { - m_flags &= ~e_awakeFlag; - m_sleepTime = 0.0f; - m_linearVelocity.SetZero(); - m_angularVelocity = 0.0f; - m_force.SetZero(); - m_torque = 0.0f; - } -} - -inline bool b2Body::IsAwake() const -{ - return (m_flags & e_awakeFlag) == e_awakeFlag; -} - -inline bool b2Body::IsActive() const -{ - return (m_flags & e_activeFlag) == e_activeFlag; -} - -inline bool b2Body::IsFixedRotation() const -{ - return (m_flags & e_fixedRotationFlag) == e_fixedRotationFlag; -} - -inline void b2Body::SetSleepingAllowed(bool flag) -{ - if (flag) - { - m_flags |= e_autoSleepFlag; - } - else - { - m_flags &= ~e_autoSleepFlag; - SetAwake(true); - } -} - -inline bool b2Body::IsSleepingAllowed() const -{ - return (m_flags & e_autoSleepFlag) == e_autoSleepFlag; -} - -inline b2Fixture* b2Body::GetFixtureList() -{ - return m_fixtureList; -} - -inline const b2Fixture* b2Body::GetFixtureList() const -{ - return m_fixtureList; -} - -inline b2JointEdge* b2Body::GetJointList() -{ - return m_jointList; -} - -inline const b2JointEdge* b2Body::GetJointList() const -{ - return m_jointList; -} - -inline b2ContactEdge* b2Body::GetContactList() -{ - return m_contactList; -} - -inline const b2ContactEdge* b2Body::GetContactList() const -{ - return m_contactList; -} - -inline b2Body* b2Body::GetNext() -{ - return m_next; -} - -inline const b2Body* b2Body::GetNext() const -{ - return m_next; -} - -inline void b2Body::SetUserData(void* data) -{ - m_userData = data; -} - -inline void* b2Body::GetUserData() const -{ - return m_userData; -} - -inline void b2Body::ApplyForce(const b2Vec2& force, const b2Vec2& point, bool wake) -{ - if (m_type != b2_dynamicBody) - { - return; - } - - if (wake && (m_flags & e_awakeFlag) == 0) - { - SetAwake(true); - } - - // Don't accumulate a force if the body is sleeping. - if (m_flags & e_awakeFlag) - { - m_force += force; - m_torque += b2Cross(point - m_sweep.c, force); - } -} - -inline void b2Body::ApplyForceToCenter(const b2Vec2& force, bool wake) -{ - if (m_type != b2_dynamicBody) - { - return; - } - - if (wake && (m_flags & e_awakeFlag) == 0) - { - SetAwake(true); - } - - // Don't accumulate a force if the body is sleeping - if (m_flags & e_awakeFlag) - { - m_force += force; - } -} - -inline void b2Body::ApplyTorque(float32 torque, bool wake) -{ - if (m_type != b2_dynamicBody) - { - return; - } - - if (wake && (m_flags & e_awakeFlag) == 0) - { - SetAwake(true); - } - - // Don't accumulate a force if the body is sleeping - if (m_flags & e_awakeFlag) - { - m_torque += torque; - } -} - -inline void b2Body::ApplyLinearImpulse(const b2Vec2& impulse, const b2Vec2& point, bool wake) -{ - if (m_type != b2_dynamicBody) - { - return; - } - - if (wake && (m_flags & e_awakeFlag) == 0) - { - SetAwake(true); - } - - // Don't accumulate velocity if the body is sleeping - if (m_flags & e_awakeFlag) - { - m_linearVelocity += m_invMass * impulse; - m_angularVelocity += m_invI * b2Cross(point - m_sweep.c, impulse); - } -} - -inline void b2Body::ApplyAngularImpulse(float32 impulse, bool wake) -{ - if (m_type != b2_dynamicBody) - { - return; - } - - if (wake && (m_flags & e_awakeFlag) == 0) - { - SetAwake(true); - } - - // Don't accumulate velocity if the body is sleeping - if (m_flags & e_awakeFlag) - { - m_angularVelocity += m_invI * impulse; - } -} - -inline void b2Body::SynchronizeTransform() -{ - m_xf.q.Set(m_sweep.a); - m_xf.p = m_sweep.c - b2Mul(m_xf.q, m_sweep.localCenter); -} - -inline void b2Body::Advance(float32 alpha) -{ - // Advance to the new safe time. This doesn't sync the broad-phase. - m_sweep.Advance(alpha); - m_sweep.c = m_sweep.c0; - m_sweep.a = m_sweep.a0; - m_xf.q.Set(m_sweep.a); - m_xf.p = m_sweep.c - b2Mul(m_xf.q, m_sweep.localCenter); -} - -inline b2World* b2Body::GetWorld() -{ - return m_world; -} - -inline const b2World* b2Body::GetWorld() const -{ - return m_world; -} - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2ContactManager.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2ContactManager.cpp deleted file mode 100644 index d71439c..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2ContactManager.cpp +++ /dev/null @@ -1,296 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include -#include -#include -#include -#include - -b2ContactFilter b2_defaultFilter; -b2ContactListener b2_defaultListener; - -b2ContactManager::b2ContactManager() -{ - m_contactList = NULL; - m_contactCount = 0; - m_contactFilter = &b2_defaultFilter; - m_contactListener = &b2_defaultListener; - m_allocator = NULL; -} - -void b2ContactManager::Destroy(b2Contact* c) -{ - b2Fixture* fixtureA = c->GetFixtureA(); - b2Fixture* fixtureB = c->GetFixtureB(); - b2Body* bodyA = fixtureA->GetBody(); - b2Body* bodyB = fixtureB->GetBody(); - - if (m_contactListener && c->IsTouching()) - { - m_contactListener->EndContact(c); - } - - // Remove from the world. - if (c->m_prev) - { - c->m_prev->m_next = c->m_next; - } - - if (c->m_next) - { - c->m_next->m_prev = c->m_prev; - } - - if (c == m_contactList) - { - m_contactList = c->m_next; - } - - // Remove from body 1 - if (c->m_nodeA.prev) - { - c->m_nodeA.prev->next = c->m_nodeA.next; - } - - if (c->m_nodeA.next) - { - c->m_nodeA.next->prev = c->m_nodeA.prev; - } - - if (&c->m_nodeA == bodyA->m_contactList) - { - bodyA->m_contactList = c->m_nodeA.next; - } - - // Remove from body 2 - if (c->m_nodeB.prev) - { - c->m_nodeB.prev->next = c->m_nodeB.next; - } - - if (c->m_nodeB.next) - { - c->m_nodeB.next->prev = c->m_nodeB.prev; - } - - if (&c->m_nodeB == bodyB->m_contactList) - { - bodyB->m_contactList = c->m_nodeB.next; - } - - // Call the factory. - b2Contact::Destroy(c, m_allocator); - --m_contactCount; -} - -// This is the top level collision call for the time step. Here -// all the narrow phase collision is processed for the world -// contact list. -void b2ContactManager::Collide() -{ - // Update awake contacts. - b2Contact* c = m_contactList; - while (c) - { - b2Fixture* fixtureA = c->GetFixtureA(); - b2Fixture* fixtureB = c->GetFixtureB(); - int32 indexA = c->GetChildIndexA(); - int32 indexB = c->GetChildIndexB(); - b2Body* bodyA = fixtureA->GetBody(); - b2Body* bodyB = fixtureB->GetBody(); - - // Is this contact flagged for filtering? - if (c->m_flags & b2Contact::e_filterFlag) - { - // Should these bodies collide? - if (bodyB->ShouldCollide(bodyA) == false) - { - b2Contact* cNuke = c; - c = cNuke->GetNext(); - Destroy(cNuke); - continue; - } - - // Check user filtering. - if (m_contactFilter && m_contactFilter->ShouldCollide(fixtureA, fixtureB) == false) - { - b2Contact* cNuke = c; - c = cNuke->GetNext(); - Destroy(cNuke); - continue; - } - - // Clear the filtering flag. - c->m_flags &= ~b2Contact::e_filterFlag; - } - - bool activeA = bodyA->IsAwake() && bodyA->m_type != b2_staticBody; - bool activeB = bodyB->IsAwake() && bodyB->m_type != b2_staticBody; - - // At least one body must be awake and it must be dynamic or kinematic. - if (activeA == false && activeB == false) - { - c = c->GetNext(); - continue; - } - - int32 proxyIdA = fixtureA->m_proxies[indexA].proxyId; - int32 proxyIdB = fixtureB->m_proxies[indexB].proxyId; - bool overlap = m_broadPhase.TestOverlap(proxyIdA, proxyIdB); - - // Here we destroy contacts that cease to overlap in the broad-phase. - if (overlap == false) - { - b2Contact* cNuke = c; - c = cNuke->GetNext(); - Destroy(cNuke); - continue; - } - - // The contact persists. - c->Update(m_contactListener); - c = c->GetNext(); - } -} - -void b2ContactManager::FindNewContacts() -{ - m_broadPhase.UpdatePairs(this); -} - -void b2ContactManager::AddPair(void* proxyUserDataA, void* proxyUserDataB) -{ - b2FixtureProxy* proxyA = (b2FixtureProxy*)proxyUserDataA; - b2FixtureProxy* proxyB = (b2FixtureProxy*)proxyUserDataB; - - b2Fixture* fixtureA = proxyA->fixture; - b2Fixture* fixtureB = proxyB->fixture; - - int32 indexA = proxyA->childIndex; - int32 indexB = proxyB->childIndex; - - b2Body* bodyA = fixtureA->GetBody(); - b2Body* bodyB = fixtureB->GetBody(); - - // Are the fixtures on the same body? - if (bodyA == bodyB) - { - return; - } - - // TODO_ERIN use a hash table to remove a potential bottleneck when both - // bodies have a lot of contacts. - // Does a contact already exist? - b2ContactEdge* edge = bodyB->GetContactList(); - while (edge) - { - if (edge->other == bodyA) - { - b2Fixture* fA = edge->contact->GetFixtureA(); - b2Fixture* fB = edge->contact->GetFixtureB(); - int32 iA = edge->contact->GetChildIndexA(); - int32 iB = edge->contact->GetChildIndexB(); - - if (fA == fixtureA && fB == fixtureB && iA == indexA && iB == indexB) - { - // A contact already exists. - return; - } - - if (fA == fixtureB && fB == fixtureA && iA == indexB && iB == indexA) - { - // A contact already exists. - return; - } - } - - edge = edge->next; - } - - // Does a joint override collision? Is at least one body dynamic? - if (bodyB->ShouldCollide(bodyA) == false) - { - return; - } - - // Check user filtering. - if (m_contactFilter && m_contactFilter->ShouldCollide(fixtureA, fixtureB) == false) - { - return; - } - - // Call the factory. - b2Contact* c = b2Contact::Create(fixtureA, indexA, fixtureB, indexB, m_allocator); - if (c == NULL) - { - return; - } - - // Contact creation may swap fixtures. - fixtureA = c->GetFixtureA(); - fixtureB = c->GetFixtureB(); - indexA = c->GetChildIndexA(); - indexB = c->GetChildIndexB(); - bodyA = fixtureA->GetBody(); - bodyB = fixtureB->GetBody(); - - // Insert into the world. - c->m_prev = NULL; - c->m_next = m_contactList; - if (m_contactList != NULL) - { - m_contactList->m_prev = c; - } - m_contactList = c; - - // Connect to island graph. - - // Connect to body A - c->m_nodeA.contact = c; - c->m_nodeA.other = bodyB; - - c->m_nodeA.prev = NULL; - c->m_nodeA.next = bodyA->m_contactList; - if (bodyA->m_contactList != NULL) - { - bodyA->m_contactList->prev = &c->m_nodeA; - } - bodyA->m_contactList = &c->m_nodeA; - - // Connect to body B - c->m_nodeB.contact = c; - c->m_nodeB.other = bodyA; - - c->m_nodeB.prev = NULL; - c->m_nodeB.next = bodyB->m_contactList; - if (bodyB->m_contactList != NULL) - { - bodyB->m_contactList->prev = &c->m_nodeB; - } - bodyB->m_contactList = &c->m_nodeB; - - // Wake up the bodies - if (fixtureA->IsSensor() == false && fixtureB->IsSensor() == false) - { - bodyA->SetAwake(true); - bodyB->SetAwake(true); - } - - ++m_contactCount; -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2ContactManager.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2ContactManager.h deleted file mode 100644 index dc1f77f..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2ContactManager.h +++ /dev/null @@ -1,52 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_CONTACT_MANAGER_H -#define B2_CONTACT_MANAGER_H - -#include - -class b2Contact; -class b2ContactFilter; -class b2ContactListener; -class b2BlockAllocator; - -// Delegate of b2World. -class b2ContactManager -{ -public: - b2ContactManager(); - - // Broad-phase callback. - void AddPair(void* proxyUserDataA, void* proxyUserDataB); - - void FindNewContacts(); - - void Destroy(b2Contact* c); - - void Collide(); - - b2BroadPhase m_broadPhase; - b2Contact* m_contactList; - int32 m_contactCount; - b2ContactFilter* m_contactFilter; - b2ContactListener* m_contactListener; - b2BlockAllocator* m_allocator; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2Fixture.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2Fixture.cpp deleted file mode 100644 index d97aa44..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2Fixture.cpp +++ /dev/null @@ -1,303 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -b2Fixture::b2Fixture() -{ - m_userData = NULL; - m_body = NULL; - m_next = NULL; - m_proxies = NULL; - m_proxyCount = 0; - m_shape = NULL; - m_density = 0.0f; -} - -void b2Fixture::Create(b2BlockAllocator* allocator, b2Body* body, const b2FixtureDef* def) -{ - m_userData = def->userData; - m_friction = def->friction; - m_restitution = def->restitution; - - m_body = body; - m_next = NULL; - - m_filter = def->filter; - - m_isSensor = def->isSensor; - - m_shape = def->shape->Clone(allocator); - - // Reserve proxy space - int32 childCount = m_shape->GetChildCount(); - m_proxies = (b2FixtureProxy*)allocator->Allocate(childCount * sizeof(b2FixtureProxy)); - for (int32 i = 0; i < childCount; ++i) - { - m_proxies[i].fixture = NULL; - m_proxies[i].proxyId = b2BroadPhase::e_nullProxy; - } - m_proxyCount = 0; - - m_density = def->density; -} - -void b2Fixture::Destroy(b2BlockAllocator* allocator) -{ - // The proxies must be destroyed before calling this. - b2Assert(m_proxyCount == 0); - - // Free the proxy array. - int32 childCount = m_shape->GetChildCount(); - allocator->Free(m_proxies, childCount * sizeof(b2FixtureProxy)); - m_proxies = NULL; - - // Free the child shape. - switch (m_shape->m_type) - { - case b2Shape::e_circle: - { - b2CircleShape* s = (b2CircleShape*)m_shape; - s->~b2CircleShape(); - allocator->Free(s, sizeof(b2CircleShape)); - } - break; - - case b2Shape::e_edge: - { - b2EdgeShape* s = (b2EdgeShape*)m_shape; - s->~b2EdgeShape(); - allocator->Free(s, sizeof(b2EdgeShape)); - } - break; - - case b2Shape::e_polygon: - { - b2PolygonShape* s = (b2PolygonShape*)m_shape; - s->~b2PolygonShape(); - allocator->Free(s, sizeof(b2PolygonShape)); - } - break; - - case b2Shape::e_chain: - { - b2ChainShape* s = (b2ChainShape*)m_shape; - s->~b2ChainShape(); - allocator->Free(s, sizeof(b2ChainShape)); - } - break; - - default: - b2Assert(false); - break; - } - - m_shape = NULL; -} - -void b2Fixture::CreateProxies(b2BroadPhase* broadPhase, const b2Transform& xf) -{ - b2Assert(m_proxyCount == 0); - - // Create proxies in the broad-phase. - m_proxyCount = m_shape->GetChildCount(); - - for (int32 i = 0; i < m_proxyCount; ++i) - { - b2FixtureProxy* proxy = m_proxies + i; - m_shape->ComputeAABB(&proxy->aabb, xf, i); - proxy->proxyId = broadPhase->CreateProxy(proxy->aabb, proxy); - proxy->fixture = this; - proxy->childIndex = i; - } -} - -void b2Fixture::DestroyProxies(b2BroadPhase* broadPhase) -{ - // Destroy proxies in the broad-phase. - for (int32 i = 0; i < m_proxyCount; ++i) - { - b2FixtureProxy* proxy = m_proxies + i; - broadPhase->DestroyProxy(proxy->proxyId); - proxy->proxyId = b2BroadPhase::e_nullProxy; - } - - m_proxyCount = 0; -} - -void b2Fixture::Synchronize(b2BroadPhase* broadPhase, const b2Transform& transform1, const b2Transform& transform2) -{ - if (m_proxyCount == 0) - { - return; - } - - for (int32 i = 0; i < m_proxyCount; ++i) - { - b2FixtureProxy* proxy = m_proxies + i; - - // Compute an AABB that covers the swept shape (may miss some rotation effect). - b2AABB aabb1, aabb2; - m_shape->ComputeAABB(&aabb1, transform1, proxy->childIndex); - m_shape->ComputeAABB(&aabb2, transform2, proxy->childIndex); - - proxy->aabb.Combine(aabb1, aabb2); - - b2Vec2 displacement = transform2.p - transform1.p; - - broadPhase->MoveProxy(proxy->proxyId, proxy->aabb, displacement); - } -} - -void b2Fixture::SetFilterData(const b2Filter& filter) -{ - m_filter = filter; - - Refilter(); -} - -void b2Fixture::Refilter() -{ - if (m_body == NULL) - { - return; - } - - // Flag associated contacts for filtering. - b2ContactEdge* edge = m_body->GetContactList(); - while (edge) - { - b2Contact* contact = edge->contact; - b2Fixture* fixtureA = contact->GetFixtureA(); - b2Fixture* fixtureB = contact->GetFixtureB(); - if (fixtureA == this || fixtureB == this) - { - contact->FlagForFiltering(); - } - - edge = edge->next; - } - - b2World* world = m_body->GetWorld(); - - if (world == NULL) - { - return; - } - - // Touch each proxy so that new pairs may be created - b2BroadPhase* broadPhase = &world->m_contactManager.m_broadPhase; - for (int32 i = 0; i < m_proxyCount; ++i) - { - broadPhase->TouchProxy(m_proxies[i].proxyId); - } -} - -void b2Fixture::SetSensor(bool sensor) -{ - if (sensor != m_isSensor) - { - m_body->SetAwake(true); - m_isSensor = sensor; - } -} - -void b2Fixture::Dump(int32 bodyIndex) -{ - b2Log(" b2FixtureDef fd;\n"); - b2Log(" fd.friction = %.15lef;\n", m_friction); - b2Log(" fd.restitution = %.15lef;\n", m_restitution); - b2Log(" fd.density = %.15lef;\n", m_density); - b2Log(" fd.isSensor = bool(%d);\n", m_isSensor); - b2Log(" fd.filter.categoryBits = uint16(%d);\n", m_filter.categoryBits); - b2Log(" fd.filter.maskBits = uint16(%d);\n", m_filter.maskBits); - b2Log(" fd.filter.groupIndex = int16(%d);\n", m_filter.groupIndex); - - switch (m_shape->m_type) - { - case b2Shape::e_circle: - { - b2CircleShape* s = (b2CircleShape*)m_shape; - b2Log(" b2CircleShape shape;\n"); - b2Log(" shape.m_radius = %.15lef;\n", s->m_radius); - b2Log(" shape.m_p.Set(%.15lef, %.15lef);\n", s->m_p.x, s->m_p.y); - } - break; - - case b2Shape::e_edge: - { - b2EdgeShape* s = (b2EdgeShape*)m_shape; - b2Log(" b2EdgeShape shape;\n"); - b2Log(" shape.m_radius = %.15lef;\n", s->m_radius); - b2Log(" shape.m_vertex0.Set(%.15lef, %.15lef);\n", s->m_vertex0.x, s->m_vertex0.y); - b2Log(" shape.m_vertex1.Set(%.15lef, %.15lef);\n", s->m_vertex1.x, s->m_vertex1.y); - b2Log(" shape.m_vertex2.Set(%.15lef, %.15lef);\n", s->m_vertex2.x, s->m_vertex2.y); - b2Log(" shape.m_vertex3.Set(%.15lef, %.15lef);\n", s->m_vertex3.x, s->m_vertex3.y); - b2Log(" shape.m_hasVertex0 = bool(%d);\n", s->m_hasVertex0); - b2Log(" shape.m_hasVertex3 = bool(%d);\n", s->m_hasVertex3); - } - break; - - case b2Shape::e_polygon: - { - b2PolygonShape* s = (b2PolygonShape*)m_shape; - b2Log(" b2PolygonShape shape;\n"); - b2Log(" b2Vec2 vs[%d];\n", b2_maxPolygonVertices); - for (int32 i = 0; i < s->m_count; ++i) - { - b2Log(" vs[%d].Set(%.15lef, %.15lef);\n", i, s->m_vertices[i].x, s->m_vertices[i].y); - } - b2Log(" shape.Set(vs, %d);\n", s->m_count); - } - break; - - case b2Shape::e_chain: - { - b2ChainShape* s = (b2ChainShape*)m_shape; - b2Log(" b2ChainShape shape;\n"); - b2Log(" b2Vec2 vs[%d];\n", s->m_count); - for (int32 i = 0; i < s->m_count; ++i) - { - b2Log(" vs[%d].Set(%.15lef, %.15lef);\n", i, s->m_vertices[i].x, s->m_vertices[i].y); - } - b2Log(" shape.CreateChain(vs, %d);\n", s->m_count); - b2Log(" shape.m_prevVertex.Set(%.15lef, %.15lef);\n", s->m_prevVertex.x, s->m_prevVertex.y); - b2Log(" shape.m_nextVertex.Set(%.15lef, %.15lef);\n", s->m_nextVertex.x, s->m_nextVertex.y); - b2Log(" shape.m_hasPrevVertex = bool(%d);\n", s->m_hasPrevVertex); - b2Log(" shape.m_hasNextVertex = bool(%d);\n", s->m_hasNextVertex); - } - break; - - default: - return; - } - - b2Log("\n"); - b2Log(" fd.shape = &shape;\n"); - b2Log("\n"); - b2Log(" bodies[%d]->CreateFixture(&fd);\n", bodyIndex); -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2Fixture.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2Fixture.h deleted file mode 100644 index 5ebd0c3..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2Fixture.h +++ /dev/null @@ -1,345 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_FIXTURE_H -#define B2_FIXTURE_H - -#include -#include -#include - -class b2BlockAllocator; -class b2Body; -class b2BroadPhase; -class b2Fixture; - -/// This holds contact filtering data. -struct b2Filter -{ - b2Filter() - { - categoryBits = 0x0001; - maskBits = 0xFFFF; - groupIndex = 0; - } - - /// The collision category bits. Normally you would just set one bit. - uint16 categoryBits; - - /// The collision mask bits. This states the categories that this - /// shape would accept for collision. - uint16 maskBits; - - /// Collision groups allow a certain group of objects to never collide (negative) - /// or always collide (positive). Zero means no collision group. Non-zero group - /// filtering always wins against the mask bits. - int16 groupIndex; -}; - -/// A fixture definition is used to create a fixture. This class defines an -/// abstract fixture definition. You can reuse fixture definitions safely. -struct b2FixtureDef -{ - /// The constructor sets the default fixture definition values. - b2FixtureDef() - { - shape = NULL; - userData = NULL; - friction = 0.2f; - restitution = 0.0f; - density = 0.0f; - isSensor = false; - } - - /// The shape, this must be set. The shape will be cloned, so you - /// can create the shape on the stack. - const b2Shape* shape; - - /// Use this to store application specific fixture data. - void* userData; - - /// The friction coefficient, usually in the range [0,1]. - float32 friction; - - /// The restitution (elasticity) usually in the range [0,1]. - float32 restitution; - - /// The density, usually in kg/m^2. - float32 density; - - /// A sensor shape collects contact information but never generates a collision - /// response. - bool isSensor; - - /// Contact filtering data. - b2Filter filter; -}; - -/// This proxy is used internally to connect fixtures to the broad-phase. -struct b2FixtureProxy -{ - b2AABB aabb; - b2Fixture* fixture; - int32 childIndex; - int32 proxyId; -}; - -/// A fixture is used to attach a shape to a body for collision detection. A fixture -/// inherits its transform from its parent. Fixtures hold additional non-geometric data -/// such as friction, collision filters, etc. -/// Fixtures are created via b2Body::CreateFixture. -/// @warning you cannot reuse fixtures. -class b2Fixture -{ -public: - /// Get the type of the child shape. You can use this to down cast to the concrete shape. - /// @return the shape type. - b2Shape::Type GetType() const; - - /// Get the child shape. You can modify the child shape, however you should not change the - /// number of vertices because this will crash some collision caching mechanisms. - /// Manipulating the shape may lead to non-physical behavior. - b2Shape* GetShape(); - const b2Shape* GetShape() const; - - /// Set if this fixture is a sensor. - void SetSensor(bool sensor); - - /// Is this fixture a sensor (non-solid)? - /// @return the true if the shape is a sensor. - bool IsSensor() const; - - /// Set the contact filtering data. This will not update contacts until the next time - /// step when either parent body is active and awake. - /// This automatically calls Refilter. - void SetFilterData(const b2Filter& filter); - - /// Get the contact filtering data. - const b2Filter& GetFilterData() const; - - /// Call this if you want to establish collision that was previously disabled by b2ContactFilter::ShouldCollide. - void Refilter(); - - /// Get the parent body of this fixture. This is NULL if the fixture is not attached. - /// @return the parent body. - b2Body* GetBody(); - const b2Body* GetBody() const; - - /// Get the next fixture in the parent body's fixture list. - /// @return the next shape. - b2Fixture* GetNext(); - const b2Fixture* GetNext() const; - - /// Get the user data that was assigned in the fixture definition. Use this to - /// store your application specific data. - void* GetUserData() const; - - /// Set the user data. Use this to store your application specific data. - void SetUserData(void* data); - - /// Test a point for containment in this fixture. - /// @param p a point in world coordinates. - bool TestPoint(const b2Vec2& p) const; - - /// Cast a ray against this shape. - /// @param output the ray-cast results. - /// @param input the ray-cast input parameters. - bool RayCast(b2RayCastOutput* output, const b2RayCastInput& input, int32 childIndex) const; - - /// Get the mass data for this fixture. The mass data is based on the density and - /// the shape. The rotational inertia is about the shape's origin. This operation - /// may be expensive. - void GetMassData(b2MassData* massData) const; - - /// Set the density of this fixture. This will _not_ automatically adjust the mass - /// of the body. You must call b2Body::ResetMassData to update the body's mass. - void SetDensity(float32 density); - - /// Get the density of this fixture. - float32 GetDensity() const; - - /// Get the coefficient of friction. - float32 GetFriction() const; - - /// Set the coefficient of friction. This will _not_ change the friction of - /// existing contacts. - void SetFriction(float32 friction); - - /// Get the coefficient of restitution. - float32 GetRestitution() const; - - /// Set the coefficient of restitution. This will _not_ change the restitution of - /// existing contacts. - void SetRestitution(float32 restitution); - - /// Get the fixture's AABB. This AABB may be enlarge and/or stale. - /// If you need a more accurate AABB, compute it using the shape and - /// the body transform. - const b2AABB& GetAABB(int32 childIndex) const; - - /// Dump this fixture to the log file. - void Dump(int32 bodyIndex); - -protected: - - friend class b2Body; - friend class b2World; - friend class b2Contact; - friend class b2ContactManager; - - b2Fixture(); - - // We need separation create/destroy functions from the constructor/destructor because - // the destructor cannot access the allocator (no destructor arguments allowed by C++). - void Create(b2BlockAllocator* allocator, b2Body* body, const b2FixtureDef* def); - void Destroy(b2BlockAllocator* allocator); - - // These support body activation/deactivation. - void CreateProxies(b2BroadPhase* broadPhase, const b2Transform& xf); - void DestroyProxies(b2BroadPhase* broadPhase); - - void Synchronize(b2BroadPhase* broadPhase, const b2Transform& xf1, const b2Transform& xf2); - - float32 m_density; - - b2Fixture* m_next; - b2Body* m_body; - - b2Shape* m_shape; - - float32 m_friction; - float32 m_restitution; - - b2FixtureProxy* m_proxies; - int32 m_proxyCount; - - b2Filter m_filter; - - bool m_isSensor; - - void* m_userData; -}; - -inline b2Shape::Type b2Fixture::GetType() const -{ - return m_shape->GetType(); -} - -inline b2Shape* b2Fixture::GetShape() -{ - return m_shape; -} - -inline const b2Shape* b2Fixture::GetShape() const -{ - return m_shape; -} - -inline bool b2Fixture::IsSensor() const -{ - return m_isSensor; -} - -inline const b2Filter& b2Fixture::GetFilterData() const -{ - return m_filter; -} - -inline void* b2Fixture::GetUserData() const -{ - return m_userData; -} - -inline void b2Fixture::SetUserData(void* data) -{ - m_userData = data; -} - -inline b2Body* b2Fixture::GetBody() -{ - return m_body; -} - -inline const b2Body* b2Fixture::GetBody() const -{ - return m_body; -} - -inline b2Fixture* b2Fixture::GetNext() -{ - return m_next; -} - -inline const b2Fixture* b2Fixture::GetNext() const -{ - return m_next; -} - -inline void b2Fixture::SetDensity(float32 density) -{ - b2Assert(b2IsValid(density) && density >= 0.0f); - m_density = density; -} - -inline float32 b2Fixture::GetDensity() const -{ - return m_density; -} - -inline float32 b2Fixture::GetFriction() const -{ - return m_friction; -} - -inline void b2Fixture::SetFriction(float32 friction) -{ - m_friction = friction; -} - -inline float32 b2Fixture::GetRestitution() const -{ - return m_restitution; -} - -inline void b2Fixture::SetRestitution(float32 restitution) -{ - m_restitution = restitution; -} - -inline bool b2Fixture::TestPoint(const b2Vec2& p) const -{ - return m_shape->TestPoint(m_body->GetTransform(), p); -} - -inline bool b2Fixture::RayCast(b2RayCastOutput* output, const b2RayCastInput& input, int32 childIndex) const -{ - return m_shape->RayCast(output, input, m_body->GetTransform(), childIndex); -} - -inline void b2Fixture::GetMassData(b2MassData* massData) const -{ - m_shape->ComputeMass(massData, m_density); -} - -inline const b2AABB& b2Fixture::GetAABB(int32 childIndex) const -{ - b2Assert(0 <= childIndex && childIndex < m_proxyCount); - return m_proxies[childIndex].aabb; -} - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2Island.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2Island.cpp deleted file mode 100644 index b0cb19a..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2Island.cpp +++ /dev/null @@ -1,539 +0,0 @@ -/* -* Copyright (c) 2006-2011 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* -Position Correction Notes -========================= -I tried the several algorithms for position correction of the 2D revolute joint. -I looked at these systems: -- simple pendulum (1m diameter sphere on massless 5m stick) with initial angular velocity of 100 rad/s. -- suspension bridge with 30 1m long planks of length 1m. -- multi-link chain with 30 1m long links. - -Here are the algorithms: - -Baumgarte - A fraction of the position error is added to the velocity error. There is no -separate position solver. - -Pseudo Velocities - After the velocity solver and position integration, -the position error, Jacobian, and effective mass are recomputed. Then -the velocity constraints are solved with pseudo velocities and a fraction -of the position error is added to the pseudo velocity error. The pseudo -velocities are initialized to zero and there is no warm-starting. After -the position solver, the pseudo velocities are added to the positions. -This is also called the First Order World method or the Position LCP method. - -Modified Nonlinear Gauss-Seidel (NGS) - Like Pseudo Velocities except the -position error is re-computed for each constraint and the positions are updated -after the constraint is solved. The radius vectors (aka Jacobians) are -re-computed too (otherwise the algorithm has horrible instability). The pseudo -velocity states are not needed because they are effectively zero at the beginning -of each iteration. Since we have the current position error, we allow the -iterations to terminate early if the error becomes smaller than b2_linearSlop. - -Full NGS or just NGS - Like Modified NGS except the effective mass are re-computed -each time a constraint is solved. - -Here are the results: -Baumgarte - this is the cheapest algorithm but it has some stability problems, -especially with the bridge. The chain links separate easily close to the root -and they jitter as they struggle to pull together. This is one of the most common -methods in the field. The big drawback is that the position correction artificially -affects the momentum, thus leading to instabilities and false bounce. I used a -bias factor of 0.2. A larger bias factor makes the bridge less stable, a smaller -factor makes joints and contacts more spongy. - -Pseudo Velocities - the is more stable than the Baumgarte method. The bridge is -stable. However, joints still separate with large angular velocities. Drag the -simple pendulum in a circle quickly and the joint will separate. The chain separates -easily and does not recover. I used a bias factor of 0.2. A larger value lead to -the bridge collapsing when a heavy cube drops on it. - -Modified NGS - this algorithm is better in some ways than Baumgarte and Pseudo -Velocities, but in other ways it is worse. The bridge and chain are much more -stable, but the simple pendulum goes unstable at high angular velocities. - -Full NGS - stable in all tests. The joints display good stiffness. The bridge -still sags, but this is better than infinite forces. - -Recommendations -Pseudo Velocities are not really worthwhile because the bridge and chain cannot -recover from joint separation. In other cases the benefit over Baumgarte is small. - -Modified NGS is not a robust method for the revolute joint due to the violent -instability seen in the simple pendulum. Perhaps it is viable with other constraint -types, especially scalar constraints where the effective mass is a scalar. - -This leaves Baumgarte and Full NGS. Baumgarte has small, but manageable instabilities -and is very fast. I don't think we can escape Baumgarte, especially in highly -demanding cases where high constraint fidelity is not needed. - -Full NGS is robust and easy on the eyes. I recommend this as an option for -higher fidelity simulation and certainly for suspension bridges and long chains. -Full NGS might be a good choice for ragdolls, especially motorized ragdolls where -joint separation can be problematic. The number of NGS iterations can be reduced -for better performance without harming robustness much. - -Each joint in a can be handled differently in the position solver. So I recommend -a system where the user can select the algorithm on a per joint basis. I would -probably default to the slower Full NGS and let the user select the faster -Baumgarte method in performance critical scenarios. -*/ - -/* -Cache Performance - -The Box2D solvers are dominated by cache misses. Data structures are designed -to increase the number of cache hits. Much of misses are due to random access -to body data. The constraint structures are iterated over linearly, which leads -to few cache misses. - -The bodies are not accessed during iteration. Instead read only data, such as -the mass values are stored with the constraints. The mutable data are the constraint -impulses and the bodies velocities/positions. The impulses are held inside the -constraint structures. The body velocities/positions are held in compact, temporary -arrays to increase the number of cache hits. Linear and angular velocity are -stored in a single array since multiple arrays lead to multiple misses. -*/ - -/* -2D Rotation - -R = [cos(theta) -sin(theta)] - [sin(theta) cos(theta) ] - -thetaDot = omega - -Let q1 = cos(theta), q2 = sin(theta). -R = [q1 -q2] - [q2 q1] - -q1Dot = -thetaDot * q2 -q2Dot = thetaDot * q1 - -q1_new = q1_old - dt * w * q2 -q2_new = q2_old + dt * w * q1 -then normalize. - -This might be faster than computing sin+cos. -However, we can compute sin+cos of the same angle fast. -*/ - -b2Island::b2Island( - int32 bodyCapacity, - int32 contactCapacity, - int32 jointCapacity, - b2StackAllocator* allocator, - b2ContactListener* listener) -{ - m_bodyCapacity = bodyCapacity; - m_contactCapacity = contactCapacity; - m_jointCapacity = jointCapacity; - m_bodyCount = 0; - m_contactCount = 0; - m_jointCount = 0; - - m_allocator = allocator; - m_listener = listener; - - m_bodies = (b2Body**)m_allocator->Allocate(bodyCapacity * sizeof(b2Body*)); - m_contacts = (b2Contact**)m_allocator->Allocate(contactCapacity * sizeof(b2Contact*)); - m_joints = (b2Joint**)m_allocator->Allocate(jointCapacity * sizeof(b2Joint*)); - - m_velocities = (b2Velocity*)m_allocator->Allocate(m_bodyCapacity * sizeof(b2Velocity)); - m_positions = (b2Position*)m_allocator->Allocate(m_bodyCapacity * sizeof(b2Position)); -} - -b2Island::~b2Island() -{ - // Warning: the order should reverse the constructor order. - m_allocator->Free(m_positions); - m_allocator->Free(m_velocities); - m_allocator->Free(m_joints); - m_allocator->Free(m_contacts); - m_allocator->Free(m_bodies); -} - -void b2Island::Solve(b2Profile* profile, const b2TimeStep& step, const b2Vec2& gravity, bool allowSleep) -{ - b2Timer timer; - - float32 h = step.dt; - - // Integrate velocities and apply damping. Initialize the body state. - for (int32 i = 0; i < m_bodyCount; ++i) - { - b2Body* b = m_bodies[i]; - - b2Vec2 c = b->m_sweep.c; - float32 a = b->m_sweep.a; - b2Vec2 v = b->m_linearVelocity; - float32 w = b->m_angularVelocity; - - // Store positions for continuous collision. - b->m_sweep.c0 = b->m_sweep.c; - b->m_sweep.a0 = b->m_sweep.a; - - if (b->m_type == b2_dynamicBody) - { - // Integrate velocities. - v += h * (b->m_gravityScale * gravity + b->m_invMass * b->m_force); - w += h * b->m_invI * b->m_torque; - - // Apply damping. - // ODE: dv/dt + c * v = 0 - // Solution: v(t) = v0 * exp(-c * t) - // Time step: v(t + dt) = v0 * exp(-c * (t + dt)) = v0 * exp(-c * t) * exp(-c * dt) = v * exp(-c * dt) - // v2 = exp(-c * dt) * v1 - // Pade approximation: - // v2 = v1 * 1 / (1 + c * dt) - v *= 1.0f / (1.0f + h * b->m_linearDamping); - w *= 1.0f / (1.0f + h * b->m_angularDamping); - } - - m_positions[i].c = c; - m_positions[i].a = a; - m_velocities[i].v = v; - m_velocities[i].w = w; - } - - timer.Reset(); - - // Solver data - b2SolverData solverData; - solverData.step = step; - solverData.positions = m_positions; - solverData.velocities = m_velocities; - - // Initialize velocity constraints. - b2ContactSolverDef contactSolverDef; - contactSolverDef.step = step; - contactSolverDef.contacts = m_contacts; - contactSolverDef.count = m_contactCount; - contactSolverDef.positions = m_positions; - contactSolverDef.velocities = m_velocities; - contactSolverDef.allocator = m_allocator; - - b2ContactSolver contactSolver(&contactSolverDef); - contactSolver.InitializeVelocityConstraints(); - - if (step.warmStarting) - { - contactSolver.WarmStart(); - } - - for (int32 i = 0; i < m_jointCount; ++i) - { - m_joints[i]->InitVelocityConstraints(solverData); - } - - profile->solveInit = timer.GetMilliseconds(); - - // Solve velocity constraints - timer.Reset(); - for (int32 i = 0; i < step.velocityIterations; ++i) - { - for (int32 j = 0; j < m_jointCount; ++j) - { - m_joints[j]->SolveVelocityConstraints(solverData); - } - - contactSolver.SolveVelocityConstraints(); - } - - // Store impulses for warm starting - contactSolver.StoreImpulses(); - profile->solveVelocity = timer.GetMilliseconds(); - - // Integrate positions - for (int32 i = 0; i < m_bodyCount; ++i) - { - b2Vec2 c = m_positions[i].c; - float32 a = m_positions[i].a; - b2Vec2 v = m_velocities[i].v; - float32 w = m_velocities[i].w; - - // Check for large velocities - b2Vec2 translation = h * v; - if (b2Dot(translation, translation) > b2_maxTranslationSquared) - { - float32 ratio = b2_maxTranslation / translation.Length(); - v *= ratio; - } - - float32 rotation = h * w; - if (rotation * rotation > b2_maxRotationSquared) - { - float32 ratio = b2_maxRotation / b2Abs(rotation); - w *= ratio; - } - - // Integrate - c += h * v; - a += h * w; - - m_positions[i].c = c; - m_positions[i].a = a; - m_velocities[i].v = v; - m_velocities[i].w = w; - } - - // Solve position constraints - timer.Reset(); - bool positionSolved = false; - for (int32 i = 0; i < step.positionIterations; ++i) - { - bool contactsOkay = contactSolver.SolvePositionConstraints(); - - bool jointsOkay = true; - for (int32 i = 0; i < m_jointCount; ++i) - { - bool jointOkay = m_joints[i]->SolvePositionConstraints(solverData); - jointsOkay = jointsOkay && jointOkay; - } - - if (contactsOkay && jointsOkay) - { - // Exit early if the position errors are small. - positionSolved = true; - break; - } - } - - // Copy state buffers back to the bodies - for (int32 i = 0; i < m_bodyCount; ++i) - { - b2Body* body = m_bodies[i]; - body->m_sweep.c = m_positions[i].c; - body->m_sweep.a = m_positions[i].a; - body->m_linearVelocity = m_velocities[i].v; - body->m_angularVelocity = m_velocities[i].w; - body->SynchronizeTransform(); - } - - profile->solvePosition = timer.GetMilliseconds(); - - Report(contactSolver.m_velocityConstraints); - - if (allowSleep) - { - float32 minSleepTime = b2_maxFloat; - - const float32 linTolSqr = b2_linearSleepTolerance * b2_linearSleepTolerance; - const float32 angTolSqr = b2_angularSleepTolerance * b2_angularSleepTolerance; - - for (int32 i = 0; i < m_bodyCount; ++i) - { - b2Body* b = m_bodies[i]; - if (b->GetType() == b2_staticBody) - { - continue; - } - - if ((b->m_flags & b2Body::e_autoSleepFlag) == 0 || - b->m_angularVelocity * b->m_angularVelocity > angTolSqr || - b2Dot(b->m_linearVelocity, b->m_linearVelocity) > linTolSqr) - { - b->m_sleepTime = 0.0f; - minSleepTime = 0.0f; - } - else - { - b->m_sleepTime += h; - minSleepTime = b2Min(minSleepTime, b->m_sleepTime); - } - } - - if (minSleepTime >= b2_timeToSleep && positionSolved) - { - for (int32 i = 0; i < m_bodyCount; ++i) - { - b2Body* b = m_bodies[i]; - b->SetAwake(false); - } - } - } -} - -void b2Island::SolveTOI(const b2TimeStep& subStep, int32 toiIndexA, int32 toiIndexB) -{ - b2Assert(toiIndexA < m_bodyCount); - b2Assert(toiIndexB < m_bodyCount); - - // Initialize the body state. - for (int32 i = 0; i < m_bodyCount; ++i) - { - b2Body* b = m_bodies[i]; - m_positions[i].c = b->m_sweep.c; - m_positions[i].a = b->m_sweep.a; - m_velocities[i].v = b->m_linearVelocity; - m_velocities[i].w = b->m_angularVelocity; - } - - b2ContactSolverDef contactSolverDef; - contactSolverDef.contacts = m_contacts; - contactSolverDef.count = m_contactCount; - contactSolverDef.allocator = m_allocator; - contactSolverDef.step = subStep; - contactSolverDef.positions = m_positions; - contactSolverDef.velocities = m_velocities; - b2ContactSolver contactSolver(&contactSolverDef); - - // Solve position constraints. - for (int32 i = 0; i < subStep.positionIterations; ++i) - { - bool contactsOkay = contactSolver.SolveTOIPositionConstraints(toiIndexA, toiIndexB); - if (contactsOkay) - { - break; - } - } - -#if 0 - // Is the new position really safe? - for (int32 i = 0; i < m_contactCount; ++i) - { - b2Contact* c = m_contacts[i]; - b2Fixture* fA = c->GetFixtureA(); - b2Fixture* fB = c->GetFixtureB(); - - b2Body* bA = fA->GetBody(); - b2Body* bB = fB->GetBody(); - - int32 indexA = c->GetChildIndexA(); - int32 indexB = c->GetChildIndexB(); - - b2DistanceInput input; - input.proxyA.Set(fA->GetShape(), indexA); - input.proxyB.Set(fB->GetShape(), indexB); - input.transformA = bA->GetTransform(); - input.transformB = bB->GetTransform(); - input.useRadii = false; - - b2DistanceOutput output; - b2SimplexCache cache; - cache.count = 0; - b2Distance(&output, &cache, &input); - - if (output.distance == 0 || cache.count == 3) - { - cache.count += 0; - } - } -#endif - - // Leap of faith to new safe state. - m_bodies[toiIndexA]->m_sweep.c0 = m_positions[toiIndexA].c; - m_bodies[toiIndexA]->m_sweep.a0 = m_positions[toiIndexA].a; - m_bodies[toiIndexB]->m_sweep.c0 = m_positions[toiIndexB].c; - m_bodies[toiIndexB]->m_sweep.a0 = m_positions[toiIndexB].a; - - // No warm starting is needed for TOI events because warm - // starting impulses were applied in the discrete solver. - contactSolver.InitializeVelocityConstraints(); - - // Solve velocity constraints. - for (int32 i = 0; i < subStep.velocityIterations; ++i) - { - contactSolver.SolveVelocityConstraints(); - } - - // Don't store the TOI contact forces for warm starting - // because they can be quite large. - - float32 h = subStep.dt; - - // Integrate positions - for (int32 i = 0; i < m_bodyCount; ++i) - { - b2Vec2 c = m_positions[i].c; - float32 a = m_positions[i].a; - b2Vec2 v = m_velocities[i].v; - float32 w = m_velocities[i].w; - - // Check for large velocities - b2Vec2 translation = h * v; - if (b2Dot(translation, translation) > b2_maxTranslationSquared) - { - float32 ratio = b2_maxTranslation / translation.Length(); - v *= ratio; - } - - float32 rotation = h * w; - if (rotation * rotation > b2_maxRotationSquared) - { - float32 ratio = b2_maxRotation / b2Abs(rotation); - w *= ratio; - } - - // Integrate - c += h * v; - a += h * w; - - m_positions[i].c = c; - m_positions[i].a = a; - m_velocities[i].v = v; - m_velocities[i].w = w; - - // Sync bodies - b2Body* body = m_bodies[i]; - body->m_sweep.c = c; - body->m_sweep.a = a; - body->m_linearVelocity = v; - body->m_angularVelocity = w; - body->SynchronizeTransform(); - } - - Report(contactSolver.m_velocityConstraints); -} - -void b2Island::Report(const b2ContactVelocityConstraint* constraints) -{ - if (m_listener == NULL) - { - return; - } - - for (int32 i = 0; i < m_contactCount; ++i) - { - b2Contact* c = m_contacts[i]; - - const b2ContactVelocityConstraint* vc = constraints + i; - - b2ContactImpulse impulse; - impulse.count = vc->pointCount; - for (int32 j = 0; j < vc->pointCount; ++j) - { - impulse.normalImpulses[j] = vc->points[j].normalImpulse; - impulse.tangentImpulses[j] = vc->points[j].tangentImpulse; - } - - m_listener->PostSolve(c, &impulse); - } -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2Island.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2Island.h deleted file mode 100644 index ef3d9b1..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2Island.h +++ /dev/null @@ -1,93 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_ISLAND_H -#define B2_ISLAND_H - -#include -#include -#include - -class b2Contact; -class b2Joint; -class b2StackAllocator; -class b2ContactListener; -struct b2ContactVelocityConstraint; -struct b2Profile; - -/// This is an internal class. -class b2Island -{ -public: - b2Island(int32 bodyCapacity, int32 contactCapacity, int32 jointCapacity, - b2StackAllocator* allocator, b2ContactListener* listener); - ~b2Island(); - - void Clear() - { - m_bodyCount = 0; - m_contactCount = 0; - m_jointCount = 0; - } - - void Solve(b2Profile* profile, const b2TimeStep& step, const b2Vec2& gravity, bool allowSleep); - - void SolveTOI(const b2TimeStep& subStep, int32 toiIndexA, int32 toiIndexB); - - void Add(b2Body* body) - { - b2Assert(m_bodyCount < m_bodyCapacity); - body->m_islandIndex = m_bodyCount; - m_bodies[m_bodyCount] = body; - ++m_bodyCount; - } - - void Add(b2Contact* contact) - { - b2Assert(m_contactCount < m_contactCapacity); - m_contacts[m_contactCount++] = contact; - } - - void Add(b2Joint* joint) - { - b2Assert(m_jointCount < m_jointCapacity); - m_joints[m_jointCount++] = joint; - } - - void Report(const b2ContactVelocityConstraint* constraints); - - b2StackAllocator* m_allocator; - b2ContactListener* m_listener; - - b2Body** m_bodies; - b2Contact** m_contacts; - b2Joint** m_joints; - - b2Position* m_positions; - b2Velocity* m_velocities; - - int32 m_bodyCount; - int32 m_jointCount; - int32 m_contactCount; - - int32 m_bodyCapacity; - int32 m_contactCapacity; - int32 m_jointCapacity; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2TimeStep.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2TimeStep.h deleted file mode 100644 index abe6fb6..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2TimeStep.h +++ /dev/null @@ -1,70 +0,0 @@ -/* -* Copyright (c) 2006-2011 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_TIME_STEP_H -#define B2_TIME_STEP_H - -#include - -/// Profiling data. Times are in milliseconds. -struct b2Profile -{ - float32 step; - float32 collide; - float32 solve; - float32 solveInit; - float32 solveVelocity; - float32 solvePosition; - float32 broadphase; - float32 solveTOI; -}; - -/// This is an internal structure. -struct b2TimeStep -{ - float32 dt; // time step - float32 inv_dt; // inverse time step (0 if dt == 0). - float32 dtRatio; // dt * inv_dt0 - int32 velocityIterations; - int32 positionIterations; - bool warmStarting; -}; - -/// This is an internal structure. -struct b2Position -{ - b2Vec2 c; - float32 a; -}; - -/// This is an internal structure. -struct b2Velocity -{ - b2Vec2 v; - float32 w; -}; - -/// Solver Data -struct b2SolverData -{ - b2TimeStep step; - b2Position* positions; - b2Velocity* velocities; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2World.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2World.cpp deleted file mode 100644 index dc9180c..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2World.cpp +++ /dev/null @@ -1,1339 +0,0 @@ -/* -* Copyright (c) 2006-2011 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -b2World::b2World(const b2Vec2& gravity) -{ - m_destructionListener = NULL; - m_debugDraw = NULL; - - m_bodyList = NULL; - m_jointList = NULL; - - m_bodyCount = 0; - m_jointCount = 0; - - m_warmStarting = true; - m_continuousPhysics = true; - m_subStepping = false; - - m_stepComplete = true; - - m_allowSleep = true; - m_gravity = gravity; - - m_flags = e_clearForces; - - m_inv_dt0 = 0.0f; - - m_contactManager.m_allocator = &m_blockAllocator; - - memset(&m_profile, 0, sizeof(b2Profile)); -} - -b2World::~b2World() -{ - // Some shapes allocate using b2Alloc. - b2Body* b = m_bodyList; - while (b) - { - b2Body* bNext = b->m_next; - - b2Fixture* f = b->m_fixtureList; - while (f) - { - b2Fixture* fNext = f->m_next; - f->m_proxyCount = 0; - f->Destroy(&m_blockAllocator); - f = fNext; - } - - b = bNext; - } -} - -void b2World::SetDestructionListener(b2DestructionListener* listener) -{ - m_destructionListener = listener; -} - -void b2World::SetContactFilter(b2ContactFilter* filter) -{ - m_contactManager.m_contactFilter = filter; -} - -void b2World::SetContactListener(b2ContactListener* listener) -{ - m_contactManager.m_contactListener = listener; -} - -void b2World::SetDebugDraw(b2Draw* debugDraw) -{ - m_debugDraw = debugDraw; -} - -b2Body* b2World::CreateBody(const b2BodyDef* def) -{ - b2Assert(IsLocked() == false); - if (IsLocked()) - { - return NULL; - } - - void* mem = m_blockAllocator.Allocate(sizeof(b2Body)); - b2Body* b = new (mem) b2Body(def, this); - - // Add to world doubly linked list. - b->m_prev = NULL; - b->m_next = m_bodyList; - if (m_bodyList) - { - m_bodyList->m_prev = b; - } - m_bodyList = b; - ++m_bodyCount; - - return b; -} - -void b2World::DestroyBody(b2Body* b) -{ - b2Assert(m_bodyCount > 0); - b2Assert(IsLocked() == false); - if (IsLocked()) - { - return; - } - - // Delete the attached joints. - b2JointEdge* je = b->m_jointList; - while (je) - { - b2JointEdge* je0 = je; - je = je->next; - - if (m_destructionListener) - { - m_destructionListener->SayGoodbye(je0->joint); - } - - DestroyJoint(je0->joint); - - b->m_jointList = je; - } - b->m_jointList = NULL; - - // Delete the attached contacts. - b2ContactEdge* ce = b->m_contactList; - while (ce) - { - b2ContactEdge* ce0 = ce; - ce = ce->next; - m_contactManager.Destroy(ce0->contact); - } - b->m_contactList = NULL; - - // Delete the attached fixtures. This destroys broad-phase proxies. - b2Fixture* f = b->m_fixtureList; - while (f) - { - b2Fixture* f0 = f; - f = f->m_next; - - if (m_destructionListener) - { - m_destructionListener->SayGoodbye(f0); - } - - f0->DestroyProxies(&m_contactManager.m_broadPhase); - f0->Destroy(&m_blockAllocator); - f0->~b2Fixture(); - m_blockAllocator.Free(f0, sizeof(b2Fixture)); - - b->m_fixtureList = f; - b->m_fixtureCount -= 1; - } - b->m_fixtureList = NULL; - b->m_fixtureCount = 0; - - // Remove world body list. - if (b->m_prev) - { - b->m_prev->m_next = b->m_next; - } - - if (b->m_next) - { - b->m_next->m_prev = b->m_prev; - } - - if (b == m_bodyList) - { - m_bodyList = b->m_next; - } - - --m_bodyCount; - b->~b2Body(); - m_blockAllocator.Free(b, sizeof(b2Body)); -} - -b2Joint* b2World::CreateJoint(const b2JointDef* def) -{ - b2Assert(IsLocked() == false); - if (IsLocked()) - { - return NULL; - } - - b2Joint* j = b2Joint::Create(def, &m_blockAllocator); - - // Connect to the world list. - j->m_prev = NULL; - j->m_next = m_jointList; - if (m_jointList) - { - m_jointList->m_prev = j; - } - m_jointList = j; - ++m_jointCount; - - // Connect to the bodies' doubly linked lists. - j->m_edgeA.joint = j; - j->m_edgeA.other = j->m_bodyB; - j->m_edgeA.prev = NULL; - j->m_edgeA.next = j->m_bodyA->m_jointList; - if (j->m_bodyA->m_jointList) j->m_bodyA->m_jointList->prev = &j->m_edgeA; - j->m_bodyA->m_jointList = &j->m_edgeA; - - j->m_edgeB.joint = j; - j->m_edgeB.other = j->m_bodyA; - j->m_edgeB.prev = NULL; - j->m_edgeB.next = j->m_bodyB->m_jointList; - if (j->m_bodyB->m_jointList) j->m_bodyB->m_jointList->prev = &j->m_edgeB; - j->m_bodyB->m_jointList = &j->m_edgeB; - - b2Body* bodyA = def->bodyA; - b2Body* bodyB = def->bodyB; - - // If the joint prevents collisions, then flag any contacts for filtering. - if (def->collideConnected == false) - { - b2ContactEdge* edge = bodyB->GetContactList(); - while (edge) - { - if (edge->other == bodyA) - { - // Flag the contact for filtering at the next time step (where either - // body is awake). - edge->contact->FlagForFiltering(); - } - - edge = edge->next; - } - } - - // Note: creating a joint doesn't wake the bodies. - - return j; -} - -void b2World::DestroyJoint(b2Joint* j) -{ - b2Assert(IsLocked() == false); - if (IsLocked()) - { - return; - } - - bool collideConnected = j->m_collideConnected; - - // Remove from the doubly linked list. - if (j->m_prev) - { - j->m_prev->m_next = j->m_next; - } - - if (j->m_next) - { - j->m_next->m_prev = j->m_prev; - } - - if (j == m_jointList) - { - m_jointList = j->m_next; - } - - // Disconnect from island graph. - b2Body* bodyA = j->m_bodyA; - b2Body* bodyB = j->m_bodyB; - - // Wake up connected bodies. - bodyA->SetAwake(true); - bodyB->SetAwake(true); - - // Remove from body 1. - if (j->m_edgeA.prev) - { - j->m_edgeA.prev->next = j->m_edgeA.next; - } - - if (j->m_edgeA.next) - { - j->m_edgeA.next->prev = j->m_edgeA.prev; - } - - if (&j->m_edgeA == bodyA->m_jointList) - { - bodyA->m_jointList = j->m_edgeA.next; - } - - j->m_edgeA.prev = NULL; - j->m_edgeA.next = NULL; - - // Remove from body 2 - if (j->m_edgeB.prev) - { - j->m_edgeB.prev->next = j->m_edgeB.next; - } - - if (j->m_edgeB.next) - { - j->m_edgeB.next->prev = j->m_edgeB.prev; - } - - if (&j->m_edgeB == bodyB->m_jointList) - { - bodyB->m_jointList = j->m_edgeB.next; - } - - j->m_edgeB.prev = NULL; - j->m_edgeB.next = NULL; - - b2Joint::Destroy(j, &m_blockAllocator); - - b2Assert(m_jointCount > 0); - --m_jointCount; - - // If the joint prevents collisions, then flag any contacts for filtering. - if (collideConnected == false) - { - b2ContactEdge* edge = bodyB->GetContactList(); - while (edge) - { - if (edge->other == bodyA) - { - // Flag the contact for filtering at the next time step (where either - // body is awake). - edge->contact->FlagForFiltering(); - } - - edge = edge->next; - } - } -} - -// -void b2World::SetAllowSleeping(bool flag) -{ - if (flag == m_allowSleep) - { - return; - } - - m_allowSleep = flag; - if (m_allowSleep == false) - { - for (b2Body* b = m_bodyList; b; b = b->m_next) - { - b->SetAwake(true); - } - } -} - -// Find islands, integrate and solve constraints, solve position constraints -void b2World::Solve(const b2TimeStep& step) -{ - m_profile.solveInit = 0.0f; - m_profile.solveVelocity = 0.0f; - m_profile.solvePosition = 0.0f; - - // Size the island for the worst case. - b2Island island(m_bodyCount, - m_contactManager.m_contactCount, - m_jointCount, - &m_stackAllocator, - m_contactManager.m_contactListener); - - // Clear all the island flags. - for (b2Body* b = m_bodyList; b; b = b->m_next) - { - b->m_flags &= ~b2Body::e_islandFlag; - } - for (b2Contact* c = m_contactManager.m_contactList; c; c = c->m_next) - { - c->m_flags &= ~b2Contact::e_islandFlag; - } - for (b2Joint* j = m_jointList; j; j = j->m_next) - { - j->m_islandFlag = false; - } - - // Build and simulate all awake islands. - int32 stackSize = m_bodyCount; - b2Body** stack = (b2Body**)m_stackAllocator.Allocate(stackSize * sizeof(b2Body*)); - for (b2Body* seed = m_bodyList; seed; seed = seed->m_next) - { - if (seed->m_flags & b2Body::e_islandFlag) - { - continue; - } - - if (seed->IsAwake() == false || seed->IsActive() == false) - { - continue; - } - - // The seed can be dynamic or kinematic. - if (seed->GetType() == b2_staticBody) - { - continue; - } - - // Reset island and stack. - island.Clear(); - int32 stackCount = 0; - stack[stackCount++] = seed; - seed->m_flags |= b2Body::e_islandFlag; - - // Perform a depth first search (DFS) on the constraint graph. - while (stackCount > 0) - { - // Grab the next body off the stack and add it to the island. - b2Body* b = stack[--stackCount]; - b2Assert(b->IsActive() == true); - island.Add(b); - - // Make sure the body is awake. - b->SetAwake(true); - - // To keep islands as small as possible, we don't - // propagate islands across static bodies. - if (b->GetType() == b2_staticBody) - { - continue; - } - - // Search all contacts connected to this body. - for (b2ContactEdge* ce = b->m_contactList; ce; ce = ce->next) - { - b2Contact* contact = ce->contact; - - // Has this contact already been added to an island? - if (contact->m_flags & b2Contact::e_islandFlag) - { - continue; - } - - // Is this contact solid and touching? - if (contact->IsEnabled() == false || - contact->IsTouching() == false) - { - continue; - } - - // Skip sensors. - bool sensorA = contact->m_fixtureA->m_isSensor; - bool sensorB = contact->m_fixtureB->m_isSensor; - if (sensorA || sensorB) - { - continue; - } - - island.Add(contact); - contact->m_flags |= b2Contact::e_islandFlag; - - b2Body* other = ce->other; - - // Was the other body already added to this island? - if (other->m_flags & b2Body::e_islandFlag) - { - continue; - } - - b2Assert(stackCount < stackSize); - stack[stackCount++] = other; - other->m_flags |= b2Body::e_islandFlag; - } - - // Search all joints connect to this body. - for (b2JointEdge* je = b->m_jointList; je; je = je->next) - { - if (je->joint->m_islandFlag == true) - { - continue; - } - - b2Body* other = je->other; - - // Don't simulate joints connected to inactive bodies. - if (other->IsActive() == false) - { - continue; - } - - island.Add(je->joint); - je->joint->m_islandFlag = true; - - if (other->m_flags & b2Body::e_islandFlag) - { - continue; - } - - b2Assert(stackCount < stackSize); - stack[stackCount++] = other; - other->m_flags |= b2Body::e_islandFlag; - } - } - - b2Profile profile; - island.Solve(&profile, step, m_gravity, m_allowSleep); - m_profile.solveInit += profile.solveInit; - m_profile.solveVelocity += profile.solveVelocity; - m_profile.solvePosition += profile.solvePosition; - - // Post solve cleanup. - for (int32 i = 0; i < island.m_bodyCount; ++i) - { - // Allow static bodies to participate in other islands. - b2Body* b = island.m_bodies[i]; - if (b->GetType() == b2_staticBody) - { - b->m_flags &= ~b2Body::e_islandFlag; - } - } - } - - m_stackAllocator.Free(stack); - - { - b2Timer timer; - // Synchronize fixtures, check for out of range bodies. - for (b2Body* b = m_bodyList; b; b = b->GetNext()) - { - // If a body was not in an island then it did not move. - if ((b->m_flags & b2Body::e_islandFlag) == 0) - { - continue; - } - - if (b->GetType() == b2_staticBody) - { - continue; - } - - // Update fixtures (for broad-phase). - b->SynchronizeFixtures(); - } - - // Look for new contacts. - m_contactManager.FindNewContacts(); - m_profile.broadphase = timer.GetMilliseconds(); - } -} - -// Find TOI contacts and solve them. -void b2World::SolveTOI(const b2TimeStep& step) -{ - b2Island island(2 * b2_maxTOIContacts, b2_maxTOIContacts, 0, &m_stackAllocator, m_contactManager.m_contactListener); - - if (m_stepComplete) - { - for (b2Body* b = m_bodyList; b; b = b->m_next) - { - b->m_flags &= ~b2Body::e_islandFlag; - b->m_sweep.alpha0 = 0.0f; - } - - for (b2Contact* c = m_contactManager.m_contactList; c; c = c->m_next) - { - // Invalidate TOI - c->m_flags &= ~(b2Contact::e_toiFlag | b2Contact::e_islandFlag); - c->m_toiCount = 0; - c->m_toi = 1.0f; - } - } - - // Find TOI events and solve them. - for (;;) - { - // Find the first TOI. - b2Contact* minContact = NULL; - float32 minAlpha = 1.0f; - - for (b2Contact* c = m_contactManager.m_contactList; c; c = c->m_next) - { - // Is this contact disabled? - if (c->IsEnabled() == false) - { - continue; - } - - // Prevent excessive sub-stepping. - if (c->m_toiCount > b2_maxSubSteps) - { - continue; - } - - float32 alpha = 1.0f; - if (c->m_flags & b2Contact::e_toiFlag) - { - // This contact has a valid cached TOI. - alpha = c->m_toi; - } - else - { - b2Fixture* fA = c->GetFixtureA(); - b2Fixture* fB = c->GetFixtureB(); - - // Is there a sensor? - if (fA->IsSensor() || fB->IsSensor()) - { - continue; - } - - b2Body* bA = fA->GetBody(); - b2Body* bB = fB->GetBody(); - - b2BodyType typeA = bA->m_type; - b2BodyType typeB = bB->m_type; - b2Assert(typeA == b2_dynamicBody || typeB == b2_dynamicBody); - - bool activeA = bA->IsAwake() && typeA != b2_staticBody; - bool activeB = bB->IsAwake() && typeB != b2_staticBody; - - // Is at least one body active (awake and dynamic or kinematic)? - if (activeA == false && activeB == false) - { - continue; - } - - bool collideA = bA->IsBullet() || typeA != b2_dynamicBody; - bool collideB = bB->IsBullet() || typeB != b2_dynamicBody; - - // Are these two non-bullet dynamic bodies? - if (collideA == false && collideB == false) - { - continue; - } - - // Compute the TOI for this contact. - // Put the sweeps onto the same time interval. - float32 alpha0 = bA->m_sweep.alpha0; - - if (bA->m_sweep.alpha0 < bB->m_sweep.alpha0) - { - alpha0 = bB->m_sweep.alpha0; - bA->m_sweep.Advance(alpha0); - } - else if (bB->m_sweep.alpha0 < bA->m_sweep.alpha0) - { - alpha0 = bA->m_sweep.alpha0; - bB->m_sweep.Advance(alpha0); - } - - b2Assert(alpha0 < 1.0f); - - int32 indexA = c->GetChildIndexA(); - int32 indexB = c->GetChildIndexB(); - - // Compute the time of impact in interval [0, minTOI] - b2TOIInput input; - input.proxyA.Set(fA->GetShape(), indexA); - input.proxyB.Set(fB->GetShape(), indexB); - input.sweepA = bA->m_sweep; - input.sweepB = bB->m_sweep; - input.tMax = 1.0f; - - b2TOIOutput output; - b2TimeOfImpact(&output, &input); - - // Beta is the fraction of the remaining portion of the . - float32 beta = output.t; - if (output.state == b2TOIOutput::e_touching) - { - alpha = b2Min(alpha0 + (1.0f - alpha0) * beta, 1.0f); - } - else - { - alpha = 1.0f; - } - - c->m_toi = alpha; - c->m_flags |= b2Contact::e_toiFlag; - } - - if (alpha < minAlpha) - { - // This is the minimum TOI found so far. - minContact = c; - minAlpha = alpha; - } - } - - if (minContact == NULL || 1.0f - 10.0f * b2_epsilon < minAlpha) - { - // No more TOI events. Done! - m_stepComplete = true; - break; - } - - // Advance the bodies to the TOI. - b2Fixture* fA = minContact->GetFixtureA(); - b2Fixture* fB = minContact->GetFixtureB(); - b2Body* bA = fA->GetBody(); - b2Body* bB = fB->GetBody(); - - b2Sweep backup1 = bA->m_sweep; - b2Sweep backup2 = bB->m_sweep; - - bA->Advance(minAlpha); - bB->Advance(minAlpha); - - // The TOI contact likely has some new contact points. - minContact->Update(m_contactManager.m_contactListener); - minContact->m_flags &= ~b2Contact::e_toiFlag; - ++minContact->m_toiCount; - - // Is the contact solid? - if (minContact->IsEnabled() == false || minContact->IsTouching() == false) - { - // Restore the sweeps. - minContact->SetEnabled(false); - bA->m_sweep = backup1; - bB->m_sweep = backup2; - bA->SynchronizeTransform(); - bB->SynchronizeTransform(); - continue; - } - - bA->SetAwake(true); - bB->SetAwake(true); - - // Build the island - island.Clear(); - island.Add(bA); - island.Add(bB); - island.Add(minContact); - - bA->m_flags |= b2Body::e_islandFlag; - bB->m_flags |= b2Body::e_islandFlag; - minContact->m_flags |= b2Contact::e_islandFlag; - - // Get contacts on bodyA and bodyB. - b2Body* bodies[2] = {bA, bB}; - for (int32 i = 0; i < 2; ++i) - { - b2Body* body = bodies[i]; - if (body->m_type == b2_dynamicBody) - { - for (b2ContactEdge* ce = body->m_contactList; ce; ce = ce->next) - { - if (island.m_bodyCount == island.m_bodyCapacity) - { - break; - } - - if (island.m_contactCount == island.m_contactCapacity) - { - break; - } - - b2Contact* contact = ce->contact; - - // Has this contact already been added to the island? - if (contact->m_flags & b2Contact::e_islandFlag) - { - continue; - } - - // Only add static, kinematic, or bullet bodies. - b2Body* other = ce->other; - if (other->m_type == b2_dynamicBody && - body->IsBullet() == false && other->IsBullet() == false) - { - continue; - } - - // Skip sensors. - bool sensorA = contact->m_fixtureA->m_isSensor; - bool sensorB = contact->m_fixtureB->m_isSensor; - if (sensorA || sensorB) - { - continue; - } - - // Tentatively advance the body to the TOI. - b2Sweep backup = other->m_sweep; - if ((other->m_flags & b2Body::e_islandFlag) == 0) - { - other->Advance(minAlpha); - } - - // Update the contact points - contact->Update(m_contactManager.m_contactListener); - - // Was the contact disabled by the user? - if (contact->IsEnabled() == false) - { - other->m_sweep = backup; - other->SynchronizeTransform(); - continue; - } - - // Are there contact points? - if (contact->IsTouching() == false) - { - other->m_sweep = backup; - other->SynchronizeTransform(); - continue; - } - - // Add the contact to the island - contact->m_flags |= b2Contact::e_islandFlag; - island.Add(contact); - - // Has the other body already been added to the island? - if (other->m_flags & b2Body::e_islandFlag) - { - continue; - } - - // Add the other body to the island. - other->m_flags |= b2Body::e_islandFlag; - - if (other->m_type != b2_staticBody) - { - other->SetAwake(true); - } - - island.Add(other); - } - } - } - - b2TimeStep subStep; - subStep.dt = (1.0f - minAlpha) * step.dt; - subStep.inv_dt = 1.0f / subStep.dt; - subStep.dtRatio = 1.0f; - subStep.positionIterations = 20; - subStep.velocityIterations = step.velocityIterations; - subStep.warmStarting = false; - island.SolveTOI(subStep, bA->m_islandIndex, bB->m_islandIndex); - - // Reset island flags and synchronize broad-phase proxies. - for (int32 i = 0; i < island.m_bodyCount; ++i) - { - b2Body* body = island.m_bodies[i]; - body->m_flags &= ~b2Body::e_islandFlag; - - if (body->m_type != b2_dynamicBody) - { - continue; - } - - body->SynchronizeFixtures(); - - // Invalidate all contact TOIs on this displaced body. - for (b2ContactEdge* ce = body->m_contactList; ce; ce = ce->next) - { - ce->contact->m_flags &= ~(b2Contact::e_toiFlag | b2Contact::e_islandFlag); - } - } - - // Commit fixture proxy movements to the broad-phase so that new contacts are created. - // Also, some contacts can be destroyed. - m_contactManager.FindNewContacts(); - - if (m_subStepping) - { - m_stepComplete = false; - break; - } - } -} - -void b2World::Step(float32 dt, int32 velocityIterations, int32 positionIterations) -{ - b2Timer stepTimer; - - // If new fixtures were added, we need to find the new contacts. - if (m_flags & e_newFixture) - { - m_contactManager.FindNewContacts(); - m_flags &= ~e_newFixture; - } - - m_flags |= e_locked; - - b2TimeStep step; - step.dt = dt; - step.velocityIterations = velocityIterations; - step.positionIterations = positionIterations; - if (dt > 0.0f) - { - step.inv_dt = 1.0f / dt; - } - else - { - step.inv_dt = 0.0f; - } - - step.dtRatio = m_inv_dt0 * dt; - - step.warmStarting = m_warmStarting; - - // Update contacts. This is where some contacts are destroyed. - { - b2Timer timer; - m_contactManager.Collide(); - m_profile.collide = timer.GetMilliseconds(); - } - - // Integrate velocities, solve velocity constraints, and integrate positions. - if (m_stepComplete && step.dt > 0.0f) - { - b2Timer timer; - Solve(step); - m_profile.solve = timer.GetMilliseconds(); - } - - // Handle TOI events. - if (m_continuousPhysics && step.dt > 0.0f) - { - b2Timer timer; - SolveTOI(step); - m_profile.solveTOI = timer.GetMilliseconds(); - } - - if (step.dt > 0.0f) - { - m_inv_dt0 = step.inv_dt; - } - - if (m_flags & e_clearForces) - { - ClearForces(); - } - - m_flags &= ~e_locked; - - m_profile.step = stepTimer.GetMilliseconds(); -} - -void b2World::ClearForces() -{ - for (b2Body* body = m_bodyList; body; body = body->GetNext()) - { - body->m_force.SetZero(); - body->m_torque = 0.0f; - } -} - -struct b2WorldQueryWrapper -{ - bool QueryCallback(int32 proxyId) - { - b2FixtureProxy* proxy = (b2FixtureProxy*)broadPhase->GetUserData(proxyId); - return callback->ReportFixture(proxy->fixture); - } - - const b2BroadPhase* broadPhase; - b2QueryCallback* callback; -}; - -void b2World::QueryAABB(b2QueryCallback* callback, const b2AABB& aabb) const -{ - b2WorldQueryWrapper wrapper; - wrapper.broadPhase = &m_contactManager.m_broadPhase; - wrapper.callback = callback; - m_contactManager.m_broadPhase.Query(&wrapper, aabb); -} - -struct b2WorldRayCastWrapper -{ - float32 RayCastCallback(const b2RayCastInput& input, int32 proxyId) - { - void* userData = broadPhase->GetUserData(proxyId); - b2FixtureProxy* proxy = (b2FixtureProxy*)userData; - b2Fixture* fixture = proxy->fixture; - int32 index = proxy->childIndex; - b2RayCastOutput output; - bool hit = fixture->RayCast(&output, input, index); - - if (hit) - { - float32 fraction = output.fraction; - b2Vec2 point = (1.0f - fraction) * input.p1 + fraction * input.p2; - return callback->ReportFixture(fixture, point, output.normal, fraction); - } - - return input.maxFraction; - } - - const b2BroadPhase* broadPhase; - b2RayCastCallback* callback; -}; - -void b2World::RayCast(b2RayCastCallback* callback, const b2Vec2& point1, const b2Vec2& point2) const -{ - b2WorldRayCastWrapper wrapper; - wrapper.broadPhase = &m_contactManager.m_broadPhase; - wrapper.callback = callback; - b2RayCastInput input; - input.maxFraction = 1.0f; - input.p1 = point1; - input.p2 = point2; - m_contactManager.m_broadPhase.RayCast(&wrapper, input); -} - -void b2World::DrawShape(b2Fixture* fixture, const b2Transform& xf, const b2Color& color) -{ - switch (fixture->GetType()) - { - case b2Shape::e_circle: - { - b2CircleShape* circle = (b2CircleShape*)fixture->GetShape(); - - b2Vec2 center = b2Mul(xf, circle->m_p); - float32 radius = circle->m_radius; - b2Vec2 axis = b2Mul(xf.q, b2Vec2(1.0f, 0.0f)); - - m_debugDraw->DrawSolidCircle(center, radius, axis, color); - } - break; - - case b2Shape::e_edge: - { - b2EdgeShape* edge = (b2EdgeShape*)fixture->GetShape(); - b2Vec2 v1 = b2Mul(xf, edge->m_vertex1); - b2Vec2 v2 = b2Mul(xf, edge->m_vertex2); - m_debugDraw->DrawSegment(v1, v2, color); - } - break; - - case b2Shape::e_chain: - { - b2ChainShape* chain = (b2ChainShape*)fixture->GetShape(); - int32 count = chain->m_count; - const b2Vec2* vertices = chain->m_vertices; - - b2Vec2 v1 = b2Mul(xf, vertices[0]); - for (int32 i = 1; i < count; ++i) - { - b2Vec2 v2 = b2Mul(xf, vertices[i]); - m_debugDraw->DrawSegment(v1, v2, color); - m_debugDraw->DrawCircle(v1, 0.05f, color); - v1 = v2; - } - } - break; - - case b2Shape::e_polygon: - { - b2PolygonShape* poly = (b2PolygonShape*)fixture->GetShape(); - int32 vertexCount = poly->m_count; - b2Assert(vertexCount <= b2_maxPolygonVertices); - b2Vec2 vertices[b2_maxPolygonVertices]; - - for (int32 i = 0; i < vertexCount; ++i) - { - vertices[i] = b2Mul(xf, poly->m_vertices[i]); - } - - m_debugDraw->DrawSolidPolygon(vertices, vertexCount, color); - } - break; - - default: - break; - } -} - -void b2World::DrawJoint(b2Joint* joint) -{ - b2Body* bodyA = joint->GetBodyA(); - b2Body* bodyB = joint->GetBodyB(); - const b2Transform& xf1 = bodyA->GetTransform(); - const b2Transform& xf2 = bodyB->GetTransform(); - b2Vec2 x1 = xf1.p; - b2Vec2 x2 = xf2.p; - b2Vec2 p1 = joint->GetAnchorA(); - b2Vec2 p2 = joint->GetAnchorB(); - - b2Color color(0.5f, 0.8f, 0.8f); - - switch (joint->GetType()) - { - case e_distanceJoint: - m_debugDraw->DrawSegment(p1, p2, color); - break; - - case e_pulleyJoint: - { - b2PulleyJoint* pulley = (b2PulleyJoint*)joint; - b2Vec2 s1 = pulley->GetGroundAnchorA(); - b2Vec2 s2 = pulley->GetGroundAnchorB(); - m_debugDraw->DrawSegment(s1, p1, color); - m_debugDraw->DrawSegment(s2, p2, color); - m_debugDraw->DrawSegment(s1, s2, color); - } - break; - - case e_mouseJoint: - // don't draw this - break; - - default: - m_debugDraw->DrawSegment(x1, p1, color); - m_debugDraw->DrawSegment(p1, p2, color); - m_debugDraw->DrawSegment(x2, p2, color); - } -} - -void b2World::DrawDebugData() -{ - if (m_debugDraw == NULL) - { - return; - } - - uint32 flags = m_debugDraw->GetFlags(); - - if (flags & b2Draw::e_shapeBit) - { - for (b2Body* b = m_bodyList; b; b = b->GetNext()) - { - const b2Transform& xf = b->GetTransform(); - for (b2Fixture* f = b->GetFixtureList(); f; f = f->GetNext()) - { - if (b->IsActive() == false) - { - DrawShape(f, xf, b2Color(0.5f, 0.5f, 0.3f)); - } - else if (b->GetType() == b2_staticBody) - { - DrawShape(f, xf, b2Color(0.5f, 0.9f, 0.5f)); - } - else if (b->GetType() == b2_kinematicBody) - { - DrawShape(f, xf, b2Color(0.5f, 0.5f, 0.9f)); - } - else if (b->IsAwake() == false) - { - DrawShape(f, xf, b2Color(0.6f, 0.6f, 0.6f)); - } - else - { - DrawShape(f, xf, b2Color(0.9f, 0.7f, 0.7f)); - } - } - } - } - - if (flags & b2Draw::e_jointBit) - { - for (b2Joint* j = m_jointList; j; j = j->GetNext()) - { - DrawJoint(j); - } - } - - if (flags & b2Draw::e_pairBit) - { - b2Color color(0.3f, 0.9f, 0.9f); - for (b2Contact* c = m_contactManager.m_contactList; c; c = c->GetNext()) - { - //b2Fixture* fixtureA = c->GetFixtureA(); - //b2Fixture* fixtureB = c->GetFixtureB(); - - //b2Vec2 cA = fixtureA->GetAABB().GetCenter(); - //b2Vec2 cB = fixtureB->GetAABB().GetCenter(); - - //m_debugDraw->DrawSegment(cA, cB, color); - } - } - - if (flags & b2Draw::e_aabbBit) - { - b2Color color(0.9f, 0.3f, 0.9f); - b2BroadPhase* bp = &m_contactManager.m_broadPhase; - - for (b2Body* b = m_bodyList; b; b = b->GetNext()) - { - if (b->IsActive() == false) - { - continue; - } - - for (b2Fixture* f = b->GetFixtureList(); f; f = f->GetNext()) - { - for (int32 i = 0; i < f->m_proxyCount; ++i) - { - b2FixtureProxy* proxy = f->m_proxies + i; - b2AABB aabb = bp->GetFatAABB(proxy->proxyId); - b2Vec2 vs[4]; - vs[0].Set(aabb.lowerBound.x, aabb.lowerBound.y); - vs[1].Set(aabb.upperBound.x, aabb.lowerBound.y); - vs[2].Set(aabb.upperBound.x, aabb.upperBound.y); - vs[3].Set(aabb.lowerBound.x, aabb.upperBound.y); - - m_debugDraw->DrawPolygon(vs, 4, color); - } - } - } - } - - if (flags & b2Draw::e_centerOfMassBit) - { - for (b2Body* b = m_bodyList; b; b = b->GetNext()) - { - b2Transform xf = b->GetTransform(); - xf.p = b->GetWorldCenter(); - m_debugDraw->DrawTransform(xf); - } - } -} - -int32 b2World::GetProxyCount() const -{ - return m_contactManager.m_broadPhase.GetProxyCount(); -} - -int32 b2World::GetTreeHeight() const -{ - return m_contactManager.m_broadPhase.GetTreeHeight(); -} - -int32 b2World::GetTreeBalance() const -{ - return m_contactManager.m_broadPhase.GetTreeBalance(); -} - -float32 b2World::GetTreeQuality() const -{ - return m_contactManager.m_broadPhase.GetTreeQuality(); -} - -void b2World::ShiftOrigin(const b2Vec2& newOrigin) -{ - b2Assert((m_flags & e_locked) == 0); - if ((m_flags & e_locked) == e_locked) - { - return; - } - - for (b2Body* b = m_bodyList; b; b = b->m_next) - { - b->m_xf.p -= newOrigin; - b->m_sweep.c0 -= newOrigin; - b->m_sweep.c -= newOrigin; - } - - for (b2Joint* j = m_jointList; j; j = j->m_next) - { - j->ShiftOrigin(newOrigin); - } - - m_contactManager.m_broadPhase.ShiftOrigin(newOrigin); -} - -void b2World::Dump() -{ - if ((m_flags & e_locked) == e_locked) - { - return; - } - - b2Log("b2Vec2 g(%.15lef, %.15lef);\n", m_gravity.x, m_gravity.y); - b2Log("m_world->SetGravity(g);\n"); - - b2Log("b2Body** bodies = (b2Body**)b2Alloc(%d * sizeof(b2Body*));\n", m_bodyCount); - b2Log("b2Joint** joints = (b2Joint**)b2Alloc(%d * sizeof(b2Joint*));\n", m_jointCount); - int32 i = 0; - for (b2Body* b = m_bodyList; b; b = b->m_next) - { - b->m_islandIndex = i; - b->Dump(); - ++i; - } - - i = 0; - for (b2Joint* j = m_jointList; j; j = j->m_next) - { - j->m_index = i; - ++i; - } - - // First pass on joints, skip gear joints. - for (b2Joint* j = m_jointList; j; j = j->m_next) - { - if (j->m_type == e_gearJoint) - { - continue; - } - - b2Log("{\n"); - j->Dump(); - b2Log("}\n"); - } - - // Second pass on joints, only gear joints. - for (b2Joint* j = m_jointList; j; j = j->m_next) - { - if (j->m_type != e_gearJoint) - { - continue; - } - - b2Log("{\n"); - j->Dump(); - b2Log("}\n"); - } - - b2Log("b2Free(joints);\n"); - b2Log("b2Free(bodies);\n"); - b2Log("joints = NULL;\n"); - b2Log("bodies = NULL;\n"); -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2World.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2World.h deleted file mode 100644 index 4f94f6e..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2World.h +++ /dev/null @@ -1,354 +0,0 @@ -/* -* Copyright (c) 2006-2011 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_WORLD_H -#define B2_WORLD_H - -#include -#include -#include -#include -#include -#include - -struct b2AABB; -struct b2BodyDef; -struct b2Color; -struct b2JointDef; -class b2Body; -class b2Draw; -class b2Fixture; -class b2Joint; - -/// The world class manages all physics entities, dynamic simulation, -/// and asynchronous queries. The world also contains efficient memory -/// management facilities. -class b2World -{ -public: - /// Construct a world object. - /// @param gravity the world gravity vector. - b2World(const b2Vec2& gravity); - - /// Destruct the world. All physics entities are destroyed and all heap memory is released. - ~b2World(); - - /// Register a destruction listener. The listener is owned by you and must - /// remain in scope. - void SetDestructionListener(b2DestructionListener* listener); - - /// Register a contact filter to provide specific control over collision. - /// Otherwise the default filter is used (b2_defaultFilter). The listener is - /// owned by you and must remain in scope. - void SetContactFilter(b2ContactFilter* filter); - - /// Register a contact event listener. The listener is owned by you and must - /// remain in scope. - void SetContactListener(b2ContactListener* listener); - - /// Register a routine for debug drawing. The debug draw functions are called - /// inside with b2World::DrawDebugData method. The debug draw object is owned - /// by you and must remain in scope. - void SetDebugDraw(b2Draw* debugDraw); - - /// Create a rigid body given a definition. No reference to the definition - /// is retained. - /// @warning This function is locked during callbacks. - b2Body* CreateBody(const b2BodyDef* def); - - /// Destroy a rigid body given a definition. No reference to the definition - /// is retained. This function is locked during callbacks. - /// @warning This automatically deletes all associated shapes and joints. - /// @warning This function is locked during callbacks. - void DestroyBody(b2Body* body); - - /// Create a joint to constrain bodies together. No reference to the definition - /// is retained. This may cause the connected bodies to cease colliding. - /// @warning This function is locked during callbacks. - b2Joint* CreateJoint(const b2JointDef* def); - - /// Destroy a joint. This may cause the connected bodies to begin colliding. - /// @warning This function is locked during callbacks. - void DestroyJoint(b2Joint* joint); - - /// Take a time step. This performs collision detection, integration, - /// and constraint solution. - /// @param timeStep the amount of time to simulate, this should not vary. - /// @param velocityIterations for the velocity constraint solver. - /// @param positionIterations for the position constraint solver. - void Step( float32 timeStep, - int32 velocityIterations, - int32 positionIterations); - - /// Manually clear the force buffer on all bodies. By default, forces are cleared automatically - /// after each call to Step. The default behavior is modified by calling SetAutoClearForces. - /// The purpose of this function is to support sub-stepping. Sub-stepping is often used to maintain - /// a fixed sized time step under a variable frame-rate. - /// When you perform sub-stepping you will disable auto clearing of forces and instead call - /// ClearForces after all sub-steps are complete in one pass of your game loop. - /// @see SetAutoClearForces - void ClearForces(); - - /// Call this to draw shapes and other debug draw data. This is intentionally non-const. - void DrawDebugData(); - - /// Query the world for all fixtures that potentially overlap the - /// provided AABB. - /// @param callback a user implemented callback class. - /// @param aabb the query box. - void QueryAABB(b2QueryCallback* callback, const b2AABB& aabb) const; - - /// Ray-cast the world for all fixtures in the path of the ray. Your callback - /// controls whether you get the closest point, any point, or n-points. - /// The ray-cast ignores shapes that contain the starting point. - /// @param callback a user implemented callback class. - /// @param point1 the ray starting point - /// @param point2 the ray ending point - void RayCast(b2RayCastCallback* callback, const b2Vec2& point1, const b2Vec2& point2) const; - - /// Get the world body list. With the returned body, use b2Body::GetNext to get - /// the next body in the world list. A NULL body indicates the end of the list. - /// @return the head of the world body list. - b2Body* GetBodyList(); - const b2Body* GetBodyList() const; - - /// Get the world joint list. With the returned joint, use b2Joint::GetNext to get - /// the next joint in the world list. A NULL joint indicates the end of the list. - /// @return the head of the world joint list. - b2Joint* GetJointList(); - const b2Joint* GetJointList() const; - - /// Get the world contact list. With the returned contact, use b2Contact::GetNext to get - /// the next contact in the world list. A NULL contact indicates the end of the list. - /// @return the head of the world contact list. - /// @warning contacts are created and destroyed in the middle of a time step. - /// Use b2ContactListener to avoid missing contacts. - b2Contact* GetContactList(); - const b2Contact* GetContactList() const; - - /// Enable/disable sleep. - void SetAllowSleeping(bool flag); - bool GetAllowSleeping() const { return m_allowSleep; } - - /// Enable/disable warm starting. For testing. - void SetWarmStarting(bool flag) { m_warmStarting = flag; } - bool GetWarmStarting() const { return m_warmStarting; } - - /// Enable/disable continuous physics. For testing. - void SetContinuousPhysics(bool flag) { m_continuousPhysics = flag; } - bool GetContinuousPhysics() const { return m_continuousPhysics; } - - /// Enable/disable single stepped continuous physics. For testing. - void SetSubStepping(bool flag) { m_subStepping = flag; } - bool GetSubStepping() const { return m_subStepping; } - - /// Get the number of broad-phase proxies. - int32 GetProxyCount() const; - - /// Get the number of bodies. - int32 GetBodyCount() const; - - /// Get the number of joints. - int32 GetJointCount() const; - - /// Get the number of contacts (each may have 0 or more contact points). - int32 GetContactCount() const; - - /// Get the height of the dynamic tree. - int32 GetTreeHeight() const; - - /// Get the balance of the dynamic tree. - int32 GetTreeBalance() const; - - /// Get the quality metric of the dynamic tree. The smaller the better. - /// The minimum is 1. - float32 GetTreeQuality() const; - - /// Change the global gravity vector. - void SetGravity(const b2Vec2& gravity); - - /// Get the global gravity vector. - b2Vec2 GetGravity() const; - - /// Is the world locked (in the middle of a time step). - bool IsLocked() const; - - /// Set flag to control automatic clearing of forces after each time step. - void SetAutoClearForces(bool flag); - - /// Get the flag that controls automatic clearing of forces after each time step. - bool GetAutoClearForces() const; - - /// Shift the world origin. Useful for large worlds. - /// The body shift formula is: position -= newOrigin - /// @param newOrigin the new origin with respect to the old origin - void ShiftOrigin(const b2Vec2& newOrigin); - - /// Get the contact manager for testing. - const b2ContactManager& GetContactManager() const; - - /// Get the current profile. - const b2Profile& GetProfile() const; - - /// Dump the world into the log file. - /// @warning this should be called outside of a time step. - void Dump(); - -private: - - // m_flags - enum - { - e_newFixture = 0x0001, - e_locked = 0x0002, - e_clearForces = 0x0004 - }; - - friend class b2Body; - friend class b2Fixture; - friend class b2ContactManager; - friend class b2Controller; - - void Solve(const b2TimeStep& step); - void SolveTOI(const b2TimeStep& step); - - void DrawJoint(b2Joint* joint); - void DrawShape(b2Fixture* shape, const b2Transform& xf, const b2Color& color); - - b2BlockAllocator m_blockAllocator; - b2StackAllocator m_stackAllocator; - - int32 m_flags; - - b2ContactManager m_contactManager; - - b2Body* m_bodyList; - b2Joint* m_jointList; - - int32 m_bodyCount; - int32 m_jointCount; - - b2Vec2 m_gravity; - bool m_allowSleep; - - b2DestructionListener* m_destructionListener; - b2Draw* m_debugDraw; - - // This is used to compute the time step ratio to - // support a variable time step. - float32 m_inv_dt0; - - // These are for debugging the solver. - bool m_warmStarting; - bool m_continuousPhysics; - bool m_subStepping; - - bool m_stepComplete; - - b2Profile m_profile; -}; - -inline b2Body* b2World::GetBodyList() -{ - return m_bodyList; -} - -inline const b2Body* b2World::GetBodyList() const -{ - return m_bodyList; -} - -inline b2Joint* b2World::GetJointList() -{ - return m_jointList; -} - -inline const b2Joint* b2World::GetJointList() const -{ - return m_jointList; -} - -inline b2Contact* b2World::GetContactList() -{ - return m_contactManager.m_contactList; -} - -inline const b2Contact* b2World::GetContactList() const -{ - return m_contactManager.m_contactList; -} - -inline int32 b2World::GetBodyCount() const -{ - return m_bodyCount; -} - -inline int32 b2World::GetJointCount() const -{ - return m_jointCount; -} - -inline int32 b2World::GetContactCount() const -{ - return m_contactManager.m_contactCount; -} - -inline void b2World::SetGravity(const b2Vec2& gravity) -{ - m_gravity = gravity; -} - -inline b2Vec2 b2World::GetGravity() const -{ - return m_gravity; -} - -inline bool b2World::IsLocked() const -{ - return (m_flags & e_locked) == e_locked; -} - -inline void b2World::SetAutoClearForces(bool flag) -{ - if (flag) - { - m_flags |= e_clearForces; - } - else - { - m_flags &= ~e_clearForces; - } -} - -/// Get the flag that controls automatic clearing of forces after each time step. -inline bool b2World::GetAutoClearForces() const -{ - return (m_flags & e_clearForces) == e_clearForces; -} - -inline const b2ContactManager& b2World::GetContactManager() const -{ - return m_contactManager; -} - -inline const b2Profile& b2World::GetProfile() const -{ - return m_profile; -} - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2WorldCallbacks.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2WorldCallbacks.cpp deleted file mode 100644 index 82b28cc..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2WorldCallbacks.cpp +++ /dev/null @@ -1,36 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include -#include - -// Return true if contact calculations should be performed between these two shapes. -// If you implement your own collision filter you may want to build from this implementation. -bool b2ContactFilter::ShouldCollide(b2Fixture* fixtureA, b2Fixture* fixtureB) -{ - const b2Filter& filterA = fixtureA->GetFilterData(); - const b2Filter& filterB = fixtureB->GetFilterData(); - - if (filterA.groupIndex == filterB.groupIndex && filterA.groupIndex != 0) - { - return filterA.groupIndex > 0; - } - - bool collide = (filterA.maskBits & filterB.categoryBits) != 0 && (filterA.categoryBits & filterB.maskBits) != 0; - return collide; -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2WorldCallbacks.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2WorldCallbacks.h deleted file mode 100644 index 9b937e8..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2WorldCallbacks.h +++ /dev/null @@ -1,155 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_WORLD_CALLBACKS_H -#define B2_WORLD_CALLBACKS_H - -#include - -struct b2Vec2; -struct b2Transform; -class b2Fixture; -class b2Body; -class b2Joint; -class b2Contact; -struct b2ContactResult; -struct b2Manifold; - -/// Joints and fixtures are destroyed when their associated -/// body is destroyed. Implement this listener so that you -/// may nullify references to these joints and shapes. -class b2DestructionListener -{ -public: - virtual ~b2DestructionListener() {} - - /// Called when any joint is about to be destroyed due - /// to the destruction of one of its attached bodies. - virtual void SayGoodbye(b2Joint* joint) = 0; - - /// Called when any fixture is about to be destroyed due - /// to the destruction of its parent body. - virtual void SayGoodbye(b2Fixture* fixture) = 0; -}; - -/// Implement this class to provide collision filtering. In other words, you can implement -/// this class if you want finer control over contact creation. -class b2ContactFilter -{ -public: - virtual ~b2ContactFilter() {} - - /// Return true if contact calculations should be performed between these two shapes. - /// @warning for performance reasons this is only called when the AABBs begin to overlap. - virtual bool ShouldCollide(b2Fixture* fixtureA, b2Fixture* fixtureB); -}; - -/// Contact impulses for reporting. Impulses are used instead of forces because -/// sub-step forces may approach infinity for rigid body collisions. These -/// match up one-to-one with the contact points in b2Manifold. -struct b2ContactImpulse -{ - float32 normalImpulses[b2_maxManifoldPoints]; - float32 tangentImpulses[b2_maxManifoldPoints]; - int32 count; -}; - -/// Implement this class to get contact information. You can use these results for -/// things like sounds and game logic. You can also get contact results by -/// traversing the contact lists after the time step. However, you might miss -/// some contacts because continuous physics leads to sub-stepping. -/// Additionally you may receive multiple callbacks for the same contact in a -/// single time step. -/// You should strive to make your callbacks efficient because there may be -/// many callbacks per time step. -/// @warning You cannot create/destroy Box2D entities inside these callbacks. -class b2ContactListener -{ -public: - virtual ~b2ContactListener() {} - - /// Called when two fixtures begin to touch. - virtual void BeginContact(b2Contact* contact) { B2_NOT_USED(contact); } - - /// Called when two fixtures cease to touch. - virtual void EndContact(b2Contact* contact) { B2_NOT_USED(contact); } - - /// This is called after a contact is updated. This allows you to inspect a - /// contact before it goes to the solver. If you are careful, you can modify the - /// contact manifold (e.g. disable contact). - /// A copy of the old manifold is provided so that you can detect changes. - /// Note: this is called only for awake bodies. - /// Note: this is called even when the number of contact points is zero. - /// Note: this is not called for sensors. - /// Note: if you set the number of contact points to zero, you will not - /// get an EndContact callback. However, you may get a BeginContact callback - /// the next step. - virtual void PreSolve(b2Contact* contact, const b2Manifold* oldManifold) - { - B2_NOT_USED(contact); - B2_NOT_USED(oldManifold); - } - - /// This lets you inspect a contact after the solver is finished. This is useful - /// for inspecting impulses. - /// Note: the contact manifold does not include time of impact impulses, which can be - /// arbitrarily large if the sub-step is small. Hence the impulse is provided explicitly - /// in a separate data structure. - /// Note: this is only called for contacts that are touching, solid, and awake. - virtual void PostSolve(b2Contact* contact, const b2ContactImpulse* impulse) - { - B2_NOT_USED(contact); - B2_NOT_USED(impulse); - } -}; - -/// Callback class for AABB queries. -/// See b2World::Query -class b2QueryCallback -{ -public: - virtual ~b2QueryCallback() {} - - /// Called for each fixture found in the query AABB. - /// @return false to terminate the query. - virtual bool ReportFixture(b2Fixture* fixture) = 0; -}; - -/// Callback class for ray casts. -/// See b2World::RayCast -class b2RayCastCallback -{ -public: - virtual ~b2RayCastCallback() {} - - /// Called for each fixture found in the query. You control how the ray cast - /// proceeds by returning a float: - /// return -1: ignore this fixture and continue - /// return 0: terminate the ray cast - /// return fraction: clip the ray to this point - /// return 1: don't clip the ray and continue - /// @param fixture the fixture hit by the ray - /// @param point the point of initial intersection - /// @param normal the normal vector at the point of intersection - /// @return -1 to filter, 0 to terminate, fraction to clip the ray for - /// closest hit, 1 to continue - virtual float32 ReportFixture( b2Fixture* fixture, const b2Vec2& point, - const b2Vec2& normal, float32 fraction) = 0; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Makefile b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Makefile deleted file mode 100644 index d3af0a0..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Makefile +++ /dev/null @@ -1,1424 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 2.8 - -# Default target executed when no arguments are given to make. -default_target: all -.PHONY : default_target - -#============================================================================= -# Special targets provided by cmake. - -# Disable implicit rules so canonical targets will work. -.SUFFIXES: - -# Remove some rules from gmake that .SUFFIXES does not remove. -SUFFIXES = - -.SUFFIXES: .hpux_make_needs_suffix_list - -# Suppress display of executed commands. -$(VERBOSE).SILENT: - -# A target that is always out of date. -cmake_force: -.PHONY : cmake_force - -#============================================================================= -# Set environment variables for the build. - -# The shell in which to execute make rules. -SHELL = /bin/sh - -# The CMake executable. -CMAKE_COMMAND = /usr/bin/cmake - -# The command to remove a file. -RM = /usr/bin/cmake -E remove -f - -# Escaping for special characters. -EQUALS = = - -# The top-level source directory on which CMake was run. -CMAKE_SOURCE_DIR = /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D - -# The top-level build directory on which CMake was run. -CMAKE_BINARY_DIR = /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D - -#============================================================================= -# Targets provided globally by CMake. - -# Special rule for the target edit_cache -edit_cache: - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running interactive CMake command-line interface..." - /usr/bin/cmake -i . -.PHONY : edit_cache - -# Special rule for the target edit_cache -edit_cache/fast: edit_cache -.PHONY : edit_cache/fast - -# Special rule for the target install -install: preinstall - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..." - /usr/bin/cmake -P cmake_install.cmake -.PHONY : install - -# Special rule for the target install -install/fast: preinstall/fast - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..." - /usr/bin/cmake -P cmake_install.cmake -.PHONY : install/fast - -# Special rule for the target install/local -install/local: preinstall - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..." - /usr/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake -.PHONY : install/local - -# Special rule for the target install/local -install/local/fast: install/local -.PHONY : install/local/fast - -# Special rule for the target install/strip -install/strip: preinstall - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..." - /usr/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake -.PHONY : install/strip - -# Special rule for the target install/strip -install/strip/fast: install/strip -.PHONY : install/strip/fast - -# Special rule for the target list_install_components -list_install_components: - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Available install components are: \"Unspecified\"" -.PHONY : list_install_components - -# Special rule for the target list_install_components -list_install_components/fast: list_install_components -.PHONY : list_install_components/fast - -# Special rule for the target rebuild_cache -rebuild_cache: - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..." - /usr/bin/cmake -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) -.PHONY : rebuild_cache - -# Special rule for the target rebuild_cache -rebuild_cache/fast: rebuild_cache -.PHONY : rebuild_cache/fast - -# The main all target -all: cmake_check_build_system - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(CMAKE_COMMAND) -E cmake_progress_start /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/progress.marks - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f CMakeFiles/Makefile2 Box2D/all - $(CMAKE_COMMAND) -E cmake_progress_start /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles 0 -.PHONY : all - -# The main clean target -clean: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f CMakeFiles/Makefile2 Box2D/clean -.PHONY : clean - -# The main clean target -clean/fast: clean -.PHONY : clean/fast - -# Prepare targets for installation. -preinstall: all - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f CMakeFiles/Makefile2 Box2D/preinstall -.PHONY : preinstall - -# Prepare targets for installation. -preinstall/fast: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f CMakeFiles/Makefile2 Box2D/preinstall -.PHONY : preinstall/fast - -# clear depends -depend: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1 -.PHONY : depend - -# Convenience name for target. -Box2D/CMakeFiles/Box2D.dir/rule: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f CMakeFiles/Makefile2 Box2D/CMakeFiles/Box2D.dir/rule -.PHONY : Box2D/CMakeFiles/Box2D.dir/rule - -# Convenience name for target. -Box2D: Box2D/CMakeFiles/Box2D.dir/rule -.PHONY : Box2D - -# fast build rule for target. -Box2D/fast: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/build -.PHONY : Box2D/fast - -Collision/Shapes/b2ChainShape.o: Collision/Shapes/b2ChainShape.cpp.o -.PHONY : Collision/Shapes/b2ChainShape.o - -# target to build an object file -Collision/Shapes/b2ChainShape.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2ChainShape.cpp.o -.PHONY : Collision/Shapes/b2ChainShape.cpp.o - -Collision/Shapes/b2ChainShape.i: Collision/Shapes/b2ChainShape.cpp.i -.PHONY : Collision/Shapes/b2ChainShape.i - -# target to preprocess a source file -Collision/Shapes/b2ChainShape.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2ChainShape.cpp.i -.PHONY : Collision/Shapes/b2ChainShape.cpp.i - -Collision/Shapes/b2ChainShape.s: Collision/Shapes/b2ChainShape.cpp.s -.PHONY : Collision/Shapes/b2ChainShape.s - -# target to generate assembly for a file -Collision/Shapes/b2ChainShape.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2ChainShape.cpp.s -.PHONY : Collision/Shapes/b2ChainShape.cpp.s - -Collision/Shapes/b2CircleShape.o: Collision/Shapes/b2CircleShape.cpp.o -.PHONY : Collision/Shapes/b2CircleShape.o - -# target to build an object file -Collision/Shapes/b2CircleShape.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2CircleShape.cpp.o -.PHONY : Collision/Shapes/b2CircleShape.cpp.o - -Collision/Shapes/b2CircleShape.i: Collision/Shapes/b2CircleShape.cpp.i -.PHONY : Collision/Shapes/b2CircleShape.i - -# target to preprocess a source file -Collision/Shapes/b2CircleShape.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2CircleShape.cpp.i -.PHONY : Collision/Shapes/b2CircleShape.cpp.i - -Collision/Shapes/b2CircleShape.s: Collision/Shapes/b2CircleShape.cpp.s -.PHONY : Collision/Shapes/b2CircleShape.s - -# target to generate assembly for a file -Collision/Shapes/b2CircleShape.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2CircleShape.cpp.s -.PHONY : Collision/Shapes/b2CircleShape.cpp.s - -Collision/Shapes/b2EdgeShape.o: Collision/Shapes/b2EdgeShape.cpp.o -.PHONY : Collision/Shapes/b2EdgeShape.o - -# target to build an object file -Collision/Shapes/b2EdgeShape.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2EdgeShape.cpp.o -.PHONY : Collision/Shapes/b2EdgeShape.cpp.o - -Collision/Shapes/b2EdgeShape.i: Collision/Shapes/b2EdgeShape.cpp.i -.PHONY : Collision/Shapes/b2EdgeShape.i - -# target to preprocess a source file -Collision/Shapes/b2EdgeShape.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2EdgeShape.cpp.i -.PHONY : Collision/Shapes/b2EdgeShape.cpp.i - -Collision/Shapes/b2EdgeShape.s: Collision/Shapes/b2EdgeShape.cpp.s -.PHONY : Collision/Shapes/b2EdgeShape.s - -# target to generate assembly for a file -Collision/Shapes/b2EdgeShape.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2EdgeShape.cpp.s -.PHONY : Collision/Shapes/b2EdgeShape.cpp.s - -Collision/Shapes/b2PolygonShape.o: Collision/Shapes/b2PolygonShape.cpp.o -.PHONY : Collision/Shapes/b2PolygonShape.o - -# target to build an object file -Collision/Shapes/b2PolygonShape.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2PolygonShape.cpp.o -.PHONY : Collision/Shapes/b2PolygonShape.cpp.o - -Collision/Shapes/b2PolygonShape.i: Collision/Shapes/b2PolygonShape.cpp.i -.PHONY : Collision/Shapes/b2PolygonShape.i - -# target to preprocess a source file -Collision/Shapes/b2PolygonShape.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2PolygonShape.cpp.i -.PHONY : Collision/Shapes/b2PolygonShape.cpp.i - -Collision/Shapes/b2PolygonShape.s: Collision/Shapes/b2PolygonShape.cpp.s -.PHONY : Collision/Shapes/b2PolygonShape.s - -# target to generate assembly for a file -Collision/Shapes/b2PolygonShape.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/Shapes/b2PolygonShape.cpp.s -.PHONY : Collision/Shapes/b2PolygonShape.cpp.s - -Collision/b2BroadPhase.o: Collision/b2BroadPhase.cpp.o -.PHONY : Collision/b2BroadPhase.o - -# target to build an object file -Collision/b2BroadPhase.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/b2BroadPhase.cpp.o -.PHONY : Collision/b2BroadPhase.cpp.o - -Collision/b2BroadPhase.i: Collision/b2BroadPhase.cpp.i -.PHONY : Collision/b2BroadPhase.i - -# target to preprocess a source file -Collision/b2BroadPhase.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/b2BroadPhase.cpp.i -.PHONY : Collision/b2BroadPhase.cpp.i - -Collision/b2BroadPhase.s: Collision/b2BroadPhase.cpp.s -.PHONY : Collision/b2BroadPhase.s - -# target to generate assembly for a file -Collision/b2BroadPhase.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/b2BroadPhase.cpp.s -.PHONY : Collision/b2BroadPhase.cpp.s - -Collision/b2CollideCircle.o: Collision/b2CollideCircle.cpp.o -.PHONY : Collision/b2CollideCircle.o - -# target to build an object file -Collision/b2CollideCircle.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideCircle.cpp.o -.PHONY : Collision/b2CollideCircle.cpp.o - -Collision/b2CollideCircle.i: Collision/b2CollideCircle.cpp.i -.PHONY : Collision/b2CollideCircle.i - -# target to preprocess a source file -Collision/b2CollideCircle.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideCircle.cpp.i -.PHONY : Collision/b2CollideCircle.cpp.i - -Collision/b2CollideCircle.s: Collision/b2CollideCircle.cpp.s -.PHONY : Collision/b2CollideCircle.s - -# target to generate assembly for a file -Collision/b2CollideCircle.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideCircle.cpp.s -.PHONY : Collision/b2CollideCircle.cpp.s - -Collision/b2CollideEdge.o: Collision/b2CollideEdge.cpp.o -.PHONY : Collision/b2CollideEdge.o - -# target to build an object file -Collision/b2CollideEdge.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideEdge.cpp.o -.PHONY : Collision/b2CollideEdge.cpp.o - -Collision/b2CollideEdge.i: Collision/b2CollideEdge.cpp.i -.PHONY : Collision/b2CollideEdge.i - -# target to preprocess a source file -Collision/b2CollideEdge.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideEdge.cpp.i -.PHONY : Collision/b2CollideEdge.cpp.i - -Collision/b2CollideEdge.s: Collision/b2CollideEdge.cpp.s -.PHONY : Collision/b2CollideEdge.s - -# target to generate assembly for a file -Collision/b2CollideEdge.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/b2CollideEdge.cpp.s -.PHONY : Collision/b2CollideEdge.cpp.s - -Collision/b2CollidePolygon.o: Collision/b2CollidePolygon.cpp.o -.PHONY : Collision/b2CollidePolygon.o - -# target to build an object file -Collision/b2CollidePolygon.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/b2CollidePolygon.cpp.o -.PHONY : Collision/b2CollidePolygon.cpp.o - -Collision/b2CollidePolygon.i: Collision/b2CollidePolygon.cpp.i -.PHONY : Collision/b2CollidePolygon.i - -# target to preprocess a source file -Collision/b2CollidePolygon.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/b2CollidePolygon.cpp.i -.PHONY : Collision/b2CollidePolygon.cpp.i - -Collision/b2CollidePolygon.s: Collision/b2CollidePolygon.cpp.s -.PHONY : Collision/b2CollidePolygon.s - -# target to generate assembly for a file -Collision/b2CollidePolygon.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/b2CollidePolygon.cpp.s -.PHONY : Collision/b2CollidePolygon.cpp.s - -Collision/b2Collision.o: Collision/b2Collision.cpp.o -.PHONY : Collision/b2Collision.o - -# target to build an object file -Collision/b2Collision.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/b2Collision.cpp.o -.PHONY : Collision/b2Collision.cpp.o - -Collision/b2Collision.i: Collision/b2Collision.cpp.i -.PHONY : Collision/b2Collision.i - -# target to preprocess a source file -Collision/b2Collision.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/b2Collision.cpp.i -.PHONY : Collision/b2Collision.cpp.i - -Collision/b2Collision.s: Collision/b2Collision.cpp.s -.PHONY : Collision/b2Collision.s - -# target to generate assembly for a file -Collision/b2Collision.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/b2Collision.cpp.s -.PHONY : Collision/b2Collision.cpp.s - -Collision/b2Distance.o: Collision/b2Distance.cpp.o -.PHONY : Collision/b2Distance.o - -# target to build an object file -Collision/b2Distance.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/b2Distance.cpp.o -.PHONY : Collision/b2Distance.cpp.o - -Collision/b2Distance.i: Collision/b2Distance.cpp.i -.PHONY : Collision/b2Distance.i - -# target to preprocess a source file -Collision/b2Distance.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/b2Distance.cpp.i -.PHONY : Collision/b2Distance.cpp.i - -Collision/b2Distance.s: Collision/b2Distance.cpp.s -.PHONY : Collision/b2Distance.s - -# target to generate assembly for a file -Collision/b2Distance.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/b2Distance.cpp.s -.PHONY : Collision/b2Distance.cpp.s - -Collision/b2DynamicTree.o: Collision/b2DynamicTree.cpp.o -.PHONY : Collision/b2DynamicTree.o - -# target to build an object file -Collision/b2DynamicTree.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/b2DynamicTree.cpp.o -.PHONY : Collision/b2DynamicTree.cpp.o - -Collision/b2DynamicTree.i: Collision/b2DynamicTree.cpp.i -.PHONY : Collision/b2DynamicTree.i - -# target to preprocess a source file -Collision/b2DynamicTree.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/b2DynamicTree.cpp.i -.PHONY : Collision/b2DynamicTree.cpp.i - -Collision/b2DynamicTree.s: Collision/b2DynamicTree.cpp.s -.PHONY : Collision/b2DynamicTree.s - -# target to generate assembly for a file -Collision/b2DynamicTree.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/b2DynamicTree.cpp.s -.PHONY : Collision/b2DynamicTree.cpp.s - -Collision/b2TimeOfImpact.o: Collision/b2TimeOfImpact.cpp.o -.PHONY : Collision/b2TimeOfImpact.o - -# target to build an object file -Collision/b2TimeOfImpact.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/b2TimeOfImpact.cpp.o -.PHONY : Collision/b2TimeOfImpact.cpp.o - -Collision/b2TimeOfImpact.i: Collision/b2TimeOfImpact.cpp.i -.PHONY : Collision/b2TimeOfImpact.i - -# target to preprocess a source file -Collision/b2TimeOfImpact.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/b2TimeOfImpact.cpp.i -.PHONY : Collision/b2TimeOfImpact.cpp.i - -Collision/b2TimeOfImpact.s: Collision/b2TimeOfImpact.cpp.s -.PHONY : Collision/b2TimeOfImpact.s - -# target to generate assembly for a file -Collision/b2TimeOfImpact.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Collision/b2TimeOfImpact.cpp.s -.PHONY : Collision/b2TimeOfImpact.cpp.s - -Common/b2BlockAllocator.o: Common/b2BlockAllocator.cpp.o -.PHONY : Common/b2BlockAllocator.o - -# target to build an object file -Common/b2BlockAllocator.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Common/b2BlockAllocator.cpp.o -.PHONY : Common/b2BlockAllocator.cpp.o - -Common/b2BlockAllocator.i: Common/b2BlockAllocator.cpp.i -.PHONY : Common/b2BlockAllocator.i - -# target to preprocess a source file -Common/b2BlockAllocator.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Common/b2BlockAllocator.cpp.i -.PHONY : Common/b2BlockAllocator.cpp.i - -Common/b2BlockAllocator.s: Common/b2BlockAllocator.cpp.s -.PHONY : Common/b2BlockAllocator.s - -# target to generate assembly for a file -Common/b2BlockAllocator.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Common/b2BlockAllocator.cpp.s -.PHONY : Common/b2BlockAllocator.cpp.s - -Common/b2Draw.o: Common/b2Draw.cpp.o -.PHONY : Common/b2Draw.o - -# target to build an object file -Common/b2Draw.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Common/b2Draw.cpp.o -.PHONY : Common/b2Draw.cpp.o - -Common/b2Draw.i: Common/b2Draw.cpp.i -.PHONY : Common/b2Draw.i - -# target to preprocess a source file -Common/b2Draw.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Common/b2Draw.cpp.i -.PHONY : Common/b2Draw.cpp.i - -Common/b2Draw.s: Common/b2Draw.cpp.s -.PHONY : Common/b2Draw.s - -# target to generate assembly for a file -Common/b2Draw.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Common/b2Draw.cpp.s -.PHONY : Common/b2Draw.cpp.s - -Common/b2Math.o: Common/b2Math.cpp.o -.PHONY : Common/b2Math.o - -# target to build an object file -Common/b2Math.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Common/b2Math.cpp.o -.PHONY : Common/b2Math.cpp.o - -Common/b2Math.i: Common/b2Math.cpp.i -.PHONY : Common/b2Math.i - -# target to preprocess a source file -Common/b2Math.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Common/b2Math.cpp.i -.PHONY : Common/b2Math.cpp.i - -Common/b2Math.s: Common/b2Math.cpp.s -.PHONY : Common/b2Math.s - -# target to generate assembly for a file -Common/b2Math.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Common/b2Math.cpp.s -.PHONY : Common/b2Math.cpp.s - -Common/b2Settings.o: Common/b2Settings.cpp.o -.PHONY : Common/b2Settings.o - -# target to build an object file -Common/b2Settings.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Common/b2Settings.cpp.o -.PHONY : Common/b2Settings.cpp.o - -Common/b2Settings.i: Common/b2Settings.cpp.i -.PHONY : Common/b2Settings.i - -# target to preprocess a source file -Common/b2Settings.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Common/b2Settings.cpp.i -.PHONY : Common/b2Settings.cpp.i - -Common/b2Settings.s: Common/b2Settings.cpp.s -.PHONY : Common/b2Settings.s - -# target to generate assembly for a file -Common/b2Settings.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Common/b2Settings.cpp.s -.PHONY : Common/b2Settings.cpp.s - -Common/b2StackAllocator.o: Common/b2StackAllocator.cpp.o -.PHONY : Common/b2StackAllocator.o - -# target to build an object file -Common/b2StackAllocator.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Common/b2StackAllocator.cpp.o -.PHONY : Common/b2StackAllocator.cpp.o - -Common/b2StackAllocator.i: Common/b2StackAllocator.cpp.i -.PHONY : Common/b2StackAllocator.i - -# target to preprocess a source file -Common/b2StackAllocator.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Common/b2StackAllocator.cpp.i -.PHONY : Common/b2StackAllocator.cpp.i - -Common/b2StackAllocator.s: Common/b2StackAllocator.cpp.s -.PHONY : Common/b2StackAllocator.s - -# target to generate assembly for a file -Common/b2StackAllocator.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Common/b2StackAllocator.cpp.s -.PHONY : Common/b2StackAllocator.cpp.s - -Common/b2Timer.o: Common/b2Timer.cpp.o -.PHONY : Common/b2Timer.o - -# target to build an object file -Common/b2Timer.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Common/b2Timer.cpp.o -.PHONY : Common/b2Timer.cpp.o - -Common/b2Timer.i: Common/b2Timer.cpp.i -.PHONY : Common/b2Timer.i - -# target to preprocess a source file -Common/b2Timer.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Common/b2Timer.cpp.i -.PHONY : Common/b2Timer.cpp.i - -Common/b2Timer.s: Common/b2Timer.cpp.s -.PHONY : Common/b2Timer.s - -# target to generate assembly for a file -Common/b2Timer.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Common/b2Timer.cpp.s -.PHONY : Common/b2Timer.cpp.s - -Dynamics/Contacts/b2ChainAndCircleContact.o: Dynamics/Contacts/b2ChainAndCircleContact.cpp.o -.PHONY : Dynamics/Contacts/b2ChainAndCircleContact.o - -# target to build an object file -Dynamics/Contacts/b2ChainAndCircleContact.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndCircleContact.cpp.o -.PHONY : Dynamics/Contacts/b2ChainAndCircleContact.cpp.o - -Dynamics/Contacts/b2ChainAndCircleContact.i: Dynamics/Contacts/b2ChainAndCircleContact.cpp.i -.PHONY : Dynamics/Contacts/b2ChainAndCircleContact.i - -# target to preprocess a source file -Dynamics/Contacts/b2ChainAndCircleContact.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndCircleContact.cpp.i -.PHONY : Dynamics/Contacts/b2ChainAndCircleContact.cpp.i - -Dynamics/Contacts/b2ChainAndCircleContact.s: Dynamics/Contacts/b2ChainAndCircleContact.cpp.s -.PHONY : Dynamics/Contacts/b2ChainAndCircleContact.s - -# target to generate assembly for a file -Dynamics/Contacts/b2ChainAndCircleContact.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndCircleContact.cpp.s -.PHONY : Dynamics/Contacts/b2ChainAndCircleContact.cpp.s - -Dynamics/Contacts/b2ChainAndPolygonContact.o: Dynamics/Contacts/b2ChainAndPolygonContact.cpp.o -.PHONY : Dynamics/Contacts/b2ChainAndPolygonContact.o - -# target to build an object file -Dynamics/Contacts/b2ChainAndPolygonContact.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndPolygonContact.cpp.o -.PHONY : Dynamics/Contacts/b2ChainAndPolygonContact.cpp.o - -Dynamics/Contacts/b2ChainAndPolygonContact.i: Dynamics/Contacts/b2ChainAndPolygonContact.cpp.i -.PHONY : Dynamics/Contacts/b2ChainAndPolygonContact.i - -# target to preprocess a source file -Dynamics/Contacts/b2ChainAndPolygonContact.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndPolygonContact.cpp.i -.PHONY : Dynamics/Contacts/b2ChainAndPolygonContact.cpp.i - -Dynamics/Contacts/b2ChainAndPolygonContact.s: Dynamics/Contacts/b2ChainAndPolygonContact.cpp.s -.PHONY : Dynamics/Contacts/b2ChainAndPolygonContact.s - -# target to generate assembly for a file -Dynamics/Contacts/b2ChainAndPolygonContact.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ChainAndPolygonContact.cpp.s -.PHONY : Dynamics/Contacts/b2ChainAndPolygonContact.cpp.s - -Dynamics/Contacts/b2CircleContact.o: Dynamics/Contacts/b2CircleContact.cpp.o -.PHONY : Dynamics/Contacts/b2CircleContact.o - -# target to build an object file -Dynamics/Contacts/b2CircleContact.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.o -.PHONY : Dynamics/Contacts/b2CircleContact.cpp.o - -Dynamics/Contacts/b2CircleContact.i: Dynamics/Contacts/b2CircleContact.cpp.i -.PHONY : Dynamics/Contacts/b2CircleContact.i - -# target to preprocess a source file -Dynamics/Contacts/b2CircleContact.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.i -.PHONY : Dynamics/Contacts/b2CircleContact.cpp.i - -Dynamics/Contacts/b2CircleContact.s: Dynamics/Contacts/b2CircleContact.cpp.s -.PHONY : Dynamics/Contacts/b2CircleContact.s - -# target to generate assembly for a file -Dynamics/Contacts/b2CircleContact.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2CircleContact.cpp.s -.PHONY : Dynamics/Contacts/b2CircleContact.cpp.s - -Dynamics/Contacts/b2Contact.o: Dynamics/Contacts/b2Contact.cpp.o -.PHONY : Dynamics/Contacts/b2Contact.o - -# target to build an object file -Dynamics/Contacts/b2Contact.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.o -.PHONY : Dynamics/Contacts/b2Contact.cpp.o - -Dynamics/Contacts/b2Contact.i: Dynamics/Contacts/b2Contact.cpp.i -.PHONY : Dynamics/Contacts/b2Contact.i - -# target to preprocess a source file -Dynamics/Contacts/b2Contact.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.i -.PHONY : Dynamics/Contacts/b2Contact.cpp.i - -Dynamics/Contacts/b2Contact.s: Dynamics/Contacts/b2Contact.cpp.s -.PHONY : Dynamics/Contacts/b2Contact.s - -# target to generate assembly for a file -Dynamics/Contacts/b2Contact.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2Contact.cpp.s -.PHONY : Dynamics/Contacts/b2Contact.cpp.s - -Dynamics/Contacts/b2ContactSolver.o: Dynamics/Contacts/b2ContactSolver.cpp.o -.PHONY : Dynamics/Contacts/b2ContactSolver.o - -# target to build an object file -Dynamics/Contacts/b2ContactSolver.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.o -.PHONY : Dynamics/Contacts/b2ContactSolver.cpp.o - -Dynamics/Contacts/b2ContactSolver.i: Dynamics/Contacts/b2ContactSolver.cpp.i -.PHONY : Dynamics/Contacts/b2ContactSolver.i - -# target to preprocess a source file -Dynamics/Contacts/b2ContactSolver.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.i -.PHONY : Dynamics/Contacts/b2ContactSolver.cpp.i - -Dynamics/Contacts/b2ContactSolver.s: Dynamics/Contacts/b2ContactSolver.cpp.s -.PHONY : Dynamics/Contacts/b2ContactSolver.s - -# target to generate assembly for a file -Dynamics/Contacts/b2ContactSolver.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2ContactSolver.cpp.s -.PHONY : Dynamics/Contacts/b2ContactSolver.cpp.s - -Dynamics/Contacts/b2EdgeAndCircleContact.o: Dynamics/Contacts/b2EdgeAndCircleContact.cpp.o -.PHONY : Dynamics/Contacts/b2EdgeAndCircleContact.o - -# target to build an object file -Dynamics/Contacts/b2EdgeAndCircleContact.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndCircleContact.cpp.o -.PHONY : Dynamics/Contacts/b2EdgeAndCircleContact.cpp.o - -Dynamics/Contacts/b2EdgeAndCircleContact.i: Dynamics/Contacts/b2EdgeAndCircleContact.cpp.i -.PHONY : Dynamics/Contacts/b2EdgeAndCircleContact.i - -# target to preprocess a source file -Dynamics/Contacts/b2EdgeAndCircleContact.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndCircleContact.cpp.i -.PHONY : Dynamics/Contacts/b2EdgeAndCircleContact.cpp.i - -Dynamics/Contacts/b2EdgeAndCircleContact.s: Dynamics/Contacts/b2EdgeAndCircleContact.cpp.s -.PHONY : Dynamics/Contacts/b2EdgeAndCircleContact.s - -# target to generate assembly for a file -Dynamics/Contacts/b2EdgeAndCircleContact.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndCircleContact.cpp.s -.PHONY : Dynamics/Contacts/b2EdgeAndCircleContact.cpp.s - -Dynamics/Contacts/b2EdgeAndPolygonContact.o: Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.o -.PHONY : Dynamics/Contacts/b2EdgeAndPolygonContact.o - -# target to build an object file -Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.o -.PHONY : Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.o - -Dynamics/Contacts/b2EdgeAndPolygonContact.i: Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.i -.PHONY : Dynamics/Contacts/b2EdgeAndPolygonContact.i - -# target to preprocess a source file -Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.i -.PHONY : Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.i - -Dynamics/Contacts/b2EdgeAndPolygonContact.s: Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.s -.PHONY : Dynamics/Contacts/b2EdgeAndPolygonContact.s - -# target to generate assembly for a file -Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.s -.PHONY : Dynamics/Contacts/b2EdgeAndPolygonContact.cpp.s - -Dynamics/Contacts/b2PolygonAndCircleContact.o: Dynamics/Contacts/b2PolygonAndCircleContact.cpp.o -.PHONY : Dynamics/Contacts/b2PolygonAndCircleContact.o - -# target to build an object file -Dynamics/Contacts/b2PolygonAndCircleContact.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonAndCircleContact.cpp.o -.PHONY : Dynamics/Contacts/b2PolygonAndCircleContact.cpp.o - -Dynamics/Contacts/b2PolygonAndCircleContact.i: Dynamics/Contacts/b2PolygonAndCircleContact.cpp.i -.PHONY : Dynamics/Contacts/b2PolygonAndCircleContact.i - -# target to preprocess a source file -Dynamics/Contacts/b2PolygonAndCircleContact.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonAndCircleContact.cpp.i -.PHONY : Dynamics/Contacts/b2PolygonAndCircleContact.cpp.i - -Dynamics/Contacts/b2PolygonAndCircleContact.s: Dynamics/Contacts/b2PolygonAndCircleContact.cpp.s -.PHONY : Dynamics/Contacts/b2PolygonAndCircleContact.s - -# target to generate assembly for a file -Dynamics/Contacts/b2PolygonAndCircleContact.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonAndCircleContact.cpp.s -.PHONY : Dynamics/Contacts/b2PolygonAndCircleContact.cpp.s - -Dynamics/Contacts/b2PolygonContact.o: Dynamics/Contacts/b2PolygonContact.cpp.o -.PHONY : Dynamics/Contacts/b2PolygonContact.o - -# target to build an object file -Dynamics/Contacts/b2PolygonContact.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.o -.PHONY : Dynamics/Contacts/b2PolygonContact.cpp.o - -Dynamics/Contacts/b2PolygonContact.i: Dynamics/Contacts/b2PolygonContact.cpp.i -.PHONY : Dynamics/Contacts/b2PolygonContact.i - -# target to preprocess a source file -Dynamics/Contacts/b2PolygonContact.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.i -.PHONY : Dynamics/Contacts/b2PolygonContact.cpp.i - -Dynamics/Contacts/b2PolygonContact.s: Dynamics/Contacts/b2PolygonContact.cpp.s -.PHONY : Dynamics/Contacts/b2PolygonContact.s - -# target to generate assembly for a file -Dynamics/Contacts/b2PolygonContact.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Contacts/b2PolygonContact.cpp.s -.PHONY : Dynamics/Contacts/b2PolygonContact.cpp.s - -Dynamics/Joints/b2DistanceJoint.o: Dynamics/Joints/b2DistanceJoint.cpp.o -.PHONY : Dynamics/Joints/b2DistanceJoint.o - -# target to build an object file -Dynamics/Joints/b2DistanceJoint.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2DistanceJoint.cpp.o -.PHONY : Dynamics/Joints/b2DistanceJoint.cpp.o - -Dynamics/Joints/b2DistanceJoint.i: Dynamics/Joints/b2DistanceJoint.cpp.i -.PHONY : Dynamics/Joints/b2DistanceJoint.i - -# target to preprocess a source file -Dynamics/Joints/b2DistanceJoint.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2DistanceJoint.cpp.i -.PHONY : Dynamics/Joints/b2DistanceJoint.cpp.i - -Dynamics/Joints/b2DistanceJoint.s: Dynamics/Joints/b2DistanceJoint.cpp.s -.PHONY : Dynamics/Joints/b2DistanceJoint.s - -# target to generate assembly for a file -Dynamics/Joints/b2DistanceJoint.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2DistanceJoint.cpp.s -.PHONY : Dynamics/Joints/b2DistanceJoint.cpp.s - -Dynamics/Joints/b2FrictionJoint.o: Dynamics/Joints/b2FrictionJoint.cpp.o -.PHONY : Dynamics/Joints/b2FrictionJoint.o - -# target to build an object file -Dynamics/Joints/b2FrictionJoint.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2FrictionJoint.cpp.o -.PHONY : Dynamics/Joints/b2FrictionJoint.cpp.o - -Dynamics/Joints/b2FrictionJoint.i: Dynamics/Joints/b2FrictionJoint.cpp.i -.PHONY : Dynamics/Joints/b2FrictionJoint.i - -# target to preprocess a source file -Dynamics/Joints/b2FrictionJoint.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2FrictionJoint.cpp.i -.PHONY : Dynamics/Joints/b2FrictionJoint.cpp.i - -Dynamics/Joints/b2FrictionJoint.s: Dynamics/Joints/b2FrictionJoint.cpp.s -.PHONY : Dynamics/Joints/b2FrictionJoint.s - -# target to generate assembly for a file -Dynamics/Joints/b2FrictionJoint.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2FrictionJoint.cpp.s -.PHONY : Dynamics/Joints/b2FrictionJoint.cpp.s - -Dynamics/Joints/b2GearJoint.o: Dynamics/Joints/b2GearJoint.cpp.o -.PHONY : Dynamics/Joints/b2GearJoint.o - -# target to build an object file -Dynamics/Joints/b2GearJoint.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2GearJoint.cpp.o -.PHONY : Dynamics/Joints/b2GearJoint.cpp.o - -Dynamics/Joints/b2GearJoint.i: Dynamics/Joints/b2GearJoint.cpp.i -.PHONY : Dynamics/Joints/b2GearJoint.i - -# target to preprocess a source file -Dynamics/Joints/b2GearJoint.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2GearJoint.cpp.i -.PHONY : Dynamics/Joints/b2GearJoint.cpp.i - -Dynamics/Joints/b2GearJoint.s: Dynamics/Joints/b2GearJoint.cpp.s -.PHONY : Dynamics/Joints/b2GearJoint.s - -# target to generate assembly for a file -Dynamics/Joints/b2GearJoint.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2GearJoint.cpp.s -.PHONY : Dynamics/Joints/b2GearJoint.cpp.s - -Dynamics/Joints/b2Joint.o: Dynamics/Joints/b2Joint.cpp.o -.PHONY : Dynamics/Joints/b2Joint.o - -# target to build an object file -Dynamics/Joints/b2Joint.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.o -.PHONY : Dynamics/Joints/b2Joint.cpp.o - -Dynamics/Joints/b2Joint.i: Dynamics/Joints/b2Joint.cpp.i -.PHONY : Dynamics/Joints/b2Joint.i - -# target to preprocess a source file -Dynamics/Joints/b2Joint.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.i -.PHONY : Dynamics/Joints/b2Joint.cpp.i - -Dynamics/Joints/b2Joint.s: Dynamics/Joints/b2Joint.cpp.s -.PHONY : Dynamics/Joints/b2Joint.s - -# target to generate assembly for a file -Dynamics/Joints/b2Joint.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2Joint.cpp.s -.PHONY : Dynamics/Joints/b2Joint.cpp.s - -Dynamics/Joints/b2MotorJoint.o: Dynamics/Joints/b2MotorJoint.cpp.o -.PHONY : Dynamics/Joints/b2MotorJoint.o - -# target to build an object file -Dynamics/Joints/b2MotorJoint.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MotorJoint.cpp.o -.PHONY : Dynamics/Joints/b2MotorJoint.cpp.o - -Dynamics/Joints/b2MotorJoint.i: Dynamics/Joints/b2MotorJoint.cpp.i -.PHONY : Dynamics/Joints/b2MotorJoint.i - -# target to preprocess a source file -Dynamics/Joints/b2MotorJoint.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MotorJoint.cpp.i -.PHONY : Dynamics/Joints/b2MotorJoint.cpp.i - -Dynamics/Joints/b2MotorJoint.s: Dynamics/Joints/b2MotorJoint.cpp.s -.PHONY : Dynamics/Joints/b2MotorJoint.s - -# target to generate assembly for a file -Dynamics/Joints/b2MotorJoint.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MotorJoint.cpp.s -.PHONY : Dynamics/Joints/b2MotorJoint.cpp.s - -Dynamics/Joints/b2MouseJoint.o: Dynamics/Joints/b2MouseJoint.cpp.o -.PHONY : Dynamics/Joints/b2MouseJoint.o - -# target to build an object file -Dynamics/Joints/b2MouseJoint.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MouseJoint.cpp.o -.PHONY : Dynamics/Joints/b2MouseJoint.cpp.o - -Dynamics/Joints/b2MouseJoint.i: Dynamics/Joints/b2MouseJoint.cpp.i -.PHONY : Dynamics/Joints/b2MouseJoint.i - -# target to preprocess a source file -Dynamics/Joints/b2MouseJoint.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MouseJoint.cpp.i -.PHONY : Dynamics/Joints/b2MouseJoint.cpp.i - -Dynamics/Joints/b2MouseJoint.s: Dynamics/Joints/b2MouseJoint.cpp.s -.PHONY : Dynamics/Joints/b2MouseJoint.s - -# target to generate assembly for a file -Dynamics/Joints/b2MouseJoint.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2MouseJoint.cpp.s -.PHONY : Dynamics/Joints/b2MouseJoint.cpp.s - -Dynamics/Joints/b2PrismaticJoint.o: Dynamics/Joints/b2PrismaticJoint.cpp.o -.PHONY : Dynamics/Joints/b2PrismaticJoint.o - -# target to build an object file -Dynamics/Joints/b2PrismaticJoint.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PrismaticJoint.cpp.o -.PHONY : Dynamics/Joints/b2PrismaticJoint.cpp.o - -Dynamics/Joints/b2PrismaticJoint.i: Dynamics/Joints/b2PrismaticJoint.cpp.i -.PHONY : Dynamics/Joints/b2PrismaticJoint.i - -# target to preprocess a source file -Dynamics/Joints/b2PrismaticJoint.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PrismaticJoint.cpp.i -.PHONY : Dynamics/Joints/b2PrismaticJoint.cpp.i - -Dynamics/Joints/b2PrismaticJoint.s: Dynamics/Joints/b2PrismaticJoint.cpp.s -.PHONY : Dynamics/Joints/b2PrismaticJoint.s - -# target to generate assembly for a file -Dynamics/Joints/b2PrismaticJoint.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PrismaticJoint.cpp.s -.PHONY : Dynamics/Joints/b2PrismaticJoint.cpp.s - -Dynamics/Joints/b2PulleyJoint.o: Dynamics/Joints/b2PulleyJoint.cpp.o -.PHONY : Dynamics/Joints/b2PulleyJoint.o - -# target to build an object file -Dynamics/Joints/b2PulleyJoint.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PulleyJoint.cpp.o -.PHONY : Dynamics/Joints/b2PulleyJoint.cpp.o - -Dynamics/Joints/b2PulleyJoint.i: Dynamics/Joints/b2PulleyJoint.cpp.i -.PHONY : Dynamics/Joints/b2PulleyJoint.i - -# target to preprocess a source file -Dynamics/Joints/b2PulleyJoint.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PulleyJoint.cpp.i -.PHONY : Dynamics/Joints/b2PulleyJoint.cpp.i - -Dynamics/Joints/b2PulleyJoint.s: Dynamics/Joints/b2PulleyJoint.cpp.s -.PHONY : Dynamics/Joints/b2PulleyJoint.s - -# target to generate assembly for a file -Dynamics/Joints/b2PulleyJoint.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2PulleyJoint.cpp.s -.PHONY : Dynamics/Joints/b2PulleyJoint.cpp.s - -Dynamics/Joints/b2RevoluteJoint.o: Dynamics/Joints/b2RevoluteJoint.cpp.o -.PHONY : Dynamics/Joints/b2RevoluteJoint.o - -# target to build an object file -Dynamics/Joints/b2RevoluteJoint.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RevoluteJoint.cpp.o -.PHONY : Dynamics/Joints/b2RevoluteJoint.cpp.o - -Dynamics/Joints/b2RevoluteJoint.i: Dynamics/Joints/b2RevoluteJoint.cpp.i -.PHONY : Dynamics/Joints/b2RevoluteJoint.i - -# target to preprocess a source file -Dynamics/Joints/b2RevoluteJoint.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RevoluteJoint.cpp.i -.PHONY : Dynamics/Joints/b2RevoluteJoint.cpp.i - -Dynamics/Joints/b2RevoluteJoint.s: Dynamics/Joints/b2RevoluteJoint.cpp.s -.PHONY : Dynamics/Joints/b2RevoluteJoint.s - -# target to generate assembly for a file -Dynamics/Joints/b2RevoluteJoint.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RevoluteJoint.cpp.s -.PHONY : Dynamics/Joints/b2RevoluteJoint.cpp.s - -Dynamics/Joints/b2RopeJoint.o: Dynamics/Joints/b2RopeJoint.cpp.o -.PHONY : Dynamics/Joints/b2RopeJoint.o - -# target to build an object file -Dynamics/Joints/b2RopeJoint.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RopeJoint.cpp.o -.PHONY : Dynamics/Joints/b2RopeJoint.cpp.o - -Dynamics/Joints/b2RopeJoint.i: Dynamics/Joints/b2RopeJoint.cpp.i -.PHONY : Dynamics/Joints/b2RopeJoint.i - -# target to preprocess a source file -Dynamics/Joints/b2RopeJoint.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RopeJoint.cpp.i -.PHONY : Dynamics/Joints/b2RopeJoint.cpp.i - -Dynamics/Joints/b2RopeJoint.s: Dynamics/Joints/b2RopeJoint.cpp.s -.PHONY : Dynamics/Joints/b2RopeJoint.s - -# target to generate assembly for a file -Dynamics/Joints/b2RopeJoint.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2RopeJoint.cpp.s -.PHONY : Dynamics/Joints/b2RopeJoint.cpp.s - -Dynamics/Joints/b2WeldJoint.o: Dynamics/Joints/b2WeldJoint.cpp.o -.PHONY : Dynamics/Joints/b2WeldJoint.o - -# target to build an object file -Dynamics/Joints/b2WeldJoint.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WeldJoint.cpp.o -.PHONY : Dynamics/Joints/b2WeldJoint.cpp.o - -Dynamics/Joints/b2WeldJoint.i: Dynamics/Joints/b2WeldJoint.cpp.i -.PHONY : Dynamics/Joints/b2WeldJoint.i - -# target to preprocess a source file -Dynamics/Joints/b2WeldJoint.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WeldJoint.cpp.i -.PHONY : Dynamics/Joints/b2WeldJoint.cpp.i - -Dynamics/Joints/b2WeldJoint.s: Dynamics/Joints/b2WeldJoint.cpp.s -.PHONY : Dynamics/Joints/b2WeldJoint.s - -# target to generate assembly for a file -Dynamics/Joints/b2WeldJoint.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WeldJoint.cpp.s -.PHONY : Dynamics/Joints/b2WeldJoint.cpp.s - -Dynamics/Joints/b2WheelJoint.o: Dynamics/Joints/b2WheelJoint.cpp.o -.PHONY : Dynamics/Joints/b2WheelJoint.o - -# target to build an object file -Dynamics/Joints/b2WheelJoint.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WheelJoint.cpp.o -.PHONY : Dynamics/Joints/b2WheelJoint.cpp.o - -Dynamics/Joints/b2WheelJoint.i: Dynamics/Joints/b2WheelJoint.cpp.i -.PHONY : Dynamics/Joints/b2WheelJoint.i - -# target to preprocess a source file -Dynamics/Joints/b2WheelJoint.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WheelJoint.cpp.i -.PHONY : Dynamics/Joints/b2WheelJoint.cpp.i - -Dynamics/Joints/b2WheelJoint.s: Dynamics/Joints/b2WheelJoint.cpp.s -.PHONY : Dynamics/Joints/b2WheelJoint.s - -# target to generate assembly for a file -Dynamics/Joints/b2WheelJoint.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/Joints/b2WheelJoint.cpp.s -.PHONY : Dynamics/Joints/b2WheelJoint.cpp.s - -Dynamics/b2Body.o: Dynamics/b2Body.cpp.o -.PHONY : Dynamics/b2Body.o - -# target to build an object file -Dynamics/b2Body.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.o -.PHONY : Dynamics/b2Body.cpp.o - -Dynamics/b2Body.i: Dynamics/b2Body.cpp.i -.PHONY : Dynamics/b2Body.i - -# target to preprocess a source file -Dynamics/b2Body.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.i -.PHONY : Dynamics/b2Body.cpp.i - -Dynamics/b2Body.s: Dynamics/b2Body.cpp.s -.PHONY : Dynamics/b2Body.s - -# target to generate assembly for a file -Dynamics/b2Body.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Body.cpp.s -.PHONY : Dynamics/b2Body.cpp.s - -Dynamics/b2ContactManager.o: Dynamics/b2ContactManager.cpp.o -.PHONY : Dynamics/b2ContactManager.o - -# target to build an object file -Dynamics/b2ContactManager.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.o -.PHONY : Dynamics/b2ContactManager.cpp.o - -Dynamics/b2ContactManager.i: Dynamics/b2ContactManager.cpp.i -.PHONY : Dynamics/b2ContactManager.i - -# target to preprocess a source file -Dynamics/b2ContactManager.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.i -.PHONY : Dynamics/b2ContactManager.cpp.i - -Dynamics/b2ContactManager.s: Dynamics/b2ContactManager.cpp.s -.PHONY : Dynamics/b2ContactManager.s - -# target to generate assembly for a file -Dynamics/b2ContactManager.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/b2ContactManager.cpp.s -.PHONY : Dynamics/b2ContactManager.cpp.s - -Dynamics/b2Fixture.o: Dynamics/b2Fixture.cpp.o -.PHONY : Dynamics/b2Fixture.o - -# target to build an object file -Dynamics/b2Fixture.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.o -.PHONY : Dynamics/b2Fixture.cpp.o - -Dynamics/b2Fixture.i: Dynamics/b2Fixture.cpp.i -.PHONY : Dynamics/b2Fixture.i - -# target to preprocess a source file -Dynamics/b2Fixture.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.i -.PHONY : Dynamics/b2Fixture.cpp.i - -Dynamics/b2Fixture.s: Dynamics/b2Fixture.cpp.s -.PHONY : Dynamics/b2Fixture.s - -# target to generate assembly for a file -Dynamics/b2Fixture.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Fixture.cpp.s -.PHONY : Dynamics/b2Fixture.cpp.s - -Dynamics/b2Island.o: Dynamics/b2Island.cpp.o -.PHONY : Dynamics/b2Island.o - -# target to build an object file -Dynamics/b2Island.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.o -.PHONY : Dynamics/b2Island.cpp.o - -Dynamics/b2Island.i: Dynamics/b2Island.cpp.i -.PHONY : Dynamics/b2Island.i - -# target to preprocess a source file -Dynamics/b2Island.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.i -.PHONY : Dynamics/b2Island.cpp.i - -Dynamics/b2Island.s: Dynamics/b2Island.cpp.s -.PHONY : Dynamics/b2Island.s - -# target to generate assembly for a file -Dynamics/b2Island.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/b2Island.cpp.s -.PHONY : Dynamics/b2Island.cpp.s - -Dynamics/b2World.o: Dynamics/b2World.cpp.o -.PHONY : Dynamics/b2World.o - -# target to build an object file -Dynamics/b2World.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.o -.PHONY : Dynamics/b2World.cpp.o - -Dynamics/b2World.i: Dynamics/b2World.cpp.i -.PHONY : Dynamics/b2World.i - -# target to preprocess a source file -Dynamics/b2World.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.i -.PHONY : Dynamics/b2World.cpp.i - -Dynamics/b2World.s: Dynamics/b2World.cpp.s -.PHONY : Dynamics/b2World.s - -# target to generate assembly for a file -Dynamics/b2World.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/b2World.cpp.s -.PHONY : Dynamics/b2World.cpp.s - -Dynamics/b2WorldCallbacks.o: Dynamics/b2WorldCallbacks.cpp.o -.PHONY : Dynamics/b2WorldCallbacks.o - -# target to build an object file -Dynamics/b2WorldCallbacks.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/b2WorldCallbacks.cpp.o -.PHONY : Dynamics/b2WorldCallbacks.cpp.o - -Dynamics/b2WorldCallbacks.i: Dynamics/b2WorldCallbacks.cpp.i -.PHONY : Dynamics/b2WorldCallbacks.i - -# target to preprocess a source file -Dynamics/b2WorldCallbacks.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/b2WorldCallbacks.cpp.i -.PHONY : Dynamics/b2WorldCallbacks.cpp.i - -Dynamics/b2WorldCallbacks.s: Dynamics/b2WorldCallbacks.cpp.s -.PHONY : Dynamics/b2WorldCallbacks.s - -# target to generate assembly for a file -Dynamics/b2WorldCallbacks.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Dynamics/b2WorldCallbacks.cpp.s -.PHONY : Dynamics/b2WorldCallbacks.cpp.s - -Rope/b2Rope.o: Rope/b2Rope.cpp.o -.PHONY : Rope/b2Rope.o - -# target to build an object file -Rope/b2Rope.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Rope/b2Rope.cpp.o -.PHONY : Rope/b2Rope.cpp.o - -Rope/b2Rope.i: Rope/b2Rope.cpp.i -.PHONY : Rope/b2Rope.i - -# target to preprocess a source file -Rope/b2Rope.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Rope/b2Rope.cpp.i -.PHONY : Rope/b2Rope.cpp.i - -Rope/b2Rope.s: Rope/b2Rope.cpp.s -.PHONY : Rope/b2Rope.s - -# target to generate assembly for a file -Rope/b2Rope.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/Rope/b2Rope.cpp.s -.PHONY : Rope/b2Rope.cpp.s - -# Help Target -help: - @echo "The following are some of the valid targets for this Makefile:" - @echo "... all (the default if no target is provided)" - @echo "... clean" - @echo "... depend" - @echo "... Box2D" - @echo "... edit_cache" - @echo "... install" - @echo "... install/local" - @echo "... install/strip" - @echo "... list_install_components" - @echo "... rebuild_cache" - @echo "... Collision/Shapes/b2ChainShape.o" - @echo "... Collision/Shapes/b2ChainShape.i" - @echo "... Collision/Shapes/b2ChainShape.s" - @echo "... Collision/Shapes/b2CircleShape.o" - @echo "... Collision/Shapes/b2CircleShape.i" - @echo "... Collision/Shapes/b2CircleShape.s" - @echo "... Collision/Shapes/b2EdgeShape.o" - @echo "... Collision/Shapes/b2EdgeShape.i" - @echo "... Collision/Shapes/b2EdgeShape.s" - @echo "... Collision/Shapes/b2PolygonShape.o" - @echo "... Collision/Shapes/b2PolygonShape.i" - @echo "... Collision/Shapes/b2PolygonShape.s" - @echo "... Collision/b2BroadPhase.o" - @echo "... Collision/b2BroadPhase.i" - @echo "... Collision/b2BroadPhase.s" - @echo "... Collision/b2CollideCircle.o" - @echo "... Collision/b2CollideCircle.i" - @echo "... Collision/b2CollideCircle.s" - @echo "... Collision/b2CollideEdge.o" - @echo "... Collision/b2CollideEdge.i" - @echo "... Collision/b2CollideEdge.s" - @echo "... Collision/b2CollidePolygon.o" - @echo "... Collision/b2CollidePolygon.i" - @echo "... Collision/b2CollidePolygon.s" - @echo "... Collision/b2Collision.o" - @echo "... Collision/b2Collision.i" - @echo "... Collision/b2Collision.s" - @echo "... Collision/b2Distance.o" - @echo "... Collision/b2Distance.i" - @echo "... Collision/b2Distance.s" - @echo "... Collision/b2DynamicTree.o" - @echo "... Collision/b2DynamicTree.i" - @echo "... Collision/b2DynamicTree.s" - @echo "... Collision/b2TimeOfImpact.o" - @echo "... Collision/b2TimeOfImpact.i" - @echo "... Collision/b2TimeOfImpact.s" - @echo "... Common/b2BlockAllocator.o" - @echo "... Common/b2BlockAllocator.i" - @echo "... Common/b2BlockAllocator.s" - @echo "... Common/b2Draw.o" - @echo "... Common/b2Draw.i" - @echo "... Common/b2Draw.s" - @echo "... Common/b2Math.o" - @echo "... Common/b2Math.i" - @echo "... Common/b2Math.s" - @echo "... Common/b2Settings.o" - @echo "... Common/b2Settings.i" - @echo "... Common/b2Settings.s" - @echo "... Common/b2StackAllocator.o" - @echo "... Common/b2StackAllocator.i" - @echo "... Common/b2StackAllocator.s" - @echo "... Common/b2Timer.o" - @echo "... Common/b2Timer.i" - @echo "... Common/b2Timer.s" - @echo "... Dynamics/Contacts/b2ChainAndCircleContact.o" - @echo "... Dynamics/Contacts/b2ChainAndCircleContact.i" - @echo "... Dynamics/Contacts/b2ChainAndCircleContact.s" - @echo "... Dynamics/Contacts/b2ChainAndPolygonContact.o" - @echo "... Dynamics/Contacts/b2ChainAndPolygonContact.i" - @echo "... Dynamics/Contacts/b2ChainAndPolygonContact.s" - @echo "... Dynamics/Contacts/b2CircleContact.o" - @echo "... Dynamics/Contacts/b2CircleContact.i" - @echo "... Dynamics/Contacts/b2CircleContact.s" - @echo "... Dynamics/Contacts/b2Contact.o" - @echo "... Dynamics/Contacts/b2Contact.i" - @echo "... Dynamics/Contacts/b2Contact.s" - @echo "... Dynamics/Contacts/b2ContactSolver.o" - @echo "... Dynamics/Contacts/b2ContactSolver.i" - @echo "... Dynamics/Contacts/b2ContactSolver.s" - @echo "... Dynamics/Contacts/b2EdgeAndCircleContact.o" - @echo "... Dynamics/Contacts/b2EdgeAndCircleContact.i" - @echo "... Dynamics/Contacts/b2EdgeAndCircleContact.s" - @echo "... Dynamics/Contacts/b2EdgeAndPolygonContact.o" - @echo "... Dynamics/Contacts/b2EdgeAndPolygonContact.i" - @echo "... Dynamics/Contacts/b2EdgeAndPolygonContact.s" - @echo "... Dynamics/Contacts/b2PolygonAndCircleContact.o" - @echo "... Dynamics/Contacts/b2PolygonAndCircleContact.i" - @echo "... Dynamics/Contacts/b2PolygonAndCircleContact.s" - @echo "... Dynamics/Contacts/b2PolygonContact.o" - @echo "... Dynamics/Contacts/b2PolygonContact.i" - @echo "... Dynamics/Contacts/b2PolygonContact.s" - @echo "... Dynamics/Joints/b2DistanceJoint.o" - @echo "... Dynamics/Joints/b2DistanceJoint.i" - @echo "... Dynamics/Joints/b2DistanceJoint.s" - @echo "... Dynamics/Joints/b2FrictionJoint.o" - @echo "... Dynamics/Joints/b2FrictionJoint.i" - @echo "... Dynamics/Joints/b2FrictionJoint.s" - @echo "... Dynamics/Joints/b2GearJoint.o" - @echo "... Dynamics/Joints/b2GearJoint.i" - @echo "... Dynamics/Joints/b2GearJoint.s" - @echo "... Dynamics/Joints/b2Joint.o" - @echo "... Dynamics/Joints/b2Joint.i" - @echo "... Dynamics/Joints/b2Joint.s" - @echo "... Dynamics/Joints/b2MotorJoint.o" - @echo "... Dynamics/Joints/b2MotorJoint.i" - @echo "... Dynamics/Joints/b2MotorJoint.s" - @echo "... Dynamics/Joints/b2MouseJoint.o" - @echo "... Dynamics/Joints/b2MouseJoint.i" - @echo "... Dynamics/Joints/b2MouseJoint.s" - @echo "... Dynamics/Joints/b2PrismaticJoint.o" - @echo "... Dynamics/Joints/b2PrismaticJoint.i" - @echo "... Dynamics/Joints/b2PrismaticJoint.s" - @echo "... Dynamics/Joints/b2PulleyJoint.o" - @echo "... Dynamics/Joints/b2PulleyJoint.i" - @echo "... Dynamics/Joints/b2PulleyJoint.s" - @echo "... Dynamics/Joints/b2RevoluteJoint.o" - @echo "... Dynamics/Joints/b2RevoluteJoint.i" - @echo "... Dynamics/Joints/b2RevoluteJoint.s" - @echo "... Dynamics/Joints/b2RopeJoint.o" - @echo "... Dynamics/Joints/b2RopeJoint.i" - @echo "... Dynamics/Joints/b2RopeJoint.s" - @echo "... Dynamics/Joints/b2WeldJoint.o" - @echo "... Dynamics/Joints/b2WeldJoint.i" - @echo "... Dynamics/Joints/b2WeldJoint.s" - @echo "... Dynamics/Joints/b2WheelJoint.o" - @echo "... Dynamics/Joints/b2WheelJoint.i" - @echo "... Dynamics/Joints/b2WheelJoint.s" - @echo "... Dynamics/b2Body.o" - @echo "... Dynamics/b2Body.i" - @echo "... Dynamics/b2Body.s" - @echo "... Dynamics/b2ContactManager.o" - @echo "... Dynamics/b2ContactManager.i" - @echo "... Dynamics/b2ContactManager.s" - @echo "... Dynamics/b2Fixture.o" - @echo "... Dynamics/b2Fixture.i" - @echo "... Dynamics/b2Fixture.s" - @echo "... Dynamics/b2Island.o" - @echo "... Dynamics/b2Island.i" - @echo "... Dynamics/b2Island.s" - @echo "... Dynamics/b2World.o" - @echo "... Dynamics/b2World.i" - @echo "... Dynamics/b2World.s" - @echo "... Dynamics/b2WorldCallbacks.o" - @echo "... Dynamics/b2WorldCallbacks.i" - @echo "... Dynamics/b2WorldCallbacks.s" - @echo "... Rope/b2Rope.o" - @echo "... Rope/b2Rope.i" - @echo "... Rope/b2Rope.s" -.PHONY : help - - - -#============================================================================= -# Special targets to cleanup operation of make. - -# Special rule to run CMake to check the build system integrity. -# No rule that depends on this can have commands that come from listfiles -# because they might be regenerated. -cmake_check_build_system: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 -.PHONY : cmake_check_build_system - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Rope/b2Rope.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Rope/b2Rope.cpp deleted file mode 100644 index 97578b2..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Rope/b2Rope.cpp +++ /dev/null @@ -1,259 +0,0 @@ -/* -* Copyright (c) 2011 Erin Catto http://box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include -#include - -b2Rope::b2Rope() -{ - m_count = 0; - m_ps = NULL; - m_p0s = NULL; - m_vs = NULL; - m_ims = NULL; - m_Ls = NULL; - m_as = NULL; - m_gravity.SetZero(); - m_k2 = 1.0f; - m_k3 = 0.1f; -} - -b2Rope::~b2Rope() -{ - b2Free(m_ps); - b2Free(m_p0s); - b2Free(m_vs); - b2Free(m_ims); - b2Free(m_Ls); - b2Free(m_as); -} - -void b2Rope::Initialize(const b2RopeDef* def) -{ - b2Assert(def->count >= 3); - m_count = def->count; - m_ps = (b2Vec2*)b2Alloc(m_count * sizeof(b2Vec2)); - m_p0s = (b2Vec2*)b2Alloc(m_count * sizeof(b2Vec2)); - m_vs = (b2Vec2*)b2Alloc(m_count * sizeof(b2Vec2)); - m_ims = (float32*)b2Alloc(m_count * sizeof(float32)); - - for (int32 i = 0; i < m_count; ++i) - { - m_ps[i] = def->vertices[i]; - m_p0s[i] = def->vertices[i]; - m_vs[i].SetZero(); - - float32 m = def->masses[i]; - if (m > 0.0f) - { - m_ims[i] = 1.0f / m; - } - else - { - m_ims[i] = 0.0f; - } - } - - int32 count2 = m_count - 1; - int32 count3 = m_count - 2; - m_Ls = (float32*)b2Alloc(count2 * sizeof(float32)); - m_as = (float32*)b2Alloc(count3 * sizeof(float32)); - - for (int32 i = 0; i < count2; ++i) - { - b2Vec2 p1 = m_ps[i]; - b2Vec2 p2 = m_ps[i+1]; - m_Ls[i] = b2Distance(p1, p2); - } - - for (int32 i = 0; i < count3; ++i) - { - b2Vec2 p1 = m_ps[i]; - b2Vec2 p2 = m_ps[i + 1]; - b2Vec2 p3 = m_ps[i + 2]; - - b2Vec2 d1 = p2 - p1; - b2Vec2 d2 = p3 - p2; - - float32 a = b2Cross(d1, d2); - float32 b = b2Dot(d1, d2); - - m_as[i] = b2Atan2(a, b); - } - - m_gravity = def->gravity; - m_damping = def->damping; - m_k2 = def->k2; - m_k3 = def->k3; -} - -void b2Rope::Step(float32 h, int32 iterations) -{ - if (h == 0.0) - { - return; - } - - float32 d = expf(- h * m_damping); - - for (int32 i = 0; i < m_count; ++i) - { - m_p0s[i] = m_ps[i]; - if (m_ims[i] > 0.0f) - { - m_vs[i] += h * m_gravity; - } - m_vs[i] *= d; - m_ps[i] += h * m_vs[i]; - - } - - for (int32 i = 0; i < iterations; ++i) - { - SolveC2(); - SolveC3(); - SolveC2(); - } - - float32 inv_h = 1.0f / h; - for (int32 i = 0; i < m_count; ++i) - { - m_vs[i] = inv_h * (m_ps[i] - m_p0s[i]); - } -} - -void b2Rope::SolveC2() -{ - int32 count2 = m_count - 1; - - for (int32 i = 0; i < count2; ++i) - { - b2Vec2 p1 = m_ps[i]; - b2Vec2 p2 = m_ps[i + 1]; - - b2Vec2 d = p2 - p1; - float32 L = d.Normalize(); - - float32 im1 = m_ims[i]; - float32 im2 = m_ims[i + 1]; - - if (im1 + im2 == 0.0f) - { - continue; - } - - float32 s1 = im1 / (im1 + im2); - float32 s2 = im2 / (im1 + im2); - - p1 -= m_k2 * s1 * (m_Ls[i] - L) * d; - p2 += m_k2 * s2 * (m_Ls[i] - L) * d; - - m_ps[i] = p1; - m_ps[i + 1] = p2; - } -} - -void b2Rope::SetAngle(float32 angle) -{ - int32 count3 = m_count - 2; - for (int32 i = 0; i < count3; ++i) - { - m_as[i] = angle; - } -} - -void b2Rope::SolveC3() -{ - int32 count3 = m_count - 2; - - for (int32 i = 0; i < count3; ++i) - { - b2Vec2 p1 = m_ps[i]; - b2Vec2 p2 = m_ps[i + 1]; - b2Vec2 p3 = m_ps[i + 2]; - - float32 m1 = m_ims[i]; - float32 m2 = m_ims[i + 1]; - float32 m3 = m_ims[i + 2]; - - b2Vec2 d1 = p2 - p1; - b2Vec2 d2 = p3 - p2; - - float32 L1sqr = d1.LengthSquared(); - float32 L2sqr = d2.LengthSquared(); - - if (L1sqr * L2sqr == 0.0f) - { - continue; - } - - float32 a = b2Cross(d1, d2); - float32 b = b2Dot(d1, d2); - - float32 angle = b2Atan2(a, b); - - b2Vec2 Jd1 = (-1.0f / L1sqr) * d1.Skew(); - b2Vec2 Jd2 = (1.0f / L2sqr) * d2.Skew(); - - b2Vec2 J1 = -Jd1; - b2Vec2 J2 = Jd1 - Jd2; - b2Vec2 J3 = Jd2; - - float32 mass = m1 * b2Dot(J1, J1) + m2 * b2Dot(J2, J2) + m3 * b2Dot(J3, J3); - if (mass == 0.0f) - { - continue; - } - - mass = 1.0f / mass; - - float32 C = angle - m_as[i]; - - while (C > b2_pi) - { - angle -= 2 * b2_pi; - C = angle - m_as[i]; - } - - while (C < -b2_pi) - { - angle += 2.0f * b2_pi; - C = angle - m_as[i]; - } - - float32 impulse = - m_k3 * mass * C; - - p1 += (m1 * impulse) * J1; - p2 += (m2 * impulse) * J2; - p3 += (m3 * impulse) * J3; - - m_ps[i] = p1; - m_ps[i + 1] = p2; - m_ps[i + 2] = p3; - } -} - -void b2Rope::Draw(b2Draw* draw) const -{ - b2Color c(0.4f, 0.5f, 0.7f); - - for (int32 i = 0; i < m_count - 1; ++i) - { - draw->DrawSegment(m_ps[i], m_ps[i+1], c); - } -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Rope/b2Rope.h b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Rope/b2Rope.h deleted file mode 100644 index bc5375d..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Rope/b2Rope.h +++ /dev/null @@ -1,115 +0,0 @@ -/* -* Copyright (c) 2011 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_ROPE_H -#define B2_ROPE_H - -#include - -class b2Draw; - -/// -struct b2RopeDef -{ - b2RopeDef() - { - vertices = NULL; - count = 0; - masses = NULL; - gravity.SetZero(); - damping = 0.1f; - k2 = 0.9f; - k3 = 0.1f; - } - - /// - b2Vec2* vertices; - - /// - int32 count; - - /// - float32* masses; - - /// - b2Vec2 gravity; - - /// - float32 damping; - - /// Stretching stiffness - float32 k2; - - /// Bending stiffness. Values above 0.5 can make the simulation blow up. - float32 k3; -}; - -/// -class b2Rope -{ -public: - b2Rope(); - ~b2Rope(); - - /// - void Initialize(const b2RopeDef* def); - - /// - void Step(float32 timeStep, int32 iterations); - - /// - int32 GetVertexCount() const - { - return m_count; - } - - /// - const b2Vec2* GetVertices() const - { - return m_ps; - } - - /// - void Draw(b2Draw* draw) const; - - /// - void SetAngle(float32 angle); - -private: - - void SolveC2(); - void SolveC3(); - - int32 m_count; - b2Vec2* m_ps; - b2Vec2* m_p0s; - b2Vec2* m_vs; - - float32* m_ims; - - float32* m_Ls; - float32* m_as; - - b2Vec2 m_gravity; - float32 m_damping; - - float32 m_k2; - float32 m_k3; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/cmake_install.cmake b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/cmake_install.cmake deleted file mode 100644 index cd72c00..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/cmake_install.cmake +++ /dev/null @@ -1,144 +0,0 @@ -# Install script for directory: /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D - -# Set the install prefix -IF(NOT DEFINED CMAKE_INSTALL_PREFIX) - SET(CMAKE_INSTALL_PREFIX "/usr/local") -ENDIF(NOT DEFINED CMAKE_INSTALL_PREFIX) -STRING(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") - -# Set the install configuration name. -IF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) - IF(BUILD_TYPE) - STRING(REGEX REPLACE "^[^A-Za-z0-9_]+" "" - CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") - ELSE(BUILD_TYPE) - SET(CMAKE_INSTALL_CONFIG_NAME "") - ENDIF(BUILD_TYPE) - MESSAGE(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") -ENDIF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) - -# Set the component getting installed. -IF(NOT CMAKE_INSTALL_COMPONENT) - IF(COMPONENT) - MESSAGE(STATUS "Install component: \"${COMPONENT}\"") - SET(CMAKE_INSTALL_COMPONENT "${COMPONENT}") - ELSE(COMPONENT) - SET(CMAKE_INSTALL_COMPONENT) - ENDIF(COMPONENT) -ENDIF(NOT CMAKE_INSTALL_COMPONENT) - -# Install shared libraries without execute permission? -IF(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE) - SET(CMAKE_INSTALL_SO_NO_EXE "1") -ENDIF(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE) - -IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified") - FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Box2D" TYPE FILE FILES "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Box2D.h") -ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified") - -IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified") - FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Box2D/Collision" TYPE FILE FILES - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2BroadPhase.h" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2Collision.h" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2Distance.h" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2DynamicTree.h" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/b2TimeOfImpact.h" - ) -ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified") - -IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified") - FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Box2D/Collision/Shapes" TYPE FILE FILES - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2CircleShape.h" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2EdgeShape.h" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2ChainShape.h" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2PolygonShape.h" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Collision/Shapes/b2Shape.h" - ) -ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified") - -IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified") - FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Box2D/Common" TYPE FILE FILES - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2BlockAllocator.h" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Draw.h" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2GrowableStack.h" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Math.h" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Settings.h" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2StackAllocator.h" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Common/b2Timer.h" - ) -ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified") - -IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified") - FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Box2D/Dynamics" TYPE FILE FILES - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2Body.h" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2ContactManager.h" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2Fixture.h" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2Island.h" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2TimeStep.h" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2World.h" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/b2WorldCallbacks.h" - ) -ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified") - -IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified") - FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Box2D/Dynamics/Contacts" TYPE FILE FILES - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2CircleContact.h" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2Contact.h" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2ContactSolver.h" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2PolygonAndCircleContact.h" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2EdgeAndCircleContact.h" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2EdgeAndPolygonContact.h" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2ChainAndCircleContact.h" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2ChainAndPolygonContact.h" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Contacts/b2PolygonContact.h" - ) -ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified") - -IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified") - FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Box2D/Dynamics/Joints" TYPE FILE FILES - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2DistanceJoint.h" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2FrictionJoint.h" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2GearJoint.h" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2Joint.h" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2MotorJoint.h" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2MouseJoint.h" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2PrismaticJoint.h" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2PulleyJoint.h" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2RevoluteJoint.h" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2RopeJoint.h" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2WeldJoint.h" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Dynamics/Joints/b2WheelJoint.h" - ) -ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified") - -IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified") - FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/include/Box2D/Rope" TYPE FILE FILES "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Rope/b2Rope.h") -ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified") - -IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified") - FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/lib" TYPE STATIC_LIBRARY FILES "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/libBox2D.a") -ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified") - -IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified") - IF(EXISTS "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/Box2D/Box2D-targets.cmake") - FILE(DIFFERENT EXPORT_FILE_CHANGED FILES - "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/Box2D/Box2D-targets.cmake" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Export/lib/Box2D/Box2D-targets.cmake") - IF(EXPORT_FILE_CHANGED) - FILE(GLOB OLD_CONFIG_FILES "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/Box2D/Box2D-targets-*.cmake") - IF(OLD_CONFIG_FILES) - MESSAGE(STATUS "Old export file \"$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/lib/Box2D/Box2D-targets.cmake\" will be replaced. Removing files [${OLD_CONFIG_FILES}].") - FILE(REMOVE ${OLD_CONFIG_FILES}) - ENDIF(OLD_CONFIG_FILES) - ENDIF(EXPORT_FILE_CHANGED) - ENDIF() - FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/lib/Box2D" TYPE FILE FILES "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Export/lib/Box2D/Box2D-targets.cmake") - IF("${CMAKE_INSTALL_CONFIG_NAME}" MATCHES "^()$") - FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/lib/Box2D" TYPE FILE FILES "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Export/lib/Box2D/Box2D-targets-noconfig.cmake") - ENDIF("${CMAKE_INSTALL_CONFIG_NAME}" MATCHES "^()$") -ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified") - -IF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified") - FILE(INSTALL DESTINATION "${CMAKE_INSTALL_PREFIX}/lib/Box2D" TYPE FILE FILES "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/Box2DConfig.cmake") -ENDIF(NOT CMAKE_INSTALL_COMPONENT OR "${CMAKE_INSTALL_COMPONENT}" STREQUAL "Unspecified") - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/libBox2D.a b/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/libBox2D.a deleted file mode 100644 index 2162390..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/libBox2D.a and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Build/Readme.txt b/src/dependencies/Box2D_v2.3.0/Box2D/Build/Readme.txt deleted file mode 100644 index f28e90b..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Build/Readme.txt +++ /dev/null @@ -1 +0,0 @@ -You should use CMake to target this directory for build files. \ No newline at end of file diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Build/vs2012/Box2D.sln b/src/dependencies/Box2D_v2.3.0/Box2D/Build/vs2012/Box2D.sln deleted file mode 100644 index e6fd1a0..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Build/vs2012/Box2D.sln +++ /dev/null @@ -1,74 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 11.00 -# Visual Studio 2010 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Box2D", "Box2D.vcxproj", "{98400D17-43A5-1A40-95BE-C53AC78E7694}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "FreeGLUT", "FreeGLUT.vcxproj", "{BCA4569B-A486-E443-9EE2-07D4CB3CFBA8}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "GLUI", "GLUI.vcxproj", "{6F01DB00-32F0-A842-9B60-3ABA75A2D458}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "HelloWorld", "HelloWorld.vcxproj", "{259F29FB-40F1-F04D-940B-BCEA3ED16B75}" - ProjectSection(ProjectDependencies) = postProject - {98400D17-43A5-1A40-95BE-C53AC78E7694} = {98400D17-43A5-1A40-95BE-C53AC78E7694} - EndProjectSection -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Testbed", "Testbed.vcxproj", "{3FC8974C-9179-4D4E-A5E0-79E3C836548F}" - ProjectSection(ProjectDependencies) = postProject - {98400D17-43A5-1A40-95BE-C53AC78E7694} = {98400D17-43A5-1A40-95BE-C53AC78E7694} - {BCA4569B-A486-E443-9EE2-07D4CB3CFBA8} = {BCA4569B-A486-E443-9EE2-07D4CB3CFBA8} - {6F01DB00-32F0-A842-9B60-3ABA75A2D458} = {6F01DB00-32F0-A842-9B60-3ABA75A2D458} - EndProjectSection -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Win32 = Debug|Win32 - Debug|x64 = Debug|x64 - Release|Win32 = Release|Win32 - Release|x64 = Release|x64 - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {98400D17-43A5-1A40-95BE-C53AC78E7694}.Debug|Win32.ActiveCfg = Debug|Win32 - {98400D17-43A5-1A40-95BE-C53AC78E7694}.Debug|Win32.Build.0 = Debug|Win32 - {98400D17-43A5-1A40-95BE-C53AC78E7694}.Debug|x64.ActiveCfg = Debug|x64 - {98400D17-43A5-1A40-95BE-C53AC78E7694}.Debug|x64.Build.0 = Debug|x64 - {98400D17-43A5-1A40-95BE-C53AC78E7694}.Release|Win32.ActiveCfg = Release|Win32 - {98400D17-43A5-1A40-95BE-C53AC78E7694}.Release|Win32.Build.0 = Release|Win32 - {98400D17-43A5-1A40-95BE-C53AC78E7694}.Release|x64.ActiveCfg = Release|x64 - {98400D17-43A5-1A40-95BE-C53AC78E7694}.Release|x64.Build.0 = Release|x64 - {BCA4569B-A486-E443-9EE2-07D4CB3CFBA8}.Debug|Win32.ActiveCfg = Debug|Win32 - {BCA4569B-A486-E443-9EE2-07D4CB3CFBA8}.Debug|Win32.Build.0 = Debug|Win32 - {BCA4569B-A486-E443-9EE2-07D4CB3CFBA8}.Debug|x64.ActiveCfg = Debug|x64 - {BCA4569B-A486-E443-9EE2-07D4CB3CFBA8}.Debug|x64.Build.0 = Debug|x64 - {BCA4569B-A486-E443-9EE2-07D4CB3CFBA8}.Release|Win32.ActiveCfg = Release|Win32 - {BCA4569B-A486-E443-9EE2-07D4CB3CFBA8}.Release|Win32.Build.0 = Release|Win32 - {BCA4569B-A486-E443-9EE2-07D4CB3CFBA8}.Release|x64.ActiveCfg = Release|x64 - {BCA4569B-A486-E443-9EE2-07D4CB3CFBA8}.Release|x64.Build.0 = Release|x64 - {6F01DB00-32F0-A842-9B60-3ABA75A2D458}.Debug|Win32.ActiveCfg = Debug|Win32 - {6F01DB00-32F0-A842-9B60-3ABA75A2D458}.Debug|Win32.Build.0 = Debug|Win32 - {6F01DB00-32F0-A842-9B60-3ABA75A2D458}.Debug|x64.ActiveCfg = Debug|x64 - {6F01DB00-32F0-A842-9B60-3ABA75A2D458}.Debug|x64.Build.0 = Debug|x64 - {6F01DB00-32F0-A842-9B60-3ABA75A2D458}.Release|Win32.ActiveCfg = Release|Win32 - {6F01DB00-32F0-A842-9B60-3ABA75A2D458}.Release|Win32.Build.0 = Release|Win32 - {6F01DB00-32F0-A842-9B60-3ABA75A2D458}.Release|x64.ActiveCfg = Release|x64 - {6F01DB00-32F0-A842-9B60-3ABA75A2D458}.Release|x64.Build.0 = Release|x64 - {259F29FB-40F1-F04D-940B-BCEA3ED16B75}.Debug|Win32.ActiveCfg = Debug|Win32 - {259F29FB-40F1-F04D-940B-BCEA3ED16B75}.Debug|Win32.Build.0 = Debug|Win32 - {259F29FB-40F1-F04D-940B-BCEA3ED16B75}.Debug|x64.ActiveCfg = Debug|x64 - {259F29FB-40F1-F04D-940B-BCEA3ED16B75}.Debug|x64.Build.0 = Debug|x64 - {259F29FB-40F1-F04D-940B-BCEA3ED16B75}.Release|Win32.ActiveCfg = Release|Win32 - {259F29FB-40F1-F04D-940B-BCEA3ED16B75}.Release|Win32.Build.0 = Release|Win32 - {259F29FB-40F1-F04D-940B-BCEA3ED16B75}.Release|x64.ActiveCfg = Release|x64 - {259F29FB-40F1-F04D-940B-BCEA3ED16B75}.Release|x64.Build.0 = Release|x64 - {3FC8974C-9179-4D4E-A5E0-79E3C836548F}.Debug|Win32.ActiveCfg = Debug|Win32 - {3FC8974C-9179-4D4E-A5E0-79E3C836548F}.Debug|Win32.Build.0 = Debug|Win32 - {3FC8974C-9179-4D4E-A5E0-79E3C836548F}.Debug|x64.ActiveCfg = Debug|x64 - {3FC8974C-9179-4D4E-A5E0-79E3C836548F}.Debug|x64.Build.0 = Debug|x64 - {3FC8974C-9179-4D4E-A5E0-79E3C836548F}.Release|Win32.ActiveCfg = Release|Win32 - {3FC8974C-9179-4D4E-A5E0-79E3C836548F}.Release|Win32.Build.0 = Release|Win32 - {3FC8974C-9179-4D4E-A5E0-79E3C836548F}.Release|x64.ActiveCfg = Release|x64 - {3FC8974C-9179-4D4E-A5E0-79E3C836548F}.Release|x64.Build.0 = Release|x64 - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection -EndGlobal diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Build/vs2012/Box2D.vcxproj b/src/dependencies/Box2D_v2.3.0/Box2D/Build/vs2012/Box2D.vcxproj deleted file mode 100644 index 3732c1a..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Build/vs2012/Box2D.vcxproj +++ /dev/null @@ -1,343 +0,0 @@ - - - - - Debug - Win32 - - - Debug - x64 - - - Release - Win32 - - - Release - x64 - - - - {98400D17-43A5-1A40-95BE-C53AC78E7694} - Box2D - Win32Proj - - - - StaticLibrary - MultiByte - true - v110 - - - StaticLibrary - MultiByte - true - v110 - - - StaticLibrary - MultiByte - false - v110 - - - StaticLibrary - MultiByte - false - v110 - - - - - - - - - - - - - - - - - - - <_ProjectFileVersion>10.0.30319.1 - bin\Debug\ - obj\x32\Debug\Box2D\ - Box2D - bin\Debug\ - obj\x64\Debug\Box2D\ - Box2D - bin\Release\ - obj\x32\Release\Box2D\ - Box2D - bin\Release\ - obj\x64\Release\Box2D\ - Box2D - - - - Disabled - ..\..;%(AdditionalIncludeDirectories) - _CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) - true - EnableFastChecks - MultiThreadedDebugDLL - true - - - Level4 - EditAndContinue - $(OutDir)Box2D.pdb - true - - - WIN32;_CRT_SECURE_NO_WARNINGS;_DEBUG;%(PreprocessorDefinitions) - ..\..;%(AdditionalIncludeDirectories) - - - $(OutDir)Box2D.lib - MachineX86 - - - Windows - true - - - - - Disabled - ..\..;%(AdditionalIncludeDirectories) - _CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) - true - EnableFastChecks - MultiThreadedDebugDLL - true - - - Level3 - ProgramDatabase - $(OutDir)Box2D.pdb - - - WIN32;_CRT_SECURE_NO_WARNINGS;_DEBUG;%(PreprocessorDefinitions) - ..\..;%(AdditionalIncludeDirectories) - - - $(OutDir)Box2D.lib - MachineX64 - - - Windows - true - - - - - Full - ..\..;%(AdditionalIncludeDirectories) - _CRT_SECURE_NO_WARNINGS;NDEBUG;%(PreprocessorDefinitions) - false - true - MultiThreadedDLL - true - - - Level3 - - - - - WIN32;_CRT_SECURE_NO_WARNINGS;NDEBUG;%(PreprocessorDefinitions) - ..\..;%(AdditionalIncludeDirectories) - - - $(OutDir)Box2D.lib - MachineX86 - - - Windows - false - true - true - - - - - Full - ..\..;%(AdditionalIncludeDirectories) - _CRT_SECURE_NO_WARNINGS;NDEBUG;%(PreprocessorDefinitions) - false - true - MultiThreadedDLL - true - - - Level3 - ProgramDatabase - false - Fast - false - - - WIN32;_CRT_SECURE_NO_WARNINGS;NDEBUG;%(PreprocessorDefinitions) - ..\..;%(AdditionalIncludeDirectories) - - - $(OutDir)Box2D.lib - MachineX64 - - - Windows - false - true - true - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Build/vs2012/Box2D.vcxproj.filters b/src/dependencies/Box2D_v2.3.0/Box2D/Build/vs2012/Box2D.vcxproj.filters deleted file mode 100644 index 500c247..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Build/vs2012/Box2D.vcxproj.filters +++ /dev/null @@ -1,298 +0,0 @@ - - - - - {EE06093C-52B3-9A42-A586-8CCC65597D57} - - - {4A368771-7ADC-A143-B42F-58CB8448EA17} - - - {17132958-D902-9D46-A032-A2DD9E3FAED5} - - - {C815CFE9-147A-D443-8BB0-31FC775E62F4} - - - {BE9A720A-8AF8-9C4C-A4FE-3F2BACAF8A59} - - - {CFBD1F37-CEEA-CA41-9715-5C0ACDD84298} - - - - - - Collision - - - Collision - - - Collision - - - Collision - - - Collision - - - Collision\Shapes - - - Collision\Shapes - - - Collision\Shapes - - - Collision\Shapes - - - Collision\Shapes - - - Common - - - Common - - - Common - - - Common - - - Common - - - Common - - - Common - - - Dynamics - - - Dynamics - - - Dynamics - - - Dynamics - - - Dynamics - - - Dynamics - - - Dynamics - - - Dynamics\Contacts - - - Dynamics\Contacts - - - Dynamics\Contacts - - - Dynamics\Contacts - - - Dynamics\Contacts - - - Dynamics\Contacts - - - Dynamics\Contacts - - - Dynamics\Contacts - - - Dynamics\Contacts - - - Dynamics\Joints - - - Dynamics\Joints - - - Dynamics\Joints - - - Dynamics\Joints - - - Dynamics\Joints - - - Dynamics\Joints - - - Dynamics\Joints - - - Dynamics\Joints - - - Dynamics\Joints - - - Dynamics\Joints - - - Dynamics\Joints - - - Dynamics\Joints - - - - - Collision - - - Collision - - - Collision - - - Collision - - - Collision - - - Collision - - - Collision - - - Collision - - - Collision\Shapes - - - Collision\Shapes - - - Collision\Shapes - - - Collision\Shapes - - - Common - - - Common - - - Common - - - Common - - - Common - - - Common - - - Dynamics - - - Dynamics - - - Dynamics - - - Dynamics - - - Dynamics - - - Dynamics - - - Dynamics\Contacts - - - Dynamics\Contacts - - - Dynamics\Contacts - - - Dynamics\Contacts - - - Dynamics\Contacts - - - Dynamics\Contacts - - - Dynamics\Contacts - - - Dynamics\Contacts - - - Dynamics\Contacts - - - Dynamics\Joints - - - Dynamics\Joints - - - Dynamics\Joints - - - Dynamics\Joints - - - Dynamics\Joints - - - Dynamics\Joints - - - Dynamics\Joints - - - Dynamics\Joints - - - Dynamics\Joints - - - Dynamics\Joints - - - Dynamics\Joints - - - Dynamics\Joints - - - \ No newline at end of file diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Build/vs2012/FreeGLUT.vcxproj b/src/dependencies/Box2D_v2.3.0/Box2D/Build/vs2012/FreeGLUT.vcxproj deleted file mode 100644 index c59f202..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Build/vs2012/FreeGLUT.vcxproj +++ /dev/null @@ -1,254 +0,0 @@ - - - - - Debug - Win32 - - - Debug - x64 - - - Release - Win32 - - - Release - x64 - - - - {BCA4569B-A486-E443-9EE2-07D4CB3CFBA8} - FreeGLUT - Win32Proj - - - - StaticLibrary - MultiByte - true - v110 - - - StaticLibrary - MultiByte - true - v110 - - - StaticLibrary - MultiByte - false - v110 - - - StaticLibrary - MultiByte - false - v110 - - - - - - - - - - - - - - - - - - - <_ProjectFileVersion>10.0.30319.1 - bin\Debug\ - obj\x32\Debug\FreeGLUT\ - FreeGLUT - bin\Debug\ - obj\x64\Debug\FreeGLUT\ - FreeGLUT - bin\Release\ - obj\x32\Release\FreeGLUT\ - FreeGLUT - bin\Release\ - obj\x64\Release\FreeGLUT\ - FreeGLUT - - - - Disabled - _CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) - true - EnableFastChecks - MultiThreadedDebugDLL - true - - - Level3 - EditAndContinue - $(OutDir)FreeGLUT.pdb - CompileAsC - - - WIN32;_CRT_SECURE_NO_WARNINGS;_DEBUG;%(PreprocessorDefinitions) - - - $(OutDir)FreeGLUT.lib - MachineX86 - - - Windows - true - - - - - Disabled - _CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) - true - EnableFastChecks - MultiThreadedDebugDLL - true - - - Level3 - ProgramDatabase - $(OutDir)FreeGLUT.pdb - CompileAsC - - - WIN32;_CRT_SECURE_NO_WARNINGS;_DEBUG;%(PreprocessorDefinitions) - - - $(OutDir)FreeGLUT.lib - MachineX64 - - - Windows - true - - - - - Full - _CRT_SECURE_NO_WARNINGS;NDEBUG;%(PreprocessorDefinitions) - false - true - MultiThreadedDLL - true - - - Level3 - - - CompileAsC - - - WIN32;_CRT_SECURE_NO_WARNINGS;NDEBUG;%(PreprocessorDefinitions) - - - $(OutDir)FreeGLUT.lib - MachineX86 - - - Windows - false - true - true - - - - - Full - _CRT_SECURE_NO_WARNINGS;NDEBUG;%(PreprocessorDefinitions) - false - true - MultiThreadedDLL - true - - - Level3 - - - CompileAsC - - - WIN32;_CRT_SECURE_NO_WARNINGS;NDEBUG;%(PreprocessorDefinitions) - - - $(OutDir)FreeGLUT.lib - MachineX64 - - - Windows - false - true - true - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Build/vs2012/FreeGLUT.vcxproj.filters b/src/dependencies/Box2D_v2.3.0/Box2D/Build/vs2012/FreeGLUT.vcxproj.filters deleted file mode 100644 index d4cd78c..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Build/vs2012/FreeGLUT.vcxproj.filters +++ /dev/null @@ -1,102 +0,0 @@ - - - - - {CF400ACD-5E78-A54C-B6AC-3BF8A203852D} - - - {28BB812D-7BF4-C741-8D3C-0C93BDD09371} - - - - - Headers - - - Headers - - - Headers - - - Headers - - - Headers - - - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Build/vs2012/GLUI.vcxproj b/src/dependencies/Box2D_v2.3.0/Box2D/Build/vs2012/GLUI.vcxproj deleted file mode 100644 index 823a90d..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Build/vs2012/GLUI.vcxproj +++ /dev/null @@ -1,279 +0,0 @@ - - - - - Debug - Win32 - - - Debug - x64 - - - Release - Win32 - - - Release - x64 - - - - {6F01DB00-32F0-A842-9B60-3ABA75A2D458} - GLUI - Win32Proj - - - - StaticLibrary - MultiByte - true - v110 - - - StaticLibrary - MultiByte - true - v110 - - - StaticLibrary - MultiByte - false - v110 - - - StaticLibrary - MultiByte - false - v110 - - - - - - - - - - - - - - - - - - - <_ProjectFileVersion>10.0.30319.1 - bin\Debug\ - obj\x32\Debug\GLUI\ - GLUI - bin\Debug\ - obj\x64\Debug\GLUI\ - GLUI - bin\Release\ - obj\x32\Release\GLUI\ - GLUI - bin\Release\ - obj\x64\Release\GLUI\ - GLUI - - - - /W1 %(AdditionalOptions) - Disabled - ..\..;%(AdditionalIncludeDirectories) - _CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) - true - EnableFastChecks - MultiThreadedDebugDLL - true - - - Level3 - EditAndContinue - $(OutDir)GLUI.pdb - - - WIN32;_CRT_SECURE_NO_WARNINGS;_DEBUG;%(PreprocessorDefinitions) - ..\..;%(AdditionalIncludeDirectories) - - - $(OutDir)GLUI.lib - MachineX86 - - - Windows - true - - - - - /W1 %(AdditionalOptions) - Disabled - ..\..;%(AdditionalIncludeDirectories) - _CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) - true - EnableFastChecks - MultiThreadedDebugDLL - true - - - Level3 - ProgramDatabase - $(OutDir)GLUI.pdb - - - WIN32;_CRT_SECURE_NO_WARNINGS;_DEBUG;%(PreprocessorDefinitions) - ..\..;%(AdditionalIncludeDirectories) - - - $(OutDir)GLUI.lib - MachineX64 - - - Windows - true - - - - - /W1 %(AdditionalOptions) - Full - ..\..;%(AdditionalIncludeDirectories) - _CRT_SECURE_NO_WARNINGS;NDEBUG;%(PreprocessorDefinitions) - false - true - MultiThreadedDLL - true - - - Level3 - - - - - WIN32;_CRT_SECURE_NO_WARNINGS;NDEBUG;%(PreprocessorDefinitions) - ..\..;%(AdditionalIncludeDirectories) - - - $(OutDir)GLUI.lib - MachineX86 - - - Windows - false - true - true - - - - - /W1 %(AdditionalOptions) - Full - ..\..;%(AdditionalIncludeDirectories) - _CRT_SECURE_NO_WARNINGS;NDEBUG;%(PreprocessorDefinitions) - false - true - MultiThreadedDLL - true - - - Level3 - - - - - WIN32;_CRT_SECURE_NO_WARNINGS;NDEBUG;%(PreprocessorDefinitions) - ..\..;%(AdditionalIncludeDirectories) - - - $(OutDir)GLUI.lib - MachineX64 - - - Windows - false - true - true - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Build/vs2012/GLUI.vcxproj.filters b/src/dependencies/Box2D_v2.3.0/Box2D/Build/vs2012/GLUI.vcxproj.filters deleted file mode 100644 index 587ea86..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Build/vs2012/GLUI.vcxproj.filters +++ /dev/null @@ -1,129 +0,0 @@ - - - - - {7EE70127-33D6-EE45-A170-6D9CD2ECBA05} - - - {392FBE2C-081A-8743-83E6-1344CBD265D1} - - - - - Headers - - - Headers - - - Headers - - - Headers - - - Headers - - - Headers - - - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - Sources - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Build/vs2012/HelloWorld.vcxproj b/src/dependencies/Box2D_v2.3.0/Box2D/Build/vs2012/HelloWorld.vcxproj deleted file mode 100644 index aaadaf0..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Build/vs2012/HelloWorld.vcxproj +++ /dev/null @@ -1,213 +0,0 @@ - - - - - Debug - Win32 - - - Debug - x64 - - - Release - Win32 - - - Release - x64 - - - - {259F29FB-40F1-F04D-940B-BCEA3ED16B75} - HelloWorld - Win32Proj - - - - Application - MultiByte - true - v110 - - - Application - MultiByte - true - v110 - - - Application - MultiByte - false - v110 - - - Application - MultiByte - false - v110 - - - - - - - - - - - - - - - - - - - <_ProjectFileVersion>10.0.30319.1 - bin\Debug\ - obj\x32\Debug\HelloWorld\ - HelloWorld - true - bin\Debug\ - obj\x64\Debug\HelloWorld\ - HelloWorld - true - bin\Release\ - obj\x32\Release\HelloWorld\ - HelloWorld - false - bin\Release\ - obj\x64\Release\HelloWorld\ - HelloWorld - false - - - - Disabled - ..\..;%(AdditionalIncludeDirectories) - _CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) - true - EnableFastChecks - MultiThreadedDebugDLL - true - - - Level3 - EditAndContinue - $(OutDir)HelloWorld.pdb - - - WIN32;_CRT_SECURE_NO_WARNINGS;_DEBUG;%(PreprocessorDefinitions) - ..\..;%(AdditionalIncludeDirectories) - - - bin\Debug\Box2D.lib;%(AdditionalDependencies) - $(OutDir)HelloWorld.exe - %(AdditionalLibraryDirectories) - Console - true - mainCRTStartup - MachineX86 - - - - - Disabled - ..\..;%(AdditionalIncludeDirectories) - _CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) - true - EnableFastChecks - MultiThreadedDebugDLL - true - - - Level3 - ProgramDatabase - $(OutDir)HelloWorld.pdb - - - WIN32;_CRT_SECURE_NO_WARNINGS;_DEBUG;%(PreprocessorDefinitions) - ..\..;%(AdditionalIncludeDirectories) - - - bin\Debug\Box2D.lib;%(AdditionalDependencies) - $(OutDir)HelloWorld.exe - %(AdditionalLibraryDirectories) - Console - true - mainCRTStartup - MachineX64 - - - - - Full - ..\..;%(AdditionalIncludeDirectories) - _CRT_SECURE_NO_WARNINGS;NDEBUG;%(PreprocessorDefinitions) - false - true - MultiThreadedDLL - true - - - Level3 - - - - - WIN32;_CRT_SECURE_NO_WARNINGS;NDEBUG;%(PreprocessorDefinitions) - ..\..;%(AdditionalIncludeDirectories) - - - bin\Release\Box2D.lib;%(AdditionalDependencies) - $(OutDir)HelloWorld.exe - %(AdditionalLibraryDirectories) - Console - false - true - true - mainCRTStartup - MachineX86 - - - - - Full - ..\..;%(AdditionalIncludeDirectories) - _CRT_SECURE_NO_WARNINGS;NDEBUG;%(PreprocessorDefinitions) - false - true - MultiThreadedDLL - true - - - Level3 - - - - - WIN32;_CRT_SECURE_NO_WARNINGS;NDEBUG;%(PreprocessorDefinitions) - ..\..;%(AdditionalIncludeDirectories) - - - bin\Release\Box2D.lib;%(AdditionalDependencies) - $(OutDir)HelloWorld.exe - %(AdditionalLibraryDirectories) - Console - false - true - true - mainCRTStartup - MachineX64 - - - - - - - - - - \ No newline at end of file diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Build/vs2012/HelloWorld.vcxproj.filters b/src/dependencies/Box2D_v2.3.0/Box2D/Build/vs2012/HelloWorld.vcxproj.filters deleted file mode 100644 index 1cbc00c..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Build/vs2012/HelloWorld.vcxproj.filters +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Build/vs2012/Testbed.vcxproj b/src/dependencies/Box2D_v2.3.0/Box2D/Build/vs2012/Testbed.vcxproj deleted file mode 100644 index 9b98498..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Build/vs2012/Testbed.vcxproj +++ /dev/null @@ -1,272 +0,0 @@ - - - - - Debug - Win32 - - - Debug - x64 - - - Release - Win32 - - - Release - x64 - - - - {3FC8974C-9179-4D4E-A5E0-79E3C836548F} - Testbed - Win32Proj - - - - Application - MultiByte - true - v110 - - - Application - MultiByte - true - v110 - - - Application - MultiByte - false - v110 - - - Application - MultiByte - false - v110 - - - - - - - - - - - - - - - - - - - <_ProjectFileVersion>10.0.30319.1 - bin\Debug\ - obj\x32\Debug\Testbed\ - Testbed - true - bin\Debug\ - obj\x64\Debug\Testbed\ - Testbed - true - bin\Release\ - obj\x32\Release\Testbed\ - Testbed - false - bin\Release\ - obj\x64\Release\Testbed\ - Testbed - false - - - - Disabled - ..\..;%(AdditionalIncludeDirectories) - _CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) - true - EnableFastChecks - MultiThreadedDebugDLL - true - - - Level3 - EditAndContinue - $(OutDir)Testbed.pdb - - - WIN32;_CRT_SECURE_NO_WARNINGS;_DEBUG;%(PreprocessorDefinitions) - ..\..;%(AdditionalIncludeDirectories) - - - bin\Debug\Box2D.lib;bin\Debug\FreeGLUT.lib;bin\Debug\GLUI.lib;glu32.lib;opengl32.lib;winmm.lib;%(AdditionalDependencies) - $(OutDir)Testbed.exe - %(AdditionalLibraryDirectories) - Console - true - mainCRTStartup - MachineX86 - - - - - Disabled - ..\..;%(AdditionalIncludeDirectories) - _CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) - true - EnableFastChecks - MultiThreadedDebugDLL - true - - - Level3 - ProgramDatabase - $(OutDir)Testbed.pdb - - - WIN32;_CRT_SECURE_NO_WARNINGS;_DEBUG;%(PreprocessorDefinitions) - ..\..;%(AdditionalIncludeDirectories) - - - bin\Debug\Box2D.lib;bin\Debug\FreeGLUT.lib;bin\Debug\GLUI.lib;glu32.lib;opengl32.lib;winmm.lib;%(AdditionalDependencies) - $(OutDir)Testbed.exe - %(AdditionalLibraryDirectories) - Console - true - mainCRTStartup - MachineX64 - - - - - Full - ..\..;%(AdditionalIncludeDirectories) - _CRT_SECURE_NO_WARNINGS;NDEBUG;%(PreprocessorDefinitions) - false - true - MultiThreadedDLL - true - - - Level3 - - - - - WIN32;_CRT_SECURE_NO_WARNINGS;NDEBUG;%(PreprocessorDefinitions) - ..\..;%(AdditionalIncludeDirectories) - - - bin\Release\Box2D.lib;bin\Release\FreeGLUT.lib;bin\Release\GLUI.lib;glu32.lib;opengl32.lib;winmm.lib;%(AdditionalDependencies) - $(OutDir)Testbed.exe - %(AdditionalLibraryDirectories) - Console - false - true - true - mainCRTStartup - MachineX86 - - - - - Full - ..\..;%(AdditionalIncludeDirectories) - _CRT_SECURE_NO_WARNINGS;NDEBUG;%(PreprocessorDefinitions) - false - true - MultiThreadedDLL - true - - - Level3 - ProgramDatabase - - - WIN32;_CRT_SECURE_NO_WARNINGS;NDEBUG;%(PreprocessorDefinitions) - ..\..;%(AdditionalIncludeDirectories) - - - bin\Release\Box2D.lib;bin\Release\FreeGLUT.lib;bin\Release\GLUI.lib;glu32.lib;opengl32.lib;winmm.lib;%(AdditionalDependencies) - $(OutDir)Testbed.exe - %(AdditionalLibraryDirectories) - Console - true - true - true - mainCRTStartup - MachineX64 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Build/vs2012/Testbed.vcxproj.filters b/src/dependencies/Box2D_v2.3.0/Box2D/Build/vs2012/Testbed.vcxproj.filters deleted file mode 100644 index 78cabc5..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Build/vs2012/Testbed.vcxproj.filters +++ /dev/null @@ -1,183 +0,0 @@ - - - - - {F5D5D9E8-9CBD-914E-B539-B995BEA73920} - - - {CF6BC554-9DC6-4547-9F18-A1BA2F3345BF} - - - - - Framework - - - Framework - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - Tests - - - - - Framework - - - Framework - - - Framework - - - Tests - - - \ No newline at end of file diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Build/xcode5/Box2D.xcodeproj/project.pbxproj b/src/dependencies/Box2D_v2.3.0/Box2D/Build/xcode5/Box2D.xcodeproj/project.pbxproj deleted file mode 100644 index 0681dc5..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Build/xcode5/Box2D.xcodeproj/project.pbxproj +++ /dev/null @@ -1,1251 +0,0 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 46; - objects = { - -/* Begin PBXBuildFile section */ - 80620F8F168B934600D46C8D /* b2MotorJoint.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80620F8D168B934600D46C8D /* b2MotorJoint.cpp */; }; - 80620F90168B934600D46C8D /* b2MotorJoint.h in Headers */ = {isa = PBXBuildFile; fileRef = 80620F8E168B934600D46C8D /* b2MotorJoint.h */; }; - 80BB8987141C3E5900F1753A /* Box2D.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB8923141C3E5900F1753A /* Box2D.h */; }; - 80BB8988141C3E5900F1753A /* b2BroadPhase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB8927141C3E5900F1753A /* b2BroadPhase.cpp */; }; - 80BB8989141C3E5900F1753A /* b2BroadPhase.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB8928141C3E5900F1753A /* b2BroadPhase.h */; }; - 80BB898A141C3E5900F1753A /* b2CollideCircle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB8929141C3E5900F1753A /* b2CollideCircle.cpp */; }; - 80BB898B141C3E5900F1753A /* b2CollideEdge.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB892A141C3E5900F1753A /* b2CollideEdge.cpp */; }; - 80BB898C141C3E5900F1753A /* b2CollidePolygon.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB892B141C3E5900F1753A /* b2CollidePolygon.cpp */; }; - 80BB898D141C3E5900F1753A /* b2Collision.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB892C141C3E5900F1753A /* b2Collision.cpp */; }; - 80BB898E141C3E5900F1753A /* b2Collision.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB892D141C3E5900F1753A /* b2Collision.h */; }; - 80BB898F141C3E5900F1753A /* b2Distance.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB892E141C3E5900F1753A /* b2Distance.cpp */; }; - 80BB8990141C3E5900F1753A /* b2Distance.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB892F141C3E5900F1753A /* b2Distance.h */; }; - 80BB8991141C3E5900F1753A /* b2DynamicTree.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB8930141C3E5900F1753A /* b2DynamicTree.cpp */; }; - 80BB8992141C3E5900F1753A /* b2DynamicTree.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB8931141C3E5900F1753A /* b2DynamicTree.h */; }; - 80BB8993141C3E5900F1753A /* b2TimeOfImpact.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB8932141C3E5900F1753A /* b2TimeOfImpact.cpp */; }; - 80BB8994141C3E5900F1753A /* b2TimeOfImpact.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB8933141C3E5900F1753A /* b2TimeOfImpact.h */; }; - 80BB8995141C3E5900F1753A /* b2ChainShape.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB8935141C3E5900F1753A /* b2ChainShape.cpp */; }; - 80BB8996141C3E5900F1753A /* b2ChainShape.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB8936141C3E5900F1753A /* b2ChainShape.h */; }; - 80BB8997141C3E5900F1753A /* b2CircleShape.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB8937141C3E5900F1753A /* b2CircleShape.cpp */; }; - 80BB8998141C3E5900F1753A /* b2CircleShape.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB8938141C3E5900F1753A /* b2CircleShape.h */; }; - 80BB8999141C3E5900F1753A /* b2EdgeShape.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB8939141C3E5900F1753A /* b2EdgeShape.cpp */; }; - 80BB899A141C3E5900F1753A /* b2EdgeShape.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB893A141C3E5900F1753A /* b2EdgeShape.h */; }; - 80BB899B141C3E5900F1753A /* b2PolygonShape.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB893B141C3E5900F1753A /* b2PolygonShape.cpp */; }; - 80BB899C141C3E5900F1753A /* b2PolygonShape.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB893C141C3E5900F1753A /* b2PolygonShape.h */; }; - 80BB899D141C3E5900F1753A /* b2Shape.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB893D141C3E5900F1753A /* b2Shape.h */; }; - 80BB899E141C3E5900F1753A /* b2BlockAllocator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB893F141C3E5900F1753A /* b2BlockAllocator.cpp */; }; - 80BB899F141C3E5900F1753A /* b2BlockAllocator.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB8940141C3E5900F1753A /* b2BlockAllocator.h */; }; - 80BB89A0141C3E5900F1753A /* b2Draw.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB8941141C3E5900F1753A /* b2Draw.cpp */; }; - 80BB89A1141C3E5900F1753A /* b2Draw.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB8942141C3E5900F1753A /* b2Draw.h */; }; - 80BB89A2141C3E5900F1753A /* b2GrowableStack.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB8943141C3E5900F1753A /* b2GrowableStack.h */; }; - 80BB89A3141C3E5900F1753A /* b2Math.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB8944141C3E5900F1753A /* b2Math.cpp */; }; - 80BB89A4141C3E5900F1753A /* b2Math.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB8945141C3E5900F1753A /* b2Math.h */; }; - 80BB89A5141C3E5900F1753A /* b2Settings.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB8946141C3E5900F1753A /* b2Settings.cpp */; }; - 80BB89A6141C3E5900F1753A /* b2Settings.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB8947141C3E5900F1753A /* b2Settings.h */; }; - 80BB89A7141C3E5900F1753A /* b2StackAllocator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB8948141C3E5900F1753A /* b2StackAllocator.cpp */; }; - 80BB89A8141C3E5900F1753A /* b2StackAllocator.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB8949141C3E5900F1753A /* b2StackAllocator.h */; }; - 80BB89A9141C3E5900F1753A /* b2Timer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB894A141C3E5900F1753A /* b2Timer.cpp */; }; - 80BB89AA141C3E5900F1753A /* b2Timer.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB894B141C3E5900F1753A /* b2Timer.h */; }; - 80BB89AB141C3E5900F1753A /* b2Body.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB894D141C3E5900F1753A /* b2Body.cpp */; }; - 80BB89AC141C3E5900F1753A /* b2Body.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB894E141C3E5900F1753A /* b2Body.h */; }; - 80BB89AD141C3E5900F1753A /* b2ContactManager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB894F141C3E5900F1753A /* b2ContactManager.cpp */; }; - 80BB89AE141C3E5900F1753A /* b2ContactManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB8950141C3E5900F1753A /* b2ContactManager.h */; }; - 80BB89AF141C3E5900F1753A /* b2Fixture.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB8951141C3E5900F1753A /* b2Fixture.cpp */; }; - 80BB89B0141C3E5900F1753A /* b2Fixture.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB8952141C3E5900F1753A /* b2Fixture.h */; }; - 80BB89B1141C3E5900F1753A /* b2Island.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB8953141C3E5900F1753A /* b2Island.cpp */; }; - 80BB89B2141C3E5900F1753A /* b2Island.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB8954141C3E5900F1753A /* b2Island.h */; }; - 80BB89B3141C3E5900F1753A /* b2TimeStep.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB8955141C3E5900F1753A /* b2TimeStep.h */; }; - 80BB89B4141C3E5900F1753A /* b2World.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB8956141C3E5900F1753A /* b2World.cpp */; }; - 80BB89B5141C3E5900F1753A /* b2World.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB8957141C3E5900F1753A /* b2World.h */; }; - 80BB89B6141C3E5900F1753A /* b2WorldCallbacks.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB8958141C3E5900F1753A /* b2WorldCallbacks.cpp */; }; - 80BB89B7141C3E5900F1753A /* b2WorldCallbacks.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB8959141C3E5900F1753A /* b2WorldCallbacks.h */; }; - 80BB89B8141C3E5900F1753A /* b2ChainAndCircleContact.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB895B141C3E5900F1753A /* b2ChainAndCircleContact.cpp */; }; - 80BB89B9141C3E5900F1753A /* b2ChainAndCircleContact.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB895C141C3E5900F1753A /* b2ChainAndCircleContact.h */; }; - 80BB89BA141C3E5900F1753A /* b2ChainAndPolygonContact.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB895D141C3E5900F1753A /* b2ChainAndPolygonContact.cpp */; }; - 80BB89BB141C3E5900F1753A /* b2ChainAndPolygonContact.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB895E141C3E5900F1753A /* b2ChainAndPolygonContact.h */; }; - 80BB89BC141C3E5900F1753A /* b2CircleContact.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB895F141C3E5900F1753A /* b2CircleContact.cpp */; }; - 80BB89BD141C3E5900F1753A /* b2CircleContact.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB8960141C3E5900F1753A /* b2CircleContact.h */; }; - 80BB89BE141C3E5900F1753A /* b2Contact.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB8961141C3E5900F1753A /* b2Contact.cpp */; }; - 80BB89BF141C3E5900F1753A /* b2Contact.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB8962141C3E5900F1753A /* b2Contact.h */; }; - 80BB89C0141C3E5900F1753A /* b2ContactSolver.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB8963141C3E5900F1753A /* b2ContactSolver.cpp */; }; - 80BB89C1141C3E5900F1753A /* b2ContactSolver.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB8964141C3E5900F1753A /* b2ContactSolver.h */; }; - 80BB89C2141C3E5900F1753A /* b2EdgeAndCircleContact.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB8965141C3E5900F1753A /* b2EdgeAndCircleContact.cpp */; }; - 80BB89C3141C3E5900F1753A /* b2EdgeAndCircleContact.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB8966141C3E5900F1753A /* b2EdgeAndCircleContact.h */; }; - 80BB89C4141C3E5900F1753A /* b2EdgeAndPolygonContact.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB8967141C3E5900F1753A /* b2EdgeAndPolygonContact.cpp */; }; - 80BB89C5141C3E5900F1753A /* b2EdgeAndPolygonContact.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB8968141C3E5900F1753A /* b2EdgeAndPolygonContact.h */; }; - 80BB89C6141C3E5900F1753A /* b2PolygonAndCircleContact.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB8969141C3E5900F1753A /* b2PolygonAndCircleContact.cpp */; }; - 80BB89C7141C3E5900F1753A /* b2PolygonAndCircleContact.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB896A141C3E5900F1753A /* b2PolygonAndCircleContact.h */; }; - 80BB89C8141C3E5900F1753A /* b2PolygonContact.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB896B141C3E5900F1753A /* b2PolygonContact.cpp */; }; - 80BB89C9141C3E5900F1753A /* b2PolygonContact.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB896C141C3E5900F1753A /* b2PolygonContact.h */; }; - 80BB89CA141C3E5900F1753A /* b2DistanceJoint.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB896E141C3E5900F1753A /* b2DistanceJoint.cpp */; }; - 80BB89CB141C3E5900F1753A /* b2DistanceJoint.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB896F141C3E5900F1753A /* b2DistanceJoint.h */; }; - 80BB89CC141C3E5900F1753A /* b2FrictionJoint.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB8970141C3E5900F1753A /* b2FrictionJoint.cpp */; }; - 80BB89CD141C3E5900F1753A /* b2FrictionJoint.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB8971141C3E5900F1753A /* b2FrictionJoint.h */; }; - 80BB89CE141C3E5900F1753A /* b2GearJoint.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB8972141C3E5900F1753A /* b2GearJoint.cpp */; }; - 80BB89CF141C3E5900F1753A /* b2GearJoint.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB8973141C3E5900F1753A /* b2GearJoint.h */; }; - 80BB89D0141C3E5900F1753A /* b2Joint.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB8974141C3E5900F1753A /* b2Joint.cpp */; }; - 80BB89D1141C3E5900F1753A /* b2Joint.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB8975141C3E5900F1753A /* b2Joint.h */; }; - 80BB89D2141C3E5900F1753A /* b2MouseJoint.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB8976141C3E5900F1753A /* b2MouseJoint.cpp */; }; - 80BB89D3141C3E5900F1753A /* b2MouseJoint.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB8977141C3E5900F1753A /* b2MouseJoint.h */; }; - 80BB89D4141C3E5900F1753A /* b2PrismaticJoint.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB8978141C3E5900F1753A /* b2PrismaticJoint.cpp */; }; - 80BB89D5141C3E5900F1753A /* b2PrismaticJoint.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB8979141C3E5900F1753A /* b2PrismaticJoint.h */; }; - 80BB89D6141C3E5900F1753A /* b2PulleyJoint.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB897A141C3E5900F1753A /* b2PulleyJoint.cpp */; }; - 80BB89D7141C3E5900F1753A /* b2PulleyJoint.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB897B141C3E5900F1753A /* b2PulleyJoint.h */; }; - 80BB89D8141C3E5900F1753A /* b2RevoluteJoint.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB897C141C3E5900F1753A /* b2RevoluteJoint.cpp */; }; - 80BB89D9141C3E5900F1753A /* b2RevoluteJoint.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB897D141C3E5900F1753A /* b2RevoluteJoint.h */; }; - 80BB89DA141C3E5900F1753A /* b2RopeJoint.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB897E141C3E5900F1753A /* b2RopeJoint.cpp */; }; - 80BB89DB141C3E5900F1753A /* b2RopeJoint.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB897F141C3E5900F1753A /* b2RopeJoint.h */; }; - 80BB89DC141C3E5900F1753A /* b2WeldJoint.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB8980141C3E5900F1753A /* b2WeldJoint.cpp */; }; - 80BB89DD141C3E5900F1753A /* b2WeldJoint.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB8981141C3E5900F1753A /* b2WeldJoint.h */; }; - 80BB89DE141C3E5900F1753A /* b2WheelJoint.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB8982141C3E5900F1753A /* b2WheelJoint.cpp */; }; - 80BB89DF141C3E5900F1753A /* b2WheelJoint.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB8983141C3E5900F1753A /* b2WheelJoint.h */; }; - 80BB89E0141C3E5900F1753A /* b2Rope.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB8985141C3E5900F1753A /* b2Rope.cpp */; }; - 80BB89E1141C3E5900F1753A /* b2Rope.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB8986141C3E5900F1753A /* b2Rope.h */; }; - 80BB8A0B141C3E6900F1753A /* algebra3.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB89E3141C3E6900F1753A /* algebra3.cpp */; }; - 80BB8A0C141C3E6900F1753A /* algebra3.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB89E4141C3E6900F1753A /* algebra3.h */; }; - 80BB8A0D141C3E6900F1753A /* arcball.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB89E5141C3E6900F1753A /* arcball.cpp */; }; - 80BB8A0E141C3E6900F1753A /* arcball.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB89E6141C3E6900F1753A /* arcball.h */; }; - 80BB8A0F141C3E6900F1753A /* glui.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB89E8141C3E6900F1753A /* glui.cpp */; }; - 80BB8A10141C3E6900F1753A /* glui.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB89E9141C3E6900F1753A /* glui.h */; }; - 80BB8A11141C3E6900F1753A /* glui_add_controls.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB89EA141C3E6900F1753A /* glui_add_controls.cpp */; }; - 80BB8A12141C3E6900F1753A /* glui_bitmap_img_data.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB89EB141C3E6900F1753A /* glui_bitmap_img_data.cpp */; }; - 80BB8A13141C3E6900F1753A /* glui_bitmaps.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB89EC141C3E6900F1753A /* glui_bitmaps.cpp */; }; - 80BB8A14141C3E6900F1753A /* glui_button.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB89ED141C3E6900F1753A /* glui_button.cpp */; }; - 80BB8A15141C3E6900F1753A /* glui_checkbox.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB89EE141C3E6900F1753A /* glui_checkbox.cpp */; }; - 80BB8A16141C3E6900F1753A /* glui_column.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB89EF141C3E6900F1753A /* glui_column.cpp */; }; - 80BB8A17141C3E6900F1753A /* glui_commandline.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB89F0141C3E6900F1753A /* glui_commandline.cpp */; }; - 80BB8A18141C3E6900F1753A /* glui_control.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB89F1141C3E6900F1753A /* glui_control.cpp */; }; - 80BB8A19141C3E6900F1753A /* glui_edittext.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB89F2141C3E6900F1753A /* glui_edittext.cpp */; }; - 80BB8A1A141C3E6900F1753A /* glui_filebrowser.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB89F3141C3E6900F1753A /* glui_filebrowser.cpp */; }; - 80BB8A1B141C3E6900F1753A /* glui_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB89F4141C3E6900F1753A /* glui_internal.h */; }; - 80BB8A1C141C3E6900F1753A /* glui_internal_control.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB89F5141C3E6900F1753A /* glui_internal_control.h */; }; - 80BB8A1D141C3E6900F1753A /* glui_list.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB89F6141C3E6900F1753A /* glui_list.cpp */; }; - 80BB8A1E141C3E6900F1753A /* glui_listbox.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB89F7141C3E6900F1753A /* glui_listbox.cpp */; }; - 80BB8A1F141C3E6900F1753A /* glui_mouse_iaction.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB89F8141C3E6900F1753A /* glui_mouse_iaction.cpp */; }; - 80BB8A20141C3E6900F1753A /* glui_node.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB89F9141C3E6900F1753A /* glui_node.cpp */; }; - 80BB8A21141C3E6900F1753A /* glui_panel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB89FA141C3E6900F1753A /* glui_panel.cpp */; }; - 80BB8A22141C3E6900F1753A /* glui_radio.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB89FB141C3E6900F1753A /* glui_radio.cpp */; }; - 80BB8A23141C3E6900F1753A /* glui_rollout.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB89FC141C3E6900F1753A /* glui_rollout.cpp */; }; - 80BB8A24141C3E6900F1753A /* glui_rotation.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB89FD141C3E6900F1753A /* glui_rotation.cpp */; }; - 80BB8A25141C3E6900F1753A /* glui_scrollbar.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB89FE141C3E6900F1753A /* glui_scrollbar.cpp */; }; - 80BB8A26141C3E6900F1753A /* glui_separator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB89FF141C3E6900F1753A /* glui_separator.cpp */; }; - 80BB8A27141C3E6900F1753A /* glui_spinner.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB8A00141C3E6900F1753A /* glui_spinner.cpp */; }; - 80BB8A28141C3E6900F1753A /* glui_statictext.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB8A01141C3E6900F1753A /* glui_statictext.cpp */; }; - 80BB8A29141C3E6900F1753A /* glui_string.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB8A02141C3E6900F1753A /* glui_string.cpp */; }; - 80BB8A2A141C3E6900F1753A /* glui_textbox.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB8A03141C3E6900F1753A /* glui_textbox.cpp */; }; - 80BB8A2B141C3E6900F1753A /* glui_translation.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB8A04141C3E6900F1753A /* glui_translation.cpp */; }; - 80BB8A2C141C3E6900F1753A /* glui_tree.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB8A05141C3E6900F1753A /* glui_tree.cpp */; }; - 80BB8A2D141C3E6900F1753A /* glui_treepanel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB8A06141C3E6900F1753A /* glui_treepanel.cpp */; }; - 80BB8A2E141C3E6900F1753A /* glui_window.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB8A07141C3E6900F1753A /* glui_window.cpp */; }; - 80BB8A2F141C3E6900F1753A /* quaternion.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB8A08141C3E6900F1753A /* quaternion.cpp */; }; - 80BB8A30141C3E6900F1753A /* quaternion.h in Headers */ = {isa = PBXBuildFile; fileRef = 80BB8A09141C3E6900F1753A /* quaternion.h */; }; - 80BB8A34141C3E7B00F1753A /* HelloWorld.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB8A33141C3E7B00F1753A /* HelloWorld.cpp */; }; - 80BB8A6B141C3E8600F1753A /* Main.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB8A38141C3E8500F1753A /* Main.cpp */; }; - 80BB8A6C141C3E8600F1753A /* Render.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB8A39141C3E8500F1753A /* Render.cpp */; }; - 80BB8A6D141C3E8600F1753A /* Test.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB8A3B141C3E8500F1753A /* Test.cpp */; }; - 80BB8A6E141C3E8600F1753A /* TestEntries.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 80BB8A63141C3E8600F1753A /* TestEntries.cpp */; }; - 80BB8A75141C3F4C00F1753A /* libBox2D.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 80FF01D2141C3D980059E59D /* libBox2D.a */; }; - 80BB8A76141C3F7600F1753A /* libBox2D.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 80FF01D2141C3D980059E59D /* libBox2D.a */; }; - 80BB8A77141C3F7600F1753A /* libGLUI.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 80BB8901141C3E1800F1753A /* libGLUI.a */; }; - 80BB8A79141C3F9C00F1753A /* GLUT.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 80BB8A78141C3F9C00F1753A /* GLUT.framework */; }; - 80BB8A7B141C3FA700F1753A /* OpenGL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 80BB8A7A141C3FA700F1753A /* OpenGL.framework */; }; -/* End PBXBuildFile section */ - -/* Begin PBXContainerItemProxy section */ - 80BB8A6F141C3EA100F1753A /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 80FF01C9141C3D980059E59D /* Project object */; - proxyType = 1; - remoteGlobalIDString = 80FF01D1141C3D980059E59D; - remoteInfo = Box2D; - }; - 80BB8A71141C3EA800F1753A /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 80FF01C9141C3D980059E59D /* Project object */; - proxyType = 1; - remoteGlobalIDString = 80FF01D1141C3D980059E59D; - remoteInfo = Box2D; - }; - 80BB8A73141C3EA800F1753A /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 80FF01C9141C3D980059E59D /* Project object */; - proxyType = 1; - remoteGlobalIDString = 80BB8900141C3E1800F1753A; - remoteInfo = GLUI; - }; -/* End PBXContainerItemProxy section */ - -/* Begin PBXCopyFilesBuildPhase section */ - 80BB8908141C3E2600F1753A /* CopyFiles */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = /usr/share/man/man1/; - dstSubfolderSpec = 0; - files = ( - ); - runOnlyForDeploymentPostprocessing = 1; - }; - 80BB8916141C3E3600F1753A /* CopyFiles */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = /usr/share/man/man1/; - dstSubfolderSpec = 0; - files = ( - ); - runOnlyForDeploymentPostprocessing = 1; - }; -/* End PBXCopyFilesBuildPhase section */ - -/* Begin PBXFileReference section */ - 80154ACD141DED6B00C8251F /* Tumbler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Tumbler.h; sourceTree = ""; }; - 80620F8D168B934600D46C8D /* b2MotorJoint.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2MotorJoint.cpp; sourceTree = ""; }; - 80620F8E168B934600D46C8D /* b2MotorJoint.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2MotorJoint.h; sourceTree = ""; }; - 80BB8901141C3E1800F1753A /* libGLUI.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libGLUI.a; sourceTree = BUILT_PRODUCTS_DIR; }; - 80BB890A141C3E2700F1753A /* HelloWorld */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = HelloWorld; sourceTree = BUILT_PRODUCTS_DIR; }; - 80BB8918141C3E3600F1753A /* Testbed */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = Testbed; sourceTree = BUILT_PRODUCTS_DIR; }; - 80BB8923141C3E5900F1753A /* Box2D.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Box2D.h; sourceTree = ""; }; - 80BB8924141C3E5900F1753A /* Box2DConfig.cmake */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = Box2DConfig.cmake; sourceTree = ""; }; - 80BB8925141C3E5900F1753A /* CMakeLists.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = CMakeLists.txt; sourceTree = ""; }; - 80BB8927141C3E5900F1753A /* b2BroadPhase.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2BroadPhase.cpp; sourceTree = ""; }; - 80BB8928141C3E5900F1753A /* b2BroadPhase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2BroadPhase.h; sourceTree = ""; }; - 80BB8929141C3E5900F1753A /* b2CollideCircle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2CollideCircle.cpp; sourceTree = ""; }; - 80BB892A141C3E5900F1753A /* b2CollideEdge.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2CollideEdge.cpp; sourceTree = ""; }; - 80BB892B141C3E5900F1753A /* b2CollidePolygon.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2CollidePolygon.cpp; sourceTree = ""; }; - 80BB892C141C3E5900F1753A /* b2Collision.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2Collision.cpp; sourceTree = ""; }; - 80BB892D141C3E5900F1753A /* b2Collision.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2Collision.h; sourceTree = ""; }; - 80BB892E141C3E5900F1753A /* b2Distance.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2Distance.cpp; sourceTree = ""; }; - 80BB892F141C3E5900F1753A /* b2Distance.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2Distance.h; sourceTree = ""; }; - 80BB8930141C3E5900F1753A /* b2DynamicTree.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2DynamicTree.cpp; sourceTree = ""; }; - 80BB8931141C3E5900F1753A /* b2DynamicTree.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2DynamicTree.h; sourceTree = ""; }; - 80BB8932141C3E5900F1753A /* b2TimeOfImpact.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2TimeOfImpact.cpp; sourceTree = ""; }; - 80BB8933141C3E5900F1753A /* b2TimeOfImpact.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2TimeOfImpact.h; sourceTree = ""; }; - 80BB8935141C3E5900F1753A /* b2ChainShape.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2ChainShape.cpp; sourceTree = ""; }; - 80BB8936141C3E5900F1753A /* b2ChainShape.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2ChainShape.h; sourceTree = ""; }; - 80BB8937141C3E5900F1753A /* b2CircleShape.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2CircleShape.cpp; sourceTree = ""; }; - 80BB8938141C3E5900F1753A /* b2CircleShape.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2CircleShape.h; sourceTree = ""; }; - 80BB8939141C3E5900F1753A /* b2EdgeShape.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2EdgeShape.cpp; sourceTree = ""; }; - 80BB893A141C3E5900F1753A /* b2EdgeShape.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2EdgeShape.h; sourceTree = ""; }; - 80BB893B141C3E5900F1753A /* b2PolygonShape.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2PolygonShape.cpp; sourceTree = ""; }; - 80BB893C141C3E5900F1753A /* b2PolygonShape.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2PolygonShape.h; sourceTree = ""; }; - 80BB893D141C3E5900F1753A /* b2Shape.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2Shape.h; sourceTree = ""; }; - 80BB893F141C3E5900F1753A /* b2BlockAllocator.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2BlockAllocator.cpp; sourceTree = ""; }; - 80BB8940141C3E5900F1753A /* b2BlockAllocator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2BlockAllocator.h; sourceTree = ""; }; - 80BB8941141C3E5900F1753A /* b2Draw.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2Draw.cpp; sourceTree = ""; }; - 80BB8942141C3E5900F1753A /* b2Draw.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2Draw.h; sourceTree = ""; }; - 80BB8943141C3E5900F1753A /* b2GrowableStack.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2GrowableStack.h; sourceTree = ""; }; - 80BB8944141C3E5900F1753A /* b2Math.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2Math.cpp; sourceTree = ""; }; - 80BB8945141C3E5900F1753A /* b2Math.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2Math.h; sourceTree = ""; }; - 80BB8946141C3E5900F1753A /* b2Settings.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2Settings.cpp; sourceTree = ""; }; - 80BB8947141C3E5900F1753A /* b2Settings.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2Settings.h; sourceTree = ""; }; - 80BB8948141C3E5900F1753A /* b2StackAllocator.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2StackAllocator.cpp; sourceTree = ""; }; - 80BB8949141C3E5900F1753A /* b2StackAllocator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2StackAllocator.h; sourceTree = ""; }; - 80BB894A141C3E5900F1753A /* b2Timer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2Timer.cpp; sourceTree = ""; }; - 80BB894B141C3E5900F1753A /* b2Timer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2Timer.h; sourceTree = ""; }; - 80BB894D141C3E5900F1753A /* b2Body.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2Body.cpp; sourceTree = ""; }; - 80BB894E141C3E5900F1753A /* b2Body.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2Body.h; sourceTree = ""; }; - 80BB894F141C3E5900F1753A /* b2ContactManager.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2ContactManager.cpp; sourceTree = ""; }; - 80BB8950141C3E5900F1753A /* b2ContactManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2ContactManager.h; sourceTree = ""; }; - 80BB8951141C3E5900F1753A /* b2Fixture.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2Fixture.cpp; sourceTree = ""; }; - 80BB8952141C3E5900F1753A /* b2Fixture.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2Fixture.h; sourceTree = ""; }; - 80BB8953141C3E5900F1753A /* b2Island.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2Island.cpp; sourceTree = ""; }; - 80BB8954141C3E5900F1753A /* b2Island.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2Island.h; sourceTree = ""; }; - 80BB8955141C3E5900F1753A /* b2TimeStep.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2TimeStep.h; sourceTree = ""; }; - 80BB8956141C3E5900F1753A /* b2World.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2World.cpp; sourceTree = ""; }; - 80BB8957141C3E5900F1753A /* b2World.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2World.h; sourceTree = ""; }; - 80BB8958141C3E5900F1753A /* b2WorldCallbacks.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2WorldCallbacks.cpp; sourceTree = ""; }; - 80BB8959141C3E5900F1753A /* b2WorldCallbacks.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2WorldCallbacks.h; sourceTree = ""; }; - 80BB895B141C3E5900F1753A /* b2ChainAndCircleContact.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2ChainAndCircleContact.cpp; sourceTree = ""; }; - 80BB895C141C3E5900F1753A /* b2ChainAndCircleContact.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2ChainAndCircleContact.h; sourceTree = ""; }; - 80BB895D141C3E5900F1753A /* b2ChainAndPolygonContact.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2ChainAndPolygonContact.cpp; sourceTree = ""; }; - 80BB895E141C3E5900F1753A /* b2ChainAndPolygonContact.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2ChainAndPolygonContact.h; sourceTree = ""; }; - 80BB895F141C3E5900F1753A /* b2CircleContact.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2CircleContact.cpp; sourceTree = ""; }; - 80BB8960141C3E5900F1753A /* b2CircleContact.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2CircleContact.h; sourceTree = ""; }; - 80BB8961141C3E5900F1753A /* b2Contact.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2Contact.cpp; sourceTree = ""; }; - 80BB8962141C3E5900F1753A /* b2Contact.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2Contact.h; sourceTree = ""; }; - 80BB8963141C3E5900F1753A /* b2ContactSolver.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2ContactSolver.cpp; sourceTree = ""; }; - 80BB8964141C3E5900F1753A /* b2ContactSolver.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2ContactSolver.h; sourceTree = ""; }; - 80BB8965141C3E5900F1753A /* b2EdgeAndCircleContact.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2EdgeAndCircleContact.cpp; sourceTree = ""; }; - 80BB8966141C3E5900F1753A /* b2EdgeAndCircleContact.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2EdgeAndCircleContact.h; sourceTree = ""; }; - 80BB8967141C3E5900F1753A /* b2EdgeAndPolygonContact.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2EdgeAndPolygonContact.cpp; sourceTree = ""; }; - 80BB8968141C3E5900F1753A /* b2EdgeAndPolygonContact.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2EdgeAndPolygonContact.h; sourceTree = ""; }; - 80BB8969141C3E5900F1753A /* b2PolygonAndCircleContact.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2PolygonAndCircleContact.cpp; sourceTree = ""; }; - 80BB896A141C3E5900F1753A /* b2PolygonAndCircleContact.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2PolygonAndCircleContact.h; sourceTree = ""; }; - 80BB896B141C3E5900F1753A /* b2PolygonContact.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2PolygonContact.cpp; sourceTree = ""; }; - 80BB896C141C3E5900F1753A /* b2PolygonContact.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2PolygonContact.h; sourceTree = ""; }; - 80BB896E141C3E5900F1753A /* b2DistanceJoint.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2DistanceJoint.cpp; sourceTree = ""; }; - 80BB896F141C3E5900F1753A /* b2DistanceJoint.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2DistanceJoint.h; sourceTree = ""; }; - 80BB8970141C3E5900F1753A /* b2FrictionJoint.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2FrictionJoint.cpp; sourceTree = ""; }; - 80BB8971141C3E5900F1753A /* b2FrictionJoint.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2FrictionJoint.h; sourceTree = ""; }; - 80BB8972141C3E5900F1753A /* b2GearJoint.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2GearJoint.cpp; sourceTree = ""; }; - 80BB8973141C3E5900F1753A /* b2GearJoint.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2GearJoint.h; sourceTree = ""; }; - 80BB8974141C3E5900F1753A /* b2Joint.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2Joint.cpp; sourceTree = ""; }; - 80BB8975141C3E5900F1753A /* b2Joint.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2Joint.h; sourceTree = ""; }; - 80BB8976141C3E5900F1753A /* b2MouseJoint.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2MouseJoint.cpp; sourceTree = ""; }; - 80BB8977141C3E5900F1753A /* b2MouseJoint.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2MouseJoint.h; sourceTree = ""; }; - 80BB8978141C3E5900F1753A /* b2PrismaticJoint.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2PrismaticJoint.cpp; sourceTree = ""; }; - 80BB8979141C3E5900F1753A /* b2PrismaticJoint.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2PrismaticJoint.h; sourceTree = ""; }; - 80BB897A141C3E5900F1753A /* b2PulleyJoint.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2PulleyJoint.cpp; sourceTree = ""; }; - 80BB897B141C3E5900F1753A /* b2PulleyJoint.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2PulleyJoint.h; sourceTree = ""; }; - 80BB897C141C3E5900F1753A /* b2RevoluteJoint.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2RevoluteJoint.cpp; sourceTree = ""; }; - 80BB897D141C3E5900F1753A /* b2RevoluteJoint.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2RevoluteJoint.h; sourceTree = ""; }; - 80BB897E141C3E5900F1753A /* b2RopeJoint.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2RopeJoint.cpp; sourceTree = ""; }; - 80BB897F141C3E5900F1753A /* b2RopeJoint.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2RopeJoint.h; sourceTree = ""; }; - 80BB8980141C3E5900F1753A /* b2WeldJoint.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2WeldJoint.cpp; sourceTree = ""; }; - 80BB8981141C3E5900F1753A /* b2WeldJoint.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2WeldJoint.h; sourceTree = ""; }; - 80BB8982141C3E5900F1753A /* b2WheelJoint.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2WheelJoint.cpp; sourceTree = ""; }; - 80BB8983141C3E5900F1753A /* b2WheelJoint.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2WheelJoint.h; sourceTree = ""; }; - 80BB8985141C3E5900F1753A /* b2Rope.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = b2Rope.cpp; sourceTree = ""; }; - 80BB8986141C3E5900F1753A /* b2Rope.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = b2Rope.h; sourceTree = ""; }; - 80BB89E3141C3E6900F1753A /* algebra3.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = algebra3.cpp; sourceTree = ""; }; - 80BB89E4141C3E6900F1753A /* algebra3.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = algebra3.h; sourceTree = ""; }; - 80BB89E5141C3E6900F1753A /* arcball.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = arcball.cpp; sourceTree = ""; }; - 80BB89E6141C3E6900F1753A /* arcball.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = arcball.h; sourceTree = ""; }; - 80BB89E7141C3E6900F1753A /* CMakeLists.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = CMakeLists.txt; sourceTree = ""; }; - 80BB89E8141C3E6900F1753A /* glui.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = glui.cpp; sourceTree = ""; }; - 80BB89E9141C3E6900F1753A /* glui.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = glui.h; sourceTree = ""; }; - 80BB89EA141C3E6900F1753A /* glui_add_controls.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = glui_add_controls.cpp; sourceTree = ""; }; - 80BB89EB141C3E6900F1753A /* glui_bitmap_img_data.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = glui_bitmap_img_data.cpp; sourceTree = ""; }; - 80BB89EC141C3E6900F1753A /* glui_bitmaps.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = glui_bitmaps.cpp; sourceTree = ""; }; - 80BB89ED141C3E6900F1753A /* glui_button.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = glui_button.cpp; sourceTree = ""; }; - 80BB89EE141C3E6900F1753A /* glui_checkbox.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = glui_checkbox.cpp; sourceTree = ""; }; - 80BB89EF141C3E6900F1753A /* glui_column.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = glui_column.cpp; sourceTree = ""; }; - 80BB89F0141C3E6900F1753A /* glui_commandline.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = glui_commandline.cpp; sourceTree = ""; }; - 80BB89F1141C3E6900F1753A /* glui_control.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = glui_control.cpp; sourceTree = ""; }; - 80BB89F2141C3E6900F1753A /* glui_edittext.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = glui_edittext.cpp; sourceTree = ""; }; - 80BB89F3141C3E6900F1753A /* glui_filebrowser.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = glui_filebrowser.cpp; sourceTree = ""; }; - 80BB89F4141C3E6900F1753A /* glui_internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = glui_internal.h; sourceTree = ""; }; - 80BB89F5141C3E6900F1753A /* glui_internal_control.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = glui_internal_control.h; sourceTree = ""; }; - 80BB89F6141C3E6900F1753A /* glui_list.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = glui_list.cpp; sourceTree = ""; }; - 80BB89F7141C3E6900F1753A /* glui_listbox.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = glui_listbox.cpp; sourceTree = ""; }; - 80BB89F8141C3E6900F1753A /* glui_mouse_iaction.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = glui_mouse_iaction.cpp; sourceTree = ""; }; - 80BB89F9141C3E6900F1753A /* glui_node.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = glui_node.cpp; sourceTree = ""; }; - 80BB89FA141C3E6900F1753A /* glui_panel.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = glui_panel.cpp; sourceTree = ""; }; - 80BB89FB141C3E6900F1753A /* glui_radio.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = glui_radio.cpp; sourceTree = ""; }; - 80BB89FC141C3E6900F1753A /* glui_rollout.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = glui_rollout.cpp; sourceTree = ""; }; - 80BB89FD141C3E6900F1753A /* glui_rotation.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = glui_rotation.cpp; sourceTree = ""; }; - 80BB89FE141C3E6900F1753A /* glui_scrollbar.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = glui_scrollbar.cpp; sourceTree = ""; }; - 80BB89FF141C3E6900F1753A /* glui_separator.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = glui_separator.cpp; sourceTree = ""; }; - 80BB8A00141C3E6900F1753A /* glui_spinner.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = glui_spinner.cpp; sourceTree = ""; }; - 80BB8A01141C3E6900F1753A /* glui_statictext.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = glui_statictext.cpp; sourceTree = ""; }; - 80BB8A02141C3E6900F1753A /* glui_string.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = glui_string.cpp; sourceTree = ""; }; - 80BB8A03141C3E6900F1753A /* glui_textbox.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = glui_textbox.cpp; sourceTree = ""; }; - 80BB8A04141C3E6900F1753A /* glui_translation.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = glui_translation.cpp; sourceTree = ""; }; - 80BB8A05141C3E6900F1753A /* glui_tree.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = glui_tree.cpp; sourceTree = ""; }; - 80BB8A06141C3E6900F1753A /* glui_treepanel.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = glui_treepanel.cpp; sourceTree = ""; }; - 80BB8A07141C3E6900F1753A /* glui_window.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = glui_window.cpp; sourceTree = ""; }; - 80BB8A08141C3E6900F1753A /* quaternion.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = quaternion.cpp; sourceTree = ""; }; - 80BB8A09141C3E6900F1753A /* quaternion.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = quaternion.h; sourceTree = ""; }; - 80BB8A0A141C3E6900F1753A /* readme.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = readme.txt; sourceTree = ""; }; - 80BB8A32141C3E7B00F1753A /* CMakeLists.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = CMakeLists.txt; sourceTree = ""; }; - 80BB8A33141C3E7B00F1753A /* HelloWorld.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = HelloWorld.cpp; sourceTree = ""; }; - 80BB8A36141C3E8500F1753A /* CMakeLists.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = CMakeLists.txt; sourceTree = ""; }; - 80BB8A38141C3E8500F1753A /* Main.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Main.cpp; sourceTree = ""; }; - 80BB8A39141C3E8500F1753A /* Render.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Render.cpp; sourceTree = ""; }; - 80BB8A3A141C3E8500F1753A /* Render.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Render.h; sourceTree = ""; }; - 80BB8A3B141C3E8500F1753A /* Test.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Test.cpp; sourceTree = ""; }; - 80BB8A3C141C3E8500F1753A /* Test.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Test.h; sourceTree = ""; }; - 80BB8A3E141C3E8500F1753A /* AddPair.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AddPair.h; sourceTree = ""; }; - 80BB8A3F141C3E8500F1753A /* ApplyForce.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ApplyForce.h; sourceTree = ""; }; - 80BB8A40141C3E8500F1753A /* BodyTypes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BodyTypes.h; sourceTree = ""; }; - 80BB8A41141C3E8500F1753A /* Breakable.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Breakable.h; sourceTree = ""; }; - 80BB8A42141C3E8500F1753A /* Bridge.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Bridge.h; sourceTree = ""; }; - 80BB8A43141C3E8500F1753A /* BulletTest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BulletTest.h; sourceTree = ""; }; - 80BB8A44141C3E8500F1753A /* Cantilever.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Cantilever.h; sourceTree = ""; }; - 80BB8A45141C3E8500F1753A /* Car.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Car.h; sourceTree = ""; }; - 80BB8A46141C3E8500F1753A /* Chain.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Chain.h; sourceTree = ""; }; - 80BB8A47141C3E8500F1753A /* CharacterCollision.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CharacterCollision.h; sourceTree = ""; }; - 80BB8A48141C3E8500F1753A /* CollisionFiltering.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CollisionFiltering.h; sourceTree = ""; }; - 80BB8A49141C3E8500F1753A /* CollisionProcessing.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CollisionProcessing.h; sourceTree = ""; }; - 80BB8A4A141C3E8500F1753A /* CompoundShapes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CompoundShapes.h; sourceTree = ""; }; - 80BB8A4B141C3E8600F1753A /* Confined.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Confined.h; sourceTree = ""; }; - 80BB8A4C141C3E8600F1753A /* ContinuousTest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ContinuousTest.h; sourceTree = ""; }; - 80BB8A4D141C3E8600F1753A /* DistanceTest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DistanceTest.h; sourceTree = ""; }; - 80BB8A4E141C3E8600F1753A /* Dominos.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Dominos.h; sourceTree = ""; }; - 80BB8A4F141C3E8600F1753A /* DumpShell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DumpShell.h; sourceTree = ""; }; - 80BB8A50141C3E8600F1753A /* DynamicTreeTest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DynamicTreeTest.h; sourceTree = ""; }; - 80BB8A51141C3E8600F1753A /* EdgeShapes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EdgeShapes.h; sourceTree = ""; }; - 80BB8A52141C3E8600F1753A /* EdgeTest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EdgeTest.h; sourceTree = ""; }; - 80BB8A53141C3E8600F1753A /* Gears.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Gears.h; sourceTree = ""; }; - 80BB8A54141C3E8600F1753A /* OneSidedPlatform.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = OneSidedPlatform.h; sourceTree = ""; }; - 80BB8A55141C3E8600F1753A /* Pinball.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Pinball.h; sourceTree = ""; }; - 80BB8A56141C3E8600F1753A /* PolyCollision.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PolyCollision.h; sourceTree = ""; }; - 80BB8A57141C3E8600F1753A /* PolyShapes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PolyShapes.h; sourceTree = ""; }; - 80BB8A58141C3E8600F1753A /* Prismatic.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Prismatic.h; sourceTree = ""; }; - 80BB8A59141C3E8600F1753A /* Pulleys.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Pulleys.h; sourceTree = ""; }; - 80BB8A5A141C3E8600F1753A /* Pyramid.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Pyramid.h; sourceTree = ""; }; - 80BB8A5B141C3E8600F1753A /* RayCast.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RayCast.h; sourceTree = ""; }; - 80BB8A5C141C3E8600F1753A /* Revolute.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Revolute.h; sourceTree = ""; }; - 80BB8A5D141C3E8600F1753A /* Rope.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Rope.h; sourceTree = ""; }; - 80BB8A5E141C3E8600F1753A /* RopeJoint.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RopeJoint.h; sourceTree = ""; }; - 80BB8A5F141C3E8600F1753A /* SensorTest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SensorTest.h; sourceTree = ""; }; - 80BB8A60141C3E8600F1753A /* ShapeEditing.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ShapeEditing.h; sourceTree = ""; }; - 80BB8A61141C3E8600F1753A /* SliderCrank.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SliderCrank.h; sourceTree = ""; }; - 80BB8A62141C3E8600F1753A /* SphereStack.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SphereStack.h; sourceTree = ""; }; - 80BB8A63141C3E8600F1753A /* TestEntries.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TestEntries.cpp; sourceTree = ""; }; - 80BB8A64141C3E8600F1753A /* TheoJansen.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TheoJansen.h; sourceTree = ""; }; - 80BB8A65141C3E8600F1753A /* Tiles.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Tiles.h; sourceTree = ""; }; - 80BB8A66141C3E8600F1753A /* TimeOfImpact.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TimeOfImpact.h; sourceTree = ""; }; - 80BB8A67141C3E8600F1753A /* VaryingFriction.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = VaryingFriction.h; sourceTree = ""; }; - 80BB8A68141C3E8600F1753A /* VaryingRestitution.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = VaryingRestitution.h; sourceTree = ""; }; - 80BB8A69141C3E8600F1753A /* VerticalStack.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = VerticalStack.h; sourceTree = ""; }; - 80BB8A6A141C3E8600F1753A /* Web.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Web.h; sourceTree = ""; }; - 80BB8A78141C3F9C00F1753A /* GLUT.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = GLUT.framework; path = System/Library/Frameworks/GLUT.framework; sourceTree = SDKROOT; }; - 80BB8A7A141C3FA700F1753A /* OpenGL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGL.framework; path = System/Library/Frameworks/OpenGL.framework; sourceTree = SDKROOT; }; - 80CD7722143AF3230086DB87 /* ConvexHull.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ConvexHull.h; sourceTree = ""; }; - 80FF01D2141C3D980059E59D /* libBox2D.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libBox2D.a; sourceTree = BUILT_PRODUCTS_DIR; }; -/* End PBXFileReference section */ - -/* Begin PBXFrameworksBuildPhase section */ - 80BB88FE141C3E1800F1753A /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 80BB8907141C3E2600F1753A /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 80BB8A75141C3F4C00F1753A /* libBox2D.a in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 80BB8915141C3E3600F1753A /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 80BB8A7B141C3FA700F1753A /* OpenGL.framework in Frameworks */, - 80BB8A79141C3F9C00F1753A /* GLUT.framework in Frameworks */, - 80BB8A76141C3F7600F1753A /* libBox2D.a in Frameworks */, - 80BB8A77141C3F7600F1753A /* libGLUI.a in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 80FF01CF141C3D980059E59D /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXFrameworksBuildPhase section */ - -/* Begin PBXGroup section */ - 80BB8922141C3E5900F1753A /* Box2D */ = { - isa = PBXGroup; - children = ( - 80BB8923141C3E5900F1753A /* Box2D.h */, - 80BB8924141C3E5900F1753A /* Box2DConfig.cmake */, - 80BB8925141C3E5900F1753A /* CMakeLists.txt */, - 80BB8926141C3E5900F1753A /* Collision */, - 80BB893E141C3E5900F1753A /* Common */, - 80BB894C141C3E5900F1753A /* Dynamics */, - 80BB8984141C3E5900F1753A /* Rope */, - ); - name = Box2D; - path = ../../Box2D; - sourceTree = ""; - }; - 80BB8926141C3E5900F1753A /* Collision */ = { - isa = PBXGroup; - children = ( - 80BB8927141C3E5900F1753A /* b2BroadPhase.cpp */, - 80BB8928141C3E5900F1753A /* b2BroadPhase.h */, - 80BB8929141C3E5900F1753A /* b2CollideCircle.cpp */, - 80BB892A141C3E5900F1753A /* b2CollideEdge.cpp */, - 80BB892B141C3E5900F1753A /* b2CollidePolygon.cpp */, - 80BB892C141C3E5900F1753A /* b2Collision.cpp */, - 80BB892D141C3E5900F1753A /* b2Collision.h */, - 80BB892E141C3E5900F1753A /* b2Distance.cpp */, - 80BB892F141C3E5900F1753A /* b2Distance.h */, - 80BB8930141C3E5900F1753A /* b2DynamicTree.cpp */, - 80BB8931141C3E5900F1753A /* b2DynamicTree.h */, - 80BB8932141C3E5900F1753A /* b2TimeOfImpact.cpp */, - 80BB8933141C3E5900F1753A /* b2TimeOfImpact.h */, - 80BB8934141C3E5900F1753A /* Shapes */, - ); - path = Collision; - sourceTree = ""; - }; - 80BB8934141C3E5900F1753A /* Shapes */ = { - isa = PBXGroup; - children = ( - 80BB8935141C3E5900F1753A /* b2ChainShape.cpp */, - 80BB8936141C3E5900F1753A /* b2ChainShape.h */, - 80BB8937141C3E5900F1753A /* b2CircleShape.cpp */, - 80BB8938141C3E5900F1753A /* b2CircleShape.h */, - 80BB8939141C3E5900F1753A /* b2EdgeShape.cpp */, - 80BB893A141C3E5900F1753A /* b2EdgeShape.h */, - 80BB893B141C3E5900F1753A /* b2PolygonShape.cpp */, - 80BB893C141C3E5900F1753A /* b2PolygonShape.h */, - 80BB893D141C3E5900F1753A /* b2Shape.h */, - ); - path = Shapes; - sourceTree = ""; - }; - 80BB893E141C3E5900F1753A /* Common */ = { - isa = PBXGroup; - children = ( - 80BB893F141C3E5900F1753A /* b2BlockAllocator.cpp */, - 80BB8940141C3E5900F1753A /* b2BlockAllocator.h */, - 80BB8941141C3E5900F1753A /* b2Draw.cpp */, - 80BB8942141C3E5900F1753A /* b2Draw.h */, - 80BB8943141C3E5900F1753A /* b2GrowableStack.h */, - 80BB8944141C3E5900F1753A /* b2Math.cpp */, - 80BB8945141C3E5900F1753A /* b2Math.h */, - 80BB8946141C3E5900F1753A /* b2Settings.cpp */, - 80BB8947141C3E5900F1753A /* b2Settings.h */, - 80BB8948141C3E5900F1753A /* b2StackAllocator.cpp */, - 80BB8949141C3E5900F1753A /* b2StackAllocator.h */, - 80BB894A141C3E5900F1753A /* b2Timer.cpp */, - 80BB894B141C3E5900F1753A /* b2Timer.h */, - ); - path = Common; - sourceTree = ""; - }; - 80BB894C141C3E5900F1753A /* Dynamics */ = { - isa = PBXGroup; - children = ( - 80BB894D141C3E5900F1753A /* b2Body.cpp */, - 80BB894E141C3E5900F1753A /* b2Body.h */, - 80BB894F141C3E5900F1753A /* b2ContactManager.cpp */, - 80BB8950141C3E5900F1753A /* b2ContactManager.h */, - 80BB8951141C3E5900F1753A /* b2Fixture.cpp */, - 80BB8952141C3E5900F1753A /* b2Fixture.h */, - 80BB8953141C3E5900F1753A /* b2Island.cpp */, - 80BB8954141C3E5900F1753A /* b2Island.h */, - 80BB8955141C3E5900F1753A /* b2TimeStep.h */, - 80BB8956141C3E5900F1753A /* b2World.cpp */, - 80BB8957141C3E5900F1753A /* b2World.h */, - 80BB8958141C3E5900F1753A /* b2WorldCallbacks.cpp */, - 80BB8959141C3E5900F1753A /* b2WorldCallbacks.h */, - 80BB895A141C3E5900F1753A /* Contacts */, - 80BB896D141C3E5900F1753A /* Joints */, - ); - path = Dynamics; - sourceTree = ""; - }; - 80BB895A141C3E5900F1753A /* Contacts */ = { - isa = PBXGroup; - children = ( - 80BB895B141C3E5900F1753A /* b2ChainAndCircleContact.cpp */, - 80BB895C141C3E5900F1753A /* b2ChainAndCircleContact.h */, - 80BB895D141C3E5900F1753A /* b2ChainAndPolygonContact.cpp */, - 80BB895E141C3E5900F1753A /* b2ChainAndPolygonContact.h */, - 80BB895F141C3E5900F1753A /* b2CircleContact.cpp */, - 80BB8960141C3E5900F1753A /* b2CircleContact.h */, - 80BB8961141C3E5900F1753A /* b2Contact.cpp */, - 80BB8962141C3E5900F1753A /* b2Contact.h */, - 80BB8963141C3E5900F1753A /* b2ContactSolver.cpp */, - 80BB8964141C3E5900F1753A /* b2ContactSolver.h */, - 80BB8965141C3E5900F1753A /* b2EdgeAndCircleContact.cpp */, - 80BB8966141C3E5900F1753A /* b2EdgeAndCircleContact.h */, - 80BB8967141C3E5900F1753A /* b2EdgeAndPolygonContact.cpp */, - 80BB8968141C3E5900F1753A /* b2EdgeAndPolygonContact.h */, - 80BB8969141C3E5900F1753A /* b2PolygonAndCircleContact.cpp */, - 80BB896A141C3E5900F1753A /* b2PolygonAndCircleContact.h */, - 80BB896B141C3E5900F1753A /* b2PolygonContact.cpp */, - 80BB896C141C3E5900F1753A /* b2PolygonContact.h */, - ); - path = Contacts; - sourceTree = ""; - }; - 80BB896D141C3E5900F1753A /* Joints */ = { - isa = PBXGroup; - children = ( - 80620F8D168B934600D46C8D /* b2MotorJoint.cpp */, - 80620F8E168B934600D46C8D /* b2MotorJoint.h */, - 80BB896E141C3E5900F1753A /* b2DistanceJoint.cpp */, - 80BB896F141C3E5900F1753A /* b2DistanceJoint.h */, - 80BB8970141C3E5900F1753A /* b2FrictionJoint.cpp */, - 80BB8971141C3E5900F1753A /* b2FrictionJoint.h */, - 80BB8972141C3E5900F1753A /* b2GearJoint.cpp */, - 80BB8973141C3E5900F1753A /* b2GearJoint.h */, - 80BB8974141C3E5900F1753A /* b2Joint.cpp */, - 80BB8975141C3E5900F1753A /* b2Joint.h */, - 80BB8976141C3E5900F1753A /* b2MouseJoint.cpp */, - 80BB8977141C3E5900F1753A /* b2MouseJoint.h */, - 80BB8978141C3E5900F1753A /* b2PrismaticJoint.cpp */, - 80BB8979141C3E5900F1753A /* b2PrismaticJoint.h */, - 80BB897A141C3E5900F1753A /* b2PulleyJoint.cpp */, - 80BB897B141C3E5900F1753A /* b2PulleyJoint.h */, - 80BB897C141C3E5900F1753A /* b2RevoluteJoint.cpp */, - 80BB897D141C3E5900F1753A /* b2RevoluteJoint.h */, - 80BB897E141C3E5900F1753A /* b2RopeJoint.cpp */, - 80BB897F141C3E5900F1753A /* b2RopeJoint.h */, - 80BB8980141C3E5900F1753A /* b2WeldJoint.cpp */, - 80BB8981141C3E5900F1753A /* b2WeldJoint.h */, - 80BB8982141C3E5900F1753A /* b2WheelJoint.cpp */, - 80BB8983141C3E5900F1753A /* b2WheelJoint.h */, - ); - path = Joints; - sourceTree = ""; - }; - 80BB8984141C3E5900F1753A /* Rope */ = { - isa = PBXGroup; - children = ( - 80BB8985141C3E5900F1753A /* b2Rope.cpp */, - 80BB8986141C3E5900F1753A /* b2Rope.h */, - ); - path = Rope; - sourceTree = ""; - }; - 80BB89E2141C3E6900F1753A /* glui */ = { - isa = PBXGroup; - children = ( - 80BB89E3141C3E6900F1753A /* algebra3.cpp */, - 80BB89E4141C3E6900F1753A /* algebra3.h */, - 80BB89E5141C3E6900F1753A /* arcball.cpp */, - 80BB89E6141C3E6900F1753A /* arcball.h */, - 80BB89E7141C3E6900F1753A /* CMakeLists.txt */, - 80BB89E8141C3E6900F1753A /* glui.cpp */, - 80BB89E9141C3E6900F1753A /* glui.h */, - 80BB89EA141C3E6900F1753A /* glui_add_controls.cpp */, - 80BB89EB141C3E6900F1753A /* glui_bitmap_img_data.cpp */, - 80BB89EC141C3E6900F1753A /* glui_bitmaps.cpp */, - 80BB89ED141C3E6900F1753A /* glui_button.cpp */, - 80BB89EE141C3E6900F1753A /* glui_checkbox.cpp */, - 80BB89EF141C3E6900F1753A /* glui_column.cpp */, - 80BB89F0141C3E6900F1753A /* glui_commandline.cpp */, - 80BB89F1141C3E6900F1753A /* glui_control.cpp */, - 80BB89F2141C3E6900F1753A /* glui_edittext.cpp */, - 80BB89F3141C3E6900F1753A /* glui_filebrowser.cpp */, - 80BB89F4141C3E6900F1753A /* glui_internal.h */, - 80BB89F5141C3E6900F1753A /* glui_internal_control.h */, - 80BB89F6141C3E6900F1753A /* glui_list.cpp */, - 80BB89F7141C3E6900F1753A /* glui_listbox.cpp */, - 80BB89F8141C3E6900F1753A /* glui_mouse_iaction.cpp */, - 80BB89F9141C3E6900F1753A /* glui_node.cpp */, - 80BB89FA141C3E6900F1753A /* glui_panel.cpp */, - 80BB89FB141C3E6900F1753A /* glui_radio.cpp */, - 80BB89FC141C3E6900F1753A /* glui_rollout.cpp */, - 80BB89FD141C3E6900F1753A /* glui_rotation.cpp */, - 80BB89FE141C3E6900F1753A /* glui_scrollbar.cpp */, - 80BB89FF141C3E6900F1753A /* glui_separator.cpp */, - 80BB8A00141C3E6900F1753A /* glui_spinner.cpp */, - 80BB8A01141C3E6900F1753A /* glui_statictext.cpp */, - 80BB8A02141C3E6900F1753A /* glui_string.cpp */, - 80BB8A03141C3E6900F1753A /* glui_textbox.cpp */, - 80BB8A04141C3E6900F1753A /* glui_translation.cpp */, - 80BB8A05141C3E6900F1753A /* glui_tree.cpp */, - 80BB8A06141C3E6900F1753A /* glui_treepanel.cpp */, - 80BB8A07141C3E6900F1753A /* glui_window.cpp */, - 80BB8A08141C3E6900F1753A /* quaternion.cpp */, - 80BB8A09141C3E6900F1753A /* quaternion.h */, - 80BB8A0A141C3E6900F1753A /* readme.txt */, - ); - name = glui; - path = ../../glui; - sourceTree = ""; - }; - 80BB8A31141C3E7B00F1753A /* HelloWorld */ = { - isa = PBXGroup; - children = ( - 80BB8A32141C3E7B00F1753A /* CMakeLists.txt */, - 80BB8A33141C3E7B00F1753A /* HelloWorld.cpp */, - ); - name = HelloWorld; - path = ../../HelloWorld; - sourceTree = ""; - }; - 80BB8A35141C3E8500F1753A /* Testbed */ = { - isa = PBXGroup; - children = ( - 80BB8A36141C3E8500F1753A /* CMakeLists.txt */, - 80BB8A37141C3E8500F1753A /* Framework */, - 80BB8A3D141C3E8500F1753A /* Tests */, - ); - name = Testbed; - path = ../../Testbed; - sourceTree = ""; - }; - 80BB8A37141C3E8500F1753A /* Framework */ = { - isa = PBXGroup; - children = ( - 80BB8A38141C3E8500F1753A /* Main.cpp */, - 80BB8A39141C3E8500F1753A /* Render.cpp */, - 80BB8A3A141C3E8500F1753A /* Render.h */, - 80BB8A3B141C3E8500F1753A /* Test.cpp */, - 80BB8A3C141C3E8500F1753A /* Test.h */, - ); - path = Framework; - sourceTree = ""; - }; - 80BB8A3D141C3E8500F1753A /* Tests */ = { - isa = PBXGroup; - children = ( - 80BB8A3E141C3E8500F1753A /* AddPair.h */, - 80BB8A3F141C3E8500F1753A /* ApplyForce.h */, - 80BB8A40141C3E8500F1753A /* BodyTypes.h */, - 80BB8A41141C3E8500F1753A /* Breakable.h */, - 80BB8A42141C3E8500F1753A /* Bridge.h */, - 80BB8A43141C3E8500F1753A /* BulletTest.h */, - 80BB8A44141C3E8500F1753A /* Cantilever.h */, - 80BB8A45141C3E8500F1753A /* Car.h */, - 80BB8A46141C3E8500F1753A /* Chain.h */, - 80BB8A47141C3E8500F1753A /* CharacterCollision.h */, - 80BB8A48141C3E8500F1753A /* CollisionFiltering.h */, - 80BB8A49141C3E8500F1753A /* CollisionProcessing.h */, - 80BB8A4A141C3E8500F1753A /* CompoundShapes.h */, - 80BB8A4B141C3E8600F1753A /* Confined.h */, - 80BB8A4C141C3E8600F1753A /* ContinuousTest.h */, - 80CD7722143AF3230086DB87 /* ConvexHull.h */, - 80BB8A4D141C3E8600F1753A /* DistanceTest.h */, - 80BB8A4E141C3E8600F1753A /* Dominos.h */, - 80BB8A4F141C3E8600F1753A /* DumpShell.h */, - 80BB8A50141C3E8600F1753A /* DynamicTreeTest.h */, - 80BB8A51141C3E8600F1753A /* EdgeShapes.h */, - 80BB8A52141C3E8600F1753A /* EdgeTest.h */, - 80BB8A53141C3E8600F1753A /* Gears.h */, - 80BB8A54141C3E8600F1753A /* OneSidedPlatform.h */, - 80BB8A55141C3E8600F1753A /* Pinball.h */, - 80BB8A56141C3E8600F1753A /* PolyCollision.h */, - 80BB8A57141C3E8600F1753A /* PolyShapes.h */, - 80BB8A58141C3E8600F1753A /* Prismatic.h */, - 80BB8A59141C3E8600F1753A /* Pulleys.h */, - 80BB8A5A141C3E8600F1753A /* Pyramid.h */, - 80BB8A5B141C3E8600F1753A /* RayCast.h */, - 80BB8A5C141C3E8600F1753A /* Revolute.h */, - 80BB8A5D141C3E8600F1753A /* Rope.h */, - 80BB8A5E141C3E8600F1753A /* RopeJoint.h */, - 80BB8A5F141C3E8600F1753A /* SensorTest.h */, - 80BB8A60141C3E8600F1753A /* ShapeEditing.h */, - 80BB8A61141C3E8600F1753A /* SliderCrank.h */, - 80BB8A62141C3E8600F1753A /* SphereStack.h */, - 80BB8A63141C3E8600F1753A /* TestEntries.cpp */, - 80BB8A64141C3E8600F1753A /* TheoJansen.h */, - 80BB8A65141C3E8600F1753A /* Tiles.h */, - 80BB8A66141C3E8600F1753A /* TimeOfImpact.h */, - 80154ACD141DED6B00C8251F /* Tumbler.h */, - 80BB8A67141C3E8600F1753A /* VaryingFriction.h */, - 80BB8A68141C3E8600F1753A /* VaryingRestitution.h */, - 80BB8A69141C3E8600F1753A /* VerticalStack.h */, - 80BB8A6A141C3E8600F1753A /* Web.h */, - ); - path = Tests; - sourceTree = ""; - }; - 80FF01C7141C3D980059E59D = { - isa = PBXGroup; - children = ( - 80BB8A7A141C3FA700F1753A /* OpenGL.framework */, - 80BB8A78141C3F9C00F1753A /* GLUT.framework */, - 80BB8A35141C3E8500F1753A /* Testbed */, - 80BB8A31141C3E7B00F1753A /* HelloWorld */, - 80BB89E2141C3E6900F1753A /* glui */, - 80BB8922141C3E5900F1753A /* Box2D */, - 80FF01D3141C3D980059E59D /* Products */, - ); - sourceTree = ""; - }; - 80FF01D3141C3D980059E59D /* Products */ = { - isa = PBXGroup; - children = ( - 80FF01D2141C3D980059E59D /* libBox2D.a */, - 80BB8901141C3E1800F1753A /* libGLUI.a */, - 80BB890A141C3E2700F1753A /* HelloWorld */, - 80BB8918141C3E3600F1753A /* Testbed */, - ); - name = Products; - sourceTree = ""; - }; -/* End PBXGroup section */ - -/* Begin PBXHeadersBuildPhase section */ - 80BB88FF141C3E1800F1753A /* Headers */ = { - isa = PBXHeadersBuildPhase; - buildActionMask = 2147483647; - files = ( - 80BB8A0C141C3E6900F1753A /* algebra3.h in Headers */, - 80BB8A0E141C3E6900F1753A /* arcball.h in Headers */, - 80BB8A10141C3E6900F1753A /* glui.h in Headers */, - 80BB8A1B141C3E6900F1753A /* glui_internal.h in Headers */, - 80BB8A1C141C3E6900F1753A /* glui_internal_control.h in Headers */, - 80BB8A30141C3E6900F1753A /* quaternion.h in Headers */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 80FF01D0141C3D980059E59D /* Headers */ = { - isa = PBXHeadersBuildPhase; - buildActionMask = 2147483647; - files = ( - 80BB8987141C3E5900F1753A /* Box2D.h in Headers */, - 80BB8989141C3E5900F1753A /* b2BroadPhase.h in Headers */, - 80BB898E141C3E5900F1753A /* b2Collision.h in Headers */, - 80BB8990141C3E5900F1753A /* b2Distance.h in Headers */, - 80BB8992141C3E5900F1753A /* b2DynamicTree.h in Headers */, - 80BB8994141C3E5900F1753A /* b2TimeOfImpact.h in Headers */, - 80BB8996141C3E5900F1753A /* b2ChainShape.h in Headers */, - 80BB8998141C3E5900F1753A /* b2CircleShape.h in Headers */, - 80BB899A141C3E5900F1753A /* b2EdgeShape.h in Headers */, - 80BB899C141C3E5900F1753A /* b2PolygonShape.h in Headers */, - 80BB899D141C3E5900F1753A /* b2Shape.h in Headers */, - 80BB899F141C3E5900F1753A /* b2BlockAllocator.h in Headers */, - 80BB89A1141C3E5900F1753A /* b2Draw.h in Headers */, - 80BB89A2141C3E5900F1753A /* b2GrowableStack.h in Headers */, - 80BB89A4141C3E5900F1753A /* b2Math.h in Headers */, - 80BB89A6141C3E5900F1753A /* b2Settings.h in Headers */, - 80BB89A8141C3E5900F1753A /* b2StackAllocator.h in Headers */, - 80BB89AA141C3E5900F1753A /* b2Timer.h in Headers */, - 80BB89AC141C3E5900F1753A /* b2Body.h in Headers */, - 80BB89AE141C3E5900F1753A /* b2ContactManager.h in Headers */, - 80BB89B0141C3E5900F1753A /* b2Fixture.h in Headers */, - 80BB89B2141C3E5900F1753A /* b2Island.h in Headers */, - 80BB89B3141C3E5900F1753A /* b2TimeStep.h in Headers */, - 80BB89B5141C3E5900F1753A /* b2World.h in Headers */, - 80BB89B7141C3E5900F1753A /* b2WorldCallbacks.h in Headers */, - 80BB89B9141C3E5900F1753A /* b2ChainAndCircleContact.h in Headers */, - 80BB89BB141C3E5900F1753A /* b2ChainAndPolygonContact.h in Headers */, - 80BB89BD141C3E5900F1753A /* b2CircleContact.h in Headers */, - 80BB89BF141C3E5900F1753A /* b2Contact.h in Headers */, - 80BB89C1141C3E5900F1753A /* b2ContactSolver.h in Headers */, - 80BB89C3141C3E5900F1753A /* b2EdgeAndCircleContact.h in Headers */, - 80BB89C5141C3E5900F1753A /* b2EdgeAndPolygonContact.h in Headers */, - 80BB89C7141C3E5900F1753A /* b2PolygonAndCircleContact.h in Headers */, - 80BB89C9141C3E5900F1753A /* b2PolygonContact.h in Headers */, - 80BB89CB141C3E5900F1753A /* b2DistanceJoint.h in Headers */, - 80BB89CD141C3E5900F1753A /* b2FrictionJoint.h in Headers */, - 80BB89CF141C3E5900F1753A /* b2GearJoint.h in Headers */, - 80BB89D1141C3E5900F1753A /* b2Joint.h in Headers */, - 80BB89D3141C3E5900F1753A /* b2MouseJoint.h in Headers */, - 80BB89D5141C3E5900F1753A /* b2PrismaticJoint.h in Headers */, - 80BB89D7141C3E5900F1753A /* b2PulleyJoint.h in Headers */, - 80BB89D9141C3E5900F1753A /* b2RevoluteJoint.h in Headers */, - 80BB89DB141C3E5900F1753A /* b2RopeJoint.h in Headers */, - 80BB89DD141C3E5900F1753A /* b2WeldJoint.h in Headers */, - 80BB89DF141C3E5900F1753A /* b2WheelJoint.h in Headers */, - 80BB89E1141C3E5900F1753A /* b2Rope.h in Headers */, - 80620F90168B934600D46C8D /* b2MotorJoint.h in Headers */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXHeadersBuildPhase section */ - -/* Begin PBXNativeTarget section */ - 80BB8900141C3E1800F1753A /* GLUI */ = { - isa = PBXNativeTarget; - buildConfigurationList = 80BB8904141C3E1800F1753A /* Build configuration list for PBXNativeTarget "GLUI" */; - buildPhases = ( - 80BB88FD141C3E1800F1753A /* Sources */, - 80BB88FE141C3E1800F1753A /* Frameworks */, - 80BB88FF141C3E1800F1753A /* Headers */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = GLUI; - productName = GLUI; - productReference = 80BB8901141C3E1800F1753A /* libGLUI.a */; - productType = "com.apple.product-type.library.static"; - }; - 80BB8909141C3E2600F1753A /* HelloWorld */ = { - isa = PBXNativeTarget; - buildConfigurationList = 80BB8911141C3E2700F1753A /* Build configuration list for PBXNativeTarget "HelloWorld" */; - buildPhases = ( - 80BB8906141C3E2600F1753A /* Sources */, - 80BB8907141C3E2600F1753A /* Frameworks */, - 80BB8908141C3E2600F1753A /* CopyFiles */, - ); - buildRules = ( - ); - dependencies = ( - 80BB8A70141C3EA100F1753A /* PBXTargetDependency */, - ); - name = HelloWorld; - productName = HelloWorld; - productReference = 80BB890A141C3E2700F1753A /* HelloWorld */; - productType = "com.apple.product-type.tool"; - }; - 80BB8917141C3E3600F1753A /* Testbed */ = { - isa = PBXNativeTarget; - buildConfigurationList = 80BB891F141C3E3600F1753A /* Build configuration list for PBXNativeTarget "Testbed" */; - buildPhases = ( - 80BB8914141C3E3600F1753A /* Sources */, - 80BB8915141C3E3600F1753A /* Frameworks */, - 80BB8916141C3E3600F1753A /* CopyFiles */, - ); - buildRules = ( - ); - dependencies = ( - 80BB8A72141C3EA800F1753A /* PBXTargetDependency */, - 80BB8A74141C3EA800F1753A /* PBXTargetDependency */, - ); - name = Testbed; - productName = Testbed; - productReference = 80BB8918141C3E3600F1753A /* Testbed */; - productType = "com.apple.product-type.tool"; - }; - 80FF01D1141C3D980059E59D /* Box2D */ = { - isa = PBXNativeTarget; - buildConfigurationList = 80FF01D6141C3D980059E59D /* Build configuration list for PBXNativeTarget "Box2D" */; - buildPhases = ( - 80FF01CE141C3D980059E59D /* Sources */, - 80FF01CF141C3D980059E59D /* Frameworks */, - 80FF01D0141C3D980059E59D /* Headers */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = Box2D; - productName = Box2D; - productReference = 80FF01D2141C3D980059E59D /* libBox2D.a */; - productType = "com.apple.product-type.library.static"; - }; -/* End PBXNativeTarget section */ - -/* Begin PBXProject section */ - 80FF01C9141C3D980059E59D /* Project object */ = { - isa = PBXProject; - attributes = { - LastUpgradeCheck = 0500; - }; - buildConfigurationList = 80FF01CC141C3D980059E59D /* Build configuration list for PBXProject "Box2D" */; - compatibilityVersion = "Xcode 3.2"; - developmentRegion = English; - hasScannedForEncodings = 0; - knownRegions = ( - en, - ); - mainGroup = 80FF01C7141C3D980059E59D; - productRefGroup = 80FF01D3141C3D980059E59D /* Products */; - projectDirPath = ""; - projectRoot = ""; - targets = ( - 80FF01D1141C3D980059E59D /* Box2D */, - 80BB8900141C3E1800F1753A /* GLUI */, - 80BB8909141C3E2600F1753A /* HelloWorld */, - 80BB8917141C3E3600F1753A /* Testbed */, - ); - }; -/* End PBXProject section */ - -/* Begin PBXSourcesBuildPhase section */ - 80BB88FD141C3E1800F1753A /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 80BB8A0B141C3E6900F1753A /* algebra3.cpp in Sources */, - 80BB8A0D141C3E6900F1753A /* arcball.cpp in Sources */, - 80BB8A0F141C3E6900F1753A /* glui.cpp in Sources */, - 80BB8A11141C3E6900F1753A /* glui_add_controls.cpp in Sources */, - 80BB8A12141C3E6900F1753A /* glui_bitmap_img_data.cpp in Sources */, - 80BB8A13141C3E6900F1753A /* glui_bitmaps.cpp in Sources */, - 80BB8A14141C3E6900F1753A /* glui_button.cpp in Sources */, - 80BB8A15141C3E6900F1753A /* glui_checkbox.cpp in Sources */, - 80BB8A16141C3E6900F1753A /* glui_column.cpp in Sources */, - 80BB8A17141C3E6900F1753A /* glui_commandline.cpp in Sources */, - 80BB8A18141C3E6900F1753A /* glui_control.cpp in Sources */, - 80BB8A19141C3E6900F1753A /* glui_edittext.cpp in Sources */, - 80BB8A1A141C3E6900F1753A /* glui_filebrowser.cpp in Sources */, - 80BB8A1D141C3E6900F1753A /* glui_list.cpp in Sources */, - 80BB8A1E141C3E6900F1753A /* glui_listbox.cpp in Sources */, - 80BB8A1F141C3E6900F1753A /* glui_mouse_iaction.cpp in Sources */, - 80BB8A20141C3E6900F1753A /* glui_node.cpp in Sources */, - 80BB8A21141C3E6900F1753A /* glui_panel.cpp in Sources */, - 80BB8A22141C3E6900F1753A /* glui_radio.cpp in Sources */, - 80BB8A23141C3E6900F1753A /* glui_rollout.cpp in Sources */, - 80BB8A24141C3E6900F1753A /* glui_rotation.cpp in Sources */, - 80BB8A25141C3E6900F1753A /* glui_scrollbar.cpp in Sources */, - 80BB8A26141C3E6900F1753A /* glui_separator.cpp in Sources */, - 80BB8A27141C3E6900F1753A /* glui_spinner.cpp in Sources */, - 80BB8A28141C3E6900F1753A /* glui_statictext.cpp in Sources */, - 80BB8A29141C3E6900F1753A /* glui_string.cpp in Sources */, - 80BB8A2A141C3E6900F1753A /* glui_textbox.cpp in Sources */, - 80BB8A2B141C3E6900F1753A /* glui_translation.cpp in Sources */, - 80BB8A2C141C3E6900F1753A /* glui_tree.cpp in Sources */, - 80BB8A2D141C3E6900F1753A /* glui_treepanel.cpp in Sources */, - 80BB8A2E141C3E6900F1753A /* glui_window.cpp in Sources */, - 80BB8A2F141C3E6900F1753A /* quaternion.cpp in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 80BB8906141C3E2600F1753A /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 80BB8A34141C3E7B00F1753A /* HelloWorld.cpp in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 80BB8914141C3E3600F1753A /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 80BB8A6B141C3E8600F1753A /* Main.cpp in Sources */, - 80BB8A6C141C3E8600F1753A /* Render.cpp in Sources */, - 80BB8A6D141C3E8600F1753A /* Test.cpp in Sources */, - 80BB8A6E141C3E8600F1753A /* TestEntries.cpp in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 80FF01CE141C3D980059E59D /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 80BB8988141C3E5900F1753A /* b2BroadPhase.cpp in Sources */, - 80BB898A141C3E5900F1753A /* b2CollideCircle.cpp in Sources */, - 80BB898B141C3E5900F1753A /* b2CollideEdge.cpp in Sources */, - 80BB898C141C3E5900F1753A /* b2CollidePolygon.cpp in Sources */, - 80BB898D141C3E5900F1753A /* b2Collision.cpp in Sources */, - 80BB898F141C3E5900F1753A /* b2Distance.cpp in Sources */, - 80BB8991141C3E5900F1753A /* b2DynamicTree.cpp in Sources */, - 80BB8993141C3E5900F1753A /* b2TimeOfImpact.cpp in Sources */, - 80BB8995141C3E5900F1753A /* b2ChainShape.cpp in Sources */, - 80BB8997141C3E5900F1753A /* b2CircleShape.cpp in Sources */, - 80BB8999141C3E5900F1753A /* b2EdgeShape.cpp in Sources */, - 80BB899B141C3E5900F1753A /* b2PolygonShape.cpp in Sources */, - 80BB899E141C3E5900F1753A /* b2BlockAllocator.cpp in Sources */, - 80BB89A0141C3E5900F1753A /* b2Draw.cpp in Sources */, - 80BB89A3141C3E5900F1753A /* b2Math.cpp in Sources */, - 80BB89A5141C3E5900F1753A /* b2Settings.cpp in Sources */, - 80BB89A7141C3E5900F1753A /* b2StackAllocator.cpp in Sources */, - 80BB89A9141C3E5900F1753A /* b2Timer.cpp in Sources */, - 80BB89AB141C3E5900F1753A /* b2Body.cpp in Sources */, - 80BB89AD141C3E5900F1753A /* b2ContactManager.cpp in Sources */, - 80BB89AF141C3E5900F1753A /* b2Fixture.cpp in Sources */, - 80BB89B1141C3E5900F1753A /* b2Island.cpp in Sources */, - 80BB89B4141C3E5900F1753A /* b2World.cpp in Sources */, - 80BB89B6141C3E5900F1753A /* b2WorldCallbacks.cpp in Sources */, - 80BB89B8141C3E5900F1753A /* b2ChainAndCircleContact.cpp in Sources */, - 80BB89BA141C3E5900F1753A /* b2ChainAndPolygonContact.cpp in Sources */, - 80BB89BC141C3E5900F1753A /* b2CircleContact.cpp in Sources */, - 80BB89BE141C3E5900F1753A /* b2Contact.cpp in Sources */, - 80BB89C0141C3E5900F1753A /* b2ContactSolver.cpp in Sources */, - 80BB89C2141C3E5900F1753A /* b2EdgeAndCircleContact.cpp in Sources */, - 80BB89C4141C3E5900F1753A /* b2EdgeAndPolygonContact.cpp in Sources */, - 80BB89C6141C3E5900F1753A /* b2PolygonAndCircleContact.cpp in Sources */, - 80BB89C8141C3E5900F1753A /* b2PolygonContact.cpp in Sources */, - 80BB89CA141C3E5900F1753A /* b2DistanceJoint.cpp in Sources */, - 80BB89CC141C3E5900F1753A /* b2FrictionJoint.cpp in Sources */, - 80BB89CE141C3E5900F1753A /* b2GearJoint.cpp in Sources */, - 80BB89D0141C3E5900F1753A /* b2Joint.cpp in Sources */, - 80BB89D2141C3E5900F1753A /* b2MouseJoint.cpp in Sources */, - 80BB89D4141C3E5900F1753A /* b2PrismaticJoint.cpp in Sources */, - 80BB89D6141C3E5900F1753A /* b2PulleyJoint.cpp in Sources */, - 80BB89D8141C3E5900F1753A /* b2RevoluteJoint.cpp in Sources */, - 80BB89DA141C3E5900F1753A /* b2RopeJoint.cpp in Sources */, - 80BB89DC141C3E5900F1753A /* b2WeldJoint.cpp in Sources */, - 80BB89DE141C3E5900F1753A /* b2WheelJoint.cpp in Sources */, - 80BB89E0141C3E5900F1753A /* b2Rope.cpp in Sources */, - 80620F8F168B934600D46C8D /* b2MotorJoint.cpp in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXSourcesBuildPhase section */ - -/* Begin PBXTargetDependency section */ - 80BB8A70141C3EA100F1753A /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 80FF01D1141C3D980059E59D /* Box2D */; - targetProxy = 80BB8A6F141C3EA100F1753A /* PBXContainerItemProxy */; - }; - 80BB8A72141C3EA800F1753A /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 80FF01D1141C3D980059E59D /* Box2D */; - targetProxy = 80BB8A71141C3EA800F1753A /* PBXContainerItemProxy */; - }; - 80BB8A74141C3EA800F1753A /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 80BB8900141C3E1800F1753A /* GLUI */; - targetProxy = 80BB8A73141C3EA800F1753A /* PBXContainerItemProxy */; - }; -/* End PBXTargetDependency section */ - -/* Begin XCBuildConfiguration section */ - 80BB8902141C3E1800F1753A /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - COMBINE_HIDPI_IMAGES = YES; - EXECUTABLE_PREFIX = lib; - GCC_WARN_INHIBIT_ALL_WARNINGS = YES; - GCC_WARN_UNUSED_VALUE = NO; - GCC_WARN_UNUSED_VARIABLE = NO; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Debug; - }; - 80BB8903141C3E1800F1753A /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - COMBINE_HIDPI_IMAGES = YES; - EXECUTABLE_PREFIX = lib; - GCC_WARN_INHIBIT_ALL_WARNINGS = YES; - GCC_WARN_UNUSED_VALUE = NO; - GCC_WARN_UNUSED_VARIABLE = NO; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Release; - }; - 80BB8912141C3E2700F1753A /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Debug; - }; - 80BB8913141C3E2700F1753A /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Release; - }; - 80BB8920141C3E3600F1753A /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - GCC_ENABLE_CPP_EXCEPTIONS = NO; - GCC_ENABLE_CPP_RTTI = NO; - GCC_WARN_UNUSED_VALUE = NO; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Debug; - }; - 80BB8921141C3E3600F1753A /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - GCC_ENABLE_CPP_EXCEPTIONS = NO; - GCC_ENABLE_CPP_RTTI = NO; - GCC_WARN_UNUSED_VALUE = NO; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Release; - }; - 80FF01D4141C3D980059E59D /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - COPY_PHASE_STRIP = NO; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_DYNAMIC_NO_PIC = NO; - GCC_ENABLE_OBJC_EXCEPTIONS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_VERSION = com.apple.compilers.llvm.clang.1_0; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - HEADER_SEARCH_PATHS = ../..; - MACOSX_DEPLOYMENT_TARGET = 10.7; - ONLY_ACTIVE_ARCH = YES; - SDKROOT = macosx; - }; - name = Debug; - }; - 80FF01D5141C3D980059E59D /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - COPY_PHASE_STRIP = YES; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_ENABLE_OBJC_EXCEPTIONS = YES; - GCC_VERSION = com.apple.compilers.llvm.clang.1_0; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - HEADER_SEARCH_PATHS = ../..; - MACOSX_DEPLOYMENT_TARGET = 10.7; - SDKROOT = macosx; - }; - name = Release; - }; - 80FF01D7141C3D980059E59D /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - COMBINE_HIDPI_IMAGES = YES; - EXECUTABLE_PREFIX = lib; - GCC_ENABLE_CPP_EXCEPTIONS = NO; - GCC_ENABLE_CPP_RTTI = NO; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Debug; - }; - 80FF01D8141C3D980059E59D /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - COMBINE_HIDPI_IMAGES = YES; - EXECUTABLE_PREFIX = lib; - GCC_ENABLE_CPP_EXCEPTIONS = NO; - GCC_ENABLE_CPP_RTTI = NO; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Release; - }; -/* End XCBuildConfiguration section */ - -/* Begin XCConfigurationList section */ - 80BB8904141C3E1800F1753A /* Build configuration list for PBXNativeTarget "GLUI" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 80BB8902141C3E1800F1753A /* Debug */, - 80BB8903141C3E1800F1753A /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 80BB8911141C3E2700F1753A /* Build configuration list for PBXNativeTarget "HelloWorld" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 80BB8912141C3E2700F1753A /* Debug */, - 80BB8913141C3E2700F1753A /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 80BB891F141C3E3600F1753A /* Build configuration list for PBXNativeTarget "Testbed" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 80BB8920141C3E3600F1753A /* Debug */, - 80BB8921141C3E3600F1753A /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 80FF01CC141C3D980059E59D /* Build configuration list for PBXProject "Box2D" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 80FF01D4141C3D980059E59D /* Debug */, - 80FF01D5141C3D980059E59D /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 80FF01D6141C3D980059E59D /* Build configuration list for PBXNativeTarget "Box2D" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 80FF01D7141C3D980059E59D /* Debug */, - 80FF01D8141C3D980059E59D /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; -/* End XCConfigurationList section */ - }; - rootObject = 80FF01C9141C3D980059E59D /* Project object */; -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Build/xcode5/Box2D.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/src/dependencies/Box2D_v2.3.0/Box2D/Build/xcode5/Box2D.xcodeproj/project.xcworkspace/contents.xcworkspacedata deleted file mode 100644 index 9641d88..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Build/xcode5/Box2D.xcodeproj/project.xcworkspace/contents.xcworkspacedata +++ /dev/null @@ -1,7 +0,0 @@ - - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Building.txt b/src/dependencies/Box2D_v2.3.0/Box2D/Building.txt deleted file mode 100644 index c717a22..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Building.txt +++ /dev/null @@ -1,37 +0,0 @@ -The Build folder contains custom made project files for Visual Studio and XCode. - -For other platforms you need to run premake in this directory. You can get premake here: -http://industriousone.com/premake - -For example, on Linux, you would type: -premake4 gmake - -This will create a gmake folder in the Build directory. From there you can run: -make config="debug" - -If you have build problems, you can post a question here: -http://box2d.org/forum/viewforum.php?f=7 - -=============== OLD METHOD ==================== - -Box2D uses CMake to describe the build in a platform independent manner. - -First download and install cmake from cmake.org - -For Microsoft Visual Studio: -- Run the cmake-gui -- Set the source directory to the path of Box2D on your PC (the folder that contains this file). -- Set the build directory to be the path of Box2D/Build on your PC. -- Press the Configure button and select your version of Visual Studio. -- You may have to press the Configure button again. -- Press the Generate button. -- Open Box2D/Build/Box2D.sln. -- Set the Testbed or HelloWorld as your startup project. -- Press F5 or Ctrl-F5 to run. - -For Unix platforms, say the following on a terminal: (Replace $BOX2DPATH with the directory where this file is located.) - cd $BOX2DPATH/Build - cmake -DBOX2D_INSTALL=ON -DBOX2D_BUILD_SHARED=ON .. - make - make install -You might want to add -DCMAKE_INSTALL_PREFIX=/opt/Box2D or similar to the cmake call to change the installation location. make install might need sudo. diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/CMakeCache.txt b/src/dependencies/Box2D_v2.3.0/Box2D/CMakeCache.txt deleted file mode 100644 index 2e71888..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/CMakeCache.txt +++ /dev/null @@ -1,676 +0,0 @@ -# This is the CMakeCache file. -# For build in directory: /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D -# It was generated by CMake: /usr/bin/cmake -# You can edit this file to change values found and used by cmake. -# If you do not want to change any of the values, simply exit the editor. -# If you do want to change a value, simply edit, save, and exit the editor. -# The syntax for the file is as follows: -# KEY:TYPE=VALUE -# KEY is the name of a variable in the cache. -# TYPE is a hint to GUIs for the type of VALUE, DO NOT EDIT TYPE!. -# VALUE is the current value for the KEY. - -######################## -# EXTERNAL cache entries -######################## - -//Build Box2D examples -BOX2D_BUILD_EXAMPLES:BOOL=ON - -//Build Box2D shared libraries -BOX2D_BUILD_SHARED:BOOL=OFF - -//Build Box2D static libraries -BOX2D_BUILD_STATIC:BOOL=ON - -//Install Box2D libs, includes, and CMake scripts -BOX2D_INSTALL:BOOL=ON - -//Install Box2D documentation -BOX2D_INSTALL_DOC:BOOL=OFF - -//Value Computed by CMake -Box2D_BINARY_DIR:STATIC=/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D - -//Dependencies for target -Box2D_LIB_DEPENDS:STATIC= - -//Value Computed by CMake -Box2D_SOURCE_DIR:STATIC=/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D - -//Path to a program. -CMAKE_AR:FILEPATH=/usr/bin/ar - -//Choose the type of build, options are: None(CMAKE_CXX_FLAGS or -// CMAKE_C_FLAGS used) Debug Release RelWithDebInfo MinSizeRel. -CMAKE_BUILD_TYPE:STRING= - -//Enable/Disable color output during build. -CMAKE_COLOR_MAKEFILE:BOOL=ON - -//CXX compiler. -CMAKE_CXX_COMPILER:FILEPATH=/usr/bin/c++ - -//Flags used by the compiler during all build types. -CMAKE_CXX_FLAGS:STRING= - -//Flags used by the compiler during debug builds. -CMAKE_CXX_FLAGS_DEBUG:STRING=-g - -//Flags used by the compiler during release minsize builds. -CMAKE_CXX_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG - -//Flags used by the compiler during release builds (/MD /Ob1 /Oi -// /Ot /Oy /Gs will produce slightly less optimized but smaller -// files). -CMAKE_CXX_FLAGS_RELEASE:STRING=-O3 -DNDEBUG - -//Flags used by the compiler during Release with Debug Info builds. -CMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG - -//C compiler. -CMAKE_C_COMPILER:FILEPATH=/usr/bin/cc - -//Flags used by the compiler during all build types. -CMAKE_C_FLAGS:STRING= - -//Flags used by the compiler during debug builds. -CMAKE_C_FLAGS_DEBUG:STRING=-g - -//Flags used by the compiler during release minsize builds. -CMAKE_C_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG - -//Flags used by the compiler during release builds (/MD /Ob1 /Oi -// /Ot /Oy /Gs will produce slightly less optimized but smaller -// files). -CMAKE_C_FLAGS_RELEASE:STRING=-O3 -DNDEBUG - -//Flags used by the compiler during Release with Debug Info builds. -CMAKE_C_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG - -//Flags used by the linker. -CMAKE_EXE_LINKER_FLAGS:STRING=' ' - -//Flags used by the linker during debug builds. -CMAKE_EXE_LINKER_FLAGS_DEBUG:STRING= - -//Flags used by the linker during release minsize builds. -CMAKE_EXE_LINKER_FLAGS_MINSIZEREL:STRING= - -//Flags used by the linker during release builds. -CMAKE_EXE_LINKER_FLAGS_RELEASE:STRING= - -//Flags used by the linker during Release with Debug Info builds. -CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO:STRING= - -//Enable/Disable output of compile commands during generation. -CMAKE_EXPORT_COMPILE_COMMANDS:BOOL=OFF - -//Install path prefix, prepended onto install directories. -CMAKE_INSTALL_PREFIX:PATH=/usr/local - -//Path to a program. -CMAKE_LINKER:FILEPATH=/usr/bin/ld - -//Path to a program. -CMAKE_MAKE_PROGRAM:FILEPATH=/usr/bin/make - -//Flags used by the linker during the creation of modules. -CMAKE_MODULE_LINKER_FLAGS:STRING=' ' - -//Flags used by the linker during debug builds. -CMAKE_MODULE_LINKER_FLAGS_DEBUG:STRING= - -//Flags used by the linker during release minsize builds. -CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL:STRING= - -//Flags used by the linker during release builds. -CMAKE_MODULE_LINKER_FLAGS_RELEASE:STRING= - -//Flags used by the linker during Release with Debug Info builds. -CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO:STRING= - -//Path to a program. -CMAKE_NM:FILEPATH=/usr/bin/nm - -//Path to a program. -CMAKE_OBJCOPY:FILEPATH=/usr/bin/objcopy - -//Path to a program. -CMAKE_OBJDUMP:FILEPATH=/usr/bin/objdump - -//Value Computed by CMake -CMAKE_PROJECT_NAME:STATIC=Box2D - -//Path to a program. -CMAKE_RANLIB:FILEPATH=/usr/bin/ranlib - -//Flags used by the linker during the creation of dll's. -CMAKE_SHARED_LINKER_FLAGS:STRING=' ' - -//Flags used by the linker during debug builds. -CMAKE_SHARED_LINKER_FLAGS_DEBUG:STRING= - -//Flags used by the linker during release minsize builds. -CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL:STRING= - -//Flags used by the linker during release builds. -CMAKE_SHARED_LINKER_FLAGS_RELEASE:STRING= - -//Flags used by the linker during Release with Debug Info builds. -CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO:STRING= - -//If set, runtime paths are not added when installing shared libraries, -// but are added when building. -CMAKE_SKIP_INSTALL_RPATH:BOOL=NO - -//If set, runtime paths are not added when using shared libraries. -CMAKE_SKIP_RPATH:BOOL=NO - -//Flags used by the linker during the creation of static libraries. -CMAKE_STATIC_LINKER_FLAGS:STRING= - -//Flags used by the linker during debug builds. -CMAKE_STATIC_LINKER_FLAGS_DEBUG:STRING= - -//Flags used by the linker during release minsize builds. -CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL:STRING= - -//Flags used by the linker during release builds. -CMAKE_STATIC_LINKER_FLAGS_RELEASE:STRING= - -//Flags used by the linker during Release with Debug Info builds. -CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO:STRING= - -//Path to a program. -CMAKE_STRIP:FILEPATH=/usr/bin/strip - -//If true, cmake will use relative paths in makefiles and projects. -CMAKE_USE_RELATIVE_PATHS:BOOL=OFF - -//If this value is on, makefiles will be generated without the -// .SILENT directive, and all commands will be echoed to the console -// during the make. This is useful for debugging only. With Visual -// Studio IDE projects all commands are done without /nologo. -CMAKE_VERBOSE_MAKEFILE:BOOL=FALSE - -//Path to a file. -OPENGL_INCLUDE_DIR:PATH=/usr/include - -//Path to a library. -OPENGL_gl_LIBRARY:FILEPATH=/usr/lib/x86_64-linux-gnu/libGL.so - -//Path to a library. -OPENGL_glu_LIBRARY:FILEPATH=/usr/lib/x86_64-linux-gnu/libGLU.so - -//Path to a file. -OPENGL_xmesa_INCLUDE_DIR:PATH=OPENGL_xmesa_INCLUDE_DIR-NOTFOUND - -//Path to a file. -X11_ICE_INCLUDE_PATH:PATH=/usr/include - -//Path to a library. -X11_ICE_LIB:FILEPATH=/usr/lib/x86_64-linux-gnu/libICE.so - -//Path to a file. -X11_SM_INCLUDE_PATH:PATH=/usr/include - -//Path to a library. -X11_SM_LIB:FILEPATH=/usr/lib/x86_64-linux-gnu/libSM.so - -//Path to a file. -X11_X11_INCLUDE_PATH:PATH=/usr/include - -//Path to a library. -X11_X11_LIB:FILEPATH=/usr/lib/x86_64-linux-gnu/libX11.so - -//Path to a file. -X11_XRes_INCLUDE_PATH:PATH=X11_XRes_INCLUDE_PATH-NOTFOUND - -//Path to a library. -X11_XRes_LIB:FILEPATH=X11_XRes_LIB-NOTFOUND - -//Path to a file. -X11_XShm_INCLUDE_PATH:PATH=/usr/include - -//Path to a file. -X11_XSync_INCLUDE_PATH:PATH=/usr/include - -//Path to a file. -X11_XTest_INCLUDE_PATH:PATH=X11_XTest_INCLUDE_PATH-NOTFOUND - -//Path to a library. -X11_XTest_LIB:FILEPATH=X11_XTest_LIB-NOTFOUND - -//Path to a file. -X11_Xaccessrules_INCLUDE_PATH:PATH=X11_Xaccessrules_INCLUDE_PATH-NOTFOUND - -//Path to a file. -X11_Xaccessstr_INCLUDE_PATH:PATH=/usr/include - -//Path to a file. -X11_Xau_INCLUDE_PATH:PATH=/usr/include - -//Path to a library. -X11_Xau_LIB:FILEPATH=/usr/lib/x86_64-linux-gnu/libXau.so - -//Path to a file. -X11_Xcomposite_INCLUDE_PATH:PATH=/usr/include - -//Path to a library. -X11_Xcomposite_LIB:FILEPATH=/usr/lib/x86_64-linux-gnu/libXcomposite.so - -//Path to a file. -X11_Xcursor_INCLUDE_PATH:PATH=/usr/include - -//Path to a library. -X11_Xcursor_LIB:FILEPATH=/usr/lib/x86_64-linux-gnu/libXcursor.so - -//Path to a file. -X11_Xdamage_INCLUDE_PATH:PATH=/usr/include - -//Path to a library. -X11_Xdamage_LIB:FILEPATH=/usr/lib/x86_64-linux-gnu/libXdamage.so - -//Path to a file. -X11_Xdmcp_INCLUDE_PATH:PATH=/usr/include - -//Path to a library. -X11_Xdmcp_LIB:FILEPATH=/usr/lib/x86_64-linux-gnu/libXdmcp.so - -//Path to a library. -X11_Xext_LIB:FILEPATH=/usr/lib/x86_64-linux-gnu/libXext.so - -//Path to a file. -X11_Xfixes_INCLUDE_PATH:PATH=/usr/include - -//Path to a library. -X11_Xfixes_LIB:FILEPATH=/usr/lib/x86_64-linux-gnu/libXfixes.so - -//Path to a file. -X11_Xft_INCLUDE_PATH:PATH=/usr/include - -//Path to a library. -X11_Xft_LIB:FILEPATH=/usr/lib/x86_64-linux-gnu/libXft.so - -//Path to a file. -X11_Xi_INCLUDE_PATH:PATH=/usr/include - -//Path to a library. -X11_Xi_LIB:FILEPATH=/usr/lib/x86_64-linux-gnu/libXi.so - -//Path to a file. -X11_Xinerama_INCLUDE_PATH:PATH=/usr/include - -//Path to a library. -X11_Xinerama_LIB:FILEPATH=/usr/lib/x86_64-linux-gnu/libXinerama.so - -//Path to a file. -X11_Xinput_INCLUDE_PATH:PATH=/usr/include - -//Path to a library. -X11_Xinput_LIB:FILEPATH=/usr/lib/x86_64-linux-gnu/libXi.so - -//Path to a file. -X11_Xkb_INCLUDE_PATH:PATH=/usr/include - -//Path to a file. -X11_Xkbfile_INCLUDE_PATH:PATH=X11_Xkbfile_INCLUDE_PATH-NOTFOUND - -//Path to a library. -X11_Xkbfile_LIB:FILEPATH=X11_Xkbfile_LIB-NOTFOUND - -//Path to a file. -X11_Xkblib_INCLUDE_PATH:PATH=/usr/include - -//Path to a file. -X11_Xlib_INCLUDE_PATH:PATH=/usr/include - -//Path to a file. -X11_Xmu_INCLUDE_PATH:PATH=/usr/include - -//Path to a library. -X11_Xmu_LIB:FILEPATH=/usr/lib/x86_64-linux-gnu/libXmu.so - -//Path to a file. -X11_Xpm_INCLUDE_PATH:PATH=X11_Xpm_INCLUDE_PATH-NOTFOUND - -//Path to a library. -X11_Xpm_LIB:FILEPATH=X11_Xpm_LIB-NOTFOUND - -//Path to a file. -X11_Xrandr_INCLUDE_PATH:PATH=/usr/include - -//Path to a library. -X11_Xrandr_LIB:FILEPATH=/usr/lib/x86_64-linux-gnu/libXrandr.so - -//Path to a file. -X11_Xrender_INCLUDE_PATH:PATH=/usr/include - -//Path to a library. -X11_Xrender_LIB:FILEPATH=/usr/lib/x86_64-linux-gnu/libXrender.so - -//Path to a file. -X11_Xscreensaver_INCLUDE_PATH:PATH=/usr/include - -//Path to a library. -X11_Xscreensaver_LIB:FILEPATH=/usr/lib/x86_64-linux-gnu/libXss.so - -//Path to a file. -X11_Xshape_INCLUDE_PATH:PATH=/usr/include - -//Path to a file. -X11_Xt_INCLUDE_PATH:PATH=/usr/include - -//Path to a library. -X11_Xt_LIB:FILEPATH=/usr/lib/x86_64-linux-gnu/libXt.so - -//Path to a file. -X11_Xutil_INCLUDE_PATH:PATH=/usr/include - -//Path to a file. -X11_Xv_INCLUDE_PATH:PATH=/usr/include - -//Path to a library. -X11_Xv_LIB:FILEPATH=/usr/lib/x86_64-linux-gnu/libXv.so - -//Path to a library. -X11_Xxf86misc_LIB:FILEPATH=X11_Xxf86misc_LIB-NOTFOUND - -//Path to a library. -X11_Xxf86vm_LIB:FILEPATH=/usr/lib/x86_64-linux-gnu/libXxf86vm.so - -//Path to a file. -X11_dpms_INCLUDE_PATH:PATH=/usr/include - -//Path to a file. -X11_xf86misc_INCLUDE_PATH:PATH=X11_xf86misc_INCLUDE_PATH-NOTFOUND - -//Path to a file. -X11_xf86vmode_INCLUDE_PATH:PATH=/usr/include - -//Dependencies for target -freeglut_static_LIB_DEPENDS:STATIC= - -//Dependencies for target -glui_LIB_DEPENDS:STATIC= - - -######################## -# INTERNAL cache entries -######################## - -//ADVANCED property for variable: CMAKE_AR -CMAKE_AR-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_BUILD_TOOL -CMAKE_BUILD_TOOL-ADVANCED:INTERNAL=1 -//What is the target build tool cmake is generating for. -CMAKE_BUILD_TOOL:INTERNAL=/usr/bin/make -//This is the directory where this CMakeCache.txt was created -CMAKE_CACHEFILE_DIR:INTERNAL=/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D -//Major version of cmake used to create the current loaded cache -CMAKE_CACHE_MAJOR_VERSION:INTERNAL=2 -//Minor version of cmake used to create the current loaded cache -CMAKE_CACHE_MINOR_VERSION:INTERNAL=8 -//Patch version of cmake used to create the current loaded cache -CMAKE_CACHE_PATCH_VERSION:INTERNAL=12 -//ADVANCED property for variable: CMAKE_COLOR_MAKEFILE -CMAKE_COLOR_MAKEFILE-ADVANCED:INTERNAL=1 -//Path to CMake executable. -CMAKE_COMMAND:INTERNAL=/usr/bin/cmake -//Path to cpack program executable. -CMAKE_CPACK_COMMAND:INTERNAL=/usr/bin/cpack -//Path to ctest program executable. -CMAKE_CTEST_COMMAND:INTERNAL=/usr/bin/ctest -//ADVANCED property for variable: CMAKE_CXX_COMPILER -CMAKE_CXX_COMPILER-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_CXX_FLAGS -CMAKE_CXX_FLAGS-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_CXX_FLAGS_DEBUG -CMAKE_CXX_FLAGS_DEBUG-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_CXX_FLAGS_MINSIZEREL -CMAKE_CXX_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELEASE -CMAKE_CXX_FLAGS_RELEASE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELWITHDEBINFO -CMAKE_CXX_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_C_COMPILER -CMAKE_C_COMPILER-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_C_FLAGS -CMAKE_C_FLAGS-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_C_FLAGS_DEBUG -CMAKE_C_FLAGS_DEBUG-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_C_FLAGS_MINSIZEREL -CMAKE_C_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_C_FLAGS_RELEASE -CMAKE_C_FLAGS_RELEASE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_C_FLAGS_RELWITHDEBINFO -CMAKE_C_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 -//Executable file format -CMAKE_EXECUTABLE_FORMAT:INTERNAL=ELF -//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS -CMAKE_EXE_LINKER_FLAGS-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_DEBUG -CMAKE_EXE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_MINSIZEREL -CMAKE_EXE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELEASE -CMAKE_EXE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO -CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_EXPORT_COMPILE_COMMANDS -CMAKE_EXPORT_COMPILE_COMMANDS-ADVANCED:INTERNAL=1 -//Name of generator. -CMAKE_GENERATOR:INTERNAL=Unix Makefiles -//Name of generator toolset. -CMAKE_GENERATOR_TOOLSET:INTERNAL= -//Have function connect -CMAKE_HAVE_CONNECT:INTERNAL=1 -//Have function gethostbyname -CMAKE_HAVE_GETHOSTBYNAME:INTERNAL=1 -//Have function remove -CMAKE_HAVE_REMOVE:INTERNAL=1 -//Have function shmat -CMAKE_HAVE_SHMAT:INTERNAL=1 -//Start directory with the top level CMakeLists.txt file for this -// project -CMAKE_HOME_DIRECTORY:INTERNAL=/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D -//Install .so files without execute permission. -CMAKE_INSTALL_SO_NO_EXE:INTERNAL=1 -//Have library ICE -CMAKE_LIB_ICE_HAS_ICECONNECTIONNUMBER:INTERNAL=1 -//ADVANCED property for variable: CMAKE_LINKER -CMAKE_LINKER-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_MAKE_PROGRAM -CMAKE_MAKE_PROGRAM-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS -CMAKE_MODULE_LINKER_FLAGS-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_DEBUG -CMAKE_MODULE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL -CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELEASE -CMAKE_MODULE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO -CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_NM -CMAKE_NM-ADVANCED:INTERNAL=1 -//number of local generators -CMAKE_NUMBER_OF_LOCAL_GENERATORS:INTERNAL=6 -//ADVANCED property for variable: CMAKE_OBJCOPY -CMAKE_OBJCOPY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_OBJDUMP -CMAKE_OBJDUMP-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_RANLIB -CMAKE_RANLIB-ADVANCED:INTERNAL=1 -//Path to CMake installation. -CMAKE_ROOT:INTERNAL=/usr/share/cmake-2.8 -//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS -CMAKE_SHARED_LINKER_FLAGS-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_DEBUG -CMAKE_SHARED_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL -CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELEASE -CMAKE_SHARED_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO -CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_SKIP_INSTALL_RPATH -CMAKE_SKIP_INSTALL_RPATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_SKIP_RPATH -CMAKE_SKIP_RPATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS -CMAKE_STATIC_LINKER_FLAGS-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_DEBUG -CMAKE_STATIC_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL -CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELEASE -CMAKE_STATIC_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO -CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_STRIP -CMAKE_STRIP-ADVANCED:INTERNAL=1 -//uname command -CMAKE_UNAME:INTERNAL=/bin/uname -//ADVANCED property for variable: CMAKE_USE_RELATIVE_PATHS -CMAKE_USE_RELATIVE_PATHS-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_VERBOSE_MAKEFILE -CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1 -//Details about finding OpenGL -FIND_PACKAGE_MESSAGE_DETAILS_OpenGL:INTERNAL=[/usr/lib/x86_64-linux-gnu/libGL.so][/usr/include][v()] -//Details about finding X11 -FIND_PACKAGE_MESSAGE_DETAILS_X11:INTERNAL=[/usr/lib/x86_64-linux-gnu/libX11.so][/usr/include] -//ADVANCED property for variable: OPENGL_INCLUDE_DIR -OPENGL_INCLUDE_DIR-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: OPENGL_gl_LIBRARY -OPENGL_gl_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: OPENGL_glu_LIBRARY -OPENGL_glu_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: OPENGL_xmesa_INCLUDE_DIR -OPENGL_xmesa_INCLUDE_DIR-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_ICE_INCLUDE_PATH -X11_ICE_INCLUDE_PATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_ICE_LIB -X11_ICE_LIB-ADVANCED:INTERNAL=1 -//Have library /usr/lib/x86_64-linux-gnu/libX11.so;/usr/lib/x86_64-linux-gnu/libXext.so -X11_LIB_X11_SOLO:INTERNAL=1 -//ADVANCED property for variable: X11_SM_INCLUDE_PATH -X11_SM_INCLUDE_PATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_SM_LIB -X11_SM_LIB-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_X11_INCLUDE_PATH -X11_X11_INCLUDE_PATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_X11_LIB -X11_X11_LIB-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_XRes_INCLUDE_PATH -X11_XRes_INCLUDE_PATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_XRes_LIB -X11_XRes_LIB-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_XShm_INCLUDE_PATH -X11_XShm_INCLUDE_PATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_XSync_INCLUDE_PATH -X11_XSync_INCLUDE_PATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_XTest_INCLUDE_PATH -X11_XTest_INCLUDE_PATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_XTest_LIB -X11_XTest_LIB-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xaccessrules_INCLUDE_PATH -X11_Xaccessrules_INCLUDE_PATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xaccessstr_INCLUDE_PATH -X11_Xaccessstr_INCLUDE_PATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xau_INCLUDE_PATH -X11_Xau_INCLUDE_PATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xau_LIB -X11_Xau_LIB-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xcomposite_INCLUDE_PATH -X11_Xcomposite_INCLUDE_PATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xcomposite_LIB -X11_Xcomposite_LIB-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xcursor_INCLUDE_PATH -X11_Xcursor_INCLUDE_PATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xcursor_LIB -X11_Xcursor_LIB-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xdamage_INCLUDE_PATH -X11_Xdamage_INCLUDE_PATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xdamage_LIB -X11_Xdamage_LIB-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xdmcp_INCLUDE_PATH -X11_Xdmcp_INCLUDE_PATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xdmcp_LIB -X11_Xdmcp_LIB-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xext_LIB -X11_Xext_LIB-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xfixes_INCLUDE_PATH -X11_Xfixes_INCLUDE_PATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xfixes_LIB -X11_Xfixes_LIB-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xft_INCLUDE_PATH -X11_Xft_INCLUDE_PATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xft_LIB -X11_Xft_LIB-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xi_INCLUDE_PATH -X11_Xi_INCLUDE_PATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xi_LIB -X11_Xi_LIB-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xinerama_INCLUDE_PATH -X11_Xinerama_INCLUDE_PATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xinerama_LIB -X11_Xinerama_LIB-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xinput_INCLUDE_PATH -X11_Xinput_INCLUDE_PATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xinput_LIB -X11_Xinput_LIB-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xkb_INCLUDE_PATH -X11_Xkb_INCLUDE_PATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xkbfile_INCLUDE_PATH -X11_Xkbfile_INCLUDE_PATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xkbfile_LIB -X11_Xkbfile_LIB-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xkblib_INCLUDE_PATH -X11_Xkblib_INCLUDE_PATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xlib_INCLUDE_PATH -X11_Xlib_INCLUDE_PATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xmu_INCLUDE_PATH -X11_Xmu_INCLUDE_PATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xmu_LIB -X11_Xmu_LIB-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xpm_INCLUDE_PATH -X11_Xpm_INCLUDE_PATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xpm_LIB -X11_Xpm_LIB-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xrandr_INCLUDE_PATH -X11_Xrandr_INCLUDE_PATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xrandr_LIB -X11_Xrandr_LIB-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xrender_INCLUDE_PATH -X11_Xrender_INCLUDE_PATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xrender_LIB -X11_Xrender_LIB-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xscreensaver_INCLUDE_PATH -X11_Xscreensaver_INCLUDE_PATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xscreensaver_LIB -X11_Xscreensaver_LIB-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xshape_INCLUDE_PATH -X11_Xshape_INCLUDE_PATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xt_INCLUDE_PATH -X11_Xt_INCLUDE_PATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xt_LIB -X11_Xt_LIB-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xutil_INCLUDE_PATH -X11_Xutil_INCLUDE_PATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xv_INCLUDE_PATH -X11_Xv_INCLUDE_PATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xv_LIB -X11_Xv_LIB-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xxf86misc_LIB -X11_Xxf86misc_LIB-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_Xxf86vm_LIB -X11_Xxf86vm_LIB-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_dpms_INCLUDE_PATH -X11_dpms_INCLUDE_PATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_xf86misc_INCLUDE_PATH -X11_xf86misc_INCLUDE_PATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: X11_xf86vmode_INCLUDE_PATH -X11_xf86vmode_INCLUDE_PATH-ADVANCED:INTERNAL=1 - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/2.8.12.2/CMakeCCompiler.cmake b/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/2.8.12.2/CMakeCCompiler.cmake deleted file mode 100644 index 83254ce..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/2.8.12.2/CMakeCCompiler.cmake +++ /dev/null @@ -1,56 +0,0 @@ -set(CMAKE_C_COMPILER "/usr/bin/cc") -set(CMAKE_C_COMPILER_ARG1 "") -set(CMAKE_C_COMPILER_ID "GNU") -set(CMAKE_C_COMPILER_VERSION "4.8.2") -set(CMAKE_C_PLATFORM_ID "Linux") - -set(CMAKE_AR "/usr/bin/ar") -set(CMAKE_RANLIB "/usr/bin/ranlib") -set(CMAKE_LINKER "/usr/bin/ld") -set(CMAKE_COMPILER_IS_GNUCC 1) -set(CMAKE_C_COMPILER_LOADED 1) -set(CMAKE_C_COMPILER_WORKS TRUE) -set(CMAKE_C_ABI_COMPILED TRUE) -set(CMAKE_COMPILER_IS_MINGW ) -set(CMAKE_COMPILER_IS_CYGWIN ) -if(CMAKE_COMPILER_IS_CYGWIN) - set(CYGWIN 1) - set(UNIX 1) -endif() - -set(CMAKE_C_COMPILER_ENV_VAR "CC") - -if(CMAKE_COMPILER_IS_MINGW) - set(MINGW 1) -endif() -set(CMAKE_C_COMPILER_ID_RUN 1) -set(CMAKE_C_SOURCE_FILE_EXTENSIONS c) -set(CMAKE_C_IGNORE_EXTENSIONS h;H;o;O;obj;OBJ;def;DEF;rc;RC) -set(CMAKE_C_LINKER_PREFERENCE 10) - -# Save compiler ABI information. -set(CMAKE_C_SIZEOF_DATA_PTR "8") -set(CMAKE_C_COMPILER_ABI "ELF") -set(CMAKE_C_LIBRARY_ARCHITECTURE "x86_64-linux-gnu") - -if(CMAKE_C_SIZEOF_DATA_PTR) - set(CMAKE_SIZEOF_VOID_P "${CMAKE_C_SIZEOF_DATA_PTR}") -endif() - -if(CMAKE_C_COMPILER_ABI) - set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_C_COMPILER_ABI}") -endif() - -if(CMAKE_C_LIBRARY_ARCHITECTURE) - set(CMAKE_LIBRARY_ARCHITECTURE "x86_64-linux-gnu") -endif() - - - - -set(CMAKE_C_IMPLICIT_LINK_LIBRARIES "c") -set(CMAKE_C_IMPLICIT_LINK_DIRECTORIES "/usr/lib/gcc/x86_64-linux-gnu/4.8;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib") -set(CMAKE_C_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "") - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/2.8.12.2/CMakeCXXCompiler.cmake b/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/2.8.12.2/CMakeCXXCompiler.cmake deleted file mode 100644 index c4373d5..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/2.8.12.2/CMakeCXXCompiler.cmake +++ /dev/null @@ -1,57 +0,0 @@ -set(CMAKE_CXX_COMPILER "/usr/bin/c++") -set(CMAKE_CXX_COMPILER_ARG1 "") -set(CMAKE_CXX_COMPILER_ID "GNU") -set(CMAKE_CXX_COMPILER_VERSION "4.8.2") -set(CMAKE_CXX_PLATFORM_ID "Linux") - -set(CMAKE_AR "/usr/bin/ar") -set(CMAKE_RANLIB "/usr/bin/ranlib") -set(CMAKE_LINKER "/usr/bin/ld") -set(CMAKE_COMPILER_IS_GNUCXX 1) -set(CMAKE_CXX_COMPILER_LOADED 1) -set(CMAKE_CXX_COMPILER_WORKS TRUE) -set(CMAKE_CXX_ABI_COMPILED TRUE) -set(CMAKE_COMPILER_IS_MINGW ) -set(CMAKE_COMPILER_IS_CYGWIN ) -if(CMAKE_COMPILER_IS_CYGWIN) - set(CYGWIN 1) - set(UNIX 1) -endif() - -set(CMAKE_CXX_COMPILER_ENV_VAR "CXX") - -if(CMAKE_COMPILER_IS_MINGW) - set(MINGW 1) -endif() -set(CMAKE_CXX_COMPILER_ID_RUN 1) -set(CMAKE_CXX_IGNORE_EXTENSIONS inl;h;hpp;HPP;H;o;O;obj;OBJ;def;DEF;rc;RC) -set(CMAKE_CXX_SOURCE_FILE_EXTENSIONS C;M;c++;cc;cpp;cxx;m;mm;CPP) -set(CMAKE_CXX_LINKER_PREFERENCE 30) -set(CMAKE_CXX_LINKER_PREFERENCE_PROPAGATES 1) - -# Save compiler ABI information. -set(CMAKE_CXX_SIZEOF_DATA_PTR "8") -set(CMAKE_CXX_COMPILER_ABI "ELF") -set(CMAKE_CXX_LIBRARY_ARCHITECTURE "x86_64-linux-gnu") - -if(CMAKE_CXX_SIZEOF_DATA_PTR) - set(CMAKE_SIZEOF_VOID_P "${CMAKE_CXX_SIZEOF_DATA_PTR}") -endif() - -if(CMAKE_CXX_COMPILER_ABI) - set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_CXX_COMPILER_ABI}") -endif() - -if(CMAKE_CXX_LIBRARY_ARCHITECTURE) - set(CMAKE_LIBRARY_ARCHITECTURE "x86_64-linux-gnu") -endif() - - - - -set(CMAKE_CXX_IMPLICIT_LINK_LIBRARIES "stdc++;m;c") -set(CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES "/usr/lib/gcc/x86_64-linux-gnu/4.8;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib") -set(CMAKE_CXX_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "") - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/2.8.12.2/CMakeDetermineCompilerABI_C.bin b/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/2.8.12.2/CMakeDetermineCompilerABI_C.bin deleted file mode 100755 index 2f2ebe4..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/2.8.12.2/CMakeDetermineCompilerABI_C.bin and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/2.8.12.2/CMakeDetermineCompilerABI_CXX.bin b/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/2.8.12.2/CMakeDetermineCompilerABI_CXX.bin deleted file mode 100755 index 16c737f..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/2.8.12.2/CMakeDetermineCompilerABI_CXX.bin and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/2.8.12.2/CMakeSystem.cmake b/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/2.8.12.2/CMakeSystem.cmake deleted file mode 100644 index 8c76b98..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/2.8.12.2/CMakeSystem.cmake +++ /dev/null @@ -1,15 +0,0 @@ -set(CMAKE_HOST_SYSTEM "Linux-3.13.0-48-generic") -set(CMAKE_HOST_SYSTEM_NAME "Linux") -set(CMAKE_HOST_SYSTEM_VERSION "3.13.0-48-generic") -set(CMAKE_HOST_SYSTEM_PROCESSOR "x86_64") - - - -set(CMAKE_SYSTEM "Linux-3.13.0-48-generic") -set(CMAKE_SYSTEM_NAME "Linux") -set(CMAKE_SYSTEM_VERSION "3.13.0-48-generic") -set(CMAKE_SYSTEM_PROCESSOR "x86_64") - -set(CMAKE_CROSSCOMPILING "FALSE") - -set(CMAKE_SYSTEM_LOADED 1) diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/2.8.12.2/CompilerIdC/CMakeCCompilerId.c b/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/2.8.12.2/CompilerIdC/CMakeCCompilerId.c deleted file mode 100644 index cba81d4..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/2.8.12.2/CompilerIdC/CMakeCCompilerId.c +++ /dev/null @@ -1,389 +0,0 @@ -#ifdef __cplusplus -# error "A C++ compiler has been selected for C." -#endif - -/* Version number components: V=Version, R=Revision, P=Patch - Version date components: YYYY=Year, MM=Month, DD=Day */ - -#if defined(__18CXX) -# define ID_VOID_MAIN -#endif - -#if defined(__INTEL_COMPILER) || defined(__ICC) -# define COMPILER_ID "Intel" - /* __INTEL_COMPILER = VRP */ -# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100) -# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10) -# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER % 10) -# if defined(__INTEL_COMPILER_BUILD_DATE) - /* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */ -# define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE) -# endif - -#elif defined(__PATHCC__) -# define COMPILER_ID "PathScale" -# define COMPILER_VERSION_MAJOR DEC(__PATHCC__) -# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__) -# if defined(__PATHCC_PATCHLEVEL__) -# define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__) -# endif - -#elif defined(__clang__) -# define COMPILER_ID "Clang" -# define COMPILER_VERSION_MAJOR DEC(__clang_major__) -# define COMPILER_VERSION_MINOR DEC(__clang_minor__) -# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) - -#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__) -# define COMPILER_ID "Embarcadero" -# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF) -# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF) -# define COMPILER_VERSION_PATCH HEX(__CODEGEARC_VERSION__ & 0xFFFF) - -#elif defined(__BORLANDC__) -# define COMPILER_ID "Borland" - /* __BORLANDC__ = 0xVRR */ -# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8) -# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF) - -#elif defined(__WATCOMC__) -# define COMPILER_ID "Watcom" - /* __WATCOMC__ = VVRR */ -# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100) -# define COMPILER_VERSION_MINOR DEC(__WATCOMC__ % 100) - -#elif defined(__SUNPRO_C) -# define COMPILER_ID "SunPro" -# if __SUNPRO_C >= 0x5100 - /* __SUNPRO_C = 0xVRRP */ -# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>12) -# define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xFF) -# define COMPILER_VERSION_PATCH HEX(__SUNPRO_C & 0xF) -# else - /* __SUNPRO_C = 0xVRP */ -# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>8) -# define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xF) -# define COMPILER_VERSION_PATCH HEX(__SUNPRO_C & 0xF) -# endif - -#elif defined(__HP_cc) -# define COMPILER_ID "HP" - /* __HP_cc = VVRRPP */ -# define COMPILER_VERSION_MAJOR DEC(__HP_cc/10000) -# define COMPILER_VERSION_MINOR DEC(__HP_cc/100 % 100) -# define COMPILER_VERSION_PATCH DEC(__HP_cc % 100) - -#elif defined(__DECC) -# define COMPILER_ID "Compaq" - /* __DECC_VER = VVRRTPPPP */ -# define COMPILER_VERSION_MAJOR DEC(__DECC_VER/10000000) -# define COMPILER_VERSION_MINOR DEC(__DECC_VER/100000 % 100) -# define COMPILER_VERSION_PATCH DEC(__DECC_VER % 10000) - -#elif defined(__IBMC__) -# if defined(__COMPILER_VER__) -# define COMPILER_ID "zOS" -# else -# if __IBMC__ >= 800 -# define COMPILER_ID "XL" -# else -# define COMPILER_ID "VisualAge" -# endif - /* __IBMC__ = VRP */ -# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100) -# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10) -# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10) -# endif - -#elif defined(__PGI) -# define COMPILER_ID "PGI" -# define COMPILER_VERSION_MAJOR DEC(__PGIC__) -# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__) -# if defined(__PGIC_PATCHLEVEL__) -# define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__) -# endif - -#elif defined(_CRAYC) -# define COMPILER_ID "Cray" -# define COMPILER_VERSION_MAJOR DEC(_RELEASE) -# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR) - -#elif defined(__TI_COMPILER_VERSION__) -# define COMPILER_ID "TI" - /* __TI_COMPILER_VERSION__ = VVVRRRPPP */ -# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000) -# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000 % 1000) -# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__ % 1000) - -#elif defined(__TINYC__) -# define COMPILER_ID "TinyCC" - -#elif defined(__SCO_VERSION__) -# define COMPILER_ID "SCO" - -#elif defined(__GNUC__) -# define COMPILER_ID "GNU" -# define COMPILER_VERSION_MAJOR DEC(__GNUC__) -# define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__) -# if defined(__GNUC_PATCHLEVEL__) -# define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) -# endif - -#elif defined(_MSC_VER) -# define COMPILER_ID "MSVC" - /* _MSC_VER = VVRR */ -# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100) -# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100) -# if defined(_MSC_FULL_VER) -# if _MSC_VER >= 1400 - /* _MSC_FULL_VER = VVRRPPPPP */ -# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000) -# else - /* _MSC_FULL_VER = VVRRPPPP */ -# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000) -# endif -# endif -# if defined(_MSC_BUILD) -# define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD) -# endif - -/* Analog VisualDSP++ >= 4.5.6 */ -#elif defined(__VISUALDSPVERSION__) -# define COMPILER_ID "ADSP" - /* __VISUALDSPVERSION__ = 0xVVRRPP00 */ -# define COMPILER_VERSION_MAJOR HEX(__VISUALDSPVERSION__>>24) -# define COMPILER_VERSION_MINOR HEX(__VISUALDSPVERSION__>>16 & 0xFF) -# define COMPILER_VERSION_PATCH HEX(__VISUALDSPVERSION__>>8 & 0xFF) - -/* Analog VisualDSP++ < 4.5.6 */ -#elif defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__) -# define COMPILER_ID "ADSP" - -/* IAR Systems compiler for embedded systems. - http://www.iar.com */ -#elif defined(__IAR_SYSTEMS_ICC__ ) || defined(__IAR_SYSTEMS_ICC) -# define COMPILER_ID "IAR" - -/* sdcc, the small devices C compiler for embedded systems, - http://sdcc.sourceforge.net */ -#elif defined(SDCC) -# define COMPILER_ID "SDCC" - /* SDCC = VRP */ -# define COMPILER_VERSION_MAJOR DEC(SDCC/100) -# define COMPILER_VERSION_MINOR DEC(SDCC/10 % 10) -# define COMPILER_VERSION_PATCH DEC(SDCC % 10) - -#elif defined(_SGI_COMPILER_VERSION) || defined(_COMPILER_VERSION) -# define COMPILER_ID "MIPSpro" -# if defined(_SGI_COMPILER_VERSION) - /* _SGI_COMPILER_VERSION = VRP */ -# define COMPILER_VERSION_MAJOR DEC(_SGI_COMPILER_VERSION/100) -# define COMPILER_VERSION_MINOR DEC(_SGI_COMPILER_VERSION/10 % 10) -# define COMPILER_VERSION_PATCH DEC(_SGI_COMPILER_VERSION % 10) -# else - /* _COMPILER_VERSION = VRP */ -# define COMPILER_VERSION_MAJOR DEC(_COMPILER_VERSION/100) -# define COMPILER_VERSION_MINOR DEC(_COMPILER_VERSION/10 % 10) -# define COMPILER_VERSION_PATCH DEC(_COMPILER_VERSION % 10) -# endif - -/* This compiler is either not known or is too old to define an - identification macro. Try to identify the platform and guess that - it is the native compiler. */ -#elif defined(__sgi) -# define COMPILER_ID "MIPSpro" - -#elif defined(__hpux) || defined(__hpua) -# define COMPILER_ID "HP" - -#else /* unknown compiler */ -# define COMPILER_ID "" - -#endif - -/* Construct the string literal in pieces to prevent the source from - getting matched. Store it in a pointer rather than an array - because some compilers will just produce instructions to fill the - array rather than assigning a pointer to a static array. */ -char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]"; - -/* Identify known platforms by name. */ -#if defined(__linux) || defined(__linux__) || defined(linux) -# define PLATFORM_ID "Linux" - -#elif defined(__CYGWIN__) -# define PLATFORM_ID "Cygwin" - -#elif defined(__MINGW32__) -# define PLATFORM_ID "MinGW" - -#elif defined(__APPLE__) -# define PLATFORM_ID "Darwin" - -#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32) -# define PLATFORM_ID "Windows" - -#elif defined(__FreeBSD__) || defined(__FreeBSD) -# define PLATFORM_ID "FreeBSD" - -#elif defined(__NetBSD__) || defined(__NetBSD) -# define PLATFORM_ID "NetBSD" - -#elif defined(__OpenBSD__) || defined(__OPENBSD) -# define PLATFORM_ID "OpenBSD" - -#elif defined(__sun) || defined(sun) -# define PLATFORM_ID "SunOS" - -#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__) -# define PLATFORM_ID "AIX" - -#elif defined(__sgi) || defined(__sgi__) || defined(_SGI) -# define PLATFORM_ID "IRIX" - -#elif defined(__hpux) || defined(__hpux__) -# define PLATFORM_ID "HP-UX" - -#elif defined(__HAIKU__) -# define PLATFORM_ID "Haiku" - -#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS) -# define PLATFORM_ID "BeOS" - -#elif defined(__QNX__) || defined(__QNXNTO__) -# define PLATFORM_ID "QNX" - -#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__) -# define PLATFORM_ID "Tru64" - -#elif defined(__riscos) || defined(__riscos__) -# define PLATFORM_ID "RISCos" - -#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__) -# define PLATFORM_ID "SINIX" - -#elif defined(__UNIX_SV__) -# define PLATFORM_ID "UNIX_SV" - -#elif defined(__bsdos__) -# define PLATFORM_ID "BSDOS" - -#elif defined(_MPRAS) || defined(MPRAS) -# define PLATFORM_ID "MP-RAS" - -#elif defined(__osf) || defined(__osf__) -# define PLATFORM_ID "OSF1" - -#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv) -# define PLATFORM_ID "SCO_SV" - -#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX) -# define PLATFORM_ID "ULTRIX" - -#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX) -# define PLATFORM_ID "Xenix" - -#else /* unknown platform */ -# define PLATFORM_ID "" - -#endif - -/* For windows compilers MSVC and Intel we can determine - the architecture of the compiler being used. This is because - the compilers do not have flags that can change the architecture, - but rather depend on which compiler is being used -*/ -#if defined(_WIN32) && defined(_MSC_VER) -# if defined(_M_IA64) -# define ARCHITECTURE_ID "IA64" - -# elif defined(_M_X64) || defined(_M_AMD64) -# define ARCHITECTURE_ID "x64" - -# elif defined(_M_IX86) -# define ARCHITECTURE_ID "X86" - -# elif defined(_M_ARM) -# define ARCHITECTURE_ID "ARM" - -# elif defined(_M_MIPS) -# define ARCHITECTURE_ID "MIPS" - -# elif defined(_M_SH) -# define ARCHITECTURE_ID "SHx" - -# else /* unknown architecture */ -# define ARCHITECTURE_ID "" -# endif - -#else -# define ARCHITECTURE_ID "" -#endif - -/* Convert integer to decimal digit literals. */ -#define DEC(n) \ - ('0' + (((n) / 10000000)%10)), \ - ('0' + (((n) / 1000000)%10)), \ - ('0' + (((n) / 100000)%10)), \ - ('0' + (((n) / 10000)%10)), \ - ('0' + (((n) / 1000)%10)), \ - ('0' + (((n) / 100)%10)), \ - ('0' + (((n) / 10)%10)), \ - ('0' + ((n) % 10)) - -/* Convert integer to hex digit literals. */ -#define HEX(n) \ - ('0' + ((n)>>28 & 0xF)), \ - ('0' + ((n)>>24 & 0xF)), \ - ('0' + ((n)>>20 & 0xF)), \ - ('0' + ((n)>>16 & 0xF)), \ - ('0' + ((n)>>12 & 0xF)), \ - ('0' + ((n)>>8 & 0xF)), \ - ('0' + ((n)>>4 & 0xF)), \ - ('0' + ((n) & 0xF)) - -/* Construct a string literal encoding the version number components. */ -#ifdef COMPILER_VERSION_MAJOR -char const info_version[] = { - 'I', 'N', 'F', 'O', ':', - 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[', - COMPILER_VERSION_MAJOR, -# ifdef COMPILER_VERSION_MINOR - '.', COMPILER_VERSION_MINOR, -# ifdef COMPILER_VERSION_PATCH - '.', COMPILER_VERSION_PATCH, -# ifdef COMPILER_VERSION_TWEAK - '.', COMPILER_VERSION_TWEAK, -# endif -# endif -# endif - ']','\0'}; -#endif - -/* Construct the string literal in pieces to prevent the source from - getting matched. Store it in a pointer rather than an array - because some compilers will just produce instructions to fill the - array rather than assigning a pointer to a static array. */ -char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]"; -char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]"; - - - -/*--------------------------------------------------------------------------*/ - -#ifdef ID_VOID_MAIN -void main() {} -#else -int main(int argc, char* argv[]) -{ - int require = 0; - require += info_compiler[argc]; - require += info_platform[argc]; - require += info_arch[argc]; -#ifdef COMPILER_VERSION_MAJOR - require += info_version[argc]; -#endif - (void)argv; - return require; -} -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/2.8.12.2/CompilerIdC/a.out b/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/2.8.12.2/CompilerIdC/a.out deleted file mode 100755 index 33a3d2b..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/2.8.12.2/CompilerIdC/a.out and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/2.8.12.2/CompilerIdCXX/CMakeCXXCompilerId.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/2.8.12.2/CompilerIdCXX/CMakeCXXCompilerId.cpp deleted file mode 100644 index e8220b2..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/2.8.12.2/CompilerIdCXX/CMakeCXXCompilerId.cpp +++ /dev/null @@ -1,377 +0,0 @@ -/* This source file must have a .cpp extension so that all C++ compilers - recognize the extension without flags. Borland does not know .cxx for - example. */ -#ifndef __cplusplus -# error "A C compiler has been selected for C++." -#endif - -/* Version number components: V=Version, R=Revision, P=Patch - Version date components: YYYY=Year, MM=Month, DD=Day */ - -#if defined(__COMO__) -# define COMPILER_ID "Comeau" - /* __COMO_VERSION__ = VRR */ -# define COMPILER_VERSION_MAJOR DEC(__COMO_VERSION__ / 100) -# define COMPILER_VERSION_MINOR DEC(__COMO_VERSION__ % 100) - -#elif defined(__INTEL_COMPILER) || defined(__ICC) -# define COMPILER_ID "Intel" - /* __INTEL_COMPILER = VRP */ -# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100) -# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10) -# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER % 10) -# if defined(__INTEL_COMPILER_BUILD_DATE) - /* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */ -# define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE) -# endif - -#elif defined(__PATHCC__) -# define COMPILER_ID "PathScale" -# define COMPILER_VERSION_MAJOR DEC(__PATHCC__) -# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__) -# if defined(__PATHCC_PATCHLEVEL__) -# define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__) -# endif - -#elif defined(__clang__) -# define COMPILER_ID "Clang" -# define COMPILER_VERSION_MAJOR DEC(__clang_major__) -# define COMPILER_VERSION_MINOR DEC(__clang_minor__) -# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) - -#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__) -# define COMPILER_ID "Embarcadero" -# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF) -# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF) -# define COMPILER_VERSION_PATCH HEX(__CODEGEARC_VERSION__ & 0xFFFF) - -#elif defined(__BORLANDC__) -# define COMPILER_ID "Borland" - /* __BORLANDC__ = 0xVRR */ -# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8) -# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF) - -#elif defined(__WATCOMC__) -# define COMPILER_ID "Watcom" - /* __WATCOMC__ = VVRR */ -# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100) -# define COMPILER_VERSION_MINOR DEC(__WATCOMC__ % 100) - -#elif defined(__SUNPRO_CC) -# define COMPILER_ID "SunPro" -# if __SUNPRO_CC >= 0x5100 - /* __SUNPRO_CC = 0xVRRP */ -# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>12) -# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xFF) -# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF) -# else - /* __SUNPRO_CC = 0xVRP */ -# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>8) -# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xF) -# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF) -# endif - -#elif defined(__HP_aCC) -# define COMPILER_ID "HP" - /* __HP_aCC = VVRRPP */ -# define COMPILER_VERSION_MAJOR DEC(__HP_aCC/10000) -# define COMPILER_VERSION_MINOR DEC(__HP_aCC/100 % 100) -# define COMPILER_VERSION_PATCH DEC(__HP_aCC % 100) - -#elif defined(__DECCXX) -# define COMPILER_ID "Compaq" - /* __DECCXX_VER = VVRRTPPPP */ -# define COMPILER_VERSION_MAJOR DEC(__DECCXX_VER/10000000) -# define COMPILER_VERSION_MINOR DEC(__DECCXX_VER/100000 % 100) -# define COMPILER_VERSION_PATCH DEC(__DECCXX_VER % 10000) - -#elif defined(__IBMCPP__) -# if defined(__COMPILER_VER__) -# define COMPILER_ID "zOS" -# else -# if __IBMCPP__ >= 800 -# define COMPILER_ID "XL" -# else -# define COMPILER_ID "VisualAge" -# endif - /* __IBMCPP__ = VRP */ -# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) -# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) -# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) -# endif - -#elif defined(__PGI) -# define COMPILER_ID "PGI" -# define COMPILER_VERSION_MAJOR DEC(__PGIC__) -# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__) -# if defined(__PGIC_PATCHLEVEL__) -# define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__) -# endif - -#elif defined(_CRAYC) -# define COMPILER_ID "Cray" -# define COMPILER_VERSION_MAJOR DEC(_RELEASE) -# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR) - -#elif defined(__TI_COMPILER_VERSION__) -# define COMPILER_ID "TI" - /* __TI_COMPILER_VERSION__ = VVVRRRPPP */ -# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000) -# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000 % 1000) -# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__ % 1000) - -#elif defined(__SCO_VERSION__) -# define COMPILER_ID "SCO" - -#elif defined(__GNUC__) -# define COMPILER_ID "GNU" -# define COMPILER_VERSION_MAJOR DEC(__GNUC__) -# define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__) -# if defined(__GNUC_PATCHLEVEL__) -# define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) -# endif - -#elif defined(_MSC_VER) -# define COMPILER_ID "MSVC" - /* _MSC_VER = VVRR */ -# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100) -# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100) -# if defined(_MSC_FULL_VER) -# if _MSC_VER >= 1400 - /* _MSC_FULL_VER = VVRRPPPPP */ -# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000) -# else - /* _MSC_FULL_VER = VVRRPPPP */ -# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000) -# endif -# endif -# if defined(_MSC_BUILD) -# define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD) -# endif - -/* Analog VisualDSP++ >= 4.5.6 */ -#elif defined(__VISUALDSPVERSION__) -# define COMPILER_ID "ADSP" - /* __VISUALDSPVERSION__ = 0xVVRRPP00 */ -# define COMPILER_VERSION_MAJOR HEX(__VISUALDSPVERSION__>>24) -# define COMPILER_VERSION_MINOR HEX(__VISUALDSPVERSION__>>16 & 0xFF) -# define COMPILER_VERSION_PATCH HEX(__VISUALDSPVERSION__>>8 & 0xFF) - -/* Analog VisualDSP++ < 4.5.6 */ -#elif defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__) -# define COMPILER_ID "ADSP" - -/* IAR Systems compiler for embedded systems. - http://www.iar.com */ -#elif defined(__IAR_SYSTEMS_ICC__ ) || defined(__IAR_SYSTEMS_ICC) -# define COMPILER_ID "IAR" - -#elif defined(_SGI_COMPILER_VERSION) || defined(_COMPILER_VERSION) -# define COMPILER_ID "MIPSpro" -# if defined(_SGI_COMPILER_VERSION) - /* _SGI_COMPILER_VERSION = VRP */ -# define COMPILER_VERSION_MAJOR DEC(_SGI_COMPILER_VERSION/100) -# define COMPILER_VERSION_MINOR DEC(_SGI_COMPILER_VERSION/10 % 10) -# define COMPILER_VERSION_PATCH DEC(_SGI_COMPILER_VERSION % 10) -# else - /* _COMPILER_VERSION = VRP */ -# define COMPILER_VERSION_MAJOR DEC(_COMPILER_VERSION/100) -# define COMPILER_VERSION_MINOR DEC(_COMPILER_VERSION/10 % 10) -# define COMPILER_VERSION_PATCH DEC(_COMPILER_VERSION % 10) -# endif - -/* This compiler is either not known or is too old to define an - identification macro. Try to identify the platform and guess that - it is the native compiler. */ -#elif defined(__sgi) -# define COMPILER_ID "MIPSpro" - -#elif defined(__hpux) || defined(__hpua) -# define COMPILER_ID "HP" - -#else /* unknown compiler */ -# define COMPILER_ID "" - -#endif - -/* Construct the string literal in pieces to prevent the source from - getting matched. Store it in a pointer rather than an array - because some compilers will just produce instructions to fill the - array rather than assigning a pointer to a static array. */ -char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]"; - -/* Identify known platforms by name. */ -#if defined(__linux) || defined(__linux__) || defined(linux) -# define PLATFORM_ID "Linux" - -#elif defined(__CYGWIN__) -# define PLATFORM_ID "Cygwin" - -#elif defined(__MINGW32__) -# define PLATFORM_ID "MinGW" - -#elif defined(__APPLE__) -# define PLATFORM_ID "Darwin" - -#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32) -# define PLATFORM_ID "Windows" - -#elif defined(__FreeBSD__) || defined(__FreeBSD) -# define PLATFORM_ID "FreeBSD" - -#elif defined(__NetBSD__) || defined(__NetBSD) -# define PLATFORM_ID "NetBSD" - -#elif defined(__OpenBSD__) || defined(__OPENBSD) -# define PLATFORM_ID "OpenBSD" - -#elif defined(__sun) || defined(sun) -# define PLATFORM_ID "SunOS" - -#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__) -# define PLATFORM_ID "AIX" - -#elif defined(__sgi) || defined(__sgi__) || defined(_SGI) -# define PLATFORM_ID "IRIX" - -#elif defined(__hpux) || defined(__hpux__) -# define PLATFORM_ID "HP-UX" - -#elif defined(__HAIKU__) -# define PLATFORM_ID "Haiku" - -#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS) -# define PLATFORM_ID "BeOS" - -#elif defined(__QNX__) || defined(__QNXNTO__) -# define PLATFORM_ID "QNX" - -#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__) -# define PLATFORM_ID "Tru64" - -#elif defined(__riscos) || defined(__riscos__) -# define PLATFORM_ID "RISCos" - -#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__) -# define PLATFORM_ID "SINIX" - -#elif defined(__UNIX_SV__) -# define PLATFORM_ID "UNIX_SV" - -#elif defined(__bsdos__) -# define PLATFORM_ID "BSDOS" - -#elif defined(_MPRAS) || defined(MPRAS) -# define PLATFORM_ID "MP-RAS" - -#elif defined(__osf) || defined(__osf__) -# define PLATFORM_ID "OSF1" - -#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv) -# define PLATFORM_ID "SCO_SV" - -#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX) -# define PLATFORM_ID "ULTRIX" - -#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX) -# define PLATFORM_ID "Xenix" - -#else /* unknown platform */ -# define PLATFORM_ID "" - -#endif - -/* For windows compilers MSVC and Intel we can determine - the architecture of the compiler being used. This is because - the compilers do not have flags that can change the architecture, - but rather depend on which compiler is being used -*/ -#if defined(_WIN32) && defined(_MSC_VER) -# if defined(_M_IA64) -# define ARCHITECTURE_ID "IA64" - -# elif defined(_M_X64) || defined(_M_AMD64) -# define ARCHITECTURE_ID "x64" - -# elif defined(_M_IX86) -# define ARCHITECTURE_ID "X86" - -# elif defined(_M_ARM) -# define ARCHITECTURE_ID "ARM" - -# elif defined(_M_MIPS) -# define ARCHITECTURE_ID "MIPS" - -# elif defined(_M_SH) -# define ARCHITECTURE_ID "SHx" - -# else /* unknown architecture */ -# define ARCHITECTURE_ID "" -# endif - -#else -# define ARCHITECTURE_ID "" -#endif - -/* Convert integer to decimal digit literals. */ -#define DEC(n) \ - ('0' + (((n) / 10000000)%10)), \ - ('0' + (((n) / 1000000)%10)), \ - ('0' + (((n) / 100000)%10)), \ - ('0' + (((n) / 10000)%10)), \ - ('0' + (((n) / 1000)%10)), \ - ('0' + (((n) / 100)%10)), \ - ('0' + (((n) / 10)%10)), \ - ('0' + ((n) % 10)) - -/* Convert integer to hex digit literals. */ -#define HEX(n) \ - ('0' + ((n)>>28 & 0xF)), \ - ('0' + ((n)>>24 & 0xF)), \ - ('0' + ((n)>>20 & 0xF)), \ - ('0' + ((n)>>16 & 0xF)), \ - ('0' + ((n)>>12 & 0xF)), \ - ('0' + ((n)>>8 & 0xF)), \ - ('0' + ((n)>>4 & 0xF)), \ - ('0' + ((n) & 0xF)) - -/* Construct a string literal encoding the version number components. */ -#ifdef COMPILER_VERSION_MAJOR -char const info_version[] = { - 'I', 'N', 'F', 'O', ':', - 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[', - COMPILER_VERSION_MAJOR, -# ifdef COMPILER_VERSION_MINOR - '.', COMPILER_VERSION_MINOR, -# ifdef COMPILER_VERSION_PATCH - '.', COMPILER_VERSION_PATCH, -# ifdef COMPILER_VERSION_TWEAK - '.', COMPILER_VERSION_TWEAK, -# endif -# endif -# endif - ']','\0'}; -#endif - -/* Construct the string literal in pieces to prevent the source from - getting matched. Store it in a pointer rather than an array - because some compilers will just produce instructions to fill the - array rather than assigning a pointer to a static array. */ -char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]"; -char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]"; - - - -/*--------------------------------------------------------------------------*/ - -int main(int argc, char* argv[]) -{ - int require = 0; - require += info_compiler[argc]; - require += info_platform[argc]; -#ifdef COMPILER_VERSION_MAJOR - require += info_version[argc]; -#endif - (void)argv; - return require; -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/2.8.12.2/CompilerIdCXX/a.out b/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/2.8.12.2/CompilerIdCXX/a.out deleted file mode 100755 index db35dbd..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/2.8.12.2/CompilerIdCXX/a.out and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeDirectoryInformation.cmake b/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeDirectoryInformation.cmake deleted file mode 100644 index 21c61ba..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeDirectoryInformation.cmake +++ /dev/null @@ -1,16 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 2.8 - -# Relative path conversion top directories. -SET(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D") -SET(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D") - -# Force unix paths in dependencies. -SET(CMAKE_FORCE_UNIX_PATHS 1) - - -# The C and CXX include file regular expressions for this directory. -SET(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$") -SET(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$") -SET(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN}) -SET(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN}) diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeOutput.log b/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeOutput.log deleted file mode 100644 index d771390..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeOutput.log +++ /dev/null @@ -1,353 +0,0 @@ -The system is: Linux - 3.13.0-48-generic - x86_64 -Compiling the C compiler identification source file "CMakeCCompilerId.c" succeeded. -Compiler: /usr/bin/cc -Build flags: -Id flags: - -The output was: -0 - - -Compilation of the C compiler identification source "CMakeCCompilerId.c" produced "a.out" - -The C compiler identification is GNU, found in "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/2.8.12.2/CompilerIdC/a.out" - -Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" succeeded. -Compiler: /usr/bin/c++ -Build flags: -Id flags: - -The output was: -0 - - -Compilation of the CXX compiler identification source "CMakeCXXCompilerId.cpp" produced "a.out" - -The CXX compiler identification is GNU, found in "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/2.8.12.2/CompilerIdCXX/a.out" - -Determining if the C compiler works passed with the following output: -Change Dir: /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp - -Run Build Command:/usr/bin/make "cmTryCompileExec2742821246/fast" -/usr/bin/make -f CMakeFiles/cmTryCompileExec2742821246.dir/build.make CMakeFiles/cmTryCompileExec2742821246.dir/build -make[1]: Entering directory `/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp' -/usr/bin/cmake -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp/CMakeFiles 1 -Building C object CMakeFiles/cmTryCompileExec2742821246.dir/testCCompiler.c.o -/usr/bin/cc -o CMakeFiles/cmTryCompileExec2742821246.dir/testCCompiler.c.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp/testCCompiler.c -Linking C executable cmTryCompileExec2742821246 -/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTryCompileExec2742821246.dir/link.txt --verbose=1 -/usr/bin/cc CMakeFiles/cmTryCompileExec2742821246.dir/testCCompiler.c.o -o cmTryCompileExec2742821246 -rdynamic -make[1]: Leaving directory `/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp' - - -Detecting C compiler ABI info compiled with the following output: -Change Dir: /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp - -Run Build Command:/usr/bin/make "cmTryCompileExec4085468427/fast" -/usr/bin/make -f CMakeFiles/cmTryCompileExec4085468427.dir/build.make CMakeFiles/cmTryCompileExec4085468427.dir/build -make[1]: Entering directory `/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp' -/usr/bin/cmake -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp/CMakeFiles 1 -Building C object CMakeFiles/cmTryCompileExec4085468427.dir/CMakeCCompilerABI.c.o -/usr/bin/cc -o CMakeFiles/cmTryCompileExec4085468427.dir/CMakeCCompilerABI.c.o -c /usr/share/cmake-2.8/Modules/CMakeCCompilerABI.c -Linking C executable cmTryCompileExec4085468427 -/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTryCompileExec4085468427.dir/link.txt --verbose=1 -/usr/bin/cc -v CMakeFiles/cmTryCompileExec4085468427.dir/CMakeCCompilerABI.c.o -o cmTryCompileExec4085468427 -rdynamic -Using built-in specs. -COLLECT_GCC=/usr/bin/cc -COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/4.8/lto-wrapper -Target: x86_64-linux-gnu -Configured with: ../src/configure -v --with-pkgversion='Ubuntu 4.8.2-19ubuntu1' --with-bugurl=file:///usr/share/doc/gcc-4.8/README.Bugs --enable-languages=c,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-4.8 --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.8 --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-gnu-unique-object --disable-libmudflap --enable-plugin --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-4.8-amd64/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-4.8-amd64 --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-4.8-amd64 --with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --enable-objc-gc --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu -Thread model: posix -gcc version 4.8.2 (Ubuntu 4.8.2-19ubuntu1) -COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/4.8/:/usr/lib/gcc/x86_64-linux-gnu/4.8/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/4.8/:/usr/lib/gcc/x86_64-linux-gnu/ -LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/4.8/:/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../:/lib/:/usr/lib/ -COLLECT_GCC_OPTIONS='-v' '-o' 'cmTryCompileExec4085468427' '-rdynamic' '-mtune=generic' '-march=x86-64' - /usr/lib/gcc/x86_64-linux-gnu/4.8/collect2 --sysroot=/ --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -z relro -o cmTryCompileExec4085468427 /usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/crt1.o /usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/4.8/crtbegin.o -L/usr/lib/gcc/x86_64-linux-gnu/4.8 -L/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/4.8/../../.. CMakeFiles/cmTryCompileExec4085468427.dir/CMakeCCompilerABI.c.o -lgcc --as-needed -lgcc_s --no-as-needed -lc -lgcc --as-needed -lgcc_s --no-as-needed /usr/lib/gcc/x86_64-linux-gnu/4.8/crtend.o /usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/crtn.o -make[1]: Leaving directory `/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp' - - -Parsed C implicit link information from above output: - link line regex: [^( *|.*[/\])(ld|([^/\]+-)?ld|collect2)[^/\]*( |$)] - ignore line: [Change Dir: /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp] - ignore line: [] - ignore line: [Run Build Command:/usr/bin/make "cmTryCompileExec4085468427/fast"] - ignore line: [/usr/bin/make -f CMakeFiles/cmTryCompileExec4085468427.dir/build.make CMakeFiles/cmTryCompileExec4085468427.dir/build] - ignore line: [make[1]: Entering directory `/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp'] - ignore line: [/usr/bin/cmake -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp/CMakeFiles 1] - ignore line: [Building C object CMakeFiles/cmTryCompileExec4085468427.dir/CMakeCCompilerABI.c.o] - ignore line: [/usr/bin/cc -o CMakeFiles/cmTryCompileExec4085468427.dir/CMakeCCompilerABI.c.o -c /usr/share/cmake-2.8/Modules/CMakeCCompilerABI.c] - ignore line: [Linking C executable cmTryCompileExec4085468427] - ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTryCompileExec4085468427.dir/link.txt --verbose=1] - ignore line: [/usr/bin/cc -v CMakeFiles/cmTryCompileExec4085468427.dir/CMakeCCompilerABI.c.o -o cmTryCompileExec4085468427 -rdynamic ] - ignore line: [Using built-in specs.] - ignore line: [COLLECT_GCC=/usr/bin/cc] - ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/4.8/lto-wrapper] - ignore line: [Target: x86_64-linux-gnu] - ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 4.8.2-19ubuntu1' --with-bugurl=file:///usr/share/doc/gcc-4.8/README.Bugs --enable-languages=c,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-4.8 --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.8 --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-gnu-unique-object --disable-libmudflap --enable-plugin --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-4.8-amd64/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-4.8-amd64 --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-4.8-amd64 --with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --enable-objc-gc --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu] - ignore line: [Thread model: posix] - ignore line: [gcc version 4.8.2 (Ubuntu 4.8.2-19ubuntu1) ] - ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/4.8/:/usr/lib/gcc/x86_64-linux-gnu/4.8/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/4.8/:/usr/lib/gcc/x86_64-linux-gnu/] - ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/4.8/:/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../:/lib/:/usr/lib/] - ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTryCompileExec4085468427' '-rdynamic' '-mtune=generic' '-march=x86-64'] - link line: [ /usr/lib/gcc/x86_64-linux-gnu/4.8/collect2 --sysroot=/ --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -z relro -o cmTryCompileExec4085468427 /usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/crt1.o /usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/4.8/crtbegin.o -L/usr/lib/gcc/x86_64-linux-gnu/4.8 -L/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/4.8/../../.. CMakeFiles/cmTryCompileExec4085468427.dir/CMakeCCompilerABI.c.o -lgcc --as-needed -lgcc_s --no-as-needed -lc -lgcc --as-needed -lgcc_s --no-as-needed /usr/lib/gcc/x86_64-linux-gnu/4.8/crtend.o /usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/crtn.o] - arg [/usr/lib/gcc/x86_64-linux-gnu/4.8/collect2] ==> ignore - arg [--sysroot=/] ==> ignore - arg [--build-id] ==> ignore - arg [--eh-frame-hdr] ==> ignore - arg [-m] ==> ignore - arg [elf_x86_64] ==> ignore - arg [--hash-style=gnu] ==> ignore - arg [--as-needed] ==> ignore - arg [-export-dynamic] ==> ignore - arg [-dynamic-linker] ==> ignore - arg [/lib64/ld-linux-x86-64.so.2] ==> ignore - arg [-zrelro] ==> ignore - arg [-o] ==> ignore - arg [cmTryCompileExec4085468427] ==> ignore - arg [/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/crt1.o] ==> ignore - arg [/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/crti.o] ==> ignore - arg [/usr/lib/gcc/x86_64-linux-gnu/4.8/crtbegin.o] ==> ignore - arg [-L/usr/lib/gcc/x86_64-linux-gnu/4.8] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/4.8] - arg [-L/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu] - arg [-L/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../lib] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../lib] - arg [-L/lib/x86_64-linux-gnu] ==> dir [/lib/x86_64-linux-gnu] - arg [-L/lib/../lib] ==> dir [/lib/../lib] - arg [-L/usr/lib/x86_64-linux-gnu] ==> dir [/usr/lib/x86_64-linux-gnu] - arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib] - arg [-L/usr/lib/gcc/x86_64-linux-gnu/4.8/../../..] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/4.8/../../..] - arg [CMakeFiles/cmTryCompileExec4085468427.dir/CMakeCCompilerABI.c.o] ==> ignore - arg [-lgcc] ==> lib [gcc] - arg [--as-needed] ==> ignore - arg [-lgcc_s] ==> lib [gcc_s] - arg [--no-as-needed] ==> ignore - arg [-lc] ==> lib [c] - arg [-lgcc] ==> lib [gcc] - arg [--as-needed] ==> ignore - arg [-lgcc_s] ==> lib [gcc_s] - arg [--no-as-needed] ==> ignore - arg [/usr/lib/gcc/x86_64-linux-gnu/4.8/crtend.o] ==> ignore - arg [/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/crtn.o] ==> ignore - remove lib [gcc] - remove lib [gcc_s] - remove lib [gcc] - remove lib [gcc_s] - collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/4.8] ==> [/usr/lib/gcc/x86_64-linux-gnu/4.8] - collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu] - collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../lib] ==> [/usr/lib] - collapse library dir [/lib/x86_64-linux-gnu] ==> [/lib/x86_64-linux-gnu] - collapse library dir [/lib/../lib] ==> [/lib] - collapse library dir [/usr/lib/x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu] - collapse library dir [/usr/lib/../lib] ==> [/usr/lib] - collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/4.8/../../..] ==> [/usr/lib] - implicit libs: [c] - implicit dirs: [/usr/lib/gcc/x86_64-linux-gnu/4.8;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib] - implicit fwks: [] - - -Determining if the CXX compiler works passed with the following output: -Change Dir: /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp - -Run Build Command:/usr/bin/make "cmTryCompileExec845632631/fast" -/usr/bin/make -f CMakeFiles/cmTryCompileExec845632631.dir/build.make CMakeFiles/cmTryCompileExec845632631.dir/build -make[1]: Entering directory `/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp' -/usr/bin/cmake -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp/CMakeFiles 1 -Building CXX object CMakeFiles/cmTryCompileExec845632631.dir/testCXXCompiler.cxx.o -/usr/bin/c++ -o CMakeFiles/cmTryCompileExec845632631.dir/testCXXCompiler.cxx.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp/testCXXCompiler.cxx -Linking CXX executable cmTryCompileExec845632631 -/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTryCompileExec845632631.dir/link.txt --verbose=1 -/usr/bin/c++ CMakeFiles/cmTryCompileExec845632631.dir/testCXXCompiler.cxx.o -o cmTryCompileExec845632631 -rdynamic -make[1]: Leaving directory `/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp' - - -Detecting CXX compiler ABI info compiled with the following output: -Change Dir: /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp - -Run Build Command:/usr/bin/make "cmTryCompileExec1874850500/fast" -/usr/bin/make -f CMakeFiles/cmTryCompileExec1874850500.dir/build.make CMakeFiles/cmTryCompileExec1874850500.dir/build -make[1]: Entering directory `/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp' -/usr/bin/cmake -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp/CMakeFiles 1 -Building CXX object CMakeFiles/cmTryCompileExec1874850500.dir/CMakeCXXCompilerABI.cpp.o -/usr/bin/c++ -o CMakeFiles/cmTryCompileExec1874850500.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-2.8/Modules/CMakeCXXCompilerABI.cpp -Linking CXX executable cmTryCompileExec1874850500 -/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTryCompileExec1874850500.dir/link.txt --verbose=1 -/usr/bin/c++ -v CMakeFiles/cmTryCompileExec1874850500.dir/CMakeCXXCompilerABI.cpp.o -o cmTryCompileExec1874850500 -rdynamic -Using built-in specs. -COLLECT_GCC=/usr/bin/c++ -COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/4.8/lto-wrapper -Target: x86_64-linux-gnu -Configured with: ../src/configure -v --with-pkgversion='Ubuntu 4.8.2-19ubuntu1' --with-bugurl=file:///usr/share/doc/gcc-4.8/README.Bugs --enable-languages=c,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-4.8 --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.8 --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-gnu-unique-object --disable-libmudflap --enable-plugin --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-4.8-amd64/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-4.8-amd64 --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-4.8-amd64 --with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --enable-objc-gc --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu -Thread model: posix -gcc version 4.8.2 (Ubuntu 4.8.2-19ubuntu1) -COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/4.8/:/usr/lib/gcc/x86_64-linux-gnu/4.8/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/4.8/:/usr/lib/gcc/x86_64-linux-gnu/ -LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/4.8/:/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../:/lib/:/usr/lib/ -COLLECT_GCC_OPTIONS='-v' '-o' 'cmTryCompileExec1874850500' '-rdynamic' '-shared-libgcc' '-mtune=generic' '-march=x86-64' - /usr/lib/gcc/x86_64-linux-gnu/4.8/collect2 --sysroot=/ --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -z relro -o cmTryCompileExec1874850500 /usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/crt1.o /usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/4.8/crtbegin.o -L/usr/lib/gcc/x86_64-linux-gnu/4.8 -L/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/4.8/../../.. CMakeFiles/cmTryCompileExec1874850500.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/4.8/crtend.o /usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/crtn.o -make[1]: Leaving directory `/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp' - - -Parsed CXX implicit link information from above output: - link line regex: [^( *|.*[/\])(ld|([^/\]+-)?ld|collect2)[^/\]*( |$)] - ignore line: [Change Dir: /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp] - ignore line: [] - ignore line: [Run Build Command:/usr/bin/make "cmTryCompileExec1874850500/fast"] - ignore line: [/usr/bin/make -f CMakeFiles/cmTryCompileExec1874850500.dir/build.make CMakeFiles/cmTryCompileExec1874850500.dir/build] - ignore line: [make[1]: Entering directory `/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp'] - ignore line: [/usr/bin/cmake -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp/CMakeFiles 1] - ignore line: [Building CXX object CMakeFiles/cmTryCompileExec1874850500.dir/CMakeCXXCompilerABI.cpp.o] - ignore line: [/usr/bin/c++ -o CMakeFiles/cmTryCompileExec1874850500.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-2.8/Modules/CMakeCXXCompilerABI.cpp] - ignore line: [Linking CXX executable cmTryCompileExec1874850500] - ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTryCompileExec1874850500.dir/link.txt --verbose=1] - ignore line: [/usr/bin/c++ -v CMakeFiles/cmTryCompileExec1874850500.dir/CMakeCXXCompilerABI.cpp.o -o cmTryCompileExec1874850500 -rdynamic ] - ignore line: [Using built-in specs.] - ignore line: [COLLECT_GCC=/usr/bin/c++] - ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/4.8/lto-wrapper] - ignore line: [Target: x86_64-linux-gnu] - ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 4.8.2-19ubuntu1' --with-bugurl=file:///usr/share/doc/gcc-4.8/README.Bugs --enable-languages=c,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-4.8 --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.8 --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-gnu-unique-object --disable-libmudflap --enable-plugin --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-4.8-amd64/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-4.8-amd64 --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-4.8-amd64 --with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --enable-objc-gc --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu] - ignore line: [Thread model: posix] - ignore line: [gcc version 4.8.2 (Ubuntu 4.8.2-19ubuntu1) ] - ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/4.8/:/usr/lib/gcc/x86_64-linux-gnu/4.8/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/4.8/:/usr/lib/gcc/x86_64-linux-gnu/] - ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/4.8/:/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../:/lib/:/usr/lib/] - ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTryCompileExec1874850500' '-rdynamic' '-shared-libgcc' '-mtune=generic' '-march=x86-64'] - link line: [ /usr/lib/gcc/x86_64-linux-gnu/4.8/collect2 --sysroot=/ --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -z relro -o cmTryCompileExec1874850500 /usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/crt1.o /usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/4.8/crtbegin.o -L/usr/lib/gcc/x86_64-linux-gnu/4.8 -L/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/4.8/../../.. CMakeFiles/cmTryCompileExec1874850500.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/4.8/crtend.o /usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/crtn.o] - arg [/usr/lib/gcc/x86_64-linux-gnu/4.8/collect2] ==> ignore - arg [--sysroot=/] ==> ignore - arg [--build-id] ==> ignore - arg [--eh-frame-hdr] ==> ignore - arg [-m] ==> ignore - arg [elf_x86_64] ==> ignore - arg [--hash-style=gnu] ==> ignore - arg [--as-needed] ==> ignore - arg [-export-dynamic] ==> ignore - arg [-dynamic-linker] ==> ignore - arg [/lib64/ld-linux-x86-64.so.2] ==> ignore - arg [-zrelro] ==> ignore - arg [-o] ==> ignore - arg [cmTryCompileExec1874850500] ==> ignore - arg [/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/crt1.o] ==> ignore - arg [/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/crti.o] ==> ignore - arg [/usr/lib/gcc/x86_64-linux-gnu/4.8/crtbegin.o] ==> ignore - arg [-L/usr/lib/gcc/x86_64-linux-gnu/4.8] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/4.8] - arg [-L/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu] - arg [-L/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../lib] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../lib] - arg [-L/lib/x86_64-linux-gnu] ==> dir [/lib/x86_64-linux-gnu] - arg [-L/lib/../lib] ==> dir [/lib/../lib] - arg [-L/usr/lib/x86_64-linux-gnu] ==> dir [/usr/lib/x86_64-linux-gnu] - arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib] - arg [-L/usr/lib/gcc/x86_64-linux-gnu/4.8/../../..] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/4.8/../../..] - arg [CMakeFiles/cmTryCompileExec1874850500.dir/CMakeCXXCompilerABI.cpp.o] ==> ignore - arg [-lstdc++] ==> lib [stdc++] - arg [-lm] ==> lib [m] - arg [-lgcc_s] ==> lib [gcc_s] - arg [-lgcc] ==> lib [gcc] - arg [-lc] ==> lib [c] - arg [-lgcc_s] ==> lib [gcc_s] - arg [-lgcc] ==> lib [gcc] - arg [/usr/lib/gcc/x86_64-linux-gnu/4.8/crtend.o] ==> ignore - arg [/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/crtn.o] ==> ignore - remove lib [gcc_s] - remove lib [gcc] - remove lib [gcc_s] - remove lib [gcc] - collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/4.8] ==> [/usr/lib/gcc/x86_64-linux-gnu/4.8] - collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu] - collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../lib] ==> [/usr/lib] - collapse library dir [/lib/x86_64-linux-gnu] ==> [/lib/x86_64-linux-gnu] - collapse library dir [/lib/../lib] ==> [/lib] - collapse library dir [/usr/lib/x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu] - collapse library dir [/usr/lib/../lib] ==> [/usr/lib] - collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/4.8/../../..] ==> [/usr/lib] - implicit libs: [stdc++;m;c] - implicit dirs: [/usr/lib/gcc/x86_64-linux-gnu/4.8;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib] - implicit fwks: [] - - -Determining if the function XOpenDisplay exists in the /usr/lib/x86_64-linux-gnu/libX11.so;/usr/lib/x86_64-linux-gnu/libXext.so passed with the following output: -Change Dir: /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp - -Run Build Command:/usr/bin/make "cmTryCompileExec2434046348/fast" -/usr/bin/make -f CMakeFiles/cmTryCompileExec2434046348.dir/build.make CMakeFiles/cmTryCompileExec2434046348.dir/build -make[1]: Entering directory `/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp' -/usr/bin/cmake -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp/CMakeFiles 1 -Building C object CMakeFiles/cmTryCompileExec2434046348.dir/CheckFunctionExists.c.o -/usr/bin/cc -DCHECK_FUNCTION_EXISTS=XOpenDisplay -o CMakeFiles/cmTryCompileExec2434046348.dir/CheckFunctionExists.c.o -c /usr/share/cmake-2.8/Modules/CheckFunctionExists.c -Linking C executable cmTryCompileExec2434046348 -/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTryCompileExec2434046348.dir/link.txt --verbose=1 -/usr/bin/cc -DCHECK_FUNCTION_EXISTS=XOpenDisplay CMakeFiles/cmTryCompileExec2434046348.dir/CheckFunctionExists.c.o -o cmTryCompileExec2434046348 -rdynamic -lX11 -lXext -make[1]: Leaving directory `/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp' - - -Determining if the function gethostbyname exists passed with the following output: -Change Dir: /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp - -Run Build Command:/usr/bin/make "cmTryCompileExec911643615/fast" -/usr/bin/make -f CMakeFiles/cmTryCompileExec911643615.dir/build.make CMakeFiles/cmTryCompileExec911643615.dir/build -make[1]: Entering directory `/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp' -/usr/bin/cmake -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp/CMakeFiles 1 -Building C object CMakeFiles/cmTryCompileExec911643615.dir/CheckFunctionExists.c.o -/usr/bin/cc -DCHECK_FUNCTION_EXISTS=gethostbyname -o CMakeFiles/cmTryCompileExec911643615.dir/CheckFunctionExists.c.o -c /usr/share/cmake-2.8/Modules/CheckFunctionExists.c -Linking C executable cmTryCompileExec911643615 -/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTryCompileExec911643615.dir/link.txt --verbose=1 -/usr/bin/cc -DCHECK_FUNCTION_EXISTS=gethostbyname CMakeFiles/cmTryCompileExec911643615.dir/CheckFunctionExists.c.o -o cmTryCompileExec911643615 -rdynamic -make[1]: Leaving directory `/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp' - - -Determining if the function connect exists passed with the following output: -Change Dir: /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp - -Run Build Command:/usr/bin/make "cmTryCompileExec1117601580/fast" -/usr/bin/make -f CMakeFiles/cmTryCompileExec1117601580.dir/build.make CMakeFiles/cmTryCompileExec1117601580.dir/build -make[1]: Entering directory `/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp' -/usr/bin/cmake -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp/CMakeFiles 1 -Building C object CMakeFiles/cmTryCompileExec1117601580.dir/CheckFunctionExists.c.o -/usr/bin/cc -DCHECK_FUNCTION_EXISTS=connect -o CMakeFiles/cmTryCompileExec1117601580.dir/CheckFunctionExists.c.o -c /usr/share/cmake-2.8/Modules/CheckFunctionExists.c -Linking C executable cmTryCompileExec1117601580 -/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTryCompileExec1117601580.dir/link.txt --verbose=1 -/usr/bin/cc -DCHECK_FUNCTION_EXISTS=connect CMakeFiles/cmTryCompileExec1117601580.dir/CheckFunctionExists.c.o -o cmTryCompileExec1117601580 -rdynamic -make[1]: Leaving directory `/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp' - - -Determining if the function remove exists passed with the following output: -Change Dir: /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp - -Run Build Command:/usr/bin/make "cmTryCompileExec3878703860/fast" -/usr/bin/make -f CMakeFiles/cmTryCompileExec3878703860.dir/build.make CMakeFiles/cmTryCompileExec3878703860.dir/build -make[1]: Entering directory `/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp' -/usr/bin/cmake -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp/CMakeFiles 1 -Building C object CMakeFiles/cmTryCompileExec3878703860.dir/CheckFunctionExists.c.o -/usr/bin/cc -DCHECK_FUNCTION_EXISTS=remove -o CMakeFiles/cmTryCompileExec3878703860.dir/CheckFunctionExists.c.o -c /usr/share/cmake-2.8/Modules/CheckFunctionExists.c -Linking C executable cmTryCompileExec3878703860 -/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTryCompileExec3878703860.dir/link.txt --verbose=1 -/usr/bin/cc -DCHECK_FUNCTION_EXISTS=remove CMakeFiles/cmTryCompileExec3878703860.dir/CheckFunctionExists.c.o -o cmTryCompileExec3878703860 -rdynamic -make[1]: Leaving directory `/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp' - - -Determining if the function shmat exists passed with the following output: -Change Dir: /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp - -Run Build Command:/usr/bin/make "cmTryCompileExec3420004598/fast" -/usr/bin/make -f CMakeFiles/cmTryCompileExec3420004598.dir/build.make CMakeFiles/cmTryCompileExec3420004598.dir/build -make[1]: Entering directory `/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp' -/usr/bin/cmake -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp/CMakeFiles 1 -Building C object CMakeFiles/cmTryCompileExec3420004598.dir/CheckFunctionExists.c.o -/usr/bin/cc -DCHECK_FUNCTION_EXISTS=shmat -o CMakeFiles/cmTryCompileExec3420004598.dir/CheckFunctionExists.c.o -c /usr/share/cmake-2.8/Modules/CheckFunctionExists.c -Linking C executable cmTryCompileExec3420004598 -/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTryCompileExec3420004598.dir/link.txt --verbose=1 -/usr/bin/cc -DCHECK_FUNCTION_EXISTS=shmat CMakeFiles/cmTryCompileExec3420004598.dir/CheckFunctionExists.c.o -o cmTryCompileExec3420004598 -rdynamic -make[1]: Leaving directory `/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp' - - -Determining if the function IceConnectionNumber exists in the ICE passed with the following output: -Change Dir: /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp - -Run Build Command:/usr/bin/make "cmTryCompileExec873066855/fast" -/usr/bin/make -f CMakeFiles/cmTryCompileExec873066855.dir/build.make CMakeFiles/cmTryCompileExec873066855.dir/build -make[1]: Entering directory `/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp' -/usr/bin/cmake -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp/CMakeFiles 1 -Building C object CMakeFiles/cmTryCompileExec873066855.dir/CheckFunctionExists.c.o -/usr/bin/cc -DCHECK_FUNCTION_EXISTS=IceConnectionNumber -o CMakeFiles/cmTryCompileExec873066855.dir/CheckFunctionExists.c.o -c /usr/share/cmake-2.8/Modules/CheckFunctionExists.c -Linking C executable cmTryCompileExec873066855 -/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTryCompileExec873066855.dir/link.txt --verbose=1 -/usr/bin/cc -DCHECK_FUNCTION_EXISTS=IceConnectionNumber CMakeFiles/cmTryCompileExec873066855.dir/CheckFunctionExists.c.o -o cmTryCompileExec873066855 -rdynamic -lICE -make[1]: Leaving directory `/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/CMakeTmp' - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/Makefile.cmake b/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/Makefile.cmake deleted file mode 100644 index 74459d1..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/Makefile.cmake +++ /dev/null @@ -1,90 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 2.8 - -# The generator used is: -SET(CMAKE_DEPENDS_GENERATOR "Unix Makefiles") - -# The top level Makefile was generated from the following files: -SET(CMAKE_MAKEFILE_DEPENDS - "CMakeCache.txt" - "Box2D/CMakeLists.txt" - "CMakeFiles/2.8.12.2/CMakeCCompiler.cmake" - "CMakeFiles/2.8.12.2/CMakeCXXCompiler.cmake" - "CMakeFiles/2.8.12.2/CMakeSystem.cmake" - "CMakeLists.txt" - "HelloWorld/CMakeLists.txt" - "Testbed/CMakeLists.txt" - "freeglut/CMakeLists.txt" - "glui/CMakeLists.txt" - "/usr/share/cmake-2.8/Modules/CMakeCCompiler.cmake.in" - "/usr/share/cmake-2.8/Modules/CMakeCCompilerABI.c" - "/usr/share/cmake-2.8/Modules/CMakeCInformation.cmake" - "/usr/share/cmake-2.8/Modules/CMakeCXXCompiler.cmake.in" - "/usr/share/cmake-2.8/Modules/CMakeCXXCompilerABI.cpp" - "/usr/share/cmake-2.8/Modules/CMakeCXXInformation.cmake" - "/usr/share/cmake-2.8/Modules/CMakeClDeps.cmake" - "/usr/share/cmake-2.8/Modules/CMakeCommonLanguageInclude.cmake" - "/usr/share/cmake-2.8/Modules/CMakeDetermineCCompiler.cmake" - "/usr/share/cmake-2.8/Modules/CMakeDetermineCXXCompiler.cmake" - "/usr/share/cmake-2.8/Modules/CMakeDetermineCompiler.cmake" - "/usr/share/cmake-2.8/Modules/CMakeDetermineCompilerABI.cmake" - "/usr/share/cmake-2.8/Modules/CMakeDetermineCompilerId.cmake" - "/usr/share/cmake-2.8/Modules/CMakeDetermineSystem.cmake" - "/usr/share/cmake-2.8/Modules/CMakeFindBinUtils.cmake" - "/usr/share/cmake-2.8/Modules/CMakeGenericSystem.cmake" - "/usr/share/cmake-2.8/Modules/CMakeParseArguments.cmake" - "/usr/share/cmake-2.8/Modules/CMakeParseImplicitLinkInfo.cmake" - "/usr/share/cmake-2.8/Modules/CMakeSystem.cmake.in" - "/usr/share/cmake-2.8/Modules/CMakeSystemSpecificInformation.cmake" - "/usr/share/cmake-2.8/Modules/CMakeTestCCompiler.cmake" - "/usr/share/cmake-2.8/Modules/CMakeTestCXXCompiler.cmake" - "/usr/share/cmake-2.8/Modules/CMakeTestCompilerCommon.cmake" - "/usr/share/cmake-2.8/Modules/CMakeUnixFindMake.cmake" - "/usr/share/cmake-2.8/Modules/CheckFunctionExists.c" - "/usr/share/cmake-2.8/Modules/CheckFunctionExists.cmake" - "/usr/share/cmake-2.8/Modules/CheckLibraryExists.cmake" - "/usr/share/cmake-2.8/Modules/Compiler/GNU-C.cmake" - "/usr/share/cmake-2.8/Modules/Compiler/GNU-CXX.cmake" - "/usr/share/cmake-2.8/Modules/Compiler/GNU.cmake" - "/usr/share/cmake-2.8/Modules/FindOpenGL.cmake" - "/usr/share/cmake-2.8/Modules/FindPackageHandleStandardArgs.cmake" - "/usr/share/cmake-2.8/Modules/FindPackageMessage.cmake" - "/usr/share/cmake-2.8/Modules/FindX11.cmake" - "/usr/share/cmake-2.8/Modules/MultiArchCross.cmake" - "/usr/share/cmake-2.8/Modules/Platform/Linux-CXX.cmake" - "/usr/share/cmake-2.8/Modules/Platform/Linux-GNU-C.cmake" - "/usr/share/cmake-2.8/Modules/Platform/Linux-GNU-CXX.cmake" - "/usr/share/cmake-2.8/Modules/Platform/Linux-GNU.cmake" - "/usr/share/cmake-2.8/Modules/Platform/Linux.cmake" - "/usr/share/cmake-2.8/Modules/Platform/UnixPaths.cmake" - ) - -# The corresponding makefile is: -SET(CMAKE_MAKEFILE_OUTPUTS - "Makefile" - "CMakeFiles/cmake.check_cache" - ) - -# Byproducts of CMake generate step: -SET(CMAKE_MAKEFILE_PRODUCTS - "CMakeFiles/2.8.12.2/CMakeSystem.cmake" - "CMakeFiles/2.8.12.2/CMakeCCompiler.cmake" - "CMakeFiles/2.8.12.2/CMakeCXXCompiler.cmake" - "CMakeFiles/2.8.12.2/CMakeCCompiler.cmake" - "CMakeFiles/2.8.12.2/CMakeCXXCompiler.cmake" - "CMakeFiles/CMakeDirectoryInformation.cmake" - "Box2D/CMakeFiles/CMakeDirectoryInformation.cmake" - "HelloWorld/CMakeFiles/CMakeDirectoryInformation.cmake" - "freeglut/CMakeFiles/CMakeDirectoryInformation.cmake" - "glui/CMakeFiles/CMakeDirectoryInformation.cmake" - "Testbed/CMakeFiles/CMakeDirectoryInformation.cmake" - ) - -# Dependency information for all targets: -SET(CMAKE_DEPEND_INFO_FILES - "Box2D/CMakeFiles/Box2D.dir/DependInfo.cmake" - "HelloWorld/CMakeFiles/HelloWorld.dir/DependInfo.cmake" - "freeglut/CMakeFiles/freeglut_static.dir/DependInfo.cmake" - "glui/CMakeFiles/glui.dir/DependInfo.cmake" - "Testbed/CMakeFiles/Testbed.dir/DependInfo.cmake" - ) diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/Makefile2 b/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/Makefile2 deleted file mode 100644 index 4469ee6..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/Makefile2 +++ /dev/null @@ -1,316 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 2.8 - -# Default target executed when no arguments are given to make. -default_target: all -.PHONY : default_target - -# The main recursive all target -all: -.PHONY : all - -# The main recursive preinstall target -preinstall: -.PHONY : preinstall - -#============================================================================= -# Special targets provided by cmake. - -# Disable implicit rules so canonical targets will work. -.SUFFIXES: - -# Remove some rules from gmake that .SUFFIXES does not remove. -SUFFIXES = - -.SUFFIXES: .hpux_make_needs_suffix_list - -# Suppress display of executed commands. -$(VERBOSE).SILENT: - -# A target that is always out of date. -cmake_force: -.PHONY : cmake_force - -#============================================================================= -# Set environment variables for the build. - -# The shell in which to execute make rules. -SHELL = /bin/sh - -# The CMake executable. -CMAKE_COMMAND = /usr/bin/cmake - -# The command to remove a file. -RM = /usr/bin/cmake -E remove -f - -# Escaping for special characters. -EQUALS = = - -# The top-level source directory on which CMake was run. -CMAKE_SOURCE_DIR = /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D - -# The top-level build directory on which CMake was run. -CMAKE_BINARY_DIR = /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D - -#============================================================================= -# Directory level rules for directory Box2D - -# Convenience name for "all" pass in the directory. -Box2D/all: Box2D/CMakeFiles/Box2D.dir/all -.PHONY : Box2D/all - -# Convenience name for "clean" pass in the directory. -Box2D/clean: Box2D/CMakeFiles/Box2D.dir/clean -.PHONY : Box2D/clean - -# Convenience name for "preinstall" pass in the directory. -Box2D/preinstall: -.PHONY : Box2D/preinstall - -#============================================================================= -# Target rules for target Box2D/CMakeFiles/Box2D.dir - -# All Build rule for target. -Box2D/CMakeFiles/Box2D.dir/all: - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/depend - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/build - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 - @echo "Built target Box2D" -.PHONY : Box2D/CMakeFiles/Box2D.dir/all - -# Include target in all. -all: Box2D/CMakeFiles/Box2D.dir/all -.PHONY : all - -# Build rule for subdir invocation for target. -Box2D/CMakeFiles/Box2D.dir/rule: cmake_check_build_system - $(CMAKE_COMMAND) -E cmake_progress_start /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles 42 - $(MAKE) -f CMakeFiles/Makefile2 Box2D/CMakeFiles/Box2D.dir/all - $(CMAKE_COMMAND) -E cmake_progress_start /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles 0 -.PHONY : Box2D/CMakeFiles/Box2D.dir/rule - -# Convenience name for target. -Box2D: Box2D/CMakeFiles/Box2D.dir/rule -.PHONY : Box2D - -# clean rule for target. -Box2D/CMakeFiles/Box2D.dir/clean: - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/clean -.PHONY : Box2D/CMakeFiles/Box2D.dir/clean - -# clean rule for target. -clean: Box2D/CMakeFiles/Box2D.dir/clean -.PHONY : clean - -#============================================================================= -# Directory level rules for directory HelloWorld - -# Convenience name for "all" pass in the directory. -HelloWorld/all: HelloWorld/CMakeFiles/HelloWorld.dir/all -.PHONY : HelloWorld/all - -# Convenience name for "clean" pass in the directory. -HelloWorld/clean: HelloWorld/CMakeFiles/HelloWorld.dir/clean -.PHONY : HelloWorld/clean - -# Convenience name for "preinstall" pass in the directory. -HelloWorld/preinstall: -.PHONY : HelloWorld/preinstall - -#============================================================================= -# Target rules for target HelloWorld/CMakeFiles/HelloWorld.dir - -# All Build rule for target. -HelloWorld/CMakeFiles/HelloWorld.dir/all: Box2D/CMakeFiles/Box2D.dir/all - $(MAKE) -f HelloWorld/CMakeFiles/HelloWorld.dir/build.make HelloWorld/CMakeFiles/HelloWorld.dir/depend - $(MAKE) -f HelloWorld/CMakeFiles/HelloWorld.dir/build.make HelloWorld/CMakeFiles/HelloWorld.dir/build - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles 43 - @echo "Built target HelloWorld" -.PHONY : HelloWorld/CMakeFiles/HelloWorld.dir/all - -# Include target in all. -all: HelloWorld/CMakeFiles/HelloWorld.dir/all -.PHONY : all - -# Build rule for subdir invocation for target. -HelloWorld/CMakeFiles/HelloWorld.dir/rule: cmake_check_build_system - $(CMAKE_COMMAND) -E cmake_progress_start /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles 43 - $(MAKE) -f CMakeFiles/Makefile2 HelloWorld/CMakeFiles/HelloWorld.dir/all - $(CMAKE_COMMAND) -E cmake_progress_start /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles 0 -.PHONY : HelloWorld/CMakeFiles/HelloWorld.dir/rule - -# Convenience name for target. -HelloWorld: HelloWorld/CMakeFiles/HelloWorld.dir/rule -.PHONY : HelloWorld - -# clean rule for target. -HelloWorld/CMakeFiles/HelloWorld.dir/clean: - $(MAKE) -f HelloWorld/CMakeFiles/HelloWorld.dir/build.make HelloWorld/CMakeFiles/HelloWorld.dir/clean -.PHONY : HelloWorld/CMakeFiles/HelloWorld.dir/clean - -# clean rule for target. -clean: HelloWorld/CMakeFiles/HelloWorld.dir/clean -.PHONY : clean - -#============================================================================= -# Directory level rules for directory freeglut - -# Convenience name for "all" pass in the directory. -freeglut/all: freeglut/CMakeFiles/freeglut_static.dir/all -.PHONY : freeglut/all - -# Convenience name for "clean" pass in the directory. -freeglut/clean: freeglut/CMakeFiles/freeglut_static.dir/clean -.PHONY : freeglut/clean - -# Convenience name for "preinstall" pass in the directory. -freeglut/preinstall: -.PHONY : freeglut/preinstall - -#============================================================================= -# Target rules for target freeglut/CMakeFiles/freeglut_static.dir - -# All Build rule for target. -freeglut/CMakeFiles/freeglut_static.dir/all: - $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/depend - $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/build - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 - @echo "Built target freeglut_static" -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/all - -# Include target in all. -all: freeglut/CMakeFiles/freeglut_static.dir/all -.PHONY : all - -# Build rule for subdir invocation for target. -freeglut/CMakeFiles/freeglut_static.dir/rule: cmake_check_build_system - $(CMAKE_COMMAND) -E cmake_progress_start /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles 23 - $(MAKE) -f CMakeFiles/Makefile2 freeglut/CMakeFiles/freeglut_static.dir/all - $(CMAKE_COMMAND) -E cmake_progress_start /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles 0 -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/rule - -# Convenience name for target. -freeglut_static: freeglut/CMakeFiles/freeglut_static.dir/rule -.PHONY : freeglut_static - -# clean rule for target. -freeglut/CMakeFiles/freeglut_static.dir/clean: - $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/clean -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/clean - -# clean rule for target. -clean: freeglut/CMakeFiles/freeglut_static.dir/clean -.PHONY : clean - -#============================================================================= -# Directory level rules for directory glui - -# Convenience name for "all" pass in the directory. -glui/all: glui/CMakeFiles/glui.dir/all -.PHONY : glui/all - -# Convenience name for "clean" pass in the directory. -glui/clean: glui/CMakeFiles/glui.dir/clean -.PHONY : glui/clean - -# Convenience name for "preinstall" pass in the directory. -glui/preinstall: -.PHONY : glui/preinstall - -#============================================================================= -# Target rules for target glui/CMakeFiles/glui.dir - -# All Build rule for target. -glui/CMakeFiles/glui.dir/all: - $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/depend - $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/build - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 - @echo "Built target glui" -.PHONY : glui/CMakeFiles/glui.dir/all - -# Include target in all. -all: glui/CMakeFiles/glui.dir/all -.PHONY : all - -# Build rule for subdir invocation for target. -glui/CMakeFiles/glui.dir/rule: cmake_check_build_system - $(CMAKE_COMMAND) -E cmake_progress_start /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles 30 - $(MAKE) -f CMakeFiles/Makefile2 glui/CMakeFiles/glui.dir/all - $(CMAKE_COMMAND) -E cmake_progress_start /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles 0 -.PHONY : glui/CMakeFiles/glui.dir/rule - -# Convenience name for target. -glui: glui/CMakeFiles/glui.dir/rule -.PHONY : glui - -# clean rule for target. -glui/CMakeFiles/glui.dir/clean: - $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/clean -.PHONY : glui/CMakeFiles/glui.dir/clean - -# clean rule for target. -clean: glui/CMakeFiles/glui.dir/clean -.PHONY : clean - -#============================================================================= -# Directory level rules for directory Testbed - -# Convenience name for "all" pass in the directory. -Testbed/all: Testbed/CMakeFiles/Testbed.dir/all -.PHONY : Testbed/all - -# Convenience name for "clean" pass in the directory. -Testbed/clean: Testbed/CMakeFiles/Testbed.dir/clean -.PHONY : Testbed/clean - -# Convenience name for "preinstall" pass in the directory. -Testbed/preinstall: -.PHONY : Testbed/preinstall - -#============================================================================= -# Target rules for target Testbed/CMakeFiles/Testbed.dir - -# All Build rule for target. -Testbed/CMakeFiles/Testbed.dir/all: Box2D/CMakeFiles/Box2D.dir/all -Testbed/CMakeFiles/Testbed.dir/all: glui/CMakeFiles/glui.dir/all -Testbed/CMakeFiles/Testbed.dir/all: freeglut/CMakeFiles/freeglut_static.dir/all - $(MAKE) -f Testbed/CMakeFiles/Testbed.dir/build.make Testbed/CMakeFiles/Testbed.dir/depend - $(MAKE) -f Testbed/CMakeFiles/Testbed.dir/build.make Testbed/CMakeFiles/Testbed.dir/build - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles 44 45 46 47 - @echo "Built target Testbed" -.PHONY : Testbed/CMakeFiles/Testbed.dir/all - -# Include target in all. -all: Testbed/CMakeFiles/Testbed.dir/all -.PHONY : all - -# Build rule for subdir invocation for target. -Testbed/CMakeFiles/Testbed.dir/rule: cmake_check_build_system - $(CMAKE_COMMAND) -E cmake_progress_start /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles 99 - $(MAKE) -f CMakeFiles/Makefile2 Testbed/CMakeFiles/Testbed.dir/all - $(CMAKE_COMMAND) -E cmake_progress_start /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles 0 -.PHONY : Testbed/CMakeFiles/Testbed.dir/rule - -# Convenience name for target. -Testbed: Testbed/CMakeFiles/Testbed.dir/rule -.PHONY : Testbed - -# clean rule for target. -Testbed/CMakeFiles/Testbed.dir/clean: - $(MAKE) -f Testbed/CMakeFiles/Testbed.dir/build.make Testbed/CMakeFiles/Testbed.dir/clean -.PHONY : Testbed/CMakeFiles/Testbed.dir/clean - -# clean rule for target. -clean: Testbed/CMakeFiles/Testbed.dir/clean -.PHONY : clean - -#============================================================================= -# Special targets to cleanup operation of make. - -# Special rule to run CMake to check the build system integrity. -# No rule that depends on this can have commands that come from listfiles -# because they might be regenerated. -cmake_check_build_system: - $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 -.PHONY : cmake_check_build_system - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/TargetDirectories.txt b/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/TargetDirectories.txt deleted file mode 100644 index 9f3e0eb..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/TargetDirectories.txt +++ /dev/null @@ -1,5 +0,0 @@ -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/CMakeFiles/HelloWorld.dir -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/cmake.check_cache b/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/cmake.check_cache deleted file mode 100644 index 3dccd73..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/cmake.check_cache +++ /dev/null @@ -1 +0,0 @@ -# This file is generated by cmake for dependency checking of the CMakeCache.txt file diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/progress.marks b/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/progress.marks deleted file mode 100644 index 29d6383..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/progress.marks +++ /dev/null @@ -1 +0,0 @@ -100 diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/CMakeLists.txt b/src/dependencies/Box2D_v2.3.0/Box2D/CMakeLists.txt deleted file mode 100644 index a290f15..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/CMakeLists.txt +++ /dev/null @@ -1,36 +0,0 @@ -cmake_minimum_required(VERSION 2.6) - -project(Box2D) - -if(UNIX) - set(BOX2D_INSTALL_BY_DEFAULT ON) -else(UNIX) - set(BOX2D_INSTALL_BY_DEFAULT OFF) -endif(UNIX) - -option(BOX2D_INSTALL "Install Box2D libs, includes, and CMake scripts" ${BOX2D_INSTALL_BY_DEFAULT}) -option(BOX2D_INSTALL_DOC "Install Box2D documentation" OFF) -option(BOX2D_BUILD_SHARED "Build Box2D shared libraries" OFF) -option(BOX2D_BUILD_STATIC "Build Box2D static libraries" ON) -option(BOX2D_BUILD_EXAMPLES "Build Box2D examples" ON) - -set(BOX2D_VERSION 2.3.0) -set(LIB_INSTALL_DIR lib${LIB_SUFFIX}) - -# The Box2D library. -add_subdirectory(Box2D) - -if(BOX2D_BUILD_EXAMPLES) - # HelloWorld console example. - add_subdirectory(HelloWorld) - - # Testbed and dependencies. - find_package(OpenGL REQUIRED) - add_subdirectory(freeglut) - add_subdirectory(glui) - add_subdirectory(Testbed) -endif(BOX2D_BUILD_EXAMPLES) - -if(BOX2D_INSTALL_DOC) - install(DIRECTORY Documentation DESTINATION share/doc/Box2D PATTERN ".svn" EXCLUDE) -endif(BOX2D_INSTALL_DOC) diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Changes.txt b/src/dependencies/Box2D_v2.3.0/Box2D/Changes.txt deleted file mode 100644 index 0b27ba2..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Changes.txt +++ /dev/null @@ -1,5 +0,0 @@ -Version 2.3.0 -Polygon creation now computes the convex hull. Vertices no longer need to be ordered. -The convex hull code will merge vertices closer than dm_linearSlop. This may lead to failure on very small polygons. -Added b2MotorJoint. -Bug fixes. \ No newline at end of file diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/_box2_d_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/_box2_d_8h_source.html deleted file mode 100644 index 6988b71..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/_box2_d_8h_source.html +++ /dev/null @@ -1,159 +0,0 @@ - - - - - - -Box2D: Box2D.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    Box2D.h
    -
    -
    -
    1 /*
    -
    2 * Copyright (c) 2006-2009 Erin Catto http://www.box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef BOX2D_H
    -
    20 #define BOX2D_H
    -
    21 
    -
    32 // These include files constitute the main Box2D API
    -
    33 
    - -
    35 #include <Box2D/Common/b2Draw.h>
    -
    36 #include <Box2D/Common/b2Timer.h>
    -
    37 
    -
    38 #include <Box2D/Collision/Shapes/b2CircleShape.h>
    -
    39 #include <Box2D/Collision/Shapes/b2EdgeShape.h>
    -
    40 #include <Box2D/Collision/Shapes/b2ChainShape.h>
    -
    41 #include <Box2D/Collision/Shapes/b2PolygonShape.h>
    -
    42 
    -
    43 #include <Box2D/Collision/b2BroadPhase.h>
    -
    44 #include <Box2D/Collision/b2Distance.h>
    -
    45 #include <Box2D/Collision/b2DynamicTree.h>
    -
    46 #include <Box2D/Collision/b2TimeOfImpact.h>
    -
    47 
    -
    48 #include <Box2D/Dynamics/b2Body.h>
    -
    49 #include <Box2D/Dynamics/b2Fixture.h>
    -
    50 #include <Box2D/Dynamics/b2WorldCallbacks.h>
    -
    51 #include <Box2D/Dynamics/b2TimeStep.h>
    -
    52 #include <Box2D/Dynamics/b2World.h>
    -
    53 
    -
    54 #include <Box2D/Dynamics/Contacts/b2Contact.h>
    -
    55 
    -
    56 #include <Box2D/Dynamics/Joints/b2DistanceJoint.h>
    -
    57 #include <Box2D/Dynamics/Joints/b2FrictionJoint.h>
    -
    58 #include <Box2D/Dynamics/Joints/b2GearJoint.h>
    -
    59 #include <Box2D/Dynamics/Joints/b2MotorJoint.h>
    -
    60 #include <Box2D/Dynamics/Joints/b2MouseJoint.h>
    -
    61 #include <Box2D/Dynamics/Joints/b2PrismaticJoint.h>
    -
    62 #include <Box2D/Dynamics/Joints/b2PulleyJoint.h>
    -
    63 #include <Box2D/Dynamics/Joints/b2RevoluteJoint.h>
    -
    64 #include <Box2D/Dynamics/Joints/b2RopeJoint.h>
    -
    65 #include <Box2D/Dynamics/Joints/b2WeldJoint.h>
    -
    66 #include <Box2D/Dynamics/Joints/b2WheelJoint.h>
    -
    67 
    -
    68 #endif
    - -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/annotated.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/annotated.html deleted file mode 100644 index 87e94bb..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/annotated.html +++ /dev/null @@ -1,217 +0,0 @@ - - - - - - -Box2D: Class List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - -
    - - - - -
    - -
    - -
    -
    -
    Class List
    -
    -
    -
    Here are the classes, structs, unions and interfaces with brief descriptions:
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    oCb2AABBAn axis aligned bounding box
    oCb2Block
    oCb2BlockAllocator
    oCb2BodyA rigid body. These are created via b2World::CreateBody
    oCb2BodyDef
    oCb2BroadPhase
    oCb2ChainAndCircleContact
    oCb2ChainAndPolygonContact
    oCb2ChainShape
    oCb2Chunk
    oCb2CircleContact
    oCb2CircleShapeA circle shape
    oCb2ClipVertexUsed for computing contact manifolds
    oCb2ColorColor for debug drawing. Each value has the range [0,1]
    oCb2Contact
    oCb2ContactEdge
    oCb2ContactFeature
    oCb2ContactFilter
    oCb2ContactIDContact ids to facilitate warm starting
    oCb2ContactImpulse
    oCb2ContactListener
    oCb2ContactManager
    oCb2ContactPositionConstraint
    oCb2ContactRegister
    oCb2ContactSolver
    oCb2ContactSolverDef
    oCb2ContactVelocityConstraint
    oCb2DestructionListener
    oCb2DistanceInput
    oCb2DistanceJoint
    oCb2DistanceJointDef
    oCb2DistanceOutputOutput for b2Distance
    oCb2DistanceProxy
    oCb2Draw
    oCb2DynamicTree
    oCb2EdgeAndCircleContact
    oCb2EdgeAndPolygonContact
    oCb2EdgeShape
    oCb2EPAxis
    oCb2EPCollider
    oCb2FilterThis holds contact filtering data
    oCb2Fixture
    oCb2FixtureDef
    oCb2FixtureProxyThis proxy is used internally to connect fixtures to the broad-phase
    oCb2FrictionJoint
    oCb2FrictionJointDefFriction joint definition
    oCb2GearJoint
    oCb2GearJointDef
    oCb2GrowableStack
    oCb2IslandThis is an internal class
    oCb2Jacobian
    oCb2Joint
    oCb2JointDefJoint definitions are used to construct joints
    oCb2JointEdge
    oCb2Manifold
    oCb2ManifoldPoint
    oCb2MassDataThis holds the mass data computed for a shape
    oCb2Mat22A 2-by-2 matrix. Stored in column-major order
    oCb2Mat33A 3-by-3 matrix. Stored in column-major order
    oCb2MotorJoint
    oCb2MotorJointDefMotor joint definition
    oCb2MouseJoint
    oCb2MouseJointDef
    oCb2Pair
    oCb2PolygonAndCircleContact
    oCb2PolygonContact
    oCb2PolygonShape
    oCb2PositionThis is an internal structure
    oCb2PositionSolverManifold
    oCb2PrismaticJoint
    oCb2PrismaticJointDef
    oCb2ProfileProfiling data. Times are in milliseconds
    oCb2PulleyJoint
    oCb2PulleyJointDef
    oCb2QueryCallback
    oCb2RayCastCallback
    oCb2RayCastInputRay-cast input data. The ray extends from p1 to p1 + maxFraction * (p2 - p1)
    oCb2RayCastOutput
    oCb2ReferenceFace
    oCb2RevoluteJoint
    oCb2RevoluteJointDef
    oCb2Rope
    oCb2RopeDef
    oCb2RopeJoint
    oCb2RopeJointDef
    oCb2RotRotation
    oCb2SeparationFunction
    oCb2Shape
    oCb2Simplex
    oCb2SimplexCache
    oCb2SimplexVertex
    oCb2SolverDataSolver Data
    oCb2StackAllocator
    oCb2StackEntry
    oCb2Sweep
    oCb2TempPolygon
    oCb2Timer
    oCb2TimeStepThis is an internal structure
    oCb2TOIInputInput parameters for b2TimeOfImpact
    oCb2TOIOutput
    oCb2Transform
    oCb2TreeNodeA node in the dynamic tree. The client does not interact with this directly
    oCb2Vec2A 2D column vector
    oCb2Vec3A 2D column vector with 3 elements
    oCb2VelocityThis is an internal structure
    oCb2VelocityConstraintPoint
    oCb2Version
    oCb2WeldJoint
    oCb2WeldJointDef
    oCb2WheelJoint
    oCb2WheelJointDef
    oCb2World
    oCb2WorldManifoldThis is used to compute the current state of a contact manifold
    oCb2WorldQueryWrapper
    \Cb2WorldRayCastWrapper
    -
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_block_allocator_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_block_allocator_8h_source.html deleted file mode 100644 index dcc5352..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_block_allocator_8h_source.html +++ /dev/null @@ -1,163 +0,0 @@ - - - - - - -Box2D: b2BlockAllocator.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2BlockAllocator.h
    -
    -
    -
    1 /*
    -
    2 * Copyright (c) 2006-2009 Erin Catto http://www.box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_BLOCK_ALLOCATOR_H
    -
    20 #define B2_BLOCK_ALLOCATOR_H
    -
    21 
    - -
    23 
    -
    24 const int32 b2_chunkSize = 16 * 1024;
    -
    25 const int32 b2_maxBlockSize = 640;
    -
    26 const int32 b2_blockSizes = 14;
    -
    27 const int32 b2_chunkArrayIncrement = 128;
    -
    28 
    -
    29 struct b2Block;
    -
    30 struct b2Chunk;
    -
    31 
    - -
    36 {
    -
    37 public:
    - - -
    40 
    -
    42  void* Allocate(int32 size);
    -
    43 
    -
    45  void Free(void* p, int32 size);
    -
    46 
    -
    47  void Clear();
    -
    48 
    -
    49 private:
    -
    50 
    -
    51  b2Chunk* m_chunks;
    -
    52  int32 m_chunkCount;
    -
    53  int32 m_chunkSpace;
    -
    54 
    -
    55  b2Block* m_freeLists[b2_blockSizes];
    -
    56 
    -
    57  static int32 s_blockSizes[b2_blockSizes];
    -
    58  static uint8 s_blockSizeLookup[b2_maxBlockSize + 1];
    -
    59  static bool s_blockSizeLookupInitialized;
    -
    60 };
    -
    61 
    -
    62 #endif
    -
    void Free(void *p, int32 size)
    Free memory. This will use b2Free if the size is larger than b2_maxBlockSize.
    Definition: b2BlockAllocator.cpp:155
    -
    Definition: b2BlockAllocator.cpp:44
    -
    Definition: b2BlockAllocator.h:35
    -
    Definition: b2BlockAllocator.cpp:50
    - -
    void * Allocate(int32 size)
    Allocate memory. This will use b2Alloc if the size is larger than b2_maxBlockSize.
    Definition: b2BlockAllocator.cpp:97
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_body_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_body_8h_source.html deleted file mode 100644 index b980fe3..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_body_8h_source.html +++ /dev/null @@ -1,893 +0,0 @@ - - - - - - -Box2D: b2Body.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2Body.h
    -
    -
    -
    1 /*
    -
    2 * Copyright (c) 2006-2011 Erin Catto http://www.box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_BODY_H
    -
    20 #define B2_BODY_H
    -
    21 
    -
    22 #include <Box2D/Common/b2Math.h>
    -
    23 #include <Box2D/Collision/Shapes/b2Shape.h>
    -
    24 #include <memory>
    -
    25 
    -
    26 class b2Fixture;
    -
    27 class b2Joint;
    -
    28 class b2Contact;
    -
    29 class b2Controller;
    -
    30 class b2World;
    -
    31 struct b2FixtureDef;
    -
    32 struct b2JointEdge;
    -
    33 struct b2ContactEdge;
    -
    34 
    -
    39 enum b2BodyType
    -
    40 {
    -
    41  b2_staticBody = 0,
    -
    42  b2_kinematicBody,
    -
    43  b2_dynamicBody
    -
    44 
    -
    45  // TODO_ERIN
    -
    46  //b2_bulletBody,
    -
    47 };
    -
    48 
    -
    51 struct b2BodyDef
    -
    52 {
    - -
    55  {
    -
    56  userData = NULL;
    -
    57  position.Set(0.0f, 0.0f);
    -
    58  angle = 0.0f;
    -
    59  linearVelocity.Set(0.0f, 0.0f);
    -
    60  angularVelocity = 0.0f;
    -
    61  linearDamping = 0.0f;
    -
    62  angularDamping = 0.0f;
    -
    63  allowSleep = true;
    -
    64  awake = true;
    -
    65  fixedRotation = false;
    -
    66  bullet = false;
    -
    67  type = b2_staticBody;
    -
    68  active = true;
    -
    69  gravityScale = 1.0f;
    -
    70  }
    -
    71 
    -
    74  b2BodyType type;
    -
    75 
    - -
    79 
    -
    81  float32 angle;
    -
    82 
    - -
    85 
    -
    87  float32 angularVelocity;
    -
    88 
    -
    92  float32 linearDamping;
    -
    93 
    -
    97  float32 angularDamping;
    -
    98 
    - -
    102 
    -
    104  bool awake;
    -
    105 
    - -
    108 
    -
    113  bool bullet;
    -
    114 
    -
    116  bool active;
    -
    117 
    -
    119  void* userData;
    -
    120 
    -
    122  float32 gravityScale;
    -
    123 };
    -
    124 
    -
    126 class b2Body
    -
    127 {
    -
    128 public:
    -
    136  b2Fixture* CreateFixture(const b2FixtureDef* def);
    -
    137 
    -
    145  b2Fixture* CreateFixture(const b2Shape* shape, float32 density);
    -
    146 
    -
    154  void DestroyFixture(b2Fixture* fixture);
    -
    155 
    -
    161  void SetTransform(const b2Vec2& position, float32 angle);
    -
    162 
    -
    165  const b2Transform& GetTransform() const;
    -
    166 
    -
    169  const b2Vec2& GetPosition() const;
    -
    170 
    -
    173  float32 GetAngle() const;
    -
    174 
    -
    176  const b2Vec2& GetWorldCenter() const;
    -
    177 
    -
    179  const b2Vec2& GetLocalCenter() const;
    -
    180 
    -
    183  void SetLinearVelocity(const b2Vec2& v);
    -
    184 
    -
    187  const b2Vec2& GetLinearVelocity() const;
    -
    188 
    -
    191  void SetAngularVelocity(float32 omega);
    -
    192 
    -
    195  float32 GetAngularVelocity() const;
    -
    196 
    -
    203  void ApplyForce(const b2Vec2& force, const b2Vec2& point, bool wake);
    -
    204 
    -
    208  void ApplyForceToCenter(const b2Vec2& force, bool wake);
    -
    209 
    -
    215  void ApplyTorque(float32 torque, bool wake);
    -
    216 
    -
    223  void ApplyLinearImpulse(const b2Vec2& impulse, const b2Vec2& point, bool wake);
    -
    224 
    -
    228  void ApplyAngularImpulse(float32 impulse, bool wake);
    -
    229 
    -
    232  float32 GetMass() const;
    -
    233 
    -
    236  float32 GetInertia() const;
    -
    237 
    -
    240  void GetMassData(b2MassData* data) const;
    -
    241 
    -
    247  void SetMassData(const b2MassData* data);
    -
    248 
    -
    252  void ResetMassData();
    -
    253 
    -
    257  b2Vec2 GetWorldPoint(const b2Vec2& localPoint) const;
    -
    258 
    -
    262  b2Vec2 GetWorldVector(const b2Vec2& localVector) const;
    -
    263 
    -
    267  b2Vec2 GetLocalPoint(const b2Vec2& worldPoint) const;
    -
    268 
    -
    272  b2Vec2 GetLocalVector(const b2Vec2& worldVector) const;
    -
    273 
    -
    277  b2Vec2 GetLinearVelocityFromWorldPoint(const b2Vec2& worldPoint) const;
    -
    278 
    -
    282  b2Vec2 GetLinearVelocityFromLocalPoint(const b2Vec2& localPoint) const;
    -
    283 
    -
    285  float32 GetLinearDamping() const;
    -
    286 
    -
    288  void SetLinearDamping(float32 linearDamping);
    -
    289 
    -
    291  float32 GetAngularDamping() const;
    -
    292 
    -
    294  void SetAngularDamping(float32 angularDamping);
    -
    295 
    -
    297  float32 GetGravityScale() const;
    -
    298 
    -
    300  void SetGravityScale(float32 scale);
    -
    301 
    -
    303  void SetType(b2BodyType type);
    -
    304 
    -
    306  b2BodyType GetType() const;
    -
    307 
    -
    309  void SetBullet(bool flag);
    -
    310 
    -
    312  bool IsBullet() const;
    -
    313 
    -
    316  void SetSleepingAllowed(bool flag);
    -
    317 
    -
    319  bool IsSleepingAllowed() const;
    -
    320 
    -
    324  void SetAwake(bool flag);
    -
    325 
    -
    328  bool IsAwake() const;
    -
    329 
    -
    343  void SetActive(bool flag);
    -
    344 
    -
    346  bool IsActive() const;
    -
    347 
    -
    350  void SetFixedRotation(bool flag);
    -
    351 
    -
    353  bool IsFixedRotation() const;
    -
    354 
    - -
    357  const b2Fixture* GetFixtureList() const;
    -
    358 
    - -
    361  const b2JointEdge* GetJointList() const;
    -
    362 
    - -
    367  const b2ContactEdge* GetContactList() const;
    -
    368 
    -
    370  b2Body* GetNext();
    -
    371  const b2Body* GetNext() const;
    -
    372 
    -
    374  void* GetUserData() const;
    -
    375 
    -
    377  void SetUserData(void* data);
    -
    378 
    -
    380  b2World* GetWorld();
    -
    381  const b2World* GetWorld() const;
    -
    382 
    -
    384  void Dump();
    -
    385 
    -
    386 private:
    -
    387 
    -
    388  friend class b2World;
    -
    389  friend class b2Island;
    -
    390  friend class b2ContactManager;
    -
    391  friend class b2ContactSolver;
    -
    392  friend class b2Contact;
    -
    393 
    -
    394  friend class b2DistanceJoint;
    -
    395  friend class b2FrictionJoint;
    -
    396  friend class b2GearJoint;
    -
    397  friend class b2MotorJoint;
    -
    398  friend class b2MouseJoint;
    -
    399  friend class b2PrismaticJoint;
    -
    400  friend class b2PulleyJoint;
    -
    401  friend class b2RevoluteJoint;
    -
    402  friend class b2RopeJoint;
    -
    403  friend class b2WeldJoint;
    -
    404  friend class b2WheelJoint;
    -
    405 
    -
    406  // m_flags
    -
    407  enum
    -
    408  {
    -
    409  e_islandFlag = 0x0001,
    -
    410  e_awakeFlag = 0x0002,
    -
    411  e_autoSleepFlag = 0x0004,
    -
    412  e_bulletFlag = 0x0008,
    -
    413  e_fixedRotationFlag = 0x0010,
    -
    414  e_activeFlag = 0x0020,
    -
    415  e_toiFlag = 0x0040
    -
    416  };
    -
    417 
    -
    418  b2Body(const b2BodyDef* bd, b2World* world);
    -
    419  ~b2Body();
    -
    420 
    -
    421  void SynchronizeFixtures();
    -
    422  void SynchronizeTransform();
    -
    423 
    -
    424  // This is used to prevent connected bodies from colliding.
    -
    425  // It may lie, depending on the collideConnected flag.
    -
    426  bool ShouldCollide(const b2Body* other) const;
    -
    427 
    -
    428  void Advance(float32 t);
    -
    429 
    -
    430  b2BodyType m_type;
    -
    431 
    -
    432  uint16 m_flags;
    -
    433 
    -
    434  int32 m_islandIndex;
    -
    435 
    -
    436  b2Transform m_xf; // the body origin transform
    -
    437  b2Sweep m_sweep; // the swept motion for CCD
    -
    438 
    -
    439  b2Vec2 m_linearVelocity;
    -
    440  float32 m_angularVelocity;
    -
    441 
    -
    442  b2Vec2 m_force;
    -
    443  float32 m_torque;
    -
    444 
    -
    445  b2World* m_world;
    -
    446  b2Body* m_prev;
    -
    447  b2Body* m_next;
    -
    448 
    -
    449  b2Fixture* m_fixtureList;
    -
    450  int32 m_fixtureCount;
    -
    451 
    -
    452  b2JointEdge* m_jointList;
    -
    453  b2ContactEdge* m_contactList;
    -
    454 
    -
    455  float32 m_mass, m_invMass;
    -
    456 
    -
    457  // Rotational inertia about the center of mass.
    -
    458  float32 m_I, m_invI;
    -
    459 
    -
    460  float32 m_linearDamping;
    -
    461  float32 m_angularDamping;
    -
    462  float32 m_gravityScale;
    -
    463 
    -
    464  float32 m_sleepTime;
    -
    465 
    -
    466  void* m_userData;
    -
    467 };
    -
    468 
    -
    469 inline b2BodyType b2Body::GetType() const
    -
    470 {
    -
    471  return m_type;
    -
    472 }
    -
    473 
    -
    474 inline const b2Transform& b2Body::GetTransform() const
    -
    475 {
    -
    476  return m_xf;
    -
    477 }
    -
    478 
    -
    479 inline const b2Vec2& b2Body::GetPosition() const
    -
    480 {
    -
    481  return m_xf.p;
    -
    482 }
    -
    483 
    -
    484 inline float32 b2Body::GetAngle() const
    -
    485 {
    -
    486  return m_sweep.a;
    -
    487 }
    -
    488 
    -
    489 inline const b2Vec2& b2Body::GetWorldCenter() const
    -
    490 {
    -
    491  return m_sweep.c;
    -
    492 }
    -
    493 
    -
    494 inline const b2Vec2& b2Body::GetLocalCenter() const
    -
    495 {
    -
    496  return m_sweep.localCenter;
    -
    497 }
    -
    498 
    -
    499 inline void b2Body::SetLinearVelocity(const b2Vec2& v)
    -
    500 {
    -
    501  if (m_type == b2_staticBody)
    -
    502  {
    -
    503  return;
    -
    504  }
    -
    505 
    -
    506  if (b2Dot(v,v) > 0.0f)
    -
    507  {
    -
    508  SetAwake(true);
    -
    509  }
    -
    510 
    -
    511  m_linearVelocity = v;
    -
    512 }
    -
    513 
    -
    514 inline const b2Vec2& b2Body::GetLinearVelocity() const
    -
    515 {
    -
    516  return m_linearVelocity;
    -
    517 }
    -
    518 
    -
    519 inline void b2Body::SetAngularVelocity(float32 w)
    -
    520 {
    -
    521  if (m_type == b2_staticBody)
    -
    522  {
    -
    523  return;
    -
    524  }
    -
    525 
    -
    526  if (w * w > 0.0f)
    -
    527  {
    -
    528  SetAwake(true);
    -
    529  }
    -
    530 
    -
    531  m_angularVelocity = w;
    -
    532 }
    -
    533 
    -
    534 inline float32 b2Body::GetAngularVelocity() const
    -
    535 {
    -
    536  return m_angularVelocity;
    -
    537 }
    -
    538 
    -
    539 inline float32 b2Body::GetMass() const
    -
    540 {
    -
    541  return m_mass;
    -
    542 }
    -
    543 
    -
    544 inline float32 b2Body::GetInertia() const
    -
    545 {
    -
    546  return m_I + m_mass * b2Dot(m_sweep.localCenter, m_sweep.localCenter);
    -
    547 }
    -
    548 
    -
    549 inline void b2Body::GetMassData(b2MassData* data) const
    -
    550 {
    -
    551  data->mass = m_mass;
    -
    552  data->I = m_I + m_mass * b2Dot(m_sweep.localCenter, m_sweep.localCenter);
    -
    553  data->center = m_sweep.localCenter;
    -
    554 }
    -
    555 
    -
    556 inline b2Vec2 b2Body::GetWorldPoint(const b2Vec2& localPoint) const
    -
    557 {
    -
    558  return b2Mul(m_xf, localPoint);
    -
    559 }
    -
    560 
    -
    561 inline b2Vec2 b2Body::GetWorldVector(const b2Vec2& localVector) const
    -
    562 {
    -
    563  return b2Mul(m_xf.q, localVector);
    -
    564 }
    -
    565 
    -
    566 inline b2Vec2 b2Body::GetLocalPoint(const b2Vec2& worldPoint) const
    -
    567 {
    -
    568  return b2MulT(m_xf, worldPoint);
    -
    569 }
    -
    570 
    -
    571 inline b2Vec2 b2Body::GetLocalVector(const b2Vec2& worldVector) const
    -
    572 {
    -
    573  return b2MulT(m_xf.q, worldVector);
    -
    574 }
    -
    575 
    - -
    577 {
    -
    578  return m_linearVelocity + b2Cross(m_angularVelocity, worldPoint - m_sweep.c);
    -
    579 }
    -
    580 
    - -
    582 {
    - -
    584 }
    -
    585 
    -
    586 inline float32 b2Body::GetLinearDamping() const
    -
    587 {
    -
    588  return m_linearDamping;
    -
    589 }
    -
    590 
    -
    591 inline void b2Body::SetLinearDamping(float32 linearDamping)
    -
    592 {
    -
    593  m_linearDamping = linearDamping;
    -
    594 }
    -
    595 
    -
    596 inline float32 b2Body::GetAngularDamping() const
    -
    597 {
    -
    598  return m_angularDamping;
    -
    599 }
    -
    600 
    -
    601 inline void b2Body::SetAngularDamping(float32 angularDamping)
    -
    602 {
    -
    603  m_angularDamping = angularDamping;
    -
    604 }
    -
    605 
    -
    606 inline float32 b2Body::GetGravityScale() const
    -
    607 {
    -
    608  return m_gravityScale;
    -
    609 }
    -
    610 
    -
    611 inline void b2Body::SetGravityScale(float32 scale)
    -
    612 {
    -
    613  m_gravityScale = scale;
    -
    614 }
    -
    615 
    -
    616 inline void b2Body::SetBullet(bool flag)
    -
    617 {
    -
    618  if (flag)
    -
    619  {
    -
    620  m_flags |= e_bulletFlag;
    -
    621  }
    -
    622  else
    -
    623  {
    -
    624  m_flags &= ~e_bulletFlag;
    -
    625  }
    -
    626 }
    -
    627 
    -
    628 inline bool b2Body::IsBullet() const
    -
    629 {
    -
    630  return (m_flags & e_bulletFlag) == e_bulletFlag;
    -
    631 }
    -
    632 
    -
    633 inline void b2Body::SetAwake(bool flag)
    -
    634 {
    -
    635  if (flag)
    -
    636  {
    -
    637  if ((m_flags & e_awakeFlag) == 0)
    -
    638  {
    -
    639  m_flags |= e_awakeFlag;
    -
    640  m_sleepTime = 0.0f;
    -
    641  }
    -
    642  }
    -
    643  else
    -
    644  {
    -
    645  m_flags &= ~e_awakeFlag;
    -
    646  m_sleepTime = 0.0f;
    -
    647  m_linearVelocity.SetZero();
    -
    648  m_angularVelocity = 0.0f;
    -
    649  m_force.SetZero();
    -
    650  m_torque = 0.0f;
    -
    651  }
    -
    652 }
    -
    653 
    -
    654 inline bool b2Body::IsAwake() const
    -
    655 {
    -
    656  return (m_flags & e_awakeFlag) == e_awakeFlag;
    -
    657 }
    -
    658 
    -
    659 inline bool b2Body::IsActive() const
    -
    660 {
    -
    661  return (m_flags & e_activeFlag) == e_activeFlag;
    -
    662 }
    -
    663 
    -
    664 inline bool b2Body::IsFixedRotation() const
    -
    665 {
    -
    666  return (m_flags & e_fixedRotationFlag) == e_fixedRotationFlag;
    -
    667 }
    -
    668 
    -
    669 inline void b2Body::SetSleepingAllowed(bool flag)
    -
    670 {
    -
    671  if (flag)
    -
    672  {
    -
    673  m_flags |= e_autoSleepFlag;
    -
    674  }
    -
    675  else
    -
    676  {
    -
    677  m_flags &= ~e_autoSleepFlag;
    -
    678  SetAwake(true);
    -
    679  }
    -
    680 }
    -
    681 
    -
    682 inline bool b2Body::IsSleepingAllowed() const
    -
    683 {
    -
    684  return (m_flags & e_autoSleepFlag) == e_autoSleepFlag;
    -
    685 }
    -
    686 
    - -
    688 {
    -
    689  return m_fixtureList;
    -
    690 }
    -
    691 
    -
    692 inline const b2Fixture* b2Body::GetFixtureList() const
    -
    693 {
    -
    694  return m_fixtureList;
    -
    695 }
    -
    696 
    - -
    698 {
    -
    699  return m_jointList;
    -
    700 }
    -
    701 
    -
    702 inline const b2JointEdge* b2Body::GetJointList() const
    -
    703 {
    -
    704  return m_jointList;
    -
    705 }
    -
    706 
    - -
    708 {
    -
    709  return m_contactList;
    -
    710 }
    -
    711 
    -
    712 inline const b2ContactEdge* b2Body::GetContactList() const
    -
    713 {
    -
    714  return m_contactList;
    -
    715 }
    -
    716 
    - -
    718 {
    -
    719  return m_next;
    -
    720 }
    -
    721 
    -
    722 inline const b2Body* b2Body::GetNext() const
    -
    723 {
    -
    724  return m_next;
    -
    725 }
    -
    726 
    -
    727 inline void b2Body::SetUserData(void* data)
    -
    728 {
    -
    729  m_userData = data;
    -
    730 }
    -
    731 
    -
    732 inline void* b2Body::GetUserData() const
    -
    733 {
    -
    734  return m_userData;
    -
    735 }
    -
    736 
    -
    737 inline void b2Body::ApplyForce(const b2Vec2& force, const b2Vec2& point, bool wake)
    -
    738 {
    -
    739  if (m_type != b2_dynamicBody)
    -
    740  {
    -
    741  return;
    -
    742  }
    -
    743 
    -
    744  if (wake && (m_flags & e_awakeFlag) == 0)
    -
    745  {
    -
    746  SetAwake(true);
    -
    747  }
    -
    748 
    -
    749  // Don't accumulate a force if the body is sleeping.
    -
    750  if (m_flags & e_awakeFlag)
    -
    751  {
    -
    752  m_force += force;
    -
    753  m_torque += b2Cross(point - m_sweep.c, force);
    -
    754  }
    -
    755 }
    -
    756 
    -
    757 inline void b2Body::ApplyForceToCenter(const b2Vec2& force, bool wake)
    -
    758 {
    -
    759  if (m_type != b2_dynamicBody)
    -
    760  {
    -
    761  return;
    -
    762  }
    -
    763 
    -
    764  if (wake && (m_flags & e_awakeFlag) == 0)
    -
    765  {
    -
    766  SetAwake(true);
    -
    767  }
    -
    768 
    -
    769  // Don't accumulate a force if the body is sleeping
    -
    770  if (m_flags & e_awakeFlag)
    -
    771  {
    -
    772  m_force += force;
    -
    773  }
    -
    774 }
    -
    775 
    -
    776 inline void b2Body::ApplyTorque(float32 torque, bool wake)
    -
    777 {
    -
    778  if (m_type != b2_dynamicBody)
    -
    779  {
    -
    780  return;
    -
    781  }
    -
    782 
    -
    783  if (wake && (m_flags & e_awakeFlag) == 0)
    -
    784  {
    -
    785  SetAwake(true);
    -
    786  }
    -
    787 
    -
    788  // Don't accumulate a force if the body is sleeping
    -
    789  if (m_flags & e_awakeFlag)
    -
    790  {
    -
    791  m_torque += torque;
    -
    792  }
    -
    793 }
    -
    794 
    -
    795 inline void b2Body::ApplyLinearImpulse(const b2Vec2& impulse, const b2Vec2& point, bool wake)
    -
    796 {
    -
    797  if (m_type != b2_dynamicBody)
    -
    798  {
    -
    799  return;
    -
    800  }
    -
    801 
    -
    802  if (wake && (m_flags & e_awakeFlag) == 0)
    -
    803  {
    -
    804  SetAwake(true);
    -
    805  }
    -
    806 
    -
    807  // Don't accumulate velocity if the body is sleeping
    -
    808  if (m_flags & e_awakeFlag)
    -
    809  {
    -
    810  m_linearVelocity += m_invMass * impulse;
    -
    811  m_angularVelocity += m_invI * b2Cross(point - m_sweep.c, impulse);
    -
    812  }
    -
    813 }
    -
    814 
    -
    815 inline void b2Body::ApplyAngularImpulse(float32 impulse, bool wake)
    -
    816 {
    -
    817  if (m_type != b2_dynamicBody)
    -
    818  {
    -
    819  return;
    -
    820  }
    -
    821 
    -
    822  if (wake && (m_flags & e_awakeFlag) == 0)
    -
    823  {
    -
    824  SetAwake(true);
    -
    825  }
    -
    826 
    -
    827  // Don't accumulate velocity if the body is sleeping
    -
    828  if (m_flags & e_awakeFlag)
    -
    829  {
    -
    830  m_angularVelocity += m_invI * impulse;
    -
    831  }
    -
    832 }
    -
    833 
    -
    834 inline void b2Body::SynchronizeTransform()
    -
    835 {
    -
    836  m_xf.q.Set(m_sweep.a);
    -
    837  m_xf.p = m_sweep.c - b2Mul(m_xf.q, m_sweep.localCenter);
    -
    838 }
    -
    839 
    -
    840 inline void b2Body::Advance(float32 alpha)
    -
    841 {
    -
    842  // Advance to the new safe time. This doesn't sync the broad-phase.
    -
    843  m_sweep.Advance(alpha);
    -
    844  m_sweep.c = m_sweep.c0;
    -
    845  m_sweep.a = m_sweep.a0;
    -
    846  m_xf.q.Set(m_sweep.a);
    -
    847  m_xf.p = m_sweep.c - b2Mul(m_xf.q, m_sweep.localCenter);
    -
    848 }
    -
    849 
    - -
    851 {
    -
    852  return m_world;
    -
    853 }
    -
    854 
    -
    855 inline const b2World* b2Body::GetWorld() const
    -
    856 {
    -
    857  return m_world;
    -
    858 }
    -
    859 
    -
    860 #endif
    -
    b2BodyType type
    Definition: b2Body.h:74
    -
    Definition: b2Math.h:350
    -
    void ResetMassData()
    Definition: b2Body.cpp:281
    -
    b2JointEdge * GetJointList()
    Get the list of all joints attached to this body.
    Definition: b2Body.h:697
    -
    float32 GetInertia() const
    Definition: b2Body.h:544
    -
    float32 GetAngularDamping() const
    Get the angular damping of the body.
    Definition: b2Body.h:596
    -
    float32 GetAngle() const
    Definition: b2Body.h:484
    -
    void SetActive(bool flag)
    Definition: b2Body.cpp:454
    -
    Definition: b2RopeJoint.h:58
    -
    bool active
    Does this body start out active?
    Definition: b2Body.h:116
    -
    b2ContactEdge * GetContactList()
    Definition: b2Body.h:707
    -
    float32 GetAngularVelocity() const
    Definition: b2Body.h:534
    -
    float32 angularDamping
    Definition: b2Body.h:97
    -
    float32 GetGravityScale() const
    Get the gravity scale of the body.
    Definition: b2Body.h:606
    -
    void SetGravityScale(float32 scale)
    Set the gravity scale of the body.
    Definition: b2Body.h:611
    -
    void GetMassData(b2MassData *data) const
    Definition: b2Body.h:549
    -
    void SetAwake(bool flag)
    Definition: b2Body.h:633
    -
    Definition: b2MotorJoint.h:59
    -
    b2BodyType GetType() const
    Get the type of this body.
    Definition: b2Body.h:469
    -
    b2Vec2 GetWorldVector(const b2Vec2 &localVector) const
    Definition: b2Body.h:561
    -
    float32 GetLinearDamping() const
    Get the linear damping of the body.
    Definition: b2Body.h:586
    -
    float32 I
    The rotational inertia of the shape about the local origin.
    Definition: b2Shape.h:36
    -
    bool fixedRotation
    Should this body be prevented from rotating? Useful for characters.
    Definition: b2Body.h:107
    -
    void SetTransform(const b2Vec2 &position, float32 angle)
    Definition: b2Body.cpp:417
    -
    void SetBullet(bool flag)
    Should this body be treated like a bullet for continuous collision detection?
    Definition: b2Body.h:616
    -
    Definition: b2Body.h:51
    -
    void SetAngularDamping(float32 angularDamping)
    Set the angular damping of the body.
    Definition: b2Body.h:601
    -
    b2Body * GetNext()
    Get the next body in the world&#39;s body list.
    Definition: b2Body.h:717
    -
    void * userData
    Use this to store application specific body data.
    Definition: b2Body.h:119
    -
    b2Vec2 position
    Definition: b2Body.h:78
    -
    const b2Vec2 & GetLinearVelocity() const
    Definition: b2Body.h:514
    -
    bool bullet
    Definition: b2Body.h:113
    -
    b2Vec2 GetLinearVelocityFromLocalPoint(const b2Vec2 &localPoint) const
    Definition: b2Body.h:581
    -
    Definition: b2World.h:41
    -
    void ApplyAngularImpulse(float32 impulse, bool wake)
    Definition: b2Body.h:815
    -
    float32 linearDamping
    Definition: b2Body.h:92
    -
    Definition: b2Math.h:380
    -
    void SetLinearVelocity(const b2Vec2 &v)
    Definition: b2Body.h:499
    -
    Definition: b2Joint.h:103
    -
    This holds the mass data computed for a shape.
    Definition: b2Shape.h:27
    -
    void SetUserData(void *data)
    Set the user data. Use this to store your application specific data.
    Definition: b2Body.h:727
    -
    Definition: b2Shape.h:42
    -
    bool IsFixedRotation() const
    Does this body have fixed rotation?
    Definition: b2Body.h:664
    -
    void SetMassData(const b2MassData *data)
    Definition: b2Body.cpp:353
    -
    b2Vec2 GetLocalVector(const b2Vec2 &worldVector) const
    Definition: b2Body.h:571
    -
    float32 a
    world angles
    Definition: b2Math.h:395
    -
    Definition: b2PrismaticJoint.h:86
    -
    Definition: b2WeldJoint.h:62
    -
    void DestroyFixture(b2Fixture *fixture)
    Definition: b2Body.cpp:214
    -
    Definition: b2MouseJoint.h:60
    -
    b2Fixture * CreateFixture(const b2FixtureDef *def)
    Definition: b2Body.cpp:166
    -
    float32 GetMass() const
    Definition: b2Body.h:539
    -
    float32 gravityScale
    Scale the gravity applied to this body.
    Definition: b2Body.h:122
    -
    bool IsActive() const
    Get the active state of the body.
    Definition: b2Body.h:659
    -
    void Set(float32 x_, float32 y_)
    Set this vector to some specified coordinates.
    Definition: b2Math.h:65
    -
    void SetZero()
    Set this vector to all zeros.
    Definition: b2Math.h:62
    -
    void SetType(b2BodyType type)
    Set the type of this body. This may alter the mass and velocity.
    Definition: b2Body.cpp:113
    -
    Definition: b2Contact.h:66
    -
    bool IsBullet() const
    Is this body treated like a bullet for continuous collision detection?
    Definition: b2Body.h:628
    -
    Definition: b2Fixture.h:56
    -
    void ApplyForceToCenter(const b2Vec2 &force, bool wake)
    Definition: b2Body.h:757
    -
    Definition: b2GearJoint.h:56
    -
    b2Fixture * GetFixtureList()
    Get the list of all fixtures attached to this body.
    Definition: b2Body.h:687
    -
    Definition: b2FrictionJoint.h:55
    -
    void SetFixedRotation(bool flag)
    Definition: b2Body.cpp:499
    -
    bool awake
    Is this body initially awake or sleeping?
    Definition: b2Body.h:104
    -
    float32 mass
    The mass of the shape, usually in kilograms.
    Definition: b2Shape.h:30
    -
    bool IsSleepingAllowed() const
    Is this body allowed to sleep.
    Definition: b2Body.h:682
    -
    b2Vec2 center
    The position of the shape&#39;s centroid relative to the shape&#39;s origin.
    Definition: b2Shape.h:33
    -
    b2Vec2 c
    center world positions
    Definition: b2Math.h:394
    -
    void * GetUserData() const
    Get the user data pointer that was provided in the body definition.
    Definition: b2Body.h:732
    -
    b2World * GetWorld()
    Get the parent world of this body.
    Definition: b2Body.h:850
    -
    b2Vec2 localCenter
    local center of mass position
    Definition: b2Math.h:393
    -
    Definition: b2DistanceJoint.h:67
    -
    b2BodyDef()
    This constructor sets the body definition default values.
    Definition: b2Body.h:54
    -
    void ApplyLinearImpulse(const b2Vec2 &impulse, const b2Vec2 &point, bool wake)
    Definition: b2Body.h:795
    -
    void SetLinearDamping(float32 linearDamping)
    Set the linear damping of the body.
    Definition: b2Body.h:591
    -
    b2Vec2 GetWorldPoint(const b2Vec2 &localPoint) const
    Definition: b2Body.h:556
    -
    float32 angle
    The world angle of the body in radians.
    Definition: b2Body.h:81
    -
    b2Vec2 linearVelocity
    The linear velocity of the body&#39;s origin in world co-ordinates.
    Definition: b2Body.h:84
    -
    Definition: b2RevoluteJoint.h:90
    -
    void SetSleepingAllowed(bool flag)
    Definition: b2Body.h:669
    -
    Definition: b2Joint.h:65
    -
    float32 angularVelocity
    The angular velocity of the body.
    Definition: b2Body.h:87
    -
    A rigid body. These are created via b2World::CreateBody.
    Definition: b2Body.h:126
    -
    This is an internal class.
    Definition: b2Island.h:34
    -
    bool IsAwake() const
    Definition: b2Body.h:654
    -
    const b2Transform & GetTransform() const
    Definition: b2Body.h:474
    -
    const b2Vec2 & GetLocalCenter() const
    Get the local position of the center of mass.
    Definition: b2Body.h:494
    -
    void ApplyForce(const b2Vec2 &force, const b2Vec2 &point, bool wake)
    Definition: b2Body.h:737
    -
    const b2Vec2 & GetPosition() const
    Definition: b2Body.h:479
    -
    void ApplyTorque(float32 torque, bool wake)
    Definition: b2Body.h:776
    -
    b2Vec2 GetLinearVelocityFromWorldPoint(const b2Vec2 &worldPoint) const
    Definition: b2Body.h:576
    -
    A 2D column vector.
    Definition: b2Math.h:53
    -
    Definition: b2Contact.h:77
    -
    void Advance(float32 alpha)
    Definition: b2Math.h:702
    -
    void Set(float32 angle)
    Set using an angle in radians.
    Definition: b2Math.h:312
    -
    b2Vec2 GetLocalPoint(const b2Vec2 &worldPoint) const
    Definition: b2Body.h:566
    -
    void SetAngularVelocity(float32 omega)
    Definition: b2Body.h:519
    -
    Definition: b2ContactManager.h:30
    -
    Definition: b2ContactSolver.h:69
    -
    Definition: b2PulleyJoint.h:79
    -
    Definition: b2WheelJoint.h:79
    -
    const b2Vec2 & GetWorldCenter() const
    Get the world position of the center of mass.
    Definition: b2Body.h:489
    -
    void Dump()
    Dump this body to a log file.
    Definition: b2Body.cpp:521
    -
    bool allowSleep
    Definition: b2Body.h:101
    -
    Definition: b2Fixture.h:107
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_broad_phase_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_broad_phase_8h_source.html deleted file mode 100644 index 72ccced..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_broad_phase_8h_source.html +++ /dev/null @@ -1,359 +0,0 @@ - - - - - - -Box2D: b2BroadPhase.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2BroadPhase.h
    -
    -
    -
    1 /*
    -
    2 * Copyright (c) 2006-2009 Erin Catto http://www.box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_BROAD_PHASE_H
    -
    20 #define B2_BROAD_PHASE_H
    -
    21 
    - - -
    24 #include <Box2D/Collision/b2DynamicTree.h>
    -
    25 #include <algorithm>
    -
    26 
    -
    27 struct b2Pair
    -
    28 {
    -
    29  int32 proxyIdA;
    -
    30  int32 proxyIdB;
    -
    31 };
    -
    32 
    - -
    37 {
    -
    38 public:
    -
    39 
    -
    40  enum
    -
    41  {
    -
    42  e_nullProxy = -1
    -
    43  };
    -
    44 
    -
    45  b2BroadPhase();
    -
    46  ~b2BroadPhase();
    -
    47 
    -
    50  int32 CreateProxy(const b2AABB& aabb, void* userData);
    -
    51 
    -
    53  void DestroyProxy(int32 proxyId);
    -
    54 
    -
    57  void MoveProxy(int32 proxyId, const b2AABB& aabb, const b2Vec2& displacement);
    -
    58 
    -
    60  void TouchProxy(int32 proxyId);
    -
    61 
    -
    63  const b2AABB& GetFatAABB(int32 proxyId) const;
    -
    64 
    -
    66  void* GetUserData(int32 proxyId) const;
    -
    67 
    -
    69  bool TestOverlap(int32 proxyIdA, int32 proxyIdB) const;
    -
    70 
    -
    72  int32 GetProxyCount() const;
    -
    73 
    -
    75  template <typename T>
    -
    76  void UpdatePairs(T* callback);
    -
    77 
    -
    80  template <typename T>
    -
    81  void Query(T* callback, const b2AABB& aabb) const;
    -
    82 
    -
    90  template <typename T>
    -
    91  void RayCast(T* callback, const b2RayCastInput& input) const;
    -
    92 
    -
    94  int32 GetTreeHeight() const;
    -
    95 
    -
    97  int32 GetTreeBalance() const;
    -
    98 
    -
    100  float32 GetTreeQuality() const;
    -
    101 
    -
    105  void ShiftOrigin(const b2Vec2& newOrigin);
    -
    106 
    -
    107 private:
    -
    108 
    -
    109  friend class b2DynamicTree;
    -
    110 
    -
    111  void BufferMove(int32 proxyId);
    -
    112  void UnBufferMove(int32 proxyId);
    -
    113 
    -
    114  bool QueryCallback(int32 proxyId);
    -
    115 
    -
    116  b2DynamicTree m_tree;
    -
    117 
    -
    118  int32 m_proxyCount;
    -
    119 
    -
    120  int32* m_moveBuffer;
    -
    121  int32 m_moveCapacity;
    -
    122  int32 m_moveCount;
    -
    123 
    -
    124  b2Pair* m_pairBuffer;
    -
    125  int32 m_pairCapacity;
    -
    126  int32 m_pairCount;
    -
    127 
    -
    128  int32 m_queryProxyId;
    -
    129 };
    -
    130 
    -
    132 inline bool b2PairLessThan(const b2Pair& pair1, const b2Pair& pair2)
    -
    133 {
    -
    134  if (pair1.proxyIdA < pair2.proxyIdA)
    -
    135  {
    -
    136  return true;
    -
    137  }
    -
    138 
    -
    139  if (pair1.proxyIdA == pair2.proxyIdA)
    -
    140  {
    -
    141  return pair1.proxyIdB < pair2.proxyIdB;
    -
    142  }
    -
    143 
    -
    144  return false;
    -
    145 }
    -
    146 
    -
    147 inline void* b2BroadPhase::GetUserData(int32 proxyId) const
    -
    148 {
    -
    149  return m_tree.GetUserData(proxyId);
    -
    150 }
    -
    151 
    -
    152 inline bool b2BroadPhase::TestOverlap(int32 proxyIdA, int32 proxyIdB) const
    -
    153 {
    -
    154  const b2AABB& aabbA = m_tree.GetFatAABB(proxyIdA);
    -
    155  const b2AABB& aabbB = m_tree.GetFatAABB(proxyIdB);
    -
    156  return b2TestOverlap(aabbA, aabbB);
    -
    157 }
    -
    158 
    -
    159 inline const b2AABB& b2BroadPhase::GetFatAABB(int32 proxyId) const
    -
    160 {
    -
    161  return m_tree.GetFatAABB(proxyId);
    -
    162 }
    -
    163 
    -
    164 inline int32 b2BroadPhase::GetProxyCount() const
    -
    165 {
    -
    166  return m_proxyCount;
    -
    167 }
    -
    168 
    -
    169 inline int32 b2BroadPhase::GetTreeHeight() const
    -
    170 {
    -
    171  return m_tree.GetHeight();
    -
    172 }
    -
    173 
    -
    174 inline int32 b2BroadPhase::GetTreeBalance() const
    -
    175 {
    -
    176  return m_tree.GetMaxBalance();
    -
    177 }
    -
    178 
    -
    179 inline float32 b2BroadPhase::GetTreeQuality() const
    -
    180 {
    -
    181  return m_tree.GetAreaRatio();
    -
    182 }
    -
    183 
    -
    184 template <typename T>
    -
    185 void b2BroadPhase::UpdatePairs(T* callback)
    -
    186 {
    -
    187  // Reset pair buffer
    -
    188  m_pairCount = 0;
    -
    189 
    -
    190  // Perform tree queries for all moving proxies.
    -
    191  for (int32 i = 0; i < m_moveCount; ++i)
    -
    192  {
    -
    193  m_queryProxyId = m_moveBuffer[i];
    -
    194  if (m_queryProxyId == e_nullProxy)
    -
    195  {
    -
    196  continue;
    -
    197  }
    -
    198 
    -
    199  // We have to query the tree with the fat AABB so that
    -
    200  // we don't fail to create a pair that may touch later.
    -
    201  const b2AABB& fatAABB = m_tree.GetFatAABB(m_queryProxyId);
    -
    202 
    -
    203  // Query tree, create pairs and add them pair buffer.
    -
    204  m_tree.Query(this, fatAABB);
    -
    205  }
    -
    206 
    -
    207  // Reset move buffer
    -
    208  m_moveCount = 0;
    -
    209 
    -
    210  // Sort the pair buffer to expose duplicates.
    -
    211  std::sort(m_pairBuffer, m_pairBuffer + m_pairCount, b2PairLessThan);
    -
    212 
    -
    213  // Send the pairs back to the client.
    -
    214  int32 i = 0;
    -
    215  while (i < m_pairCount)
    -
    216  {
    -
    217  b2Pair* primaryPair = m_pairBuffer + i;
    -
    218  void* userDataA = m_tree.GetUserData(primaryPair->proxyIdA);
    -
    219  void* userDataB = m_tree.GetUserData(primaryPair->proxyIdB);
    -
    220 
    -
    221  callback->AddPair(userDataA, userDataB);
    -
    222  ++i;
    -
    223 
    -
    224  // Skip any duplicate pairs.
    -
    225  while (i < m_pairCount)
    -
    226  {
    -
    227  b2Pair* pair = m_pairBuffer + i;
    -
    228  if (pair->proxyIdA != primaryPair->proxyIdA || pair->proxyIdB != primaryPair->proxyIdB)
    -
    229  {
    -
    230  break;
    -
    231  }
    -
    232  ++i;
    -
    233  }
    -
    234  }
    -
    235 
    -
    236  // Try to keep the tree balanced.
    -
    237  //m_tree.Rebalance(4);
    -
    238 }
    -
    239 
    -
    240 template <typename T>
    -
    241 inline void b2BroadPhase::Query(T* callback, const b2AABB& aabb) const
    -
    242 {
    -
    243  m_tree.Query(callback, aabb);
    -
    244 }
    -
    245 
    -
    246 template <typename T>
    -
    247 inline void b2BroadPhase::RayCast(T* callback, const b2RayCastInput& input) const
    -
    248 {
    -
    249  m_tree.RayCast(callback, input);
    -
    250 }
    -
    251 
    -
    252 inline void b2BroadPhase::ShiftOrigin(const b2Vec2& newOrigin)
    -
    253 {
    -
    254  m_tree.ShiftOrigin(newOrigin);
    -
    255 }
    -
    256 
    -
    257 #endif
    -
    int32 CreateProxy(const b2AABB &aabb, void *userData)
    Definition: b2BroadPhase.cpp:40
    -
    Definition: b2DynamicTree.h:61
    -
    void RayCast(T *callback, const b2RayCastInput &input) const
    Definition: b2DynamicTree.h:204
    -
    Definition: b2BroadPhase.h:36
    -
    void MoveProxy(int32 proxyId, const b2AABB &aabb, const b2Vec2 &displacement)
    Definition: b2BroadPhase.cpp:55
    -
    bool TestOverlap(int32 proxyIdA, int32 proxyIdB) const
    Test overlap of fat AABBs.
    Definition: b2BroadPhase.h:152
    -
    int32 GetHeight() const
    Definition: b2DynamicTree.cpp:520
    -
    int32 GetTreeBalance() const
    Get the balance of the embedded tree.
    Definition: b2BroadPhase.h:174
    - -
    void TouchProxy(int32 proxyId)
    Call to trigger a re-processing of it&#39;s pairs on the next call to UpdatePairs.
    Definition: b2BroadPhase.cpp:64
    -
    void ShiftOrigin(const b2Vec2 &newOrigin)
    Definition: b2DynamicTree.cpp:770
    -
    float32 GetAreaRatio() const
    Get the ratio of the sum of the node areas to the root area.
    Definition: b2DynamicTree.cpp:531
    -
    void UpdatePairs(T *callback)
    Update the pairs. This results in pair callbacks. This can only add pairs.
    Definition: b2BroadPhase.h:185
    -
    An axis aligned bounding box.
    Definition: b2Collision.h:162
    -
    void * GetUserData(int32 proxyId) const
    Definition: b2DynamicTree.h:156
    -
    void DestroyProxy(int32 proxyId)
    Destroy a proxy. It is up to the client to remove any pairs.
    Definition: b2BroadPhase.cpp:48
    -
    bool b2TestOverlap(const b2Shape *shapeA, int32 indexA, const b2Shape *shapeB, int32 indexB, const b2Transform &xfA, const b2Transform &xfB)
    Determine if two generic shapes overlap.
    Definition: b2Collision.cpp:233
    -
    void ShiftOrigin(const b2Vec2 &newOrigin)
    Definition: b2BroadPhase.h:252
    -
    void * GetUserData(int32 proxyId) const
    Get user data from a proxy. Returns NULL if the id is invalid.
    Definition: b2BroadPhase.h:147
    -
    Ray-cast input data. The ray extends from p1 to p1 + maxFraction * (p2 - p1).
    Definition: b2Collision.h:147
    -
    void Query(T *callback, const b2AABB &aabb) const
    Definition: b2DynamicTree.h:169
    -
    float32 GetTreeQuality() const
    Get the quality metric of the embedded tree.
    Definition: b2BroadPhase.h:179
    -
    int32 GetTreeHeight() const
    Get the height of the embedded tree.
    Definition: b2BroadPhase.h:169
    -
    int32 GetMaxBalance() const
    Definition: b2DynamicTree.cpp:672
    -
    void RayCast(T *callback, const b2RayCastInput &input) const
    Definition: b2BroadPhase.h:247
    -
    void Query(T *callback, const b2AABB &aabb) const
    Definition: b2BroadPhase.h:241
    - -
    Definition: b2BroadPhase.h:27
    -
    int32 GetProxyCount() const
    Get the number of proxies.
    Definition: b2BroadPhase.h:164
    -
    A 2D column vector.
    Definition: b2Math.h:53
    -
    const b2AABB & GetFatAABB(int32 proxyId) const
    Get the fat AABB for a proxy.
    Definition: b2BroadPhase.h:159
    -
    const b2AABB & GetFatAABB(int32 proxyId) const
    Get the fat AABB for a proxy.
    Definition: b2DynamicTree.h:162
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_chain_and_circle_contact_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_chain_and_circle_contact_8h_source.html deleted file mode 100644 index 2fbd0a1..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_chain_and_circle_contact_8h_source.html +++ /dev/null @@ -1,146 +0,0 @@ - - - - - - -Box2D: b2ChainAndCircleContact.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2ChainAndCircleContact.h
    -
    -
    -
    1 /*
    -
    2 * Copyright (c) 2006-2009 Erin Catto http://www.box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_CHAIN_AND_CIRCLE_CONTACT_H
    -
    20 #define B2_CHAIN_AND_CIRCLE_CONTACT_H
    -
    21 
    -
    22 #include <Box2D/Dynamics/Contacts/b2Contact.h>
    -
    23 
    -
    24 class b2BlockAllocator;
    -
    25 
    - -
    27 {
    -
    28 public:
    -
    29  static b2Contact* Create( b2Fixture* fixtureA, int32 indexA,
    -
    30  b2Fixture* fixtureB, int32 indexB, b2BlockAllocator* allocator);
    -
    31  static void Destroy(b2Contact* contact, b2BlockAllocator* allocator);
    -
    32 
    -
    33  b2ChainAndCircleContact(b2Fixture* fixtureA, int32 indexA, b2Fixture* fixtureB, int32 indexB);
    - -
    35 
    -
    36  void Evaluate(b2Manifold* manifold, const b2Transform& xfA, const b2Transform& xfB);
    -
    37 };
    -
    38 
    -
    39 #endif
    -
    Definition: b2Math.h:350
    -
    void Evaluate(b2Manifold *manifold, const b2Transform &xfA, const b2Transform &xfB)
    Evaluate this contact with your own manifold and transforms.
    Definition: b2ChainAndCircleContact.cpp:46
    -
    Definition: b2BlockAllocator.h:35
    -
    Definition: b2ChainAndCircleContact.h:26
    -
    Definition: b2Collision.h:93
    -
    Definition: b2Contact.h:77
    -
    Definition: b2Fixture.h:107
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_chain_and_polygon_contact_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_chain_and_polygon_contact_8h_source.html deleted file mode 100644 index dc3fb4b..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_chain_and_polygon_contact_8h_source.html +++ /dev/null @@ -1,146 +0,0 @@ - - - - - - -Box2D: b2ChainAndPolygonContact.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2ChainAndPolygonContact.h
    -
    -
    -
    1 /*
    -
    2 * Copyright (c) 2006-2009 Erin Catto http://www.box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_CHAIN_AND_POLYGON_CONTACT_H
    -
    20 #define B2_CHAIN_AND_POLYGON_CONTACT_H
    -
    21 
    -
    22 #include <Box2D/Dynamics/Contacts/b2Contact.h>
    -
    23 
    -
    24 class b2BlockAllocator;
    -
    25 
    - -
    27 {
    -
    28 public:
    -
    29  static b2Contact* Create( b2Fixture* fixtureA, int32 indexA,
    -
    30  b2Fixture* fixtureB, int32 indexB, b2BlockAllocator* allocator);
    -
    31  static void Destroy(b2Contact* contact, b2BlockAllocator* allocator);
    -
    32 
    -
    33  b2ChainAndPolygonContact(b2Fixture* fixtureA, int32 indexA, b2Fixture* fixtureB, int32 indexB);
    - -
    35 
    -
    36  void Evaluate(b2Manifold* manifold, const b2Transform& xfA, const b2Transform& xfB);
    -
    37 };
    -
    38 
    -
    39 #endif
    -
    Definition: b2Math.h:350
    -
    Definition: b2ChainAndPolygonContact.h:26
    -
    void Evaluate(b2Manifold *manifold, const b2Transform &xfA, const b2Transform &xfB)
    Evaluate this contact with your own manifold and transforms.
    Definition: b2ChainAndPolygonContact.cpp:46
    -
    Definition: b2BlockAllocator.h:35
    -
    Definition: b2Collision.h:93
    -
    Definition: b2Contact.h:77
    -
    Definition: b2Fixture.h:107
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_chain_shape_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_chain_shape_8h_source.html deleted file mode 100644 index 48e713a..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_chain_shape_8h_source.html +++ /dev/null @@ -1,199 +0,0 @@ - - - - - - -Box2D: b2ChainShape.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2ChainShape.h
    -
    -
    -
    1 /*
    -
    2 * Copyright (c) 2006-2010 Erin Catto http://www.box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_CHAIN_SHAPE_H
    -
    20 #define B2_CHAIN_SHAPE_H
    -
    21 
    -
    22 #include <Box2D/Collision/Shapes/b2Shape.h>
    -
    23 
    -
    24 class b2EdgeShape;
    -
    25 
    -
    32 class b2ChainShape : public b2Shape
    -
    33 {
    -
    34 public:
    -
    35  b2ChainShape();
    -
    36 
    -
    38  ~b2ChainShape();
    -
    39 
    -
    43  void CreateLoop(const b2Vec2* vertices, int32 count);
    -
    44 
    -
    48  void CreateChain(const b2Vec2* vertices, int32 count);
    -
    49 
    -
    52  void SetPrevVertex(const b2Vec2& prevVertex);
    -
    53 
    -
    56  void SetNextVertex(const b2Vec2& nextVertex);
    -
    57 
    -
    59  b2Shape* Clone(b2BlockAllocator* allocator) const;
    -
    60 
    -
    62  int32 GetChildCount() const;
    -
    63 
    -
    65  void GetChildEdge(b2EdgeShape* edge, int32 index) const;
    -
    66 
    -
    69  bool TestPoint(const b2Transform& transform, const b2Vec2& p) const;
    -
    70 
    -
    72  bool RayCast(b2RayCastOutput* output, const b2RayCastInput& input,
    -
    73  const b2Transform& transform, int32 childIndex) const;
    -
    74 
    -
    76  void ComputeAABB(b2AABB* aabb, const b2Transform& transform, int32 childIndex) const;
    -
    77 
    -
    80  void ComputeMass(b2MassData* massData, float32 density) const;
    -
    81 
    - -
    84 
    -
    86  int32 m_count;
    -
    87 
    -
    88  b2Vec2 m_prevVertex, m_nextVertex;
    -
    89  bool m_hasPrevVertex, m_hasNextVertex;
    -
    90 };
    -
    91 
    -
    92 inline b2ChainShape::b2ChainShape()
    -
    93 {
    -
    94  m_type = e_chain;
    -
    95  m_radius = b2_polygonRadius;
    -
    96  m_vertices = NULL;
    -
    97  m_count = 0;
    -
    98  m_hasPrevVertex = false;
    -
    99  m_hasNextVertex = false;
    -
    100 }
    -
    101 
    -
    102 #endif
    -
    Definition: b2Math.h:350
    -
    Definition: b2ChainShape.h:32
    -
    void ComputeAABB(b2AABB *aabb, const b2Transform &transform, int32 childIndex) const
    Definition: b2ChainShape.cpp:165
    -
    void CreateChain(const b2Vec2 *vertices, int32 count)
    Definition: b2ChainShape.cpp:53
    -
    bool TestPoint(const b2Transform &transform, const b2Vec2 &p) const
    Definition: b2ChainShape.cpp:138
    -
    Definition: b2BlockAllocator.h:35
    -
    This holds the mass data computed for a shape.
    Definition: b2Shape.h:27
    -
    Definition: b2Shape.h:42
    -
    bool RayCast(b2RayCastOutput *output, const b2RayCastInput &input, const b2Transform &transform, int32 childIndex) const
    Implement b2Shape.
    Definition: b2ChainShape.cpp:145
    -
    Definition: b2Collision.h:155
    -
    int32 m_count
    The vertex count.
    Definition: b2ChainShape.h:86
    -
    #define b2_polygonRadius
    Definition: b2Settings.h:77
    -
    An axis aligned bounding box.
    Definition: b2Collision.h:162
    -
    void SetNextVertex(const b2Vec2 &nextVertex)
    Definition: b2ChainShape.cpp:82
    -
    b2Shape * Clone(b2BlockAllocator *allocator) const
    Implement b2Shape. Vertices are cloned using b2Alloc.
    Definition: b2ChainShape.cpp:88
    -
    Ray-cast input data. The ray extends from p1 to p1 + maxFraction * (p2 - p1).
    Definition: b2Collision.h:147
    -
    Definition: b2EdgeShape.h:27
    -
    int32 GetChildCount() const
    Definition: b2ChainShape.cpp:100
    -
    void CreateLoop(const b2Vec2 *vertices, int32 count)
    Definition: b2ChainShape.cpp:31
    -
    ~b2ChainShape()
    The destructor frees the vertices using b2Free.
    Definition: b2ChainShape.cpp:24
    -
    b2Vec2 * m_vertices
    The vertices. Owned by this class.
    Definition: b2ChainShape.h:83
    -
    A 2D column vector.
    Definition: b2Math.h:53
    -
    void SetPrevVertex(const b2Vec2 &prevVertex)
    Definition: b2ChainShape.cpp:76
    -
    void GetChildEdge(b2EdgeShape *edge, int32 index) const
    Get a child edge.
    Definition: b2ChainShape.cpp:106
    -
    void ComputeMass(b2MassData *massData, float32 density) const
    Definition: b2ChainShape.cpp:183
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_circle_contact_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_circle_contact_8h_source.html deleted file mode 100644 index 1d2729d..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_circle_contact_8h_source.html +++ /dev/null @@ -1,146 +0,0 @@ - - - - - - -Box2D: b2CircleContact.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2CircleContact.h
    -
    -
    -
    1 /*
    -
    2 * Copyright (c) 2006-2009 Erin Catto http://www.box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_CIRCLE_CONTACT_H
    -
    20 #define B2_CIRCLE_CONTACT_H
    -
    21 
    -
    22 #include <Box2D/Dynamics/Contacts/b2Contact.h>
    -
    23 
    -
    24 class b2BlockAllocator;
    -
    25 
    -
    26 class b2CircleContact : public b2Contact
    -
    27 {
    -
    28 public:
    -
    29  static b2Contact* Create( b2Fixture* fixtureA, int32 indexA,
    -
    30  b2Fixture* fixtureB, int32 indexB, b2BlockAllocator* allocator);
    -
    31  static void Destroy(b2Contact* contact, b2BlockAllocator* allocator);
    -
    32 
    -
    33  b2CircleContact(b2Fixture* fixtureA, b2Fixture* fixtureB);
    -
    34  ~b2CircleContact() {}
    -
    35 
    -
    36  void Evaluate(b2Manifold* manifold, const b2Transform& xfA, const b2Transform& xfB);
    -
    37 };
    -
    38 
    -
    39 #endif
    -
    Definition: b2Math.h:350
    -
    Definition: b2BlockAllocator.h:35
    -
    void Evaluate(b2Manifold *manifold, const b2Transform &xfA, const b2Transform &xfB)
    Evaluate this contact with your own manifold and transforms.
    Definition: b2CircleContact.cpp:47
    -
    Definition: b2Collision.h:93
    -
    Definition: b2Contact.h:77
    -
    Definition: b2CircleContact.h:26
    -
    Definition: b2Fixture.h:107
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_circle_shape_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_circle_shape_8h_source.html deleted file mode 100644 index 6fa17c5..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_circle_shape_8h_source.html +++ /dev/null @@ -1,200 +0,0 @@ - - - - - - -Box2D: b2CircleShape.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2CircleShape.h
    -
    -
    -
    1 /*
    -
    2 * Copyright (c) 2006-2009 Erin Catto http://www.box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_CIRCLE_SHAPE_H
    -
    20 #define B2_CIRCLE_SHAPE_H
    -
    21 
    -
    22 #include <Box2D/Collision/Shapes/b2Shape.h>
    -
    23 
    -
    25 class b2CircleShape : public b2Shape
    -
    26 {
    -
    27 public:
    -
    28  b2CircleShape();
    -
    29 
    -
    31  b2Shape* Clone(b2BlockAllocator* allocator) const;
    -
    32 
    -
    34  int32 GetChildCount() const;
    -
    35 
    -
    37  bool TestPoint(const b2Transform& transform, const b2Vec2& p) const;
    -
    38 
    -
    40  bool RayCast(b2RayCastOutput* output, const b2RayCastInput& input,
    -
    41  const b2Transform& transform, int32 childIndex) const;
    -
    42 
    -
    44  void ComputeAABB(b2AABB* aabb, const b2Transform& transform, int32 childIndex) const;
    -
    45 
    -
    47  void ComputeMass(b2MassData* massData, float32 density) const;
    -
    48 
    -
    50  int32 GetSupport(const b2Vec2& d) const;
    -
    51 
    -
    53  const b2Vec2& GetSupportVertex(const b2Vec2& d) const;
    -
    54 
    -
    56  int32 GetVertexCount() const { return 1; }
    -
    57 
    -
    59  const b2Vec2& GetVertex(int32 index) const;
    -
    60 
    - -
    63 };
    -
    64 
    -
    65 inline b2CircleShape::b2CircleShape()
    -
    66 {
    -
    67  m_type = e_circle;
    -
    68  m_radius = 0.0f;
    -
    69  m_p.SetZero();
    -
    70 }
    -
    71 
    -
    72 inline int32 b2CircleShape::GetSupport(const b2Vec2 &d) const
    -
    73 {
    -
    74  B2_NOT_USED(d);
    -
    75  return 0;
    -
    76 }
    -
    77 
    -
    78 inline const b2Vec2& b2CircleShape::GetSupportVertex(const b2Vec2 &d) const
    -
    79 {
    -
    80  B2_NOT_USED(d);
    -
    81  return m_p;
    -
    82 }
    -
    83 
    -
    84 inline const b2Vec2& b2CircleShape::GetVertex(int32 index) const
    -
    85 {
    -
    86  B2_NOT_USED(index);
    -
    87  b2Assert(index == 0);
    -
    88  return m_p;
    -
    89 }
    -
    90 
    -
    91 #endif
    -
    Definition: b2Math.h:350
    -
    A circle shape.
    Definition: b2CircleShape.h:25
    -
    void ComputeAABB(b2AABB *aabb, const b2Transform &transform, int32 childIndex) const
    Definition: b2CircleShape.cpp:83
    -
    bool TestPoint(const b2Transform &transform, const b2Vec2 &p) const
    Implement b2Shape.
    Definition: b2CircleShape.cpp:35
    -
    bool RayCast(b2RayCastOutput *output, const b2RayCastInput &input, const b2Transform &transform, int32 childIndex) const
    Implement b2Shape.
    Definition: b2CircleShape.cpp:46
    -
    Definition: b2BlockAllocator.h:35
    -
    This holds the mass data computed for a shape.
    Definition: b2Shape.h:27
    -
    Definition: b2Shape.h:42
    -
    Definition: b2Collision.h:155
    -
    void SetZero()
    Set this vector to all zeros.
    Definition: b2Math.h:62
    -
    void ComputeMass(b2MassData *massData, float32 density) const
    Definition: b2CircleShape.cpp:92
    -
    An axis aligned bounding box.
    Definition: b2Collision.h:162
    -
    int32 GetChildCount() const
    Definition: b2CircleShape.cpp:30
    -
    const b2Vec2 & GetSupportVertex(const b2Vec2 &d) const
    Get the supporting vertex in the given direction.
    Definition: b2CircleShape.h:78
    -
    const b2Vec2 & GetVertex(int32 index) const
    Get a vertex by index. Used by b2Distance.
    Definition: b2CircleShape.h:84
    -
    Ray-cast input data. The ray extends from p1 to p1 + maxFraction * (p2 - p1).
    Definition: b2Collision.h:147
    -
    b2Vec2 m_p
    Position.
    Definition: b2CircleShape.h:62
    -
    b2Shape * Clone(b2BlockAllocator *allocator) const
    Implement b2Shape.
    Definition: b2CircleShape.cpp:22
    -
    A 2D column vector.
    Definition: b2Math.h:53
    -
    int32 GetSupport(const b2Vec2 &d) const
    Get the supporting vertex index in the given direction.
    Definition: b2CircleShape.h:72
    -
    int32 GetVertexCount() const
    Get the vertex count.
    Definition: b2CircleShape.h:56
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_collision_8h.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_collision_8h.html deleted file mode 100644 index 80e4c89..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_collision_8h.html +++ /dev/null @@ -1,259 +0,0 @@ - - - - - - -Box2D: b2Collision.h File Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    - -
    -
    b2Collision.h File Reference
    -
    -
    -
    #include <Box2D/Common/b2Math.h>
    -#include <limits.h>
    -
    -

    Go to the source code of this file.

    - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Classes

    struct  b2ContactFeature
     
    union  b2ContactID
     Contact ids to facilitate warm starting. More...
     
    struct  b2ManifoldPoint
     
    struct  b2Manifold
     
    struct  b2WorldManifold
     This is used to compute the current state of a contact manifold. More...
     
    struct  b2ClipVertex
     Used for computing contact manifolds. More...
     
    struct  b2RayCastInput
     Ray-cast input data. The ray extends from p1 to p1 + maxFraction * (p2 - p1). More...
     
    struct  b2RayCastOutput
     
    struct  b2AABB
     An axis aligned bounding box. More...
     
    - - - - -

    -Enumerations

    enum  b2PointState { b2_nullState, -b2_addState, -b2_persistState, -b2_removeState - }
     This is used for determining the state of contact points. More...
     
    - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Functions

    void b2GetPointStates (b2PointState state1[b2_maxManifoldPoints], b2PointState state2[b2_maxManifoldPoints], const b2Manifold *manifold1, const b2Manifold *manifold2)
     
    -void b2CollideCircles (b2Manifold *manifold, const b2CircleShape *circleA, const b2Transform &xfA, const b2CircleShape *circleB, const b2Transform &xfB)
     Compute the collision manifold between two circles.
     
    -void b2CollidePolygonAndCircle (b2Manifold *manifold, const b2PolygonShape *polygonA, const b2Transform &xfA, const b2CircleShape *circleB, const b2Transform &xfB)
     Compute the collision manifold between a polygon and a circle.
     
    -void b2CollidePolygons (b2Manifold *manifold, const b2PolygonShape *polygonA, const b2Transform &xfA, const b2PolygonShape *polygonB, const b2Transform &xfB)
     Compute the collision manifold between two polygons.
     
    -void b2CollideEdgeAndCircle (b2Manifold *manifold, const b2EdgeShape *polygonA, const b2Transform &xfA, const b2CircleShape *circleB, const b2Transform &xfB)
     Compute the collision manifold between an edge and a circle.
     
    -void b2CollideEdgeAndPolygon (b2Manifold *manifold, const b2EdgeShape *edgeA, const b2Transform &xfA, const b2PolygonShape *circleB, const b2Transform &xfB)
     Compute the collision manifold between an edge and a circle.
     
    -int32 b2ClipSegmentToLine (b2ClipVertex vOut[2], const b2ClipVertex vIn[2], const b2Vec2 &normal, float32 offset, int32 vertexIndexA)
     Clipping for contact manifolds.
     
    -bool b2TestOverlap (const b2Shape *shapeA, int32 indexA, const b2Shape *shapeB, int32 indexB, const b2Transform &xfA, const b2Transform &xfB)
     Determine if two generic shapes overlap.
     
    -bool b2TestOverlap (const b2AABB &a, const b2AABB &b)
     
    - - - -

    -Variables

    -const uint8 b2_nullFeature = UCHAR_MAX
     
    -

    Detailed Description

    -

    Structures and functions used for computing contact points, distance queries, and TOI queries.

    -

    Enumeration Type Documentation

    - -
    -
    - - - - -
    enum b2PointState
    -
    - -

    This is used for determining the state of contact points.

    - - - - - -
    Enumerator
    b2_nullState  -

    point does not exist

    -
    b2_addState  -

    point was added in the update

    -
    b2_persistState  -

    point persisted across the update

    -
    b2_removeState  -

    point was removed in the update

    -
    - -
    -
    -

    Function Documentation

    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    void b2GetPointStates (b2PointState state1[b2_maxManifoldPoints],
    b2PointState state2[b2_maxManifoldPoints],
    const b2Manifoldmanifold1,
    const b2Manifoldmanifold2 
    )
    -
    -

    Compute the point states given two manifolds. The states pertain to the transition from manifold1 to manifold2. So state1 is either persist or remove while state2 is either add or persist.

    - -
    -
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_collision_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_collision_8h_source.html deleted file mode 100644 index 349db6b..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_collision_8h_source.html +++ /dev/null @@ -1,374 +0,0 @@ - - - - - - -Box2D: b2Collision.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2Collision.h
    -
    -
    -Go to the documentation of this file.
    1 /*
    -
    2 * Copyright (c) 2006-2009 Erin Catto http://www.box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_COLLISION_H
    -
    20 #define B2_COLLISION_H
    -
    21 
    -
    22 #include <Box2D/Common/b2Math.h>
    -
    23 #include <limits.h>
    -
    24 
    -
    28 
    -
    29 class b2Shape;
    -
    30 class b2CircleShape;
    -
    31 class b2EdgeShape;
    -
    32 class b2PolygonShape;
    -
    33 
    -
    34 const uint8 b2_nullFeature = UCHAR_MAX;
    -
    35 
    - -
    39 {
    -
    40  enum Type
    -
    41  {
    -
    42  e_vertex = 0,
    -
    43  e_face = 1
    -
    44  };
    -
    45 
    -
    46  uint8 indexA;
    -
    47  uint8 indexB;
    -
    48  uint8 typeA;
    -
    49  uint8 typeB;
    -
    50 };
    -
    51 
    - -
    54 {
    - -
    56  uint32 key;
    -
    57 };
    -
    58 
    - -
    70 {
    - -
    72  float32 normalImpulse;
    -
    73  float32 tangentImpulse;
    - -
    75 };
    -
    76 
    -
    93 struct b2Manifold
    -
    94 {
    -
    95  enum Type
    -
    96  {
    -
    97  e_circles,
    -
    98  e_faceA,
    -
    99  e_faceB
    -
    100  };
    -
    101 
    - - - -
    105  Type type;
    -
    106  int32 pointCount;
    -
    107 };
    -
    108 
    - -
    111 {
    -
    116  void Initialize(const b2Manifold* manifold,
    -
    117  const b2Transform& xfA, float32 radiusA,
    -
    118  const b2Transform& xfB, float32 radiusB);
    -
    119 
    - - - -
    123 };
    -
    124 
    - -
    127 {
    - - - - -
    132 };
    -
    133 
    -
    136 void b2GetPointStates(b2PointState state1[b2_maxManifoldPoints], b2PointState state2[b2_maxManifoldPoints],
    -
    137  const b2Manifold* manifold1, const b2Manifold* manifold2);
    -
    138 
    - -
    141 {
    -
    142  b2Vec2 v;
    -
    143  b2ContactID id;
    -
    144 };
    -
    145 
    - -
    148 {
    -
    149  b2Vec2 p1, p2;
    -
    150  float32 maxFraction;
    -
    151 };
    -
    152 
    - -
    156 {
    -
    157  b2Vec2 normal;
    -
    158  float32 fraction;
    -
    159 };
    -
    160 
    -
    162 struct b2AABB
    -
    163 {
    -
    165  bool IsValid() const;
    -
    166 
    - -
    169  {
    -
    170  return 0.5f * (lowerBound + upperBound);
    -
    171  }
    -
    172 
    - -
    175  {
    -
    176  return 0.5f * (upperBound - lowerBound);
    -
    177  }
    -
    178 
    -
    180  float32 GetPerimeter() const
    -
    181  {
    -
    182  float32 wx = upperBound.x - lowerBound.x;
    -
    183  float32 wy = upperBound.y - lowerBound.y;
    -
    184  return 2.0f * (wx + wy);
    -
    185  }
    -
    186 
    -
    188  void Combine(const b2AABB& aabb)
    -
    189  {
    -
    190  lowerBound = b2Min(lowerBound, aabb.lowerBound);
    -
    191  upperBound = b2Max(upperBound, aabb.upperBound);
    -
    192  }
    -
    193 
    -
    195  void Combine(const b2AABB& aabb1, const b2AABB& aabb2)
    -
    196  {
    -
    197  lowerBound = b2Min(aabb1.lowerBound, aabb2.lowerBound);
    -
    198  upperBound = b2Max(aabb1.upperBound, aabb2.upperBound);
    -
    199  }
    -
    200 
    -
    202  bool Contains(const b2AABB& aabb) const
    -
    203  {
    -
    204  bool result = true;
    -
    205  result = result && lowerBound.x <= aabb.lowerBound.x;
    -
    206  result = result && lowerBound.y <= aabb.lowerBound.y;
    -
    207  result = result && aabb.upperBound.x <= upperBound.x;
    -
    208  result = result && aabb.upperBound.y <= upperBound.y;
    -
    209  return result;
    -
    210  }
    -
    211 
    -
    212  bool RayCast(b2RayCastOutput* output, const b2RayCastInput& input) const;
    -
    213 
    - - -
    216 };
    -
    217 
    -
    219 void b2CollideCircles(b2Manifold* manifold,
    -
    220  const b2CircleShape* circleA, const b2Transform& xfA,
    -
    221  const b2CircleShape* circleB, const b2Transform& xfB);
    -
    222 
    - -
    225  const b2PolygonShape* polygonA, const b2Transform& xfA,
    -
    226  const b2CircleShape* circleB, const b2Transform& xfB);
    -
    227 
    -
    229 void b2CollidePolygons(b2Manifold* manifold,
    -
    230  const b2PolygonShape* polygonA, const b2Transform& xfA,
    -
    231  const b2PolygonShape* polygonB, const b2Transform& xfB);
    -
    232 
    -
    234 void b2CollideEdgeAndCircle(b2Manifold* manifold,
    -
    235  const b2EdgeShape* polygonA, const b2Transform& xfA,
    -
    236  const b2CircleShape* circleB, const b2Transform& xfB);
    -
    237 
    -
    239 void b2CollideEdgeAndPolygon(b2Manifold* manifold,
    -
    240  const b2EdgeShape* edgeA, const b2Transform& xfA,
    -
    241  const b2PolygonShape* circleB, const b2Transform& xfB);
    -
    242 
    -
    244 int32 b2ClipSegmentToLine(b2ClipVertex vOut[2], const b2ClipVertex vIn[2],
    -
    245  const b2Vec2& normal, float32 offset, int32 vertexIndexA);
    -
    246 
    -
    248 bool b2TestOverlap( const b2Shape* shapeA, int32 indexA,
    -
    249  const b2Shape* shapeB, int32 indexB,
    -
    250  const b2Transform& xfA, const b2Transform& xfB);
    -
    251 
    -
    252 // ---------------- Inline Functions ------------------------------------------
    -
    253 
    -
    254 inline bool b2AABB::IsValid() const
    -
    255 {
    - -
    257  bool valid = d.x >= 0.0f && d.y >= 0.0f;
    -
    258  valid = valid && lowerBound.IsValid() && upperBound.IsValid();
    -
    259  return valid;
    -
    260 }
    -
    261 
    -
    262 inline bool b2TestOverlap(const b2AABB& a, const b2AABB& b)
    -
    263 {
    -
    264  b2Vec2 d1, d2;
    -
    265  d1 = b.lowerBound - a.upperBound;
    -
    266  d2 = a.lowerBound - b.upperBound;
    -
    267 
    -
    268  if (d1.x > 0.0f || d1.y > 0.0f)
    -
    269  return false;
    -
    270 
    -
    271  if (d2.x > 0.0f || d2.y > 0.0f)
    -
    272  return false;
    -
    273 
    -
    274  return true;
    -
    275 }
    -
    276 
    -
    277 #endif
    -
    Definition: b2Math.h:350
    -
    b2Vec2 GetExtents() const
    Get the extents of the AABB (half-widths).
    Definition: b2Collision.h:174
    -
    A circle shape.
    Definition: b2CircleShape.h:25
    -
    point was added in the update
    Definition: b2Collision.h:129
    -
    b2Vec2 GetCenter() const
    Get the center of the AABB.
    Definition: b2Collision.h:168
    -
    b2Vec2 lowerBound
    the lower vertex
    Definition: b2Collision.h:214
    -
    bool IsValid() const
    Does this vector contain finite coordinates?
    Definition: b2Math.h:129
    -
    This is used to compute the current state of a contact manifold.
    Definition: b2Collision.h:110
    -
    bool Contains(const b2AABB &aabb) const
    Does this aabb contain the provided AABB.
    Definition: b2Collision.h:202
    -
    uint8 typeA
    The feature type on shapeA.
    Definition: b2Collision.h:48
    -
    void Initialize(const b2Manifold *manifold, const b2Transform &xfA, float32 radiusA, const b2Transform &xfB, float32 radiusB)
    Definition: b2Collision.cpp:22
    -
    void b2CollideEdgeAndPolygon(b2Manifold *manifold, const b2EdgeShape *edgeA, const b2Transform &xfA, const b2PolygonShape *circleB, const b2Transform &xfB)
    Compute the collision manifold between an edge and a circle.
    Definition: b2CollideEdge.cpp:692
    -
    float32 separations[b2_maxManifoldPoints]
    a negative value indicates overlap, in meters
    Definition: b2Collision.h:122
    -
    Definition: b2Shape.h:42
    -
    Used for computing contact manifolds.
    Definition: b2Collision.h:140
    -
    point does not exist
    Definition: b2Collision.h:128
    -
    int32 b2ClipSegmentToLine(b2ClipVertex vOut[2], const b2ClipVertex vIn[2], const b2Vec2 &normal, float32 offset, int32 vertexIndexA)
    Clipping for contact manifolds.
    Definition: b2Collision.cpp:201
    -
    Definition: b2PolygonShape.h:28
    -
    Definition: b2Collision.h:155
    -
    float32 normalImpulse
    the non-penetration impulse
    Definition: b2Collision.h:72
    -
    Contact ids to facilitate warm starting.
    Definition: b2Collision.h:53
    -
    Definition: b2Collision.h:38
    -
    point was removed in the update
    Definition: b2Collision.h:131
    -
    void b2CollideCircles(b2Manifold *manifold, const b2CircleShape *circleA, const b2Transform &xfA, const b2CircleShape *circleB, const b2Transform &xfB)
    Compute the collision manifold between two circles.
    Definition: b2CollideCircle.cpp:23
    -
    b2Vec2 localPoint
    usage depends on manifold type
    Definition: b2Collision.h:71
    -
    b2ManifoldPoint points[b2_maxManifoldPoints]
    the points of contact
    Definition: b2Collision.h:102
    -
    b2Vec2 upperBound
    the upper vertex
    Definition: b2Collision.h:215
    -
    b2Vec2 localPoint
    usage depends on manifold type
    Definition: b2Collision.h:104
    -
    bool IsValid() const
    Verify that the bounds are sorted.
    Definition: b2Collision.h:254
    -
    float32 tangentImpulse
    the friction impulse
    Definition: b2Collision.h:73
    -
    An axis aligned bounding box.
    Definition: b2Collision.h:162
    -
    b2Vec2 points[b2_maxManifoldPoints]
    world contact point (point of intersection)
    Definition: b2Collision.h:121
    -
    bool b2TestOverlap(const b2Shape *shapeA, int32 indexA, const b2Shape *shapeB, int32 indexB, const b2Transform &xfA, const b2Transform &xfB)
    Determine if two generic shapes overlap.
    Definition: b2Collision.cpp:233
    -
    point persisted across the update
    Definition: b2Collision.h:130
    -
    uint8 typeB
    The feature type on shapeB.
    Definition: b2Collision.h:49
    -
    void b2CollidePolygonAndCircle(b2Manifold *manifold, const b2PolygonShape *polygonA, const b2Transform &xfA, const b2CircleShape *circleB, const b2Transform &xfB)
    Compute the collision manifold between a polygon and a circle.
    Definition: b2CollideCircle.cpp:51
    -
    Ray-cast input data. The ray extends from p1 to p1 + maxFraction * (p2 - p1).
    Definition: b2Collision.h:147
    -
    Definition: b2EdgeShape.h:27
    -
    void b2CollidePolygons(b2Manifold *manifold, const b2PolygonShape *polygonA, const b2Transform &xfA, const b2PolygonShape *polygonB, const b2Transform &xfB)
    Compute the collision manifold between two polygons.
    Definition: b2CollidePolygon.cpp:116
    -
    uint8 indexA
    Feature index on shapeA.
    Definition: b2Collision.h:46
    -
    uint32 key
    Used to quickly compare contact ids.
    Definition: b2Collision.h:56
    -
    float32 GetPerimeter() const
    Get the perimeter length.
    Definition: b2Collision.h:180
    -
    Definition: b2Collision.h:93
    -
    b2PointState
    This is used for determining the state of contact points.
    Definition: b2Collision.h:126
    -
    void b2CollideEdgeAndCircle(b2Manifold *manifold, const b2EdgeShape *polygonA, const b2Transform &xfA, const b2CircleShape *circleB, const b2Transform &xfB)
    Compute the collision manifold between an edge and a circle.
    Definition: b2CollideEdge.cpp:27
    -
    int32 pointCount
    the number of manifold points
    Definition: b2Collision.h:106
    -
    void Combine(const b2AABB &aabb)
    Combine an AABB into this one.
    Definition: b2Collision.h:188
    -
    A 2D column vector.
    Definition: b2Math.h:53
    -
    uint8 indexB
    Feature index on shapeB.
    Definition: b2Collision.h:47
    -
    #define b2_maxManifoldPoints
    Definition: b2Settings.h:50
    -
    Definition: b2Collision.h:69
    -
    b2Vec2 normal
    world vector pointing from A to B
    Definition: b2Collision.h:120
    -
    void b2GetPointStates(b2PointState state1[b2_maxManifoldPoints], b2PointState state2[b2_maxManifoldPoints], const b2Manifold *manifold1, const b2Manifold *manifold2)
    Definition: b2Collision.cpp:88
    -
    void Combine(const b2AABB &aabb1, const b2AABB &aabb2)
    Combine two AABBs into this one.
    Definition: b2Collision.h:195
    -
    b2Vec2 localNormal
    not use for Type::e_points
    Definition: b2Collision.h:103
    -
    b2ContactID id
    uniquely identifies a contact point between two shapes
    Definition: b2Collision.h:74
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_contact_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_contact_8h_source.html deleted file mode 100644 index bca8ae1..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_contact_8h_source.html +++ /dev/null @@ -1,456 +0,0 @@ - - - - - - -Box2D: b2Contact.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2Contact.h
    -
    -
    -
    1 /*
    -
    2 * Copyright (c) 2006-2009 Erin Catto http://www.box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_CONTACT_H
    -
    20 #define B2_CONTACT_H
    -
    21 
    -
    22 #include <Box2D/Common/b2Math.h>
    - -
    24 #include <Box2D/Collision/Shapes/b2Shape.h>
    -
    25 #include <Box2D/Dynamics/b2Fixture.h>
    -
    26 
    -
    27 class b2Body;
    -
    28 class b2Contact;
    -
    29 class b2Fixture;
    -
    30 class b2World;
    -
    31 class b2BlockAllocator;
    -
    32 class b2StackAllocator;
    -
    33 class b2ContactListener;
    -
    34 
    -
    37 inline float32 b2MixFriction(float32 friction1, float32 friction2)
    -
    38 {
    -
    39  return b2Sqrt(friction1 * friction2);
    -
    40 }
    -
    41 
    -
    44 inline float32 b2MixRestitution(float32 restitution1, float32 restitution2)
    -
    45 {
    -
    46  return restitution1 > restitution2 ? restitution1 : restitution2;
    -
    47 }
    -
    48 
    -
    49 typedef b2Contact* b2ContactCreateFcn( b2Fixture* fixtureA, int32 indexA,
    -
    50  b2Fixture* fixtureB, int32 indexB,
    -
    51  b2BlockAllocator* allocator);
    -
    52 typedef void b2ContactDestroyFcn(b2Contact* contact, b2BlockAllocator* allocator);
    -
    53 
    - -
    55 {
    -
    56  b2ContactCreateFcn* createFcn;
    -
    57  b2ContactDestroyFcn* destroyFcn;
    -
    58  bool primary;
    -
    59 };
    -
    60 
    - -
    67 {
    - - - - -
    72 };
    -
    73 
    -
    77 class b2Contact
    -
    78 {
    -
    79 public:
    -
    80 
    - -
    84  const b2Manifold* GetManifold() const;
    -
    85 
    -
    87  void GetWorldManifold(b2WorldManifold* worldManifold) const;
    -
    88 
    -
    90  bool IsTouching() const;
    -
    91 
    -
    95  void SetEnabled(bool flag);
    -
    96 
    -
    98  bool IsEnabled() const;
    -
    99 
    -
    101  b2Contact* GetNext();
    -
    102  const b2Contact* GetNext() const;
    -
    103 
    - -
    106  const b2Fixture* GetFixtureA() const;
    -
    107 
    -
    109  int32 GetChildIndexA() const;
    -
    110 
    - -
    113  const b2Fixture* GetFixtureB() const;
    -
    114 
    -
    116  int32 GetChildIndexB() const;
    -
    117 
    -
    120  void SetFriction(float32 friction);
    -
    121 
    -
    123  float32 GetFriction() const;
    -
    124 
    -
    126  void ResetFriction();
    -
    127 
    -
    130  void SetRestitution(float32 restitution);
    -
    131 
    -
    133  float32 GetRestitution() const;
    -
    134 
    -
    136  void ResetRestitution();
    -
    137 
    -
    139  void SetTangentSpeed(float32 speed);
    -
    140 
    -
    142  float32 GetTangentSpeed() const;
    -
    143 
    -
    145  virtual void Evaluate(b2Manifold* manifold, const b2Transform& xfA, const b2Transform& xfB) = 0;
    -
    146 
    -
    147 protected:
    -
    148  friend class b2ContactManager;
    -
    149  friend class b2World;
    -
    150  friend class b2ContactSolver;
    -
    151  friend class b2Body;
    -
    152  friend class b2Fixture;
    -
    153 
    -
    154  // Flags stored in m_flags
    -
    155  enum
    -
    156  {
    -
    157  // Used when crawling contact graph when forming islands.
    -
    158  e_islandFlag = 0x0001,
    -
    159 
    -
    160  // Set when the shapes are touching.
    -
    161  e_touchingFlag = 0x0002,
    -
    162 
    -
    163  // This contact can be disabled (by user)
    -
    164  e_enabledFlag = 0x0004,
    -
    165 
    -
    166  // This contact needs filtering because a fixture filter was changed.
    -
    167  e_filterFlag = 0x0008,
    -
    168 
    -
    169  // This bullet contact had a TOI event
    -
    170  e_bulletHitFlag = 0x0010,
    -
    171 
    -
    172  // This contact has a valid TOI in m_toi
    -
    173  e_toiFlag = 0x0020
    -
    174  };
    -
    175 
    -
    177  void FlagForFiltering();
    -
    178 
    -
    179  static void AddType(b2ContactCreateFcn* createFcn, b2ContactDestroyFcn* destroyFcn,
    -
    180  b2Shape::Type typeA, b2Shape::Type typeB);
    -
    181  static void InitializeRegisters();
    -
    182  static b2Contact* Create(b2Fixture* fixtureA, int32 indexA, b2Fixture* fixtureB, int32 indexB, b2BlockAllocator* allocator);
    -
    183  static void Destroy(b2Contact* contact, b2Shape::Type typeA, b2Shape::Type typeB, b2BlockAllocator* allocator);
    -
    184  static void Destroy(b2Contact* contact, b2BlockAllocator* allocator);
    -
    185 
    -
    186  b2Contact() : m_fixtureA(NULL), m_fixtureB(NULL) {}
    -
    187  b2Contact(b2Fixture* fixtureA, int32 indexA, b2Fixture* fixtureB, int32 indexB);
    -
    188  virtual ~b2Contact() {}
    -
    189 
    -
    190  void Update(b2ContactListener* listener);
    -
    191 
    -
    192  static b2ContactRegister s_registers[b2Shape::e_typeCount][b2Shape::e_typeCount];
    -
    193  static bool s_initialized;
    -
    194 
    -
    195  uint32 m_flags;
    -
    196 
    -
    197  // World pool and list pointers.
    -
    198  b2Contact* m_prev;
    -
    199  b2Contact* m_next;
    -
    200 
    -
    201  // Nodes for connecting bodies.
    -
    202  b2ContactEdge m_nodeA;
    -
    203  b2ContactEdge m_nodeB;
    -
    204 
    -
    205  b2Fixture* m_fixtureA;
    -
    206  b2Fixture* m_fixtureB;
    -
    207 
    -
    208  int32 m_indexA;
    -
    209  int32 m_indexB;
    -
    210 
    -
    211  b2Manifold m_manifold;
    -
    212 
    -
    213  int32 m_toiCount;
    -
    214  float32 m_toi;
    -
    215 
    -
    216  float32 m_friction;
    -
    217  float32 m_restitution;
    -
    218 
    -
    219  float32 m_tangentSpeed;
    -
    220 };
    -
    221 
    - -
    223 {
    -
    224  return &m_manifold;
    -
    225 }
    -
    226 
    -
    227 inline const b2Manifold* b2Contact::GetManifold() const
    -
    228 {
    -
    229  return &m_manifold;
    -
    230 }
    -
    231 
    -
    232 inline void b2Contact::GetWorldManifold(b2WorldManifold* worldManifold) const
    -
    233 {
    -
    234  const b2Body* bodyA = m_fixtureA->GetBody();
    -
    235  const b2Body* bodyB = m_fixtureB->GetBody();
    -
    236  const b2Shape* shapeA = m_fixtureA->GetShape();
    -
    237  const b2Shape* shapeB = m_fixtureB->GetShape();
    -
    238 
    -
    239  worldManifold->Initialize(&m_manifold, bodyA->GetTransform(), shapeA->m_radius, bodyB->GetTransform(), shapeB->m_radius);
    -
    240 }
    -
    241 
    -
    242 inline void b2Contact::SetEnabled(bool flag)
    -
    243 {
    -
    244  if (flag)
    -
    245  {
    -
    246  m_flags |= e_enabledFlag;
    -
    247  }
    -
    248  else
    -
    249  {
    -
    250  m_flags &= ~e_enabledFlag;
    -
    251  }
    -
    252 }
    -
    253 
    -
    254 inline bool b2Contact::IsEnabled() const
    -
    255 {
    -
    256  return (m_flags & e_enabledFlag) == e_enabledFlag;
    -
    257 }
    -
    258 
    -
    259 inline bool b2Contact::IsTouching() const
    -
    260 {
    -
    261  return (m_flags & e_touchingFlag) == e_touchingFlag;
    -
    262 }
    -
    263 
    - -
    265 {
    -
    266  return m_next;
    -
    267 }
    -
    268 
    -
    269 inline const b2Contact* b2Contact::GetNext() const
    -
    270 {
    -
    271  return m_next;
    -
    272 }
    -
    273 
    - -
    275 {
    -
    276  return m_fixtureA;
    -
    277 }
    -
    278 
    -
    279 inline const b2Fixture* b2Contact::GetFixtureA() const
    -
    280 {
    -
    281  return m_fixtureA;
    -
    282 }
    -
    283 
    - -
    285 {
    -
    286  return m_fixtureB;
    -
    287 }
    -
    288 
    -
    289 inline int32 b2Contact::GetChildIndexA() const
    -
    290 {
    -
    291  return m_indexA;
    -
    292 }
    -
    293 
    -
    294 inline const b2Fixture* b2Contact::GetFixtureB() const
    -
    295 {
    -
    296  return m_fixtureB;
    -
    297 }
    -
    298 
    -
    299 inline int32 b2Contact::GetChildIndexB() const
    -
    300 {
    -
    301  return m_indexB;
    -
    302 }
    -
    303 
    - -
    305 {
    -
    306  m_flags |= e_filterFlag;
    -
    307 }
    -
    308 
    -
    309 inline void b2Contact::SetFriction(float32 friction)
    -
    310 {
    -
    311  m_friction = friction;
    -
    312 }
    -
    313 
    -
    314 inline float32 b2Contact::GetFriction() const
    -
    315 {
    -
    316  return m_friction;
    -
    317 }
    -
    318 
    - -
    320 {
    -
    321  m_friction = b2MixFriction(m_fixtureA->m_friction, m_fixtureB->m_friction);
    -
    322 }
    -
    323 
    -
    324 inline void b2Contact::SetRestitution(float32 restitution)
    -
    325 {
    -
    326  m_restitution = restitution;
    -
    327 }
    -
    328 
    -
    329 inline float32 b2Contact::GetRestitution() const
    -
    330 {
    -
    331  return m_restitution;
    -
    332 }
    -
    333 
    - -
    335 {
    -
    336  m_restitution = b2MixRestitution(m_fixtureA->m_restitution, m_fixtureB->m_restitution);
    -
    337 }
    -
    338 
    -
    339 inline void b2Contact::SetTangentSpeed(float32 speed)
    -
    340 {
    -
    341  m_tangentSpeed = speed;
    -
    342 }
    -
    343 
    -
    344 inline float32 b2Contact::GetTangentSpeed() const
    -
    345 {
    -
    346  return m_tangentSpeed;
    -
    347 }
    -
    348 
    -
    349 #endif
    -
    Definition: b2Math.h:350
    -
    int32 GetChildIndexB() const
    Get the child primitive index for fixture B.
    Definition: b2Contact.h:299
    -
    b2Body * other
    provides quick access to the other body attached.
    Definition: b2Contact.h:68
    -
    This is used to compute the current state of a contact manifold.
    Definition: b2Collision.h:110
    -
    Definition: b2StackAllocator.h:37
    -
    bool IsTouching() const
    Is this contact touching?
    Definition: b2Contact.h:259
    -
    Definition: b2World.h:41
    -
    b2Contact * contact
    the contact
    Definition: b2Contact.h:69
    -
    void Initialize(const b2Manifold *manifold, const b2Transform &xfA, float32 radiusA, const b2Transform &xfB, float32 radiusB)
    Definition: b2Collision.cpp:22
    -
    Definition: b2WorldCallbacks.h:81
    -
    Definition: b2BlockAllocator.h:35
    -
    Definition: b2Shape.h:42
    -
    void SetRestitution(float32 restitution)
    Definition: b2Contact.h:324
    - -
    Definition: b2Contact.h:66
    -
    void ResetFriction()
    Reset the friction mixture to the default value.
    Definition: b2Contact.h:319
    -
    int32 GetChildIndexA() const
    Get the child primitive index for fixture A.
    Definition: b2Contact.h:289
    -
    b2Body * GetBody()
    Definition: b2Fixture.h:273
    -
    b2Shape * GetShape()
    Definition: b2Fixture.h:243
    -
    void FlagForFiltering()
    Flag this contact for filtering. Filtering will occur the next time step.
    Definition: b2Contact.h:304
    -
    b2Fixture * GetFixtureB()
    Get fixture B in this contact.
    Definition: b2Contact.h:284
    -
    b2Manifold * GetManifold()
    Definition: b2Contact.h:222
    -
    float32 GetFriction() const
    Get the friction.
    Definition: b2Contact.h:314
    -
    void SetEnabled(bool flag)
    Definition: b2Contact.h:242
    -
    Definition: b2Contact.h:54
    -
    b2Fixture * GetFixtureA()
    Get fixture A in this contact.
    Definition: b2Contact.h:274
    -
    float32 GetRestitution() const
    Get the restitution.
    Definition: b2Contact.h:329
    -
    A rigid body. These are created via b2World::CreateBody.
    Definition: b2Body.h:126
    -
    b2ContactEdge * prev
    the previous contact edge in the body&#39;s contact list
    Definition: b2Contact.h:70
    -
    Definition: b2Collision.h:93
    -
    const b2Transform & GetTransform() const
    Definition: b2Body.h:474
    -
    void SetFriction(float32 friction)
    Definition: b2Contact.h:309
    -
    bool IsEnabled() const
    Has this contact been disabled?
    Definition: b2Contact.h:254
    -
    void SetTangentSpeed(float32 speed)
    Set the desired tangent speed for a conveyor belt behavior. In meters per second. ...
    Definition: b2Contact.h:339
    -
    virtual void Evaluate(b2Manifold *manifold, const b2Transform &xfA, const b2Transform &xfB)=0
    Evaluate this contact with your own manifold and transforms.
    -
    void GetWorldManifold(b2WorldManifold *worldManifold) const
    Get the world manifold.
    Definition: b2Contact.h:232
    -
    void ResetRestitution()
    Reset the restitution to the default value.
    Definition: b2Contact.h:334
    -
    Definition: b2Contact.h:77
    -
    Definition: b2ContactManager.h:30
    -
    b2Contact * GetNext()
    Get the next contact in the world&#39;s contact list.
    Definition: b2Contact.h:264
    -
    Definition: b2ContactSolver.h:69
    -
    float32 GetTangentSpeed() const
    Get the desired tangent speed. In meters per second.
    Definition: b2Contact.h:344
    -
    b2ContactEdge * next
    the next contact edge in the body&#39;s contact list
    Definition: b2Contact.h:71
    -
    Definition: b2Fixture.h:107
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_contact_manager_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_contact_manager_8h_source.html deleted file mode 100644 index 9909eaf..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_contact_manager_8h_source.html +++ /dev/null @@ -1,158 +0,0 @@ - - - - - - -Box2D: b2ContactManager.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2ContactManager.h
    -
    -
    -
    1 /*
    -
    2 * Copyright (c) 2006-2009 Erin Catto http://www.box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_CONTACT_MANAGER_H
    -
    20 #define B2_CONTACT_MANAGER_H
    -
    21 
    -
    22 #include <Box2D/Collision/b2BroadPhase.h>
    -
    23 
    -
    24 class b2Contact;
    -
    25 class b2ContactFilter;
    -
    26 class b2ContactListener;
    -
    27 class b2BlockAllocator;
    -
    28 
    -
    29 // Delegate of b2World.
    - -
    31 {
    -
    32 public:
    - -
    34 
    -
    35  // Broad-phase callback.
    -
    36  void AddPair(void* proxyUserDataA, void* proxyUserDataB);
    -
    37 
    -
    38  void FindNewContacts();
    -
    39 
    -
    40  void Destroy(b2Contact* c);
    -
    41 
    -
    42  void Collide();
    -
    43 
    -
    44  b2BroadPhase m_broadPhase;
    -
    45  b2Contact* m_contactList;
    -
    46  int32 m_contactCount;
    -
    47  b2ContactFilter* m_contactFilter;
    -
    48  b2ContactListener* m_contactListener;
    -
    49  b2BlockAllocator* m_allocator;
    -
    50 };
    -
    51 
    -
    52 #endif
    -
    Definition: b2BroadPhase.h:36
    -
    Definition: b2WorldCallbacks.h:52
    -
    Definition: b2WorldCallbacks.h:81
    -
    Definition: b2BlockAllocator.h:35
    -
    Definition: b2Contact.h:77
    -
    Definition: b2ContactManager.h:30
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_contact_solver_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_contact_solver_8h_source.html deleted file mode 100644 index 4f44af8..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_contact_solver_8h_source.html +++ /dev/null @@ -1,210 +0,0 @@ - - - - - - -Box2D: b2ContactSolver.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2ContactSolver.h
    -
    -
    -
    1 /*
    -
    2 * Copyright (c) 2006-2009 Erin Catto http://www.box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_CONTACT_SOLVER_H
    -
    20 #define B2_CONTACT_SOLVER_H
    -
    21 
    -
    22 #include <Box2D/Common/b2Math.h>
    - -
    24 #include <Box2D/Dynamics/b2TimeStep.h>
    -
    25 
    -
    26 class b2Contact;
    -
    27 class b2Body;
    -
    28 class b2StackAllocator;
    - -
    30 
    - -
    32 {
    -
    33  b2Vec2 rA;
    -
    34  b2Vec2 rB;
    -
    35  float32 normalImpulse;
    -
    36  float32 tangentImpulse;
    -
    37  float32 normalMass;
    -
    38  float32 tangentMass;
    -
    39  float32 velocityBias;
    -
    40 };
    -
    41 
    - -
    43 {
    - -
    45  b2Vec2 normal;
    -
    46  b2Mat22 normalMass;
    -
    47  b2Mat22 K;
    -
    48  int32 indexA;
    -
    49  int32 indexB;
    -
    50  float32 invMassA, invMassB;
    -
    51  float32 invIA, invIB;
    -
    52  float32 friction;
    -
    53  float32 restitution;
    -
    54  float32 tangentSpeed;
    -
    55  int32 pointCount;
    -
    56  int32 contactIndex;
    -
    57 };
    -
    58 
    - -
    60 {
    -
    61  b2TimeStep step;
    -
    62  b2Contact** contacts;
    -
    63  int32 count;
    -
    64  b2Position* positions;
    -
    65  b2Velocity* velocities;
    -
    66  b2StackAllocator* allocator;
    -
    67 };
    -
    68 
    - -
    70 {
    -
    71 public:
    - -
    73  ~b2ContactSolver();
    -
    74 
    -
    75  void InitializeVelocityConstraints();
    -
    76 
    -
    77  void WarmStart();
    -
    78  void SolveVelocityConstraints();
    -
    79  void StoreImpulses();
    -
    80 
    -
    81  bool SolvePositionConstraints();
    -
    82  bool SolveTOIPositionConstraints(int32 toiIndexA, int32 toiIndexB);
    -
    83 
    -
    84  b2TimeStep m_step;
    -
    85  b2Position* m_positions;
    -
    86  b2Velocity* m_velocities;
    -
    87  b2StackAllocator* m_allocator;
    -
    88  b2ContactPositionConstraint* m_positionConstraints;
    -
    89  b2ContactVelocityConstraint* m_velocityConstraints;
    -
    90  b2Contact** m_contacts;
    -
    91  int m_count;
    -
    92 };
    -
    93 
    -
    94 #endif
    -
    95 
    -
    Definition: b2ContactSolver.cpp:29
    -
    Definition: b2ContactSolver.h:59
    -
    Definition: b2StackAllocator.h:37
    -
    Definition: b2ContactSolver.h:31
    - -
    This is an internal structure.
    Definition: b2TimeStep.h:49
    -
    This is an internal structure.
    Definition: b2TimeStep.h:38
    -
    A 2-by-2 matrix. Stored in column-major order.
    Definition: b2Math.h:183
    -
    A rigid body. These are created via b2World::CreateBody.
    Definition: b2Body.h:126
    -
    Definition: b2ContactSolver.h:42
    -
    This is an internal structure.
    Definition: b2TimeStep.h:56
    -
    A 2D column vector.
    Definition: b2Math.h:53
    -
    Definition: b2Contact.h:77
    -
    Definition: b2ContactSolver.h:69
    -
    #define b2_maxManifoldPoints
    Definition: b2Settings.h:50
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_distance_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_distance_8h_source.html deleted file mode 100644 index c19304e..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_distance_8h_source.html +++ /dev/null @@ -1,241 +0,0 @@ - - - - - - -Box2D: b2Distance.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2Distance.h
    -
    -
    -
    1 
    -
    2 /*
    -
    3 * Copyright (c) 2006-2009 Erin Catto http://www.box2d.org
    -
    4 *
    -
    5 * This software is provided 'as-is', without any express or implied
    -
    6 * warranty. In no event will the authors be held liable for any damages
    -
    7 * arising from the use of this software.
    -
    8 * Permission is granted to anyone to use this software for any purpose,
    -
    9 * including commercial applications, and to alter it and redistribute it
    -
    10 * freely, subject to the following restrictions:
    -
    11 * 1. The origin of this software must not be misrepresented; you must not
    -
    12 * claim that you wrote the original software. If you use this software
    -
    13 * in a product, an acknowledgment in the product documentation would be
    -
    14 * appreciated but is not required.
    -
    15 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    16 * misrepresented as being the original software.
    -
    17 * 3. This notice may not be removed or altered from any source distribution.
    -
    18 */
    -
    19 
    -
    20 #ifndef B2_DISTANCE_H
    -
    21 #define B2_DISTANCE_H
    -
    22 
    -
    23 #include <Box2D/Common/b2Math.h>
    -
    24 
    -
    25 class b2Shape;
    -
    26 
    - -
    30 {
    -
    31  b2DistanceProxy() : m_vertices(NULL), m_count(0), m_radius(0.0f) {}
    -
    32 
    -
    35  void Set(const b2Shape* shape, int32 index);
    -
    36 
    -
    38  int32 GetSupport(const b2Vec2& d) const;
    -
    39 
    -
    41  const b2Vec2& GetSupportVertex(const b2Vec2& d) const;
    -
    42 
    -
    44  int32 GetVertexCount() const;
    -
    45 
    -
    47  const b2Vec2& GetVertex(int32 index) const;
    -
    48 
    -
    49  b2Vec2 m_buffer[2];
    -
    50  const b2Vec2* m_vertices;
    -
    51  int32 m_count;
    -
    52  float32 m_radius;
    -
    53 };
    -
    54 
    - -
    58 {
    -
    59  float32 metric;
    -
    60  uint16 count;
    -
    61  uint8 indexA[3];
    -
    62  uint8 indexB[3];
    -
    63 };
    -
    64 
    - -
    69 {
    -
    70  b2DistanceProxy proxyA;
    -
    71  b2DistanceProxy proxyB;
    -
    72  b2Transform transformA;
    -
    73  b2Transform transformB;
    -
    74  bool useRadii;
    -
    75 };
    -
    76 
    - -
    79 {
    - - -
    82  float32 distance;
    -
    83  int32 iterations;
    -
    84 };
    -
    85 
    -
    89 void b2Distance(b2DistanceOutput* output,
    -
    90  b2SimplexCache* cache,
    -
    91  const b2DistanceInput* input);
    -
    92 
    -
    93 
    -
    95 
    -
    96 inline int32 b2DistanceProxy::GetVertexCount() const
    -
    97 {
    -
    98  return m_count;
    -
    99 }
    -
    100 
    -
    101 inline const b2Vec2& b2DistanceProxy::GetVertex(int32 index) const
    -
    102 {
    -
    103  b2Assert(0 <= index && index < m_count);
    -
    104  return m_vertices[index];
    -
    105 }
    -
    106 
    -
    107 inline int32 b2DistanceProxy::GetSupport(const b2Vec2& d) const
    -
    108 {
    -
    109  int32 bestIndex = 0;
    -
    110  float32 bestValue = b2Dot(m_vertices[0], d);
    -
    111  for (int32 i = 1; i < m_count; ++i)
    -
    112  {
    -
    113  float32 value = b2Dot(m_vertices[i], d);
    -
    114  if (value > bestValue)
    -
    115  {
    -
    116  bestIndex = i;
    -
    117  bestValue = value;
    -
    118  }
    -
    119  }
    -
    120 
    -
    121  return bestIndex;
    -
    122 }
    -
    123 
    -
    124 inline const b2Vec2& b2DistanceProxy::GetSupportVertex(const b2Vec2& d) const
    -
    125 {
    -
    126  int32 bestIndex = 0;
    -
    127  float32 bestValue = b2Dot(m_vertices[0], d);
    -
    128  for (int32 i = 1; i < m_count; ++i)
    -
    129  {
    -
    130  float32 value = b2Dot(m_vertices[i], d);
    -
    131  if (value > bestValue)
    -
    132  {
    -
    133  bestIndex = i;
    -
    134  bestValue = value;
    -
    135  }
    -
    136  }
    -
    137 
    -
    138  return m_vertices[bestIndex];
    -
    139 }
    -
    140 
    -
    141 #endif
    -
    Definition: b2Math.h:350
    -
    uint8 indexA[3]
    vertices on shape A
    Definition: b2Distance.h:61
    -
    const b2Vec2 & GetVertex(int32 index) const
    Get a vertex by index. Used by b2Distance.
    Definition: b2Distance.h:101
    -
    b2Vec2 pointA
    closest point on shapeA
    Definition: b2Distance.h:80
    -
    b2Vec2 pointB
    closest point on shapeB
    Definition: b2Distance.h:81
    -
    const b2Vec2 & GetSupportVertex(const b2Vec2 &d) const
    Get the supporting vertex in the given direction.
    Definition: b2Distance.h:124
    -
    float32 metric
    length or area
    Definition: b2Distance.h:59
    -
    int32 iterations
    number of GJK iterations used
    Definition: b2Distance.h:83
    -
    Definition: b2Shape.h:42
    -
    uint8 indexB[3]
    vertices on shape B
    Definition: b2Distance.h:62
    -
    Definition: b2Distance.h:68
    -
    int32 GetVertexCount() const
    Get the vertex count.
    Definition: b2Distance.h:96
    -
    Output for b2Distance.
    Definition: b2Distance.h:78
    -
    Definition: b2Distance.h:29
    -
    Definition: b2Distance.h:57
    -
    int32 GetSupport(const b2Vec2 &d) const
    Get the supporting vertex index in the given direction.
    Definition: b2Distance.h:107
    -
    void Set(const b2Shape *shape, int32 index)
    Definition: b2Distance.cpp:28
    -
    A 2D column vector.
    Definition: b2Math.h:53
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_distance_joint_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_distance_joint_8h_source.html deleted file mode 100644 index 7b31919..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_distance_joint_8h_source.html +++ /dev/null @@ -1,268 +0,0 @@ - - - - - - -Box2D: b2DistanceJoint.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2DistanceJoint.h
    -
    -
    -
    1 /*
    -
    2 * Copyright (c) 2006-2007 Erin Catto http://www.box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_DISTANCE_JOINT_H
    -
    20 #define B2_DISTANCE_JOINT_H
    -
    21 
    -
    22 #include <Box2D/Dynamics/Joints/b2Joint.h>
    -
    23 
    - -
    31 {
    - -
    33  {
    -
    34  type = e_distanceJoint;
    -
    35  localAnchorA.Set(0.0f, 0.0f);
    -
    36  localAnchorB.Set(0.0f, 0.0f);
    -
    37  length = 1.0f;
    -
    38  frequencyHz = 0.0f;
    -
    39  dampingRatio = 0.0f;
    -
    40  }
    -
    41 
    - -
    45  const b2Vec2& anchorA, const b2Vec2& anchorB);
    -
    46 
    - -
    49 
    - -
    52 
    -
    54  float32 length;
    -
    55 
    -
    58  float32 frequencyHz;
    -
    59 
    -
    61  float32 dampingRatio;
    -
    62 };
    -
    63 
    -
    67 class b2DistanceJoint : public b2Joint
    -
    68 {
    -
    69 public:
    -
    70 
    -
    71  b2Vec2 GetAnchorA() const;
    -
    72  b2Vec2 GetAnchorB() const;
    -
    73 
    -
    76  b2Vec2 GetReactionForce(float32 inv_dt) const;
    -
    77 
    -
    80  float32 GetReactionTorque(float32 inv_dt) const;
    -
    81 
    -
    83  const b2Vec2& GetLocalAnchorA() const { return m_localAnchorA; }
    -
    84 
    -
    86  const b2Vec2& GetLocalAnchorB() const { return m_localAnchorB; }
    -
    87 
    -
    90  void SetLength(float32 length);
    -
    91  float32 GetLength() const;
    -
    92 
    -
    94  void SetFrequency(float32 hz);
    -
    95  float32 GetFrequency() const;
    -
    96 
    -
    98  void SetDampingRatio(float32 ratio);
    -
    99  float32 GetDampingRatio() const;
    -
    100 
    -
    102  void Dump();
    -
    103 
    -
    104 protected:
    -
    105 
    -
    106  friend class b2Joint;
    -
    107  b2DistanceJoint(const b2DistanceJointDef* data);
    -
    108 
    -
    109  void InitVelocityConstraints(const b2SolverData& data);
    -
    110  void SolveVelocityConstraints(const b2SolverData& data);
    -
    111  bool SolvePositionConstraints(const b2SolverData& data);
    -
    112 
    -
    113  float32 m_frequencyHz;
    -
    114  float32 m_dampingRatio;
    -
    115  float32 m_bias;
    -
    116 
    -
    117  // Solver shared
    -
    118  b2Vec2 m_localAnchorA;
    -
    119  b2Vec2 m_localAnchorB;
    -
    120  float32 m_gamma;
    -
    121  float32 m_impulse;
    -
    122  float32 m_length;
    -
    123 
    -
    124  // Solver temp
    -
    125  int32 m_indexA;
    -
    126  int32 m_indexB;
    -
    127  b2Vec2 m_u;
    -
    128  b2Vec2 m_rA;
    -
    129  b2Vec2 m_rB;
    -
    130  b2Vec2 m_localCenterA;
    -
    131  b2Vec2 m_localCenterB;
    -
    132  float32 m_invMassA;
    -
    133  float32 m_invMassB;
    -
    134  float32 m_invIA;
    -
    135  float32 m_invIB;
    -
    136  float32 m_mass;
    -
    137 };
    -
    138 
    -
    139 inline void b2DistanceJoint::SetLength(float32 length)
    -
    140 {
    -
    141  m_length = length;
    -
    142 }
    -
    143 
    -
    144 inline float32 b2DistanceJoint::GetLength() const
    -
    145 {
    -
    146  return m_length;
    -
    147 }
    -
    148 
    -
    149 inline void b2DistanceJoint::SetFrequency(float32 hz)
    -
    150 {
    -
    151  m_frequencyHz = hz;
    -
    152 }
    -
    153 
    -
    154 inline float32 b2DistanceJoint::GetFrequency() const
    -
    155 {
    -
    156  return m_frequencyHz;
    -
    157 }
    -
    158 
    -
    159 inline void b2DistanceJoint::SetDampingRatio(float32 ratio)
    -
    160 {
    -
    161  m_dampingRatio = ratio;
    -
    162 }
    -
    163 
    -
    164 inline float32 b2DistanceJoint::GetDampingRatio() const
    -
    165 {
    -
    166  return m_dampingRatio;
    -
    167 }
    -
    168 
    -
    169 #endif
    -
    void Initialize(b2Body *bodyA, b2Body *bodyB, const b2Vec2 &anchorA, const b2Vec2 &anchorB)
    Definition: b2DistanceJoint.cpp:38
    -
    b2Body * bodyA
    The first attached body.
    Definition: b2Joint.h:92
    -
    b2Vec2 localAnchorA
    The local anchor point relative to bodyA&#39;s origin.
    Definition: b2DistanceJoint.h:48
    -
    b2Body * bodyB
    The second attached body.
    Definition: b2Joint.h:95
    -
    b2Vec2 GetReactionForce(float32 inv_dt) const
    Definition: b2DistanceJoint.cpp:233
    -
    Definition: b2Joint.h:103
    -
    void SetLength(float32 length)
    Definition: b2DistanceJoint.h:139
    -
    void Set(float32 x_, float32 y_)
    Set this vector to some specified coordinates.
    Definition: b2Math.h:65
    -
    float32 GetReactionTorque(float32 inv_dt) const
    Definition: b2DistanceJoint.cpp:239
    -
    b2JointType type
    The joint type is set automatically for concrete joint types.
    Definition: b2Joint.h:86
    -
    Solver Data.
    Definition: b2TimeStep.h:63
    -
    void Dump()
    Dump joint to dmLog.
    Definition: b2DistanceJoint.cpp:245
    -
    float32 length
    The natural length between the anchor points.
    Definition: b2DistanceJoint.h:54
    -
    Definition: b2DistanceJoint.h:67
    -
    float32 frequencyHz
    Definition: b2DistanceJoint.h:58
    -
    Joint definitions are used to construct joints.
    Definition: b2Joint.h:74
    -
    const b2Vec2 & GetLocalAnchorA() const
    The local anchor point relative to bodyA&#39;s origin.
    Definition: b2DistanceJoint.h:83
    -
    b2Vec2 GetAnchorB() const
    Get the anchor point on bodyB in world coordinates.
    Definition: b2DistanceJoint.cpp:228
    -
    A rigid body. These are created via b2World::CreateBody.
    Definition: b2Body.h:126
    -
    Definition: b2DistanceJoint.h:30
    -
    float32 dampingRatio
    The damping ratio. 0 = no damping, 1 = critical damping.
    Definition: b2DistanceJoint.h:61
    -
    void SetDampingRatio(float32 ratio)
    Set/get damping ratio.
    Definition: b2DistanceJoint.h:159
    -
    b2Vec2 GetAnchorA() const
    Get the anchor point on bodyA in world coordinates.
    Definition: b2DistanceJoint.cpp:223
    -
    const b2Vec2 & GetLocalAnchorB() const
    The local anchor point relative to bodyB&#39;s origin.
    Definition: b2DistanceJoint.h:86
    -
    b2Vec2 localAnchorB
    The local anchor point relative to bodyB&#39;s origin.
    Definition: b2DistanceJoint.h:51
    -
    A 2D column vector.
    Definition: b2Math.h:53
    -
    void SetFrequency(float32 hz)
    Set/get frequency in Hz.
    Definition: b2DistanceJoint.h:149
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_draw_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_draw_8h_source.html deleted file mode 100644 index 0a097ef..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_draw_8h_source.html +++ /dev/null @@ -1,191 +0,0 @@ - - - - - - -Box2D: b2Draw.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2Draw.h
    -
    -
    -
    1 /*
    -
    2 * Copyright (c) 2011 Erin Catto http://box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_DRAW_H
    -
    20 #define B2_DRAW_H
    -
    21 
    -
    22 #include <Box2D/Common/b2Math.h>
    -
    23 
    -
    25 struct b2Color
    -
    26 {
    -
    27  b2Color() {}
    -
    28  b2Color(float32 r, float32 g, float32 b) : r(r), g(g), b(b) {}
    -
    29  void Set(float32 ri, float32 gi, float32 bi) { r = ri; g = gi; b = bi; }
    -
    30  float32 r, g, b;
    -
    31 };
    -
    32 
    -
    35 class b2Draw
    -
    36 {
    -
    37 public:
    -
    38  b2Draw();
    -
    39 
    -
    40  virtual ~b2Draw() {}
    -
    41 
    -
    42  enum
    -
    43  {
    -
    44  e_shapeBit = 0x0001,
    -
    45  e_jointBit = 0x0002,
    -
    46  e_aabbBit = 0x0004,
    -
    47  e_pairBit = 0x0008,
    - -
    49  };
    -
    50 
    -
    52  void SetFlags(uint32 flags);
    -
    53 
    -
    55  uint32 GetFlags() const;
    -
    56 
    -
    58  void AppendFlags(uint32 flags);
    -
    59 
    -
    61  void ClearFlags(uint32 flags);
    -
    62 
    -
    64  virtual void DrawPolygon(const b2Vec2* vertices, int32 vertexCount, const b2Color& color) = 0;
    -
    65 
    -
    67  virtual void DrawSolidPolygon(const b2Vec2* vertices, int32 vertexCount, const b2Color& color) = 0;
    -
    68 
    -
    70  virtual void DrawCircle(const b2Vec2& center, float32 radius, const b2Color& color) = 0;
    -
    71 
    -
    73  virtual void DrawSolidCircle(const b2Vec2& center, float32 radius, const b2Vec2& axis, const b2Color& color) = 0;
    -
    74 
    -
    76  virtual void DrawSegment(const b2Vec2& p1, const b2Vec2& p2, const b2Color& color) = 0;
    -
    77 
    -
    80  virtual void DrawTransform(const b2Transform& xf) = 0;
    -
    81 
    -
    82 protected:
    -
    83  uint32 m_drawFlags;
    -
    84 };
    -
    85 
    -
    86 #endif
    -
    Definition: b2Math.h:350
    -
    draw center of mass frame
    Definition: b2Draw.h:48
    -
    virtual void DrawSolidCircle(const b2Vec2 &center, float32 radius, const b2Vec2 &axis, const b2Color &color)=0
    Draw a solid circle.
    -
    uint32 GetFlags() const
    Get the drawing flags.
    Definition: b2Draw.cpp:31
    -
    virtual void DrawSegment(const b2Vec2 &p1, const b2Vec2 &p2, const b2Color &color)=0
    Draw a line segment.
    -
    Color for debug drawing. Each value has the range [0,1].
    Definition: b2Draw.h:25
    -
    draw broad-phase pairs
    Definition: b2Draw.h:47
    -
    void SetFlags(uint32 flags)
    Set the drawing flags.
    Definition: b2Draw.cpp:26
    -
    draw shapes
    Definition: b2Draw.h:44
    -
    virtual void DrawCircle(const b2Vec2 &center, float32 radius, const b2Color &color)=0
    Draw a circle.
    -
    virtual void DrawSolidPolygon(const b2Vec2 *vertices, int32 vertexCount, const b2Color &color)=0
    Draw a solid closed polygon provided in CCW order.
    -
    void ClearFlags(uint32 flags)
    Clear flags from the current flags.
    Definition: b2Draw.cpp:41
    -
    Definition: b2Draw.h:35
    -
    virtual void DrawPolygon(const b2Vec2 *vertices, int32 vertexCount, const b2Color &color)=0
    Draw a closed polygon provided in CCW order.
    -
    draw joint connections
    Definition: b2Draw.h:45
    -
    draw axis aligned bounding boxes
    Definition: b2Draw.h:46
    -
    A 2D column vector.
    Definition: b2Math.h:53
    -
    virtual void DrawTransform(const b2Transform &xf)=0
    -
    void AppendFlags(uint32 flags)
    Append flags to the current flags.
    Definition: b2Draw.cpp:36
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_dynamic_tree_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_dynamic_tree_8h_source.html deleted file mode 100644 index 85fbbea..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_dynamic_tree_8h_source.html +++ /dev/null @@ -1,378 +0,0 @@ - - - - - - -Box2D: b2DynamicTree.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2DynamicTree.h
    -
    -
    -
    1 /*
    -
    2 * Copyright (c) 2009 Erin Catto http://www.box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_DYNAMIC_TREE_H
    -
    20 #define B2_DYNAMIC_TREE_H
    -
    21 
    - -
    23 #include <Box2D/Common/b2GrowableStack.h>
    -
    24 
    -
    25 #define b2_nullNode (-1)
    -
    26 
    -
    28 struct b2TreeNode
    -
    29 {
    -
    30  bool IsLeaf() const
    -
    31  {
    -
    32  return child1 == b2_nullNode;
    -
    33  }
    -
    34 
    - -
    37 
    -
    38  void* userData;
    -
    39 
    -
    40  union
    -
    41  {
    -
    42  int32 parent;
    -
    43  int32 next;
    -
    44  };
    -
    45 
    -
    46  int32 child1;
    -
    47  int32 child2;
    -
    48 
    -
    49  // leaf = 0, free node = -1
    -
    50  int32 height;
    -
    51 };
    -
    52 
    - -
    62 {
    -
    63 public:
    -
    65  b2DynamicTree();
    -
    66 
    - -
    69 
    -
    71  int32 CreateProxy(const b2AABB& aabb, void* userData);
    -
    72 
    -
    74  void DestroyProxy(int32 proxyId);
    -
    75 
    -
    80  bool MoveProxy(int32 proxyId, const b2AABB& aabb1, const b2Vec2& displacement);
    -
    81 
    -
    84  void* GetUserData(int32 proxyId) const;
    -
    85 
    -
    87  const b2AABB& GetFatAABB(int32 proxyId) const;
    -
    88 
    -
    91  template <typename T>
    -
    92  void Query(T* callback, const b2AABB& aabb) const;
    -
    93 
    -
    101  template <typename T>
    -
    102  void RayCast(T* callback, const b2RayCastInput& input) const;
    -
    103 
    -
    105  void Validate() const;
    -
    106 
    -
    109  int32 GetHeight() const;
    -
    110 
    -
    113  int32 GetMaxBalance() const;
    -
    114 
    -
    116  float32 GetAreaRatio() const;
    -
    117 
    -
    119  void RebuildBottomUp();
    -
    120 
    -
    124  void ShiftOrigin(const b2Vec2& newOrigin);
    -
    125 
    -
    126 private:
    -
    127 
    -
    128  int32 AllocateNode();
    -
    129  void FreeNode(int32 node);
    -
    130 
    -
    131  void InsertLeaf(int32 node);
    -
    132  void RemoveLeaf(int32 node);
    -
    133 
    -
    134  int32 Balance(int32 index);
    -
    135 
    -
    136  int32 ComputeHeight() const;
    -
    137  int32 ComputeHeight(int32 nodeId) const;
    -
    138 
    -
    139  void ValidateStructure(int32 index) const;
    -
    140  void ValidateMetrics(int32 index) const;
    -
    141 
    -
    142  int32 m_root;
    -
    143 
    -
    144  b2TreeNode* m_nodes;
    -
    145  int32 m_nodeCount;
    -
    146  int32 m_nodeCapacity;
    -
    147 
    -
    148  int32 m_freeList;
    -
    149 
    -
    151  uint32 m_path;
    -
    152 
    -
    153  int32 m_insertionCount;
    -
    154 };
    -
    155 
    -
    156 inline void* b2DynamicTree::GetUserData(int32 proxyId) const
    -
    157 {
    -
    158  b2Assert(0 <= proxyId && proxyId < m_nodeCapacity);
    -
    159  return m_nodes[proxyId].userData;
    -
    160 }
    -
    161 
    -
    162 inline const b2AABB& b2DynamicTree::GetFatAABB(int32 proxyId) const
    -
    163 {
    -
    164  b2Assert(0 <= proxyId && proxyId < m_nodeCapacity);
    -
    165  return m_nodes[proxyId].aabb;
    -
    166 }
    -
    167 
    -
    168 template <typename T>
    -
    169 inline void b2DynamicTree::Query(T* callback, const b2AABB& aabb) const
    -
    170 {
    - -
    172  stack.Push(m_root);
    -
    173 
    -
    174  while (stack.GetCount() > 0)
    -
    175  {
    -
    176  int32 nodeId = stack.Pop();
    -
    177  if (nodeId == b2_nullNode)
    -
    178  {
    -
    179  continue;
    -
    180  }
    -
    181 
    -
    182  const b2TreeNode* node = m_nodes + nodeId;
    -
    183 
    -
    184  if (b2TestOverlap(node->aabb, aabb))
    -
    185  {
    -
    186  if (node->IsLeaf())
    -
    187  {
    -
    188  bool proceed = callback->QueryCallback(nodeId);
    -
    189  if (proceed == false)
    -
    190  {
    -
    191  return;
    -
    192  }
    -
    193  }
    -
    194  else
    -
    195  {
    -
    196  stack.Push(node->child1);
    -
    197  stack.Push(node->child2);
    -
    198  }
    -
    199  }
    -
    200  }
    -
    201 }
    -
    202 
    -
    203 template <typename T>
    -
    204 inline void b2DynamicTree::RayCast(T* callback, const b2RayCastInput& input) const
    -
    205 {
    -
    206  b2Vec2 p1 = input.p1;
    -
    207  b2Vec2 p2 = input.p2;
    -
    208  b2Vec2 r = p2 - p1;
    -
    209  b2Assert(r.LengthSquared() > 0.0f);
    -
    210  r.Normalize();
    -
    211 
    -
    212  // v is perpendicular to the segment.
    -
    213  b2Vec2 v = b2Cross(1.0f, r);
    -
    214  b2Vec2 abs_v = b2Abs(v);
    -
    215 
    -
    216  // Separating axis for segment (Gino, p80).
    -
    217  // |dot(v, p1 - c)| > dot(|v|, h)
    -
    218 
    -
    219  float32 maxFraction = input.maxFraction;
    -
    220 
    -
    221  // Build a bounding box for the segment.
    -
    222  b2AABB segmentAABB;
    -
    223  {
    -
    224  b2Vec2 t = p1 + maxFraction * (p2 - p1);
    -
    225  segmentAABB.lowerBound = b2Min(p1, t);
    -
    226  segmentAABB.upperBound = b2Max(p1, t);
    -
    227  }
    -
    228 
    - -
    230  stack.Push(m_root);
    -
    231 
    -
    232  while (stack.GetCount() > 0)
    -
    233  {
    -
    234  int32 nodeId = stack.Pop();
    -
    235  if (nodeId == b2_nullNode)
    -
    236  {
    -
    237  continue;
    -
    238  }
    -
    239 
    -
    240  const b2TreeNode* node = m_nodes + nodeId;
    -
    241 
    -
    242  if (b2TestOverlap(node->aabb, segmentAABB) == false)
    -
    243  {
    -
    244  continue;
    -
    245  }
    -
    246 
    -
    247  // Separating axis for segment (Gino, p80).
    -
    248  // |dot(v, p1 - c)| > dot(|v|, h)
    -
    249  b2Vec2 c = node->aabb.GetCenter();
    -
    250  b2Vec2 h = node->aabb.GetExtents();
    -
    251  float32 separation = b2Abs(b2Dot(v, p1 - c)) - b2Dot(abs_v, h);
    -
    252  if (separation > 0.0f)
    -
    253  {
    -
    254  continue;
    -
    255  }
    -
    256 
    -
    257  if (node->IsLeaf())
    -
    258  {
    -
    259  b2RayCastInput subInput;
    -
    260  subInput.p1 = input.p1;
    -
    261  subInput.p2 = input.p2;
    -
    262  subInput.maxFraction = maxFraction;
    -
    263 
    -
    264  float32 value = callback->RayCastCallback(subInput, nodeId);
    -
    265 
    -
    266  if (value == 0.0f)
    -
    267  {
    -
    268  // The client has terminated the ray cast.
    -
    269  return;
    -
    270  }
    -
    271 
    -
    272  if (value > 0.0f)
    -
    273  {
    -
    274  // Update segment bounding box.
    -
    275  maxFraction = value;
    -
    276  b2Vec2 t = p1 + maxFraction * (p2 - p1);
    -
    277  segmentAABB.lowerBound = b2Min(p1, t);
    -
    278  segmentAABB.upperBound = b2Max(p1, t);
    -
    279  }
    -
    280  }
    -
    281  else
    -
    282  {
    -
    283  stack.Push(node->child1);
    -
    284  stack.Push(node->child2);
    -
    285  }
    -
    286  }
    -
    287 }
    -
    288 
    -
    289 #endif
    -
    b2DynamicTree()
    Constructing the tree initializes the node pool.
    Definition: b2DynamicTree.cpp:22
    -
    b2Vec2 GetExtents() const
    Get the extents of the AABB (half-widths).
    Definition: b2Collision.h:174
    -
    b2Vec2 GetCenter() const
    Get the center of the AABB.
    Definition: b2Collision.h:168
    -
    b2Vec2 lowerBound
    the lower vertex
    Definition: b2Collision.h:214
    -
    b2AABB aabb
    Enlarged AABB.
    Definition: b2DynamicTree.h:36
    -
    Definition: b2DynamicTree.h:61
    -
    void RayCast(T *callback, const b2RayCastInput &input) const
    Definition: b2DynamicTree.h:204
    -
    float32 Normalize()
    Convert this vector into a unit vector. Returns the length.
    Definition: b2Math.h:114
    -
    bool MoveProxy(int32 proxyId, const b2AABB &aabb1, const b2Vec2 &displacement)
    Definition: b2DynamicTree.cpp:130
    -
    int32 GetHeight() const
    Definition: b2DynamicTree.cpp:520
    -
    void RebuildBottomUp()
    Build an optimal tree. Very expensive. For testing.
    Definition: b2DynamicTree.cpp:694
    -
    ~b2DynamicTree()
    Destroy the tree, freeing the node pool.
    Definition: b2DynamicTree.cpp:46
    -
    void DestroyProxy(int32 proxyId)
    Destroy a proxy. This asserts if the id is invalid.
    Definition: b2DynamicTree.cpp:121
    - -
    void ShiftOrigin(const b2Vec2 &newOrigin)
    Definition: b2DynamicTree.cpp:770
    -
    b2Vec2 upperBound
    the upper vertex
    Definition: b2Collision.h:215
    -
    float32 GetAreaRatio() const
    Get the ratio of the sum of the node areas to the root area.
    Definition: b2DynamicTree.cpp:531
    -
    An axis aligned bounding box.
    Definition: b2Collision.h:162
    -
    void * GetUserData(int32 proxyId) const
    Definition: b2DynamicTree.h:156
    -
    bool b2TestOverlap(const b2Shape *shapeA, int32 indexA, const b2Shape *shapeB, int32 indexB, const b2Transform &xfA, const b2Transform &xfB)
    Determine if two generic shapes overlap.
    Definition: b2Collision.cpp:233
    -
    Ray-cast input data. The ray extends from p1 to p1 + maxFraction * (p2 - p1).
    Definition: b2Collision.h:147
    -
    void Query(T *callback, const b2AABB &aabb) const
    Definition: b2DynamicTree.h:169
    -
    Definition: b2GrowableStack.h:28
    -
    int32 GetMaxBalance() const
    Definition: b2DynamicTree.cpp:672
    -
    int32 CreateProxy(const b2AABB &aabb, void *userData)
    Create a proxy. Provide a tight fitting AABB and a userData pointer.
    Definition: b2DynamicTree.cpp:105
    -
    void Validate() const
    Validate this tree. For testing.
    Definition: b2DynamicTree.cpp:653
    -
    A 2D column vector.
    Definition: b2Math.h:53
    -
    float32 LengthSquared() const
    Definition: b2Math.h:108
    -
    A node in the dynamic tree. The client does not interact with this directly.
    Definition: b2DynamicTree.h:28
    -
    const b2AABB & GetFatAABB(int32 proxyId) const
    Get the fat AABB for a proxy.
    Definition: b2DynamicTree.h:162
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_edge_and_circle_contact_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_edge_and_circle_contact_8h_source.html deleted file mode 100644 index 78db70e..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_edge_and_circle_contact_8h_source.html +++ /dev/null @@ -1,146 +0,0 @@ - - - - - - -Box2D: b2EdgeAndCircleContact.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2EdgeAndCircleContact.h
    -
    -
    -
    1 /*
    -
    2 * Copyright (c) 2006-2009 Erin Catto http://www.box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_EDGE_AND_CIRCLE_CONTACT_H
    -
    20 #define B2_EDGE_AND_CIRCLE_CONTACT_H
    -
    21 
    -
    22 #include <Box2D/Dynamics/Contacts/b2Contact.h>
    -
    23 
    -
    24 class b2BlockAllocator;
    -
    25 
    - -
    27 {
    -
    28 public:
    -
    29  static b2Contact* Create( b2Fixture* fixtureA, int32 indexA,
    -
    30  b2Fixture* fixtureB, int32 indexB, b2BlockAllocator* allocator);
    -
    31  static void Destroy(b2Contact* contact, b2BlockAllocator* allocator);
    -
    32 
    -
    33  b2EdgeAndCircleContact(b2Fixture* fixtureA, b2Fixture* fixtureB);
    - -
    35 
    -
    36  void Evaluate(b2Manifold* manifold, const b2Transform& xfA, const b2Transform& xfB);
    -
    37 };
    -
    38 
    -
    39 #endif
    -
    Definition: b2Math.h:350
    -
    void Evaluate(b2Manifold *manifold, const b2Transform &xfA, const b2Transform &xfB)
    Evaluate this contact with your own manifold and transforms.
    Definition: b2EdgeAndCircleContact.cpp:44
    -
    Definition: b2BlockAllocator.h:35
    -
    Definition: b2EdgeAndCircleContact.h:26
    -
    Definition: b2Collision.h:93
    -
    Definition: b2Contact.h:77
    -
    Definition: b2Fixture.h:107
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_edge_and_polygon_contact_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_edge_and_polygon_contact_8h_source.html deleted file mode 100644 index f441c7b..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_edge_and_polygon_contact_8h_source.html +++ /dev/null @@ -1,146 +0,0 @@ - - - - - - -Box2D: b2EdgeAndPolygonContact.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2EdgeAndPolygonContact.h
    -
    -
    -
    1 /*
    -
    2 * Copyright (c) 2006-2009 Erin Catto http://www.box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_EDGE_AND_POLYGON_CONTACT_H
    -
    20 #define B2_EDGE_AND_POLYGON_CONTACT_H
    -
    21 
    -
    22 #include <Box2D/Dynamics/Contacts/b2Contact.h>
    -
    23 
    -
    24 class b2BlockAllocator;
    -
    25 
    - -
    27 {
    -
    28 public:
    -
    29  static b2Contact* Create( b2Fixture* fixtureA, int32 indexA,
    -
    30  b2Fixture* fixtureB, int32 indexB, b2BlockAllocator* allocator);
    -
    31  static void Destroy(b2Contact* contact, b2BlockAllocator* allocator);
    -
    32 
    -
    33  b2EdgeAndPolygonContact(b2Fixture* fixtureA, b2Fixture* fixtureB);
    - -
    35 
    -
    36  void Evaluate(b2Manifold* manifold, const b2Transform& xfA, const b2Transform& xfB);
    -
    37 };
    -
    38 
    -
    39 #endif
    -
    Definition: b2Math.h:350
    -
    Definition: b2BlockAllocator.h:35
    -
    void Evaluate(b2Manifold *manifold, const b2Transform &xfA, const b2Transform &xfB)
    Evaluate this contact with your own manifold and transforms.
    Definition: b2EdgeAndPolygonContact.cpp:44
    -
    Definition: b2Collision.h:93
    -
    Definition: b2EdgeAndPolygonContact.h:26
    -
    Definition: b2Contact.h:77
    -
    Definition: b2Fixture.h:107
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_edge_shape_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_edge_shape_8h_source.html deleted file mode 100644 index 401f030..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_edge_shape_8h_source.html +++ /dev/null @@ -1,181 +0,0 @@ - - - - - - -Box2D: b2EdgeShape.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2EdgeShape.h
    -
    -
    -
    1 /*
    -
    2 * Copyright (c) 2006-2010 Erin Catto http://www.box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_EDGE_SHAPE_H
    -
    20 #define B2_EDGE_SHAPE_H
    -
    21 
    -
    22 #include <Box2D/Collision/Shapes/b2Shape.h>
    -
    23 
    -
    27 class b2EdgeShape : public b2Shape
    -
    28 {
    -
    29 public:
    -
    30  b2EdgeShape();
    -
    31 
    -
    33  void Set(const b2Vec2& v1, const b2Vec2& v2);
    -
    34 
    -
    36  b2Shape* Clone(b2BlockAllocator* allocator) const;
    -
    37 
    -
    39  int32 GetChildCount() const;
    -
    40 
    -
    42  bool TestPoint(const b2Transform& transform, const b2Vec2& p) const;
    -
    43 
    -
    45  bool RayCast(b2RayCastOutput* output, const b2RayCastInput& input,
    -
    46  const b2Transform& transform, int32 childIndex) const;
    -
    47 
    -
    49  void ComputeAABB(b2AABB* aabb, const b2Transform& transform, int32 childIndex) const;
    -
    50 
    -
    52  void ComputeMass(b2MassData* massData, float32 density) const;
    -
    53 
    -
    55  b2Vec2 m_vertex1, m_vertex2;
    -
    56 
    -
    58  b2Vec2 m_vertex0, m_vertex3;
    -
    59  bool m_hasVertex0, m_hasVertex3;
    -
    60 };
    -
    61 
    -
    62 inline b2EdgeShape::b2EdgeShape()
    -
    63 {
    -
    64  m_type = e_edge;
    -
    65  m_radius = b2_polygonRadius;
    -
    66  m_vertex0.x = 0.0f;
    -
    67  m_vertex0.y = 0.0f;
    -
    68  m_vertex3.x = 0.0f;
    -
    69  m_vertex3.y = 0.0f;
    -
    70  m_hasVertex0 = false;
    -
    71  m_hasVertex3 = false;
    -
    72 }
    -
    73 
    -
    74 #endif
    -
    Definition: b2Math.h:350
    -
    bool TestPoint(const b2Transform &transform, const b2Vec2 &p) const
    Definition: b2EdgeShape.cpp:43
    -
    int32 GetChildCount() const
    Definition: b2EdgeShape.cpp:38
    -
    Definition: b2BlockAllocator.h:35
    -
    This holds the mass data computed for a shape.
    Definition: b2Shape.h:27
    -
    Definition: b2Shape.h:42
    -
    b2Vec2 m_vertex0
    Optional adjacent vertices. These are used for smooth collision.
    Definition: b2EdgeShape.h:58
    -
    Definition: b2Collision.h:155
    -
    bool RayCast(b2RayCastOutput *output, const b2RayCastInput &input, const b2Transform &transform, int32 childIndex) const
    Implement b2Shape.
    Definition: b2EdgeShape.cpp:54
    -
    b2Shape * Clone(b2BlockAllocator *allocator) const
    Implement b2Shape.
    Definition: b2EdgeShape.cpp:30
    -
    #define b2_polygonRadius
    Definition: b2Settings.h:77
    -
    An axis aligned bounding box.
    Definition: b2Collision.h:162
    -
    Ray-cast input data. The ray extends from p1 to p1 + maxFraction * (p2 - p1).
    Definition: b2Collision.h:147
    -
    Definition: b2EdgeShape.h:27
    -
    void ComputeAABB(b2AABB *aabb, const b2Transform &transform, int32 childIndex) const
    Definition: b2EdgeShape.cpp:116
    -
    b2Vec2 m_vertex1
    These are the edge vertices.
    Definition: b2EdgeShape.h:55
    -
    void Set(const b2Vec2 &v1, const b2Vec2 &v2)
    Set this as an isolated edge.
    Definition: b2EdgeShape.cpp:22
    -
    A 2D column vector.
    Definition: b2Math.h:53
    -
    void ComputeMass(b2MassData *massData, float32 density) const
    Definition: b2EdgeShape.cpp:131
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_fixture_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_fixture_8h_source.html deleted file mode 100644 index 8304c32..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_fixture_8h_source.html +++ /dev/null @@ -1,435 +0,0 @@ - - - - - - -Box2D: b2Fixture.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2Fixture.h
    -
    -
    -
    1 /*
    -
    2 * Copyright (c) 2006-2009 Erin Catto http://www.box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_FIXTURE_H
    -
    20 #define B2_FIXTURE_H
    -
    21 
    -
    22 #include <Box2D/Dynamics/b2Body.h>
    - -
    24 #include <Box2D/Collision/Shapes/b2Shape.h>
    -
    25 
    -
    26 class b2BlockAllocator;
    -
    27 class b2Body;
    -
    28 class b2BroadPhase;
    -
    29 class b2Fixture;
    -
    30 
    -
    32 struct b2Filter
    -
    33 {
    -
    34  b2Filter()
    -
    35  {
    -
    36  categoryBits = 0x0001;
    -
    37  maskBits = 0xFFFF;
    -
    38  groupIndex = 0;
    -
    39  }
    -
    40 
    -
    42  uint16 categoryBits;
    -
    43 
    -
    46  uint16 maskBits;
    -
    47 
    -
    51  int16 groupIndex;
    -
    52 };
    -
    53 
    - -
    57 {
    - -
    60  {
    -
    61  shape = NULL;
    -
    62  userData = NULL;
    -
    63  friction = 0.2f;
    -
    64  restitution = 0.0f;
    -
    65  density = 0.0f;
    -
    66  isSensor = false;
    -
    67  }
    -
    68 
    -
    71  const b2Shape* shape;
    -
    72 
    -
    74  void* userData;
    -
    75 
    -
    77  float32 friction;
    -
    78 
    -
    80  float32 restitution;
    -
    81 
    -
    83  float32 density;
    -
    84 
    -
    87  bool isSensor;
    -
    88 
    - -
    91 };
    -
    92 
    - -
    95 {
    -
    96  b2AABB aabb;
    -
    97  b2Fixture* fixture;
    -
    98  int32 childIndex;
    -
    99  int32 proxyId;
    -
    100 };
    -
    101 
    - -
    108 {
    -
    109 public:
    -
    112  b2Shape::Type GetType() const;
    -
    113 
    -
    117  b2Shape* GetShape();
    -
    118  const b2Shape* GetShape() const;
    -
    119 
    -
    121  void SetSensor(bool sensor);
    -
    122 
    -
    125  bool IsSensor() const;
    -
    126 
    -
    130  void SetFilterData(const b2Filter& filter);
    -
    131 
    -
    133  const b2Filter& GetFilterData() const;
    -
    134 
    -
    136  void Refilter();
    -
    137 
    -
    140  b2Body* GetBody();
    -
    141  const b2Body* GetBody() const;
    -
    142 
    -
    145  b2Fixture* GetNext();
    -
    146  const b2Fixture* GetNext() const;
    -
    147 
    -
    150  void* GetUserData() const;
    -
    151 
    -
    153  void SetUserData(void* data);
    -
    154 
    -
    157  bool TestPoint(const b2Vec2& p) const;
    -
    158 
    -
    162  bool RayCast(b2RayCastOutput* output, const b2RayCastInput& input, int32 childIndex) const;
    -
    163 
    -
    167  void GetMassData(b2MassData* massData) const;
    -
    168 
    -
    171  void SetDensity(float32 density);
    -
    172 
    -
    174  float32 GetDensity() const;
    -
    175 
    -
    177  float32 GetFriction() const;
    -
    178 
    -
    181  void SetFriction(float32 friction);
    -
    182 
    -
    184  float32 GetRestitution() const;
    -
    185 
    -
    188  void SetRestitution(float32 restitution);
    -
    189 
    -
    193  const b2AABB& GetAABB(int32 childIndex) const;
    -
    194 
    -
    196  void Dump(int32 bodyIndex);
    -
    197 
    -
    198 protected:
    -
    199 
    -
    200  friend class b2Body;
    -
    201  friend class b2World;
    -
    202  friend class b2Contact;
    -
    203  friend class b2ContactManager;
    -
    204 
    -
    205  b2Fixture();
    -
    206 
    -
    207  // We need separation create/destroy functions from the constructor/destructor because
    -
    208  // the destructor cannot access the allocator (no destructor arguments allowed by C++).
    -
    209  void Create(b2BlockAllocator* allocator, b2Body* body, const b2FixtureDef* def);
    -
    210  void Destroy(b2BlockAllocator* allocator);
    -
    211 
    -
    212  // These support body activation/deactivation.
    -
    213  void CreateProxies(b2BroadPhase* broadPhase, const b2Transform& xf);
    -
    214  void DestroyProxies(b2BroadPhase* broadPhase);
    -
    215 
    -
    216  void Synchronize(b2BroadPhase* broadPhase, const b2Transform& xf1, const b2Transform& xf2);
    -
    217 
    -
    218  float32 m_density;
    -
    219 
    -
    220  b2Fixture* m_next;
    -
    221  b2Body* m_body;
    -
    222 
    -
    223  b2Shape* m_shape;
    -
    224 
    -
    225  float32 m_friction;
    -
    226  float32 m_restitution;
    -
    227 
    -
    228  b2FixtureProxy* m_proxies;
    -
    229  int32 m_proxyCount;
    -
    230 
    -
    231  b2Filter m_filter;
    -
    232 
    -
    233  bool m_isSensor;
    -
    234 
    -
    235  void* m_userData;
    -
    236 };
    -
    237 
    -
    238 inline b2Shape::Type b2Fixture::GetType() const
    -
    239 {
    -
    240  return m_shape->GetType();
    -
    241 }
    -
    242 
    - -
    244 {
    -
    245  return m_shape;
    -
    246 }
    -
    247 
    -
    248 inline const b2Shape* b2Fixture::GetShape() const
    -
    249 {
    -
    250  return m_shape;
    -
    251 }
    -
    252 
    -
    253 inline bool b2Fixture::IsSensor() const
    -
    254 {
    -
    255  return m_isSensor;
    -
    256 }
    -
    257 
    -
    258 inline const b2Filter& b2Fixture::GetFilterData() const
    -
    259 {
    -
    260  return m_filter;
    -
    261 }
    -
    262 
    -
    263 inline void* b2Fixture::GetUserData() const
    -
    264 {
    -
    265  return m_userData;
    -
    266 }
    -
    267 
    -
    268 inline void b2Fixture::SetUserData(void* data)
    -
    269 {
    -
    270  m_userData = data;
    -
    271 }
    -
    272 
    - -
    274 {
    -
    275  return m_body;
    -
    276 }
    -
    277 
    -
    278 inline const b2Body* b2Fixture::GetBody() const
    -
    279 {
    -
    280  return m_body;
    -
    281 }
    -
    282 
    - -
    284 {
    -
    285  return m_next;
    -
    286 }
    -
    287 
    -
    288 inline const b2Fixture* b2Fixture::GetNext() const
    -
    289 {
    -
    290  return m_next;
    -
    291 }
    -
    292 
    -
    293 inline void b2Fixture::SetDensity(float32 density)
    -
    294 {
    -
    295  b2Assert(b2IsValid(density) && density >= 0.0f);
    -
    296  m_density = density;
    -
    297 }
    -
    298 
    -
    299 inline float32 b2Fixture::GetDensity() const
    -
    300 {
    -
    301  return m_density;
    -
    302 }
    -
    303 
    -
    304 inline float32 b2Fixture::GetFriction() const
    -
    305 {
    -
    306  return m_friction;
    -
    307 }
    -
    308 
    -
    309 inline void b2Fixture::SetFriction(float32 friction)
    -
    310 {
    -
    311  m_friction = friction;
    -
    312 }
    -
    313 
    -
    314 inline float32 b2Fixture::GetRestitution() const
    -
    315 {
    -
    316  return m_restitution;
    -
    317 }
    -
    318 
    -
    319 inline void b2Fixture::SetRestitution(float32 restitution)
    -
    320 {
    -
    321  m_restitution = restitution;
    -
    322 }
    -
    323 
    -
    324 inline bool b2Fixture::TestPoint(const b2Vec2& p) const
    -
    325 {
    -
    326  return m_shape->TestPoint(m_body->GetTransform(), p);
    -
    327 }
    -
    328 
    -
    329 inline bool b2Fixture::RayCast(b2RayCastOutput* output, const b2RayCastInput& input, int32 childIndex) const
    -
    330 {
    -
    331  return m_shape->RayCast(output, input, m_body->GetTransform(), childIndex);
    -
    332 }
    -
    333 
    -
    334 inline void b2Fixture::GetMassData(b2MassData* massData) const
    -
    335 {
    -
    336  m_shape->ComputeMass(massData, m_density);
    -
    337 }
    -
    338 
    -
    339 inline const b2AABB& b2Fixture::GetAABB(int32 childIndex) const
    -
    340 {
    -
    341  b2Assert(0 <= childIndex && childIndex < m_proxyCount);
    -
    342  return m_proxies[childIndex].aabb;
    -
    343 }
    -
    344 
    -
    345 #endif
    -
    Definition: b2Math.h:350
    -
    const b2AABB & GetAABB(int32 childIndex) const
    Definition: b2Fixture.h:339
    -
    Type GetType() const
    Definition: b2Shape.h:96
    -
    b2Filter filter
    Contact filtering data.
    Definition: b2Fixture.h:90
    -
    b2Fixture * GetNext()
    Definition: b2Fixture.h:283
    -
    void SetRestitution(float32 restitution)
    Definition: b2Fixture.h:319
    -
    Definition: b2BroadPhase.h:36
    -
    bool RayCast(b2RayCastOutput *output, const b2RayCastInput &input, int32 childIndex) const
    Definition: b2Fixture.h:329
    -
    void * userData
    Use this to store application specific fixture data.
    Definition: b2Fixture.h:74
    -
    bool isSensor
    Definition: b2Fixture.h:87
    -
    void GetMassData(b2MassData *massData) const
    Definition: b2Fixture.h:334
    -
    Definition: b2World.h:41
    -
    This proxy is used internally to connect fixtures to the broad-phase.
    Definition: b2Fixture.h:94
    -
    void SetFriction(float32 friction)
    Definition: b2Fixture.h:309
    -
    uint16 categoryBits
    The collision category bits. Normally you would just set one bit.
    Definition: b2Fixture.h:42
    -
    float32 restitution
    The restitution (elasticity) usually in the range [0,1].
    Definition: b2Fixture.h:80
    -
    float32 GetFriction() const
    Get the coefficient of friction.
    Definition: b2Fixture.h:304
    -
    Definition: b2BlockAllocator.h:35
    -
    This holds the mass data computed for a shape.
    Definition: b2Shape.h:27
    -
    Definition: b2Shape.h:42
    - -
    float32 GetDensity() const
    Get the density of this fixture.
    Definition: b2Fixture.h:299
    -
    b2Shape::Type GetType() const
    Definition: b2Fixture.h:238
    -
    Definition: b2Collision.h:155
    -
    bool IsSensor() const
    Definition: b2Fixture.h:253
    -
    b2Body * GetBody()
    Definition: b2Fixture.h:273
    -
    b2Shape * GetShape()
    Definition: b2Fixture.h:243
    -
    Definition: b2Fixture.h:56
    -
    int16 groupIndex
    Definition: b2Fixture.h:51
    -
    An axis aligned bounding box.
    Definition: b2Collision.h:162
    -
    const b2Filter & GetFilterData() const
    Get the contact filtering data.
    Definition: b2Fixture.h:258
    -
    void SetFilterData(const b2Filter &filter)
    Definition: b2Fixture.cpp:176
    -
    Ray-cast input data. The ray extends from p1 to p1 + maxFraction * (p2 - p1).
    Definition: b2Collision.h:147
    -
    void SetSensor(bool sensor)
    Set if this fixture is a sensor.
    Definition: b2Fixture.cpp:220
    -
    void Refilter()
    Call this if you want to establish collision that was previously disabled by b2ContactFilter::ShouldC...
    Definition: b2Fixture.cpp:183
    -
    uint16 maskBits
    Definition: b2Fixture.h:46
    -
    A rigid body. These are created via b2World::CreateBody.
    Definition: b2Body.h:126
    -
    float32 GetRestitution() const
    Get the coefficient of restitution.
    Definition: b2Fixture.h:314
    -
    b2FixtureDef()
    The constructor sets the default fixture definition values.
    Definition: b2Fixture.h:59
    -
    void SetDensity(float32 density)
    Definition: b2Fixture.h:293
    -
    const b2Shape * shape
    Definition: b2Fixture.h:71
    -
    const b2Transform & GetTransform() const
    Definition: b2Body.h:474
    -
    virtual bool RayCast(b2RayCastOutput *output, const b2RayCastInput &input, const b2Transform &transform, int32 childIndex) const =0
    -
    virtual void ComputeMass(b2MassData *massData, float32 density) const =0
    -
    A 2D column vector.
    Definition: b2Math.h:53
    -
    Definition: b2Contact.h:77
    -
    void * GetUserData() const
    Definition: b2Fixture.h:263
    -
    void SetUserData(void *data)
    Set the user data. Use this to store your application specific data.
    Definition: b2Fixture.h:268
    -
    This holds contact filtering data.
    Definition: b2Fixture.h:32
    -
    Definition: b2ContactManager.h:30
    -
    bool TestPoint(const b2Vec2 &p) const
    Definition: b2Fixture.h:324
    -
    float32 density
    The density, usually in kg/m^2.
    Definition: b2Fixture.h:83
    -
    float32 friction
    The friction coefficient, usually in the range [0,1].
    Definition: b2Fixture.h:77
    -
    void Dump(int32 bodyIndex)
    Dump this fixture to the log file.
    Definition: b2Fixture.cpp:229
    -
    virtual bool TestPoint(const b2Transform &xf, const b2Vec2 &p) const =0
    -
    Definition: b2Fixture.h:107
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_friction_joint_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_friction_joint_8h_source.html deleted file mode 100644 index fe95210..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_friction_joint_8h_source.html +++ /dev/null @@ -1,231 +0,0 @@ - - - - - - -Box2D: b2FrictionJoint.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2FrictionJoint.h
    -
    -
    -
    1 /*
    -
    2 * Copyright (c) 2006-2007 Erin Catto http://www.box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_FRICTION_JOINT_H
    -
    20 #define B2_FRICTION_JOINT_H
    -
    21 
    -
    22 #include <Box2D/Dynamics/Joints/b2Joint.h>
    -
    23 
    - -
    26 {
    - -
    28  {
    -
    29  type = e_frictionJoint;
    - - -
    32  maxForce = 0.0f;
    -
    33  maxTorque = 0.0f;
    -
    34  }
    -
    35 
    -
    38  void Initialize(b2Body* bodyA, b2Body* bodyB, const b2Vec2& anchor);
    -
    39 
    - -
    42 
    - -
    45 
    -
    47  float32 maxForce;
    -
    48 
    -
    50  float32 maxTorque;
    -
    51 };
    -
    52 
    -
    55 class b2FrictionJoint : public b2Joint
    -
    56 {
    -
    57 public:
    -
    58  b2Vec2 GetAnchorA() const;
    -
    59  b2Vec2 GetAnchorB() const;
    -
    60 
    -
    61  b2Vec2 GetReactionForce(float32 inv_dt) const;
    -
    62  float32 GetReactionTorque(float32 inv_dt) const;
    -
    63 
    -
    65  const b2Vec2& GetLocalAnchorA() const { return m_localAnchorA; }
    -
    66 
    -
    68  const b2Vec2& GetLocalAnchorB() const { return m_localAnchorB; }
    -
    69 
    -
    71  void SetMaxForce(float32 force);
    -
    72 
    -
    74  float32 GetMaxForce() const;
    -
    75 
    -
    77  void SetMaxTorque(float32 torque);
    -
    78 
    -
    80  float32 GetMaxTorque() const;
    -
    81 
    -
    83  void Dump();
    -
    84 
    -
    85 protected:
    -
    86 
    -
    87  friend class b2Joint;
    -
    88 
    - -
    90 
    -
    91  void InitVelocityConstraints(const b2SolverData& data);
    -
    92  void SolveVelocityConstraints(const b2SolverData& data);
    -
    93  bool SolvePositionConstraints(const b2SolverData& data);
    -
    94 
    -
    95  b2Vec2 m_localAnchorA;
    -
    96  b2Vec2 m_localAnchorB;
    -
    97 
    -
    98  // Solver shared
    -
    99  b2Vec2 m_linearImpulse;
    -
    100  float32 m_angularImpulse;
    -
    101  float32 m_maxForce;
    -
    102  float32 m_maxTorque;
    -
    103 
    -
    104  // Solver temp
    -
    105  int32 m_indexA;
    -
    106  int32 m_indexB;
    -
    107  b2Vec2 m_rA;
    -
    108  b2Vec2 m_rB;
    -
    109  b2Vec2 m_localCenterA;
    -
    110  b2Vec2 m_localCenterB;
    -
    111  float32 m_invMassA;
    -
    112  float32 m_invMassB;
    -
    113  float32 m_invIA;
    -
    114  float32 m_invIB;
    -
    115  b2Mat22 m_linearMass;
    -
    116  float32 m_angularMass;
    -
    117 };
    -
    118 
    -
    119 #endif
    -
    float32 maxTorque
    The maximum friction torque in N-m.
    Definition: b2FrictionJoint.h:50
    -
    b2Body * bodyA
    The first attached body.
    Definition: b2Joint.h:92
    -
    const b2Vec2 & GetLocalAnchorB() const
    The local anchor point relative to bodyB&#39;s origin.
    Definition: b2FrictionJoint.h:68
    -
    b2Vec2 localAnchorB
    The local anchor point relative to bodyB&#39;s origin.
    Definition: b2FrictionJoint.h:44
    -
    b2Body * bodyB
    The second attached body.
    Definition: b2Joint.h:95
    -
    float32 maxForce
    The maximum friction force in N.
    Definition: b2FrictionJoint.h:47
    -
    void SetMaxTorque(float32 torque)
    Set the maximum friction torque in N*m.
    Definition: b2FrictionJoint.cpp:226
    -
    Definition: b2Joint.h:103
    -
    float32 GetMaxTorque() const
    Get the maximum friction torque in N*m.
    Definition: b2FrictionJoint.cpp:232
    -
    float32 GetReactionTorque(float32 inv_dt) const
    Get the reaction torque on bodyB in N*m.
    Definition: b2FrictionJoint.cpp:210
    -
    void SetZero()
    Set this vector to all zeros.
    Definition: b2Math.h:62
    -
    const b2Vec2 & GetLocalAnchorA() const
    The local anchor point relative to bodyA&#39;s origin.
    Definition: b2FrictionJoint.h:65
    -
    Definition: b2FrictionJoint.h:55
    -
    b2JointType type
    The joint type is set automatically for concrete joint types.
    Definition: b2Joint.h:86
    -
    Solver Data.
    Definition: b2TimeStep.h:63
    -
    float32 GetMaxForce() const
    Get the maximum friction force in N.
    Definition: b2FrictionJoint.cpp:221
    -
    b2Vec2 GetAnchorB() const
    Get the anchor point on bodyB in world coordinates.
    Definition: b2FrictionJoint.cpp:200
    -
    A 2-by-2 matrix. Stored in column-major order.
    Definition: b2Math.h:183
    -
    b2Vec2 localAnchorA
    The local anchor point relative to bodyA&#39;s origin.
    Definition: b2FrictionJoint.h:41
    -
    Joint definitions are used to construct joints.
    Definition: b2Joint.h:74
    -
    b2Vec2 GetAnchorA() const
    Get the anchor point on bodyA in world coordinates.
    Definition: b2FrictionJoint.cpp:195
    -
    A rigid body. These are created via b2World::CreateBody.
    Definition: b2Body.h:126
    -
    void Dump()
    Dump joint to dmLog.
    Definition: b2FrictionJoint.cpp:237
    -
    A 2D column vector.
    Definition: b2Math.h:53
    -
    Friction joint definition.
    Definition: b2FrictionJoint.h:25
    -
    b2Vec2 GetReactionForce(float32 inv_dt) const
    Get the reaction force on bodyB at the joint anchor in Newtons.
    Definition: b2FrictionJoint.cpp:205
    -
    void Initialize(b2Body *bodyA, b2Body *bodyB, const b2Vec2 &anchor)
    Definition: b2FrictionJoint.cpp:35
    -
    void SetMaxForce(float32 force)
    Set the maximum friction force in N.
    Definition: b2FrictionJoint.cpp:215
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_gear_joint_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_gear_joint_8h_source.html deleted file mode 100644 index d0315cd..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_gear_joint_8h_source.html +++ /dev/null @@ -1,225 +0,0 @@ - - - - - - -Box2D: b2GearJoint.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2GearJoint.h
    -
    -
    -
    1 /*
    -
    2 * Copyright (c) 2006-2011 Erin Catto http://www.box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_GEAR_JOINT_H
    -
    20 #define B2_GEAR_JOINT_H
    -
    21 
    -
    22 #include <Box2D/Dynamics/Joints/b2Joint.h>
    -
    23 
    -
    26 struct b2GearJointDef : public b2JointDef
    -
    27 {
    - -
    29  {
    -
    30  type = e_gearJoint;
    -
    31  joint1 = NULL;
    -
    32  joint2 = NULL;
    -
    33  ratio = 1.0f;
    -
    34  }
    -
    35 
    - -
    38 
    - -
    41 
    -
    44  float32 ratio;
    -
    45 };
    -
    46 
    -
    56 class b2GearJoint : public b2Joint
    -
    57 {
    -
    58 public:
    -
    59  b2Vec2 GetAnchorA() const;
    -
    60  b2Vec2 GetAnchorB() const;
    -
    61 
    -
    62  b2Vec2 GetReactionForce(float32 inv_dt) const;
    -
    63  float32 GetReactionTorque(float32 inv_dt) const;
    -
    64 
    -
    66  b2Joint* GetJoint1() { return m_joint1; }
    -
    67 
    -
    69  b2Joint* GetJoint2() { return m_joint2; }
    -
    70 
    -
    72  void SetRatio(float32 ratio);
    -
    73  float32 GetRatio() const;
    -
    74 
    -
    76  void Dump();
    -
    77 
    -
    78 protected:
    -
    79 
    -
    80  friend class b2Joint;
    -
    81  b2GearJoint(const b2GearJointDef* data);
    -
    82 
    -
    83  void InitVelocityConstraints(const b2SolverData& data);
    -
    84  void SolveVelocityConstraints(const b2SolverData& data);
    -
    85  bool SolvePositionConstraints(const b2SolverData& data);
    -
    86 
    -
    87  b2Joint* m_joint1;
    -
    88  b2Joint* m_joint2;
    -
    89 
    -
    90  b2JointType m_typeA;
    -
    91  b2JointType m_typeB;
    -
    92 
    -
    93  // Body A is connected to body C
    -
    94  // Body B is connected to body D
    -
    95  b2Body* m_bodyC;
    -
    96  b2Body* m_bodyD;
    -
    97 
    -
    98  // Solver shared
    -
    99  b2Vec2 m_localAnchorA;
    -
    100  b2Vec2 m_localAnchorB;
    -
    101  b2Vec2 m_localAnchorC;
    -
    102  b2Vec2 m_localAnchorD;
    -
    103 
    -
    104  b2Vec2 m_localAxisC;
    -
    105  b2Vec2 m_localAxisD;
    -
    106 
    -
    107  float32 m_referenceAngleA;
    -
    108  float32 m_referenceAngleB;
    -
    109 
    -
    110  float32 m_constant;
    -
    111  float32 m_ratio;
    -
    112 
    -
    113  float32 m_impulse;
    -
    114 
    -
    115  // Solver temp
    -
    116  int32 m_indexA, m_indexB, m_indexC, m_indexD;
    -
    117  b2Vec2 m_lcA, m_lcB, m_lcC, m_lcD;
    -
    118  float32 m_mA, m_mB, m_mC, m_mD;
    -
    119  float32 m_iA, m_iB, m_iC, m_iD;
    -
    120  b2Vec2 m_JvAC, m_JvBD;
    -
    121  float32 m_JwA, m_JwB, m_JwC, m_JwD;
    -
    122  float32 m_mass;
    -
    123 };
    -
    124 
    -
    125 #endif
    -
    void SetRatio(float32 ratio)
    Set/Get the gear ratio.
    Definition: b2GearJoint.cpp:392
    -
    b2Joint * joint1
    The first revolute/prismatic joint attached to the gear joint.
    Definition: b2GearJoint.h:37
    -
    b2Vec2 GetAnchorB() const
    Get the anchor point on bodyB in world coordinates.
    Definition: b2GearJoint.cpp:375
    -
    Definition: b2Joint.h:103
    -
    b2Vec2 GetAnchorA() const
    Get the anchor point on bodyA in world coordinates.
    Definition: b2GearJoint.cpp:370
    -
    b2Vec2 GetReactionForce(float32 inv_dt) const
    Get the reaction force on bodyB at the joint anchor in Newtons.
    Definition: b2GearJoint.cpp:380
    -
    Definition: b2GearJoint.h:56
    -
    b2Joint * joint2
    The second revolute/prismatic joint attached to the gear joint.
    Definition: b2GearJoint.h:40
    -
    float32 ratio
    Definition: b2GearJoint.h:44
    -
    b2Joint * GetJoint1()
    Get the first joint.
    Definition: b2GearJoint.h:66
    -
    b2JointType type
    The joint type is set automatically for concrete joint types.
    Definition: b2Joint.h:86
    -
    Solver Data.
    Definition: b2TimeStep.h:63
    -
    Joint definitions are used to construct joints.
    Definition: b2Joint.h:74
    -
    float32 GetReactionTorque(float32 inv_dt) const
    Get the reaction torque on bodyB in N*m.
    Definition: b2GearJoint.cpp:386
    -
    A rigid body. These are created via b2World::CreateBody.
    Definition: b2Body.h:126
    -
    void Dump()
    Dump joint to dmLog.
    Definition: b2GearJoint.cpp:403
    -
    A 2D column vector.
    Definition: b2Math.h:53
    -
    Definition: b2GearJoint.h:26
    -
    b2Joint * GetJoint2()
    Get the second joint.
    Definition: b2GearJoint.h:69
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_growable_stack_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_growable_stack_8h_source.html deleted file mode 100644 index 4996aa8..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_growable_stack_8h_source.html +++ /dev/null @@ -1,186 +0,0 @@ - - - - - - -Box2D: b2GrowableStack.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2GrowableStack.h
    -
    -
    -
    1 /*
    -
    2 * Copyright (c) 2010 Erin Catto http://www.box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_GROWABLE_STACK_H
    -
    20 #define B2_GROWABLE_STACK_H
    - -
    22 #include <memory.h>
    -
    23 
    -
    27 template <typename T, int32 N>
    - -
    29 {
    -
    30 public:
    - -
    32  {
    -
    33  m_stack = m_array;
    -
    34  m_count = 0;
    -
    35  m_capacity = N;
    -
    36  }
    -
    37 
    - -
    39  {
    -
    40  if (m_stack != m_array)
    -
    41  {
    -
    42  b2Free(m_stack);
    -
    43  m_stack = NULL;
    -
    44  }
    -
    45  }
    -
    46 
    -
    47  void Push(const T& element)
    -
    48  {
    -
    49  if (m_count == m_capacity)
    -
    50  {
    -
    51  T* old = m_stack;
    -
    52  m_capacity *= 2;
    -
    53  m_stack = (T*)b2Alloc(m_capacity * sizeof(T));
    -
    54  memcpy(m_stack, old, m_count * sizeof(T));
    -
    55  if (old != m_array)
    -
    56  {
    -
    57  b2Free(old);
    -
    58  }
    -
    59  }
    -
    60 
    -
    61  m_stack[m_count] = element;
    -
    62  ++m_count;
    -
    63  }
    -
    64 
    -
    65  T Pop()
    -
    66  {
    -
    67  b2Assert(m_count > 0);
    -
    68  --m_count;
    -
    69  return m_stack[m_count];
    -
    70  }
    -
    71 
    -
    72  int32 GetCount()
    -
    73  {
    -
    74  return m_count;
    -
    75  }
    -
    76 
    -
    77 private:
    -
    78  T* m_stack;
    -
    79  T m_array[N];
    -
    80  int32 m_count;
    -
    81  int32 m_capacity;
    -
    82 };
    -
    83 
    -
    84 
    -
    85 #endif
    -
    void b2Free(void *mem)
    If you implement b2Alloc, you should also implement this function.
    Definition: b2Settings.cpp:32
    -
    void * b2Alloc(int32 size)
    Implement this function to use your own memory allocator.
    Definition: b2Settings.cpp:27
    -
    Definition: b2GrowableStack.h:28
    - -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_island_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_island_8h_source.html deleted file mode 100644 index 722d5e9..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_island_8h_source.html +++ /dev/null @@ -1,204 +0,0 @@ - - - - - - -Box2D: b2Island.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2Island.h
    -
    -
    -
    1 /*
    -
    2 * Copyright (c) 2006-2009 Erin Catto http://www.box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_ISLAND_H
    -
    20 #define B2_ISLAND_H
    -
    21 
    -
    22 #include <Box2D/Common/b2Math.h>
    -
    23 #include <Box2D/Dynamics/b2Body.h>
    -
    24 #include <Box2D/Dynamics/b2TimeStep.h>
    -
    25 
    -
    26 class b2Contact;
    -
    27 class b2Joint;
    -
    28 class b2StackAllocator;
    -
    29 class b2ContactListener;
    - -
    31 struct b2Profile;
    -
    32 
    -
    34 class b2Island
    -
    35 {
    -
    36 public:
    -
    37  b2Island(int32 bodyCapacity, int32 contactCapacity, int32 jointCapacity,
    -
    38  b2StackAllocator* allocator, b2ContactListener* listener);
    -
    39  ~b2Island();
    -
    40 
    -
    41  void Clear()
    -
    42  {
    -
    43  m_bodyCount = 0;
    -
    44  m_contactCount = 0;
    -
    45  m_jointCount = 0;
    -
    46  }
    -
    47 
    -
    48  void Solve(b2Profile* profile, const b2TimeStep& step, const b2Vec2& gravity, bool allowSleep);
    -
    49 
    -
    50  void SolveTOI(const b2TimeStep& subStep, int32 toiIndexA, int32 toiIndexB);
    -
    51 
    -
    52  void Add(b2Body* body)
    -
    53  {
    -
    54  b2Assert(m_bodyCount < m_bodyCapacity);
    -
    55  body->m_islandIndex = m_bodyCount;
    -
    56  m_bodies[m_bodyCount] = body;
    -
    57  ++m_bodyCount;
    -
    58  }
    -
    59 
    -
    60  void Add(b2Contact* contact)
    -
    61  {
    -
    62  b2Assert(m_contactCount < m_contactCapacity);
    -
    63  m_contacts[m_contactCount++] = contact;
    -
    64  }
    -
    65 
    -
    66  void Add(b2Joint* joint)
    -
    67  {
    -
    68  b2Assert(m_jointCount < m_jointCapacity);
    -
    69  m_joints[m_jointCount++] = joint;
    -
    70  }
    -
    71 
    -
    72  void Report(const b2ContactVelocityConstraint* constraints);
    -
    73 
    -
    74  b2StackAllocator* m_allocator;
    -
    75  b2ContactListener* m_listener;
    -
    76 
    -
    77  b2Body** m_bodies;
    -
    78  b2Contact** m_contacts;
    -
    79  b2Joint** m_joints;
    -
    80 
    -
    81  b2Position* m_positions;
    -
    82  b2Velocity* m_velocities;
    -
    83 
    -
    84  int32 m_bodyCount;
    -
    85  int32 m_jointCount;
    -
    86  int32 m_contactCount;
    -
    87 
    -
    88  int32 m_bodyCapacity;
    -
    89  int32 m_contactCapacity;
    -
    90  int32 m_jointCapacity;
    -
    91 };
    -
    92 
    -
    93 #endif
    -
    Profiling data. Times are in milliseconds.
    Definition: b2TimeStep.h:25
    -
    Definition: b2StackAllocator.h:37
    -
    Definition: b2WorldCallbacks.h:81
    -
    Definition: b2Joint.h:103
    -
    This is an internal structure.
    Definition: b2TimeStep.h:49
    -
    This is an internal structure.
    Definition: b2TimeStep.h:38
    -
    A rigid body. These are created via b2World::CreateBody.
    Definition: b2Body.h:126
    -
    This is an internal class.
    Definition: b2Island.h:34
    -
    Definition: b2ContactSolver.h:42
    -
    This is an internal structure.
    Definition: b2TimeStep.h:56
    -
    A 2D column vector.
    Definition: b2Math.h:53
    -
    Definition: b2Contact.h:77
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_joint_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_joint_8h_source.html deleted file mode 100644 index ed062e6..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_joint_8h_source.html +++ /dev/null @@ -1,332 +0,0 @@ - - - - - - -Box2D: b2Joint.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2Joint.h
    -
    -
    -
    1 /*
    -
    2 * Copyright (c) 2006-2007 Erin Catto http://www.box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_JOINT_H
    -
    20 #define B2_JOINT_H
    -
    21 
    -
    22 #include <Box2D/Common/b2Math.h>
    -
    23 
    -
    24 class b2Body;
    -
    25 class b2Joint;
    -
    26 struct b2SolverData;
    -
    27 class b2BlockAllocator;
    -
    28 
    -
    29 enum b2JointType
    -
    30 {
    -
    31  e_unknownJoint,
    -
    32  e_revoluteJoint,
    -
    33  e_prismaticJoint,
    -
    34  e_distanceJoint,
    -
    35  e_pulleyJoint,
    -
    36  e_mouseJoint,
    -
    37  e_gearJoint,
    -
    38  e_wheelJoint,
    -
    39  e_weldJoint,
    -
    40  e_frictionJoint,
    -
    41  e_ropeJoint,
    -
    42  e_motorJoint
    -
    43 };
    -
    44 
    -
    45 enum b2LimitState
    -
    46 {
    -
    47  e_inactiveLimit,
    -
    48  e_atLowerLimit,
    -
    49  e_atUpperLimit,
    -
    50  e_equalLimits
    -
    51 };
    -
    52 
    -
    53 struct b2Jacobian
    -
    54 {
    -
    55  b2Vec2 linear;
    -
    56  float32 angularA;
    -
    57  float32 angularB;
    -
    58 };
    -
    59 
    - -
    66 {
    - - - - -
    71 };
    -
    72 
    -
    74 struct b2JointDef
    -
    75 {
    -
    76  b2JointDef()
    -
    77  {
    -
    78  type = e_unknownJoint;
    -
    79  userData = NULL;
    -
    80  bodyA = NULL;
    -
    81  bodyB = NULL;
    -
    82  collideConnected = false;
    -
    83  }
    -
    84 
    -
    86  b2JointType type;
    -
    87 
    -
    89  void* userData;
    -
    90 
    - -
    93 
    - -
    96 
    - -
    99 };
    -
    100 
    -
    103 class b2Joint
    -
    104 {
    -
    105 public:
    -
    106 
    -
    108  b2JointType GetType() const;
    -
    109 
    -
    111  b2Body* GetBodyA();
    -
    112 
    -
    114  b2Body* GetBodyB();
    -
    115 
    -
    117  virtual b2Vec2 GetAnchorA() const = 0;
    -
    118 
    -
    120  virtual b2Vec2 GetAnchorB() const = 0;
    -
    121 
    -
    123  virtual b2Vec2 GetReactionForce(float32 inv_dt) const = 0;
    -
    124 
    -
    126  virtual float32 GetReactionTorque(float32 inv_dt) const = 0;
    -
    127 
    -
    129  b2Joint* GetNext();
    -
    130  const b2Joint* GetNext() const;
    -
    131 
    -
    133  void* GetUserData() const;
    -
    134 
    -
    136  void SetUserData(void* data);
    -
    137 
    -
    139  bool IsActive() const;
    -
    140 
    -
    144  bool GetCollideConnected() const;
    -
    145 
    -
    147  virtual void Dump() { b2Log("// Dump is not supported for this joint type.\n"); }
    -
    148 
    -
    150  virtual void ShiftOrigin(const b2Vec2& newOrigin) { B2_NOT_USED(newOrigin); }
    -
    151 
    -
    152 protected:
    -
    153  friend class b2World;
    -
    154  friend class b2Body;
    -
    155  friend class b2Island;
    -
    156  friend class b2GearJoint;
    -
    157 
    -
    158  static b2Joint* Create(const b2JointDef* def, b2BlockAllocator* allocator);
    -
    159  static void Destroy(b2Joint* joint, b2BlockAllocator* allocator);
    -
    160 
    -
    161  b2Joint(const b2JointDef* def);
    -
    162  virtual ~b2Joint() {}
    -
    163 
    -
    164  virtual void InitVelocityConstraints(const b2SolverData& data) = 0;
    -
    165  virtual void SolveVelocityConstraints(const b2SolverData& data) = 0;
    -
    166 
    -
    167  // This returns true if the position errors are within tolerance.
    -
    168  virtual bool SolvePositionConstraints(const b2SolverData& data) = 0;
    -
    169 
    -
    170  b2JointType m_type;
    -
    171  b2Joint* m_prev;
    -
    172  b2Joint* m_next;
    -
    173  b2JointEdge m_edgeA;
    -
    174  b2JointEdge m_edgeB;
    -
    175  b2Body* m_bodyA;
    -
    176  b2Body* m_bodyB;
    -
    177 
    -
    178  int32 m_index;
    -
    179 
    -
    180  bool m_islandFlag;
    -
    181  bool m_collideConnected;
    -
    182 
    -
    183  void* m_userData;
    -
    184 };
    -
    185 
    -
    186 inline b2JointType b2Joint::GetType() const
    -
    187 {
    -
    188  return m_type;
    -
    189 }
    -
    190 
    - -
    192 {
    -
    193  return m_bodyA;
    -
    194 }
    -
    195 
    - -
    197 {
    -
    198  return m_bodyB;
    -
    199 }
    -
    200 
    - -
    202 {
    -
    203  return m_next;
    -
    204 }
    -
    205 
    -
    206 inline const b2Joint* b2Joint::GetNext() const
    -
    207 {
    -
    208  return m_next;
    -
    209 }
    -
    210 
    -
    211 inline void* b2Joint::GetUserData() const
    -
    212 {
    -
    213  return m_userData;
    -
    214 }
    -
    215 
    -
    216 inline void b2Joint::SetUserData(void* data)
    -
    217 {
    -
    218  m_userData = data;
    -
    219 }
    -
    220 
    -
    221 inline bool b2Joint::GetCollideConnected() const
    -
    222 {
    -
    223  return m_collideConnected;
    -
    224 }
    -
    225 
    -
    226 #endif
    -
    b2Joint * joint
    the joint
    Definition: b2Joint.h:68
    -
    b2Body * bodyA
    The first attached body.
    Definition: b2Joint.h:92
    -
    void SetUserData(void *data)
    Set the user data pointer.
    Definition: b2Joint.h:216
    -
    void b2Log(const char *string,...)
    Logging function.
    Definition: b2Settings.cpp:38
    -
    b2Body * other
    provides quick access to the other body attached.
    Definition: b2Joint.h:67
    -
    virtual b2Vec2 GetReactionForce(float32 inv_dt) const =0
    Get the reaction force on bodyB at the joint anchor in Newtons.
    -
    b2Body * GetBodyA()
    Get the first body attached to this joint.
    Definition: b2Joint.h:191
    -
    b2Body * bodyB
    The second attached body.
    Definition: b2Joint.h:95
    -
    virtual float32 GetReactionTorque(float32 inv_dt) const =0
    Get the reaction torque on bodyB in N*m.
    -
    Definition: b2World.h:41
    -
    void * userData
    Use this to attach application specific data to your joints.
    Definition: b2Joint.h:89
    -
    virtual void ShiftOrigin(const b2Vec2 &newOrigin)
    Shift the origin for any points stored in world coordinates.
    Definition: b2Joint.h:150
    -
    void * GetUserData() const
    Get the user data pointer.
    Definition: b2Joint.h:211
    -
    Definition: b2BlockAllocator.h:35
    -
    Definition: b2Joint.h:103
    -
    Definition: b2Joint.h:53
    -
    virtual b2Vec2 GetAnchorA() const =0
    Get the anchor point on bodyA in world coordinates.
    -
    virtual b2Vec2 GetAnchorB() const =0
    Get the anchor point on bodyB in world coordinates.
    -
    bool IsActive() const
    Short-cut function to determine if either body is inactive.
    Definition: b2Joint.cpp:208
    -
    bool GetCollideConnected() const
    Definition: b2Joint.h:221
    -
    Definition: b2GearJoint.h:56
    -
    b2JointType GetType() const
    Get the type of the concrete joint.
    Definition: b2Joint.h:186
    -
    b2JointType type
    The joint type is set automatically for concrete joint types.
    Definition: b2Joint.h:86
    -
    bool collideConnected
    Set this flag to true if the attached bodies should collide.
    Definition: b2Joint.h:98
    -
    Solver Data.
    Definition: b2TimeStep.h:63
    -
    Joint definitions are used to construct joints.
    Definition: b2Joint.h:74
    -
    Definition: b2Joint.h:65
    -
    A rigid body. These are created via b2World::CreateBody.
    Definition: b2Body.h:126
    -
    This is an internal class.
    Definition: b2Island.h:34
    -
    b2Body * GetBodyB()
    Get the second body attached to this joint.
    Definition: b2Joint.h:196
    -
    virtual void Dump()
    Dump this joint to the log file.
    Definition: b2Joint.h:147
    -
    b2JointEdge * prev
    the previous joint edge in the body&#39;s joint list
    Definition: b2Joint.h:69
    -
    A 2D column vector.
    Definition: b2Math.h:53
    -
    b2JointEdge * next
    the next joint edge in the body&#39;s joint list
    Definition: b2Joint.h:70
    -
    b2Joint * GetNext()
    Get the next joint the world joint list.
    Definition: b2Joint.h:201
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_math_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_math_8h_source.html deleted file mode 100644 index c0bea06..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_math_8h_source.html +++ /dev/null @@ -1,776 +0,0 @@ - - - - - - -Box2D: b2Math.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2Math.h
    -
    -
    -
    1 /*
    -
    2 * Copyright (c) 2006-2009 Erin Catto http://www.box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_MATH_H
    -
    20 #define B2_MATH_H
    -
    21 
    - -
    23 #include <math.h>
    -
    24 
    -
    26 inline bool b2IsValid(float32 x)
    -
    27 {
    -
    28  int32 ix = *reinterpret_cast<int32*>(&x);
    -
    29  return (ix & 0x7f800000) != 0x7f800000;
    -
    30 }
    -
    31 
    -
    33 inline float32 b2InvSqrt(float32 x)
    -
    34 {
    -
    35  union
    -
    36  {
    -
    37  float32 x;
    -
    38  int32 i;
    -
    39  } convert;
    -
    40 
    -
    41  convert.x = x;
    -
    42  float32 xhalf = 0.5f * x;
    -
    43  convert.i = 0x5f3759df - (convert.i >> 1);
    -
    44  x = convert.x;
    -
    45  x = x * (1.5f - xhalf * x * x);
    -
    46  return x;
    -
    47 }
    -
    48 
    -
    49 #define b2Sqrt(x) sqrtf(x)
    -
    50 #define b2Atan2(y, x) atan2f(y, x)
    -
    51 
    -
    53 struct b2Vec2
    -
    54 {
    -
    56  b2Vec2() {}
    -
    57 
    -
    59  b2Vec2(float32 x, float32 y) : x(x), y(y) {}
    -
    60 
    -
    62  void SetZero() { x = 0.0f; y = 0.0f; }
    -
    63 
    -
    65  void Set(float32 x_, float32 y_) { x = x_; y = y_; }
    -
    66 
    -
    68  b2Vec2 operator -() const { b2Vec2 v; v.Set(-x, -y); return v; }
    -
    69 
    -
    71  float32 operator () (int32 i) const
    -
    72  {
    -
    73  return (&x)[i];
    -
    74  }
    -
    75 
    -
    77  float32& operator () (int32 i)
    -
    78  {
    -
    79  return (&x)[i];
    -
    80  }
    -
    81 
    -
    83  void operator += (const b2Vec2& v)
    -
    84  {
    -
    85  x += v.x; y += v.y;
    -
    86  }
    -
    87 
    -
    89  void operator -= (const b2Vec2& v)
    -
    90  {
    -
    91  x -= v.x; y -= v.y;
    -
    92  }
    -
    93 
    -
    95  void operator *= (float32 a)
    -
    96  {
    -
    97  x *= a; y *= a;
    -
    98  }
    -
    99 
    -
    101  float32 Length() const
    -
    102  {
    -
    103  return b2Sqrt(x * x + y * y);
    -
    104  }
    -
    105 
    -
    108  float32 LengthSquared() const
    -
    109  {
    -
    110  return x * x + y * y;
    -
    111  }
    -
    112 
    -
    114  float32 Normalize()
    -
    115  {
    -
    116  float32 length = Length();
    -
    117  if (length < b2_epsilon)
    -
    118  {
    -
    119  return 0.0f;
    -
    120  }
    -
    121  float32 invLength = 1.0f / length;
    -
    122  x *= invLength;
    -
    123  y *= invLength;
    -
    124 
    -
    125  return length;
    -
    126  }
    -
    127 
    -
    129  bool IsValid() const
    -
    130  {
    -
    131  return b2IsValid(x) && b2IsValid(y);
    -
    132  }
    -
    133 
    -
    135  b2Vec2 Skew() const
    -
    136  {
    -
    137  return b2Vec2(-y, x);
    -
    138  }
    -
    139 
    -
    140  float32 x, y;
    -
    141 };
    -
    142 
    -
    144 struct b2Vec3
    -
    145 {
    -
    147  b2Vec3() {}
    -
    148 
    -
    150  b2Vec3(float32 x, float32 y, float32 z) : x(x), y(y), z(z) {}
    -
    151 
    -
    153  void SetZero() { x = 0.0f; y = 0.0f; z = 0.0f; }
    -
    154 
    -
    156  void Set(float32 x_, float32 y_, float32 z_) { x = x_; y = y_; z = z_; }
    -
    157 
    -
    159  b2Vec3 operator -() const { b2Vec3 v; v.Set(-x, -y, -z); return v; }
    -
    160 
    -
    162  void operator += (const b2Vec3& v)
    -
    163  {
    -
    164  x += v.x; y += v.y; z += v.z;
    -
    165  }
    -
    166 
    -
    168  void operator -= (const b2Vec3& v)
    -
    169  {
    -
    170  x -= v.x; y -= v.y; z -= v.z;
    -
    171  }
    -
    172 
    -
    174  void operator *= (float32 s)
    -
    175  {
    -
    176  x *= s; y *= s; z *= s;
    -
    177  }
    -
    178 
    -
    179  float32 x, y, z;
    -
    180 };
    -
    181 
    -
    183 struct b2Mat22
    -
    184 {
    -
    186  b2Mat22() {}
    -
    187 
    -
    189  b2Mat22(const b2Vec2& c1, const b2Vec2& c2)
    -
    190  {
    -
    191  ex = c1;
    -
    192  ey = c2;
    -
    193  }
    -
    194 
    -
    196  b2Mat22(float32 a11, float32 a12, float32 a21, float32 a22)
    -
    197  {
    -
    198  ex.x = a11; ex.y = a21;
    -
    199  ey.x = a12; ey.y = a22;
    -
    200  }
    -
    201 
    -
    203  void Set(const b2Vec2& c1, const b2Vec2& c2)
    -
    204  {
    -
    205  ex = c1;
    -
    206  ey = c2;
    -
    207  }
    -
    208 
    -
    210  void SetIdentity()
    -
    211  {
    -
    212  ex.x = 1.0f; ey.x = 0.0f;
    -
    213  ex.y = 0.0f; ey.y = 1.0f;
    -
    214  }
    -
    215 
    -
    217  void SetZero()
    -
    218  {
    -
    219  ex.x = 0.0f; ey.x = 0.0f;
    -
    220  ex.y = 0.0f; ey.y = 0.0f;
    -
    221  }
    -
    222 
    -
    223  b2Mat22 GetInverse() const
    -
    224  {
    -
    225  float32 a = ex.x, b = ey.x, c = ex.y, d = ey.y;
    -
    226  b2Mat22 B;
    -
    227  float32 det = a * d - b * c;
    -
    228  if (det != 0.0f)
    -
    229  {
    -
    230  det = 1.0f / det;
    -
    231  }
    -
    232  B.ex.x = det * d; B.ey.x = -det * b;
    -
    233  B.ex.y = -det * c; B.ey.y = det * a;
    -
    234  return B;
    -
    235  }
    -
    236 
    -
    239  b2Vec2 Solve(const b2Vec2& b) const
    -
    240  {
    -
    241  float32 a11 = ex.x, a12 = ey.x, a21 = ex.y, a22 = ey.y;
    -
    242  float32 det = a11 * a22 - a12 * a21;
    -
    243  if (det != 0.0f)
    -
    244  {
    -
    245  det = 1.0f / det;
    -
    246  }
    -
    247  b2Vec2 x;
    -
    248  x.x = det * (a22 * b.x - a12 * b.y);
    -
    249  x.y = det * (a11 * b.y - a21 * b.x);
    -
    250  return x;
    -
    251  }
    -
    252 
    -
    253  b2Vec2 ex, ey;
    -
    254 };
    -
    255 
    -
    257 struct b2Mat33
    -
    258 {
    -
    260  b2Mat33() {}
    -
    261 
    -
    263  b2Mat33(const b2Vec3& c1, const b2Vec3& c2, const b2Vec3& c3)
    -
    264  {
    -
    265  ex = c1;
    -
    266  ey = c2;
    -
    267  ez = c3;
    -
    268  }
    -
    269 
    -
    271  void SetZero()
    -
    272  {
    -
    273  ex.SetZero();
    -
    274  ey.SetZero();
    -
    275  ez.SetZero();
    -
    276  }
    -
    277 
    -
    280  b2Vec3 Solve33(const b2Vec3& b) const;
    -
    281 
    -
    285  b2Vec2 Solve22(const b2Vec2& b) const;
    -
    286 
    -
    289  void GetInverse22(b2Mat33* M) const;
    -
    290 
    -
    293  void GetSymInverse33(b2Mat33* M) const;
    -
    294 
    -
    295  b2Vec3 ex, ey, ez;
    -
    296 };
    -
    297 
    -
    299 struct b2Rot
    -
    300 {
    -
    301  b2Rot() {}
    -
    302 
    -
    304  explicit b2Rot(float32 angle)
    -
    305  {
    -
    307  s = sinf(angle);
    -
    308  c = cosf(angle);
    -
    309  }
    -
    310 
    -
    312  void Set(float32 angle)
    -
    313  {
    -
    315  s = sinf(angle);
    -
    316  c = cosf(angle);
    -
    317  }
    -
    318 
    -
    320  void SetIdentity()
    -
    321  {
    -
    322  s = 0.0f;
    -
    323  c = 1.0f;
    -
    324  }
    -
    325 
    -
    327  float32 GetAngle() const
    -
    328  {
    -
    329  return b2Atan2(s, c);
    -
    330  }
    -
    331 
    -
    333  b2Vec2 GetXAxis() const
    -
    334  {
    -
    335  return b2Vec2(c, s);
    -
    336  }
    -
    337 
    -
    339  b2Vec2 GetYAxis() const
    -
    340  {
    -
    341  return b2Vec2(-s, c);
    -
    342  }
    -
    343 
    -
    345  float32 s, c;
    -
    346 };
    -
    347 
    - -
    351 {
    - -
    354 
    -
    356  b2Transform(const b2Vec2& position, const b2Rot& rotation) : p(position), q(rotation) {}
    -
    357 
    -
    359  void SetIdentity()
    -
    360  {
    -
    361  p.SetZero();
    -
    362  q.SetIdentity();
    -
    363  }
    -
    364 
    -
    366  void Set(const b2Vec2& position, float32 angle)
    -
    367  {
    -
    368  p = position;
    -
    369  q.Set(angle);
    -
    370  }
    -
    371 
    -
    372  b2Vec2 p;
    -
    373  b2Rot q;
    -
    374 };
    -
    375 
    -
    380 struct b2Sweep
    -
    381 {
    -
    384  void GetTransform(b2Transform* xfb, float32 beta) const;
    -
    385 
    -
    388  void Advance(float32 alpha);
    -
    389 
    -
    391  void Normalize();
    -
    392 
    - -
    394  b2Vec2 c0, c;
    -
    395  float32 a0, a;
    -
    396 
    -
    399  float32 alpha0;
    -
    400 };
    -
    401 
    -
    403 extern const b2Vec2 b2Vec2_zero;
    -
    404 
    -
    406 inline float32 b2Dot(const b2Vec2& a, const b2Vec2& b)
    -
    407 {
    -
    408  return a.x * b.x + a.y * b.y;
    -
    409 }
    -
    410 
    -
    412 inline float32 b2Cross(const b2Vec2& a, const b2Vec2& b)
    -
    413 {
    -
    414  return a.x * b.y - a.y * b.x;
    -
    415 }
    -
    416 
    -
    419 inline b2Vec2 b2Cross(const b2Vec2& a, float32 s)
    -
    420 {
    -
    421  return b2Vec2(s * a.y, -s * a.x);
    -
    422 }
    -
    423 
    -
    426 inline b2Vec2 b2Cross(float32 s, const b2Vec2& a)
    -
    427 {
    -
    428  return b2Vec2(-s * a.y, s * a.x);
    -
    429 }
    -
    430 
    -
    433 inline b2Vec2 b2Mul(const b2Mat22& A, const b2Vec2& v)
    -
    434 {
    -
    435  return b2Vec2(A.ex.x * v.x + A.ey.x * v.y, A.ex.y * v.x + A.ey.y * v.y);
    -
    436 }
    -
    437 
    -
    440 inline b2Vec2 b2MulT(const b2Mat22& A, const b2Vec2& v)
    -
    441 {
    -
    442  return b2Vec2(b2Dot(v, A.ex), b2Dot(v, A.ey));
    -
    443 }
    -
    444 
    -
    446 inline b2Vec2 operator + (const b2Vec2& a, const b2Vec2& b)
    -
    447 {
    -
    448  return b2Vec2(a.x + b.x, a.y + b.y);
    -
    449 }
    -
    450 
    -
    452 inline b2Vec2 operator - (const b2Vec2& a, const b2Vec2& b)
    -
    453 {
    -
    454  return b2Vec2(a.x - b.x, a.y - b.y);
    -
    455 }
    -
    456 
    -
    457 inline b2Vec2 operator * (float32 s, const b2Vec2& a)
    -
    458 {
    -
    459  return b2Vec2(s * a.x, s * a.y);
    -
    460 }
    -
    461 
    -
    462 inline bool operator == (const b2Vec2& a, const b2Vec2& b)
    -
    463 {
    -
    464  return a.x == b.x && a.y == b.y;
    -
    465 }
    -
    466 
    -
    467 inline float32 b2Distance(const b2Vec2& a, const b2Vec2& b)
    -
    468 {
    -
    469  b2Vec2 c = a - b;
    -
    470  return c.Length();
    -
    471 }
    -
    472 
    -
    473 inline float32 b2DistanceSquared(const b2Vec2& a, const b2Vec2& b)
    -
    474 {
    -
    475  b2Vec2 c = a - b;
    -
    476  return b2Dot(c, c);
    -
    477 }
    -
    478 
    -
    479 inline b2Vec3 operator * (float32 s, const b2Vec3& a)
    -
    480 {
    -
    481  return b2Vec3(s * a.x, s * a.y, s * a.z);
    -
    482 }
    -
    483 
    -
    485 inline b2Vec3 operator + (const b2Vec3& a, const b2Vec3& b)
    -
    486 {
    -
    487  return b2Vec3(a.x + b.x, a.y + b.y, a.z + b.z);
    -
    488 }
    -
    489 
    -
    491 inline b2Vec3 operator - (const b2Vec3& a, const b2Vec3& b)
    -
    492 {
    -
    493  return b2Vec3(a.x - b.x, a.y - b.y, a.z - b.z);
    -
    494 }
    -
    495 
    -
    497 inline float32 b2Dot(const b2Vec3& a, const b2Vec3& b)
    -
    498 {
    -
    499  return a.x * b.x + a.y * b.y + a.z * b.z;
    -
    500 }
    -
    501 
    -
    503 inline b2Vec3 b2Cross(const b2Vec3& a, const b2Vec3& b)
    -
    504 {
    -
    505  return b2Vec3(a.y * b.z - a.z * b.y, a.z * b.x - a.x * b.z, a.x * b.y - a.y * b.x);
    -
    506 }
    -
    507 
    -
    508 inline b2Mat22 operator + (const b2Mat22& A, const b2Mat22& B)
    -
    509 {
    -
    510  return b2Mat22(A.ex + B.ex, A.ey + B.ey);
    -
    511 }
    -
    512 
    -
    513 // A * B
    -
    514 inline b2Mat22 b2Mul(const b2Mat22& A, const b2Mat22& B)
    -
    515 {
    -
    516  return b2Mat22(b2Mul(A, B.ex), b2Mul(A, B.ey));
    -
    517 }
    -
    518 
    -
    519 // A^T * B
    -
    520 inline b2Mat22 b2MulT(const b2Mat22& A, const b2Mat22& B)
    -
    521 {
    -
    522  b2Vec2 c1(b2Dot(A.ex, B.ex), b2Dot(A.ey, B.ex));
    -
    523  b2Vec2 c2(b2Dot(A.ex, B.ey), b2Dot(A.ey, B.ey));
    -
    524  return b2Mat22(c1, c2);
    -
    525 }
    -
    526 
    -
    528 inline b2Vec3 b2Mul(const b2Mat33& A, const b2Vec3& v)
    -
    529 {
    -
    530  return v.x * A.ex + v.y * A.ey + v.z * A.ez;
    -
    531 }
    -
    532 
    -
    534 inline b2Vec2 b2Mul22(const b2Mat33& A, const b2Vec2& v)
    -
    535 {
    -
    536  return b2Vec2(A.ex.x * v.x + A.ey.x * v.y, A.ex.y * v.x + A.ey.y * v.y);
    -
    537 }
    -
    538 
    -
    540 inline b2Rot b2Mul(const b2Rot& q, const b2Rot& r)
    -
    541 {
    -
    542  // [qc -qs] * [rc -rs] = [qc*rc-qs*rs -qc*rs-qs*rc]
    -
    543  // [qs qc] [rs rc] [qs*rc+qc*rs -qs*rs+qc*rc]
    -
    544  // s = qs * rc + qc * rs
    -
    545  // c = qc * rc - qs * rs
    -
    546  b2Rot qr;
    -
    547  qr.s = q.s * r.c + q.c * r.s;
    -
    548  qr.c = q.c * r.c - q.s * r.s;
    -
    549  return qr;
    -
    550 }
    -
    551 
    -
    553 inline b2Rot b2MulT(const b2Rot& q, const b2Rot& r)
    -
    554 {
    -
    555  // [ qc qs] * [rc -rs] = [qc*rc+qs*rs -qc*rs+qs*rc]
    -
    556  // [-qs qc] [rs rc] [-qs*rc+qc*rs qs*rs+qc*rc]
    -
    557  // s = qc * rs - qs * rc
    -
    558  // c = qc * rc + qs * rs
    -
    559  b2Rot qr;
    -
    560  qr.s = q.c * r.s - q.s * r.c;
    -
    561  qr.c = q.c * r.c + q.s * r.s;
    -
    562  return qr;
    -
    563 }
    -
    564 
    -
    566 inline b2Vec2 b2Mul(const b2Rot& q, const b2Vec2& v)
    -
    567 {
    -
    568  return b2Vec2(q.c * v.x - q.s * v.y, q.s * v.x + q.c * v.y);
    -
    569 }
    -
    570 
    -
    572 inline b2Vec2 b2MulT(const b2Rot& q, const b2Vec2& v)
    -
    573 {
    -
    574  return b2Vec2(q.c * v.x + q.s * v.y, -q.s * v.x + q.c * v.y);
    -
    575 }
    -
    576 
    -
    577 inline b2Vec2 b2Mul(const b2Transform& T, const b2Vec2& v)
    -
    578 {
    -
    579  float32 x = (T.q.c * v.x - T.q.s * v.y) + T.p.x;
    -
    580  float32 y = (T.q.s * v.x + T.q.c * v.y) + T.p.y;
    -
    581 
    -
    582  return b2Vec2(x, y);
    -
    583 }
    -
    584 
    -
    585 inline b2Vec2 b2MulT(const b2Transform& T, const b2Vec2& v)
    -
    586 {
    -
    587  float32 px = v.x - T.p.x;
    -
    588  float32 py = v.y - T.p.y;
    -
    589  float32 x = (T.q.c * px + T.q.s * py);
    -
    590  float32 y = (-T.q.s * px + T.q.c * py);
    -
    591 
    -
    592  return b2Vec2(x, y);
    -
    593 }
    -
    594 
    -
    595 // v2 = A.q.Rot(B.q.Rot(v1) + B.p) + A.p
    -
    596 // = (A.q * B.q).Rot(v1) + A.q.Rot(B.p) + A.p
    -
    597 inline b2Transform b2Mul(const b2Transform& A, const b2Transform& B)
    -
    598 {
    -
    599  b2Transform C;
    -
    600  C.q = b2Mul(A.q, B.q);
    -
    601  C.p = b2Mul(A.q, B.p) + A.p;
    -
    602  return C;
    -
    603 }
    -
    604 
    -
    605 // v2 = A.q' * (B.q * v1 + B.p - A.p)
    -
    606 // = A.q' * B.q * v1 + A.q' * (B.p - A.p)
    -
    607 inline b2Transform b2MulT(const b2Transform& A, const b2Transform& B)
    -
    608 {
    -
    609  b2Transform C;
    -
    610  C.q = b2MulT(A.q, B.q);
    -
    611  C.p = b2MulT(A.q, B.p - A.p);
    -
    612  return C;
    -
    613 }
    -
    614 
    -
    615 template <typename T>
    -
    616 inline T b2Abs(T a)
    -
    617 {
    -
    618  return a > T(0) ? a : -a;
    -
    619 }
    -
    620 
    -
    621 inline b2Vec2 b2Abs(const b2Vec2& a)
    -
    622 {
    -
    623  return b2Vec2(b2Abs(a.x), b2Abs(a.y));
    -
    624 }
    -
    625 
    -
    626 inline b2Mat22 b2Abs(const b2Mat22& A)
    -
    627 {
    -
    628  return b2Mat22(b2Abs(A.ex), b2Abs(A.ey));
    -
    629 }
    -
    630 
    -
    631 template <typename T>
    -
    632 inline T b2Min(T a, T b)
    -
    633 {
    -
    634  return a < b ? a : b;
    -
    635 }
    -
    636 
    -
    637 inline b2Vec2 b2Min(const b2Vec2& a, const b2Vec2& b)
    -
    638 {
    -
    639  return b2Vec2(b2Min(a.x, b.x), b2Min(a.y, b.y));
    -
    640 }
    -
    641 
    -
    642 template <typename T>
    -
    643 inline T b2Max(T a, T b)
    -
    644 {
    -
    645  return a > b ? a : b;
    -
    646 }
    -
    647 
    -
    648 inline b2Vec2 b2Max(const b2Vec2& a, const b2Vec2& b)
    -
    649 {
    -
    650  return b2Vec2(b2Max(a.x, b.x), b2Max(a.y, b.y));
    -
    651 }
    -
    652 
    -
    653 template <typename T>
    -
    654 inline T b2Clamp(T a, T low, T high)
    -
    655 {
    -
    656  return b2Max(low, b2Min(a, high));
    -
    657 }
    -
    658 
    -
    659 inline b2Vec2 b2Clamp(const b2Vec2& a, const b2Vec2& low, const b2Vec2& high)
    -
    660 {
    -
    661  return b2Max(low, b2Min(a, high));
    -
    662 }
    -
    663 
    -
    664 template<typename T> inline void b2Swap(T& a, T& b)
    -
    665 {
    -
    666  T tmp = a;
    -
    667  a = b;
    -
    668  b = tmp;
    -
    669 }
    -
    670 
    -
    676 inline uint32 b2NextPowerOfTwo(uint32 x)
    -
    677 {
    -
    678  x |= (x >> 1);
    -
    679  x |= (x >> 2);
    -
    680  x |= (x >> 4);
    -
    681  x |= (x >> 8);
    -
    682  x |= (x >> 16);
    -
    683  return x + 1;
    -
    684 }
    -
    685 
    -
    686 inline bool b2IsPowerOfTwo(uint32 x)
    -
    687 {
    -
    688  bool result = x > 0 && (x & (x - 1)) == 0;
    -
    689  return result;
    -
    690 }
    -
    691 
    -
    692 inline void b2Sweep::GetTransform(b2Transform* xf, float32 beta) const
    -
    693 {
    -
    694  xf->p = (1.0f - beta) * c0 + beta * c;
    -
    695  float32 angle = (1.0f - beta) * a0 + beta * a;
    -
    696  xf->q.Set(angle);
    -
    697 
    -
    698  // Shift to origin
    -
    699  xf->p -= b2Mul(xf->q, localCenter);
    -
    700 }
    -
    701 
    -
    702 inline void b2Sweep::Advance(float32 alpha)
    -
    703 {
    -
    704  b2Assert(alpha0 < 1.0f);
    -
    705  float32 beta = (alpha - alpha0) / (1.0f - alpha0);
    -
    706  c0 += beta * (c - c0);
    -
    707  a0 += beta * (a - a0);
    -
    708  alpha0 = alpha;
    -
    709 }
    -
    710 
    -
    712 inline void b2Sweep::Normalize()
    -
    713 {
    -
    714  float32 twoPi = 2.0f * b2_pi;
    -
    715  float32 d = twoPi * floorf(a0 / twoPi);
    -
    716  a0 -= d;
    -
    717  a -= d;
    -
    718 }
    -
    719 
    -
    720 #endif
    -
    b2Vec2 Solve22(const b2Vec2 &b) const
    Definition: b2Math.cpp:41
    -
    Definition: b2Math.h:350
    -
    b2Transform()
    The default constructor does nothing.
    Definition: b2Math.h:353
    -
    b2Vec3(float32 x, float32 y, float32 z)
    Construct using coordinates.
    Definition: b2Math.h:150
    -
    void GetTransform(b2Transform *xfb, float32 beta) const
    Definition: b2Math.h:692
    -
    A 2D column vector with 3 elements.
    Definition: b2Math.h:144
    -
    float32 GetAngle() const
    Get the angle in radians.
    Definition: b2Math.h:327
    -
    bool IsValid() const
    Does this vector contain finite coordinates?
    Definition: b2Math.h:129
    -
    b2Mat22(const b2Vec2 &c1, const b2Vec2 &c2)
    Construct this matrix using columns.
    Definition: b2Math.h:189
    -
    b2Vec3()
    Default constructor does nothing (for performance).
    Definition: b2Math.h:147
    -
    A 3-by-3 matrix. Stored in column-major order.
    Definition: b2Math.h:257
    -
    b2Vec2()
    Default constructor does nothing (for performance).
    Definition: b2Math.h:56
    -
    void Set(float32 x_, float32 y_, float32 z_)
    Set this vector to some specified coordinates.
    Definition: b2Math.h:156
    -
    float32 Normalize()
    Convert this vector into a unit vector. Returns the length.
    Definition: b2Math.h:114
    -
    b2Vec2 GetYAxis() const
    Get the u-axis.
    Definition: b2Math.h:339
    -
    b2Mat33()
    The default constructor does nothing (for performance).
    Definition: b2Math.h:260
    -
    b2Vec2 operator-() const
    Negate this vector.
    Definition: b2Math.h:68
    -
    b2Vec2(float32 x, float32 y)
    Construct using coordinates.
    Definition: b2Math.h:59
    -
    Definition: b2Math.h:380
    -
    b2Mat22()
    The default constructor does nothing (for performance).
    Definition: b2Math.h:186
    -
    float32 s
    Sine and cosine.
    Definition: b2Math.h:345
    -
    float32 a
    world angles
    Definition: b2Math.h:395
    -
    b2Mat33(const b2Vec3 &c1, const b2Vec3 &c2, const b2Vec3 &c3)
    Construct this matrix using columns.
    Definition: b2Math.h:263
    -
    b2Vec2 Skew() const
    Get the skew vector such that dot(skew_vec, other) == cross(vec, other)
    Definition: b2Math.h:135
    -
    b2Vec2 GetXAxis() const
    Get the x-axis.
    Definition: b2Math.h:333
    -
    b2Vec3 operator-() const
    Negate this vector.
    Definition: b2Math.h:159
    -
    void Set(float32 x_, float32 y_)
    Set this vector to some specified coordinates.
    Definition: b2Math.h:65
    -
    void Set(const b2Vec2 &position, float32 angle)
    Set this based on the position and angle.
    Definition: b2Math.h:366
    -
    void SetZero()
    Set this vector to all zeros.
    Definition: b2Math.h:62
    -
    void operator+=(const b2Vec2 &v)
    Add a vector to this vector.
    Definition: b2Math.h:83
    -
    void GetInverse22(b2Mat33 *M) const
    Definition: b2Math.cpp:56
    -
    void operator*=(float32 s)
    Multiply this vector by a scalar.
    Definition: b2Math.h:174
    -
    void SetIdentity()
    Set this to the identity transform.
    Definition: b2Math.h:359
    -
    void operator-=(const b2Vec2 &v)
    Subtract a vector from this vector.
    Definition: b2Math.h:89
    -
    void SetZero()
    Set this vector to all zeros.
    Definition: b2Math.h:153
    -
    void operator-=(const b2Vec3 &v)
    Subtract a vector from this vector.
    Definition: b2Math.h:168
    -
    b2Rot(float32 angle)
    Initialize from an angle in radians.
    Definition: b2Math.h:304
    -
    void operator+=(const b2Vec3 &v)
    Add a vector to this vector.
    Definition: b2Math.h:162
    -
    b2Vec2 Solve(const b2Vec2 &b) const
    Definition: b2Math.h:239
    -
    b2Vec2 c
    center world positions
    Definition: b2Math.h:394
    -
    float32 Length() const
    Get the length of this vector (the norm).
    Definition: b2Math.h:101
    -
    b2Vec2 localCenter
    local center of mass position
    Definition: b2Math.h:393
    -
    void GetSymInverse33(b2Mat33 *M) const
    Returns the zero matrix if singular.
    Definition: b2Math.cpp:71
    -
    A 2-by-2 matrix. Stored in column-major order.
    Definition: b2Math.h:183
    -
    void Set(const b2Vec2 &c1, const b2Vec2 &c2)
    Initialize this matrix using columns.
    Definition: b2Math.h:203
    -
    void SetIdentity()
    Set to the identity rotation.
    Definition: b2Math.h:320
    -
    float32 alpha0
    Definition: b2Math.h:399
    -
    void SetIdentity()
    Set this to the identity matrix.
    Definition: b2Math.h:210
    -
    void Normalize()
    Normalize the angles.
    Definition: b2Math.h:712
    -
    b2Vec3 Solve33(const b2Vec3 &b) const
    Definition: b2Math.cpp:25
    - -
    void SetZero()
    Set this matrix to all zeros.
    Definition: b2Math.h:217
    -
    A 2D column vector.
    Definition: b2Math.h:53
    -
    void Advance(float32 alpha)
    Definition: b2Math.h:702
    -
    float32 LengthSquared() const
    Definition: b2Math.h:108
    -
    void operator*=(float32 a)
    Multiply this vector by a scalar.
    Definition: b2Math.h:95
    -
    void Set(float32 angle)
    Set using an angle in radians.
    Definition: b2Math.h:312
    -
    b2Transform(const b2Vec2 &position, const b2Rot &rotation)
    Initialize using a position vector and a rotation.
    Definition: b2Math.h:356
    -
    void SetZero()
    Set this matrix to all zeros.
    Definition: b2Math.h:271
    -
    b2Mat22(float32 a11, float32 a12, float32 a21, float32 a22)
    Construct this matrix using scalars.
    Definition: b2Math.h:196
    -
    Rotation.
    Definition: b2Math.h:299
    -
    float32 operator()(int32 i) const
    Read from and indexed element.
    Definition: b2Math.h:71
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_motor_joint_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_motor_joint_8h_source.html deleted file mode 100644 index 030075b..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_motor_joint_8h_source.html +++ /dev/null @@ -1,245 +0,0 @@ - - - - - - -Box2D: b2MotorJoint.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2MotorJoint.h
    -
    -
    -
    1 /*
    -
    2 * Copyright (c) 2006-2012 Erin Catto http://www.box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_MOTOR_JOINT_H
    -
    20 #define B2_MOTOR_JOINT_H
    -
    21 
    -
    22 #include <Box2D/Dynamics/Joints/b2Joint.h>
    -
    23 
    -
    25 struct b2MotorJointDef : public b2JointDef
    -
    26 {
    - -
    28  {
    -
    29  type = e_motorJoint;
    - -
    31  angularOffset = 0.0f;
    -
    32  maxForce = 1.0f;
    -
    33  maxTorque = 1.0f;
    -
    34  correctionFactor = 0.3f;
    -
    35  }
    -
    36 
    - -
    39 
    - -
    42 
    -
    44  float32 angularOffset;
    -
    45 
    -
    47  float32 maxForce;
    -
    48 
    -
    50  float32 maxTorque;
    -
    51 
    - -
    54 };
    -
    55 
    -
    59 class b2MotorJoint : public b2Joint
    -
    60 {
    -
    61 public:
    -
    62  b2Vec2 GetAnchorA() const;
    -
    63  b2Vec2 GetAnchorB() const;
    -
    64 
    -
    65  b2Vec2 GetReactionForce(float32 inv_dt) const;
    -
    66  float32 GetReactionTorque(float32 inv_dt) const;
    -
    67 
    -
    69  void SetLinearOffset(const b2Vec2& linearOffset);
    -
    70  const b2Vec2& GetLinearOffset() const;
    -
    71 
    -
    73  void SetAngularOffset(float32 angularOffset);
    -
    74  float32 GetAngularOffset() const;
    -
    75 
    -
    77  void SetMaxForce(float32 force);
    -
    78 
    -
    80  float32 GetMaxForce() const;
    -
    81 
    -
    83  void SetMaxTorque(float32 torque);
    -
    84 
    -
    86  float32 GetMaxTorque() const;
    -
    87 
    -
    89  void SetCorrectionFactor(float32 factor);
    -
    90 
    -
    92  float32 GetCorrectionFactor() const;
    -
    93 
    -
    95  void Dump();
    -
    96 
    -
    97 protected:
    -
    98 
    -
    99  friend class b2Joint;
    -
    100 
    -
    101  b2MotorJoint(const b2MotorJointDef* def);
    -
    102 
    -
    103  void InitVelocityConstraints(const b2SolverData& data);
    -
    104  void SolveVelocityConstraints(const b2SolverData& data);
    -
    105  bool SolvePositionConstraints(const b2SolverData& data);
    -
    106 
    -
    107  // Solver shared
    -
    108  b2Vec2 m_linearOffset;
    -
    109  float32 m_angularOffset;
    -
    110  b2Vec2 m_linearImpulse;
    -
    111  float32 m_angularImpulse;
    -
    112  float32 m_maxForce;
    -
    113  float32 m_maxTorque;
    -
    114  float32 m_correctionFactor;
    -
    115 
    -
    116  // Solver temp
    -
    117  int32 m_indexA;
    -
    118  int32 m_indexB;
    -
    119  b2Vec2 m_rA;
    -
    120  b2Vec2 m_rB;
    -
    121  b2Vec2 m_localCenterA;
    -
    122  b2Vec2 m_localCenterB;
    -
    123  b2Vec2 m_linearError;
    -
    124  float32 m_angularError;
    -
    125  float32 m_invMassA;
    -
    126  float32 m_invMassB;
    -
    127  float32 m_invIA;
    -
    128  float32 m_invIB;
    -
    129  b2Mat22 m_linearMass;
    -
    130  float32 m_angularMass;
    -
    131 };
    -
    132 
    -
    133 #endif
    -
    b2Vec2 GetAnchorA() const
    Get the anchor point on bodyA in world coordinates.
    Definition: b2MotorJoint.cpp:206
    -
    b2Body * bodyA
    The first attached body.
    Definition: b2Joint.h:92
    -
    Definition: b2MotorJoint.h:59
    -
    void SetMaxTorque(float32 torque)
    Set the maximum friction torque in N*m.
    Definition: b2MotorJoint.cpp:237
    -
    void Dump()
    Dump to b2Log.
    Definition: b2MotorJoint.cpp:289
    -
    void SetLinearOffset(const b2Vec2 &linearOffset)
    Set/get the target linear offset, in frame A, in meters.
    Definition: b2MotorJoint.cpp:259
    -
    float32 GetMaxTorque() const
    Get the maximum friction torque in N*m.
    Definition: b2MotorJoint.cpp:243
    -
    b2Body * bodyB
    The second attached body.
    Definition: b2Joint.h:95
    -
    b2Vec2 GetAnchorB() const
    Get the anchor point on bodyB in world coordinates.
    Definition: b2MotorJoint.cpp:211
    -
    void SetMaxForce(float32 force)
    Set the maximum friction force in N.
    Definition: b2MotorJoint.cpp:226
    -
    float32 maxTorque
    The maximum motor torque in N-m.
    Definition: b2MotorJoint.h:50
    -
    Motor joint definition.
    Definition: b2MotorJoint.h:25
    -
    Definition: b2Joint.h:103
    -
    void SetZero()
    Set this vector to all zeros.
    Definition: b2Math.h:62
    -
    float32 angularOffset
    The bodyB angle minus bodyA angle in radians.
    Definition: b2MotorJoint.h:44
    -
    b2Vec2 GetReactionForce(float32 inv_dt) const
    Get the reaction force on bodyB at the joint anchor in Newtons.
    Definition: b2MotorJoint.cpp:216
    -
    float32 GetMaxForce() const
    Get the maximum friction force in N.
    Definition: b2MotorJoint.cpp:232
    -
    b2JointType type
    The joint type is set automatically for concrete joint types.
    Definition: b2Joint.h:86
    -
    float32 GetReactionTorque(float32 inv_dt) const
    Get the reaction torque on bodyB in N*m.
    Definition: b2MotorJoint.cpp:221
    -
    Solver Data.
    Definition: b2TimeStep.h:63
    -
    float32 maxForce
    The maximum motor force in N.
    Definition: b2MotorJoint.h:47
    -
    A 2-by-2 matrix. Stored in column-major order.
    Definition: b2Math.h:183
    -
    float32 correctionFactor
    Position correction factor in the range [0,1].
    Definition: b2MotorJoint.h:53
    -
    Joint definitions are used to construct joints.
    Definition: b2Joint.h:74
    -
    A rigid body. These are created via b2World::CreateBody.
    Definition: b2Body.h:126
    -
    float32 GetCorrectionFactor() const
    Get the position correction factor in the range [0,1].
    Definition: b2MotorJoint.cpp:254
    -
    void SetCorrectionFactor(float32 factor)
    Set the position correction factor in the range [0,1].
    Definition: b2MotorJoint.cpp:248
    -
    A 2D column vector.
    Definition: b2Math.h:53
    -
    void SetAngularOffset(float32 angularOffset)
    Set/get the target angular offset, in radians.
    Definition: b2MotorJoint.cpp:274
    -
    b2Vec2 linearOffset
    Position of bodyB minus the position of bodyA, in bodyA&#39;s frame, in meters.
    Definition: b2MotorJoint.h:41
    -
    void Initialize(b2Body *bodyA, b2Body *bodyB)
    Initialize the bodies and offsets using the current transforms.
    Definition: b2MotorJoint.cpp:35
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_mouse_joint_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_mouse_joint_8h_source.html deleted file mode 100644 index 2458c85..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_mouse_joint_8h_source.html +++ /dev/null @@ -1,227 +0,0 @@ - - - - - - -Box2D: b2MouseJoint.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2MouseJoint.h
    -
    -
    -
    1 /*
    -
    2 * Copyright (c) 2006-2007 Erin Catto http://www.box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_MOUSE_JOINT_H
    -
    20 #define B2_MOUSE_JOINT_H
    -
    21 
    -
    22 #include <Box2D/Dynamics/Joints/b2Joint.h>
    -
    23 
    -
    26 struct b2MouseJointDef : public b2JointDef
    -
    27 {
    - -
    29  {
    -
    30  type = e_mouseJoint;
    -
    31  target.Set(0.0f, 0.0f);
    -
    32  maxForce = 0.0f;
    -
    33  frequencyHz = 5.0f;
    -
    34  dampingRatio = 0.7f;
    -
    35  }
    -
    36 
    - -
    40 
    -
    44  float32 maxForce;
    -
    45 
    -
    47  float32 frequencyHz;
    -
    48 
    -
    50  float32 dampingRatio;
    -
    51 };
    -
    52 
    -
    60 class b2MouseJoint : public b2Joint
    -
    61 {
    -
    62 public:
    -
    63 
    -
    65  b2Vec2 GetAnchorA() const;
    -
    66 
    -
    68  b2Vec2 GetAnchorB() const;
    -
    69 
    -
    71  b2Vec2 GetReactionForce(float32 inv_dt) const;
    -
    72 
    -
    74  float32 GetReactionTorque(float32 inv_dt) const;
    -
    75 
    -
    77  void SetTarget(const b2Vec2& target);
    -
    78  const b2Vec2& GetTarget() const;
    -
    79 
    -
    81  void SetMaxForce(float32 force);
    -
    82  float32 GetMaxForce() const;
    -
    83 
    -
    85  void SetFrequency(float32 hz);
    -
    86  float32 GetFrequency() const;
    -
    87 
    -
    89  void SetDampingRatio(float32 ratio);
    -
    90  float32 GetDampingRatio() const;
    -
    91 
    -
    93  void Dump() { b2Log("Mouse joint dumping is not supported.\n"); }
    -
    94 
    -
    96  void ShiftOrigin(const b2Vec2& newOrigin);
    -
    97 
    -
    98 protected:
    -
    99  friend class b2Joint;
    -
    100 
    -
    101  b2MouseJoint(const b2MouseJointDef* def);
    -
    102 
    -
    103  void InitVelocityConstraints(const b2SolverData& data);
    -
    104  void SolveVelocityConstraints(const b2SolverData& data);
    -
    105  bool SolvePositionConstraints(const b2SolverData& data);
    -
    106 
    -
    107  b2Vec2 m_localAnchorB;
    -
    108  b2Vec2 m_targetA;
    -
    109  float32 m_frequencyHz;
    -
    110  float32 m_dampingRatio;
    -
    111  float32 m_beta;
    -
    112 
    -
    113  // Solver shared
    -
    114  b2Vec2 m_impulse;
    -
    115  float32 m_maxForce;
    -
    116  float32 m_gamma;
    -
    117 
    -
    118  // Solver temp
    -
    119  int32 m_indexA;
    -
    120  int32 m_indexB;
    -
    121  b2Vec2 m_rB;
    -
    122  b2Vec2 m_localCenterB;
    -
    123  float32 m_invMassB;
    -
    124  float32 m_invIB;
    -
    125  b2Mat22 m_mass;
    -
    126  b2Vec2 m_C;
    -
    127 };
    -
    128 
    -
    129 #endif
    -
    void b2Log(const char *string,...)
    Logging function.
    Definition: b2Settings.cpp:38
    -
    float32 maxForce
    Definition: b2MouseJoint.h:44
    -
    float32 GetReactionTorque(float32 inv_dt) const
    Implements b2Joint.
    Definition: b2MouseJoint.cpp:214
    -
    float32 dampingRatio
    The damping ratio. 0 = no damping, 1 = critical damping.
    Definition: b2MouseJoint.h:50
    -
    void SetDampingRatio(float32 ratio)
    Set/get the damping ratio (dimensionless).
    Definition: b2MouseJoint.cpp:86
    -
    b2Vec2 target
    Definition: b2MouseJoint.h:39
    -
    Definition: b2Joint.h:103
    -
    void Dump()
    The mouse joint does not support dumping.
    Definition: b2MouseJoint.h:93
    -
    Definition: b2MouseJoint.h:60
    -
    void Set(float32 x_, float32 y_)
    Set this vector to some specified coordinates.
    Definition: b2Math.h:65
    -
    void ShiftOrigin(const b2Vec2 &newOrigin)
    Implement b2Joint::ShiftOrigin.
    Definition: b2MouseJoint.cpp:219
    -
    b2Vec2 GetAnchorB() const
    Implements b2Joint.
    Definition: b2MouseJoint.cpp:204
    -
    b2Vec2 GetReactionForce(float32 inv_dt) const
    Implements b2Joint.
    Definition: b2MouseJoint.cpp:209
    -
    b2Vec2 GetAnchorA() const
    Implements b2Joint.
    Definition: b2MouseJoint.cpp:199
    -
    b2JointType type
    The joint type is set automatically for concrete joint types.
    Definition: b2Joint.h:86
    -
    Solver Data.
    Definition: b2TimeStep.h:63
    -
    void SetMaxForce(float32 force)
    Set/get the maximum force in Newtons.
    Definition: b2MouseJoint.cpp:66
    -
    A 2-by-2 matrix. Stored in column-major order.
    Definition: b2Math.h:183
    -
    void SetFrequency(float32 hz)
    Set/get the frequency in Hertz.
    Definition: b2MouseJoint.cpp:76
    -
    Joint definitions are used to construct joints.
    Definition: b2Joint.h:74
    -
    float32 frequencyHz
    The response speed.
    Definition: b2MouseJoint.h:47
    -
    Definition: b2MouseJoint.h:26
    -
    A 2D column vector.
    Definition: b2Math.h:53
    -
    void SetTarget(const b2Vec2 &target)
    Use this to update the target point.
    Definition: b2MouseJoint.cpp:52
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_polygon_and_circle_contact_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_polygon_and_circle_contact_8h_source.html deleted file mode 100644 index 0bdc572..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_polygon_and_circle_contact_8h_source.html +++ /dev/null @@ -1,145 +0,0 @@ - - - - - - -Box2D: b2PolygonAndCircleContact.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2PolygonAndCircleContact.h
    -
    -
    -
    1 /*
    -
    2 * Copyright (c) 2006-2009 Erin Catto http://www.box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_POLYGON_AND_CIRCLE_CONTACT_H
    -
    20 #define B2_POLYGON_AND_CIRCLE_CONTACT_H
    -
    21 
    -
    22 #include <Box2D/Dynamics/Contacts/b2Contact.h>
    -
    23 
    -
    24 class b2BlockAllocator;
    -
    25 
    - -
    27 {
    -
    28 public:
    -
    29  static b2Contact* Create(b2Fixture* fixtureA, int32 indexA, b2Fixture* fixtureB, int32 indexB, b2BlockAllocator* allocator);
    -
    30  static void Destroy(b2Contact* contact, b2BlockAllocator* allocator);
    -
    31 
    -
    32  b2PolygonAndCircleContact(b2Fixture* fixtureA, b2Fixture* fixtureB);
    - -
    34 
    -
    35  void Evaluate(b2Manifold* manifold, const b2Transform& xfA, const b2Transform& xfB);
    -
    36 };
    -
    37 
    -
    38 #endif
    -
    Definition: b2Math.h:350
    -
    Definition: b2BlockAllocator.h:35
    -
    Definition: b2PolygonAndCircleContact.h:26
    -
    void Evaluate(b2Manifold *manifold, const b2Transform &xfA, const b2Transform &xfB)
    Evaluate this contact with your own manifold and transforms.
    Definition: b2PolygonAndCircleContact.cpp:44
    -
    Definition: b2Collision.h:93
    -
    Definition: b2Contact.h:77
    -
    Definition: b2Fixture.h:107
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_polygon_contact_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_polygon_contact_8h_source.html deleted file mode 100644 index 6934982..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_polygon_contact_8h_source.html +++ /dev/null @@ -1,146 +0,0 @@ - - - - - - -Box2D: b2PolygonContact.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2PolygonContact.h
    -
    -
    -
    1 /*
    -
    2 * Copyright (c) 2006-2009 Erin Catto http://www.box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_POLYGON_CONTACT_H
    -
    20 #define B2_POLYGON_CONTACT_H
    -
    21 
    -
    22 #include <Box2D/Dynamics/Contacts/b2Contact.h>
    -
    23 
    -
    24 class b2BlockAllocator;
    -
    25 
    - -
    27 {
    -
    28 public:
    -
    29  static b2Contact* Create( b2Fixture* fixtureA, int32 indexA,
    -
    30  b2Fixture* fixtureB, int32 indexB, b2BlockAllocator* allocator);
    -
    31  static void Destroy(b2Contact* contact, b2BlockAllocator* allocator);
    -
    32 
    -
    33  b2PolygonContact(b2Fixture* fixtureA, b2Fixture* fixtureB);
    -
    34  ~b2PolygonContact() {}
    -
    35 
    -
    36  void Evaluate(b2Manifold* manifold, const b2Transform& xfA, const b2Transform& xfB);
    -
    37 };
    -
    38 
    -
    39 #endif
    -
    Definition: b2Math.h:350
    -
    Definition: b2PolygonContact.h:26
    -
    Definition: b2BlockAllocator.h:35
    -
    Definition: b2Collision.h:93
    -
    void Evaluate(b2Manifold *manifold, const b2Transform &xfA, const b2Transform &xfB)
    Evaluate this contact with your own manifold and transforms.
    Definition: b2PolygonContact.cpp:47
    -
    Definition: b2Contact.h:77
    -
    Definition: b2Fixture.h:107
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_polygon_shape_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_polygon_shape_8h_source.html deleted file mode 100644 index df2f7ca..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_polygon_shape_8h_source.html +++ /dev/null @@ -1,197 +0,0 @@ - - - - - - -Box2D: b2PolygonShape.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2PolygonShape.h
    -
    -
    -
    1 /*
    -
    2 * Copyright (c) 2006-2009 Erin Catto http://www.box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_POLYGON_SHAPE_H
    -
    20 #define B2_POLYGON_SHAPE_H
    -
    21 
    -
    22 #include <Box2D/Collision/Shapes/b2Shape.h>
    -
    23 
    -
    28 class b2PolygonShape : public b2Shape
    -
    29 {
    -
    30 public:
    - -
    32 
    -
    34  b2Shape* Clone(b2BlockAllocator* allocator) const;
    -
    35 
    -
    37  int32 GetChildCount() const;
    -
    38 
    -
    44  void Set(const b2Vec2* points, int32 count);
    -
    45 
    -
    49  void SetAsBox(float32 hx, float32 hy);
    -
    50 
    -
    56  void SetAsBox(float32 hx, float32 hy, const b2Vec2& center, float32 angle);
    -
    57 
    -
    59  bool TestPoint(const b2Transform& transform, const b2Vec2& p) const;
    -
    60 
    -
    62  bool RayCast(b2RayCastOutput* output, const b2RayCastInput& input,
    -
    63  const b2Transform& transform, int32 childIndex) const;
    -
    64 
    -
    66  void ComputeAABB(b2AABB* aabb, const b2Transform& transform, int32 childIndex) const;
    -
    67 
    -
    69  void ComputeMass(b2MassData* massData, float32 density) const;
    -
    70 
    -
    72  int32 GetVertexCount() const { return m_count; }
    -
    73 
    -
    75  const b2Vec2& GetVertex(int32 index) const;
    -
    76 
    -
    79  bool Validate() const;
    -
    80 
    -
    81  b2Vec2 m_centroid;
    -
    82  b2Vec2 m_vertices[b2_maxPolygonVertices];
    -
    83  b2Vec2 m_normals[b2_maxPolygonVertices];
    -
    84  int32 m_count;
    -
    85 };
    -
    86 
    -
    87 inline b2PolygonShape::b2PolygonShape()
    -
    88 {
    -
    89  m_type = e_polygon;
    -
    90  m_radius = b2_polygonRadius;
    -
    91  m_count = 0;
    -
    92  m_centroid.SetZero();
    -
    93 }
    -
    94 
    -
    95 inline const b2Vec2& b2PolygonShape::GetVertex(int32 index) const
    -
    96 {
    -
    97  b2Assert(0 <= index && index < m_count);
    -
    98  return m_vertices[index];
    -
    99 }
    -
    100 
    -
    101 #endif
    -
    Definition: b2Math.h:350
    -
    bool Validate() const
    Definition: b2PolygonShape.cpp:433
    -
    void ComputeAABB(b2AABB *aabb, const b2Transform &transform, int32 childIndex) const
    Definition: b2PolygonShape.cpp:331
    -
    bool TestPoint(const b2Transform &transform, const b2Vec2 &p) const
    Definition: b2PolygonShape.cpp:243
    -
    int32 GetChildCount() const
    Definition: b2PolygonShape.cpp:69
    -
    Definition: b2BlockAllocator.h:35
    -
    This holds the mass data computed for a shape.
    Definition: b2Shape.h:27
    -
    Definition: b2Shape.h:42
    -
    void ComputeMass(b2MassData *massData, float32 density) const
    Definition: b2PolygonShape.cpp:350
    -
    void SetAsBox(float32 hx, float32 hy)
    Definition: b2PolygonShape.cpp:30
    -
    Definition: b2PolygonShape.h:28
    -
    Definition: b2Collision.h:155
    -
    void SetZero()
    Set this vector to all zeros.
    Definition: b2Math.h:62
    -
    bool RayCast(b2RayCastOutput *output, const b2RayCastInput &input, const b2Transform &transform, int32 childIndex) const
    Implement b2Shape.
    Definition: b2PolygonShape.cpp:259
    -
    #define b2_polygonRadius
    Definition: b2Settings.h:77
    -
    An axis aligned bounding box.
    Definition: b2Collision.h:162
    -
    b2Shape * Clone(b2BlockAllocator *allocator) const
    Implement b2Shape.
    Definition: b2PolygonShape.cpp:22
    -
    Ray-cast input data. The ray extends from p1 to p1 + maxFraction * (p2 - p1).
    Definition: b2Collision.h:147
    -
    void Set(const b2Vec2 *points, int32 count)
    Definition: b2PolygonShape.cpp:120
    -
    int32 GetVertexCount() const
    Get the vertex count.
    Definition: b2PolygonShape.h:72
    -
    A 2D column vector.
    Definition: b2Math.h:53
    -
    const b2Vec2 & GetVertex(int32 index) const
    Get a vertex by index.
    Definition: b2PolygonShape.h:95
    -
    #define b2_maxPolygonVertices
    Definition: b2Settings.h:54
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_prismatic_joint_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_prismatic_joint_8h_source.html deleted file mode 100644 index 547afcb..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_prismatic_joint_8h_source.html +++ /dev/null @@ -1,304 +0,0 @@ - - - - - - -Box2D: b2PrismaticJoint.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2PrismaticJoint.h
    -
    -
    -
    1 /*
    -
    2 * Copyright (c) 2006-2011 Erin Catto http://www.box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_PRISMATIC_JOINT_H
    -
    20 #define B2_PRISMATIC_JOINT_H
    -
    21 
    -
    22 #include <Box2D/Dynamics/Joints/b2Joint.h>
    -
    23 
    - -
    31 {
    - -
    33  {
    -
    34  type = e_prismaticJoint;
    - - -
    37  localAxisA.Set(1.0f, 0.0f);
    -
    38  referenceAngle = 0.0f;
    -
    39  enableLimit = false;
    -
    40  lowerTranslation = 0.0f;
    -
    41  upperTranslation = 0.0f;
    -
    42  enableMotor = false;
    -
    43  maxMotorForce = 0.0f;
    -
    44  motorSpeed = 0.0f;
    -
    45  }
    -
    46 
    -
    49  void Initialize(b2Body* bodyA, b2Body* bodyB, const b2Vec2& anchor, const b2Vec2& axis);
    -
    50 
    - -
    53 
    - -
    56 
    - -
    59 
    -
    61  float32 referenceAngle;
    -
    62 
    - -
    65 
    - -
    68 
    - -
    71 
    - -
    74 
    -
    76  float32 maxMotorForce;
    -
    77 
    -
    79  float32 motorSpeed;
    -
    80 };
    -
    81 
    -
    86 class b2PrismaticJoint : public b2Joint
    -
    87 {
    -
    88 public:
    -
    89  b2Vec2 GetAnchorA() const;
    -
    90  b2Vec2 GetAnchorB() const;
    -
    91 
    -
    92  b2Vec2 GetReactionForce(float32 inv_dt) const;
    -
    93  float32 GetReactionTorque(float32 inv_dt) const;
    -
    94 
    -
    96  const b2Vec2& GetLocalAnchorA() const { return m_localAnchorA; }
    -
    97 
    -
    99  const b2Vec2& GetLocalAnchorB() const { return m_localAnchorB; }
    -
    100 
    -
    102  const b2Vec2& GetLocalAxisA() const { return m_localXAxisA; }
    -
    103 
    -
    105  float32 GetReferenceAngle() const { return m_referenceAngle; }
    -
    106 
    -
    108  float32 GetJointTranslation() const;
    -
    109 
    -
    111  float32 GetJointSpeed() const;
    -
    112 
    -
    114  bool IsLimitEnabled() const;
    -
    115 
    -
    117  void EnableLimit(bool flag);
    -
    118 
    -
    120  float32 GetLowerLimit() const;
    -
    121 
    -
    123  float32 GetUpperLimit() const;
    -
    124 
    -
    126  void SetLimits(float32 lower, float32 upper);
    -
    127 
    -
    129  bool IsMotorEnabled() const;
    -
    130 
    -
    132  void EnableMotor(bool flag);
    -
    133 
    -
    135  void SetMotorSpeed(float32 speed);
    -
    136 
    -
    138  float32 GetMotorSpeed() const;
    -
    139 
    -
    141  void SetMaxMotorForce(float32 force);
    -
    142  float32 GetMaxMotorForce() const { return m_maxMotorForce; }
    -
    143 
    -
    145  float32 GetMotorForce(float32 inv_dt) const;
    -
    146 
    -
    148  void Dump();
    -
    149 
    -
    150 protected:
    -
    151  friend class b2Joint;
    -
    152  friend class b2GearJoint;
    - -
    154 
    -
    155  void InitVelocityConstraints(const b2SolverData& data);
    -
    156  void SolveVelocityConstraints(const b2SolverData& data);
    -
    157  bool SolvePositionConstraints(const b2SolverData& data);
    -
    158 
    -
    159  // Solver shared
    -
    160  b2Vec2 m_localAnchorA;
    -
    161  b2Vec2 m_localAnchorB;
    -
    162  b2Vec2 m_localXAxisA;
    -
    163  b2Vec2 m_localYAxisA;
    -
    164  float32 m_referenceAngle;
    -
    165  b2Vec3 m_impulse;
    -
    166  float32 m_motorImpulse;
    -
    167  float32 m_lowerTranslation;
    -
    168  float32 m_upperTranslation;
    -
    169  float32 m_maxMotorForce;
    -
    170  float32 m_motorSpeed;
    -
    171  bool m_enableLimit;
    -
    172  bool m_enableMotor;
    -
    173  b2LimitState m_limitState;
    -
    174 
    -
    175  // Solver temp
    -
    176  int32 m_indexA;
    -
    177  int32 m_indexB;
    -
    178  b2Vec2 m_localCenterA;
    -
    179  b2Vec2 m_localCenterB;
    -
    180  float32 m_invMassA;
    -
    181  float32 m_invMassB;
    -
    182  float32 m_invIA;
    -
    183  float32 m_invIB;
    -
    184  b2Vec2 m_axis, m_perp;
    -
    185  float32 m_s1, m_s2;
    -
    186  float32 m_a1, m_a2;
    -
    187  b2Mat33 m_K;
    -
    188  float32 m_motorMass;
    -
    189 };
    -
    190 
    -
    191 inline float32 b2PrismaticJoint::GetMotorSpeed() const
    -
    192 {
    -
    193  return m_motorSpeed;
    -
    194 }
    -
    195 
    -
    196 #endif
    -
    b2Vec2 GetReactionForce(float32 inv_dt) const
    Get the reaction force on bodyB at the joint anchor in Newtons.
    Definition: b2PrismaticJoint.cpp:494
    -
    const b2Vec2 & GetLocalAnchorB() const
    The local anchor point relative to bodyB&#39;s origin.
    Definition: b2PrismaticJoint.h:99
    -
    const b2Vec2 & GetLocalAnchorA() const
    The local anchor point relative to bodyA&#39;s origin.
    Definition: b2PrismaticJoint.h:96
    -
    void EnableMotor(bool flag)
    Enable/disable the joint motor.
    Definition: b2PrismaticJoint.cpp:580
    -
    A 2D column vector with 3 elements.
    Definition: b2Math.h:144
    -
    bool enableMotor
    Enable/disable the joint motor.
    Definition: b2PrismaticJoint.h:73
    -
    float32 GetJointSpeed() const
    Get the current joint translation speed, usually in meters per second.
    Definition: b2PrismaticJoint.cpp:515
    -
    bool enableLimit
    Enable/disable the joint limit.
    Definition: b2PrismaticJoint.h:64
    -
    b2Body * bodyA
    The first attached body.
    Definition: b2Joint.h:92
    -
    b2Vec2 GetAnchorA() const
    Get the anchor point on bodyA in world coordinates.
    Definition: b2PrismaticJoint.cpp:484
    -
    A 3-by-3 matrix. Stored in column-major order.
    Definition: b2Math.h:257
    -
    float32 lowerTranslation
    The lower translation limit, usually in meters.
    Definition: b2PrismaticJoint.h:67
    -
    float32 upperTranslation
    The upper translation limit, usually in meters.
    Definition: b2PrismaticJoint.h:70
    -
    float32 GetJointTranslation() const
    Get the current joint translation, usually in meters.
    Definition: b2PrismaticJoint.cpp:504
    -
    Definition: b2PrismaticJoint.h:30
    -
    b2Body * bodyB
    The second attached body.
    Definition: b2Joint.h:95
    -
    void SetMotorSpeed(float32 speed)
    Set the motor speed, usually in meters per second.
    Definition: b2PrismaticJoint.cpp:587
    -
    b2Vec2 GetAnchorB() const
    Get the anchor point on bodyB in world coordinates.
    Definition: b2PrismaticJoint.cpp:489
    -
    void SetLimits(float32 lower, float32 upper)
    Set the joint limits, usually in meters.
    Definition: b2PrismaticJoint.cpp:562
    -
    Definition: b2Joint.h:103
    -
    b2Vec2 localAxisA
    The local translation unit axis in bodyA.
    Definition: b2PrismaticJoint.h:58
    -
    Definition: b2PrismaticJoint.h:86
    -
    const b2Vec2 & GetLocalAxisA() const
    The local joint axis relative to bodyA.
    Definition: b2PrismaticJoint.h:102
    -
    float32 GetReactionTorque(float32 inv_dt) const
    Get the reaction torque on bodyB in N*m.
    Definition: b2PrismaticJoint.cpp:499
    -
    void Set(float32 x_, float32 y_)
    Set this vector to some specified coordinates.
    Definition: b2Math.h:65
    -
    float32 motorSpeed
    The desired motor speed in radians per second.
    Definition: b2PrismaticJoint.h:79
    -
    void SetZero()
    Set this vector to all zeros.
    Definition: b2Math.h:62
    -
    float32 maxMotorForce
    The maximum motor torque, usually in N-m.
    Definition: b2PrismaticJoint.h:76
    -
    bool IsLimitEnabled() const
    Is the joint limit enabled?
    Definition: b2PrismaticJoint.cpp:536
    -
    Definition: b2GearJoint.h:56
    -
    b2JointType type
    The joint type is set automatically for concrete joint types.
    Definition: b2Joint.h:86
    -
    Solver Data.
    Definition: b2TimeStep.h:63
    -
    float32 GetLowerLimit() const
    Get the lower joint limit, usually in meters.
    Definition: b2PrismaticJoint.cpp:552
    -
    b2Vec2 localAnchorA
    The local anchor point relative to bodyA&#39;s origin.
    Definition: b2PrismaticJoint.h:52
    -
    b2Vec2 localAnchorB
    The local anchor point relative to bodyB&#39;s origin.
    Definition: b2PrismaticJoint.h:55
    -
    Joint definitions are used to construct joints.
    Definition: b2Joint.h:74
    -
    A rigid body. These are created via b2World::CreateBody.
    Definition: b2Body.h:126
    -
    float32 referenceAngle
    The constrained angle between the bodies: bodyB_angle - bodyA_angle.
    Definition: b2PrismaticJoint.h:61
    -
    float32 GetReferenceAngle() const
    Get the reference angle.
    Definition: b2PrismaticJoint.h:105
    -
    void Dump()
    Dump to b2Log.
    Definition: b2PrismaticJoint.cpp:606
    -
    void EnableLimit(bool flag)
    Enable/disable the joint limit.
    Definition: b2PrismaticJoint.cpp:541
    -
    A 2D column vector.
    Definition: b2Math.h:53
    -
    void Initialize(b2Body *bodyA, b2Body *bodyB, const b2Vec2 &anchor, const b2Vec2 &axis)
    Definition: b2PrismaticJoint.cpp:90
    -
    bool IsMotorEnabled() const
    Is the joint motor enabled?
    Definition: b2PrismaticJoint.cpp:575
    -
    float32 GetMotorForce(float32 inv_dt) const
    Get the current motor force given the inverse time step, usually in N.
    Definition: b2PrismaticJoint.cpp:601
    -
    float32 GetUpperLimit() const
    Get the upper joint limit, usually in meters.
    Definition: b2PrismaticJoint.cpp:557
    -
    float32 GetMotorSpeed() const
    Get the motor speed, usually in meters per second.
    Definition: b2PrismaticJoint.h:191
    -
    void SetMaxMotorForce(float32 force)
    Set the maximum motor force, usually in N.
    Definition: b2PrismaticJoint.cpp:594
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_pulley_joint_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_pulley_joint_8h_source.html deleted file mode 100644 index 14bea73..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_pulley_joint_8h_source.html +++ /dev/null @@ -1,258 +0,0 @@ - - - - - - -Box2D: b2PulleyJoint.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2PulleyJoint.h
    -
    -
    -
    1 /*
    -
    2 * Copyright (c) 2006-2011 Erin Catto http://www.box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_PULLEY_JOINT_H
    -
    20 #define B2_PULLEY_JOINT_H
    -
    21 
    -
    22 #include <Box2D/Dynamics/Joints/b2Joint.h>
    -
    23 
    -
    24 const float32 b2_minPulleyLength = 2.0f;
    -
    25 
    - -
    29 {
    - -
    31  {
    -
    32  type = e_pulleyJoint;
    -
    33  groundAnchorA.Set(-1.0f, 1.0f);
    -
    34  groundAnchorB.Set(1.0f, 1.0f);
    -
    35  localAnchorA.Set(-1.0f, 0.0f);
    -
    36  localAnchorB.Set(1.0f, 0.0f);
    -
    37  lengthA = 0.0f;
    -
    38  lengthB = 0.0f;
    -
    39  ratio = 1.0f;
    -
    40  collideConnected = true;
    -
    41  }
    -
    42 
    - - -
    46  const b2Vec2& anchorA, const b2Vec2& anchorB,
    -
    47  float32 ratio);
    -
    48 
    - -
    51 
    - -
    54 
    - -
    57 
    - -
    60 
    -
    62  float32 lengthA;
    -
    63 
    -
    65  float32 lengthB;
    -
    66 
    -
    68  float32 ratio;
    -
    69 };
    -
    70 
    -
    79 class b2PulleyJoint : public b2Joint
    -
    80 {
    -
    81 public:
    -
    82  b2Vec2 GetAnchorA() const;
    -
    83  b2Vec2 GetAnchorB() const;
    -
    84 
    -
    85  b2Vec2 GetReactionForce(float32 inv_dt) const;
    -
    86  float32 GetReactionTorque(float32 inv_dt) const;
    -
    87 
    -
    89  b2Vec2 GetGroundAnchorA() const;
    -
    90 
    -
    92  b2Vec2 GetGroundAnchorB() const;
    -
    93 
    -
    95  float32 GetLengthA() const;
    -
    96 
    -
    98  float32 GetLengthB() const;
    -
    99 
    -
    101  float32 GetRatio() const;
    -
    102 
    -
    104  float32 GetCurrentLengthA() const;
    -
    105 
    -
    107  float32 GetCurrentLengthB() const;
    -
    108 
    -
    110  void Dump();
    -
    111 
    -
    113  void ShiftOrigin(const b2Vec2& newOrigin);
    -
    114 
    -
    115 protected:
    -
    116 
    -
    117  friend class b2Joint;
    -
    118  b2PulleyJoint(const b2PulleyJointDef* data);
    -
    119 
    -
    120  void InitVelocityConstraints(const b2SolverData& data);
    -
    121  void SolveVelocityConstraints(const b2SolverData& data);
    -
    122  bool SolvePositionConstraints(const b2SolverData& data);
    -
    123 
    -
    124  b2Vec2 m_groundAnchorA;
    -
    125  b2Vec2 m_groundAnchorB;
    -
    126  float32 m_lengthA;
    -
    127  float32 m_lengthB;
    -
    128 
    -
    129  // Solver shared
    -
    130  b2Vec2 m_localAnchorA;
    -
    131  b2Vec2 m_localAnchorB;
    -
    132  float32 m_constant;
    -
    133  float32 m_ratio;
    -
    134  float32 m_impulse;
    -
    135 
    -
    136  // Solver temp
    -
    137  int32 m_indexA;
    -
    138  int32 m_indexB;
    -
    139  b2Vec2 m_uA;
    -
    140  b2Vec2 m_uB;
    -
    141  b2Vec2 m_rA;
    -
    142  b2Vec2 m_rB;
    -
    143  b2Vec2 m_localCenterA;
    -
    144  b2Vec2 m_localCenterB;
    -
    145  float32 m_invMassA;
    -
    146  float32 m_invMassB;
    -
    147  float32 m_invIA;
    -
    148  float32 m_invIB;
    -
    149  float32 m_mass;
    -
    150 };
    -
    151 
    -
    152 #endif
    -
    float32 GetReactionTorque(float32 inv_dt) const
    Get the reaction torque on bodyB in N*m.
    Definition: b2PulleyJoint.cpp:278
    -
    b2Vec2 GetAnchorB() const
    Get the anchor point on bodyB in world coordinates.
    Definition: b2PulleyJoint.cpp:267
    -
    b2Body * bodyA
    The first attached body.
    Definition: b2Joint.h:92
    -
    b2Vec2 GetGroundAnchorA() const
    Get the first ground anchor.
    Definition: b2PulleyJoint.cpp:284
    -
    float32 GetCurrentLengthA() const
    Get the current length of the segment attached to bodyA.
    Definition: b2PulleyJoint.cpp:309
    -
    float32 GetLengthA() const
    Get the current length of the segment attached to bodyA.
    Definition: b2PulleyJoint.cpp:294
    -
    b2Body * bodyB
    The second attached body.
    Definition: b2Joint.h:95
    -
    float32 lengthB
    The a reference length for the segment attached to bodyB.
    Definition: b2PulleyJoint.h:65
    -
    void ShiftOrigin(const b2Vec2 &newOrigin)
    Implement b2Joint::ShiftOrigin.
    Definition: b2PulleyJoint.cpp:344
    -
    Definition: b2Joint.h:103
    -
    float32 GetRatio() const
    Get the pulley ratio.
    Definition: b2PulleyJoint.cpp:304
    -
    float32 GetCurrentLengthB() const
    Get the current length of the segment attached to bodyB.
    Definition: b2PulleyJoint.cpp:317
    -
    void Set(float32 x_, float32 y_)
    Set this vector to some specified coordinates.
    Definition: b2Math.h:65
    -
    float32 ratio
    The pulley ratio, used to simulate a block-and-tackle.
    Definition: b2PulleyJoint.h:68
    -
    void Dump()
    Dump joint to dmLog.
    Definition: b2PulleyJoint.cpp:325
    -
    b2Vec2 GetGroundAnchorB() const
    Get the second ground anchor.
    Definition: b2PulleyJoint.cpp:289
    -
    b2JointType type
    The joint type is set automatically for concrete joint types.
    Definition: b2Joint.h:86
    -
    bool collideConnected
    Set this flag to true if the attached bodies should collide.
    Definition: b2Joint.h:98
    -
    b2Vec2 GetReactionForce(float32 inv_dt) const
    Get the reaction force on bodyB at the joint anchor in Newtons.
    Definition: b2PulleyJoint.cpp:272
    -
    Solver Data.
    Definition: b2TimeStep.h:63
    -
    Joint definitions are used to construct joints.
    Definition: b2Joint.h:74
    -
    Definition: b2PulleyJoint.h:28
    -
    A rigid body. These are created via b2World::CreateBody.
    Definition: b2Body.h:126
    -
    b2Vec2 groundAnchorA
    The first ground anchor in world coordinates. This point never moves.
    Definition: b2PulleyJoint.h:50
    -
    float32 GetLengthB() const
    Get the current length of the segment attached to bodyB.
    Definition: b2PulleyJoint.cpp:299
    -
    float32 lengthA
    The a reference length for the segment attached to bodyA.
    Definition: b2PulleyJoint.h:62
    -
    A 2D column vector.
    Definition: b2Math.h:53
    -
    b2Vec2 GetAnchorA() const
    Get the anchor point on bodyA in world coordinates.
    Definition: b2PulleyJoint.cpp:262
    -
    b2Vec2 localAnchorB
    The local anchor point relative to bodyB&#39;s origin.
    Definition: b2PulleyJoint.h:59
    -
    b2Vec2 localAnchorA
    The local anchor point relative to bodyA&#39;s origin.
    Definition: b2PulleyJoint.h:56
    -
    Definition: b2PulleyJoint.h:79
    -
    void Initialize(b2Body *bodyA, b2Body *bodyB, const b2Vec2 &groundAnchorA, const b2Vec2 &groundAnchorB, const b2Vec2 &anchorA, const b2Vec2 &anchorB, float32 ratio)
    Initialize the bodies, anchors, lengths, max lengths, and ratio using the world anchors.
    Definition: b2PulleyJoint.cpp:35
    -
    b2Vec2 groundAnchorB
    The second ground anchor in world coordinates. This point never moves.
    Definition: b2PulleyJoint.h:53
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_revolute_joint_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_revolute_joint_8h_source.html deleted file mode 100644 index ab8acf2..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_revolute_joint_8h_source.html +++ /dev/null @@ -1,298 +0,0 @@ - - - - - - -Box2D: b2RevoluteJoint.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2RevoluteJoint.h
    -
    -
    -
    1 /*
    -
    2 * Copyright (c) 2006-2011 Erin Catto http://www.box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_REVOLUTE_JOINT_H
    -
    20 #define B2_REVOLUTE_JOINT_H
    -
    21 
    -
    22 #include <Box2D/Dynamics/Joints/b2Joint.h>
    -
    23 
    - -
    36 {
    - -
    38  {
    -
    39  type = e_revoluteJoint;
    -
    40  localAnchorA.Set(0.0f, 0.0f);
    -
    41  localAnchorB.Set(0.0f, 0.0f);
    -
    42  referenceAngle = 0.0f;
    -
    43  lowerAngle = 0.0f;
    -
    44  upperAngle = 0.0f;
    -
    45  maxMotorTorque = 0.0f;
    -
    46  motorSpeed = 0.0f;
    -
    47  enableLimit = false;
    -
    48  enableMotor = false;
    -
    49  }
    -
    50 
    -
    53  void Initialize(b2Body* bodyA, b2Body* bodyB, const b2Vec2& anchor);
    -
    54 
    - -
    57 
    - -
    60 
    -
    62  float32 referenceAngle;
    -
    63 
    - -
    66 
    -
    68  float32 lowerAngle;
    -
    69 
    -
    71  float32 upperAngle;
    -
    72 
    - -
    75 
    -
    77  float32 motorSpeed;
    -
    78 
    -
    81  float32 maxMotorTorque;
    -
    82 };
    -
    83 
    -
    90 class b2RevoluteJoint : public b2Joint
    -
    91 {
    -
    92 public:
    -
    93  b2Vec2 GetAnchorA() const;
    -
    94  b2Vec2 GetAnchorB() const;
    -
    95 
    -
    97  const b2Vec2& GetLocalAnchorA() const { return m_localAnchorA; }
    -
    98 
    -
    100  const b2Vec2& GetLocalAnchorB() const { return m_localAnchorB; }
    -
    101 
    -
    103  float32 GetReferenceAngle() const { return m_referenceAngle; }
    -
    104 
    -
    106  float32 GetJointAngle() const;
    -
    107 
    -
    109  float32 GetJointSpeed() const;
    -
    110 
    -
    112  bool IsLimitEnabled() const;
    -
    113 
    -
    115  void EnableLimit(bool flag);
    -
    116 
    -
    118  float32 GetLowerLimit() const;
    -
    119 
    -
    121  float32 GetUpperLimit() const;
    -
    122 
    -
    124  void SetLimits(float32 lower, float32 upper);
    -
    125 
    -
    127  bool IsMotorEnabled() const;
    -
    128 
    -
    130  void EnableMotor(bool flag);
    -
    131 
    -
    133  void SetMotorSpeed(float32 speed);
    -
    134 
    -
    136  float32 GetMotorSpeed() const;
    -
    137 
    -
    139  void SetMaxMotorTorque(float32 torque);
    -
    140  float32 GetMaxMotorTorque() const { return m_maxMotorTorque; }
    -
    141 
    -
    144  b2Vec2 GetReactionForce(float32 inv_dt) const;
    -
    145 
    -
    148  float32 GetReactionTorque(float32 inv_dt) const;
    -
    149 
    -
    152  float32 GetMotorTorque(float32 inv_dt) const;
    -
    153 
    -
    155  void Dump();
    -
    156 
    -
    157 protected:
    -
    158 
    -
    159  friend class b2Joint;
    -
    160  friend class b2GearJoint;
    -
    161 
    - -
    163 
    -
    164  void InitVelocityConstraints(const b2SolverData& data);
    -
    165  void SolveVelocityConstraints(const b2SolverData& data);
    -
    166  bool SolvePositionConstraints(const b2SolverData& data);
    -
    167 
    -
    168  // Solver shared
    -
    169  b2Vec2 m_localAnchorA;
    -
    170  b2Vec2 m_localAnchorB;
    -
    171  b2Vec3 m_impulse;
    -
    172  float32 m_motorImpulse;
    -
    173 
    -
    174  bool m_enableMotor;
    -
    175  float32 m_maxMotorTorque;
    -
    176  float32 m_motorSpeed;
    -
    177 
    -
    178  bool m_enableLimit;
    -
    179  float32 m_referenceAngle;
    -
    180  float32 m_lowerAngle;
    -
    181  float32 m_upperAngle;
    -
    182 
    -
    183  // Solver temp
    -
    184  int32 m_indexA;
    -
    185  int32 m_indexB;
    -
    186  b2Vec2 m_rA;
    -
    187  b2Vec2 m_rB;
    -
    188  b2Vec2 m_localCenterA;
    -
    189  b2Vec2 m_localCenterB;
    -
    190  float32 m_invMassA;
    -
    191  float32 m_invMassB;
    -
    192  float32 m_invIA;
    -
    193  float32 m_invIB;
    -
    194  b2Mat33 m_mass; // effective mass for point-to-point constraint.
    -
    195  float32 m_motorMass; // effective mass for motor/limit angular constraint.
    -
    196  b2LimitState m_limitState;
    -
    197 };
    -
    198 
    -
    199 inline float32 b2RevoluteJoint::GetMotorSpeed() const
    -
    200 {
    -
    201  return m_motorSpeed;
    -
    202 }
    -
    203 
    -
    204 #endif
    -
    A 2D column vector with 3 elements.
    Definition: b2Math.h:144
    -
    bool IsLimitEnabled() const
    Is the joint limit enabled?
    Definition: b2RevoluteJoint.cpp:443
    -
    b2Body * bodyA
    The first attached body.
    Definition: b2Joint.h:92
    -
    float32 GetJointSpeed() const
    Get the current joint angle speed in radians per second.
    Definition: b2RevoluteJoint.cpp:405
    -
    float32 motorSpeed
    The desired motor speed. Usually in radians per second.
    Definition: b2RevoluteJoint.h:77
    -
    void Initialize(b2Body *bodyA, b2Body *bodyB, const b2Vec2 &anchor)
    Definition: b2RevoluteJoint.cpp:36
    -
    A 3-by-3 matrix. Stored in column-major order.
    Definition: b2Math.h:257
    -
    void EnableMotor(bool flag)
    Enable/disable the joint motor.
    Definition: b2RevoluteJoint.cpp:417
    -
    b2Body * bodyB
    The second attached body.
    Definition: b2Joint.h:95
    -
    float32 GetUpperLimit() const
    Get the upper joint limit in radians.
    Definition: b2RevoluteJoint.cpp:464
    -
    b2Vec2 GetAnchorB() const
    Get the anchor point on bodyB in world coordinates.
    Definition: b2RevoluteJoint.cpp:382
    -
    bool enableMotor
    A flag to enable the joint motor.
    Definition: b2RevoluteJoint.h:74
    -
    void SetMaxMotorTorque(float32 torque)
    Set the maximum motor torque, usually in N-m.
    Definition: b2RevoluteJoint.cpp:436
    -
    float32 GetJointAngle() const
    Get the current joint angle in radians.
    Definition: b2RevoluteJoint.cpp:398
    -
    Definition: b2Joint.h:103
    -
    b2Vec2 localAnchorB
    The local anchor point relative to bodyB&#39;s origin.
    Definition: b2RevoluteJoint.h:59
    -
    float32 lowerAngle
    The lower angle for the joint limit (radians).
    Definition: b2RevoluteJoint.h:68
    -
    void Set(float32 x_, float32 y_)
    Set this vector to some specified coordinates.
    Definition: b2Math.h:65
    -
    void Dump()
    Dump to b2Log.
    Definition: b2RevoluteJoint.cpp:483
    -
    const b2Vec2 & GetLocalAnchorA() const
    The local anchor point relative to bodyA&#39;s origin.
    Definition: b2RevoluteJoint.h:97
    -
    float32 GetReferenceAngle() const
    Get the reference angle.
    Definition: b2RevoluteJoint.h:103
    -
    void SetMotorSpeed(float32 speed)
    Set the motor speed in radians per second.
    Definition: b2RevoluteJoint.cpp:429
    -
    float32 GetMotorSpeed() const
    Get the motor speed in radians per second.
    Definition: b2RevoluteJoint.h:199
    -
    Definition: b2GearJoint.h:56
    -
    float32 referenceAngle
    The bodyB angle minus bodyA angle in the reference state (radians).
    Definition: b2RevoluteJoint.h:62
    -
    b2Vec2 localAnchorA
    The local anchor point relative to bodyA&#39;s origin.
    Definition: b2RevoluteJoint.h:56
    -
    b2JointType type
    The joint type is set automatically for concrete joint types.
    Definition: b2Joint.h:86
    -
    b2Vec2 GetAnchorA() const
    Get the anchor point on bodyA in world coordinates.
    Definition: b2RevoluteJoint.cpp:377
    -
    Solver Data.
    Definition: b2TimeStep.h:63
    -
    bool IsMotorEnabled() const
    Is the joint motor enabled?
    Definition: b2RevoluteJoint.cpp:412
    -
    const b2Vec2 & GetLocalAnchorB() const
    The local anchor point relative to bodyB&#39;s origin.
    Definition: b2RevoluteJoint.h:100
    -
    float32 upperAngle
    The upper angle for the joint limit (radians).
    Definition: b2RevoluteJoint.h:71
    -
    void EnableLimit(bool flag)
    Enable/disable the joint limit.
    Definition: b2RevoluteJoint.cpp:448
    -
    Definition: b2RevoluteJoint.h:90
    -
    Joint definitions are used to construct joints.
    Definition: b2Joint.h:74
    -
    bool enableLimit
    A flag to enable joint limits.
    Definition: b2RevoluteJoint.h:65
    -
    A rigid body. These are created via b2World::CreateBody.
    Definition: b2Body.h:126
    -
    Definition: b2RevoluteJoint.h:35
    -
    float32 GetLowerLimit() const
    Get the lower joint limit in radians.
    Definition: b2RevoluteJoint.cpp:459
    -
    float32 maxMotorTorque
    Definition: b2RevoluteJoint.h:81
    -
    A 2D column vector.
    Definition: b2Math.h:53
    -
    float32 GetMotorTorque(float32 inv_dt) const
    Definition: b2RevoluteJoint.cpp:424
    -
    void SetLimits(float32 lower, float32 upper)
    Set the joint limits in radians.
    Definition: b2RevoluteJoint.cpp:469
    -
    b2Vec2 GetReactionForce(float32 inv_dt) const
    Definition: b2RevoluteJoint.cpp:387
    -
    float32 GetReactionTorque(float32 inv_dt) const
    Definition: b2RevoluteJoint.cpp:393
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_rope_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_rope_8h_source.html deleted file mode 100644 index e179184..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_rope_8h_source.html +++ /dev/null @@ -1,207 +0,0 @@ - - - - - - -Box2D: b2Rope.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2Rope.h
    -
    -
    -
    1 /*
    -
    2 * Copyright (c) 2011 Erin Catto http://www.box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_ROPE_H
    -
    20 #define B2_ROPE_H
    -
    21 
    -
    22 #include <Box2D/Common/b2Math.h>
    -
    23 
    -
    24 class b2Draw;
    -
    25 
    -
    27 struct b2RopeDef
    -
    28 {
    -
    29  b2RopeDef()
    -
    30  {
    -
    31  vertices = NULL;
    -
    32  count = 0;
    -
    33  masses = NULL;
    -
    34  gravity.SetZero();
    -
    35  damping = 0.1f;
    -
    36  k2 = 0.9f;
    -
    37  k3 = 0.1f;
    -
    38  }
    -
    39 
    -
    41  b2Vec2* vertices;
    -
    42 
    -
    44  int32 count;
    -
    45 
    -
    47  float32* masses;
    -
    48 
    -
    50  b2Vec2 gravity;
    -
    51 
    -
    53  float32 damping;
    -
    54 
    -
    56  float32 k2;
    -
    57 
    -
    59  float32 k3;
    -
    60 };
    -
    61 
    -
    63 class b2Rope
    -
    64 {
    -
    65 public:
    -
    66  b2Rope();
    -
    67  ~b2Rope();
    -
    68 
    -
    70  void Initialize(const b2RopeDef* def);
    -
    71 
    -
    73  void Step(float32 timeStep, int32 iterations);
    -
    74 
    -
    76  int32 GetVertexCount() const
    -
    77  {
    -
    78  return m_count;
    -
    79  }
    -
    80 
    -
    82  const b2Vec2* GetVertices() const
    -
    83  {
    -
    84  return m_ps;
    -
    85  }
    -
    86 
    -
    88  void Draw(b2Draw* draw) const;
    -
    89 
    -
    91  void SetAngle(float32 angle);
    -
    92 
    -
    93 private:
    -
    94 
    -
    95  void SolveC2();
    -
    96  void SolveC3();
    -
    97 
    -
    98  int32 m_count;
    -
    99  b2Vec2* m_ps;
    -
    100  b2Vec2* m_p0s;
    -
    101  b2Vec2* m_vs;
    -
    102 
    -
    103  float32* m_ims;
    -
    104 
    -
    105  float32* m_Ls;
    -
    106  float32* m_as;
    -
    107 
    -
    108  b2Vec2 m_gravity;
    -
    109  float32 m_damping;
    -
    110 
    -
    111  float32 m_k2;
    -
    112  float32 m_k3;
    -
    113 };
    -
    114 
    -
    115 #endif
    -
    float32 k2
    Stretching stiffness.
    Definition: b2Rope.h:56
    -
    void SetZero()
    Set this vector to all zeros.
    Definition: b2Math.h:62
    -
    Definition: b2Draw.h:35
    -
    A 2D column vector.
    Definition: b2Math.h:53
    -
    Definition: b2Rope.h:63
    -
    Definition: b2Rope.h:27
    -
    float32 k3
    Bending stiffness. Values above 0.5 can make the simulation blow up.
    Definition: b2Rope.h:59
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_rope_joint_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_rope_joint_8h_source.html deleted file mode 100644 index 83cbfb0..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_rope_joint_8h_source.html +++ /dev/null @@ -1,212 +0,0 @@ - - - - - - -Box2D: b2RopeJoint.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2RopeJoint.h
    -
    -
    -
    1 /*
    -
    2 * Copyright (c) 2006-2011 Erin Catto http://www.box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_ROPE_JOINT_H
    -
    20 #define B2_ROPE_JOINT_H
    -
    21 
    -
    22 #include <Box2D/Dynamics/Joints/b2Joint.h>
    -
    23 
    -
    28 struct b2RopeJointDef : public b2JointDef
    -
    29 {
    - -
    31  {
    -
    32  type = e_ropeJoint;
    -
    33  localAnchorA.Set(-1.0f, 0.0f);
    -
    34  localAnchorB.Set(1.0f, 0.0f);
    -
    35  maxLength = 0.0f;
    -
    36  }
    -
    37 
    - -
    40 
    - -
    43 
    -
    47  float32 maxLength;
    -
    48 };
    -
    49 
    -
    58 class b2RopeJoint : public b2Joint
    -
    59 {
    -
    60 public:
    -
    61  b2Vec2 GetAnchorA() const;
    -
    62  b2Vec2 GetAnchorB() const;
    -
    63 
    -
    64  b2Vec2 GetReactionForce(float32 inv_dt) const;
    -
    65  float32 GetReactionTorque(float32 inv_dt) const;
    -
    66 
    -
    68  const b2Vec2& GetLocalAnchorA() const { return m_localAnchorA; }
    -
    69 
    -
    71  const b2Vec2& GetLocalAnchorB() const { return m_localAnchorB; }
    -
    72 
    -
    74  void SetMaxLength(float32 length) { m_maxLength = length; }
    -
    75  float32 GetMaxLength() const;
    -
    76 
    -
    77  b2LimitState GetLimitState() const;
    -
    78 
    -
    80  void Dump();
    -
    81 
    -
    82 protected:
    -
    83 
    -
    84  friend class b2Joint;
    -
    85  b2RopeJoint(const b2RopeJointDef* data);
    -
    86 
    -
    87  void InitVelocityConstraints(const b2SolverData& data);
    -
    88  void SolveVelocityConstraints(const b2SolverData& data);
    -
    89  bool SolvePositionConstraints(const b2SolverData& data);
    -
    90 
    -
    91  // Solver shared
    -
    92  b2Vec2 m_localAnchorA;
    -
    93  b2Vec2 m_localAnchorB;
    -
    94  float32 m_maxLength;
    -
    95  float32 m_length;
    -
    96  float32 m_impulse;
    -
    97 
    -
    98  // Solver temp
    -
    99  int32 m_indexA;
    -
    100  int32 m_indexB;
    -
    101  b2Vec2 m_u;
    -
    102  b2Vec2 m_rA;
    -
    103  b2Vec2 m_rB;
    -
    104  b2Vec2 m_localCenterA;
    -
    105  b2Vec2 m_localCenterB;
    -
    106  float32 m_invMassA;
    -
    107  float32 m_invMassB;
    -
    108  float32 m_invIA;
    -
    109  float32 m_invIB;
    -
    110  float32 m_mass;
    -
    111  b2LimitState m_state;
    -
    112 };
    -
    113 
    -
    114 #endif
    -
    Definition: b2RopeJoint.h:58
    -
    const b2Vec2 & GetLocalAnchorA() const
    The local anchor point relative to bodyA&#39;s origin.
    Definition: b2RopeJoint.h:68
    -
    Definition: b2Joint.h:103
    -
    void Dump()
    Dump joint to dmLog.
    Definition: b2RopeJoint.cpp:228
    -
    float32 maxLength
    Definition: b2RopeJoint.h:47
    -
    void Set(float32 x_, float32 y_)
    Set this vector to some specified coordinates.
    Definition: b2Math.h:65
    -
    b2JointType type
    The joint type is set automatically for concrete joint types.
    Definition: b2Joint.h:86
    -
    Solver Data.
    Definition: b2TimeStep.h:63
    -
    const b2Vec2 & GetLocalAnchorB() const
    The local anchor point relative to bodyB&#39;s origin.
    Definition: b2RopeJoint.h:71
    -
    Joint definitions are used to construct joints.
    Definition: b2Joint.h:74
    -
    void SetMaxLength(float32 length)
    Set/Get the maximum length of the rope.
    Definition: b2RopeJoint.h:74
    -
    b2Vec2 GetReactionForce(float32 inv_dt) const
    Get the reaction force on bodyB at the joint anchor in Newtons.
    Definition: b2RopeJoint.cpp:206
    -
    b2Vec2 GetAnchorB() const
    Get the anchor point on bodyB in world coordinates.
    Definition: b2RopeJoint.cpp:201
    -
    float32 GetReactionTorque(float32 inv_dt) const
    Get the reaction torque on bodyB in N*m.
    Definition: b2RopeJoint.cpp:212
    -
    Definition: b2RopeJoint.h:28
    -
    A 2D column vector.
    Definition: b2Math.h:53
    -
    b2Vec2 localAnchorB
    The local anchor point relative to bodyB&#39;s origin.
    Definition: b2RopeJoint.h:42
    -
    b2Vec2 localAnchorA
    The local anchor point relative to bodyA&#39;s origin.
    Definition: b2RopeJoint.h:39
    -
    b2Vec2 GetAnchorA() const
    Get the anchor point on bodyA in world coordinates.
    Definition: b2RopeJoint.cpp:196
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_settings_8h.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_settings_8h.html deleted file mode 100644 index f5195d1..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_settings_8h.html +++ /dev/null @@ -1,411 +0,0 @@ - - - - - - -Box2D: b2Settings.h File Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    - -
    -
    b2Settings.h File Reference
    -
    -
    -
    #include <stddef.h>
    -#include <assert.h>
    -#include <float.h>
    -
    -

    Go to the source code of this file.

    - - - - -

    -Classes

    struct  b2Version
     
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Macros

    -#define B2_NOT_USED(x)   ((void)(x))
     
    -#define b2Assert(A)   assert(A)
     
    -#define b2_maxFloat   FLT_MAX
     
    -#define b2_epsilon   FLT_EPSILON
     
    -#define b2_pi   3.14159265359f
     
    #define b2_maxManifoldPoints   2
     
    #define b2_maxPolygonVertices   8
     
    #define b2_aabbExtension   0.1f
     
    #define b2_aabbMultiplier   2.0f
     
    #define b2_linearSlop   0.005f
     
    #define b2_angularSlop   (2.0f / 180.0f * b2_pi)
     
    #define b2_polygonRadius   (2.0f * b2_linearSlop)
     
    -#define b2_maxSubSteps   8
     Maximum number of sub-steps per contact in continuous physics simulation.
     
    -#define b2_maxTOIContacts   32
     Maximum number of contacts to be handled to solve a TOI impact.
     
    #define b2_velocityThreshold   1.0f
     
    #define b2_maxLinearCorrection   0.2f
     
    #define b2_maxAngularCorrection   (8.0f / 180.0f * b2_pi)
     
    #define b2_maxTranslation   2.0f
     
    -#define b2_maxTranslationSquared   (b2_maxTranslation * b2_maxTranslation)
     
    #define b2_maxRotation   (0.5f * b2_pi)
     
    -#define b2_maxRotationSquared   (b2_maxRotation * b2_maxRotation)
     
    #define b2_baumgarte   0.2f
     
    -#define b2_toiBaugarte   0.75f
     
    -#define b2_timeToSleep   0.5f
     The time that a body must be still before it will go to sleep.
     
    -#define b2_linearSleepTolerance   0.01f
     A body cannot sleep if its linear velocity is above this tolerance.
     
    -#define b2_angularSleepTolerance   (2.0f / 180.0f * b2_pi)
     A body cannot sleep if its angular velocity is above this tolerance.
     
    - - - - - - - - - - - - - - - - - -

    -Typedefs

    -typedef signed char int8
     
    -typedef signed short int16
     
    -typedef signed int int32
     
    -typedef unsigned char uint8
     
    -typedef unsigned short uint16
     
    -typedef unsigned int uint32
     
    -typedef float float32
     
    -typedef double float64
     
    - - - - - - - - - - -

    -Functions

    -void * b2Alloc (int32 size)
     Implement this function to use your own memory allocator.
     
    -void b2Free (void *mem)
     If you implement b2Alloc, you should also implement this function.
     
    -void b2Log (const char *string,...)
     Logging function.
     
    - - - - -

    -Variables

    -b2Version b2_version
     Current version.
     
    -

    Detailed Description

    -

    Global tuning constants based on meters-kilograms-seconds (MKS) units.

    -

    Macro Definition Documentation

    - -
    -
    - - - - -
    #define b2_aabbExtension   0.1f
    -
    -

    This is used to fatten AABBs in the dynamic tree. This allows proxies to move by a small amount without triggering a tree adjustment. This is in meters.

    - -
    -
    - -
    -
    - - - - -
    #define b2_aabbMultiplier   2.0f
    -
    -

    This is used to fatten AABBs in the dynamic tree. This is used to predict the future position based on the current displacement. This is a dimensionless multiplier.

    - -
    -
    - -
    -
    - - - - -
    #define b2_angularSlop   (2.0f / 180.0f * b2_pi)
    -
    -

    A small angle used as a collision and constraint tolerance. Usually it is chosen to be numerically significant, but visually insignificant.

    - -
    -
    - -
    -
    - - - - -
    #define b2_baumgarte   0.2f
    -
    -

    This scale factor controls how fast overlap is resolved. Ideally this would be 1 so that overlap is removed in one time step. However using values close to 1 often lead to overshoot.

    - -
    -
    - -
    -
    - - - - -
    #define b2_linearSlop   0.005f
    -
    -

    A small length used as a collision and constraint tolerance. Usually it is chosen to be numerically significant, but visually insignificant.

    - -
    -
    - -
    -
    - - - - -
    #define b2_maxAngularCorrection   (8.0f / 180.0f * b2_pi)
    -
    -

    The maximum angular position correction used when solving constraints. This helps to prevent overshoot.

    - -
    -
    - -
    -
    - - - - -
    #define b2_maxLinearCorrection   0.2f
    -
    -

    The maximum linear position correction used when solving constraints. This helps to prevent overshoot.

    - -
    -
    - -
    -
    - - - - -
    #define b2_maxManifoldPoints   2
    -
    -

    The maximum number of contact points between two convex shapes. Do not change this value.

    - -
    -
    - -
    -
    - - - - -
    #define b2_maxPolygonVertices   8
    -
    -

    The maximum number of vertices on a convex polygon. You cannot increase this too much because b2BlockAllocator has a maximum object size.

    - -
    -
    - -
    -
    - - - - -
    #define b2_maxRotation   (0.5f * b2_pi)
    -
    -

    The maximum angular velocity of a body. This limit is very large and is used to prevent numerical problems. You shouldn't need to adjust this.

    - -
    -
    - -
    -
    - - - - -
    #define b2_maxTranslation   2.0f
    -
    -

    The maximum linear velocity of a body. This limit is very large and is used to prevent numerical problems. You shouldn't need to adjust this.

    - -
    -
    - -
    -
    - - - - -
    #define b2_polygonRadius   (2.0f * b2_linearSlop)
    -
    -

    The radius of the polygon/edge shape skin. This should not be modified. Making this smaller means polygons will have an insufficient buffer for continuous collision. Making it larger may create artifacts for vertex collision.

    - -
    -
    - -
    -
    - - - - -
    #define b2_velocityThreshold   1.0f
    -
    -

    A velocity threshold for elastic collisions. Any collision with a relative linear velocity below this threshold will be treated as inelastic.

    - -
    -
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_settings_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_settings_8h_source.html deleted file mode 100644 index 5e62068..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_settings_8h_source.html +++ /dev/null @@ -1,215 +0,0 @@ - - - - - - -Box2D: b2Settings.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2Settings.h
    -
    -
    -Go to the documentation of this file.
    1 /*
    -
    2 * Copyright (c) 2006-2009 Erin Catto http://www.box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_SETTINGS_H
    -
    20 #define B2_SETTINGS_H
    -
    21 
    -
    22 #include <stddef.h>
    -
    23 #include <assert.h>
    -
    24 #include <float.h>
    -
    25 
    -
    26 #define B2_NOT_USED(x) ((void)(x))
    -
    27 #define b2Assert(A) assert(A)
    -
    28 
    -
    29 typedef signed char int8;
    -
    30 typedef signed short int16;
    -
    31 typedef signed int int32;
    -
    32 typedef unsigned char uint8;
    -
    33 typedef unsigned short uint16;
    -
    34 typedef unsigned int uint32;
    -
    35 typedef float float32;
    -
    36 typedef double float64;
    -
    37 
    -
    38 #define b2_maxFloat FLT_MAX
    -
    39 #define b2_epsilon FLT_EPSILON
    -
    40 #define b2_pi 3.14159265359f
    -
    41 
    -
    45 
    -
    46 // Collision
    -
    47 
    -
    50 #define b2_maxManifoldPoints 2
    -
    51 
    -
    54 #define b2_maxPolygonVertices 8
    -
    55 
    -
    59 #define b2_aabbExtension 0.1f
    -
    60 
    -
    64 #define b2_aabbMultiplier 2.0f
    -
    65 
    -
    68 #define b2_linearSlop 0.005f
    -
    69 
    -
    72 #define b2_angularSlop (2.0f / 180.0f * b2_pi)
    -
    73 
    -
    77 #define b2_polygonRadius (2.0f * b2_linearSlop)
    -
    78 
    -
    80 #define b2_maxSubSteps 8
    -
    81 
    -
    82 
    -
    83 // Dynamics
    -
    84 
    -
    86 #define b2_maxTOIContacts 32
    -
    87 
    -
    90 #define b2_velocityThreshold 1.0f
    -
    91 
    -
    94 #define b2_maxLinearCorrection 0.2f
    -
    95 
    -
    98 #define b2_maxAngularCorrection (8.0f / 180.0f * b2_pi)
    -
    99 
    -
    102 #define b2_maxTranslation 2.0f
    -
    103 #define b2_maxTranslationSquared (b2_maxTranslation * b2_maxTranslation)
    -
    104 
    -
    107 #define b2_maxRotation (0.5f * b2_pi)
    -
    108 #define b2_maxRotationSquared (b2_maxRotation * b2_maxRotation)
    -
    109 
    -
    113 #define b2_baumgarte 0.2f
    -
    114 #define b2_toiBaugarte 0.75f
    -
    115 
    -
    116 
    -
    117 // Sleep
    -
    118 
    -
    120 #define b2_timeToSleep 0.5f
    -
    121 
    -
    123 #define b2_linearSleepTolerance 0.01f
    -
    124 
    -
    126 #define b2_angularSleepTolerance (2.0f / 180.0f * b2_pi)
    -
    127 
    -
    128 // Memory Allocation
    -
    129 
    -
    131 void* b2Alloc(int32 size);
    -
    132 
    -
    134 void b2Free(void* mem);
    -
    135 
    -
    137 void b2Log(const char* string, ...);
    -
    138 
    -
    141 struct b2Version
    -
    142 {
    -
    143  int32 major;
    -
    144  int32 minor;
    -
    145  int32 revision;
    -
    146 };
    -
    147 
    -
    149 extern b2Version b2_version;
    -
    150 
    -
    151 #endif
    -
    void b2Log(const char *string,...)
    Logging function.
    Definition: b2Settings.cpp:38
    -
    int32 minor
    incremental changes
    Definition: b2Settings.h:144
    -
    void b2Free(void *mem)
    If you implement b2Alloc, you should also implement this function.
    Definition: b2Settings.cpp:32
    -
    void * b2Alloc(int32 size)
    Implement this function to use your own memory allocator.
    Definition: b2Settings.cpp:27
    -
    b2Version b2_version
    Current version.
    Definition: b2Settings.cpp:24
    -
    Definition: b2Settings.h:141
    -
    int32 major
    significant changes
    Definition: b2Settings.h:143
    -
    int32 revision
    bug fixes
    Definition: b2Settings.h:145
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_shape_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_shape_8h_source.html deleted file mode 100644 index 6ec55bf..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_shape_8h_source.html +++ /dev/null @@ -1,193 +0,0 @@ - - - - - - -Box2D: b2Shape.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2Shape.h
    -
    -
    -
    1 /*
    -
    2 * Copyright (c) 2006-2009 Erin Catto http://www.box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_SHAPE_H
    -
    20 #define B2_SHAPE_H
    -
    21 
    -
    22 #include <Box2D/Common/b2BlockAllocator.h>
    -
    23 #include <Box2D/Common/b2Math.h>
    - -
    25 
    -
    27 struct b2MassData
    -
    28 {
    -
    30  float32 mass;
    -
    31 
    - -
    34 
    -
    36  float32 I;
    -
    37 };
    -
    38 
    -
    42 class b2Shape
    -
    43 {
    -
    44 public:
    -
    45 
    -
    46  enum Type
    -
    47  {
    -
    48  e_circle = 0,
    -
    49  e_edge = 1,
    -
    50  e_polygon = 2,
    -
    51  e_chain = 3,
    -
    52  e_typeCount = 4
    -
    53  };
    -
    54 
    -
    55  virtual ~b2Shape() {}
    -
    56 
    -
    58  virtual b2Shape* Clone(b2BlockAllocator* allocator) const = 0;
    -
    59 
    -
    62  Type GetType() const;
    -
    63 
    -
    65  virtual int32 GetChildCount() const = 0;
    -
    66 
    -
    70  virtual bool TestPoint(const b2Transform& xf, const b2Vec2& p) const = 0;
    -
    71 
    -
    77  virtual bool RayCast(b2RayCastOutput* output, const b2RayCastInput& input,
    -
    78  const b2Transform& transform, int32 childIndex) const = 0;
    -
    79 
    -
    84  virtual void ComputeAABB(b2AABB* aabb, const b2Transform& xf, int32 childIndex) const = 0;
    -
    85 
    -
    90  virtual void ComputeMass(b2MassData* massData, float32 density) const = 0;
    -
    91 
    -
    92  Type m_type;
    -
    93  float32 m_radius;
    -
    94 };
    -
    95 
    -
    96 inline b2Shape::Type b2Shape::GetType() const
    -
    97 {
    -
    98  return m_type;
    -
    99 }
    -
    100 
    -
    101 #endif
    -
    Definition: b2Math.h:350
    -
    Type GetType() const
    Definition: b2Shape.h:96
    -
    float32 I
    The rotational inertia of the shape about the local origin.
    Definition: b2Shape.h:36
    -
    Definition: b2BlockAllocator.h:35
    -
    virtual int32 GetChildCount() const =0
    Get the number of child primitives.
    -
    This holds the mass data computed for a shape.
    Definition: b2Shape.h:27
    -
    Definition: b2Shape.h:42
    - -
    Definition: b2Collision.h:155
    -
    virtual void ComputeAABB(b2AABB *aabb, const b2Transform &xf, int32 childIndex) const =0
    -
    An axis aligned bounding box.
    Definition: b2Collision.h:162
    -
    float32 mass
    The mass of the shape, usually in kilograms.
    Definition: b2Shape.h:30
    -
    b2Vec2 center
    The position of the shape&#39;s centroid relative to the shape&#39;s origin.
    Definition: b2Shape.h:33
    -
    Ray-cast input data. The ray extends from p1 to p1 + maxFraction * (p2 - p1).
    Definition: b2Collision.h:147
    -
    virtual bool RayCast(b2RayCastOutput *output, const b2RayCastInput &input, const b2Transform &transform, int32 childIndex) const =0
    -
    virtual b2Shape * Clone(b2BlockAllocator *allocator) const =0
    Clone the concrete shape using the provided allocator.
    -
    virtual void ComputeMass(b2MassData *massData, float32 density) const =0
    -
    A 2D column vector.
    Definition: b2Math.h:53
    -
    virtual bool TestPoint(const b2Transform &xf, const b2Vec2 &p) const =0
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_stack_allocator_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_stack_allocator_8h_source.html deleted file mode 100644 index 32fd410..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_stack_allocator_8h_source.html +++ /dev/null @@ -1,163 +0,0 @@ - - - - - - -Box2D: b2StackAllocator.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2StackAllocator.h
    -
    -
    -
    1 /*
    -
    2 * Copyright (c) 2006-2009 Erin Catto http://www.box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_STACK_ALLOCATOR_H
    -
    20 #define B2_STACK_ALLOCATOR_H
    -
    21 
    - -
    23 
    -
    24 const int32 b2_stackSize = 100 * 1024; // 100k
    -
    25 const int32 b2_maxStackEntries = 32;
    -
    26 
    - -
    28 {
    -
    29  char* data;
    -
    30  int32 size;
    -
    31  bool usedMalloc;
    -
    32 };
    -
    33 
    -
    34 // This is a stack allocator used for fast per step allocations.
    -
    35 // You must nest allocate/free pairs. The code will assert
    -
    36 // if you try to interleave multiple allocate/free pairs.
    - -
    38 {
    -
    39 public:
    - - -
    42 
    -
    43  void* Allocate(int32 size);
    -
    44  void Free(void* p);
    -
    45 
    -
    46  int32 GetMaxAllocation() const;
    -
    47 
    -
    48 private:
    -
    49 
    -
    50  char m_data[b2_stackSize];
    -
    51  int32 m_index;
    -
    52 
    -
    53  int32 m_allocation;
    -
    54  int32 m_maxAllocation;
    -
    55 
    -
    56  b2StackEntry m_entries[b2_maxStackEntries];
    -
    57  int32 m_entryCount;
    -
    58 };
    -
    59 
    -
    60 #endif
    -
    Definition: b2StackAllocator.h:37
    -
    Definition: b2StackAllocator.h:27
    - -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_time_of_impact_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_time_of_impact_8h_source.html deleted file mode 100644 index 44f1308..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_time_of_impact_8h_source.html +++ /dev/null @@ -1,156 +0,0 @@ - - - - - - -Box2D: b2TimeOfImpact.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2TimeOfImpact.h
    -
    -
    -
    1 /*
    -
    2 * Copyright (c) 2006-2009 Erin Catto http://www.box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_TIME_OF_IMPACT_H
    -
    20 #define B2_TIME_OF_IMPACT_H
    -
    21 
    -
    22 #include <Box2D/Common/b2Math.h>
    -
    23 #include <Box2D/Collision/b2Distance.h>
    -
    24 
    -
    26 struct b2TOIInput
    -
    27 {
    -
    28  b2DistanceProxy proxyA;
    -
    29  b2DistanceProxy proxyB;
    -
    30  b2Sweep sweepA;
    -
    31  b2Sweep sweepB;
    -
    32  float32 tMax; // defines sweep interval [0, tMax]
    -
    33 };
    -
    34 
    -
    35 // Output parameters for b2TimeOfImpact.
    - -
    37 {
    -
    38  enum State
    -
    39  {
    -
    40  e_unknown,
    -
    41  e_failed,
    -
    42  e_overlapped,
    -
    43  e_touching,
    -
    44  e_separated
    -
    45  };
    -
    46 
    -
    47  State state;
    -
    48  float32 t;
    -
    49 };
    -
    50 
    -
    56 void b2TimeOfImpact(b2TOIOutput* output, const b2TOIInput* input);
    -
    57 
    -
    58 #endif
    -
    Definition: b2TimeOfImpact.h:36
    -
    Input parameters for b2TimeOfImpact.
    Definition: b2TimeOfImpact.h:26
    -
    Definition: b2Math.h:380
    -
    Definition: b2Distance.h:29
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_time_step_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_time_step_8h_source.html deleted file mode 100644 index 5516bc2..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_time_step_8h_source.html +++ /dev/null @@ -1,171 +0,0 @@ - - - - - - -Box2D: b2TimeStep.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2TimeStep.h
    -
    -
    -
    1 /*
    -
    2 * Copyright (c) 2006-2011 Erin Catto http://www.box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_TIME_STEP_H
    -
    20 #define B2_TIME_STEP_H
    -
    21 
    -
    22 #include <Box2D/Common/b2Math.h>
    -
    23 
    -
    25 struct b2Profile
    -
    26 {
    -
    27  float32 step;
    -
    28  float32 collide;
    -
    29  float32 solve;
    -
    30  float32 solveInit;
    -
    31  float32 solveVelocity;
    -
    32  float32 solvePosition;
    -
    33  float32 broadphase;
    -
    34  float32 solveTOI;
    -
    35 };
    -
    36 
    -
    38 struct b2TimeStep
    -
    39 {
    -
    40  float32 dt; // time step
    -
    41  float32 inv_dt; // inverse time step (0 if dt == 0).
    -
    42  float32 dtRatio; // dt * inv_dt0
    -
    43  int32 velocityIterations;
    -
    44  int32 positionIterations;
    -
    45  bool warmStarting;
    -
    46 };
    -
    47 
    -
    49 struct b2Position
    -
    50 {
    -
    51  b2Vec2 c;
    -
    52  float32 a;
    -
    53 };
    -
    54 
    -
    56 struct b2Velocity
    -
    57 {
    -
    58  b2Vec2 v;
    -
    59  float32 w;
    -
    60 };
    -
    61 
    - -
    64 {
    -
    65  b2TimeStep step;
    -
    66  b2Position* positions;
    -
    67  b2Velocity* velocities;
    -
    68 };
    -
    69 
    -
    70 #endif
    -
    Profiling data. Times are in milliseconds.
    Definition: b2TimeStep.h:25
    -
    This is an internal structure.
    Definition: b2TimeStep.h:49
    -
    Solver Data.
    Definition: b2TimeStep.h:63
    -
    This is an internal structure.
    Definition: b2TimeStep.h:38
    -
    This is an internal structure.
    Definition: b2TimeStep.h:56
    -
    A 2D column vector.
    Definition: b2Math.h:53
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_timer_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_timer_8h_source.html deleted file mode 100644 index f9896a1..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_timer_8h_source.html +++ /dev/null @@ -1,150 +0,0 @@ - - - - - - -Box2D: b2Timer.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2Timer.h
    -
    -
    -
    1 /*
    -
    2 * Copyright (c) 2011 Erin Catto http://box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_TIMER_H
    -
    20 #define B2_TIMER_H
    -
    21 
    - -
    23 
    -
    26 class b2Timer
    -
    27 {
    -
    28 public:
    -
    29 
    -
    31  b2Timer();
    -
    32 
    -
    34  void Reset();
    -
    35 
    -
    37  float32 GetMilliseconds() const;
    -
    38 
    -
    39 private:
    -
    40 
    -
    41 #if defined(_WIN32)
    -
    42  float64 m_start;
    -
    43  static float64 s_invFrequency;
    -
    44 #elif defined(__linux__) || defined (__APPLE__)
    -
    45  unsigned long m_start_sec;
    -
    46  unsigned long m_start_usec;
    -
    47 #endif
    -
    48 };
    -
    49 
    -
    50 #endif
    -
    void Reset()
    Reset the timer.
    Definition: b2Timer.cpp:92
    -
    Definition: b2Timer.h:26
    -
    float32 GetMilliseconds() const
    Get the time since construction or the last reset.
    Definition: b2Timer.cpp:96
    -
    b2Timer()
    Constructor.
    Definition: b2Timer.cpp:88
    - -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_weld_joint_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_weld_joint_8h_source.html deleted file mode 100644 index 9902ba1..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_weld_joint_8h_source.html +++ /dev/null @@ -1,236 +0,0 @@ - - - - - - -Box2D: b2WeldJoint.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2WeldJoint.h
    -
    -
    -
    1 /*
    -
    2 * Copyright (c) 2006-2011 Erin Catto http://www.box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_WELD_JOINT_H
    -
    20 #define B2_WELD_JOINT_H
    -
    21 
    -
    22 #include <Box2D/Dynamics/Joints/b2Joint.h>
    -
    23 
    -
    27 struct b2WeldJointDef : public b2JointDef
    -
    28 {
    - -
    30  {
    -
    31  type = e_weldJoint;
    -
    32  localAnchorA.Set(0.0f, 0.0f);
    -
    33  localAnchorB.Set(0.0f, 0.0f);
    -
    34  referenceAngle = 0.0f;
    -
    35  frequencyHz = 0.0f;
    -
    36  dampingRatio = 0.0f;
    -
    37  }
    -
    38 
    -
    41  void Initialize(b2Body* bodyA, b2Body* bodyB, const b2Vec2& anchor);
    -
    42 
    - -
    45 
    - -
    48 
    -
    50  float32 referenceAngle;
    -
    51 
    -
    54  float32 frequencyHz;
    -
    55 
    -
    57  float32 dampingRatio;
    -
    58 };
    -
    59 
    -
    62 class b2WeldJoint : public b2Joint
    -
    63 {
    -
    64 public:
    -
    65  b2Vec2 GetAnchorA() const;
    -
    66  b2Vec2 GetAnchorB() const;
    -
    67 
    -
    68  b2Vec2 GetReactionForce(float32 inv_dt) const;
    -
    69  float32 GetReactionTorque(float32 inv_dt) const;
    -
    70 
    -
    72  const b2Vec2& GetLocalAnchorA() const { return m_localAnchorA; }
    -
    73 
    -
    75  const b2Vec2& GetLocalAnchorB() const { return m_localAnchorB; }
    -
    76 
    -
    78  float32 GetReferenceAngle() const { return m_referenceAngle; }
    -
    79 
    -
    81  void SetFrequency(float32 hz) { m_frequencyHz = hz; }
    -
    82  float32 GetFrequency() const { return m_frequencyHz; }
    -
    83 
    -
    85  void SetDampingRatio(float32 ratio) { m_dampingRatio = ratio; }
    -
    86  float32 GetDampingRatio() const { return m_dampingRatio; }
    -
    87 
    -
    89  void Dump();
    -
    90 
    -
    91 protected:
    -
    92 
    -
    93  friend class b2Joint;
    -
    94 
    -
    95  b2WeldJoint(const b2WeldJointDef* def);
    -
    96 
    -
    97  void InitVelocityConstraints(const b2SolverData& data);
    -
    98  void SolveVelocityConstraints(const b2SolverData& data);
    -
    99  bool SolvePositionConstraints(const b2SolverData& data);
    -
    100 
    -
    101  float32 m_frequencyHz;
    -
    102  float32 m_dampingRatio;
    -
    103  float32 m_bias;
    -
    104 
    -
    105  // Solver shared
    -
    106  b2Vec2 m_localAnchorA;
    -
    107  b2Vec2 m_localAnchorB;
    -
    108  float32 m_referenceAngle;
    -
    109  float32 m_gamma;
    -
    110  b2Vec3 m_impulse;
    -
    111 
    -
    112  // Solver temp
    -
    113  int32 m_indexA;
    -
    114  int32 m_indexB;
    -
    115  b2Vec2 m_rA;
    -
    116  b2Vec2 m_rB;
    -
    117  b2Vec2 m_localCenterA;
    -
    118  b2Vec2 m_localCenterB;
    -
    119  float32 m_invMassA;
    -
    120  float32 m_invMassB;
    -
    121  float32 m_invIA;
    -
    122  float32 m_invIB;
    -
    123  b2Mat33 m_mass;
    -
    124 };
    -
    125 
    -
    126 #endif
    -
    A 2D column vector with 3 elements.
    Definition: b2Math.h:144
    -
    b2Body * bodyA
    The first attached body.
    Definition: b2Joint.h:92
    -
    b2Vec2 localAnchorB
    The local anchor point relative to bodyB&#39;s origin.
    Definition: b2WeldJoint.h:47
    -
    A 3-by-3 matrix. Stored in column-major order.
    Definition: b2Math.h:257
    -
    void SetFrequency(float32 hz)
    Set/get frequency in Hz.
    Definition: b2WeldJoint.h:81
    -
    b2Body * bodyB
    The second attached body.
    Definition: b2Joint.h:95
    -
    Definition: b2Joint.h:103
    -
    const b2Vec2 & GetLocalAnchorB() const
    The local anchor point relative to bodyB&#39;s origin.
    Definition: b2WeldJoint.h:75
    -
    Definition: b2WeldJoint.h:62
    -
    void Set(float32 x_, float32 y_)
    Set this vector to some specified coordinates.
    Definition: b2Math.h:65
    -
    b2Vec2 GetReactionForce(float32 inv_dt) const
    Get the reaction force on bodyB at the joint anchor in Newtons.
    Definition: b2WeldJoint.cpp:302
    -
    const b2Vec2 & GetLocalAnchorA() const
    The local anchor point relative to bodyA&#39;s origin.
    Definition: b2WeldJoint.h:72
    -
    Definition: b2WeldJoint.h:27
    -
    float32 GetReactionTorque(float32 inv_dt) const
    Get the reaction torque on bodyB in N*m.
    Definition: b2WeldJoint.cpp:308
    -
    b2JointType type
    The joint type is set automatically for concrete joint types.
    Definition: b2Joint.h:86
    -
    Solver Data.
    Definition: b2TimeStep.h:63
    -
    float32 frequencyHz
    Definition: b2WeldJoint.h:54
    -
    Joint definitions are used to construct joints.
    Definition: b2Joint.h:74
    -
    void Dump()
    Dump to b2Log.
    Definition: b2WeldJoint.cpp:313
    -
    void SetDampingRatio(float32 ratio)
    Set/get damping ratio.
    Definition: b2WeldJoint.h:85
    -
    b2Vec2 localAnchorA
    The local anchor point relative to bodyA&#39;s origin.
    Definition: b2WeldJoint.h:44
    -
    A rigid body. These are created via b2World::CreateBody.
    Definition: b2Body.h:126
    -
    b2Vec2 GetAnchorB() const
    Get the anchor point on bodyB in world coordinates.
    Definition: b2WeldJoint.cpp:297
    -
    float32 GetReferenceAngle() const
    Get the reference angle.
    Definition: b2WeldJoint.h:78
    -
    A 2D column vector.
    Definition: b2Math.h:53
    -
    float32 referenceAngle
    The bodyB angle minus bodyA angle in the reference state (radians).
    Definition: b2WeldJoint.h:50
    -
    b2Vec2 GetAnchorA() const
    Get the anchor point on bodyA in world coordinates.
    Definition: b2WeldJoint.cpp:292
    -
    float32 dampingRatio
    The damping ratio. 0 = no damping, 1 = critical damping.
    Definition: b2WeldJoint.h:57
    -
    void Initialize(b2Body *bodyA, b2Body *bodyB, const b2Vec2 &anchor)
    Definition: b2WeldJoint.cpp:37
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_wheel_joint_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_wheel_joint_8h_source.html deleted file mode 100644 index 35291f9..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_wheel_joint_8h_source.html +++ /dev/null @@ -1,315 +0,0 @@ - - - - - - -Box2D: b2WheelJoint.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2WheelJoint.h
    -
    -
    -
    1 /*
    -
    2 * Copyright (c) 2006-2011 Erin Catto http://www.box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_WHEEL_JOINT_H
    -
    20 #define B2_WHEEL_JOINT_H
    -
    21 
    -
    22 #include <Box2D/Dynamics/Joints/b2Joint.h>
    -
    23 
    -
    30 struct b2WheelJointDef : public b2JointDef
    -
    31 {
    - -
    33  {
    -
    34  type = e_wheelJoint;
    - - -
    37  localAxisA.Set(1.0f, 0.0f);
    -
    38  enableMotor = false;
    -
    39  maxMotorTorque = 0.0f;
    -
    40  motorSpeed = 0.0f;
    -
    41  frequencyHz = 2.0f;
    -
    42  dampingRatio = 0.7f;
    -
    43  }
    -
    44 
    -
    47  void Initialize(b2Body* bodyA, b2Body* bodyB, const b2Vec2& anchor, const b2Vec2& axis);
    -
    48 
    - -
    51 
    - -
    54 
    - -
    57 
    - -
    60 
    -
    62  float32 maxMotorTorque;
    -
    63 
    -
    65  float32 motorSpeed;
    -
    66 
    -
    68  float32 frequencyHz;
    -
    69 
    -
    71  float32 dampingRatio;
    -
    72 };
    -
    73 
    -
    79 class b2WheelJoint : public b2Joint
    -
    80 {
    -
    81 public:
    -
    82  b2Vec2 GetAnchorA() const;
    -
    83  b2Vec2 GetAnchorB() const;
    -
    84 
    -
    85  b2Vec2 GetReactionForce(float32 inv_dt) const;
    -
    86  float32 GetReactionTorque(float32 inv_dt) const;
    -
    87 
    -
    89  const b2Vec2& GetLocalAnchorA() const { return m_localAnchorA; }
    -
    90 
    -
    92  const b2Vec2& GetLocalAnchorB() const { return m_localAnchorB; }
    -
    93 
    -
    95  const b2Vec2& GetLocalAxisA() const { return m_localXAxisA; }
    -
    96 
    -
    98  float32 GetJointTranslation() const;
    -
    99 
    -
    101  float32 GetJointSpeed() const;
    -
    102 
    -
    104  bool IsMotorEnabled() const;
    -
    105 
    -
    107  void EnableMotor(bool flag);
    -
    108 
    -
    110  void SetMotorSpeed(float32 speed);
    -
    111 
    -
    113  float32 GetMotorSpeed() const;
    -
    114 
    -
    116  void SetMaxMotorTorque(float32 torque);
    -
    117  float32 GetMaxMotorTorque() const;
    -
    118 
    -
    120  float32 GetMotorTorque(float32 inv_dt) const;
    -
    121 
    -
    123  void SetSpringFrequencyHz(float32 hz);
    -
    124  float32 GetSpringFrequencyHz() const;
    -
    125 
    -
    127  void SetSpringDampingRatio(float32 ratio);
    -
    128  float32 GetSpringDampingRatio() const;
    -
    129 
    -
    131  void Dump();
    -
    132 
    -
    133 protected:
    -
    134 
    -
    135  friend class b2Joint;
    -
    136  b2WheelJoint(const b2WheelJointDef* def);
    -
    137 
    -
    138  void InitVelocityConstraints(const b2SolverData& data);
    -
    139  void SolveVelocityConstraints(const b2SolverData& data);
    -
    140  bool SolvePositionConstraints(const b2SolverData& data);
    -
    141 
    -
    142  float32 m_frequencyHz;
    -
    143  float32 m_dampingRatio;
    -
    144 
    -
    145  // Solver shared
    -
    146  b2Vec2 m_localAnchorA;
    -
    147  b2Vec2 m_localAnchorB;
    -
    148  b2Vec2 m_localXAxisA;
    -
    149  b2Vec2 m_localYAxisA;
    -
    150 
    -
    151  float32 m_impulse;
    -
    152  float32 m_motorImpulse;
    -
    153  float32 m_springImpulse;
    -
    154 
    -
    155  float32 m_maxMotorTorque;
    -
    156  float32 m_motorSpeed;
    -
    157  bool m_enableMotor;
    -
    158 
    -
    159  // Solver temp
    -
    160  int32 m_indexA;
    -
    161  int32 m_indexB;
    -
    162  b2Vec2 m_localCenterA;
    -
    163  b2Vec2 m_localCenterB;
    -
    164  float32 m_invMassA;
    -
    165  float32 m_invMassB;
    -
    166  float32 m_invIA;
    -
    167  float32 m_invIB;
    -
    168 
    -
    169  b2Vec2 m_ax, m_ay;
    -
    170  float32 m_sAx, m_sBx;
    -
    171  float32 m_sAy, m_sBy;
    -
    172 
    -
    173  float32 m_mass;
    -
    174  float32 m_motorMass;
    -
    175  float32 m_springMass;
    -
    176 
    -
    177  float32 m_bias;
    -
    178  float32 m_gamma;
    -
    179 };
    -
    180 
    -
    181 inline float32 b2WheelJoint::GetMotorSpeed() const
    -
    182 {
    -
    183  return m_motorSpeed;
    -
    184 }
    -
    185 
    -
    186 inline float32 b2WheelJoint::GetMaxMotorTorque() const
    -
    187 {
    -
    188  return m_maxMotorTorque;
    -
    189 }
    -
    190 
    -
    191 inline void b2WheelJoint::SetSpringFrequencyHz(float32 hz)
    -
    192 {
    -
    193  m_frequencyHz = hz;
    -
    194 }
    -
    195 
    -
    196 inline float32 b2WheelJoint::GetSpringFrequencyHz() const
    -
    197 {
    -
    198  return m_frequencyHz;
    -
    199 }
    -
    200 
    -
    201 inline void b2WheelJoint::SetSpringDampingRatio(float32 ratio)
    -
    202 {
    -
    203  m_dampingRatio = ratio;
    -
    204 }
    -
    205 
    -
    206 inline float32 b2WheelJoint::GetSpringDampingRatio() const
    -
    207 {
    -
    208  return m_dampingRatio;
    -
    209 }
    -
    210 
    -
    211 #endif
    -
    void SetSpringDampingRatio(float32 ratio)
    Set/Get the spring damping ratio.
    Definition: b2WheelJoint.h:201
    -
    Definition: b2WheelJoint.h:30
    -
    b2Vec2 GetAnchorA() const
    Get the anchor point on bodyA in world coordinates.
    Definition: b2WheelJoint.cpp:329
    -
    float32 GetReactionTorque(float32 inv_dt) const
    Get the reaction torque on bodyB in N*m.
    Definition: b2WheelJoint.cpp:344
    -
    b2Body * bodyA
    The first attached body.
    Definition: b2Joint.h:92
    -
    void Dump()
    Dump to b2Log.
    Definition: b2WheelJoint.cpp:401
    -
    b2Vec2 localAnchorA
    The local anchor point relative to bodyA&#39;s origin.
    Definition: b2WheelJoint.h:50
    -
    b2Body * bodyB
    The second attached body.
    Definition: b2Joint.h:95
    -
    void EnableMotor(bool flag)
    Enable/disable the joint motor.
    Definition: b2WheelJoint.cpp:375
    -
    bool IsMotorEnabled() const
    Is the joint motor enabled?
    Definition: b2WheelJoint.cpp:370
    -
    float32 GetJointTranslation() const
    Get the current joint translation, usually in meters.
    Definition: b2WheelJoint.cpp:349
    -
    b2Vec2 GetReactionForce(float32 inv_dt) const
    Get the reaction force on bodyB at the joint anchor in Newtons.
    Definition: b2WheelJoint.cpp:339
    -
    Definition: b2Joint.h:103
    -
    float32 frequencyHz
    Suspension frequency, zero indicates no suspension.
    Definition: b2WheelJoint.h:68
    -
    void Set(float32 x_, float32 y_)
    Set this vector to some specified coordinates.
    Definition: b2Math.h:65
    -
    void SetZero()
    Set this vector to all zeros.
    Definition: b2Math.h:62
    -
    bool enableMotor
    Enable/disable the joint motor.
    Definition: b2WheelJoint.h:59
    -
    float32 GetMotorSpeed() const
    Get the motor speed, usually in radians per second.
    Definition: b2WheelJoint.h:181
    -
    b2JointType type
    The joint type is set automatically for concrete joint types.
    Definition: b2Joint.h:86
    -
    const b2Vec2 & GetLocalAxisA() const
    The local joint axis relative to bodyA.
    Definition: b2WheelJoint.h:95
    -
    const b2Vec2 & GetLocalAnchorA() const
    The local anchor point relative to bodyA&#39;s origin.
    Definition: b2WheelJoint.h:89
    -
    Solver Data.
    Definition: b2TimeStep.h:63
    -
    b2Vec2 GetAnchorB() const
    Get the anchor point on bodyB in world coordinates.
    Definition: b2WheelJoint.cpp:334
    -
    float32 maxMotorTorque
    The maximum motor torque, usually in N-m.
    Definition: b2WheelJoint.h:62
    -
    Joint definitions are used to construct joints.
    Definition: b2Joint.h:74
    -
    b2Vec2 localAnchorB
    The local anchor point relative to bodyB&#39;s origin.
    Definition: b2WheelJoint.h:53
    -
    A rigid body. These are created via b2World::CreateBody.
    Definition: b2Body.h:126
    -
    float32 motorSpeed
    The desired motor speed in radians per second.
    Definition: b2WheelJoint.h:65
    -
    A 2D column vector.
    Definition: b2Math.h:53
    -
    const b2Vec2 & GetLocalAnchorB() const
    The local anchor point relative to bodyB&#39;s origin.
    Definition: b2WheelJoint.h:92
    -
    void SetMotorSpeed(float32 speed)
    Set the motor speed, usually in radians per second.
    Definition: b2WheelJoint.cpp:382
    -
    float32 GetJointSpeed() const
    Get the current joint translation speed, usually in meters per second.
    Definition: b2WheelJoint.cpp:363
    -
    void Initialize(b2Body *bodyA, b2Body *bodyB, const b2Vec2 &anchor, const b2Vec2 &axis)
    Definition: b2WheelJoint.cpp:39
    -
    Definition: b2WheelJoint.h:79
    -
    float32 dampingRatio
    Suspension damping ratio, one indicates critical damping.
    Definition: b2WheelJoint.h:71
    -
    b2Vec2 localAxisA
    The local translation axis in bodyA.
    Definition: b2WheelJoint.h:56
    -
    float32 GetMotorTorque(float32 inv_dt) const
    Get the current motor torque given the inverse time step, usually in N-m.
    Definition: b2WheelJoint.cpp:396
    -
    void SetMaxMotorTorque(float32 torque)
    Set/Get the maximum motor force, usually in N-m.
    Definition: b2WheelJoint.cpp:389
    -
    void SetSpringFrequencyHz(float32 hz)
    Set/Get the spring frequency in hertz. Setting the frequency to zero disables the spring...
    Definition: b2WheelJoint.h:191
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_world_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_world_8h_source.html deleted file mode 100644 index 2c10f15..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_world_8h_source.html +++ /dev/null @@ -1,427 +0,0 @@ - - - - - - -Box2D: b2World.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2World.h
    -
    -
    -
    1 /*
    -
    2 * Copyright (c) 2006-2011 Erin Catto http://www.box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_WORLD_H
    -
    20 #define B2_WORLD_H
    -
    21 
    -
    22 #include <Box2D/Common/b2Math.h>
    -
    23 #include <Box2D/Common/b2BlockAllocator.h>
    -
    24 #include <Box2D/Common/b2StackAllocator.h>
    -
    25 #include <Box2D/Dynamics/b2ContactManager.h>
    -
    26 #include <Box2D/Dynamics/b2WorldCallbacks.h>
    -
    27 #include <Box2D/Dynamics/b2TimeStep.h>
    -
    28 
    -
    29 struct b2AABB;
    -
    30 struct b2BodyDef;
    -
    31 struct b2Color;
    -
    32 struct b2JointDef;
    -
    33 class b2Body;
    -
    34 class b2Draw;
    -
    35 class b2Fixture;
    -
    36 class b2Joint;
    -
    37 
    -
    41 class b2World
    -
    42 {
    -
    43 public:
    -
    46  b2World(const b2Vec2& gravity);
    -
    47 
    -
    49  ~b2World();
    -
    50 
    - -
    54 
    -
    58  void SetContactFilter(b2ContactFilter* filter);
    -
    59 
    -
    62  void SetContactListener(b2ContactListener* listener);
    -
    63 
    -
    67  void SetDebugDraw(b2Draw* debugDraw);
    -
    68 
    -
    72  b2Body* CreateBody(const b2BodyDef* def);
    -
    73 
    -
    78  void DestroyBody(b2Body* body);
    -
    79 
    -
    83  b2Joint* CreateJoint(const b2JointDef* def);
    -
    84 
    -
    87  void DestroyJoint(b2Joint* joint);
    -
    88 
    -
    94  void Step( float32 timeStep,
    -
    95  int32 velocityIterations,
    -
    96  int32 positionIterations);
    -
    97 
    -
    105  void ClearForces();
    -
    106 
    -
    108  void DrawDebugData();
    -
    109 
    -
    114  void QueryAABB(b2QueryCallback* callback, const b2AABB& aabb) const;
    -
    115 
    -
    122  void RayCast(b2RayCastCallback* callback, const b2Vec2& point1, const b2Vec2& point2) const;
    -
    123 
    -
    127  b2Body* GetBodyList();
    -
    128  const b2Body* GetBodyList() const;
    -
    129 
    - -
    134  const b2Joint* GetJointList() const;
    -
    135 
    - -
    142  const b2Contact* GetContactList() const;
    -
    143 
    -
    145  void SetAllowSleeping(bool flag);
    -
    146  bool GetAllowSleeping() const { return m_allowSleep; }
    -
    147 
    -
    149  void SetWarmStarting(bool flag) { m_warmStarting = flag; }
    -
    150  bool GetWarmStarting() const { return m_warmStarting; }
    -
    151 
    -
    153  void SetContinuousPhysics(bool flag) { m_continuousPhysics = flag; }
    -
    154  bool GetContinuousPhysics() const { return m_continuousPhysics; }
    -
    155 
    -
    157  void SetSubStepping(bool flag) { m_subStepping = flag; }
    -
    158  bool GetSubStepping() const { return m_subStepping; }
    -
    159 
    -
    161  int32 GetProxyCount() const;
    -
    162 
    -
    164  int32 GetBodyCount() const;
    -
    165 
    -
    167  int32 GetJointCount() const;
    -
    168 
    -
    170  int32 GetContactCount() const;
    -
    171 
    -
    173  int32 GetTreeHeight() const;
    -
    174 
    -
    176  int32 GetTreeBalance() const;
    -
    177 
    -
    180  float32 GetTreeQuality() const;
    -
    181 
    -
    183  void SetGravity(const b2Vec2& gravity);
    -
    184 
    -
    186  b2Vec2 GetGravity() const;
    -
    187 
    -
    189  bool IsLocked() const;
    -
    190 
    -
    192  void SetAutoClearForces(bool flag);
    -
    193 
    -
    195  bool GetAutoClearForces() const;
    -
    196 
    -
    200  void ShiftOrigin(const b2Vec2& newOrigin);
    -
    201 
    -
    203  const b2ContactManager& GetContactManager() const;
    -
    204 
    -
    206  const b2Profile& GetProfile() const;
    -
    207 
    -
    210  void Dump();
    -
    211 
    -
    212 private:
    -
    213 
    -
    214  // m_flags
    -
    215  enum
    -
    216  {
    -
    217  e_newFixture = 0x0001,
    -
    218  e_locked = 0x0002,
    -
    219  e_clearForces = 0x0004
    -
    220  };
    -
    221 
    -
    222  friend class b2Body;
    -
    223  friend class b2Fixture;
    -
    224  friend class b2ContactManager;
    -
    225  friend class b2Controller;
    -
    226 
    -
    227  void Solve(const b2TimeStep& step);
    -
    228  void SolveTOI(const b2TimeStep& step);
    -
    229 
    -
    230  void DrawJoint(b2Joint* joint);
    -
    231  void DrawShape(b2Fixture* shape, const b2Transform& xf, const b2Color& color);
    -
    232 
    -
    233  b2BlockAllocator m_blockAllocator;
    -
    234  b2StackAllocator m_stackAllocator;
    -
    235 
    -
    236  int32 m_flags;
    -
    237 
    -
    238  b2ContactManager m_contactManager;
    -
    239 
    -
    240  b2Body* m_bodyList;
    -
    241  b2Joint* m_jointList;
    -
    242 
    -
    243  int32 m_bodyCount;
    -
    244  int32 m_jointCount;
    -
    245 
    -
    246  b2Vec2 m_gravity;
    -
    247  bool m_allowSleep;
    -
    248 
    -
    249  b2DestructionListener* m_destructionListener;
    -
    250  b2Draw* m_debugDraw;
    -
    251 
    -
    252  // This is used to compute the time step ratio to
    -
    253  // support a variable time step.
    -
    254  float32 m_inv_dt0;
    -
    255 
    -
    256  // These are for debugging the solver.
    -
    257  bool m_warmStarting;
    -
    258  bool m_continuousPhysics;
    -
    259  bool m_subStepping;
    -
    260 
    -
    261  bool m_stepComplete;
    -
    262 
    -
    263  b2Profile m_profile;
    -
    264 };
    -
    265 
    - -
    267 {
    -
    268  return m_bodyList;
    -
    269 }
    -
    270 
    -
    271 inline const b2Body* b2World::GetBodyList() const
    -
    272 {
    -
    273  return m_bodyList;
    -
    274 }
    -
    275 
    - -
    277 {
    -
    278  return m_jointList;
    -
    279 }
    -
    280 
    -
    281 inline const b2Joint* b2World::GetJointList() const
    -
    282 {
    -
    283  return m_jointList;
    -
    284 }
    -
    285 
    - -
    287 {
    -
    288  return m_contactManager.m_contactList;
    -
    289 }
    -
    290 
    -
    291 inline const b2Contact* b2World::GetContactList() const
    -
    292 {
    -
    293  return m_contactManager.m_contactList;
    -
    294 }
    -
    295 
    -
    296 inline int32 b2World::GetBodyCount() const
    -
    297 {
    -
    298  return m_bodyCount;
    -
    299 }
    -
    300 
    -
    301 inline int32 b2World::GetJointCount() const
    -
    302 {
    -
    303  return m_jointCount;
    -
    304 }
    -
    305 
    -
    306 inline int32 b2World::GetContactCount() const
    -
    307 {
    -
    308  return m_contactManager.m_contactCount;
    -
    309 }
    -
    310 
    -
    311 inline void b2World::SetGravity(const b2Vec2& gravity)
    -
    312 {
    -
    313  m_gravity = gravity;
    -
    314 }
    -
    315 
    - -
    317 {
    -
    318  return m_gravity;
    -
    319 }
    -
    320 
    -
    321 inline bool b2World::IsLocked() const
    -
    322 {
    -
    323  return (m_flags & e_locked) == e_locked;
    -
    324 }
    -
    325 
    -
    326 inline void b2World::SetAutoClearForces(bool flag)
    -
    327 {
    -
    328  if (flag)
    -
    329  {
    -
    330  m_flags |= e_clearForces;
    -
    331  }
    -
    332  else
    -
    333  {
    -
    334  m_flags &= ~e_clearForces;
    -
    335  }
    -
    336 }
    -
    337 
    -
    339 inline bool b2World::GetAutoClearForces() const
    -
    340 {
    -
    341  return (m_flags & e_clearForces) == e_clearForces;
    -
    342 }
    -
    343 
    - -
    345 {
    -
    346  return m_contactManager;
    -
    347 }
    -
    348 
    -
    349 inline const b2Profile& b2World::GetProfile() const
    -
    350 {
    -
    351  return m_profile;
    -
    352 }
    -
    353 
    -
    354 #endif
    -
    Definition: b2Math.h:350
    -
    b2Vec2 GetGravity() const
    Get the global gravity vector.
    Definition: b2World.h:316
    -
    Definition: b2WorldCallbacks.h:36
    -
    Profiling data. Times are in milliseconds.
    Definition: b2TimeStep.h:25
    -
    void SetDebugDraw(b2Draw *debugDraw)
    Definition: b2World.cpp:102
    -
    b2Contact * GetContactList()
    Definition: b2World.h:286
    -
    int32 GetTreeBalance() const
    Get the balance of the dynamic tree.
    Definition: b2World.cpp:1249
    -
    Definition: b2WorldCallbacks.h:135
    -
    void SetContactFilter(b2ContactFilter *filter)
    Definition: b2World.cpp:92
    -
    Definition: b2Body.h:51
    -
    Definition: b2StackAllocator.h:37
    -
    int32 GetProxyCount() const
    Get the number of broad-phase proxies.
    Definition: b2World.cpp:1239
    -
    Definition: b2World.h:41
    -
    float32 GetTreeQuality() const
    Definition: b2World.cpp:1254
    -
    void DrawDebugData()
    Call this to draw shapes and other debug draw data. This is intentionally non-const.
    Definition: b2World.cpp:1135
    -
    Definition: b2WorldCallbacks.h:52
    -
    bool GetAutoClearForces() const
    Get the flag that controls automatic clearing of forces after each time step.
    Definition: b2World.h:339
    -
    void ShiftOrigin(const b2Vec2 &newOrigin)
    Definition: b2World.cpp:1259
    -
    Definition: b2WorldCallbacks.h:81
    -
    b2Joint * CreateJoint(const b2JointDef *def)
    Definition: b2World.cpp:212
    -
    Definition: b2BlockAllocator.h:35
    -
    Color for debug drawing. Each value has the range [0,1].
    Definition: b2Draw.h:25
    -
    Definition: b2Joint.h:103
    -
    b2Body * GetBodyList()
    Definition: b2World.h:266
    -
    void Dump()
    Definition: b2World.cpp:1282
    -
    void SetSubStepping(bool flag)
    Enable/disable single stepped continuous physics. For testing.
    Definition: b2World.h:157
    -
    void DestroyJoint(b2Joint *joint)
    Definition: b2World.cpp:272
    -
    void SetContinuousPhysics(bool flag)
    Enable/disable continuous physics. For testing.
    Definition: b2World.h:153
    -
    void DestroyBody(b2Body *body)
    Definition: b2World.cpp:131
    -
    An axis aligned bounding box.
    Definition: b2Collision.h:162
    -
    int32 GetContactCount() const
    Get the number of contacts (each may have 0 or more contact points).
    Definition: b2World.h:306
    -
    void SetAutoClearForces(bool flag)
    Set flag to control automatic clearing of forces after each time step.
    Definition: b2World.h:326
    -
    b2Body * CreateBody(const b2BodyDef *def)
    Definition: b2World.cpp:107
    -
    This is an internal structure.
    Definition: b2TimeStep.h:38
    -
    void SetContactListener(b2ContactListener *listener)
    Definition: b2World.cpp:97
    -
    b2Joint * GetJointList()
    Definition: b2World.h:276
    -
    int32 GetJointCount() const
    Get the number of joints.
    Definition: b2World.h:301
    -
    Joint definitions are used to construct joints.
    Definition: b2Joint.h:74
    -
    Definition: b2Draw.h:35
    -
    int32 GetBodyCount() const
    Get the number of bodies.
    Definition: b2World.h:296
    -
    A rigid body. These are created via b2World::CreateBody.
    Definition: b2Body.h:126
    -
    b2World(const b2Vec2 &gravity)
    Definition: b2World.cpp:37
    -
    ~b2World()
    Destruct the world. All physics entities are destroyed and all heap memory is released.
    Definition: b2World.cpp:66
    -
    void ClearForces()
    Definition: b2World.cpp:965
    -
    void SetWarmStarting(bool flag)
    Enable/disable warm starting. For testing.
    Definition: b2World.h:149
    -
    void RayCast(b2RayCastCallback *callback, const b2Vec2 &point1, const b2Vec2 &point2) const
    Definition: b2World.cpp:1019
    -
    void Step(float32 timeStep, int32 velocityIterations, int32 positionIterations)
    Definition: b2World.cpp:897
    -
    bool IsLocked() const
    Is the world locked (in the middle of a time step).
    Definition: b2World.h:321
    -
    void SetAllowSleeping(bool flag)
    Enable/disable sleep.
    Definition: b2World.cpp:368
    -
    A 2D column vector.
    Definition: b2Math.h:53
    -
    Definition: b2Contact.h:77
    -
    const b2ContactManager & GetContactManager() const
    Get the contact manager for testing.
    Definition: b2World.h:344
    -
    void SetGravity(const b2Vec2 &gravity)
    Change the global gravity vector.
    Definition: b2World.h:311
    -
    const b2Profile & GetProfile() const
    Get the current profile.
    Definition: b2World.h:349
    -
    Definition: b2ContactManager.h:30
    -
    Definition: b2WorldCallbacks.h:123
    -
    void QueryAABB(b2QueryCallback *callback, const b2AABB &aabb) const
    Definition: b2World.cpp:986
    -
    int32 GetTreeHeight() const
    Get the height of the dynamic tree.
    Definition: b2World.cpp:1244
    -
    Definition: b2Fixture.h:107
    -
    void SetDestructionListener(b2DestructionListener *listener)
    Definition: b2World.cpp:87
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_world_callbacks_8h_source.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_world_callbacks_8h_source.html deleted file mode 100644 index 5b34564..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/b2_world_callbacks_8h_source.html +++ /dev/null @@ -1,220 +0,0 @@ - - - - - - -Box2D: b2WorldCallbacks.h Source File - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - - -
    -
    -
    -
    b2WorldCallbacks.h
    -
    -
    -
    1 /*
    -
    2 * Copyright (c) 2006-2009 Erin Catto http://www.box2d.org
    -
    3 *
    -
    4 * This software is provided 'as-is', without any express or implied
    -
    5 * warranty. In no event will the authors be held liable for any damages
    -
    6 * arising from the use of this software.
    -
    7 * Permission is granted to anyone to use this software for any purpose,
    -
    8 * including commercial applications, and to alter it and redistribute it
    -
    9 * freely, subject to the following restrictions:
    -
    10 * 1. The origin of this software must not be misrepresented; you must not
    -
    11 * claim that you wrote the original software. If you use this software
    -
    12 * in a product, an acknowledgment in the product documentation would be
    -
    13 * appreciated but is not required.
    -
    14 * 2. Altered source versions must be plainly marked as such, and must not be
    -
    15 * misrepresented as being the original software.
    -
    16 * 3. This notice may not be removed or altered from any source distribution.
    -
    17 */
    -
    18 
    -
    19 #ifndef B2_WORLD_CALLBACKS_H
    -
    20 #define B2_WORLD_CALLBACKS_H
    -
    21 
    - -
    23 
    -
    24 struct b2Vec2;
    -
    25 struct b2Transform;
    -
    26 class b2Fixture;
    -
    27 class b2Body;
    -
    28 class b2Joint;
    -
    29 class b2Contact;
    -
    30 struct b2ContactResult;
    -
    31 struct b2Manifold;
    -
    32 
    - -
    37 {
    -
    38 public:
    -
    39  virtual ~b2DestructionListener() {}
    -
    40 
    -
    43  virtual void SayGoodbye(b2Joint* joint) = 0;
    -
    44 
    -
    47  virtual void SayGoodbye(b2Fixture* fixture) = 0;
    -
    48 };
    -
    49 
    - -
    53 {
    -
    54 public:
    -
    55  virtual ~b2ContactFilter() {}
    -
    56 
    -
    59  virtual bool ShouldCollide(b2Fixture* fixtureA, b2Fixture* fixtureB);
    -
    60 };
    -
    61 
    - -
    66 {
    -
    67  float32 normalImpulses[b2_maxManifoldPoints];
    -
    68  float32 tangentImpulses[b2_maxManifoldPoints];
    -
    69  int32 count;
    -
    70 };
    -
    71 
    - -
    82 {
    -
    83 public:
    -
    84  virtual ~b2ContactListener() {}
    -
    85 
    -
    87  virtual void BeginContact(b2Contact* contact) { B2_NOT_USED(contact); }
    -
    88 
    -
    90  virtual void EndContact(b2Contact* contact) { B2_NOT_USED(contact); }
    -
    91 
    -
    102  virtual void PreSolve(b2Contact* contact, const b2Manifold* oldManifold)
    -
    103  {
    -
    104  B2_NOT_USED(contact);
    -
    105  B2_NOT_USED(oldManifold);
    -
    106  }
    -
    107 
    -
    114  virtual void PostSolve(b2Contact* contact, const b2ContactImpulse* impulse)
    -
    115  {
    -
    116  B2_NOT_USED(contact);
    -
    117  B2_NOT_USED(impulse);
    -
    118  }
    -
    119 };
    -
    120 
    - -
    124 {
    -
    125 public:
    -
    126  virtual ~b2QueryCallback() {}
    -
    127 
    -
    130  virtual bool ReportFixture(b2Fixture* fixture) = 0;
    -
    131 };
    -
    132 
    - -
    136 {
    -
    137 public:
    -
    138  virtual ~b2RayCastCallback() {}
    -
    139 
    -
    151  virtual float32 ReportFixture( b2Fixture* fixture, const b2Vec2& point,
    -
    152  const b2Vec2& normal, float32 fraction) = 0;
    -
    153 };
    -
    154 
    -
    155 #endif
    -
    Definition: b2Math.h:350
    -
    Definition: b2WorldCallbacks.h:36
    -
    Definition: b2WorldCallbacks.h:65
    -
    Definition: b2WorldCallbacks.h:135
    -
    virtual void SayGoodbye(b2Joint *joint)=0
    -
    Definition: b2WorldCallbacks.h:52
    -
    Definition: b2WorldCallbacks.h:81
    -
    Definition: b2Joint.h:103
    -
    virtual bool ReportFixture(b2Fixture *fixture)=0
    -
    virtual void PreSolve(b2Contact *contact, const b2Manifold *oldManifold)
    Definition: b2WorldCallbacks.h:102
    -
    virtual bool ShouldCollide(b2Fixture *fixtureA, b2Fixture *fixtureB)
    Definition: b2WorldCallbacks.cpp:24
    -
    A rigid body. These are created via b2World::CreateBody.
    Definition: b2Body.h:126
    -
    Definition: b2Collision.h:93
    -
    virtual void PostSolve(b2Contact *contact, const b2ContactImpulse *impulse)
    Definition: b2WorldCallbacks.h:114
    -
    virtual float32 ReportFixture(b2Fixture *fixture, const b2Vec2 &point, const b2Vec2 &normal, float32 fraction)=0
    - -
    virtual void BeginContact(b2Contact *contact)
    Called when two fixtures begin to touch.
    Definition: b2WorldCallbacks.h:87
    -
    A 2D column vector.
    Definition: b2Math.h:53
    -
    Definition: b2Contact.h:77
    -
    #define b2_maxManifoldPoints
    Definition: b2Settings.h:50
    -
    virtual void EndContact(b2Contact *contact)
    Called when two fixtures cease to touch.
    Definition: b2WorldCallbacks.h:90
    -
    Definition: b2WorldCallbacks.h:123
    -
    Definition: b2Fixture.h:107
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/bc_s.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/bc_s.png deleted file mode 100644 index 224b29a..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/bc_s.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/bdwn.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/bdwn.png deleted file mode 100644 index 940a0b9..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/bdwn.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_block_allocator-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_block_allocator-members.html deleted file mode 100644 index 0409d6b..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_block_allocator-members.html +++ /dev/null @@ -1,106 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2BlockAllocator Member List
    -
    -
    - -

    This is the complete list of members for b2BlockAllocator, including all inherited members.

    - - - - - - -
    Allocate(int32 size)b2BlockAllocator
    b2BlockAllocator() (defined in b2BlockAllocator)b2BlockAllocator
    Clear() (defined in b2BlockAllocator)b2BlockAllocator
    Free(void *p, int32 size)b2BlockAllocator
    ~b2BlockAllocator() (defined in b2BlockAllocator)b2BlockAllocator
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_block_allocator.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_block_allocator.html deleted file mode 100644 index 74bd54e..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_block_allocator.html +++ /dev/null @@ -1,124 +0,0 @@ - - - - - - -Box2D: b2BlockAllocator Class Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2BlockAllocator Class Reference
    -
    -
    - -

    #include <b2BlockAllocator.h>

    - - - - - - - - - - -

    -Public Member Functions

    -void * Allocate (int32 size)
     Allocate memory. This will use b2Alloc if the size is larger than b2_maxBlockSize.
     
    -void Free (void *p, int32 size)
     Free memory. This will use b2Free if the size is larger than b2_maxBlockSize.
     
    -void Clear ()
     
    -

    Detailed Description

    -

    This is a small object allocator used for allocating small objects that persist for more than one time step. See: http://www.codeproject.com/useritems/Small_Block_Allocator.asp

    -

    The documentation for this class was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_body-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_body-members.html deleted file mode 100644 index 38df40b..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_body-members.html +++ /dev/null @@ -1,177 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2Body Member List
    -
    -
    - -

    This is the complete list of members for b2Body, including all inherited members.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    ApplyAngularImpulse(float32 impulse, bool wake)b2Bodyinline
    ApplyForce(const b2Vec2 &force, const b2Vec2 &point, bool wake)b2Bodyinline
    ApplyForceToCenter(const b2Vec2 &force, bool wake)b2Bodyinline
    ApplyLinearImpulse(const b2Vec2 &impulse, const b2Vec2 &point, bool wake)b2Bodyinline
    ApplyTorque(float32 torque, bool wake)b2Bodyinline
    b2Contact (defined in b2Body)b2Bodyfriend
    b2ContactManager (defined in b2Body)b2Bodyfriend
    b2ContactSolver (defined in b2Body)b2Bodyfriend
    b2DistanceJoint (defined in b2Body)b2Bodyfriend
    b2FrictionJoint (defined in b2Body)b2Bodyfriend
    b2GearJoint (defined in b2Body)b2Bodyfriend
    b2Island (defined in b2Body)b2Bodyfriend
    b2MotorJoint (defined in b2Body)b2Bodyfriend
    b2MouseJoint (defined in b2Body)b2Bodyfriend
    b2PrismaticJoint (defined in b2Body)b2Bodyfriend
    b2PulleyJoint (defined in b2Body)b2Bodyfriend
    b2RevoluteJoint (defined in b2Body)b2Bodyfriend
    b2RopeJoint (defined in b2Body)b2Bodyfriend
    b2WeldJoint (defined in b2Body)b2Bodyfriend
    b2WheelJoint (defined in b2Body)b2Bodyfriend
    b2World (defined in b2Body)b2Bodyfriend
    CreateFixture(const b2FixtureDef *def)b2Body
    CreateFixture(const b2Shape *shape, float32 density)b2Body
    DestroyFixture(b2Fixture *fixture)b2Body
    Dump()b2Body
    GetAngle() const b2Bodyinline
    GetAngularDamping() const b2Bodyinline
    GetAngularVelocity() const b2Bodyinline
    GetContactList()b2Bodyinline
    GetContactList() const (defined in b2Body)b2Bodyinline
    GetFixtureList()b2Bodyinline
    GetFixtureList() const (defined in b2Body)b2Bodyinline
    GetGravityScale() const b2Bodyinline
    GetInertia() const b2Bodyinline
    GetJointList()b2Bodyinline
    GetJointList() const (defined in b2Body)b2Bodyinline
    GetLinearDamping() const b2Bodyinline
    GetLinearVelocity() const b2Bodyinline
    GetLinearVelocityFromLocalPoint(const b2Vec2 &localPoint) const b2Bodyinline
    GetLinearVelocityFromWorldPoint(const b2Vec2 &worldPoint) const b2Bodyinline
    GetLocalCenter() const b2Bodyinline
    GetLocalPoint(const b2Vec2 &worldPoint) const b2Bodyinline
    GetLocalVector(const b2Vec2 &worldVector) const b2Bodyinline
    GetMass() const b2Bodyinline
    GetMassData(b2MassData *data) const b2Bodyinline
    GetNext()b2Bodyinline
    GetNext() const (defined in b2Body)b2Bodyinline
    GetPosition() const b2Bodyinline
    GetTransform() const b2Bodyinline
    GetType() const b2Bodyinline
    GetUserData() const b2Bodyinline
    GetWorld()b2Bodyinline
    GetWorld() const (defined in b2Body)b2Bodyinline
    GetWorldCenter() const b2Bodyinline
    GetWorldPoint(const b2Vec2 &localPoint) const b2Bodyinline
    GetWorldVector(const b2Vec2 &localVector) const b2Bodyinline
    IsActive() const b2Bodyinline
    IsAwake() const b2Bodyinline
    IsBullet() const b2Bodyinline
    IsFixedRotation() const b2Bodyinline
    IsSleepingAllowed() const b2Bodyinline
    ResetMassData()b2Body
    SetActive(bool flag)b2Body
    SetAngularDamping(float32 angularDamping)b2Bodyinline
    SetAngularVelocity(float32 omega)b2Bodyinline
    SetAwake(bool flag)b2Bodyinline
    SetBullet(bool flag)b2Bodyinline
    SetFixedRotation(bool flag)b2Body
    SetGravityScale(float32 scale)b2Bodyinline
    SetLinearDamping(float32 linearDamping)b2Bodyinline
    SetLinearVelocity(const b2Vec2 &v)b2Bodyinline
    SetMassData(const b2MassData *data)b2Body
    SetSleepingAllowed(bool flag)b2Bodyinline
    SetTransform(const b2Vec2 &position, float32 angle)b2Body
    SetType(b2BodyType type)b2Body
    SetUserData(void *data)b2Bodyinline
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_body.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_body.html deleted file mode 100644 index ff747af..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_body.html +++ /dev/null @@ -1,1313 +0,0 @@ - - - - - - -Box2D: b2Body Class Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2Body Class Reference
    -
    -
    - -

    A rigid body. These are created via b2World::CreateBody. - More...

    - -

    #include <b2Body.h>

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Member Functions

    b2FixtureCreateFixture (const b2FixtureDef *def)
     
    b2FixtureCreateFixture (const b2Shape *shape, float32 density)
     
    void DestroyFixture (b2Fixture *fixture)
     
    void SetTransform (const b2Vec2 &position, float32 angle)
     
    const b2TransformGetTransform () const
     
    const b2Vec2GetPosition () const
     
    float32 GetAngle () const
     
    -const b2Vec2GetWorldCenter () const
     Get the world position of the center of mass.
     
    -const b2Vec2GetLocalCenter () const
     Get the local position of the center of mass.
     
    void SetLinearVelocity (const b2Vec2 &v)
     
    const b2Vec2GetLinearVelocity () const
     
    void SetAngularVelocity (float32 omega)
     
    float32 GetAngularVelocity () const
     
    void ApplyForce (const b2Vec2 &force, const b2Vec2 &point, bool wake)
     
    void ApplyForceToCenter (const b2Vec2 &force, bool wake)
     
    void ApplyTorque (float32 torque, bool wake)
     
    void ApplyLinearImpulse (const b2Vec2 &impulse, const b2Vec2 &point, bool wake)
     
    void ApplyAngularImpulse (float32 impulse, bool wake)
     
    float32 GetMass () const
     
    float32 GetInertia () const
     
    void GetMassData (b2MassData *data) const
     
    void SetMassData (const b2MassData *data)
     
    void ResetMassData ()
     
    b2Vec2 GetWorldPoint (const b2Vec2 &localPoint) const
     
    b2Vec2 GetWorldVector (const b2Vec2 &localVector) const
     
    b2Vec2 GetLocalPoint (const b2Vec2 &worldPoint) const
     
    b2Vec2 GetLocalVector (const b2Vec2 &worldVector) const
     
    b2Vec2 GetLinearVelocityFromWorldPoint (const b2Vec2 &worldPoint) const
     
    b2Vec2 GetLinearVelocityFromLocalPoint (const b2Vec2 &localPoint) const
     
    -float32 GetLinearDamping () const
     Get the linear damping of the body.
     
    -void SetLinearDamping (float32 linearDamping)
     Set the linear damping of the body.
     
    -float32 GetAngularDamping () const
     Get the angular damping of the body.
     
    -void SetAngularDamping (float32 angularDamping)
     Set the angular damping of the body.
     
    -float32 GetGravityScale () const
     Get the gravity scale of the body.
     
    -void SetGravityScale (float32 scale)
     Set the gravity scale of the body.
     
    -void SetType (b2BodyType type)
     Set the type of this body. This may alter the mass and velocity.
     
    -b2BodyType GetType () const
     Get the type of this body.
     
    -void SetBullet (bool flag)
     Should this body be treated like a bullet for continuous collision detection?
     
    -bool IsBullet () const
     Is this body treated like a bullet for continuous collision detection?
     
    void SetSleepingAllowed (bool flag)
     
    -bool IsSleepingAllowed () const
     Is this body allowed to sleep.
     
    void SetAwake (bool flag)
     
    bool IsAwake () const
     
    void SetActive (bool flag)
     
    -bool IsActive () const
     Get the active state of the body.
     
    void SetFixedRotation (bool flag)
     
    -bool IsFixedRotation () const
     Does this body have fixed rotation?
     
    -b2FixtureGetFixtureList ()
     Get the list of all fixtures attached to this body.
     
    -const b2FixtureGetFixtureList () const
     
    -b2JointEdgeGetJointList ()
     Get the list of all joints attached to this body.
     
    -const b2JointEdgeGetJointList () const
     
    b2ContactEdgeGetContactList ()
     
    -const b2ContactEdgeGetContactList () const
     
    -b2BodyGetNext ()
     Get the next body in the world's body list.
     
    -const b2BodyGetNext () const
     
    -void * GetUserData () const
     Get the user data pointer that was provided in the body definition.
     
    -void SetUserData (void *data)
     Set the user data. Use this to store your application specific data.
     
    -b2WorldGetWorld ()
     Get the parent world of this body.
     
    -const b2WorldGetWorld () const
     
    -void Dump ()
     Dump this body to a log file.
     
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Friends

    -class b2World
     
    -class b2Island
     
    -class b2ContactManager
     
    -class b2ContactSolver
     
    -class b2Contact
     
    -class b2DistanceJoint
     
    -class b2FrictionJoint
     
    -class b2GearJoint
     
    -class b2MotorJoint
     
    -class b2MouseJoint
     
    -class b2PrismaticJoint
     
    -class b2PulleyJoint
     
    -class b2RevoluteJoint
     
    -class b2RopeJoint
     
    -class b2WeldJoint
     
    -class b2WheelJoint
     
    -

    Detailed Description

    -

    A rigid body. These are created via b2World::CreateBody.

    -

    Member Function Documentation

    - -
    -
    - - - - - -
    - - - - - - - - - - - - - - - - - - -
    void b2Body::ApplyAngularImpulse (float32 impulse,
    bool wake 
    )
    -
    -inline
    -
    -

    Apply an angular impulse.

    -
    Parameters
    - - - -
    impulsethe angular impulse in units of kg*m*m/s
    wakealso wake up the body
    -
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    void b2Body::ApplyForce (const b2Vec2force,
    const b2Vec2point,
    bool wake 
    )
    -
    -inline
    -
    -

    Apply a force at a world point. If the force is not applied at the center of mass, it will generate a torque and affect the angular velocity. This wakes up the body.

    -
    Parameters
    - - - - -
    forcethe world force vector, usually in Newtons (N).
    pointthe world position of the point of application.
    wakealso wake up the body
    -
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - - - - - - - - - - - -
    void b2Body::ApplyForceToCenter (const b2Vec2force,
    bool wake 
    )
    -
    -inline
    -
    -

    Apply a force to the center of mass. This wakes up the body.

    -
    Parameters
    - - - -
    forcethe world force vector, usually in Newtons (N).
    wakealso wake up the body
    -
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    void b2Body::ApplyLinearImpulse (const b2Vec2impulse,
    const b2Vec2point,
    bool wake 
    )
    -
    -inline
    -
    -

    Apply an impulse at a point. This immediately modifies the velocity. It also modifies the angular velocity if the point of application is not at the center of mass. This wakes up the body.

    -
    Parameters
    - - - - -
    impulsethe world impulse vector, usually in N-seconds or kg-m/s.
    pointthe world position of the point of application.
    wakealso wake up the body
    -
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - - - - - - - - - - - -
    void b2Body::ApplyTorque (float32 torque,
    bool wake 
    )
    -
    -inline
    -
    -

    Apply a torque. This affects the angular velocity without affecting the linear velocity of the center of mass. This wakes up the body.

    -
    Parameters
    - - - -
    torqueabout the z-axis (out of the screen), usually in N-m.
    wakealso wake up the body
    -
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    b2Fixture * b2Body::CreateFixture (const b2FixtureDefdef)
    -
    -

    Creates a fixture and attach it to this body. Use this function if you need to set some fixture parameters, like friction. Otherwise you can create the fixture directly from a shape. If the density is non-zero, this function automatically updates the mass of the body. Contacts are not created until the next time step.

    -
    Parameters
    - - -
    defthe fixture definition.
    -
    -
    -
    Warning
    This function is locked during callbacks.
    - -
    -
    - -
    -
    - - - - - - - - - - - - - - - - - - -
    b2Fixture * b2Body::CreateFixture (const b2Shapeshape,
    float32 density 
    )
    -
    -

    Creates a fixture from a shape and attach it to this body. This is a convenience function. Use b2FixtureDef if you need to set parameters like friction, restitution, user data, or filtering. If the density is non-zero, this function automatically updates the mass of the body.

    -
    Parameters
    - - - -
    shapethe shape to be cloned.
    densitythe shape density (set to zero for static bodies).
    -
    -
    -
    Warning
    This function is locked during callbacks.
    - -
    -
    - -
    -
    - - - - - - - - -
    void b2Body::DestroyFixture (b2Fixturefixture)
    -
    -

    Destroy a fixture. This removes the fixture from the broad-phase and destroys all contacts associated with this fixture. This will automatically adjust the mass of the body if the body is dynamic and the fixture has positive density. All fixtures attached to a body are implicitly destroyed when the body is destroyed.

    -
    Parameters
    - - -
    fixturethe fixture to be removed.
    -
    -
    -
    Warning
    This function is locked during callbacks.
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    float32 b2Body::GetAngle () const
    -
    -inline
    -
    -

    Get the angle in radians.

    -
    Returns
    the current world rotation angle in radians.
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    float32 b2Body::GetAngularVelocity () const
    -
    -inline
    -
    -

    Get the angular velocity.

    -
    Returns
    the angular velocity in radians/second.
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    b2ContactEdge * b2Body::GetContactList ()
    -
    -inline
    -
    -

    Get the list of all contacts attached to this body.

    -
    Warning
    this list changes during the time step and you may miss some collisions if you don't use b2ContactListener.
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    float32 b2Body::GetInertia () const
    -
    -inline
    -
    -

    Get the rotational inertia of the body about the local origin.

    -
    Returns
    the rotational inertia, usually in kg-m^2.
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    const b2Vec2 & b2Body::GetLinearVelocity () const
    -
    -inline
    -
    -

    Get the linear velocity of the center of mass.

    -
    Returns
    the linear velocity of the center of mass.
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - -
    b2Vec2 b2Body::GetLinearVelocityFromLocalPoint (const b2Vec2localPoint) const
    -
    -inline
    -
    -

    Get the world velocity of a local point.

    -
    Parameters
    - - -
    apoint in local coordinates.
    -
    -
    -
    Returns
    the world velocity of a point.
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - -
    b2Vec2 b2Body::GetLinearVelocityFromWorldPoint (const b2Vec2worldPoint) const
    -
    -inline
    -
    -

    Get the world linear velocity of a world point attached to this body.

    -
    Parameters
    - - -
    apoint in world coordinates.
    -
    -
    -
    Returns
    the world velocity of a point.
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - -
    b2Vec2 b2Body::GetLocalPoint (const b2Vec2worldPoint) const
    -
    -inline
    -
    -

    Gets a local point relative to the body's origin given a world point.

    -
    Parameters
    - - -
    apoint in world coordinates.
    -
    -
    -
    Returns
    the corresponding local point relative to the body's origin.
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - -
    b2Vec2 b2Body::GetLocalVector (const b2Vec2worldVector) const
    -
    -inline
    -
    -

    Gets a local vector given a world vector.

    -
    Parameters
    - - -
    avector in world coordinates.
    -
    -
    -
    Returns
    the corresponding local vector.
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    float32 b2Body::GetMass () const
    -
    -inline
    -
    -

    Get the total mass of the body.

    -
    Returns
    the mass, usually in kilograms (kg).
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - -
    void b2Body::GetMassData (b2MassDatadata) const
    -
    -inline
    -
    -

    Get the mass data of the body.

    -
    Returns
    a struct containing the mass, inertia and center of the body.
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    const b2Vec2 & b2Body::GetPosition () const
    -
    -inline
    -
    -

    Get the world body origin position.

    -
    Returns
    the world position of the body's origin.
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    const b2Transform & b2Body::GetTransform () const
    -
    -inline
    -
    -

    Get the body transform for the body's origin.

    -
    Returns
    the world transform of the body's origin.
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - -
    b2Vec2 b2Body::GetWorldPoint (const b2Vec2localPoint) const
    -
    -inline
    -
    -

    Get the world coordinates of a point given the local coordinates.

    -
    Parameters
    - - -
    localPointa point on the body measured relative the the body's origin.
    -
    -
    -
    Returns
    the same point expressed in world coordinates.
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - -
    b2Vec2 b2Body::GetWorldVector (const b2Vec2localVector) const
    -
    -inline
    -
    -

    Get the world coordinates of a vector given the local coordinates.

    -
    Parameters
    - - -
    localVectora vector fixed in the body.
    -
    -
    -
    Returns
    the same vector expressed in world coordinates.
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    bool b2Body::IsAwake () const
    -
    -inline
    -
    -

    Get the sleeping state of this body.

    -
    Returns
    true if the body is awake.
    - -
    -
    - -
    -
    - - - - - - - -
    void b2Body::ResetMassData ()
    -
    -

    This resets the mass properties to the sum of the mass properties of the fixtures. This normally does not need to be called unless you called SetMassData to override the mass and you later want to reset the mass.

    - -
    -
    - -
    -
    - - - - - - - - -
    void b2Body::SetActive (bool flag)
    -
    -

    Set the active state of the body. An inactive body is not simulated and cannot be collided with or woken up. If you pass a flag of true, all fixtures will be added to the broad-phase. If you pass a flag of false, all fixtures will be removed from the broad-phase and all contacts will be destroyed. Fixtures and joints are otherwise unaffected. You may continue to create/destroy fixtures and joints on inactive bodies. Fixtures on an inactive body are implicitly inactive and will not participate in collisions, ray-casts, or queries. Joints connected to an inactive body are implicitly inactive. An inactive body is still owned by a b2World object and remains in the body list.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - -
    void b2Body::SetAngularVelocity (float32 omega)
    -
    -inline
    -
    -

    Set the angular velocity.

    -
    Parameters
    - - -
    omegathe new angular velocity in radians/second.
    -
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - -
    void b2Body::SetAwake (bool flag)
    -
    -inline
    -
    -

    Set the sleep state of the body. A sleeping body has very low CPU cost.

    -
    Parameters
    - - -
    flagset to true to wake the body, false to put it to sleep.
    -
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    void b2Body::SetFixedRotation (bool flag)
    -
    -

    Set this body to have fixed rotation. This causes the mass to be reset.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - -
    void b2Body::SetLinearVelocity (const b2Vec2v)
    -
    -inline
    -
    -

    Set the linear velocity of the center of mass.

    -
    Parameters
    - - -
    vthe new linear velocity of the center of mass.
    -
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    void b2Body::SetMassData (const b2MassDatadata)
    -
    -

    Set the mass properties to override the mass properties of the fixtures. Note that this changes the center of mass position. Note that creating or destroying fixtures can also alter the mass. This function has no effect if the body isn't dynamic.

    -
    Parameters
    - - -
    massDatathe mass properties.
    -
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - -
    void b2Body::SetSleepingAllowed (bool flag)
    -
    -inline
    -
    -

    You can disable sleeping on this body. If you disable sleeping, the body will be woken.

    - -
    -
    - -
    -
    - - - - - - - - - - - - - - - - - - -
    void b2Body::SetTransform (const b2Vec2position,
    float32 angle 
    )
    -
    -

    Set the position of the body's origin and rotation. Manipulating a body's transform may cause non-physical behavior. Note: contacts are updated on the next call to b2World::Step.

    -
    Parameters
    - - - -
    positionthe world position of the body's local origin.
    anglethe world rotation in radians.
    -
    -
    - -
    -
    -
    The documentation for this class was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_broad_phase-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_broad_phase-members.html deleted file mode 100644 index 62a2d47..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_broad_phase-members.html +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2BroadPhase Member List
    -
    -
    - -

    This is the complete list of members for b2BroadPhase, including all inherited members.

    - - - - - - - - - - - - - - - - - - - - -
    b2BroadPhase() (defined in b2BroadPhase)b2BroadPhase
    b2DynamicTree (defined in b2BroadPhase)b2BroadPhasefriend
    CreateProxy(const b2AABB &aabb, void *userData)b2BroadPhase
    DestroyProxy(int32 proxyId)b2BroadPhase
    e_nullProxy enum value (defined in b2BroadPhase)b2BroadPhase
    GetFatAABB(int32 proxyId) const b2BroadPhaseinline
    GetProxyCount() const b2BroadPhaseinline
    GetTreeBalance() const b2BroadPhaseinline
    GetTreeHeight() const b2BroadPhaseinline
    GetTreeQuality() const b2BroadPhaseinline
    GetUserData(int32 proxyId) const b2BroadPhaseinline
    MoveProxy(int32 proxyId, const b2AABB &aabb, const b2Vec2 &displacement)b2BroadPhase
    Query(T *callback, const b2AABB &aabb) const b2BroadPhaseinline
    RayCast(T *callback, const b2RayCastInput &input) const b2BroadPhaseinline
    ShiftOrigin(const b2Vec2 &newOrigin)b2BroadPhaseinline
    TestOverlap(int32 proxyIdA, int32 proxyIdB) const b2BroadPhaseinline
    TouchProxy(int32 proxyId)b2BroadPhase
    UpdatePairs(T *callback)b2BroadPhase
    ~b2BroadPhase() (defined in b2BroadPhase)b2BroadPhase
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_broad_phase.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_broad_phase.html deleted file mode 100644 index 501f648..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_broad_phase.html +++ /dev/null @@ -1,353 +0,0 @@ - - - - - - -Box2D: b2BroadPhase Class Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2BroadPhase Class Reference
    -
    -
    - -

    #include <b2BroadPhase.h>

    - - - - -

    -Public Types

    enum  { e_nullProxy = -1 - }
     
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Member Functions

    int32 CreateProxy (const b2AABB &aabb, void *userData)
     
    -void DestroyProxy (int32 proxyId)
     Destroy a proxy. It is up to the client to remove any pairs.
     
    void MoveProxy (int32 proxyId, const b2AABB &aabb, const b2Vec2 &displacement)
     
    -void TouchProxy (int32 proxyId)
     Call to trigger a re-processing of it's pairs on the next call to UpdatePairs.
     
    -const b2AABBGetFatAABB (int32 proxyId) const
     Get the fat AABB for a proxy.
     
    -void * GetUserData (int32 proxyId) const
     Get user data from a proxy. Returns NULL if the id is invalid.
     
    -bool TestOverlap (int32 proxyIdA, int32 proxyIdB) const
     Test overlap of fat AABBs.
     
    -int32 GetProxyCount () const
     Get the number of proxies.
     
    -template<typename T >
    void UpdatePairs (T *callback)
     Update the pairs. This results in pair callbacks. This can only add pairs.
     
    template<typename T >
    void Query (T *callback, const b2AABB &aabb) const
     
    template<typename T >
    void RayCast (T *callback, const b2RayCastInput &input) const
     
    -int32 GetTreeHeight () const
     Get the height of the embedded tree.
     
    -int32 GetTreeBalance () const
     Get the balance of the embedded tree.
     
    -float32 GetTreeQuality () const
     Get the quality metric of the embedded tree.
     
    void ShiftOrigin (const b2Vec2 &newOrigin)
     
    - - - -

    -Friends

    -class b2DynamicTree
     
    -

    Detailed Description

    -

    The broad-phase is used for computing pairs and performing volume queries and ray casts. This broad-phase does not persist pairs. Instead, this reports potentially new pairs. It is up to the client to consume the new pairs and to track subsequent overlap.

    -

    Member Function Documentation

    - -
    -
    - - - - - - - - - - - - - - - - - - -
    int32 b2BroadPhase::CreateProxy (const b2AABBaabb,
    void * userData 
    )
    -
    -

    Create a proxy with an initial AABB. Pairs are not reported until UpdatePairs is called.

    - -
    -
    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    void b2BroadPhase::MoveProxy (int32 proxyId,
    const b2AABBaabb,
    const b2Vec2displacement 
    )
    -
    -

    Call MoveProxy as many times as you like, then when you are done call UpdatePairs to finalized the proxy pairs (for your time step).

    - -
    -
    - -
    -
    -
    -template<typename T >
    - - - - - -
    - - - - - - - - - - - - - - - - - - -
    void b2BroadPhase::Query (T * callback,
    const b2AABBaabb 
    ) const
    -
    -inline
    -
    -

    Query an AABB for overlapping proxies. The callback class is called for each proxy that overlaps the supplied AABB.

    - -
    -
    - -
    -
    -
    -template<typename T >
    - - - - - -
    - - - - - - - - - - - - - - - - - - -
    void b2BroadPhase::RayCast (T * callback,
    const b2RayCastInputinput 
    ) const
    -
    -inline
    -
    -

    Ray-cast against the proxies in the tree. This relies on the callback to perform a exact ray-cast in the case were the proxy contains a shape. The callback also performs the any collision filtering. This has performance roughly equal to k * log(n), where k is the number of collisions and n is the number of proxies in the tree.

    -
    Parameters
    - - - -
    inputthe ray-cast input data. The ray extends from p1 to p1 + maxFraction * (p2 - p1).
    callbacka callback class that is called for each proxy that is hit by the ray.
    -
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - -
    void b2BroadPhase::ShiftOrigin (const b2Vec2newOrigin)
    -
    -inline
    -
    -

    Shift the world origin. Useful for large worlds. The shift formula is: position -= newOrigin

    -
    Parameters
    - - -
    newOriginthe new origin with respect to the old origin
    -
    -
    - -
    -
    -
    The documentation for this class was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_chain_and_circle_contact-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_chain_and_circle_contact-members.html deleted file mode 100644 index ca0951f..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_chain_and_circle_contact-members.html +++ /dev/null @@ -1,159 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2ChainAndCircleContact Member List
    -
    -
    - -

    This is the complete list of members for b2ChainAndCircleContact, including all inherited members.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    AddType(b2ContactCreateFcn *createFcn, b2ContactDestroyFcn *destroyFcn, b2Shape::Type typeA, b2Shape::Type typeB) (defined in b2Contact)b2Contactprotectedstatic
    b2ChainAndCircleContact(b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB) (defined in b2ChainAndCircleContact)b2ChainAndCircleContact
    b2Contact() (defined in b2Contact)b2Contactinlineprotected
    b2Contact(b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB) (defined in b2Contact)b2Contactprotected
    Create(b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB, b2BlockAllocator *allocator) (defined in b2ChainAndCircleContact)b2ChainAndCircleContactstatic
    Destroy(b2Contact *contact, b2BlockAllocator *allocator) (defined in b2ChainAndCircleContact)b2ChainAndCircleContactstatic
    Destroy(b2Contact *contact, b2Shape::Type typeA, b2Shape::Type typeB, b2BlockAllocator *allocator) (defined in b2Contact)b2Contactprotectedstatic
    e_bulletHitFlag enum value (defined in b2Contact)b2Contactprotected
    e_enabledFlag enum value (defined in b2Contact)b2Contactprotected
    e_filterFlag enum value (defined in b2Contact)b2Contactprotected
    e_islandFlag enum value (defined in b2Contact)b2Contactprotected
    e_toiFlag enum value (defined in b2Contact)b2Contactprotected
    e_touchingFlag enum value (defined in b2Contact)b2Contactprotected
    Evaluate(b2Manifold *manifold, const b2Transform &xfA, const b2Transform &xfB)b2ChainAndCircleContactvirtual
    FlagForFiltering()b2Contactinlineprotected
    GetChildIndexA() const b2Contactinline
    GetChildIndexB() const b2Contactinline
    GetFixtureA()b2Contactinline
    GetFixtureA() const (defined in b2Contact)b2Contactinline
    GetFixtureB()b2Contactinline
    GetFixtureB() const (defined in b2Contact)b2Contactinline
    GetFriction() const b2Contactinline
    GetManifold()b2Contactinline
    GetManifold() const (defined in b2Contact)b2Contactinline
    GetNext()b2Contactinline
    GetNext() const (defined in b2Contact)b2Contactinline
    GetRestitution() const b2Contactinline
    GetTangentSpeed() const b2Contactinline
    GetWorldManifold(b2WorldManifold *worldManifold) const b2Contactinline
    InitializeRegisters() (defined in b2Contact)b2Contactprotectedstatic
    IsEnabled() const b2Contactinline
    IsTouching() const b2Contactinline
    m_fixtureA (defined in b2Contact)b2Contactprotected
    m_fixtureB (defined in b2Contact)b2Contactprotected
    m_flags (defined in b2Contact)b2Contactprotected
    m_friction (defined in b2Contact)b2Contactprotected
    m_indexA (defined in b2Contact)b2Contactprotected
    m_indexB (defined in b2Contact)b2Contactprotected
    m_manifold (defined in b2Contact)b2Contactprotected
    m_next (defined in b2Contact)b2Contactprotected
    m_nodeA (defined in b2Contact)b2Contactprotected
    m_nodeB (defined in b2Contact)b2Contactprotected
    m_prev (defined in b2Contact)b2Contactprotected
    m_restitution (defined in b2Contact)b2Contactprotected
    m_tangentSpeed (defined in b2Contact)b2Contactprotected
    m_toi (defined in b2Contact)b2Contactprotected
    m_toiCount (defined in b2Contact)b2Contactprotected
    ResetFriction()b2Contactinline
    ResetRestitution()b2Contactinline
    s_initialized (defined in b2Contact)b2Contactprotectedstatic
    s_registers (defined in b2Contact)b2Contactprotectedstatic
    SetEnabled(bool flag)b2Contactinline
    SetFriction(float32 friction)b2Contactinline
    SetRestitution(float32 restitution)b2Contactinline
    SetTangentSpeed(float32 speed)b2Contactinline
    Update(b2ContactListener *listener) (defined in b2Contact)b2Contactprotected
    ~b2ChainAndCircleContact() (defined in b2ChainAndCircleContact)b2ChainAndCircleContactinline
    ~b2Contact() (defined in b2Contact)b2Contactinlineprotectedvirtual
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_chain_and_circle_contact.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_chain_and_circle_contact.html deleted file mode 100644 index 339ff4a..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_chain_and_circle_contact.html +++ /dev/null @@ -1,307 +0,0 @@ - - - - - - -Box2D: b2ChainAndCircleContact Class Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2ChainAndCircleContact Class Reference
    -
    -
    -
    -Inheritance diagram for b2ChainAndCircleContact:
    -
    -
    - - -b2Contact - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Member Functions

    b2ChainAndCircleContact (b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB)
     
    -void Evaluate (b2Manifold *manifold, const b2Transform &xfA, const b2Transform &xfB)
     Evaluate this contact with your own manifold and transforms.
     
    - Public Member Functions inherited from b2Contact
    b2ManifoldGetManifold ()
     
    -const b2ManifoldGetManifold () const
     
    -void GetWorldManifold (b2WorldManifold *worldManifold) const
     Get the world manifold.
     
    -bool IsTouching () const
     Is this contact touching?
     
    void SetEnabled (bool flag)
     
    -bool IsEnabled () const
     Has this contact been disabled?
     
    -b2ContactGetNext ()
     Get the next contact in the world's contact list.
     
    -const b2ContactGetNext () const
     
    -b2FixtureGetFixtureA ()
     Get fixture A in this contact.
     
    -const b2FixtureGetFixtureA () const
     
    -int32 GetChildIndexA () const
     Get the child primitive index for fixture A.
     
    -b2FixtureGetFixtureB ()
     Get fixture B in this contact.
     
    -const b2FixtureGetFixtureB () const
     
    -int32 GetChildIndexB () const
     Get the child primitive index for fixture B.
     
    void SetFriction (float32 friction)
     
    -float32 GetFriction () const
     Get the friction.
     
    -void ResetFriction ()
     Reset the friction mixture to the default value.
     
    void SetRestitution (float32 restitution)
     
    -float32 GetRestitution () const
     Get the restitution.
     
    -void ResetRestitution ()
     Reset the restitution to the default value.
     
    -void SetTangentSpeed (float32 speed)
     Set the desired tangent speed for a conveyor belt behavior. In meters per second.
     
    -float32 GetTangentSpeed () const
     Get the desired tangent speed. In meters per second.
     
    - - - - - -

    -Static Public Member Functions

    -static b2ContactCreate (b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB, b2BlockAllocator *allocator)
     
    -static void Destroy (b2Contact *contact, b2BlockAllocator *allocator)
     
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Additional Inherited Members

    - Protected Types inherited from b2Contact
    enum  {
    -  e_islandFlag = 0x0001, -e_touchingFlag = 0x0002, -e_enabledFlag = 0x0004, -e_filterFlag = 0x0008, -
    -  e_bulletHitFlag = 0x0010, -e_toiFlag = 0x0020 -
    - }
     
    - Protected Member Functions inherited from b2Contact
    -void FlagForFiltering ()
     Flag this contact for filtering. Filtering will occur the next time step.
     
    b2Contact (b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB)
     
    -void Update (b2ContactListener *listener)
     
    - Static Protected Member Functions inherited from b2Contact
    -static void AddType (b2ContactCreateFcn *createFcn, b2ContactDestroyFcn *destroyFcn, b2Shape::Type typeA, b2Shape::Type typeB)
     
    -static void InitializeRegisters ()
     
    -static b2ContactCreate (b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB, b2BlockAllocator *allocator)
     
    -static void Destroy (b2Contact *contact, b2Shape::Type typeA, b2Shape::Type typeB, b2BlockAllocator *allocator)
     
    -static void Destroy (b2Contact *contact, b2BlockAllocator *allocator)
     
    - Protected Attributes inherited from b2Contact
    -uint32 m_flags
     
    -b2Contactm_prev
     
    -b2Contactm_next
     
    -b2ContactEdge m_nodeA
     
    -b2ContactEdge m_nodeB
     
    -b2Fixturem_fixtureA
     
    -b2Fixturem_fixtureB
     
    -int32 m_indexA
     
    -int32 m_indexB
     
    -b2Manifold m_manifold
     
    -int32 m_toiCount
     
    -float32 m_toi
     
    -float32 m_friction
     
    -float32 m_restitution
     
    -float32 m_tangentSpeed
     
    - Static Protected Attributes inherited from b2Contact
    -static b2ContactRegister s_registers [b2Shape::e_typeCount][b2Shape::e_typeCount]
     
    -static bool s_initialized = false
     
    -
    The documentation for this class was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_chain_and_circle_contact.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_chain_and_circle_contact.png deleted file mode 100644 index b94c4e7..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_chain_and_circle_contact.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_chain_and_polygon_contact-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_chain_and_polygon_contact-members.html deleted file mode 100644 index f6ac820..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_chain_and_polygon_contact-members.html +++ /dev/null @@ -1,159 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2ChainAndPolygonContact Member List
    -
    -
    - -

    This is the complete list of members for b2ChainAndPolygonContact, including all inherited members.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    AddType(b2ContactCreateFcn *createFcn, b2ContactDestroyFcn *destroyFcn, b2Shape::Type typeA, b2Shape::Type typeB) (defined in b2Contact)b2Contactprotectedstatic
    b2ChainAndPolygonContact(b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB) (defined in b2ChainAndPolygonContact)b2ChainAndPolygonContact
    b2Contact() (defined in b2Contact)b2Contactinlineprotected
    b2Contact(b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB) (defined in b2Contact)b2Contactprotected
    Create(b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB, b2BlockAllocator *allocator) (defined in b2ChainAndPolygonContact)b2ChainAndPolygonContactstatic
    Destroy(b2Contact *contact, b2BlockAllocator *allocator) (defined in b2ChainAndPolygonContact)b2ChainAndPolygonContactstatic
    Destroy(b2Contact *contact, b2Shape::Type typeA, b2Shape::Type typeB, b2BlockAllocator *allocator) (defined in b2Contact)b2Contactprotectedstatic
    e_bulletHitFlag enum value (defined in b2Contact)b2Contactprotected
    e_enabledFlag enum value (defined in b2Contact)b2Contactprotected
    e_filterFlag enum value (defined in b2Contact)b2Contactprotected
    e_islandFlag enum value (defined in b2Contact)b2Contactprotected
    e_toiFlag enum value (defined in b2Contact)b2Contactprotected
    e_touchingFlag enum value (defined in b2Contact)b2Contactprotected
    Evaluate(b2Manifold *manifold, const b2Transform &xfA, const b2Transform &xfB)b2ChainAndPolygonContactvirtual
    FlagForFiltering()b2Contactinlineprotected
    GetChildIndexA() const b2Contactinline
    GetChildIndexB() const b2Contactinline
    GetFixtureA()b2Contactinline
    GetFixtureA() const (defined in b2Contact)b2Contactinline
    GetFixtureB()b2Contactinline
    GetFixtureB() const (defined in b2Contact)b2Contactinline
    GetFriction() const b2Contactinline
    GetManifold()b2Contactinline
    GetManifold() const (defined in b2Contact)b2Contactinline
    GetNext()b2Contactinline
    GetNext() const (defined in b2Contact)b2Contactinline
    GetRestitution() const b2Contactinline
    GetTangentSpeed() const b2Contactinline
    GetWorldManifold(b2WorldManifold *worldManifold) const b2Contactinline
    InitializeRegisters() (defined in b2Contact)b2Contactprotectedstatic
    IsEnabled() const b2Contactinline
    IsTouching() const b2Contactinline
    m_fixtureA (defined in b2Contact)b2Contactprotected
    m_fixtureB (defined in b2Contact)b2Contactprotected
    m_flags (defined in b2Contact)b2Contactprotected
    m_friction (defined in b2Contact)b2Contactprotected
    m_indexA (defined in b2Contact)b2Contactprotected
    m_indexB (defined in b2Contact)b2Contactprotected
    m_manifold (defined in b2Contact)b2Contactprotected
    m_next (defined in b2Contact)b2Contactprotected
    m_nodeA (defined in b2Contact)b2Contactprotected
    m_nodeB (defined in b2Contact)b2Contactprotected
    m_prev (defined in b2Contact)b2Contactprotected
    m_restitution (defined in b2Contact)b2Contactprotected
    m_tangentSpeed (defined in b2Contact)b2Contactprotected
    m_toi (defined in b2Contact)b2Contactprotected
    m_toiCount (defined in b2Contact)b2Contactprotected
    ResetFriction()b2Contactinline
    ResetRestitution()b2Contactinline
    s_initialized (defined in b2Contact)b2Contactprotectedstatic
    s_registers (defined in b2Contact)b2Contactprotectedstatic
    SetEnabled(bool flag)b2Contactinline
    SetFriction(float32 friction)b2Contactinline
    SetRestitution(float32 restitution)b2Contactinline
    SetTangentSpeed(float32 speed)b2Contactinline
    Update(b2ContactListener *listener) (defined in b2Contact)b2Contactprotected
    ~b2ChainAndPolygonContact() (defined in b2ChainAndPolygonContact)b2ChainAndPolygonContactinline
    ~b2Contact() (defined in b2Contact)b2Contactinlineprotectedvirtual
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_chain_and_polygon_contact.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_chain_and_polygon_contact.html deleted file mode 100644 index f11b6f6..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_chain_and_polygon_contact.html +++ /dev/null @@ -1,307 +0,0 @@ - - - - - - -Box2D: b2ChainAndPolygonContact Class Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2ChainAndPolygonContact Class Reference
    -
    -
    -
    -Inheritance diagram for b2ChainAndPolygonContact:
    -
    -
    - - -b2Contact - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Member Functions

    b2ChainAndPolygonContact (b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB)
     
    -void Evaluate (b2Manifold *manifold, const b2Transform &xfA, const b2Transform &xfB)
     Evaluate this contact with your own manifold and transforms.
     
    - Public Member Functions inherited from b2Contact
    b2ManifoldGetManifold ()
     
    -const b2ManifoldGetManifold () const
     
    -void GetWorldManifold (b2WorldManifold *worldManifold) const
     Get the world manifold.
     
    -bool IsTouching () const
     Is this contact touching?
     
    void SetEnabled (bool flag)
     
    -bool IsEnabled () const
     Has this contact been disabled?
     
    -b2ContactGetNext ()
     Get the next contact in the world's contact list.
     
    -const b2ContactGetNext () const
     
    -b2FixtureGetFixtureA ()
     Get fixture A in this contact.
     
    -const b2FixtureGetFixtureA () const
     
    -int32 GetChildIndexA () const
     Get the child primitive index for fixture A.
     
    -b2FixtureGetFixtureB ()
     Get fixture B in this contact.
     
    -const b2FixtureGetFixtureB () const
     
    -int32 GetChildIndexB () const
     Get the child primitive index for fixture B.
     
    void SetFriction (float32 friction)
     
    -float32 GetFriction () const
     Get the friction.
     
    -void ResetFriction ()
     Reset the friction mixture to the default value.
     
    void SetRestitution (float32 restitution)
     
    -float32 GetRestitution () const
     Get the restitution.
     
    -void ResetRestitution ()
     Reset the restitution to the default value.
     
    -void SetTangentSpeed (float32 speed)
     Set the desired tangent speed for a conveyor belt behavior. In meters per second.
     
    -float32 GetTangentSpeed () const
     Get the desired tangent speed. In meters per second.
     
    - - - - - -

    -Static Public Member Functions

    -static b2ContactCreate (b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB, b2BlockAllocator *allocator)
     
    -static void Destroy (b2Contact *contact, b2BlockAllocator *allocator)
     
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Additional Inherited Members

    - Protected Types inherited from b2Contact
    enum  {
    -  e_islandFlag = 0x0001, -e_touchingFlag = 0x0002, -e_enabledFlag = 0x0004, -e_filterFlag = 0x0008, -
    -  e_bulletHitFlag = 0x0010, -e_toiFlag = 0x0020 -
    - }
     
    - Protected Member Functions inherited from b2Contact
    -void FlagForFiltering ()
     Flag this contact for filtering. Filtering will occur the next time step.
     
    b2Contact (b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB)
     
    -void Update (b2ContactListener *listener)
     
    - Static Protected Member Functions inherited from b2Contact
    -static void AddType (b2ContactCreateFcn *createFcn, b2ContactDestroyFcn *destroyFcn, b2Shape::Type typeA, b2Shape::Type typeB)
     
    -static void InitializeRegisters ()
     
    -static b2ContactCreate (b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB, b2BlockAllocator *allocator)
     
    -static void Destroy (b2Contact *contact, b2Shape::Type typeA, b2Shape::Type typeB, b2BlockAllocator *allocator)
     
    -static void Destroy (b2Contact *contact, b2BlockAllocator *allocator)
     
    - Protected Attributes inherited from b2Contact
    -uint32 m_flags
     
    -b2Contactm_prev
     
    -b2Contactm_next
     
    -b2ContactEdge m_nodeA
     
    -b2ContactEdge m_nodeB
     
    -b2Fixturem_fixtureA
     
    -b2Fixturem_fixtureB
     
    -int32 m_indexA
     
    -int32 m_indexB
     
    -b2Manifold m_manifold
     
    -int32 m_toiCount
     
    -float32 m_toi
     
    -float32 m_friction
     
    -float32 m_restitution
     
    -float32 m_tangentSpeed
     
    - Static Protected Attributes inherited from b2Contact
    -static b2ContactRegister s_registers [b2Shape::e_typeCount][b2Shape::e_typeCount]
     
    -static bool s_initialized = false
     
    -
    The documentation for this class was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_chain_and_polygon_contact.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_chain_and_polygon_contact.png deleted file mode 100644 index a5fd4b1..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_chain_and_polygon_contact.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_chain_shape-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_chain_shape-members.html deleted file mode 100644 index 6041490..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_chain_shape-members.html +++ /dev/null @@ -1,130 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2ChainShape Member List
    -
    -
    - -

    This is the complete list of members for b2ChainShape, including all inherited members.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    b2ChainShape() (defined in b2ChainShape)b2ChainShapeinline
    Clone(b2BlockAllocator *allocator) const b2ChainShapevirtual
    ComputeAABB(b2AABB *aabb, const b2Transform &transform, int32 childIndex) const b2ChainShapevirtual
    ComputeMass(b2MassData *massData, float32 density) const b2ChainShapevirtual
    CreateChain(const b2Vec2 *vertices, int32 count)b2ChainShape
    CreateLoop(const b2Vec2 *vertices, int32 count)b2ChainShape
    e_chain enum value (defined in b2Shape)b2Shape
    e_circle enum value (defined in b2Shape)b2Shape
    e_edge enum value (defined in b2Shape)b2Shape
    e_polygon enum value (defined in b2Shape)b2Shape
    e_typeCount enum value (defined in b2Shape)b2Shape
    GetChildCount() const b2ChainShapevirtual
    GetChildEdge(b2EdgeShape *edge, int32 index) const b2ChainShape
    GetType() const b2Shapeinline
    m_countb2ChainShape
    m_hasNextVertex (defined in b2ChainShape)b2ChainShape
    m_hasPrevVertex (defined in b2ChainShape)b2ChainShape
    m_nextVertex (defined in b2ChainShape)b2ChainShape
    m_prevVertex (defined in b2ChainShape)b2ChainShape
    m_radius (defined in b2Shape)b2Shape
    m_type (defined in b2Shape)b2Shape
    m_verticesb2ChainShape
    RayCast(b2RayCastOutput *output, const b2RayCastInput &input, const b2Transform &transform, int32 childIndex) const b2ChainShapevirtual
    SetNextVertex(const b2Vec2 &nextVertex)b2ChainShape
    SetPrevVertex(const b2Vec2 &prevVertex)b2ChainShape
    TestPoint(const b2Transform &transform, const b2Vec2 &p) const b2ChainShapevirtual
    Type enum name (defined in b2Shape)b2Shape
    ~b2ChainShape()b2ChainShape
    ~b2Shape() (defined in b2Shape)b2Shapeinlinevirtual
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_chain_shape.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_chain_shape.html deleted file mode 100644 index fc8b699..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_chain_shape.html +++ /dev/null @@ -1,450 +0,0 @@ - - - - - - -Box2D: b2ChainShape Class Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2ChainShape Class Reference
    -
    -
    - -

    #include <b2ChainShape.h>

    -
    -Inheritance diagram for b2ChainShape:
    -
    -
    - - -b2Shape - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Member Functions

    ~b2ChainShape ()
     The destructor frees the vertices using b2Free.
     
    void CreateLoop (const b2Vec2 *vertices, int32 count)
     
    void CreateChain (const b2Vec2 *vertices, int32 count)
     
    void SetPrevVertex (const b2Vec2 &prevVertex)
     
    void SetNextVertex (const b2Vec2 &nextVertex)
     
    -b2ShapeClone (b2BlockAllocator *allocator) const
     Implement b2Shape. Vertices are cloned using b2Alloc.
     
    int32 GetChildCount () const
     
    -void GetChildEdge (b2EdgeShape *edge, int32 index) const
     Get a child edge.
     
    bool TestPoint (const b2Transform &transform, const b2Vec2 &p) const
     
    -bool RayCast (b2RayCastOutput *output, const b2RayCastInput &input, const b2Transform &transform, int32 childIndex) const
     Implement b2Shape.
     
    void ComputeAABB (b2AABB *aabb, const b2Transform &transform, int32 childIndex) const
     
    void ComputeMass (b2MassData *massData, float32 density) const
     
    - Public Member Functions inherited from b2Shape
    Type GetType () const
     
    - - - - - - - - - - - - - - - - - - - - -

    -Public Attributes

    -b2Vec2m_vertices
     The vertices. Owned by this class.
     
    -int32 m_count
     The vertex count.
     
    -b2Vec2 m_prevVertex
     
    -b2Vec2 m_nextVertex
     
    -bool m_hasPrevVertex
     
    -bool m_hasNextVertex
     
    - Public Attributes inherited from b2Shape
    -Type m_type
     
    -float32 m_radius
     
    - - - - -

    -Additional Inherited Members

    - Public Types inherited from b2Shape
    enum  Type {
    -  e_circle = 0, -e_edge = 1, -e_polygon = 2, -e_chain = 3, -
    -  e_typeCount = 4 -
    - }
     
    -

    Detailed Description

    -

    A chain shape is a free form sequence of line segments. The chain has two-sided collision, so you can use inside and outside collision. Therefore, you may use any winding order. Since there may be many vertices, they are allocated using b2Alloc. Connectivity information is used to create smooth collisions. WARNING: The chain will not collide properly if there are self-intersections.

    -

    Member Function Documentation

    - -
    -
    - - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    void b2ChainShape::ComputeAABB (b2AABBaabb,
    const b2Transformtransform,
    int32 childIndex 
    ) const
    -
    -virtual
    -
    -
    See Also
    b2Shape::ComputeAABB
    - -

    Implements b2Shape.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - - - - - - - - - - - -
    void b2ChainShape::ComputeMass (b2MassDatamassData,
    float32 density 
    ) const
    -
    -virtual
    -
    -

    Chains have zero mass.

    -
    See Also
    b2Shape::ComputeMass
    - -

    Implements b2Shape.

    - -
    -
    - -
    -
    - - - - - - - - - - - - - - - - - - -
    void b2ChainShape::CreateChain (const b2Vec2vertices,
    int32 count 
    )
    -
    -

    Create a chain with isolated end vertices.

    -
    Parameters
    - - - -
    verticesan array of vertices, these are copied
    countthe vertex count
    -
    -
    - -
    -
    - -
    -
    - - - - - - - - - - - - - - - - - - -
    void b2ChainShape::CreateLoop (const b2Vec2vertices,
    int32 count 
    )
    -
    -

    Create a loop. This automatically adjusts connectivity.

    -
    Parameters
    - - - -
    verticesan array of vertices, these are copied
    countthe vertex count
    -
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    int32 b2ChainShape::GetChildCount () const
    -
    -virtual
    -
    -
    See Also
    b2Shape::GetChildCount
    - -

    Implements b2Shape.

    - -
    -
    - -
    -
    - - - - - - - - -
    void b2ChainShape::SetNextVertex (const b2Vec2nextVertex)
    -
    -

    Establish connectivity to a vertex that follows the last vertex. Don't call this for loops.

    - -
    -
    - -
    -
    - - - - - - - - -
    void b2ChainShape::SetPrevVertex (const b2Vec2prevVertex)
    -
    -

    Establish connectivity to a vertex that precedes the first vertex. Don't call this for loops.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - - - - - - - - - - - -
    bool b2ChainShape::TestPoint (const b2Transformtransform,
    const b2Vec2p 
    ) const
    -
    -virtual
    -
    -

    This always return false.

    -
    See Also
    b2Shape::TestPoint
    - -

    Implements b2Shape.

    - -
    -
    -
    The documentation for this class was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_chain_shape.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_chain_shape.png deleted file mode 100644 index 81e04d9..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_chain_shape.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_circle_contact-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_circle_contact-members.html deleted file mode 100644 index b6fd762..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_circle_contact-members.html +++ /dev/null @@ -1,159 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2CircleContact Member List
    -
    -
    - -

    This is the complete list of members for b2CircleContact, including all inherited members.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    AddType(b2ContactCreateFcn *createFcn, b2ContactDestroyFcn *destroyFcn, b2Shape::Type typeA, b2Shape::Type typeB) (defined in b2Contact)b2Contactprotectedstatic
    b2CircleContact(b2Fixture *fixtureA, b2Fixture *fixtureB) (defined in b2CircleContact)b2CircleContact
    b2Contact() (defined in b2Contact)b2Contactinlineprotected
    b2Contact(b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB) (defined in b2Contact)b2Contactprotected
    Create(b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB, b2BlockAllocator *allocator) (defined in b2CircleContact)b2CircleContactstatic
    Destroy(b2Contact *contact, b2BlockAllocator *allocator) (defined in b2CircleContact)b2CircleContactstatic
    Destroy(b2Contact *contact, b2Shape::Type typeA, b2Shape::Type typeB, b2BlockAllocator *allocator) (defined in b2Contact)b2Contactprotectedstatic
    e_bulletHitFlag enum value (defined in b2Contact)b2Contactprotected
    e_enabledFlag enum value (defined in b2Contact)b2Contactprotected
    e_filterFlag enum value (defined in b2Contact)b2Contactprotected
    e_islandFlag enum value (defined in b2Contact)b2Contactprotected
    e_toiFlag enum value (defined in b2Contact)b2Contactprotected
    e_touchingFlag enum value (defined in b2Contact)b2Contactprotected
    Evaluate(b2Manifold *manifold, const b2Transform &xfA, const b2Transform &xfB)b2CircleContactvirtual
    FlagForFiltering()b2Contactinlineprotected
    GetChildIndexA() const b2Contactinline
    GetChildIndexB() const b2Contactinline
    GetFixtureA()b2Contactinline
    GetFixtureA() const (defined in b2Contact)b2Contactinline
    GetFixtureB()b2Contactinline
    GetFixtureB() const (defined in b2Contact)b2Contactinline
    GetFriction() const b2Contactinline
    GetManifold()b2Contactinline
    GetManifold() const (defined in b2Contact)b2Contactinline
    GetNext()b2Contactinline
    GetNext() const (defined in b2Contact)b2Contactinline
    GetRestitution() const b2Contactinline
    GetTangentSpeed() const b2Contactinline
    GetWorldManifold(b2WorldManifold *worldManifold) const b2Contactinline
    InitializeRegisters() (defined in b2Contact)b2Contactprotectedstatic
    IsEnabled() const b2Contactinline
    IsTouching() const b2Contactinline
    m_fixtureA (defined in b2Contact)b2Contactprotected
    m_fixtureB (defined in b2Contact)b2Contactprotected
    m_flags (defined in b2Contact)b2Contactprotected
    m_friction (defined in b2Contact)b2Contactprotected
    m_indexA (defined in b2Contact)b2Contactprotected
    m_indexB (defined in b2Contact)b2Contactprotected
    m_manifold (defined in b2Contact)b2Contactprotected
    m_next (defined in b2Contact)b2Contactprotected
    m_nodeA (defined in b2Contact)b2Contactprotected
    m_nodeB (defined in b2Contact)b2Contactprotected
    m_prev (defined in b2Contact)b2Contactprotected
    m_restitution (defined in b2Contact)b2Contactprotected
    m_tangentSpeed (defined in b2Contact)b2Contactprotected
    m_toi (defined in b2Contact)b2Contactprotected
    m_toiCount (defined in b2Contact)b2Contactprotected
    ResetFriction()b2Contactinline
    ResetRestitution()b2Contactinline
    s_initialized (defined in b2Contact)b2Contactprotectedstatic
    s_registers (defined in b2Contact)b2Contactprotectedstatic
    SetEnabled(bool flag)b2Contactinline
    SetFriction(float32 friction)b2Contactinline
    SetRestitution(float32 restitution)b2Contactinline
    SetTangentSpeed(float32 speed)b2Contactinline
    Update(b2ContactListener *listener) (defined in b2Contact)b2Contactprotected
    ~b2CircleContact() (defined in b2CircleContact)b2CircleContactinline
    ~b2Contact() (defined in b2Contact)b2Contactinlineprotectedvirtual
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_circle_contact.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_circle_contact.html deleted file mode 100644 index 91e1235..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_circle_contact.html +++ /dev/null @@ -1,307 +0,0 @@ - - - - - - -Box2D: b2CircleContact Class Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2CircleContact Class Reference
    -
    -
    -
    -Inheritance diagram for b2CircleContact:
    -
    -
    - - -b2Contact - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Member Functions

    b2CircleContact (b2Fixture *fixtureA, b2Fixture *fixtureB)
     
    -void Evaluate (b2Manifold *manifold, const b2Transform &xfA, const b2Transform &xfB)
     Evaluate this contact with your own manifold and transforms.
     
    - Public Member Functions inherited from b2Contact
    b2ManifoldGetManifold ()
     
    -const b2ManifoldGetManifold () const
     
    -void GetWorldManifold (b2WorldManifold *worldManifold) const
     Get the world manifold.
     
    -bool IsTouching () const
     Is this contact touching?
     
    void SetEnabled (bool flag)
     
    -bool IsEnabled () const
     Has this contact been disabled?
     
    -b2ContactGetNext ()
     Get the next contact in the world's contact list.
     
    -const b2ContactGetNext () const
     
    -b2FixtureGetFixtureA ()
     Get fixture A in this contact.
     
    -const b2FixtureGetFixtureA () const
     
    -int32 GetChildIndexA () const
     Get the child primitive index for fixture A.
     
    -b2FixtureGetFixtureB ()
     Get fixture B in this contact.
     
    -const b2FixtureGetFixtureB () const
     
    -int32 GetChildIndexB () const
     Get the child primitive index for fixture B.
     
    void SetFriction (float32 friction)
     
    -float32 GetFriction () const
     Get the friction.
     
    -void ResetFriction ()
     Reset the friction mixture to the default value.
     
    void SetRestitution (float32 restitution)
     
    -float32 GetRestitution () const
     Get the restitution.
     
    -void ResetRestitution ()
     Reset the restitution to the default value.
     
    -void SetTangentSpeed (float32 speed)
     Set the desired tangent speed for a conveyor belt behavior. In meters per second.
     
    -float32 GetTangentSpeed () const
     Get the desired tangent speed. In meters per second.
     
    - - - - - -

    -Static Public Member Functions

    -static b2ContactCreate (b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB, b2BlockAllocator *allocator)
     
    -static void Destroy (b2Contact *contact, b2BlockAllocator *allocator)
     
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Additional Inherited Members

    - Protected Types inherited from b2Contact
    enum  {
    -  e_islandFlag = 0x0001, -e_touchingFlag = 0x0002, -e_enabledFlag = 0x0004, -e_filterFlag = 0x0008, -
    -  e_bulletHitFlag = 0x0010, -e_toiFlag = 0x0020 -
    - }
     
    - Protected Member Functions inherited from b2Contact
    -void FlagForFiltering ()
     Flag this contact for filtering. Filtering will occur the next time step.
     
    b2Contact (b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB)
     
    -void Update (b2ContactListener *listener)
     
    - Static Protected Member Functions inherited from b2Contact
    -static void AddType (b2ContactCreateFcn *createFcn, b2ContactDestroyFcn *destroyFcn, b2Shape::Type typeA, b2Shape::Type typeB)
     
    -static void InitializeRegisters ()
     
    -static b2ContactCreate (b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB, b2BlockAllocator *allocator)
     
    -static void Destroy (b2Contact *contact, b2Shape::Type typeA, b2Shape::Type typeB, b2BlockAllocator *allocator)
     
    -static void Destroy (b2Contact *contact, b2BlockAllocator *allocator)
     
    - Protected Attributes inherited from b2Contact
    -uint32 m_flags
     
    -b2Contactm_prev
     
    -b2Contactm_next
     
    -b2ContactEdge m_nodeA
     
    -b2ContactEdge m_nodeB
     
    -b2Fixturem_fixtureA
     
    -b2Fixturem_fixtureB
     
    -int32 m_indexA
     
    -int32 m_indexB
     
    -b2Manifold m_manifold
     
    -int32 m_toiCount
     
    -float32 m_toi
     
    -float32 m_friction
     
    -float32 m_restitution
     
    -float32 m_tangentSpeed
     
    - Static Protected Attributes inherited from b2Contact
    -static b2ContactRegister s_registers [b2Shape::e_typeCount][b2Shape::e_typeCount]
     
    -static bool s_initialized = false
     
    -
    The documentation for this class was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_circle_contact.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_circle_contact.png deleted file mode 100644 index 2e7b374..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_circle_contact.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_circle_shape-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_circle_shape-members.html deleted file mode 100644 index a3cd892..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_circle_shape-members.html +++ /dev/null @@ -1,123 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2CircleShape Member List
    -
    -
    - -

    This is the complete list of members for b2CircleShape, including all inherited members.

    - - - - - - - - - - - - - - - - - - - - - - - -
    b2CircleShape() (defined in b2CircleShape)b2CircleShapeinline
    Clone(b2BlockAllocator *allocator) const b2CircleShapevirtual
    ComputeAABB(b2AABB *aabb, const b2Transform &transform, int32 childIndex) const b2CircleShapevirtual
    ComputeMass(b2MassData *massData, float32 density) const b2CircleShapevirtual
    e_chain enum value (defined in b2Shape)b2Shape
    e_circle enum value (defined in b2Shape)b2Shape
    e_edge enum value (defined in b2Shape)b2Shape
    e_polygon enum value (defined in b2Shape)b2Shape
    e_typeCount enum value (defined in b2Shape)b2Shape
    GetChildCount() const b2CircleShapevirtual
    GetSupport(const b2Vec2 &d) const b2CircleShapeinline
    GetSupportVertex(const b2Vec2 &d) const b2CircleShapeinline
    GetType() const b2Shapeinline
    GetVertex(int32 index) const b2CircleShapeinline
    GetVertexCount() const b2CircleShapeinline
    m_pb2CircleShape
    m_radius (defined in b2Shape)b2Shape
    m_type (defined in b2Shape)b2Shape
    RayCast(b2RayCastOutput *output, const b2RayCastInput &input, const b2Transform &transform, int32 childIndex) const b2CircleShapevirtual
    TestPoint(const b2Transform &transform, const b2Vec2 &p) const b2CircleShapevirtual
    Type enum name (defined in b2Shape)b2Shape
    ~b2Shape() (defined in b2Shape)b2Shapeinlinevirtual
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_circle_shape.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_circle_shape.html deleted file mode 100644 index cbddd42..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_circle_shape.html +++ /dev/null @@ -1,298 +0,0 @@ - - - - - - -Box2D: b2CircleShape Class Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2CircleShape Class Reference
    -
    -
    - -

    A circle shape. - More...

    - -

    #include <b2CircleShape.h>

    -
    -Inheritance diagram for b2CircleShape:
    -
    -
    - - -b2Shape - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Member Functions

    -b2ShapeClone (b2BlockAllocator *allocator) const
     Implement b2Shape.
     
    int32 GetChildCount () const
     
    -bool TestPoint (const b2Transform &transform, const b2Vec2 &p) const
     Implement b2Shape.
     
    -bool RayCast (b2RayCastOutput *output, const b2RayCastInput &input, const b2Transform &transform, int32 childIndex) const
     Implement b2Shape.
     
    void ComputeAABB (b2AABB *aabb, const b2Transform &transform, int32 childIndex) const
     
    void ComputeMass (b2MassData *massData, float32 density) const
     
    -int32 GetSupport (const b2Vec2 &d) const
     Get the supporting vertex index in the given direction.
     
    -const b2Vec2GetSupportVertex (const b2Vec2 &d) const
     Get the supporting vertex in the given direction.
     
    -int32 GetVertexCount () const
     Get the vertex count.
     
    -const b2Vec2GetVertex (int32 index) const
     Get a vertex by index. Used by b2Distance.
     
    - Public Member Functions inherited from b2Shape
    Type GetType () const
     
    - - - - - - - - - -

    -Public Attributes

    -b2Vec2 m_p
     Position.
     
    - Public Attributes inherited from b2Shape
    -Type m_type
     
    -float32 m_radius
     
    - - - - -

    -Additional Inherited Members

    - Public Types inherited from b2Shape
    enum  Type {
    -  e_circle = 0, -e_edge = 1, -e_polygon = 2, -e_chain = 3, -
    -  e_typeCount = 4 -
    - }
     
    -

    Detailed Description

    -

    A circle shape.

    -

    Member Function Documentation

    - -
    -
    - - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    void b2CircleShape::ComputeAABB (b2AABBaabb,
    const b2Transformtransform,
    int32 childIndex 
    ) const
    -
    -virtual
    -
    -
    See Also
    b2Shape::ComputeAABB
    - -

    Implements b2Shape.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - - - - - - - - - - - -
    void b2CircleShape::ComputeMass (b2MassDatamassData,
    float32 density 
    ) const
    -
    -virtual
    -
    -
    See Also
    b2Shape::ComputeMass
    - -

    Implements b2Shape.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    int32 b2CircleShape::GetChildCount () const
    -
    -virtual
    -
    -
    See Also
    b2Shape::GetChildCount
    - -

    Implements b2Shape.

    - -
    -
    -
    The documentation for this class was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_circle_shape.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_circle_shape.png deleted file mode 100644 index 76db435..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_circle_shape.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_contact-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_contact-members.html deleted file mode 100644 index 0ab2fd0..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_contact-members.html +++ /dev/null @@ -1,162 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2Contact Member List
    -
    -
    - -

    This is the complete list of members for b2Contact, including all inherited members.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    AddType(b2ContactCreateFcn *createFcn, b2ContactDestroyFcn *destroyFcn, b2Shape::Type typeA, b2Shape::Type typeB) (defined in b2Contact)b2Contactprotectedstatic
    b2Body (defined in b2Contact)b2Contactfriend
    b2Contact() (defined in b2Contact)b2Contactinlineprotected
    b2Contact(b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB) (defined in b2Contact)b2Contactprotected
    b2ContactManager (defined in b2Contact)b2Contactfriend
    b2ContactSolver (defined in b2Contact)b2Contactfriend
    b2Fixture (defined in b2Contact)b2Contactfriend
    b2World (defined in b2Contact)b2Contactfriend
    Create(b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB, b2BlockAllocator *allocator) (defined in b2Contact)b2Contactprotectedstatic
    Destroy(b2Contact *contact, b2Shape::Type typeA, b2Shape::Type typeB, b2BlockAllocator *allocator) (defined in b2Contact)b2Contactprotectedstatic
    Destroy(b2Contact *contact, b2BlockAllocator *allocator) (defined in b2Contact)b2Contactprotectedstatic
    e_bulletHitFlag enum value (defined in b2Contact)b2Contactprotected
    e_enabledFlag enum value (defined in b2Contact)b2Contactprotected
    e_filterFlag enum value (defined in b2Contact)b2Contactprotected
    e_islandFlag enum value (defined in b2Contact)b2Contactprotected
    e_toiFlag enum value (defined in b2Contact)b2Contactprotected
    e_touchingFlag enum value (defined in b2Contact)b2Contactprotected
    Evaluate(b2Manifold *manifold, const b2Transform &xfA, const b2Transform &xfB)=0b2Contactpure virtual
    FlagForFiltering()b2Contactinlineprotected
    GetChildIndexA() const b2Contactinline
    GetChildIndexB() const b2Contactinline
    GetFixtureA()b2Contactinline
    GetFixtureA() const (defined in b2Contact)b2Contactinline
    GetFixtureB()b2Contactinline
    GetFixtureB() const (defined in b2Contact)b2Contactinline
    GetFriction() const b2Contactinline
    GetManifold()b2Contactinline
    GetManifold() const (defined in b2Contact)b2Contactinline
    GetNext()b2Contactinline
    GetNext() const (defined in b2Contact)b2Contactinline
    GetRestitution() const b2Contactinline
    GetTangentSpeed() const b2Contactinline
    GetWorldManifold(b2WorldManifold *worldManifold) const b2Contactinline
    InitializeRegisters() (defined in b2Contact)b2Contactprotectedstatic
    IsEnabled() const b2Contactinline
    IsTouching() const b2Contactinline
    m_fixtureA (defined in b2Contact)b2Contactprotected
    m_fixtureB (defined in b2Contact)b2Contactprotected
    m_flags (defined in b2Contact)b2Contactprotected
    m_friction (defined in b2Contact)b2Contactprotected
    m_indexA (defined in b2Contact)b2Contactprotected
    m_indexB (defined in b2Contact)b2Contactprotected
    m_manifold (defined in b2Contact)b2Contactprotected
    m_next (defined in b2Contact)b2Contactprotected
    m_nodeA (defined in b2Contact)b2Contactprotected
    m_nodeB (defined in b2Contact)b2Contactprotected
    m_prev (defined in b2Contact)b2Contactprotected
    m_restitution (defined in b2Contact)b2Contactprotected
    m_tangentSpeed (defined in b2Contact)b2Contactprotected
    m_toi (defined in b2Contact)b2Contactprotected
    m_toiCount (defined in b2Contact)b2Contactprotected
    ResetFriction()b2Contactinline
    ResetRestitution()b2Contactinline
    s_initialized (defined in b2Contact)b2Contactprotectedstatic
    s_registers (defined in b2Contact)b2Contactprotectedstatic
    SetEnabled(bool flag)b2Contactinline
    SetFriction(float32 friction)b2Contactinline
    SetRestitution(float32 restitution)b2Contactinline
    SetTangentSpeed(float32 speed)b2Contactinline
    Update(b2ContactListener *listener) (defined in b2Contact)b2Contactprotected
    ~b2Contact() (defined in b2Contact)b2Contactinlineprotectedvirtual
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_contact.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_contact.html deleted file mode 100644 index 2c30af2..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_contact.html +++ /dev/null @@ -1,434 +0,0 @@ - - - - - - -Box2D: b2Contact Class Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    - -
    - -

    #include <b2Contact.h>

    -
    -Inheritance diagram for b2Contact:
    -
    -
    - - -b2ChainAndCircleContact -b2ChainAndPolygonContact -b2CircleContact -b2EdgeAndCircleContact -b2EdgeAndPolygonContact -b2PolygonAndCircleContact -b2PolygonContact - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Member Functions

    b2ManifoldGetManifold ()
     
    -const b2ManifoldGetManifold () const
     
    -void GetWorldManifold (b2WorldManifold *worldManifold) const
     Get the world manifold.
     
    -bool IsTouching () const
     Is this contact touching?
     
    void SetEnabled (bool flag)
     
    -bool IsEnabled () const
     Has this contact been disabled?
     
    -b2ContactGetNext ()
     Get the next contact in the world's contact list.
     
    -const b2ContactGetNext () const
     
    -b2FixtureGetFixtureA ()
     Get fixture A in this contact.
     
    -const b2FixtureGetFixtureA () const
     
    -int32 GetChildIndexA () const
     Get the child primitive index for fixture A.
     
    -b2FixtureGetFixtureB ()
     Get fixture B in this contact.
     
    -const b2FixtureGetFixtureB () const
     
    -int32 GetChildIndexB () const
     Get the child primitive index for fixture B.
     
    void SetFriction (float32 friction)
     
    -float32 GetFriction () const
     Get the friction.
     
    -void ResetFriction ()
     Reset the friction mixture to the default value.
     
    void SetRestitution (float32 restitution)
     
    -float32 GetRestitution () const
     Get the restitution.
     
    -void ResetRestitution ()
     Reset the restitution to the default value.
     
    -void SetTangentSpeed (float32 speed)
     Set the desired tangent speed for a conveyor belt behavior. In meters per second.
     
    -float32 GetTangentSpeed () const
     Get the desired tangent speed. In meters per second.
     
    -virtual void Evaluate (b2Manifold *manifold, const b2Transform &xfA, const b2Transform &xfB)=0
     Evaluate this contact with your own manifold and transforms.
     
    - - - -

    -Protected Types

    enum  {
    -  e_islandFlag = 0x0001, -e_touchingFlag = 0x0002, -e_enabledFlag = 0x0004, -e_filterFlag = 0x0008, -
    -  e_bulletHitFlag = 0x0010, -e_toiFlag = 0x0020 -
    - }
     
    - - - - - - - - -

    -Protected Member Functions

    -void FlagForFiltering ()
     Flag this contact for filtering. Filtering will occur the next time step.
     
    b2Contact (b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB)
     
    -void Update (b2ContactListener *listener)
     
    - - - - - - - - - - - -

    -Static Protected Member Functions

    -static void AddType (b2ContactCreateFcn *createFcn, b2ContactDestroyFcn *destroyFcn, b2Shape::Type typeA, b2Shape::Type typeB)
     
    -static void InitializeRegisters ()
     
    -static b2ContactCreate (b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB, b2BlockAllocator *allocator)
     
    -static void Destroy (b2Contact *contact, b2Shape::Type typeA, b2Shape::Type typeB, b2BlockAllocator *allocator)
     
    -static void Destroy (b2Contact *contact, b2BlockAllocator *allocator)
     
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Protected Attributes

    -uint32 m_flags
     
    -b2Contactm_prev
     
    -b2Contactm_next
     
    -b2ContactEdge m_nodeA
     
    -b2ContactEdge m_nodeB
     
    -b2Fixturem_fixtureA
     
    -b2Fixturem_fixtureB
     
    -int32 m_indexA
     
    -int32 m_indexB
     
    -b2Manifold m_manifold
     
    -int32 m_toiCount
     
    -float32 m_toi
     
    -float32 m_friction
     
    -float32 m_restitution
     
    -float32 m_tangentSpeed
     
    - - - - - -

    -Static Protected Attributes

    -static b2ContactRegister s_registers [b2Shape::e_typeCount][b2Shape::e_typeCount]
     
    -static bool s_initialized = false
     
    - - - - - - - - - - - -

    -Friends

    -class b2ContactManager
     
    -class b2World
     
    -class b2ContactSolver
     
    -class b2Body
     
    -class b2Fixture
     
    -

    Detailed Description

    -

    The class manages contact between two shapes. A contact exists for each overlapping AABB in the broad-phase (except if filtered). Therefore a contact object may exist that has no contact points.

    -

    Member Function Documentation

    - -
    -
    - - - - - -
    - - - - - - - -
    b2Manifold * b2Contact::GetManifold ()
    -
    -inline
    -
    -

    Get the contact manifold. Do not modify the manifold unless you understand the internals of Box2D.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - -
    void b2Contact::SetEnabled (bool flag)
    -
    -inline
    -
    -

    Enable/disable this contact. This can be used inside the pre-solve contact listener. The contact is only disabled for the current time step (or sub-step in continuous collisions).

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - -
    void b2Contact::SetFriction (float32 friction)
    -
    -inline
    -
    -

    Override the default friction mixture. You can call this in b2ContactListener::PreSolve. This value persists until set or reset.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - -
    void b2Contact::SetRestitution (float32 restitution)
    -
    -inline
    -
    -

    Override the default restitution mixture. You can call this in b2ContactListener::PreSolve. The value persists until you set or reset.

    - -
    -
    -
    The documentation for this class was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_contact.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_contact.png deleted file mode 100644 index 8e41266..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_contact.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_contact_filter-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_contact_filter-members.html deleted file mode 100644 index 0f2e11d..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_contact_filter-members.html +++ /dev/null @@ -1,103 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2ContactFilter Member List
    -
    -
    - -

    This is the complete list of members for b2ContactFilter, including all inherited members.

    - - - -
    ShouldCollide(b2Fixture *fixtureA, b2Fixture *fixtureB)b2ContactFiltervirtual
    ~b2ContactFilter() (defined in b2ContactFilter)b2ContactFilterinlinevirtual
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_contact_filter.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_contact_filter.html deleted file mode 100644 index 872266e..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_contact_filter.html +++ /dev/null @@ -1,152 +0,0 @@ - - - - - - -Box2D: b2ContactFilter Class Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2ContactFilter Class Reference
    -
    -
    - -

    #include <b2WorldCallbacks.h>

    - - - - -

    -Public Member Functions

    virtual bool ShouldCollide (b2Fixture *fixtureA, b2Fixture *fixtureB)
     
    -

    Detailed Description

    -

    Implement this class to provide collision filtering. In other words, you can implement this class if you want finer control over contact creation.

    -

    Member Function Documentation

    - -
    -
    - - - - - -
    - - - - - - - - - - - - - - - - - - -
    bool b2ContactFilter::ShouldCollide (b2FixturefixtureA,
    b2FixturefixtureB 
    )
    -
    -virtual
    -
    -

    Return true if contact calculations should be performed between these two shapes.

    -
    Warning
    for performance reasons this is only called when the AABBs begin to overlap.
    - -
    -
    -
    The documentation for this class was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_contact_listener-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_contact_listener-members.html deleted file mode 100644 index 97e3b34..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_contact_listener-members.html +++ /dev/null @@ -1,106 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2ContactListener Member List
    -
    -
    - -

    This is the complete list of members for b2ContactListener, including all inherited members.

    - - - - - - -
    BeginContact(b2Contact *contact)b2ContactListenerinlinevirtual
    EndContact(b2Contact *contact)b2ContactListenerinlinevirtual
    PostSolve(b2Contact *contact, const b2ContactImpulse *impulse)b2ContactListenerinlinevirtual
    PreSolve(b2Contact *contact, const b2Manifold *oldManifold)b2ContactListenerinlinevirtual
    ~b2ContactListener() (defined in b2ContactListener)b2ContactListenerinlinevirtual
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_contact_listener.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_contact_listener.html deleted file mode 100644 index 1ad8aa1..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_contact_listener.html +++ /dev/null @@ -1,196 +0,0 @@ - - - - - - -Box2D: b2ContactListener Class Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2ContactListener Class Reference
    -
    -
    - -

    #include <b2WorldCallbacks.h>

    - - - - - - - - - - - - -

    -Public Member Functions

    -virtual void BeginContact (b2Contact *contact)
     Called when two fixtures begin to touch.
     
    -virtual void EndContact (b2Contact *contact)
     Called when two fixtures cease to touch.
     
    virtual void PreSolve (b2Contact *contact, const b2Manifold *oldManifold)
     
    virtual void PostSolve (b2Contact *contact, const b2ContactImpulse *impulse)
     
    -

    Detailed Description

    -

    Implement this class to get contact information. You can use these results for things like sounds and game logic. You can also get contact results by traversing the contact lists after the time step. However, you might miss some contacts because continuous physics leads to sub-stepping. Additionally you may receive multiple callbacks for the same contact in a single time step. You should strive to make your callbacks efficient because there may be many callbacks per time step.

    -
    Warning
    You cannot create/destroy Box2D entities inside these callbacks.
    -

    Member Function Documentation

    - -
    -
    - - - - - -
    - - - - - - - - - - - - - - - - - - -
    virtual void b2ContactListener::PostSolve (b2Contactcontact,
    const b2ContactImpulseimpulse 
    )
    -
    -inlinevirtual
    -
    -

    This lets you inspect a contact after the solver is finished. This is useful for inspecting impulses. Note: the contact manifold does not include time of impact impulses, which can be arbitrarily large if the sub-step is small. Hence the impulse is provided explicitly in a separate data structure. Note: this is only called for contacts that are touching, solid, and awake.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - - - - - - - - - - - -
    virtual void b2ContactListener::PreSolve (b2Contactcontact,
    const b2ManifoldoldManifold 
    )
    -
    -inlinevirtual
    -
    -

    This is called after a contact is updated. This allows you to inspect a contact before it goes to the solver. If you are careful, you can modify the contact manifold (e.g. disable contact). A copy of the old manifold is provided so that you can detect changes. Note: this is called only for awake bodies. Note: this is called even when the number of contact points is zero. Note: this is not called for sensors. Note: if you set the number of contact points to zero, you will not get an EndContact callback. However, you may get a BeginContact callback the next step.

    - -
    -
    -
    The documentation for this class was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_contact_manager-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_contact_manager-members.html deleted file mode 100644 index 8624b32..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_contact_manager-members.html +++ /dev/null @@ -1,112 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2ContactManager Member List
    -
    -
    - -

    This is the complete list of members for b2ContactManager, including all inherited members.

    - - - - - - - - - - - - -
    AddPair(void *proxyUserDataA, void *proxyUserDataB) (defined in b2ContactManager)b2ContactManager
    b2ContactManager() (defined in b2ContactManager)b2ContactManager
    Collide() (defined in b2ContactManager)b2ContactManager
    Destroy(b2Contact *c) (defined in b2ContactManager)b2ContactManager
    FindNewContacts() (defined in b2ContactManager)b2ContactManager
    m_allocator (defined in b2ContactManager)b2ContactManager
    m_broadPhase (defined in b2ContactManager)b2ContactManager
    m_contactCount (defined in b2ContactManager)b2ContactManager
    m_contactFilter (defined in b2ContactManager)b2ContactManager
    m_contactList (defined in b2ContactManager)b2ContactManager
    m_contactListener (defined in b2ContactManager)b2ContactManager
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_contact_manager.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_contact_manager.html deleted file mode 100644 index 6784bf0..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_contact_manager.html +++ /dev/null @@ -1,143 +0,0 @@ - - - - - - -Box2D: b2ContactManager Class Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2ContactManager Class Reference
    -
    -
    - - - - - - - - - - -

    -Public Member Functions

    -void AddPair (void *proxyUserDataA, void *proxyUserDataB)
     
    -void FindNewContacts ()
     
    -void Destroy (b2Contact *c)
     
    -void Collide ()
     
    - - - - - - - - - - - - - -

    -Public Attributes

    -b2BroadPhase m_broadPhase
     
    -b2Contactm_contactList
     
    -int32 m_contactCount
     
    -b2ContactFilterm_contactFilter
     
    -b2ContactListenerm_contactListener
     
    -b2BlockAllocatorm_allocator
     
    -
    The documentation for this class was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_contact_solver-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_contact_solver-members.html deleted file mode 100644 index 7622124..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_contact_solver-members.html +++ /dev/null @@ -1,117 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2ContactSolver Member List
    -
    -
    - -

    This is the complete list of members for b2ContactSolver, including all inherited members.

    - - - - - - - - - - - - - - - - - -
    b2ContactSolver(b2ContactSolverDef *def) (defined in b2ContactSolver)b2ContactSolver
    InitializeVelocityConstraints() (defined in b2ContactSolver)b2ContactSolver
    m_allocator (defined in b2ContactSolver)b2ContactSolver
    m_contacts (defined in b2ContactSolver)b2ContactSolver
    m_count (defined in b2ContactSolver)b2ContactSolver
    m_positionConstraints (defined in b2ContactSolver)b2ContactSolver
    m_positions (defined in b2ContactSolver)b2ContactSolver
    m_step (defined in b2ContactSolver)b2ContactSolver
    m_velocities (defined in b2ContactSolver)b2ContactSolver
    m_velocityConstraints (defined in b2ContactSolver)b2ContactSolver
    SolvePositionConstraints() (defined in b2ContactSolver)b2ContactSolver
    SolveTOIPositionConstraints(int32 toiIndexA, int32 toiIndexB) (defined in b2ContactSolver)b2ContactSolver
    SolveVelocityConstraints() (defined in b2ContactSolver)b2ContactSolver
    StoreImpulses() (defined in b2ContactSolver)b2ContactSolver
    WarmStart() (defined in b2ContactSolver)b2ContactSolver
    ~b2ContactSolver() (defined in b2ContactSolver)b2ContactSolver
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_contact_solver.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_contact_solver.html deleted file mode 100644 index 7ccc77f..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_contact_solver.html +++ /dev/null @@ -1,158 +0,0 @@ - - - - - - -Box2D: b2ContactSolver Class Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2ContactSolver Class Reference
    -
    -
    - - - - - - - - - - - - - - - - -

    -Public Member Functions

    b2ContactSolver (b2ContactSolverDef *def)
     
    -void InitializeVelocityConstraints ()
     
    -void WarmStart ()
     
    -void SolveVelocityConstraints ()
     
    -void StoreImpulses ()
     
    -bool SolvePositionConstraints ()
     
    -bool SolveTOIPositionConstraints (int32 toiIndexA, int32 toiIndexB)
     
    - - - - - - - - - - - - - - - - - -

    -Public Attributes

    -b2TimeStep m_step
     
    -b2Positionm_positions
     
    -b2Velocitym_velocities
     
    -b2StackAllocatorm_allocator
     
    -b2ContactPositionConstraintm_positionConstraints
     
    -b2ContactVelocityConstraintm_velocityConstraints
     
    -b2Contact ** m_contacts
     
    -int m_count
     
    -
    The documentation for this class was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_destruction_listener-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_destruction_listener-members.html deleted file mode 100644 index b802d11..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_destruction_listener-members.html +++ /dev/null @@ -1,104 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2DestructionListener Member List
    -
    -
    - -

    This is the complete list of members for b2DestructionListener, including all inherited members.

    - - - - -
    SayGoodbye(b2Joint *joint)=0b2DestructionListenerpure virtual
    SayGoodbye(b2Fixture *fixture)=0b2DestructionListenerpure virtual
    ~b2DestructionListener() (defined in b2DestructionListener)b2DestructionListenerinlinevirtual
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_destruction_listener.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_destruction_listener.html deleted file mode 100644 index fd08061..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_destruction_listener.html +++ /dev/null @@ -1,167 +0,0 @@ - - - - - - -Box2D: b2DestructionListener Class Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2DestructionListener Class Referenceabstract
    -
    -
    - -

    #include <b2WorldCallbacks.h>

    - - - - - - -

    -Public Member Functions

    virtual void SayGoodbye (b2Joint *joint)=0
     
    virtual void SayGoodbye (b2Fixture *fixture)=0
     
    -

    Detailed Description

    -

    Joints and fixtures are destroyed when their associated body is destroyed. Implement this listener so that you may nullify references to these joints and shapes.

    -

    Member Function Documentation

    - -
    -
    - - - - - -
    - - - - - - - - -
    virtual void b2DestructionListener::SayGoodbye (b2Jointjoint)
    -
    -pure virtual
    -
    -

    Called when any joint is about to be destroyed due to the destruction of one of its attached bodies.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - -
    virtual void b2DestructionListener::SayGoodbye (b2Fixturefixture)
    -
    -pure virtual
    -
    -

    Called when any fixture is about to be destroyed due to the destruction of its parent body.

    - -
    -
    -
    The documentation for this class was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_distance_joint-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_distance_joint-members.html deleted file mode 100644 index 94c67c2..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_distance_joint-members.html +++ /dev/null @@ -1,164 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2DistanceJoint Member List
    -
    -
    - -

    This is the complete list of members for b2DistanceJoint, including all inherited members.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    b2DistanceJoint(const b2DistanceJointDef *data) (defined in b2DistanceJoint)b2DistanceJointprotected
    b2Joint (defined in b2DistanceJoint)b2DistanceJointfriend
    b2Joint(const b2JointDef *def) (defined in b2Joint)b2Jointprotected
    Create(const b2JointDef *def, b2BlockAllocator *allocator) (defined in b2Joint)b2Jointprotectedstatic
    Destroy(b2Joint *joint, b2BlockAllocator *allocator) (defined in b2Joint)b2Jointprotectedstatic
    Dump()b2DistanceJointvirtual
    GetAnchorA() const b2DistanceJointvirtual
    GetAnchorB() const b2DistanceJointvirtual
    GetBodyA()b2Jointinline
    GetBodyB()b2Jointinline
    GetCollideConnected() const b2Jointinline
    GetDampingRatio() const (defined in b2DistanceJoint)b2DistanceJointinline
    GetFrequency() const (defined in b2DistanceJoint)b2DistanceJointinline
    GetLength() const (defined in b2DistanceJoint)b2DistanceJointinline
    GetLocalAnchorA() const b2DistanceJointinline
    GetLocalAnchorB() const b2DistanceJointinline
    GetNext()b2Jointinline
    GetNext() const (defined in b2Joint)b2Jointinline
    GetReactionForce(float32 inv_dt) const b2DistanceJointvirtual
    GetReactionTorque(float32 inv_dt) const b2DistanceJointvirtual
    GetType() const b2Jointinline
    GetUserData() const b2Jointinline
    InitVelocityConstraints(const b2SolverData &data) (defined in b2DistanceJoint)b2DistanceJointprotectedvirtual
    IsActive() const b2Joint
    m_bias (defined in b2DistanceJoint)b2DistanceJointprotected
    m_bodyA (defined in b2Joint)b2Jointprotected
    m_bodyB (defined in b2Joint)b2Jointprotected
    m_collideConnected (defined in b2Joint)b2Jointprotected
    m_dampingRatio (defined in b2DistanceJoint)b2DistanceJointprotected
    m_edgeA (defined in b2Joint)b2Jointprotected
    m_edgeB (defined in b2Joint)b2Jointprotected
    m_frequencyHz (defined in b2DistanceJoint)b2DistanceJointprotected
    m_gamma (defined in b2DistanceJoint)b2DistanceJointprotected
    m_impulse (defined in b2DistanceJoint)b2DistanceJointprotected
    m_index (defined in b2Joint)b2Jointprotected
    m_indexA (defined in b2DistanceJoint)b2DistanceJointprotected
    m_indexB (defined in b2DistanceJoint)b2DistanceJointprotected
    m_invIA (defined in b2DistanceJoint)b2DistanceJointprotected
    m_invIB (defined in b2DistanceJoint)b2DistanceJointprotected
    m_invMassA (defined in b2DistanceJoint)b2DistanceJointprotected
    m_invMassB (defined in b2DistanceJoint)b2DistanceJointprotected
    m_islandFlag (defined in b2Joint)b2Jointprotected
    m_length (defined in b2DistanceJoint)b2DistanceJointprotected
    m_localAnchorA (defined in b2DistanceJoint)b2DistanceJointprotected
    m_localAnchorB (defined in b2DistanceJoint)b2DistanceJointprotected
    m_localCenterA (defined in b2DistanceJoint)b2DistanceJointprotected
    m_localCenterB (defined in b2DistanceJoint)b2DistanceJointprotected
    m_mass (defined in b2DistanceJoint)b2DistanceJointprotected
    m_next (defined in b2Joint)b2Jointprotected
    m_prev (defined in b2Joint)b2Jointprotected
    m_rA (defined in b2DistanceJoint)b2DistanceJointprotected
    m_rB (defined in b2DistanceJoint)b2DistanceJointprotected
    m_type (defined in b2Joint)b2Jointprotected
    m_u (defined in b2DistanceJoint)b2DistanceJointprotected
    m_userData (defined in b2Joint)b2Jointprotected
    SetDampingRatio(float32 ratio)b2DistanceJointinline
    SetFrequency(float32 hz)b2DistanceJointinline
    SetLength(float32 length)b2DistanceJointinline
    SetUserData(void *data)b2Jointinline
    ShiftOrigin(const b2Vec2 &newOrigin)b2Jointinlinevirtual
    SolvePositionConstraints(const b2SolverData &data) (defined in b2DistanceJoint)b2DistanceJointprotectedvirtual
    SolveVelocityConstraints(const b2SolverData &data) (defined in b2DistanceJoint)b2DistanceJointprotectedvirtual
    ~b2Joint() (defined in b2Joint)b2Jointinlineprotectedvirtual
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_distance_joint.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_distance_joint.html deleted file mode 100644 index d34246a..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_distance_joint.html +++ /dev/null @@ -1,418 +0,0 @@ - - - - - - -Box2D: b2DistanceJoint Class Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    - -
    - -

    #include <b2DistanceJoint.h>

    -
    -Inheritance diagram for b2DistanceJoint:
    -
    -
    - - -b2Joint - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Member Functions

    -b2Vec2 GetAnchorA () const
     Get the anchor point on bodyA in world coordinates.
     
    -b2Vec2 GetAnchorB () const
     Get the anchor point on bodyB in world coordinates.
     
    b2Vec2 GetReactionForce (float32 inv_dt) const
     
    float32 GetReactionTorque (float32 inv_dt) const
     
    -const b2Vec2GetLocalAnchorA () const
     The local anchor point relative to bodyA's origin.
     
    -const b2Vec2GetLocalAnchorB () const
     The local anchor point relative to bodyB's origin.
     
    void SetLength (float32 length)
     
    -float32 GetLength () const
     
    -void SetFrequency (float32 hz)
     Set/get frequency in Hz.
     
    -float32 GetFrequency () const
     
    -void SetDampingRatio (float32 ratio)
     Set/get damping ratio.
     
    -float32 GetDampingRatio () const
     
    -void Dump ()
     Dump joint to dmLog.
     
    - Public Member Functions inherited from b2Joint
    -b2JointType GetType () const
     Get the type of the concrete joint.
     
    -b2BodyGetBodyA ()
     Get the first body attached to this joint.
     
    -b2BodyGetBodyB ()
     Get the second body attached to this joint.
     
    -b2JointGetNext ()
     Get the next joint the world joint list.
     
    -const b2JointGetNext () const
     
    -void * GetUserData () const
     Get the user data pointer.
     
    -void SetUserData (void *data)
     Set the user data pointer.
     
    -bool IsActive () const
     Short-cut function to determine if either body is inactive.
     
    bool GetCollideConnected () const
     
    -virtual void ShiftOrigin (const b2Vec2 &newOrigin)
     Shift the origin for any points stored in world coordinates.
     
    - - - - - - - - - - - - -

    -Protected Member Functions

    b2DistanceJoint (const b2DistanceJointDef *data)
     
    -void InitVelocityConstraints (const b2SolverData &data)
     
    -void SolveVelocityConstraints (const b2SolverData &data)
     
    -bool SolvePositionConstraints (const b2SolverData &data)
     
    - Protected Member Functions inherited from b2Joint
    b2Joint (const b2JointDef *def)
     
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Protected Attributes

    -float32 m_frequencyHz
     
    -float32 m_dampingRatio
     
    -float32 m_bias
     
    -b2Vec2 m_localAnchorA
     
    -b2Vec2 m_localAnchorB
     
    -float32 m_gamma
     
    -float32 m_impulse
     
    -float32 m_length
     
    -int32 m_indexA
     
    -int32 m_indexB
     
    -b2Vec2 m_u
     
    -b2Vec2 m_rA
     
    -b2Vec2 m_rB
     
    -b2Vec2 m_localCenterA
     
    -b2Vec2 m_localCenterB
     
    -float32 m_invMassA
     
    -float32 m_invMassB
     
    -float32 m_invIA
     
    -float32 m_invIB
     
    -float32 m_mass
     
    - Protected Attributes inherited from b2Joint
    -b2JointType m_type
     
    -b2Jointm_prev
     
    -b2Jointm_next
     
    -b2JointEdge m_edgeA
     
    -b2JointEdge m_edgeB
     
    -b2Bodym_bodyA
     
    -b2Bodym_bodyB
     
    -int32 m_index
     
    -bool m_islandFlag
     
    -bool m_collideConnected
     
    -void * m_userData
     
    - - - -

    -Friends

    -class b2Joint
     
    - - - - - - -

    -Additional Inherited Members

    - Static Protected Member Functions inherited from b2Joint
    -static b2JointCreate (const b2JointDef *def, b2BlockAllocator *allocator)
     
    -static void Destroy (b2Joint *joint, b2BlockAllocator *allocator)
     
    -

    Detailed Description

    -

    A distance joint constrains two points on two bodies to remain at a fixed distance from each other. You can view this as a massless, rigid rod.

    -

    Member Function Documentation

    - -
    -
    - - - - - -
    - - - - - - - - -
    b2Vec2 b2DistanceJoint::GetReactionForce (float32 inv_dt) const
    -
    -virtual
    -
    -

    Get the reaction force given the inverse time step. Unit is N.

    - -

    Implements b2Joint.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - -
    float32 b2DistanceJoint::GetReactionTorque (float32 inv_dt) const
    -
    -virtual
    -
    -

    Get the reaction torque given the inverse time step. Unit is N*m. This is always zero for a distance joint.

    - -

    Implements b2Joint.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - -
    void b2DistanceJoint::SetLength (float32 length)
    -
    -inline
    -
    -

    Set/get the natural length. Manipulating the length can lead to non-physical behavior when the frequency is zero.

    - -
    -
    -
    The documentation for this class was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_distance_joint.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_distance_joint.png deleted file mode 100644 index 622134f..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_distance_joint.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_draw-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_draw-members.html deleted file mode 100644 index c729e86..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_draw-members.html +++ /dev/null @@ -1,119 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2Draw Member List
    -
    -
    - -

    This is the complete list of members for b2Draw, including all inherited members.

    - - - - - - - - - - - - - - - - - - - -
    AppendFlags(uint32 flags)b2Draw
    b2Draw() (defined in b2Draw)b2Draw
    ClearFlags(uint32 flags)b2Draw
    DrawCircle(const b2Vec2 &center, float32 radius, const b2Color &color)=0b2Drawpure virtual
    DrawPolygon(const b2Vec2 *vertices, int32 vertexCount, const b2Color &color)=0b2Drawpure virtual
    DrawSegment(const b2Vec2 &p1, const b2Vec2 &p2, const b2Color &color)=0b2Drawpure virtual
    DrawSolidCircle(const b2Vec2 &center, float32 radius, const b2Vec2 &axis, const b2Color &color)=0b2Drawpure virtual
    DrawSolidPolygon(const b2Vec2 *vertices, int32 vertexCount, const b2Color &color)=0b2Drawpure virtual
    DrawTransform(const b2Transform &xf)=0b2Drawpure virtual
    e_aabbBit enum valueb2Draw
    e_centerOfMassBit enum valueb2Draw
    e_jointBit enum valueb2Draw
    e_pairBit enum valueb2Draw
    e_shapeBit enum valueb2Draw
    GetFlags() const b2Draw
    m_drawFlags (defined in b2Draw)b2Drawprotected
    SetFlags(uint32 flags)b2Draw
    ~b2Draw() (defined in b2Draw)b2Drawinlinevirtual
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_draw.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_draw.html deleted file mode 100644 index faa0b9f..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_draw.html +++ /dev/null @@ -1,234 +0,0 @@ - - - - - - -Box2D: b2Draw Class Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2Draw Class Referenceabstract
    -
    -
    - -

    #include <b2Draw.h>

    - - - - -

    -Public Types

    enum  {
    -  e_shapeBit = 0x0001, -e_jointBit = 0x0002, -e_aabbBit = 0x0004, -e_pairBit = 0x0008, -
    -  e_centerOfMassBit = 0x0010 -
    - }
     
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Member Functions

    -void SetFlags (uint32 flags)
     Set the drawing flags.
     
    -uint32 GetFlags () const
     Get the drawing flags.
     
    -void AppendFlags (uint32 flags)
     Append flags to the current flags.
     
    -void ClearFlags (uint32 flags)
     Clear flags from the current flags.
     
    -virtual void DrawPolygon (const b2Vec2 *vertices, int32 vertexCount, const b2Color &color)=0
     Draw a closed polygon provided in CCW order.
     
    -virtual void DrawSolidPolygon (const b2Vec2 *vertices, int32 vertexCount, const b2Color &color)=0
     Draw a solid closed polygon provided in CCW order.
     
    -virtual void DrawCircle (const b2Vec2 &center, float32 radius, const b2Color &color)=0
     Draw a circle.
     
    -virtual void DrawSolidCircle (const b2Vec2 &center, float32 radius, const b2Vec2 &axis, const b2Color &color)=0
     Draw a solid circle.
     
    -virtual void DrawSegment (const b2Vec2 &p1, const b2Vec2 &p2, const b2Color &color)=0
     Draw a line segment.
     
    virtual void DrawTransform (const b2Transform &xf)=0
     
    - - - -

    -Protected Attributes

    -uint32 m_drawFlags
     
    -

    Detailed Description

    -

    Implement and register this class with a b2World to provide debug drawing of physics entities in your game.

    -

    Member Enumeration Documentation

    - -
    -
    - - - - -
    anonymous enum
    -
    - - - - - - -
    Enumerator
    e_shapeBit  -

    draw shapes

    -
    e_jointBit  -

    draw joint connections

    -
    e_aabbBit  -

    draw axis aligned bounding boxes

    -
    e_pairBit  -

    draw broad-phase pairs

    -
    e_centerOfMassBit  -

    draw center of mass frame

    -
    - -
    -
    -

    Member Function Documentation

    - -
    -
    - - - - - -
    - - - - - - - - -
    virtual void b2Draw::DrawTransform (const b2Transformxf)
    -
    -pure virtual
    -
    -

    Draw a transform. Choose your own length scale.

    -
    Parameters
    - - -
    xfa transform.
    -
    -
    - -
    -
    -
    The documentation for this class was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_dynamic_tree-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_dynamic_tree-members.html deleted file mode 100644 index 562a7c6..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_dynamic_tree-members.html +++ /dev/null @@ -1,116 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2DynamicTree Member List
    -
    -
    - -

    This is the complete list of members for b2DynamicTree, including all inherited members.

    - - - - - - - - - - - - - - - - -
    b2DynamicTree()b2DynamicTree
    CreateProxy(const b2AABB &aabb, void *userData)b2DynamicTree
    DestroyProxy(int32 proxyId)b2DynamicTree
    GetAreaRatio() const b2DynamicTree
    GetFatAABB(int32 proxyId) const b2DynamicTreeinline
    GetHeight() const b2DynamicTree
    GetMaxBalance() const b2DynamicTree
    GetUserData(int32 proxyId) const b2DynamicTreeinline
    MoveProxy(int32 proxyId, const b2AABB &aabb1, const b2Vec2 &displacement)b2DynamicTree
    Query(T *callback, const b2AABB &aabb) const b2DynamicTreeinline
    RayCast(T *callback, const b2RayCastInput &input) const b2DynamicTreeinline
    RebuildBottomUp()b2DynamicTree
    ShiftOrigin(const b2Vec2 &newOrigin)b2DynamicTree
    Validate() const b2DynamicTree
    ~b2DynamicTree()b2DynamicTree
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_dynamic_tree.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_dynamic_tree.html deleted file mode 100644 index 82146b1..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_dynamic_tree.html +++ /dev/null @@ -1,359 +0,0 @@ - - - - - - -Box2D: b2DynamicTree Class Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2DynamicTree Class Reference
    -
    -
    - -

    #include <b2DynamicTree.h>

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Member Functions

    b2DynamicTree ()
     Constructing the tree initializes the node pool.
     
    ~b2DynamicTree ()
     Destroy the tree, freeing the node pool.
     
    -int32 CreateProxy (const b2AABB &aabb, void *userData)
     Create a proxy. Provide a tight fitting AABB and a userData pointer.
     
    -void DestroyProxy (int32 proxyId)
     Destroy a proxy. This asserts if the id is invalid.
     
    bool MoveProxy (int32 proxyId, const b2AABB &aabb1, const b2Vec2 &displacement)
     
    void * GetUserData (int32 proxyId) const
     
    -const b2AABBGetFatAABB (int32 proxyId) const
     Get the fat AABB for a proxy.
     
    template<typename T >
    void Query (T *callback, const b2AABB &aabb) const
     
    template<typename T >
    void RayCast (T *callback, const b2RayCastInput &input) const
     
    -void Validate () const
     Validate this tree. For testing.
     
    int32 GetHeight () const
     
    int32 GetMaxBalance () const
     
    -float32 GetAreaRatio () const
     Get the ratio of the sum of the node areas to the root area.
     
    -void RebuildBottomUp ()
     Build an optimal tree. Very expensive. For testing.
     
    void ShiftOrigin (const b2Vec2 &newOrigin)
     
    -

    Detailed Description

    -

    A dynamic AABB tree broad-phase, inspired by Nathanael Presson's btDbvt. A dynamic tree arranges data in a binary tree to accelerate queries such as volume queries and ray casts. Leafs are proxies with an AABB. In the tree we expand the proxy AABB by b2_fatAABBFactor so that the proxy AABB is bigger than the client object. This allows the client object to move by small amounts without triggering a tree update.

    -

    Nodes are pooled and relocatable, so we use node indices rather than pointers.

    -

    Member Function Documentation

    - -
    -
    - - - - - - - -
    int32 b2DynamicTree::GetHeight () const
    -
    -

    Compute the height of the binary tree in O(N) time. Should not be called often.

    - -
    -
    - -
    -
    - - - - - - - -
    int32 b2DynamicTree::GetMaxBalance () const
    -
    -

    Get the maximum balance of an node in the tree. The balance is the difference in height of the two children of a node.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - -
    void * b2DynamicTree::GetUserData (int32 proxyId) const
    -
    -inline
    -
    -

    Get proxy user data.

    -
    Returns
    the proxy user data or 0 if the id is invalid.
    - -
    -
    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    bool b2DynamicTree::MoveProxy (int32 proxyId,
    const b2AABBaabb1,
    const b2Vec2displacement 
    )
    -
    -

    Move a proxy with a swepted AABB. If the proxy has moved outside of its fattened AABB, then the proxy is removed from the tree and re-inserted. Otherwise the function returns immediately.

    -
    Returns
    true if the proxy was re-inserted.
    - -
    -
    - -
    -
    -
    -template<typename T >
    - - - - - -
    - - - - - - - - - - - - - - - - - - -
    void b2DynamicTree::Query (T * callback,
    const b2AABBaabb 
    ) const
    -
    -inline
    -
    -

    Query an AABB for overlapping proxies. The callback class is called for each proxy that overlaps the supplied AABB.

    - -
    -
    - -
    -
    -
    -template<typename T >
    - - - - - -
    - - - - - - - - - - - - - - - - - - -
    void b2DynamicTree::RayCast (T * callback,
    const b2RayCastInputinput 
    ) const
    -
    -inline
    -
    -

    Ray-cast against the proxies in the tree. This relies on the callback to perform a exact ray-cast in the case were the proxy contains a shape. The callback also performs the any collision filtering. This has performance roughly equal to k * log(n), where k is the number of collisions and n is the number of proxies in the tree.

    -
    Parameters
    - - - -
    inputthe ray-cast input data. The ray extends from p1 to p1 + maxFraction * (p2 - p1).
    callbacka callback class that is called for each proxy that is hit by the ray.
    -
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    void b2DynamicTree::ShiftOrigin (const b2Vec2newOrigin)
    -
    -

    Shift the world origin. Useful for large worlds. The shift formula is: position -= newOrigin

    -
    Parameters
    - - -
    newOriginthe new origin with respect to the old origin
    -
    -
    - -
    -
    -
    The documentation for this class was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_edge_and_circle_contact-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_edge_and_circle_contact-members.html deleted file mode 100644 index 0655513..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_edge_and_circle_contact-members.html +++ /dev/null @@ -1,159 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2EdgeAndCircleContact Member List
    -
    -
    - -

    This is the complete list of members for b2EdgeAndCircleContact, including all inherited members.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    AddType(b2ContactCreateFcn *createFcn, b2ContactDestroyFcn *destroyFcn, b2Shape::Type typeA, b2Shape::Type typeB) (defined in b2Contact)b2Contactprotectedstatic
    b2Contact() (defined in b2Contact)b2Contactinlineprotected
    b2Contact(b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB) (defined in b2Contact)b2Contactprotected
    b2EdgeAndCircleContact(b2Fixture *fixtureA, b2Fixture *fixtureB) (defined in b2EdgeAndCircleContact)b2EdgeAndCircleContact
    Create(b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB, b2BlockAllocator *allocator) (defined in b2EdgeAndCircleContact)b2EdgeAndCircleContactstatic
    Destroy(b2Contact *contact, b2BlockAllocator *allocator) (defined in b2EdgeAndCircleContact)b2EdgeAndCircleContactstatic
    Destroy(b2Contact *contact, b2Shape::Type typeA, b2Shape::Type typeB, b2BlockAllocator *allocator) (defined in b2Contact)b2Contactprotectedstatic
    e_bulletHitFlag enum value (defined in b2Contact)b2Contactprotected
    e_enabledFlag enum value (defined in b2Contact)b2Contactprotected
    e_filterFlag enum value (defined in b2Contact)b2Contactprotected
    e_islandFlag enum value (defined in b2Contact)b2Contactprotected
    e_toiFlag enum value (defined in b2Contact)b2Contactprotected
    e_touchingFlag enum value (defined in b2Contact)b2Contactprotected
    Evaluate(b2Manifold *manifold, const b2Transform &xfA, const b2Transform &xfB)b2EdgeAndCircleContactvirtual
    FlagForFiltering()b2Contactinlineprotected
    GetChildIndexA() const b2Contactinline
    GetChildIndexB() const b2Contactinline
    GetFixtureA()b2Contactinline
    GetFixtureA() const (defined in b2Contact)b2Contactinline
    GetFixtureB()b2Contactinline
    GetFixtureB() const (defined in b2Contact)b2Contactinline
    GetFriction() const b2Contactinline
    GetManifold()b2Contactinline
    GetManifold() const (defined in b2Contact)b2Contactinline
    GetNext()b2Contactinline
    GetNext() const (defined in b2Contact)b2Contactinline
    GetRestitution() const b2Contactinline
    GetTangentSpeed() const b2Contactinline
    GetWorldManifold(b2WorldManifold *worldManifold) const b2Contactinline
    InitializeRegisters() (defined in b2Contact)b2Contactprotectedstatic
    IsEnabled() const b2Contactinline
    IsTouching() const b2Contactinline
    m_fixtureA (defined in b2Contact)b2Contactprotected
    m_fixtureB (defined in b2Contact)b2Contactprotected
    m_flags (defined in b2Contact)b2Contactprotected
    m_friction (defined in b2Contact)b2Contactprotected
    m_indexA (defined in b2Contact)b2Contactprotected
    m_indexB (defined in b2Contact)b2Contactprotected
    m_manifold (defined in b2Contact)b2Contactprotected
    m_next (defined in b2Contact)b2Contactprotected
    m_nodeA (defined in b2Contact)b2Contactprotected
    m_nodeB (defined in b2Contact)b2Contactprotected
    m_prev (defined in b2Contact)b2Contactprotected
    m_restitution (defined in b2Contact)b2Contactprotected
    m_tangentSpeed (defined in b2Contact)b2Contactprotected
    m_toi (defined in b2Contact)b2Contactprotected
    m_toiCount (defined in b2Contact)b2Contactprotected
    ResetFriction()b2Contactinline
    ResetRestitution()b2Contactinline
    s_initialized (defined in b2Contact)b2Contactprotectedstatic
    s_registers (defined in b2Contact)b2Contactprotectedstatic
    SetEnabled(bool flag)b2Contactinline
    SetFriction(float32 friction)b2Contactinline
    SetRestitution(float32 restitution)b2Contactinline
    SetTangentSpeed(float32 speed)b2Contactinline
    Update(b2ContactListener *listener) (defined in b2Contact)b2Contactprotected
    ~b2Contact() (defined in b2Contact)b2Contactinlineprotectedvirtual
    ~b2EdgeAndCircleContact() (defined in b2EdgeAndCircleContact)b2EdgeAndCircleContactinline
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_edge_and_circle_contact.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_edge_and_circle_contact.html deleted file mode 100644 index d7fdfe3..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_edge_and_circle_contact.html +++ /dev/null @@ -1,307 +0,0 @@ - - - - - - -Box2D: b2EdgeAndCircleContact Class Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2EdgeAndCircleContact Class Reference
    -
    -
    -
    -Inheritance diagram for b2EdgeAndCircleContact:
    -
    -
    - - -b2Contact - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Member Functions

    b2EdgeAndCircleContact (b2Fixture *fixtureA, b2Fixture *fixtureB)
     
    -void Evaluate (b2Manifold *manifold, const b2Transform &xfA, const b2Transform &xfB)
     Evaluate this contact with your own manifold and transforms.
     
    - Public Member Functions inherited from b2Contact
    b2ManifoldGetManifold ()
     
    -const b2ManifoldGetManifold () const
     
    -void GetWorldManifold (b2WorldManifold *worldManifold) const
     Get the world manifold.
     
    -bool IsTouching () const
     Is this contact touching?
     
    void SetEnabled (bool flag)
     
    -bool IsEnabled () const
     Has this contact been disabled?
     
    -b2ContactGetNext ()
     Get the next contact in the world's contact list.
     
    -const b2ContactGetNext () const
     
    -b2FixtureGetFixtureA ()
     Get fixture A in this contact.
     
    -const b2FixtureGetFixtureA () const
     
    -int32 GetChildIndexA () const
     Get the child primitive index for fixture A.
     
    -b2FixtureGetFixtureB ()
     Get fixture B in this contact.
     
    -const b2FixtureGetFixtureB () const
     
    -int32 GetChildIndexB () const
     Get the child primitive index for fixture B.
     
    void SetFriction (float32 friction)
     
    -float32 GetFriction () const
     Get the friction.
     
    -void ResetFriction ()
     Reset the friction mixture to the default value.
     
    void SetRestitution (float32 restitution)
     
    -float32 GetRestitution () const
     Get the restitution.
     
    -void ResetRestitution ()
     Reset the restitution to the default value.
     
    -void SetTangentSpeed (float32 speed)
     Set the desired tangent speed for a conveyor belt behavior. In meters per second.
     
    -float32 GetTangentSpeed () const
     Get the desired tangent speed. In meters per second.
     
    - - - - - -

    -Static Public Member Functions

    -static b2ContactCreate (b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB, b2BlockAllocator *allocator)
     
    -static void Destroy (b2Contact *contact, b2BlockAllocator *allocator)
     
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Additional Inherited Members

    - Protected Types inherited from b2Contact
    enum  {
    -  e_islandFlag = 0x0001, -e_touchingFlag = 0x0002, -e_enabledFlag = 0x0004, -e_filterFlag = 0x0008, -
    -  e_bulletHitFlag = 0x0010, -e_toiFlag = 0x0020 -
    - }
     
    - Protected Member Functions inherited from b2Contact
    -void FlagForFiltering ()
     Flag this contact for filtering. Filtering will occur the next time step.
     
    b2Contact (b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB)
     
    -void Update (b2ContactListener *listener)
     
    - Static Protected Member Functions inherited from b2Contact
    -static void AddType (b2ContactCreateFcn *createFcn, b2ContactDestroyFcn *destroyFcn, b2Shape::Type typeA, b2Shape::Type typeB)
     
    -static void InitializeRegisters ()
     
    -static b2ContactCreate (b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB, b2BlockAllocator *allocator)
     
    -static void Destroy (b2Contact *contact, b2Shape::Type typeA, b2Shape::Type typeB, b2BlockAllocator *allocator)
     
    -static void Destroy (b2Contact *contact, b2BlockAllocator *allocator)
     
    - Protected Attributes inherited from b2Contact
    -uint32 m_flags
     
    -b2Contactm_prev
     
    -b2Contactm_next
     
    -b2ContactEdge m_nodeA
     
    -b2ContactEdge m_nodeB
     
    -b2Fixturem_fixtureA
     
    -b2Fixturem_fixtureB
     
    -int32 m_indexA
     
    -int32 m_indexB
     
    -b2Manifold m_manifold
     
    -int32 m_toiCount
     
    -float32 m_toi
     
    -float32 m_friction
     
    -float32 m_restitution
     
    -float32 m_tangentSpeed
     
    - Static Protected Attributes inherited from b2Contact
    -static b2ContactRegister s_registers [b2Shape::e_typeCount][b2Shape::e_typeCount]
     
    -static bool s_initialized = false
     
    -
    The documentation for this class was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_edge_and_circle_contact.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_edge_and_circle_contact.png deleted file mode 100644 index 4d5c9ab..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_edge_and_circle_contact.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_edge_and_polygon_contact-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_edge_and_polygon_contact-members.html deleted file mode 100644 index 0757828..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_edge_and_polygon_contact-members.html +++ /dev/null @@ -1,159 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2EdgeAndPolygonContact Member List
    -
    -
    - -

    This is the complete list of members for b2EdgeAndPolygonContact, including all inherited members.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    AddType(b2ContactCreateFcn *createFcn, b2ContactDestroyFcn *destroyFcn, b2Shape::Type typeA, b2Shape::Type typeB) (defined in b2Contact)b2Contactprotectedstatic
    b2Contact() (defined in b2Contact)b2Contactinlineprotected
    b2Contact(b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB) (defined in b2Contact)b2Contactprotected
    b2EdgeAndPolygonContact(b2Fixture *fixtureA, b2Fixture *fixtureB) (defined in b2EdgeAndPolygonContact)b2EdgeAndPolygonContact
    Create(b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB, b2BlockAllocator *allocator) (defined in b2EdgeAndPolygonContact)b2EdgeAndPolygonContactstatic
    Destroy(b2Contact *contact, b2BlockAllocator *allocator) (defined in b2EdgeAndPolygonContact)b2EdgeAndPolygonContactstatic
    Destroy(b2Contact *contact, b2Shape::Type typeA, b2Shape::Type typeB, b2BlockAllocator *allocator) (defined in b2Contact)b2Contactprotectedstatic
    e_bulletHitFlag enum value (defined in b2Contact)b2Contactprotected
    e_enabledFlag enum value (defined in b2Contact)b2Contactprotected
    e_filterFlag enum value (defined in b2Contact)b2Contactprotected
    e_islandFlag enum value (defined in b2Contact)b2Contactprotected
    e_toiFlag enum value (defined in b2Contact)b2Contactprotected
    e_touchingFlag enum value (defined in b2Contact)b2Contactprotected
    Evaluate(b2Manifold *manifold, const b2Transform &xfA, const b2Transform &xfB)b2EdgeAndPolygonContactvirtual
    FlagForFiltering()b2Contactinlineprotected
    GetChildIndexA() const b2Contactinline
    GetChildIndexB() const b2Contactinline
    GetFixtureA()b2Contactinline
    GetFixtureA() const (defined in b2Contact)b2Contactinline
    GetFixtureB()b2Contactinline
    GetFixtureB() const (defined in b2Contact)b2Contactinline
    GetFriction() const b2Contactinline
    GetManifold()b2Contactinline
    GetManifold() const (defined in b2Contact)b2Contactinline
    GetNext()b2Contactinline
    GetNext() const (defined in b2Contact)b2Contactinline
    GetRestitution() const b2Contactinline
    GetTangentSpeed() const b2Contactinline
    GetWorldManifold(b2WorldManifold *worldManifold) const b2Contactinline
    InitializeRegisters() (defined in b2Contact)b2Contactprotectedstatic
    IsEnabled() const b2Contactinline
    IsTouching() const b2Contactinline
    m_fixtureA (defined in b2Contact)b2Contactprotected
    m_fixtureB (defined in b2Contact)b2Contactprotected
    m_flags (defined in b2Contact)b2Contactprotected
    m_friction (defined in b2Contact)b2Contactprotected
    m_indexA (defined in b2Contact)b2Contactprotected
    m_indexB (defined in b2Contact)b2Contactprotected
    m_manifold (defined in b2Contact)b2Contactprotected
    m_next (defined in b2Contact)b2Contactprotected
    m_nodeA (defined in b2Contact)b2Contactprotected
    m_nodeB (defined in b2Contact)b2Contactprotected
    m_prev (defined in b2Contact)b2Contactprotected
    m_restitution (defined in b2Contact)b2Contactprotected
    m_tangentSpeed (defined in b2Contact)b2Contactprotected
    m_toi (defined in b2Contact)b2Contactprotected
    m_toiCount (defined in b2Contact)b2Contactprotected
    ResetFriction()b2Contactinline
    ResetRestitution()b2Contactinline
    s_initialized (defined in b2Contact)b2Contactprotectedstatic
    s_registers (defined in b2Contact)b2Contactprotectedstatic
    SetEnabled(bool flag)b2Contactinline
    SetFriction(float32 friction)b2Contactinline
    SetRestitution(float32 restitution)b2Contactinline
    SetTangentSpeed(float32 speed)b2Contactinline
    Update(b2ContactListener *listener) (defined in b2Contact)b2Contactprotected
    ~b2Contact() (defined in b2Contact)b2Contactinlineprotectedvirtual
    ~b2EdgeAndPolygonContact() (defined in b2EdgeAndPolygonContact)b2EdgeAndPolygonContactinline
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_edge_and_polygon_contact.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_edge_and_polygon_contact.html deleted file mode 100644 index b7ee8e9..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_edge_and_polygon_contact.html +++ /dev/null @@ -1,307 +0,0 @@ - - - - - - -Box2D: b2EdgeAndPolygonContact Class Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2EdgeAndPolygonContact Class Reference
    -
    -
    -
    -Inheritance diagram for b2EdgeAndPolygonContact:
    -
    -
    - - -b2Contact - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Member Functions

    b2EdgeAndPolygonContact (b2Fixture *fixtureA, b2Fixture *fixtureB)
     
    -void Evaluate (b2Manifold *manifold, const b2Transform &xfA, const b2Transform &xfB)
     Evaluate this contact with your own manifold and transforms.
     
    - Public Member Functions inherited from b2Contact
    b2ManifoldGetManifold ()
     
    -const b2ManifoldGetManifold () const
     
    -void GetWorldManifold (b2WorldManifold *worldManifold) const
     Get the world manifold.
     
    -bool IsTouching () const
     Is this contact touching?
     
    void SetEnabled (bool flag)
     
    -bool IsEnabled () const
     Has this contact been disabled?
     
    -b2ContactGetNext ()
     Get the next contact in the world's contact list.
     
    -const b2ContactGetNext () const
     
    -b2FixtureGetFixtureA ()
     Get fixture A in this contact.
     
    -const b2FixtureGetFixtureA () const
     
    -int32 GetChildIndexA () const
     Get the child primitive index for fixture A.
     
    -b2FixtureGetFixtureB ()
     Get fixture B in this contact.
     
    -const b2FixtureGetFixtureB () const
     
    -int32 GetChildIndexB () const
     Get the child primitive index for fixture B.
     
    void SetFriction (float32 friction)
     
    -float32 GetFriction () const
     Get the friction.
     
    -void ResetFriction ()
     Reset the friction mixture to the default value.
     
    void SetRestitution (float32 restitution)
     
    -float32 GetRestitution () const
     Get the restitution.
     
    -void ResetRestitution ()
     Reset the restitution to the default value.
     
    -void SetTangentSpeed (float32 speed)
     Set the desired tangent speed for a conveyor belt behavior. In meters per second.
     
    -float32 GetTangentSpeed () const
     Get the desired tangent speed. In meters per second.
     
    - - - - - -

    -Static Public Member Functions

    -static b2ContactCreate (b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB, b2BlockAllocator *allocator)
     
    -static void Destroy (b2Contact *contact, b2BlockAllocator *allocator)
     
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Additional Inherited Members

    - Protected Types inherited from b2Contact
    enum  {
    -  e_islandFlag = 0x0001, -e_touchingFlag = 0x0002, -e_enabledFlag = 0x0004, -e_filterFlag = 0x0008, -
    -  e_bulletHitFlag = 0x0010, -e_toiFlag = 0x0020 -
    - }
     
    - Protected Member Functions inherited from b2Contact
    -void FlagForFiltering ()
     Flag this contact for filtering. Filtering will occur the next time step.
     
    b2Contact (b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB)
     
    -void Update (b2ContactListener *listener)
     
    - Static Protected Member Functions inherited from b2Contact
    -static void AddType (b2ContactCreateFcn *createFcn, b2ContactDestroyFcn *destroyFcn, b2Shape::Type typeA, b2Shape::Type typeB)
     
    -static void InitializeRegisters ()
     
    -static b2ContactCreate (b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB, b2BlockAllocator *allocator)
     
    -static void Destroy (b2Contact *contact, b2Shape::Type typeA, b2Shape::Type typeB, b2BlockAllocator *allocator)
     
    -static void Destroy (b2Contact *contact, b2BlockAllocator *allocator)
     
    - Protected Attributes inherited from b2Contact
    -uint32 m_flags
     
    -b2Contactm_prev
     
    -b2Contactm_next
     
    -b2ContactEdge m_nodeA
     
    -b2ContactEdge m_nodeB
     
    -b2Fixturem_fixtureA
     
    -b2Fixturem_fixtureB
     
    -int32 m_indexA
     
    -int32 m_indexB
     
    -b2Manifold m_manifold
     
    -int32 m_toiCount
     
    -float32 m_toi
     
    -float32 m_friction
     
    -float32 m_restitution
     
    -float32 m_tangentSpeed
     
    - Static Protected Attributes inherited from b2Contact
    -static b2ContactRegister s_registers [b2Shape::e_typeCount][b2Shape::e_typeCount]
     
    -static bool s_initialized = false
     
    -
    The documentation for this class was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_edge_and_polygon_contact.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_edge_and_polygon_contact.png deleted file mode 100644 index a849a02..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_edge_and_polygon_contact.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_edge_shape-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_edge_shape-members.html deleted file mode 100644 index d732970..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_edge_shape-members.html +++ /dev/null @@ -1,125 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2EdgeShape Member List
    -
    -
    - -

    This is the complete list of members for b2EdgeShape, including all inherited members.

    - - - - - - - - - - - - - - - - - - - - - - - - - -
    b2EdgeShape() (defined in b2EdgeShape)b2EdgeShapeinline
    Clone(b2BlockAllocator *allocator) const b2EdgeShapevirtual
    ComputeAABB(b2AABB *aabb, const b2Transform &transform, int32 childIndex) const b2EdgeShapevirtual
    ComputeMass(b2MassData *massData, float32 density) const b2EdgeShapevirtual
    e_chain enum value (defined in b2Shape)b2Shape
    e_circle enum value (defined in b2Shape)b2Shape
    e_edge enum value (defined in b2Shape)b2Shape
    e_polygon enum value (defined in b2Shape)b2Shape
    e_typeCount enum value (defined in b2Shape)b2Shape
    GetChildCount() const b2EdgeShapevirtual
    GetType() const b2Shapeinline
    m_hasVertex0 (defined in b2EdgeShape)b2EdgeShape
    m_hasVertex3 (defined in b2EdgeShape)b2EdgeShape
    m_radius (defined in b2Shape)b2Shape
    m_type (defined in b2Shape)b2Shape
    m_vertex0b2EdgeShape
    m_vertex1b2EdgeShape
    m_vertex2 (defined in b2EdgeShape)b2EdgeShape
    m_vertex3 (defined in b2EdgeShape)b2EdgeShape
    RayCast(b2RayCastOutput *output, const b2RayCastInput &input, const b2Transform &transform, int32 childIndex) const b2EdgeShapevirtual
    Set(const b2Vec2 &v1, const b2Vec2 &v2)b2EdgeShape
    TestPoint(const b2Transform &transform, const b2Vec2 &p) const b2EdgeShapevirtual
    Type enum name (defined in b2Shape)b2Shape
    ~b2Shape() (defined in b2Shape)b2Shapeinlinevirtual
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_edge_shape.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_edge_shape.html deleted file mode 100644 index 2230ea0..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_edge_shape.html +++ /dev/null @@ -1,334 +0,0 @@ - - - - - - -Box2D: b2EdgeShape Class Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2EdgeShape Class Reference
    -
    -
    - -

    #include <b2EdgeShape.h>

    -
    -Inheritance diagram for b2EdgeShape:
    -
    -
    - - -b2Shape - -
    - - - - - - - - - - - - - - - - - - - - - - -

    -Public Member Functions

    -void Set (const b2Vec2 &v1, const b2Vec2 &v2)
     Set this as an isolated edge.
     
    -b2ShapeClone (b2BlockAllocator *allocator) const
     Implement b2Shape.
     
    int32 GetChildCount () const
     
    bool TestPoint (const b2Transform &transform, const b2Vec2 &p) const
     
    -bool RayCast (b2RayCastOutput *output, const b2RayCastInput &input, const b2Transform &transform, int32 childIndex) const
     Implement b2Shape.
     
    void ComputeAABB (b2AABB *aabb, const b2Transform &transform, int32 childIndex) const
     
    void ComputeMass (b2MassData *massData, float32 density) const
     
    - Public Member Functions inherited from b2Shape
    Type GetType () const
     
    - - - - - - - - - - - - - - - - - - - - -

    -Public Attributes

    -b2Vec2 m_vertex1
     These are the edge vertices.
     
    -b2Vec2 m_vertex2
     
    -b2Vec2 m_vertex0
     Optional adjacent vertices. These are used for smooth collision.
     
    -b2Vec2 m_vertex3
     
    -bool m_hasVertex0
     
    -bool m_hasVertex3
     
    - Public Attributes inherited from b2Shape
    -Type m_type
     
    -float32 m_radius
     
    - - - - -

    -Additional Inherited Members

    - Public Types inherited from b2Shape
    enum  Type {
    -  e_circle = 0, -e_edge = 1, -e_polygon = 2, -e_chain = 3, -
    -  e_typeCount = 4 -
    - }
     
    -

    Detailed Description

    -

    A line segment (edge) shape. These can be connected in chains or loops to other edge shapes. The connectivity information is used to ensure correct contact normals.

    -

    Member Function Documentation

    - -
    -
    - - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    void b2EdgeShape::ComputeAABB (b2AABBaabb,
    const b2Transformtransform,
    int32 childIndex 
    ) const
    -
    -virtual
    -
    -
    See Also
    b2Shape::ComputeAABB
    - -

    Implements b2Shape.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - - - - - - - - - - - -
    void b2EdgeShape::ComputeMass (b2MassDatamassData,
    float32 density 
    ) const
    -
    -virtual
    -
    -
    See Also
    b2Shape::ComputeMass
    - -

    Implements b2Shape.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    int32 b2EdgeShape::GetChildCount () const
    -
    -virtual
    -
    -
    See Also
    b2Shape::GetChildCount
    - -

    Implements b2Shape.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - - - - - - - - - - - -
    bool b2EdgeShape::TestPoint (const b2Transformtransform,
    const b2Vec2p 
    ) const
    -
    -virtual
    -
    -
    See Also
    b2Shape::TestPoint
    - -

    Implements b2Shape.

    - -
    -
    -
    The documentation for this class was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_edge_shape.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_edge_shape.png deleted file mode 100644 index 8ab971f..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_edge_shape.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_fixture-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_fixture-members.html deleted file mode 100644 index 7eeb7ff..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_fixture-members.html +++ /dev/null @@ -1,147 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2Fixture Member List
    -
    -
    - -

    This is the complete list of members for b2Fixture, including all inherited members.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    b2Body (defined in b2Fixture)b2Fixturefriend
    b2Contact (defined in b2Fixture)b2Fixturefriend
    b2ContactManager (defined in b2Fixture)b2Fixturefriend
    b2Fixture() (defined in b2Fixture)b2Fixtureprotected
    b2World (defined in b2Fixture)b2Fixturefriend
    Create(b2BlockAllocator *allocator, b2Body *body, const b2FixtureDef *def) (defined in b2Fixture)b2Fixtureprotected
    CreateProxies(b2BroadPhase *broadPhase, const b2Transform &xf) (defined in b2Fixture)b2Fixtureprotected
    Destroy(b2BlockAllocator *allocator) (defined in b2Fixture)b2Fixtureprotected
    DestroyProxies(b2BroadPhase *broadPhase) (defined in b2Fixture)b2Fixtureprotected
    Dump(int32 bodyIndex)b2Fixture
    GetAABB(int32 childIndex) const b2Fixtureinline
    GetBody()b2Fixtureinline
    GetBody() const (defined in b2Fixture)b2Fixtureinline
    GetDensity() const b2Fixtureinline
    GetFilterData() const b2Fixtureinline
    GetFriction() const b2Fixtureinline
    GetMassData(b2MassData *massData) const b2Fixtureinline
    GetNext()b2Fixtureinline
    GetNext() const (defined in b2Fixture)b2Fixtureinline
    GetRestitution() const b2Fixtureinline
    GetShape()b2Fixtureinline
    GetShape() const (defined in b2Fixture)b2Fixtureinline
    GetType() const b2Fixtureinline
    GetUserData() const b2Fixtureinline
    IsSensor() const b2Fixtureinline
    m_body (defined in b2Fixture)b2Fixtureprotected
    m_density (defined in b2Fixture)b2Fixtureprotected
    m_filter (defined in b2Fixture)b2Fixtureprotected
    m_friction (defined in b2Fixture)b2Fixtureprotected
    m_isSensor (defined in b2Fixture)b2Fixtureprotected
    m_next (defined in b2Fixture)b2Fixtureprotected
    m_proxies (defined in b2Fixture)b2Fixtureprotected
    m_proxyCount (defined in b2Fixture)b2Fixtureprotected
    m_restitution (defined in b2Fixture)b2Fixtureprotected
    m_shape (defined in b2Fixture)b2Fixtureprotected
    m_userData (defined in b2Fixture)b2Fixtureprotected
    RayCast(b2RayCastOutput *output, const b2RayCastInput &input, int32 childIndex) const b2Fixtureinline
    Refilter()b2Fixture
    SetDensity(float32 density)b2Fixtureinline
    SetFilterData(const b2Filter &filter)b2Fixture
    SetFriction(float32 friction)b2Fixtureinline
    SetRestitution(float32 restitution)b2Fixtureinline
    SetSensor(bool sensor)b2Fixture
    SetUserData(void *data)b2Fixtureinline
    Synchronize(b2BroadPhase *broadPhase, const b2Transform &xf1, const b2Transform &xf2) (defined in b2Fixture)b2Fixtureprotected
    TestPoint(const b2Vec2 &p) const b2Fixtureinline
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_fixture.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_fixture.html deleted file mode 100644 index 50edc8f..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_fixture.html +++ /dev/null @@ -1,625 +0,0 @@ - - - - - - -Box2D: b2Fixture Class Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    - -
    - -

    #include <b2Fixture.h>

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Member Functions

    b2Shape::Type GetType () const
     
    b2ShapeGetShape ()
     
    -const b2ShapeGetShape () const
     
    -void SetSensor (bool sensor)
     Set if this fixture is a sensor.
     
    bool IsSensor () const
     
    void SetFilterData (const b2Filter &filter)
     
    -const b2FilterGetFilterData () const
     Get the contact filtering data.
     
    -void Refilter ()
     Call this if you want to establish collision that was previously disabled by b2ContactFilter::ShouldCollide.
     
    b2BodyGetBody ()
     
    -const b2BodyGetBody () const
     
    b2FixtureGetNext ()
     
    -const b2FixtureGetNext () const
     
    void * GetUserData () const
     
    -void SetUserData (void *data)
     Set the user data. Use this to store your application specific data.
     
    bool TestPoint (const b2Vec2 &p) const
     
    bool RayCast (b2RayCastOutput *output, const b2RayCastInput &input, int32 childIndex) const
     
    void GetMassData (b2MassData *massData) const
     
    void SetDensity (float32 density)
     
    -float32 GetDensity () const
     Get the density of this fixture.
     
    -float32 GetFriction () const
     Get the coefficient of friction.
     
    void SetFriction (float32 friction)
     
    -float32 GetRestitution () const
     Get the coefficient of restitution.
     
    void SetRestitution (float32 restitution)
     
    const b2AABBGetAABB (int32 childIndex) const
     
    -void Dump (int32 bodyIndex)
     Dump this fixture to the log file.
     
    - - - - - - - - - - - -

    -Protected Member Functions

    -void Create (b2BlockAllocator *allocator, b2Body *body, const b2FixtureDef *def)
     
    -void Destroy (b2BlockAllocator *allocator)
     
    -void CreateProxies (b2BroadPhase *broadPhase, const b2Transform &xf)
     
    -void DestroyProxies (b2BroadPhase *broadPhase)
     
    -void Synchronize (b2BroadPhase *broadPhase, const b2Transform &xf1, const b2Transform &xf2)
     
    - - - - - - - - - - - - - - - - - - - - - - - -

    -Protected Attributes

    -float32 m_density
     
    -b2Fixturem_next
     
    -b2Bodym_body
     
    -b2Shapem_shape
     
    -float32 m_friction
     
    -float32 m_restitution
     
    -b2FixtureProxym_proxies
     
    -int32 m_proxyCount
     
    -b2Filter m_filter
     
    -bool m_isSensor
     
    -void * m_userData
     
    - - - - - - - - - -

    -Friends

    -class b2Body
     
    -class b2World
     
    -class b2Contact
     
    -class b2ContactManager
     
    -

    Detailed Description

    -

    A fixture is used to attach a shape to a body for collision detection. A fixture inherits its transform from its parent. Fixtures hold additional non-geometric data such as friction, collision filters, etc. Fixtures are created via b2Body::CreateFixture.

    -
    Warning
    you cannot reuse fixtures.
    -

    Member Function Documentation

    - -
    -
    - - - - - -
    - - - - - - - - -
    const b2AABB & b2Fixture::GetAABB (int32 childIndex) const
    -
    -inline
    -
    -

    Get the fixture's AABB. This AABB may be enlarge and/or stale. If you need a more accurate AABB, compute it using the shape and the body transform.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    b2Body * b2Fixture::GetBody ()
    -
    -inline
    -
    -

    Get the parent body of this fixture. This is NULL if the fixture is not attached.

    -
    Returns
    the parent body.
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - -
    void b2Fixture::GetMassData (b2MassDatamassData) const
    -
    -inline
    -
    -

    Get the mass data for this fixture. The mass data is based on the density and the shape. The rotational inertia is about the shape's origin. This operation may be expensive.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    b2Fixture * b2Fixture::GetNext ()
    -
    -inline
    -
    -

    Get the next fixture in the parent body's fixture list.

    -
    Returns
    the next shape.
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    b2Shape * b2Fixture::GetShape ()
    -
    -inline
    -
    -

    Get the child shape. You can modify the child shape, however you should not change the number of vertices because this will crash some collision caching mechanisms. Manipulating the shape may lead to non-physical behavior.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    b2Shape::Type b2Fixture::GetType () const
    -
    -inline
    -
    -

    Get the type of the child shape. You can use this to down cast to the concrete shape.

    -
    Returns
    the shape type.
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    void * b2Fixture::GetUserData () const
    -
    -inline
    -
    -

    Get the user data that was assigned in the fixture definition. Use this to store your application specific data.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    bool b2Fixture::IsSensor () const
    -
    -inline
    -
    -

    Is this fixture a sensor (non-solid)?

    -
    Returns
    the true if the shape is a sensor.
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    bool b2Fixture::RayCast (b2RayCastOutputoutput,
    const b2RayCastInputinput,
    int32 childIndex 
    ) const
    -
    -inline
    -
    -

    Cast a ray against this shape.

    -
    Parameters
    - - - -
    outputthe ray-cast results.
    inputthe ray-cast input parameters.
    -
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - -
    void b2Fixture::SetDensity (float32 density)
    -
    -inline
    -
    -

    Set the density of this fixture. This will not automatically adjust the mass of the body. You must call b2Body::ResetMassData to update the body's mass.

    - -
    -
    - -
    -
    - - - - - - - - -
    void b2Fixture::SetFilterData (const b2Filterfilter)
    -
    -

    Set the contact filtering data. This will not update contacts until the next time step when either parent body is active and awake. This automatically calls Refilter.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - -
    void b2Fixture::SetFriction (float32 friction)
    -
    -inline
    -
    -

    Set the coefficient of friction. This will not change the friction of existing contacts.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - -
    void b2Fixture::SetRestitution (float32 restitution)
    -
    -inline
    -
    -

    Set the coefficient of restitution. This will not change the restitution of existing contacts.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - -
    bool b2Fixture::TestPoint (const b2Vec2p) const
    -
    -inline
    -
    -

    Test a point for containment in this fixture.

    -
    Parameters
    - - -
    pa point in world coordinates.
    -
    -
    - -
    -
    -
    The documentation for this class was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_friction_joint-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_friction_joint-members.html deleted file mode 100644 index b8418ef..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_friction_joint-members.html +++ /dev/null @@ -1,160 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2FrictionJoint Member List
    -
    -
    - -

    This is the complete list of members for b2FrictionJoint, including all inherited members.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    b2FrictionJoint(const b2FrictionJointDef *def) (defined in b2FrictionJoint)b2FrictionJointprotected
    b2Joint (defined in b2FrictionJoint)b2FrictionJointfriend
    b2Joint(const b2JointDef *def) (defined in b2Joint)b2Jointprotected
    Create(const b2JointDef *def, b2BlockAllocator *allocator) (defined in b2Joint)b2Jointprotectedstatic
    Destroy(b2Joint *joint, b2BlockAllocator *allocator) (defined in b2Joint)b2Jointprotectedstatic
    Dump()b2FrictionJointvirtual
    GetAnchorA() const b2FrictionJointvirtual
    GetAnchorB() const b2FrictionJointvirtual
    GetBodyA()b2Jointinline
    GetBodyB()b2Jointinline
    GetCollideConnected() const b2Jointinline
    GetLocalAnchorA() const b2FrictionJointinline
    GetLocalAnchorB() const b2FrictionJointinline
    GetMaxForce() const b2FrictionJoint
    GetMaxTorque() const b2FrictionJoint
    GetNext()b2Jointinline
    GetNext() const (defined in b2Joint)b2Jointinline
    GetReactionForce(float32 inv_dt) const b2FrictionJointvirtual
    GetReactionTorque(float32 inv_dt) const b2FrictionJointvirtual
    GetType() const b2Jointinline
    GetUserData() const b2Jointinline
    InitVelocityConstraints(const b2SolverData &data) (defined in b2FrictionJoint)b2FrictionJointprotectedvirtual
    IsActive() const b2Joint
    m_angularImpulse (defined in b2FrictionJoint)b2FrictionJointprotected
    m_angularMass (defined in b2FrictionJoint)b2FrictionJointprotected
    m_bodyA (defined in b2Joint)b2Jointprotected
    m_bodyB (defined in b2Joint)b2Jointprotected
    m_collideConnected (defined in b2Joint)b2Jointprotected
    m_edgeA (defined in b2Joint)b2Jointprotected
    m_edgeB (defined in b2Joint)b2Jointprotected
    m_index (defined in b2Joint)b2Jointprotected
    m_indexA (defined in b2FrictionJoint)b2FrictionJointprotected
    m_indexB (defined in b2FrictionJoint)b2FrictionJointprotected
    m_invIA (defined in b2FrictionJoint)b2FrictionJointprotected
    m_invIB (defined in b2FrictionJoint)b2FrictionJointprotected
    m_invMassA (defined in b2FrictionJoint)b2FrictionJointprotected
    m_invMassB (defined in b2FrictionJoint)b2FrictionJointprotected
    m_islandFlag (defined in b2Joint)b2Jointprotected
    m_linearImpulse (defined in b2FrictionJoint)b2FrictionJointprotected
    m_linearMass (defined in b2FrictionJoint)b2FrictionJointprotected
    m_localAnchorA (defined in b2FrictionJoint)b2FrictionJointprotected
    m_localAnchorB (defined in b2FrictionJoint)b2FrictionJointprotected
    m_localCenterA (defined in b2FrictionJoint)b2FrictionJointprotected
    m_localCenterB (defined in b2FrictionJoint)b2FrictionJointprotected
    m_maxForce (defined in b2FrictionJoint)b2FrictionJointprotected
    m_maxTorque (defined in b2FrictionJoint)b2FrictionJointprotected
    m_next (defined in b2Joint)b2Jointprotected
    m_prev (defined in b2Joint)b2Jointprotected
    m_rA (defined in b2FrictionJoint)b2FrictionJointprotected
    m_rB (defined in b2FrictionJoint)b2FrictionJointprotected
    m_type (defined in b2Joint)b2Jointprotected
    m_userData (defined in b2Joint)b2Jointprotected
    SetMaxForce(float32 force)b2FrictionJoint
    SetMaxTorque(float32 torque)b2FrictionJoint
    SetUserData(void *data)b2Jointinline
    ShiftOrigin(const b2Vec2 &newOrigin)b2Jointinlinevirtual
    SolvePositionConstraints(const b2SolverData &data) (defined in b2FrictionJoint)b2FrictionJointprotectedvirtual
    SolveVelocityConstraints(const b2SolverData &data) (defined in b2FrictionJoint)b2FrictionJointprotectedvirtual
    ~b2Joint() (defined in b2Joint)b2Jointinlineprotectedvirtual
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_friction_joint.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_friction_joint.html deleted file mode 100644 index 5aaa145..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_friction_joint.html +++ /dev/null @@ -1,333 +0,0 @@ - - - - - - -Box2D: b2FrictionJoint Class Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    - -
    - -

    #include <b2FrictionJoint.h>

    -
    -Inheritance diagram for b2FrictionJoint:
    -
    -
    - - -b2Joint - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Member Functions

    -b2Vec2 GetAnchorA () const
     Get the anchor point on bodyA in world coordinates.
     
    -b2Vec2 GetAnchorB () const
     Get the anchor point on bodyB in world coordinates.
     
    -b2Vec2 GetReactionForce (float32 inv_dt) const
     Get the reaction force on bodyB at the joint anchor in Newtons.
     
    -float32 GetReactionTorque (float32 inv_dt) const
     Get the reaction torque on bodyB in N*m.
     
    -const b2Vec2GetLocalAnchorA () const
     The local anchor point relative to bodyA's origin.
     
    -const b2Vec2GetLocalAnchorB () const
     The local anchor point relative to bodyB's origin.
     
    -void SetMaxForce (float32 force)
     Set the maximum friction force in N.
     
    -float32 GetMaxForce () const
     Get the maximum friction force in N.
     
    -void SetMaxTorque (float32 torque)
     Set the maximum friction torque in N*m.
     
    -float32 GetMaxTorque () const
     Get the maximum friction torque in N*m.
     
    -void Dump ()
     Dump joint to dmLog.
     
    - Public Member Functions inherited from b2Joint
    -b2JointType GetType () const
     Get the type of the concrete joint.
     
    -b2BodyGetBodyA ()
     Get the first body attached to this joint.
     
    -b2BodyGetBodyB ()
     Get the second body attached to this joint.
     
    -b2JointGetNext ()
     Get the next joint the world joint list.
     
    -const b2JointGetNext () const
     
    -void * GetUserData () const
     Get the user data pointer.
     
    -void SetUserData (void *data)
     Set the user data pointer.
     
    -bool IsActive () const
     Short-cut function to determine if either body is inactive.
     
    bool GetCollideConnected () const
     
    -virtual void ShiftOrigin (const b2Vec2 &newOrigin)
     Shift the origin for any points stored in world coordinates.
     
    - - - - - - - - - - - - -

    -Protected Member Functions

    b2FrictionJoint (const b2FrictionJointDef *def)
     
    -void InitVelocityConstraints (const b2SolverData &data)
     
    -void SolveVelocityConstraints (const b2SolverData &data)
     
    -bool SolvePositionConstraints (const b2SolverData &data)
     
    - Protected Member Functions inherited from b2Joint
    b2Joint (const b2JointDef *def)
     
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Protected Attributes

    -b2Vec2 m_localAnchorA
     
    -b2Vec2 m_localAnchorB
     
    -b2Vec2 m_linearImpulse
     
    -float32 m_angularImpulse
     
    -float32 m_maxForce
     
    -float32 m_maxTorque
     
    -int32 m_indexA
     
    -int32 m_indexB
     
    -b2Vec2 m_rA
     
    -b2Vec2 m_rB
     
    -b2Vec2 m_localCenterA
     
    -b2Vec2 m_localCenterB
     
    -float32 m_invMassA
     
    -float32 m_invMassB
     
    -float32 m_invIA
     
    -float32 m_invIB
     
    -b2Mat22 m_linearMass
     
    -float32 m_angularMass
     
    - Protected Attributes inherited from b2Joint
    -b2JointType m_type
     
    -b2Jointm_prev
     
    -b2Jointm_next
     
    -b2JointEdge m_edgeA
     
    -b2JointEdge m_edgeB
     
    -b2Bodym_bodyA
     
    -b2Bodym_bodyB
     
    -int32 m_index
     
    -bool m_islandFlag
     
    -bool m_collideConnected
     
    -void * m_userData
     
    - - - -

    -Friends

    -class b2Joint
     
    - - - - - - -

    -Additional Inherited Members

    - Static Protected Member Functions inherited from b2Joint
    -static b2JointCreate (const b2JointDef *def, b2BlockAllocator *allocator)
     
    -static void Destroy (b2Joint *joint, b2BlockAllocator *allocator)
     
    -

    Detailed Description

    -

    Friction joint. This is used for top-down friction. It provides 2D translational friction and angular friction.

    -

    The documentation for this class was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_friction_joint.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_friction_joint.png deleted file mode 100644 index ce40f94..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_friction_joint.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_gear_joint-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_gear_joint-members.html deleted file mode 100644 index 8b25c80..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_gear_joint-members.html +++ /dev/null @@ -1,180 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2GearJoint Member List
    -
    -
    - -

    This is the complete list of members for b2GearJoint, including all inherited members.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    b2GearJoint(const b2GearJointDef *data) (defined in b2GearJoint)b2GearJointprotected
    b2Joint (defined in b2GearJoint)b2GearJointfriend
    b2Joint(const b2JointDef *def) (defined in b2Joint)b2Jointprotected
    Create(const b2JointDef *def, b2BlockAllocator *allocator) (defined in b2Joint)b2Jointprotectedstatic
    Destroy(b2Joint *joint, b2BlockAllocator *allocator) (defined in b2Joint)b2Jointprotectedstatic
    Dump()b2GearJointvirtual
    GetAnchorA() const b2GearJointvirtual
    GetAnchorB() const b2GearJointvirtual
    GetBodyA()b2Jointinline
    GetBodyB()b2Jointinline
    GetCollideConnected() const b2Jointinline
    GetJoint1()b2GearJointinline
    GetJoint2()b2GearJointinline
    GetNext()b2Jointinline
    GetNext() const (defined in b2Joint)b2Jointinline
    GetRatio() const (defined in b2GearJoint)b2GearJoint
    GetReactionForce(float32 inv_dt) const b2GearJointvirtual
    GetReactionTorque(float32 inv_dt) const b2GearJointvirtual
    GetType() const b2Jointinline
    GetUserData() const b2Jointinline
    InitVelocityConstraints(const b2SolverData &data) (defined in b2GearJoint)b2GearJointprotectedvirtual
    IsActive() const b2Joint
    m_bodyA (defined in b2Joint)b2Jointprotected
    m_bodyB (defined in b2Joint)b2Jointprotected
    m_bodyC (defined in b2GearJoint)b2GearJointprotected
    m_bodyD (defined in b2GearJoint)b2GearJointprotected
    m_collideConnected (defined in b2Joint)b2Jointprotected
    m_constant (defined in b2GearJoint)b2GearJointprotected
    m_edgeA (defined in b2Joint)b2Jointprotected
    m_edgeB (defined in b2Joint)b2Jointprotected
    m_iA (defined in b2GearJoint)b2GearJointprotected
    m_iB (defined in b2GearJoint)b2GearJointprotected
    m_iC (defined in b2GearJoint)b2GearJointprotected
    m_iD (defined in b2GearJoint)b2GearJointprotected
    m_impulse (defined in b2GearJoint)b2GearJointprotected
    m_index (defined in b2Joint)b2Jointprotected
    m_indexA (defined in b2GearJoint)b2GearJointprotected
    m_indexB (defined in b2GearJoint)b2GearJointprotected
    m_indexC (defined in b2GearJoint)b2GearJointprotected
    m_indexD (defined in b2GearJoint)b2GearJointprotected
    m_islandFlag (defined in b2Joint)b2Jointprotected
    m_joint1 (defined in b2GearJoint)b2GearJointprotected
    m_joint2 (defined in b2GearJoint)b2GearJointprotected
    m_JvAC (defined in b2GearJoint)b2GearJointprotected
    m_JvBD (defined in b2GearJoint)b2GearJointprotected
    m_JwA (defined in b2GearJoint)b2GearJointprotected
    m_JwB (defined in b2GearJoint)b2GearJointprotected
    m_JwC (defined in b2GearJoint)b2GearJointprotected
    m_JwD (defined in b2GearJoint)b2GearJointprotected
    m_lcA (defined in b2GearJoint)b2GearJointprotected
    m_lcB (defined in b2GearJoint)b2GearJointprotected
    m_lcC (defined in b2GearJoint)b2GearJointprotected
    m_lcD (defined in b2GearJoint)b2GearJointprotected
    m_localAnchorA (defined in b2GearJoint)b2GearJointprotected
    m_localAnchorB (defined in b2GearJoint)b2GearJointprotected
    m_localAnchorC (defined in b2GearJoint)b2GearJointprotected
    m_localAnchorD (defined in b2GearJoint)b2GearJointprotected
    m_localAxisC (defined in b2GearJoint)b2GearJointprotected
    m_localAxisD (defined in b2GearJoint)b2GearJointprotected
    m_mA (defined in b2GearJoint)b2GearJointprotected
    m_mass (defined in b2GearJoint)b2GearJointprotected
    m_mB (defined in b2GearJoint)b2GearJointprotected
    m_mC (defined in b2GearJoint)b2GearJointprotected
    m_mD (defined in b2GearJoint)b2GearJointprotected
    m_next (defined in b2Joint)b2Jointprotected
    m_prev (defined in b2Joint)b2Jointprotected
    m_ratio (defined in b2GearJoint)b2GearJointprotected
    m_referenceAngleA (defined in b2GearJoint)b2GearJointprotected
    m_referenceAngleB (defined in b2GearJoint)b2GearJointprotected
    m_type (defined in b2Joint)b2Jointprotected
    m_typeA (defined in b2GearJoint)b2GearJointprotected
    m_typeB (defined in b2GearJoint)b2GearJointprotected
    m_userData (defined in b2Joint)b2Jointprotected
    SetRatio(float32 ratio)b2GearJoint
    SetUserData(void *data)b2Jointinline
    ShiftOrigin(const b2Vec2 &newOrigin)b2Jointinlinevirtual
    SolvePositionConstraints(const b2SolverData &data) (defined in b2GearJoint)b2GearJointprotectedvirtual
    SolveVelocityConstraints(const b2SolverData &data) (defined in b2GearJoint)b2GearJointprotectedvirtual
    ~b2Joint() (defined in b2Joint)b2Jointinlineprotectedvirtual
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_gear_joint.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_gear_joint.html deleted file mode 100644 index d6bf8a6..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_gear_joint.html +++ /dev/null @@ -1,391 +0,0 @@ - - - - - - -Box2D: b2GearJoint Class Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    - -
    - -

    #include <b2GearJoint.h>

    -
    -Inheritance diagram for b2GearJoint:
    -
    -
    - - -b2Joint - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Member Functions

    -b2Vec2 GetAnchorA () const
     Get the anchor point on bodyA in world coordinates.
     
    -b2Vec2 GetAnchorB () const
     Get the anchor point on bodyB in world coordinates.
     
    -b2Vec2 GetReactionForce (float32 inv_dt) const
     Get the reaction force on bodyB at the joint anchor in Newtons.
     
    -float32 GetReactionTorque (float32 inv_dt) const
     Get the reaction torque on bodyB in N*m.
     
    -b2JointGetJoint1 ()
     Get the first joint.
     
    -b2JointGetJoint2 ()
     Get the second joint.
     
    -void SetRatio (float32 ratio)
     Set/Get the gear ratio.
     
    -float32 GetRatio () const
     
    -void Dump ()
     Dump joint to dmLog.
     
    - Public Member Functions inherited from b2Joint
    -b2JointType GetType () const
     Get the type of the concrete joint.
     
    -b2BodyGetBodyA ()
     Get the first body attached to this joint.
     
    -b2BodyGetBodyB ()
     Get the second body attached to this joint.
     
    -b2JointGetNext ()
     Get the next joint the world joint list.
     
    -const b2JointGetNext () const
     
    -void * GetUserData () const
     Get the user data pointer.
     
    -void SetUserData (void *data)
     Set the user data pointer.
     
    -bool IsActive () const
     Short-cut function to determine if either body is inactive.
     
    bool GetCollideConnected () const
     
    -virtual void ShiftOrigin (const b2Vec2 &newOrigin)
     Shift the origin for any points stored in world coordinates.
     
    - - - - - - - - - - - - -

    -Protected Member Functions

    b2GearJoint (const b2GearJointDef *data)
     
    -void InitVelocityConstraints (const b2SolverData &data)
     
    -void SolveVelocityConstraints (const b2SolverData &data)
     
    -bool SolvePositionConstraints (const b2SolverData &data)
     
    - Protected Member Functions inherited from b2Joint
    b2Joint (const b2JointDef *def)
     
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Protected Attributes

    -b2Jointm_joint1
     
    -b2Jointm_joint2
     
    -b2JointType m_typeA
     
    -b2JointType m_typeB
     
    -b2Bodym_bodyC
     
    -b2Bodym_bodyD
     
    -b2Vec2 m_localAnchorA
     
    -b2Vec2 m_localAnchorB
     
    -b2Vec2 m_localAnchorC
     
    -b2Vec2 m_localAnchorD
     
    -b2Vec2 m_localAxisC
     
    -b2Vec2 m_localAxisD
     
    -float32 m_referenceAngleA
     
    -float32 m_referenceAngleB
     
    -float32 m_constant
     
    -float32 m_ratio
     
    -float32 m_impulse
     
    -int32 m_indexA
     
    -int32 m_indexB
     
    -int32 m_indexC
     
    -int32 m_indexD
     
    -b2Vec2 m_lcA
     
    -b2Vec2 m_lcB
     
    -b2Vec2 m_lcC
     
    -b2Vec2 m_lcD
     
    -float32 m_mA
     
    -float32 m_mB
     
    -float32 m_mC
     
    -float32 m_mD
     
    -float32 m_iA
     
    -float32 m_iB
     
    -float32 m_iC
     
    -float32 m_iD
     
    -b2Vec2 m_JvAC
     
    -b2Vec2 m_JvBD
     
    -float32 m_JwA
     
    -float32 m_JwB
     
    -float32 m_JwC
     
    -float32 m_JwD
     
    -float32 m_mass
     
    - Protected Attributes inherited from b2Joint
    -b2JointType m_type
     
    -b2Jointm_prev
     
    -b2Jointm_next
     
    -b2JointEdge m_edgeA
     
    -b2JointEdge m_edgeB
     
    -b2Bodym_bodyA
     
    -b2Bodym_bodyB
     
    -int32 m_index
     
    -bool m_islandFlag
     
    -bool m_collideConnected
     
    -void * m_userData
     
    - - - -

    -Friends

    -class b2Joint
     
    - - - - - - -

    -Additional Inherited Members

    - Static Protected Member Functions inherited from b2Joint
    -static b2JointCreate (const b2JointDef *def, b2BlockAllocator *allocator)
     
    -static void Destroy (b2Joint *joint, b2BlockAllocator *allocator)
     
    -

    Detailed Description

    -

    A gear joint is used to connect two joints together. Either joint can be a revolute or prismatic joint. You specify a gear ratio to bind the motions together: coordinate1 + ratio * coordinate2 = constant The ratio can be negative or positive. If one joint is a revolute joint and the other joint is a prismatic joint, then the ratio will have units of length or units of 1/length.

    -
    Warning
    You have to manually destroy the gear joint if joint1 or joint2 is destroyed.
    -

    The documentation for this class was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_gear_joint.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_gear_joint.png deleted file mode 100644 index c11b5b6..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_gear_joint.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_growable_stack-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_growable_stack-members.html deleted file mode 100644 index 50d13df..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_growable_stack-members.html +++ /dev/null @@ -1,106 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2GrowableStack< T, N > Member List
    -
    -
    - -

    This is the complete list of members for b2GrowableStack< T, N >, including all inherited members.

    - - - - - - -
    b2GrowableStack() (defined in b2GrowableStack< T, N >)b2GrowableStack< T, N >inline
    GetCount() (defined in b2GrowableStack< T, N >)b2GrowableStack< T, N >inline
    Pop() (defined in b2GrowableStack< T, N >)b2GrowableStack< T, N >inline
    Push(const T &element) (defined in b2GrowableStack< T, N >)b2GrowableStack< T, N >inline
    ~b2GrowableStack() (defined in b2GrowableStack< T, N >)b2GrowableStack< T, N >inline
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_growable_stack.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_growable_stack.html deleted file mode 100644 index ed5b052..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_growable_stack.html +++ /dev/null @@ -1,124 +0,0 @@ - - - - - - -Box2D: b2GrowableStack< T, N > Class Template Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2GrowableStack< T, N > Class Template Reference
    -
    -
    - -

    #include <b2GrowableStack.h>

    - - - - - - - - -

    -Public Member Functions

    -void Push (const T &element)
     
    -T Pop ()
     
    -int32 GetCount ()
     
    -

    Detailed Description

    -

    template<typename T, int32 N>
    -class b2GrowableStack< T, N >

    - -

    This is a growable LIFO stack with an initial capacity of N. If the stack size exceeds the initial capacity, the heap is used to increase the size of the stack.

    -

    The documentation for this class was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_island-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_island-members.html deleted file mode 100644 index c12e57c..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_island-members.html +++ /dev/null @@ -1,123 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2Island Member List
    -
    -
    - -

    This is the complete list of members for b2Island, including all inherited members.

    - - - - - - - - - - - - - - - - - - - - - - - -
    Add(b2Body *body) (defined in b2Island)b2Islandinline
    Add(b2Contact *contact) (defined in b2Island)b2Islandinline
    Add(b2Joint *joint) (defined in b2Island)b2Islandinline
    b2Island(int32 bodyCapacity, int32 contactCapacity, int32 jointCapacity, b2StackAllocator *allocator, b2ContactListener *listener) (defined in b2Island)b2Island
    Clear() (defined in b2Island)b2Islandinline
    m_allocator (defined in b2Island)b2Island
    m_bodies (defined in b2Island)b2Island
    m_bodyCapacity (defined in b2Island)b2Island
    m_bodyCount (defined in b2Island)b2Island
    m_contactCapacity (defined in b2Island)b2Island
    m_contactCount (defined in b2Island)b2Island
    m_contacts (defined in b2Island)b2Island
    m_jointCapacity (defined in b2Island)b2Island
    m_jointCount (defined in b2Island)b2Island
    m_joints (defined in b2Island)b2Island
    m_listener (defined in b2Island)b2Island
    m_positions (defined in b2Island)b2Island
    m_velocities (defined in b2Island)b2Island
    Report(const b2ContactVelocityConstraint *constraints) (defined in b2Island)b2Island
    Solve(b2Profile *profile, const b2TimeStep &step, const b2Vec2 &gravity, bool allowSleep) (defined in b2Island)b2Island
    SolveTOI(const b2TimeStep &subStep, int32 toiIndexA, int32 toiIndexB) (defined in b2Island)b2Island
    ~b2Island() (defined in b2Island)b2Island
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_island.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_island.html deleted file mode 100644 index a3ba9af..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_island.html +++ /dev/null @@ -1,183 +0,0 @@ - - - - - - -Box2D: b2Island Class Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2Island Class Reference
    -
    -
    - -

    This is an internal class. - More...

    - -

    #include <b2Island.h>

    - - - - - - - - - - - - - - - - - - -

    -Public Member Functions

    b2Island (int32 bodyCapacity, int32 contactCapacity, int32 jointCapacity, b2StackAllocator *allocator, b2ContactListener *listener)
     
    -void Clear ()
     
    -void Solve (b2Profile *profile, const b2TimeStep &step, const b2Vec2 &gravity, bool allowSleep)
     
    -void SolveTOI (const b2TimeStep &subStep, int32 toiIndexA, int32 toiIndexB)
     
    -void Add (b2Body *body)
     
    -void Add (b2Contact *contact)
     
    -void Add (b2Joint *joint)
     
    -void Report (const b2ContactVelocityConstraint *constraints)
     
    - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Attributes

    -b2StackAllocatorm_allocator
     
    -b2ContactListenerm_listener
     
    -b2Body ** m_bodies
     
    -b2Contact ** m_contacts
     
    -b2Joint ** m_joints
     
    -b2Positionm_positions
     
    -b2Velocitym_velocities
     
    -int32 m_bodyCount
     
    -int32 m_jointCount
     
    -int32 m_contactCount
     
    -int32 m_bodyCapacity
     
    -int32 m_contactCapacity
     
    -int32 m_jointCapacity
     
    -

    Detailed Description

    -

    This is an internal class.

    -

    The documentation for this class was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_joint-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_joint-members.html deleted file mode 100644 index ee06914..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_joint-members.html +++ /dev/null @@ -1,138 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2Joint Member List
    -
    -
    - -

    This is the complete list of members for b2Joint, including all inherited members.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    b2Body (defined in b2Joint)b2Jointfriend
    b2GearJoint (defined in b2Joint)b2Jointfriend
    b2Island (defined in b2Joint)b2Jointfriend
    b2Joint(const b2JointDef *def) (defined in b2Joint)b2Jointprotected
    b2World (defined in b2Joint)b2Jointfriend
    Create(const b2JointDef *def, b2BlockAllocator *allocator) (defined in b2Joint)b2Jointprotectedstatic
    Destroy(b2Joint *joint, b2BlockAllocator *allocator) (defined in b2Joint)b2Jointprotectedstatic
    Dump()b2Jointinlinevirtual
    GetAnchorA() const =0b2Jointpure virtual
    GetAnchorB() const =0b2Jointpure virtual
    GetBodyA()b2Jointinline
    GetBodyB()b2Jointinline
    GetCollideConnected() const b2Jointinline
    GetNext()b2Jointinline
    GetNext() const (defined in b2Joint)b2Jointinline
    GetReactionForce(float32 inv_dt) const =0b2Jointpure virtual
    GetReactionTorque(float32 inv_dt) const =0b2Jointpure virtual
    GetType() const b2Jointinline
    GetUserData() const b2Jointinline
    InitVelocityConstraints(const b2SolverData &data)=0 (defined in b2Joint)b2Jointprotectedpure virtual
    IsActive() const b2Joint
    m_bodyA (defined in b2Joint)b2Jointprotected
    m_bodyB (defined in b2Joint)b2Jointprotected
    m_collideConnected (defined in b2Joint)b2Jointprotected
    m_edgeA (defined in b2Joint)b2Jointprotected
    m_edgeB (defined in b2Joint)b2Jointprotected
    m_index (defined in b2Joint)b2Jointprotected
    m_islandFlag (defined in b2Joint)b2Jointprotected
    m_next (defined in b2Joint)b2Jointprotected
    m_prev (defined in b2Joint)b2Jointprotected
    m_type (defined in b2Joint)b2Jointprotected
    m_userData (defined in b2Joint)b2Jointprotected
    SetUserData(void *data)b2Jointinline
    ShiftOrigin(const b2Vec2 &newOrigin)b2Jointinlinevirtual
    SolvePositionConstraints(const b2SolverData &data)=0 (defined in b2Joint)b2Jointprotectedpure virtual
    SolveVelocityConstraints(const b2SolverData &data)=0 (defined in b2Joint)b2Jointprotectedpure virtual
    ~b2Joint() (defined in b2Joint)b2Jointinlineprotectedvirtual
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_joint.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_joint.html deleted file mode 100644 index 4892daa..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_joint.html +++ /dev/null @@ -1,293 +0,0 @@ - - - - - - -Box2D: b2Joint Class Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    - -
    - -

    #include <b2Joint.h>

    -
    -Inheritance diagram for b2Joint:
    -
    -
    - - -b2DistanceJoint -b2FrictionJoint -b2GearJoint -b2MotorJoint -b2MouseJoint -b2PrismaticJoint -b2PulleyJoint -b2RevoluteJoint -b2RopeJoint -b2WeldJoint -b2WheelJoint - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Member Functions

    -b2JointType GetType () const
     Get the type of the concrete joint.
     
    -b2BodyGetBodyA ()
     Get the first body attached to this joint.
     
    -b2BodyGetBodyB ()
     Get the second body attached to this joint.
     
    -virtual b2Vec2 GetAnchorA () const =0
     Get the anchor point on bodyA in world coordinates.
     
    -virtual b2Vec2 GetAnchorB () const =0
     Get the anchor point on bodyB in world coordinates.
     
    -virtual b2Vec2 GetReactionForce (float32 inv_dt) const =0
     Get the reaction force on bodyB at the joint anchor in Newtons.
     
    -virtual float32 GetReactionTorque (float32 inv_dt) const =0
     Get the reaction torque on bodyB in N*m.
     
    -b2JointGetNext ()
     Get the next joint the world joint list.
     
    -const b2JointGetNext () const
     
    -void * GetUserData () const
     Get the user data pointer.
     
    -void SetUserData (void *data)
     Set the user data pointer.
     
    -bool IsActive () const
     Short-cut function to determine if either body is inactive.
     
    bool GetCollideConnected () const
     
    -virtual void Dump ()
     Dump this joint to the log file.
     
    -virtual void ShiftOrigin (const b2Vec2 &newOrigin)
     Shift the origin for any points stored in world coordinates.
     
    - - - - - - - - - -

    -Protected Member Functions

    b2Joint (const b2JointDef *def)
     
    -virtual void InitVelocityConstraints (const b2SolverData &data)=0
     
    -virtual void SolveVelocityConstraints (const b2SolverData &data)=0
     
    -virtual bool SolvePositionConstraints (const b2SolverData &data)=0
     
    - - - - - -

    -Static Protected Member Functions

    -static b2JointCreate (const b2JointDef *def, b2BlockAllocator *allocator)
     
    -static void Destroy (b2Joint *joint, b2BlockAllocator *allocator)
     
    - - - - - - - - - - - - - - - - - - - - - - - -

    -Protected Attributes

    -b2JointType m_type
     
    -b2Jointm_prev
     
    -b2Jointm_next
     
    -b2JointEdge m_edgeA
     
    -b2JointEdge m_edgeB
     
    -b2Bodym_bodyA
     
    -b2Bodym_bodyB
     
    -int32 m_index
     
    -bool m_islandFlag
     
    -bool m_collideConnected
     
    -void * m_userData
     
    - - - - - - - - - -

    -Friends

    -class b2World
     
    -class b2Body
     
    -class b2Island
     
    -class b2GearJoint
     
    -

    Detailed Description

    -

    The base joint class. Joints are used to constraint two bodies together in various fashions. Some joints also feature limits and motors.

    -

    Member Function Documentation

    - -
    -
    - - - - - -
    - - - - - - - -
    bool b2Joint::GetCollideConnected () const
    -
    -inline
    -
    -

    Get collide connected. Note: modifying the collide connect flag won't work correctly because the flag is only checked when fixture AABBs begin to overlap.

    - -
    -
    -
    The documentation for this class was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_joint.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_joint.png deleted file mode 100644 index 395deef..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_joint.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_motor_joint-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_motor_joint-members.html deleted file mode 100644 index 6fd3729..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_motor_joint-members.html +++ /dev/null @@ -1,167 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2MotorJoint Member List
    -
    -
    - -

    This is the complete list of members for b2MotorJoint, including all inherited members.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    b2Joint (defined in b2MotorJoint)b2MotorJointfriend
    b2Joint(const b2JointDef *def) (defined in b2Joint)b2Jointprotected
    b2MotorJoint(const b2MotorJointDef *def) (defined in b2MotorJoint)b2MotorJointprotected
    Create(const b2JointDef *def, b2BlockAllocator *allocator) (defined in b2Joint)b2Jointprotectedstatic
    Destroy(b2Joint *joint, b2BlockAllocator *allocator) (defined in b2Joint)b2Jointprotectedstatic
    Dump()b2MotorJointvirtual
    GetAnchorA() const b2MotorJointvirtual
    GetAnchorB() const b2MotorJointvirtual
    GetAngularOffset() const (defined in b2MotorJoint)b2MotorJoint
    GetBodyA()b2Jointinline
    GetBodyB()b2Jointinline
    GetCollideConnected() const b2Jointinline
    GetCorrectionFactor() const b2MotorJoint
    GetLinearOffset() const (defined in b2MotorJoint)b2MotorJoint
    GetMaxForce() const b2MotorJoint
    GetMaxTorque() const b2MotorJoint
    GetNext()b2Jointinline
    GetNext() const (defined in b2Joint)b2Jointinline
    GetReactionForce(float32 inv_dt) const b2MotorJointvirtual
    GetReactionTorque(float32 inv_dt) const b2MotorJointvirtual
    GetType() const b2Jointinline
    GetUserData() const b2Jointinline
    InitVelocityConstraints(const b2SolverData &data) (defined in b2MotorJoint)b2MotorJointprotectedvirtual
    IsActive() const b2Joint
    m_angularError (defined in b2MotorJoint)b2MotorJointprotected
    m_angularImpulse (defined in b2MotorJoint)b2MotorJointprotected
    m_angularMass (defined in b2MotorJoint)b2MotorJointprotected
    m_angularOffset (defined in b2MotorJoint)b2MotorJointprotected
    m_bodyA (defined in b2Joint)b2Jointprotected
    m_bodyB (defined in b2Joint)b2Jointprotected
    m_collideConnected (defined in b2Joint)b2Jointprotected
    m_correctionFactor (defined in b2MotorJoint)b2MotorJointprotected
    m_edgeA (defined in b2Joint)b2Jointprotected
    m_edgeB (defined in b2Joint)b2Jointprotected
    m_index (defined in b2Joint)b2Jointprotected
    m_indexA (defined in b2MotorJoint)b2MotorJointprotected
    m_indexB (defined in b2MotorJoint)b2MotorJointprotected
    m_invIA (defined in b2MotorJoint)b2MotorJointprotected
    m_invIB (defined in b2MotorJoint)b2MotorJointprotected
    m_invMassA (defined in b2MotorJoint)b2MotorJointprotected
    m_invMassB (defined in b2MotorJoint)b2MotorJointprotected
    m_islandFlag (defined in b2Joint)b2Jointprotected
    m_linearError (defined in b2MotorJoint)b2MotorJointprotected
    m_linearImpulse (defined in b2MotorJoint)b2MotorJointprotected
    m_linearMass (defined in b2MotorJoint)b2MotorJointprotected
    m_linearOffset (defined in b2MotorJoint)b2MotorJointprotected
    m_localCenterA (defined in b2MotorJoint)b2MotorJointprotected
    m_localCenterB (defined in b2MotorJoint)b2MotorJointprotected
    m_maxForce (defined in b2MotorJoint)b2MotorJointprotected
    m_maxTorque (defined in b2MotorJoint)b2MotorJointprotected
    m_next (defined in b2Joint)b2Jointprotected
    m_prev (defined in b2Joint)b2Jointprotected
    m_rA (defined in b2MotorJoint)b2MotorJointprotected
    m_rB (defined in b2MotorJoint)b2MotorJointprotected
    m_type (defined in b2Joint)b2Jointprotected
    m_userData (defined in b2Joint)b2Jointprotected
    SetAngularOffset(float32 angularOffset)b2MotorJoint
    SetCorrectionFactor(float32 factor)b2MotorJoint
    SetLinearOffset(const b2Vec2 &linearOffset)b2MotorJoint
    SetMaxForce(float32 force)b2MotorJoint
    SetMaxTorque(float32 torque)b2MotorJoint
    SetUserData(void *data)b2Jointinline
    ShiftOrigin(const b2Vec2 &newOrigin)b2Jointinlinevirtual
    SolvePositionConstraints(const b2SolverData &data) (defined in b2MotorJoint)b2MotorJointprotectedvirtual
    SolveVelocityConstraints(const b2SolverData &data) (defined in b2MotorJoint)b2MotorJointprotectedvirtual
    ~b2Joint() (defined in b2Joint)b2Jointinlineprotectedvirtual
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_motor_joint.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_motor_joint.html deleted file mode 100644 index 88cd530..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_motor_joint.html +++ /dev/null @@ -1,356 +0,0 @@ - - - - - - -Box2D: b2MotorJoint Class Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    - -
    - -

    #include <b2MotorJoint.h>

    -
    -Inheritance diagram for b2MotorJoint:
    -
    -
    - - -b2Joint - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Member Functions

    -b2Vec2 GetAnchorA () const
     Get the anchor point on bodyA in world coordinates.
     
    -b2Vec2 GetAnchorB () const
     Get the anchor point on bodyB in world coordinates.
     
    -b2Vec2 GetReactionForce (float32 inv_dt) const
     Get the reaction force on bodyB at the joint anchor in Newtons.
     
    -float32 GetReactionTorque (float32 inv_dt) const
     Get the reaction torque on bodyB in N*m.
     
    -void SetLinearOffset (const b2Vec2 &linearOffset)
     Set/get the target linear offset, in frame A, in meters.
     
    -const b2Vec2GetLinearOffset () const
     
    -void SetAngularOffset (float32 angularOffset)
     Set/get the target angular offset, in radians.
     
    -float32 GetAngularOffset () const
     
    -void SetMaxForce (float32 force)
     Set the maximum friction force in N.
     
    -float32 GetMaxForce () const
     Get the maximum friction force in N.
     
    -void SetMaxTorque (float32 torque)
     Set the maximum friction torque in N*m.
     
    -float32 GetMaxTorque () const
     Get the maximum friction torque in N*m.
     
    -void SetCorrectionFactor (float32 factor)
     Set the position correction factor in the range [0,1].
     
    -float32 GetCorrectionFactor () const
     Get the position correction factor in the range [0,1].
     
    -void Dump ()
     Dump to b2Log.
     
    - Public Member Functions inherited from b2Joint
    -b2JointType GetType () const
     Get the type of the concrete joint.
     
    -b2BodyGetBodyA ()
     Get the first body attached to this joint.
     
    -b2BodyGetBodyB ()
     Get the second body attached to this joint.
     
    -b2JointGetNext ()
     Get the next joint the world joint list.
     
    -const b2JointGetNext () const
     
    -void * GetUserData () const
     Get the user data pointer.
     
    -void SetUserData (void *data)
     Set the user data pointer.
     
    -bool IsActive () const
     Short-cut function to determine if either body is inactive.
     
    bool GetCollideConnected () const
     
    -virtual void ShiftOrigin (const b2Vec2 &newOrigin)
     Shift the origin for any points stored in world coordinates.
     
    - - - - - - - - - - - - -

    -Protected Member Functions

    b2MotorJoint (const b2MotorJointDef *def)
     
    -void InitVelocityConstraints (const b2SolverData &data)
     
    -void SolveVelocityConstraints (const b2SolverData &data)
     
    -bool SolvePositionConstraints (const b2SolverData &data)
     
    - Protected Member Functions inherited from b2Joint
    b2Joint (const b2JointDef *def)
     
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Protected Attributes

    -b2Vec2 m_linearOffset
     
    -float32 m_angularOffset
     
    -b2Vec2 m_linearImpulse
     
    -float32 m_angularImpulse
     
    -float32 m_maxForce
     
    -float32 m_maxTorque
     
    -float32 m_correctionFactor
     
    -int32 m_indexA
     
    -int32 m_indexB
     
    -b2Vec2 m_rA
     
    -b2Vec2 m_rB
     
    -b2Vec2 m_localCenterA
     
    -b2Vec2 m_localCenterB
     
    -b2Vec2 m_linearError
     
    -float32 m_angularError
     
    -float32 m_invMassA
     
    -float32 m_invMassB
     
    -float32 m_invIA
     
    -float32 m_invIB
     
    -b2Mat22 m_linearMass
     
    -float32 m_angularMass
     
    - Protected Attributes inherited from b2Joint
    -b2JointType m_type
     
    -b2Jointm_prev
     
    -b2Jointm_next
     
    -b2JointEdge m_edgeA
     
    -b2JointEdge m_edgeB
     
    -b2Bodym_bodyA
     
    -b2Bodym_bodyB
     
    -int32 m_index
     
    -bool m_islandFlag
     
    -bool m_collideConnected
     
    -void * m_userData
     
    - - - -

    -Friends

    -class b2Joint
     
    - - - - - - -

    -Additional Inherited Members

    - Static Protected Member Functions inherited from b2Joint
    -static b2JointCreate (const b2JointDef *def, b2BlockAllocator *allocator)
     
    -static void Destroy (b2Joint *joint, b2BlockAllocator *allocator)
     
    -

    Detailed Description

    -

    A motor joint is used to control the relative motion between two bodies. A typical usage is to control the movement of a dynamic body with respect to the ground.

    -

    The documentation for this class was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_motor_joint.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_motor_joint.png deleted file mode 100644 index c820c9c..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_motor_joint.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_mouse_joint-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_mouse_joint-members.html deleted file mode 100644 index e5ea456..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_mouse_joint-members.html +++ /dev/null @@ -1,160 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2MouseJoint Member List
    -
    -
    - -

    This is the complete list of members for b2MouseJoint, including all inherited members.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    b2Joint (defined in b2MouseJoint)b2MouseJointfriend
    b2Joint(const b2JointDef *def) (defined in b2Joint)b2Jointprotected
    b2MouseJoint(const b2MouseJointDef *def) (defined in b2MouseJoint)b2MouseJointprotected
    Create(const b2JointDef *def, b2BlockAllocator *allocator) (defined in b2Joint)b2Jointprotectedstatic
    Destroy(b2Joint *joint, b2BlockAllocator *allocator) (defined in b2Joint)b2Jointprotectedstatic
    Dump()b2MouseJointinlinevirtual
    GetAnchorA() const b2MouseJointvirtual
    GetAnchorB() const b2MouseJointvirtual
    GetBodyA()b2Jointinline
    GetBodyB()b2Jointinline
    GetCollideConnected() const b2Jointinline
    GetDampingRatio() const (defined in b2MouseJoint)b2MouseJoint
    GetFrequency() const (defined in b2MouseJoint)b2MouseJoint
    GetMaxForce() const (defined in b2MouseJoint)b2MouseJoint
    GetNext()b2Jointinline
    GetNext() const (defined in b2Joint)b2Jointinline
    GetReactionForce(float32 inv_dt) const b2MouseJointvirtual
    GetReactionTorque(float32 inv_dt) const b2MouseJointvirtual
    GetTarget() const (defined in b2MouseJoint)b2MouseJoint
    GetType() const b2Jointinline
    GetUserData() const b2Jointinline
    InitVelocityConstraints(const b2SolverData &data) (defined in b2MouseJoint)b2MouseJointprotectedvirtual
    IsActive() const b2Joint
    m_beta (defined in b2MouseJoint)b2MouseJointprotected
    m_bodyA (defined in b2Joint)b2Jointprotected
    m_bodyB (defined in b2Joint)b2Jointprotected
    m_C (defined in b2MouseJoint)b2MouseJointprotected
    m_collideConnected (defined in b2Joint)b2Jointprotected
    m_dampingRatio (defined in b2MouseJoint)b2MouseJointprotected
    m_edgeA (defined in b2Joint)b2Jointprotected
    m_edgeB (defined in b2Joint)b2Jointprotected
    m_frequencyHz (defined in b2MouseJoint)b2MouseJointprotected
    m_gamma (defined in b2MouseJoint)b2MouseJointprotected
    m_impulse (defined in b2MouseJoint)b2MouseJointprotected
    m_index (defined in b2Joint)b2Jointprotected
    m_indexA (defined in b2MouseJoint)b2MouseJointprotected
    m_indexB (defined in b2MouseJoint)b2MouseJointprotected
    m_invIB (defined in b2MouseJoint)b2MouseJointprotected
    m_invMassB (defined in b2MouseJoint)b2MouseJointprotected
    m_islandFlag (defined in b2Joint)b2Jointprotected
    m_localAnchorB (defined in b2MouseJoint)b2MouseJointprotected
    m_localCenterB (defined in b2MouseJoint)b2MouseJointprotected
    m_mass (defined in b2MouseJoint)b2MouseJointprotected
    m_maxForce (defined in b2MouseJoint)b2MouseJointprotected
    m_next (defined in b2Joint)b2Jointprotected
    m_prev (defined in b2Joint)b2Jointprotected
    m_rB (defined in b2MouseJoint)b2MouseJointprotected
    m_targetA (defined in b2MouseJoint)b2MouseJointprotected
    m_type (defined in b2Joint)b2Jointprotected
    m_userData (defined in b2Joint)b2Jointprotected
    SetDampingRatio(float32 ratio)b2MouseJoint
    SetFrequency(float32 hz)b2MouseJoint
    SetMaxForce(float32 force)b2MouseJoint
    SetTarget(const b2Vec2 &target)b2MouseJoint
    SetUserData(void *data)b2Jointinline
    ShiftOrigin(const b2Vec2 &newOrigin)b2MouseJointvirtual
    SolvePositionConstraints(const b2SolverData &data) (defined in b2MouseJoint)b2MouseJointprotectedvirtual
    SolveVelocityConstraints(const b2SolverData &data) (defined in b2MouseJoint)b2MouseJointprotectedvirtual
    ~b2Joint() (defined in b2Joint)b2Jointinlineprotectedvirtual
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_mouse_joint.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_mouse_joint.html deleted file mode 100644 index ffad081..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_mouse_joint.html +++ /dev/null @@ -1,331 +0,0 @@ - - - - - - -Box2D: b2MouseJoint Class Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    - -
    - -

    #include <b2MouseJoint.h>

    -
    -Inheritance diagram for b2MouseJoint:
    -
    -
    - - -b2Joint - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Member Functions

    -b2Vec2 GetAnchorA () const
     Implements b2Joint.
     
    -b2Vec2 GetAnchorB () const
     Implements b2Joint.
     
    -b2Vec2 GetReactionForce (float32 inv_dt) const
     Implements b2Joint.
     
    -float32 GetReactionTorque (float32 inv_dt) const
     Implements b2Joint.
     
    -void SetTarget (const b2Vec2 &target)
     Use this to update the target point.
     
    -const b2Vec2GetTarget () const
     
    -void SetMaxForce (float32 force)
     Set/get the maximum force in Newtons.
     
    -float32 GetMaxForce () const
     
    -void SetFrequency (float32 hz)
     Set/get the frequency in Hertz.
     
    -float32 GetFrequency () const
     
    -void SetDampingRatio (float32 ratio)
     Set/get the damping ratio (dimensionless).
     
    -float32 GetDampingRatio () const
     
    -void Dump ()
     The mouse joint does not support dumping.
     
    -void ShiftOrigin (const b2Vec2 &newOrigin)
     Implement b2Joint::ShiftOrigin.
     
    - Public Member Functions inherited from b2Joint
    -b2JointType GetType () const
     Get the type of the concrete joint.
     
    -b2BodyGetBodyA ()
     Get the first body attached to this joint.
     
    -b2BodyGetBodyB ()
     Get the second body attached to this joint.
     
    -b2JointGetNext ()
     Get the next joint the world joint list.
     
    -const b2JointGetNext () const
     
    -void * GetUserData () const
     Get the user data pointer.
     
    -void SetUserData (void *data)
     Set the user data pointer.
     
    -bool IsActive () const
     Short-cut function to determine if either body is inactive.
     
    bool GetCollideConnected () const
     
    - - - - - - - - - - - - -

    -Protected Member Functions

    b2MouseJoint (const b2MouseJointDef *def)
     
    -void InitVelocityConstraints (const b2SolverData &data)
     
    -void SolveVelocityConstraints (const b2SolverData &data)
     
    -bool SolvePositionConstraints (const b2SolverData &data)
     
    - Protected Member Functions inherited from b2Joint
    b2Joint (const b2JointDef *def)
     
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Protected Attributes

    -b2Vec2 m_localAnchorB
     
    -b2Vec2 m_targetA
     
    -float32 m_frequencyHz
     
    -float32 m_dampingRatio
     
    -float32 m_beta
     
    -b2Vec2 m_impulse
     
    -float32 m_maxForce
     
    -float32 m_gamma
     
    -int32 m_indexA
     
    -int32 m_indexB
     
    -b2Vec2 m_rB
     
    -b2Vec2 m_localCenterB
     
    -float32 m_invMassB
     
    -float32 m_invIB
     
    -b2Mat22 m_mass
     
    -b2Vec2 m_C
     
    - Protected Attributes inherited from b2Joint
    -b2JointType m_type
     
    -b2Jointm_prev
     
    -b2Jointm_next
     
    -b2JointEdge m_edgeA
     
    -b2JointEdge m_edgeB
     
    -b2Bodym_bodyA
     
    -b2Bodym_bodyB
     
    -int32 m_index
     
    -bool m_islandFlag
     
    -bool m_collideConnected
     
    -void * m_userData
     
    - - - -

    -Friends

    -class b2Joint
     
    - - - - - - -

    -Additional Inherited Members

    - Static Protected Member Functions inherited from b2Joint
    -static b2JointCreate (const b2JointDef *def, b2BlockAllocator *allocator)
     
    -static void Destroy (b2Joint *joint, b2BlockAllocator *allocator)
     
    -

    Detailed Description

    -

    A mouse joint is used to make a point on a body track a specified world point. This a soft constraint with a maximum force. This allows the constraint to stretch and without applying huge forces. NOTE: this joint is not documented in the manual because it was developed to be used in the testbed. If you want to learn how to use the mouse joint, look at the testbed.

    -

    The documentation for this class was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_mouse_joint.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_mouse_joint.png deleted file mode 100644 index a55e5d6..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_mouse_joint.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_polygon_and_circle_contact-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_polygon_and_circle_contact-members.html deleted file mode 100644 index a4c311c..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_polygon_and_circle_contact-members.html +++ /dev/null @@ -1,159 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2PolygonAndCircleContact Member List
    -
    -
    - -

    This is the complete list of members for b2PolygonAndCircleContact, including all inherited members.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    AddType(b2ContactCreateFcn *createFcn, b2ContactDestroyFcn *destroyFcn, b2Shape::Type typeA, b2Shape::Type typeB) (defined in b2Contact)b2Contactprotectedstatic
    b2Contact() (defined in b2Contact)b2Contactinlineprotected
    b2Contact(b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB) (defined in b2Contact)b2Contactprotected
    b2PolygonAndCircleContact(b2Fixture *fixtureA, b2Fixture *fixtureB) (defined in b2PolygonAndCircleContact)b2PolygonAndCircleContact
    Create(b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB, b2BlockAllocator *allocator) (defined in b2PolygonAndCircleContact)b2PolygonAndCircleContactstatic
    Destroy(b2Contact *contact, b2BlockAllocator *allocator) (defined in b2PolygonAndCircleContact)b2PolygonAndCircleContactstatic
    Destroy(b2Contact *contact, b2Shape::Type typeA, b2Shape::Type typeB, b2BlockAllocator *allocator) (defined in b2Contact)b2Contactprotectedstatic
    e_bulletHitFlag enum value (defined in b2Contact)b2Contactprotected
    e_enabledFlag enum value (defined in b2Contact)b2Contactprotected
    e_filterFlag enum value (defined in b2Contact)b2Contactprotected
    e_islandFlag enum value (defined in b2Contact)b2Contactprotected
    e_toiFlag enum value (defined in b2Contact)b2Contactprotected
    e_touchingFlag enum value (defined in b2Contact)b2Contactprotected
    Evaluate(b2Manifold *manifold, const b2Transform &xfA, const b2Transform &xfB)b2PolygonAndCircleContactvirtual
    FlagForFiltering()b2Contactinlineprotected
    GetChildIndexA() const b2Contactinline
    GetChildIndexB() const b2Contactinline
    GetFixtureA()b2Contactinline
    GetFixtureA() const (defined in b2Contact)b2Contactinline
    GetFixtureB()b2Contactinline
    GetFixtureB() const (defined in b2Contact)b2Contactinline
    GetFriction() const b2Contactinline
    GetManifold()b2Contactinline
    GetManifold() const (defined in b2Contact)b2Contactinline
    GetNext()b2Contactinline
    GetNext() const (defined in b2Contact)b2Contactinline
    GetRestitution() const b2Contactinline
    GetTangentSpeed() const b2Contactinline
    GetWorldManifold(b2WorldManifold *worldManifold) const b2Contactinline
    InitializeRegisters() (defined in b2Contact)b2Contactprotectedstatic
    IsEnabled() const b2Contactinline
    IsTouching() const b2Contactinline
    m_fixtureA (defined in b2Contact)b2Contactprotected
    m_fixtureB (defined in b2Contact)b2Contactprotected
    m_flags (defined in b2Contact)b2Contactprotected
    m_friction (defined in b2Contact)b2Contactprotected
    m_indexA (defined in b2Contact)b2Contactprotected
    m_indexB (defined in b2Contact)b2Contactprotected
    m_manifold (defined in b2Contact)b2Contactprotected
    m_next (defined in b2Contact)b2Contactprotected
    m_nodeA (defined in b2Contact)b2Contactprotected
    m_nodeB (defined in b2Contact)b2Contactprotected
    m_prev (defined in b2Contact)b2Contactprotected
    m_restitution (defined in b2Contact)b2Contactprotected
    m_tangentSpeed (defined in b2Contact)b2Contactprotected
    m_toi (defined in b2Contact)b2Contactprotected
    m_toiCount (defined in b2Contact)b2Contactprotected
    ResetFriction()b2Contactinline
    ResetRestitution()b2Contactinline
    s_initialized (defined in b2Contact)b2Contactprotectedstatic
    s_registers (defined in b2Contact)b2Contactprotectedstatic
    SetEnabled(bool flag)b2Contactinline
    SetFriction(float32 friction)b2Contactinline
    SetRestitution(float32 restitution)b2Contactinline
    SetTangentSpeed(float32 speed)b2Contactinline
    Update(b2ContactListener *listener) (defined in b2Contact)b2Contactprotected
    ~b2Contact() (defined in b2Contact)b2Contactinlineprotectedvirtual
    ~b2PolygonAndCircleContact() (defined in b2PolygonAndCircleContact)b2PolygonAndCircleContactinline
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_polygon_and_circle_contact.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_polygon_and_circle_contact.html deleted file mode 100644 index 68ce27d..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_polygon_and_circle_contact.html +++ /dev/null @@ -1,307 +0,0 @@ - - - - - - -Box2D: b2PolygonAndCircleContact Class Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2PolygonAndCircleContact Class Reference
    -
    -
    -
    -Inheritance diagram for b2PolygonAndCircleContact:
    -
    -
    - - -b2Contact - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Member Functions

    b2PolygonAndCircleContact (b2Fixture *fixtureA, b2Fixture *fixtureB)
     
    -void Evaluate (b2Manifold *manifold, const b2Transform &xfA, const b2Transform &xfB)
     Evaluate this contact with your own manifold and transforms.
     
    - Public Member Functions inherited from b2Contact
    b2ManifoldGetManifold ()
     
    -const b2ManifoldGetManifold () const
     
    -void GetWorldManifold (b2WorldManifold *worldManifold) const
     Get the world manifold.
     
    -bool IsTouching () const
     Is this contact touching?
     
    void SetEnabled (bool flag)
     
    -bool IsEnabled () const
     Has this contact been disabled?
     
    -b2ContactGetNext ()
     Get the next contact in the world's contact list.
     
    -const b2ContactGetNext () const
     
    -b2FixtureGetFixtureA ()
     Get fixture A in this contact.
     
    -const b2FixtureGetFixtureA () const
     
    -int32 GetChildIndexA () const
     Get the child primitive index for fixture A.
     
    -b2FixtureGetFixtureB ()
     Get fixture B in this contact.
     
    -const b2FixtureGetFixtureB () const
     
    -int32 GetChildIndexB () const
     Get the child primitive index for fixture B.
     
    void SetFriction (float32 friction)
     
    -float32 GetFriction () const
     Get the friction.
     
    -void ResetFriction ()
     Reset the friction mixture to the default value.
     
    void SetRestitution (float32 restitution)
     
    -float32 GetRestitution () const
     Get the restitution.
     
    -void ResetRestitution ()
     Reset the restitution to the default value.
     
    -void SetTangentSpeed (float32 speed)
     Set the desired tangent speed for a conveyor belt behavior. In meters per second.
     
    -float32 GetTangentSpeed () const
     Get the desired tangent speed. In meters per second.
     
    - - - - - -

    -Static Public Member Functions

    -static b2ContactCreate (b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB, b2BlockAllocator *allocator)
     
    -static void Destroy (b2Contact *contact, b2BlockAllocator *allocator)
     
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Additional Inherited Members

    - Protected Types inherited from b2Contact
    enum  {
    -  e_islandFlag = 0x0001, -e_touchingFlag = 0x0002, -e_enabledFlag = 0x0004, -e_filterFlag = 0x0008, -
    -  e_bulletHitFlag = 0x0010, -e_toiFlag = 0x0020 -
    - }
     
    - Protected Member Functions inherited from b2Contact
    -void FlagForFiltering ()
     Flag this contact for filtering. Filtering will occur the next time step.
     
    b2Contact (b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB)
     
    -void Update (b2ContactListener *listener)
     
    - Static Protected Member Functions inherited from b2Contact
    -static void AddType (b2ContactCreateFcn *createFcn, b2ContactDestroyFcn *destroyFcn, b2Shape::Type typeA, b2Shape::Type typeB)
     
    -static void InitializeRegisters ()
     
    -static b2ContactCreate (b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB, b2BlockAllocator *allocator)
     
    -static void Destroy (b2Contact *contact, b2Shape::Type typeA, b2Shape::Type typeB, b2BlockAllocator *allocator)
     
    -static void Destroy (b2Contact *contact, b2BlockAllocator *allocator)
     
    - Protected Attributes inherited from b2Contact
    -uint32 m_flags
     
    -b2Contactm_prev
     
    -b2Contactm_next
     
    -b2ContactEdge m_nodeA
     
    -b2ContactEdge m_nodeB
     
    -b2Fixturem_fixtureA
     
    -b2Fixturem_fixtureB
     
    -int32 m_indexA
     
    -int32 m_indexB
     
    -b2Manifold m_manifold
     
    -int32 m_toiCount
     
    -float32 m_toi
     
    -float32 m_friction
     
    -float32 m_restitution
     
    -float32 m_tangentSpeed
     
    - Static Protected Attributes inherited from b2Contact
    -static b2ContactRegister s_registers [b2Shape::e_typeCount][b2Shape::e_typeCount]
     
    -static bool s_initialized = false
     
    -
    The documentation for this class was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_polygon_and_circle_contact.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_polygon_and_circle_contact.png deleted file mode 100644 index 12779e7..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_polygon_and_circle_contact.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_polygon_contact-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_polygon_contact-members.html deleted file mode 100644 index 18ee872..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_polygon_contact-members.html +++ /dev/null @@ -1,159 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2PolygonContact Member List
    -
    -
    - -

    This is the complete list of members for b2PolygonContact, including all inherited members.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    AddType(b2ContactCreateFcn *createFcn, b2ContactDestroyFcn *destroyFcn, b2Shape::Type typeA, b2Shape::Type typeB) (defined in b2Contact)b2Contactprotectedstatic
    b2Contact() (defined in b2Contact)b2Contactinlineprotected
    b2Contact(b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB) (defined in b2Contact)b2Contactprotected
    b2PolygonContact(b2Fixture *fixtureA, b2Fixture *fixtureB) (defined in b2PolygonContact)b2PolygonContact
    Create(b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB, b2BlockAllocator *allocator) (defined in b2PolygonContact)b2PolygonContactstatic
    Destroy(b2Contact *contact, b2BlockAllocator *allocator) (defined in b2PolygonContact)b2PolygonContactstatic
    Destroy(b2Contact *contact, b2Shape::Type typeA, b2Shape::Type typeB, b2BlockAllocator *allocator) (defined in b2Contact)b2Contactprotectedstatic
    e_bulletHitFlag enum value (defined in b2Contact)b2Contactprotected
    e_enabledFlag enum value (defined in b2Contact)b2Contactprotected
    e_filterFlag enum value (defined in b2Contact)b2Contactprotected
    e_islandFlag enum value (defined in b2Contact)b2Contactprotected
    e_toiFlag enum value (defined in b2Contact)b2Contactprotected
    e_touchingFlag enum value (defined in b2Contact)b2Contactprotected
    Evaluate(b2Manifold *manifold, const b2Transform &xfA, const b2Transform &xfB)b2PolygonContactvirtual
    FlagForFiltering()b2Contactinlineprotected
    GetChildIndexA() const b2Contactinline
    GetChildIndexB() const b2Contactinline
    GetFixtureA()b2Contactinline
    GetFixtureA() const (defined in b2Contact)b2Contactinline
    GetFixtureB()b2Contactinline
    GetFixtureB() const (defined in b2Contact)b2Contactinline
    GetFriction() const b2Contactinline
    GetManifold()b2Contactinline
    GetManifold() const (defined in b2Contact)b2Contactinline
    GetNext()b2Contactinline
    GetNext() const (defined in b2Contact)b2Contactinline
    GetRestitution() const b2Contactinline
    GetTangentSpeed() const b2Contactinline
    GetWorldManifold(b2WorldManifold *worldManifold) const b2Contactinline
    InitializeRegisters() (defined in b2Contact)b2Contactprotectedstatic
    IsEnabled() const b2Contactinline
    IsTouching() const b2Contactinline
    m_fixtureA (defined in b2Contact)b2Contactprotected
    m_fixtureB (defined in b2Contact)b2Contactprotected
    m_flags (defined in b2Contact)b2Contactprotected
    m_friction (defined in b2Contact)b2Contactprotected
    m_indexA (defined in b2Contact)b2Contactprotected
    m_indexB (defined in b2Contact)b2Contactprotected
    m_manifold (defined in b2Contact)b2Contactprotected
    m_next (defined in b2Contact)b2Contactprotected
    m_nodeA (defined in b2Contact)b2Contactprotected
    m_nodeB (defined in b2Contact)b2Contactprotected
    m_prev (defined in b2Contact)b2Contactprotected
    m_restitution (defined in b2Contact)b2Contactprotected
    m_tangentSpeed (defined in b2Contact)b2Contactprotected
    m_toi (defined in b2Contact)b2Contactprotected
    m_toiCount (defined in b2Contact)b2Contactprotected
    ResetFriction()b2Contactinline
    ResetRestitution()b2Contactinline
    s_initialized (defined in b2Contact)b2Contactprotectedstatic
    s_registers (defined in b2Contact)b2Contactprotectedstatic
    SetEnabled(bool flag)b2Contactinline
    SetFriction(float32 friction)b2Contactinline
    SetRestitution(float32 restitution)b2Contactinline
    SetTangentSpeed(float32 speed)b2Contactinline
    Update(b2ContactListener *listener) (defined in b2Contact)b2Contactprotected
    ~b2Contact() (defined in b2Contact)b2Contactinlineprotectedvirtual
    ~b2PolygonContact() (defined in b2PolygonContact)b2PolygonContactinline
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_polygon_contact.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_polygon_contact.html deleted file mode 100644 index 46f4277..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_polygon_contact.html +++ /dev/null @@ -1,307 +0,0 @@ - - - - - - -Box2D: b2PolygonContact Class Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2PolygonContact Class Reference
    -
    -
    -
    -Inheritance diagram for b2PolygonContact:
    -
    -
    - - -b2Contact - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Member Functions

    b2PolygonContact (b2Fixture *fixtureA, b2Fixture *fixtureB)
     
    -void Evaluate (b2Manifold *manifold, const b2Transform &xfA, const b2Transform &xfB)
     Evaluate this contact with your own manifold and transforms.
     
    - Public Member Functions inherited from b2Contact
    b2ManifoldGetManifold ()
     
    -const b2ManifoldGetManifold () const
     
    -void GetWorldManifold (b2WorldManifold *worldManifold) const
     Get the world manifold.
     
    -bool IsTouching () const
     Is this contact touching?
     
    void SetEnabled (bool flag)
     
    -bool IsEnabled () const
     Has this contact been disabled?
     
    -b2ContactGetNext ()
     Get the next contact in the world's contact list.
     
    -const b2ContactGetNext () const
     
    -b2FixtureGetFixtureA ()
     Get fixture A in this contact.
     
    -const b2FixtureGetFixtureA () const
     
    -int32 GetChildIndexA () const
     Get the child primitive index for fixture A.
     
    -b2FixtureGetFixtureB ()
     Get fixture B in this contact.
     
    -const b2FixtureGetFixtureB () const
     
    -int32 GetChildIndexB () const
     Get the child primitive index for fixture B.
     
    void SetFriction (float32 friction)
     
    -float32 GetFriction () const
     Get the friction.
     
    -void ResetFriction ()
     Reset the friction mixture to the default value.
     
    void SetRestitution (float32 restitution)
     
    -float32 GetRestitution () const
     Get the restitution.
     
    -void ResetRestitution ()
     Reset the restitution to the default value.
     
    -void SetTangentSpeed (float32 speed)
     Set the desired tangent speed for a conveyor belt behavior. In meters per second.
     
    -float32 GetTangentSpeed () const
     Get the desired tangent speed. In meters per second.
     
    - - - - - -

    -Static Public Member Functions

    -static b2ContactCreate (b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB, b2BlockAllocator *allocator)
     
    -static void Destroy (b2Contact *contact, b2BlockAllocator *allocator)
     
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Additional Inherited Members

    - Protected Types inherited from b2Contact
    enum  {
    -  e_islandFlag = 0x0001, -e_touchingFlag = 0x0002, -e_enabledFlag = 0x0004, -e_filterFlag = 0x0008, -
    -  e_bulletHitFlag = 0x0010, -e_toiFlag = 0x0020 -
    - }
     
    - Protected Member Functions inherited from b2Contact
    -void FlagForFiltering ()
     Flag this contact for filtering. Filtering will occur the next time step.
     
    b2Contact (b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB)
     
    -void Update (b2ContactListener *listener)
     
    - Static Protected Member Functions inherited from b2Contact
    -static void AddType (b2ContactCreateFcn *createFcn, b2ContactDestroyFcn *destroyFcn, b2Shape::Type typeA, b2Shape::Type typeB)
     
    -static void InitializeRegisters ()
     
    -static b2ContactCreate (b2Fixture *fixtureA, int32 indexA, b2Fixture *fixtureB, int32 indexB, b2BlockAllocator *allocator)
     
    -static void Destroy (b2Contact *contact, b2Shape::Type typeA, b2Shape::Type typeB, b2BlockAllocator *allocator)
     
    -static void Destroy (b2Contact *contact, b2BlockAllocator *allocator)
     
    - Protected Attributes inherited from b2Contact
    -uint32 m_flags
     
    -b2Contactm_prev
     
    -b2Contactm_next
     
    -b2ContactEdge m_nodeA
     
    -b2ContactEdge m_nodeB
     
    -b2Fixturem_fixtureA
     
    -b2Fixturem_fixtureB
     
    -int32 m_indexA
     
    -int32 m_indexB
     
    -b2Manifold m_manifold
     
    -int32 m_toiCount
     
    -float32 m_toi
     
    -float32 m_friction
     
    -float32 m_restitution
     
    -float32 m_tangentSpeed
     
    - Static Protected Attributes inherited from b2Contact
    -static b2ContactRegister s_registers [b2Shape::e_typeCount][b2Shape::e_typeCount]
     
    -static bool s_initialized = false
     
    -
    The documentation for this class was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_polygon_contact.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_polygon_contact.png deleted file mode 100644 index 773b726..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_polygon_contact.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_polygon_shape-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_polygon_shape-members.html deleted file mode 100644 index 68f7328..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_polygon_shape-members.html +++ /dev/null @@ -1,128 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2PolygonShape Member List
    -
    -
    - -

    This is the complete list of members for b2PolygonShape, including all inherited members.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    b2PolygonShape() (defined in b2PolygonShape)b2PolygonShapeinline
    Clone(b2BlockAllocator *allocator) const b2PolygonShapevirtual
    ComputeAABB(b2AABB *aabb, const b2Transform &transform, int32 childIndex) const b2PolygonShapevirtual
    ComputeMass(b2MassData *massData, float32 density) const b2PolygonShapevirtual
    e_chain enum value (defined in b2Shape)b2Shape
    e_circle enum value (defined in b2Shape)b2Shape
    e_edge enum value (defined in b2Shape)b2Shape
    e_polygon enum value (defined in b2Shape)b2Shape
    e_typeCount enum value (defined in b2Shape)b2Shape
    GetChildCount() const b2PolygonShapevirtual
    GetType() const b2Shapeinline
    GetVertex(int32 index) const b2PolygonShapeinline
    GetVertexCount() const b2PolygonShapeinline
    m_centroid (defined in b2PolygonShape)b2PolygonShape
    m_count (defined in b2PolygonShape)b2PolygonShape
    m_normals (defined in b2PolygonShape)b2PolygonShape
    m_radius (defined in b2Shape)b2Shape
    m_type (defined in b2Shape)b2Shape
    m_vertices (defined in b2PolygonShape)b2PolygonShape
    RayCast(b2RayCastOutput *output, const b2RayCastInput &input, const b2Transform &transform, int32 childIndex) const b2PolygonShapevirtual
    Set(const b2Vec2 *points, int32 count)b2PolygonShape
    SetAsBox(float32 hx, float32 hy)b2PolygonShape
    SetAsBox(float32 hx, float32 hy, const b2Vec2 &center, float32 angle)b2PolygonShape
    TestPoint(const b2Transform &transform, const b2Vec2 &p) const b2PolygonShapevirtual
    Type enum name (defined in b2Shape)b2Shape
    Validate() const b2PolygonShape
    ~b2Shape() (defined in b2Shape)b2Shapeinlinevirtual
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_polygon_shape.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_polygon_shape.html deleted file mode 100644 index fb66ebd..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_polygon_shape.html +++ /dev/null @@ -1,467 +0,0 @@ - - - - - - -Box2D: b2PolygonShape Class Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2PolygonShape Class Reference
    -
    -
    - -

    #include <b2PolygonShape.h>

    -
    -Inheritance diagram for b2PolygonShape:
    -
    -
    - - -b2Shape - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Member Functions

    -b2ShapeClone (b2BlockAllocator *allocator) const
     Implement b2Shape.
     
    int32 GetChildCount () const
     
    void Set (const b2Vec2 *points, int32 count)
     
    void SetAsBox (float32 hx, float32 hy)
     
    void SetAsBox (float32 hx, float32 hy, const b2Vec2 &center, float32 angle)
     
    bool TestPoint (const b2Transform &transform, const b2Vec2 &p) const
     
    -bool RayCast (b2RayCastOutput *output, const b2RayCastInput &input, const b2Transform &transform, int32 childIndex) const
     Implement b2Shape.
     
    void ComputeAABB (b2AABB *aabb, const b2Transform &transform, int32 childIndex) const
     
    void ComputeMass (b2MassData *massData, float32 density) const
     
    -int32 GetVertexCount () const
     Get the vertex count.
     
    -const b2Vec2GetVertex (int32 index) const
     Get a vertex by index.
     
    bool Validate () const
     
    - Public Member Functions inherited from b2Shape
    Type GetType () const
     
    - - - - - - - - - - - - - - -

    -Public Attributes

    -b2Vec2 m_centroid
     
    -b2Vec2 m_vertices [b2_maxPolygonVertices]
     
    -b2Vec2 m_normals [b2_maxPolygonVertices]
     
    -int32 m_count
     
    - Public Attributes inherited from b2Shape
    -Type m_type
     
    -float32 m_radius
     
    - - - - -

    -Additional Inherited Members

    - Public Types inherited from b2Shape
    enum  Type {
    -  e_circle = 0, -e_edge = 1, -e_polygon = 2, -e_chain = 3, -
    -  e_typeCount = 4 -
    - }
     
    -

    Detailed Description

    -

    A convex polygon. It is assumed that the interior of the polygon is to the left of each edge. Polygons have a maximum number of vertices equal to b2_maxPolygonVertices. In most cases you should not need many vertices for a convex polygon.

    -

    Member Function Documentation

    - -
    -
    - - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    void b2PolygonShape::ComputeAABB (b2AABBaabb,
    const b2Transformtransform,
    int32 childIndex 
    ) const
    -
    -virtual
    -
    -
    See Also
    b2Shape::ComputeAABB
    - -

    Implements b2Shape.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - - - - - - - - - - - -
    void b2PolygonShape::ComputeMass (b2MassDatamassData,
    float32 density 
    ) const
    -
    -virtual
    -
    -
    See Also
    b2Shape::ComputeMass
    - -

    Implements b2Shape.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    int32 b2PolygonShape::GetChildCount () const
    -
    -virtual
    -
    -
    See Also
    b2Shape::GetChildCount
    - -

    Implements b2Shape.

    - -
    -
    - -
    -
    - - - - - - - - - - - - - - - - - - -
    void b2PolygonShape::Set (const b2Vec2points,
    int32 count 
    )
    -
    -

    Create a convex hull from the given array of local points. The count must be in the range [3, b2_maxPolygonVertices].

    -
    Warning
    the points may be re-ordered, even if they form a convex polygon
    -
    -collinear points are handled but not removed. Collinear points may lead to poor stacking behavior.
    - -
    -
    - -
    -
    - - - - - - - - - - - - - - - - - - -
    void b2PolygonShape::SetAsBox (float32 hx,
    float32 hy 
    )
    -
    -

    Build vertices to represent an axis-aligned box centered on the local origin.

    -
    Parameters
    - - - -
    hxthe half-width.
    hythe half-height.
    -
    -
    - -
    -
    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    void b2PolygonShape::SetAsBox (float32 hx,
    float32 hy,
    const b2Vec2center,
    float32 angle 
    )
    -
    -

    Build vertices to represent an oriented box.

    -
    Parameters
    - - - - - -
    hxthe half-width.
    hythe half-height.
    centerthe center of the box in local coordinates.
    anglethe rotation of the box in local coordinates.
    -
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - - - - - - - - - - - -
    bool b2PolygonShape::TestPoint (const b2Transformtransform,
    const b2Vec2p 
    ) const
    -
    -virtual
    -
    -
    See Also
    b2Shape::TestPoint
    - -

    Implements b2Shape.

    - -
    -
    - -
    -
    - - - - - - - -
    bool b2PolygonShape::Validate () const
    -
    -

    Validate convexity. This is a very time consuming operation.

    -
    Returns
    true if valid
    - -
    -
    -
    The documentation for this class was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_polygon_shape.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_polygon_shape.png deleted file mode 100644 index ac32d23..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_polygon_shape.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_prismatic_joint-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_prismatic_joint-members.html deleted file mode 100644 index adf2da3..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_prismatic_joint-members.html +++ /dev/null @@ -1,185 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2PrismaticJoint Member List
    -
    -
    - -

    This is the complete list of members for b2PrismaticJoint, including all inherited members.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    b2GearJoint (defined in b2PrismaticJoint)b2PrismaticJointfriend
    b2Joint (defined in b2PrismaticJoint)b2PrismaticJointfriend
    b2Joint(const b2JointDef *def) (defined in b2Joint)b2Jointprotected
    b2PrismaticJoint(const b2PrismaticJointDef *def) (defined in b2PrismaticJoint)b2PrismaticJointprotected
    Create(const b2JointDef *def, b2BlockAllocator *allocator) (defined in b2Joint)b2Jointprotectedstatic
    Destroy(b2Joint *joint, b2BlockAllocator *allocator) (defined in b2Joint)b2Jointprotectedstatic
    Dump()b2PrismaticJointvirtual
    EnableLimit(bool flag)b2PrismaticJoint
    EnableMotor(bool flag)b2PrismaticJoint
    GetAnchorA() const b2PrismaticJointvirtual
    GetAnchorB() const b2PrismaticJointvirtual
    GetBodyA()b2Jointinline
    GetBodyB()b2Jointinline
    GetCollideConnected() const b2Jointinline
    GetJointSpeed() const b2PrismaticJoint
    GetJointTranslation() const b2PrismaticJoint
    GetLocalAnchorA() const b2PrismaticJointinline
    GetLocalAnchorB() const b2PrismaticJointinline
    GetLocalAxisA() const b2PrismaticJointinline
    GetLowerLimit() const b2PrismaticJoint
    GetMaxMotorForce() const (defined in b2PrismaticJoint)b2PrismaticJointinline
    GetMotorForce(float32 inv_dt) const b2PrismaticJoint
    GetMotorSpeed() const b2PrismaticJointinline
    GetNext()b2Jointinline
    GetNext() const (defined in b2Joint)b2Jointinline
    GetReactionForce(float32 inv_dt) const b2PrismaticJointvirtual
    GetReactionTorque(float32 inv_dt) const b2PrismaticJointvirtual
    GetReferenceAngle() const b2PrismaticJointinline
    GetType() const b2Jointinline
    GetUpperLimit() const b2PrismaticJoint
    GetUserData() const b2Jointinline
    InitVelocityConstraints(const b2SolverData &data) (defined in b2PrismaticJoint)b2PrismaticJointprotectedvirtual
    IsActive() const b2Joint
    IsLimitEnabled() const b2PrismaticJoint
    IsMotorEnabled() const b2PrismaticJoint
    m_a1 (defined in b2PrismaticJoint)b2PrismaticJointprotected
    m_a2 (defined in b2PrismaticJoint)b2PrismaticJointprotected
    m_axis (defined in b2PrismaticJoint)b2PrismaticJointprotected
    m_bodyA (defined in b2Joint)b2Jointprotected
    m_bodyB (defined in b2Joint)b2Jointprotected
    m_collideConnected (defined in b2Joint)b2Jointprotected
    m_edgeA (defined in b2Joint)b2Jointprotected
    m_edgeB (defined in b2Joint)b2Jointprotected
    m_enableLimit (defined in b2PrismaticJoint)b2PrismaticJointprotected
    m_enableMotor (defined in b2PrismaticJoint)b2PrismaticJointprotected
    m_impulse (defined in b2PrismaticJoint)b2PrismaticJointprotected
    m_index (defined in b2Joint)b2Jointprotected
    m_indexA (defined in b2PrismaticJoint)b2PrismaticJointprotected
    m_indexB (defined in b2PrismaticJoint)b2PrismaticJointprotected
    m_invIA (defined in b2PrismaticJoint)b2PrismaticJointprotected
    m_invIB (defined in b2PrismaticJoint)b2PrismaticJointprotected
    m_invMassA (defined in b2PrismaticJoint)b2PrismaticJointprotected
    m_invMassB (defined in b2PrismaticJoint)b2PrismaticJointprotected
    m_islandFlag (defined in b2Joint)b2Jointprotected
    m_K (defined in b2PrismaticJoint)b2PrismaticJointprotected
    m_limitState (defined in b2PrismaticJoint)b2PrismaticJointprotected
    m_localAnchorA (defined in b2PrismaticJoint)b2PrismaticJointprotected
    m_localAnchorB (defined in b2PrismaticJoint)b2PrismaticJointprotected
    m_localCenterA (defined in b2PrismaticJoint)b2PrismaticJointprotected
    m_localCenterB (defined in b2PrismaticJoint)b2PrismaticJointprotected
    m_localXAxisA (defined in b2PrismaticJoint)b2PrismaticJointprotected
    m_localYAxisA (defined in b2PrismaticJoint)b2PrismaticJointprotected
    m_lowerTranslation (defined in b2PrismaticJoint)b2PrismaticJointprotected
    m_maxMotorForce (defined in b2PrismaticJoint)b2PrismaticJointprotected
    m_motorImpulse (defined in b2PrismaticJoint)b2PrismaticJointprotected
    m_motorMass (defined in b2PrismaticJoint)b2PrismaticJointprotected
    m_motorSpeed (defined in b2PrismaticJoint)b2PrismaticJointprotected
    m_next (defined in b2Joint)b2Jointprotected
    m_perp (defined in b2PrismaticJoint)b2PrismaticJointprotected
    m_prev (defined in b2Joint)b2Jointprotected
    m_referenceAngle (defined in b2PrismaticJoint)b2PrismaticJointprotected
    m_s1 (defined in b2PrismaticJoint)b2PrismaticJointprotected
    m_s2 (defined in b2PrismaticJoint)b2PrismaticJointprotected
    m_type (defined in b2Joint)b2Jointprotected
    m_upperTranslation (defined in b2PrismaticJoint)b2PrismaticJointprotected
    m_userData (defined in b2Joint)b2Jointprotected
    SetLimits(float32 lower, float32 upper)b2PrismaticJoint
    SetMaxMotorForce(float32 force)b2PrismaticJoint
    SetMotorSpeed(float32 speed)b2PrismaticJoint
    SetUserData(void *data)b2Jointinline
    ShiftOrigin(const b2Vec2 &newOrigin)b2Jointinlinevirtual
    SolvePositionConstraints(const b2SolverData &data) (defined in b2PrismaticJoint)b2PrismaticJointprotectedvirtual
    SolveVelocityConstraints(const b2SolverData &data) (defined in b2PrismaticJoint)b2PrismaticJointprotectedvirtual
    ~b2Joint() (defined in b2Joint)b2Jointinlineprotectedvirtual
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_prismatic_joint.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_prismatic_joint.html deleted file mode 100644 index 64a477e..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_prismatic_joint.html +++ /dev/null @@ -1,419 +0,0 @@ - - - - - - -Box2D: b2PrismaticJoint Class Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    - -
    - -

    #include <b2PrismaticJoint.h>

    -
    -Inheritance diagram for b2PrismaticJoint:
    -
    -
    - - -b2Joint - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Member Functions

    -b2Vec2 GetAnchorA () const
     Get the anchor point on bodyA in world coordinates.
     
    -b2Vec2 GetAnchorB () const
     Get the anchor point on bodyB in world coordinates.
     
    -b2Vec2 GetReactionForce (float32 inv_dt) const
     Get the reaction force on bodyB at the joint anchor in Newtons.
     
    -float32 GetReactionTorque (float32 inv_dt) const
     Get the reaction torque on bodyB in N*m.
     
    -const b2Vec2GetLocalAnchorA () const
     The local anchor point relative to bodyA's origin.
     
    -const b2Vec2GetLocalAnchorB () const
     The local anchor point relative to bodyB's origin.
     
    -const b2Vec2GetLocalAxisA () const
     The local joint axis relative to bodyA.
     
    -float32 GetReferenceAngle () const
     Get the reference angle.
     
    -float32 GetJointTranslation () const
     Get the current joint translation, usually in meters.
     
    -float32 GetJointSpeed () const
     Get the current joint translation speed, usually in meters per second.
     
    -bool IsLimitEnabled () const
     Is the joint limit enabled?
     
    -void EnableLimit (bool flag)
     Enable/disable the joint limit.
     
    -float32 GetLowerLimit () const
     Get the lower joint limit, usually in meters.
     
    -float32 GetUpperLimit () const
     Get the upper joint limit, usually in meters.
     
    -void SetLimits (float32 lower, float32 upper)
     Set the joint limits, usually in meters.
     
    -bool IsMotorEnabled () const
     Is the joint motor enabled?
     
    -void EnableMotor (bool flag)
     Enable/disable the joint motor.
     
    -void SetMotorSpeed (float32 speed)
     Set the motor speed, usually in meters per second.
     
    -float32 GetMotorSpeed () const
     Get the motor speed, usually in meters per second.
     
    -void SetMaxMotorForce (float32 force)
     Set the maximum motor force, usually in N.
     
    -float32 GetMaxMotorForce () const
     
    -float32 GetMotorForce (float32 inv_dt) const
     Get the current motor force given the inverse time step, usually in N.
     
    -void Dump ()
     Dump to b2Log.
     
    - Public Member Functions inherited from b2Joint
    -b2JointType GetType () const
     Get the type of the concrete joint.
     
    -b2BodyGetBodyA ()
     Get the first body attached to this joint.
     
    -b2BodyGetBodyB ()
     Get the second body attached to this joint.
     
    -b2JointGetNext ()
     Get the next joint the world joint list.
     
    -const b2JointGetNext () const
     
    -void * GetUserData () const
     Get the user data pointer.
     
    -void SetUserData (void *data)
     Set the user data pointer.
     
    -bool IsActive () const
     Short-cut function to determine if either body is inactive.
     
    bool GetCollideConnected () const
     
    -virtual void ShiftOrigin (const b2Vec2 &newOrigin)
     Shift the origin for any points stored in world coordinates.
     
    - - - - - - - - - - - - -

    -Protected Member Functions

    b2PrismaticJoint (const b2PrismaticJointDef *def)
     
    -void InitVelocityConstraints (const b2SolverData &data)
     
    -void SolveVelocityConstraints (const b2SolverData &data)
     
    -bool SolvePositionConstraints (const b2SolverData &data)
     
    - Protected Member Functions inherited from b2Joint
    b2Joint (const b2JointDef *def)
     
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Protected Attributes

    -b2Vec2 m_localAnchorA
     
    -b2Vec2 m_localAnchorB
     
    -b2Vec2 m_localXAxisA
     
    -b2Vec2 m_localYAxisA
     
    -float32 m_referenceAngle
     
    -b2Vec3 m_impulse
     
    -float32 m_motorImpulse
     
    -float32 m_lowerTranslation
     
    -float32 m_upperTranslation
     
    -float32 m_maxMotorForce
     
    -float32 m_motorSpeed
     
    -bool m_enableLimit
     
    -bool m_enableMotor
     
    -b2LimitState m_limitState
     
    -int32 m_indexA
     
    -int32 m_indexB
     
    -b2Vec2 m_localCenterA
     
    -b2Vec2 m_localCenterB
     
    -float32 m_invMassA
     
    -float32 m_invMassB
     
    -float32 m_invIA
     
    -float32 m_invIB
     
    -b2Vec2 m_axis
     
    -b2Vec2 m_perp
     
    -float32 m_s1
     
    -float32 m_s2
     
    -float32 m_a1
     
    -float32 m_a2
     
    -b2Mat33 m_K
     
    -float32 m_motorMass
     
    - Protected Attributes inherited from b2Joint
    -b2JointType m_type
     
    -b2Jointm_prev
     
    -b2Jointm_next
     
    -b2JointEdge m_edgeA
     
    -b2JointEdge m_edgeB
     
    -b2Bodym_bodyA
     
    -b2Bodym_bodyB
     
    -int32 m_index
     
    -bool m_islandFlag
     
    -bool m_collideConnected
     
    -void * m_userData
     
    - - - - - -

    -Friends

    -class b2Joint
     
    -class b2GearJoint
     
    - - - - - - -

    -Additional Inherited Members

    - Static Protected Member Functions inherited from b2Joint
    -static b2JointCreate (const b2JointDef *def, b2BlockAllocator *allocator)
     
    -static void Destroy (b2Joint *joint, b2BlockAllocator *allocator)
     
    -

    Detailed Description

    -

    A prismatic joint. This joint provides one degree of freedom: translation along an axis fixed in bodyA. Relative rotation is prevented. You can use a joint limit to restrict the range of motion and a joint motor to drive the motion or to model joint friction.

    -

    The documentation for this class was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_prismatic_joint.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_prismatic_joint.png deleted file mode 100644 index ac021fd..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_prismatic_joint.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_pulley_joint-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_pulley_joint-members.html deleted file mode 100644 index 3d49d35..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_pulley_joint-members.html +++ /dev/null @@ -1,165 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2PulleyJoint Member List
    -
    -
    - -

    This is the complete list of members for b2PulleyJoint, including all inherited members.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    b2Joint (defined in b2PulleyJoint)b2PulleyJointfriend
    b2Joint(const b2JointDef *def) (defined in b2Joint)b2Jointprotected
    b2PulleyJoint(const b2PulleyJointDef *data) (defined in b2PulleyJoint)b2PulleyJointprotected
    Create(const b2JointDef *def, b2BlockAllocator *allocator) (defined in b2Joint)b2Jointprotectedstatic
    Destroy(b2Joint *joint, b2BlockAllocator *allocator) (defined in b2Joint)b2Jointprotectedstatic
    Dump()b2PulleyJointvirtual
    GetAnchorA() const b2PulleyJointvirtual
    GetAnchorB() const b2PulleyJointvirtual
    GetBodyA()b2Jointinline
    GetBodyB()b2Jointinline
    GetCollideConnected() const b2Jointinline
    GetCurrentLengthA() const b2PulleyJoint
    GetCurrentLengthB() const b2PulleyJoint
    GetGroundAnchorA() const b2PulleyJoint
    GetGroundAnchorB() const b2PulleyJoint
    GetLengthA() const b2PulleyJoint
    GetLengthB() const b2PulleyJoint
    GetNext()b2Jointinline
    GetNext() const (defined in b2Joint)b2Jointinline
    GetRatio() const b2PulleyJoint
    GetReactionForce(float32 inv_dt) const b2PulleyJointvirtual
    GetReactionTorque(float32 inv_dt) const b2PulleyJointvirtual
    GetType() const b2Jointinline
    GetUserData() const b2Jointinline
    InitVelocityConstraints(const b2SolverData &data) (defined in b2PulleyJoint)b2PulleyJointprotectedvirtual
    IsActive() const b2Joint
    m_bodyA (defined in b2Joint)b2Jointprotected
    m_bodyB (defined in b2Joint)b2Jointprotected
    m_collideConnected (defined in b2Joint)b2Jointprotected
    m_constant (defined in b2PulleyJoint)b2PulleyJointprotected
    m_edgeA (defined in b2Joint)b2Jointprotected
    m_edgeB (defined in b2Joint)b2Jointprotected
    m_groundAnchorA (defined in b2PulleyJoint)b2PulleyJointprotected
    m_groundAnchorB (defined in b2PulleyJoint)b2PulleyJointprotected
    m_impulse (defined in b2PulleyJoint)b2PulleyJointprotected
    m_index (defined in b2Joint)b2Jointprotected
    m_indexA (defined in b2PulleyJoint)b2PulleyJointprotected
    m_indexB (defined in b2PulleyJoint)b2PulleyJointprotected
    m_invIA (defined in b2PulleyJoint)b2PulleyJointprotected
    m_invIB (defined in b2PulleyJoint)b2PulleyJointprotected
    m_invMassA (defined in b2PulleyJoint)b2PulleyJointprotected
    m_invMassB (defined in b2PulleyJoint)b2PulleyJointprotected
    m_islandFlag (defined in b2Joint)b2Jointprotected
    m_lengthA (defined in b2PulleyJoint)b2PulleyJointprotected
    m_lengthB (defined in b2PulleyJoint)b2PulleyJointprotected
    m_localAnchorA (defined in b2PulleyJoint)b2PulleyJointprotected
    m_localAnchorB (defined in b2PulleyJoint)b2PulleyJointprotected
    m_localCenterA (defined in b2PulleyJoint)b2PulleyJointprotected
    m_localCenterB (defined in b2PulleyJoint)b2PulleyJointprotected
    m_mass (defined in b2PulleyJoint)b2PulleyJointprotected
    m_next (defined in b2Joint)b2Jointprotected
    m_prev (defined in b2Joint)b2Jointprotected
    m_rA (defined in b2PulleyJoint)b2PulleyJointprotected
    m_ratio (defined in b2PulleyJoint)b2PulleyJointprotected
    m_rB (defined in b2PulleyJoint)b2PulleyJointprotected
    m_type (defined in b2Joint)b2Jointprotected
    m_uA (defined in b2PulleyJoint)b2PulleyJointprotected
    m_uB (defined in b2PulleyJoint)b2PulleyJointprotected
    m_userData (defined in b2Joint)b2Jointprotected
    SetUserData(void *data)b2Jointinline
    ShiftOrigin(const b2Vec2 &newOrigin)b2PulleyJointvirtual
    SolvePositionConstraints(const b2SolverData &data) (defined in b2PulleyJoint)b2PulleyJointprotectedvirtual
    SolveVelocityConstraints(const b2SolverData &data) (defined in b2PulleyJoint)b2PulleyJointprotectedvirtual
    ~b2Joint() (defined in b2Joint)b2Jointinlineprotectedvirtual
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_pulley_joint.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_pulley_joint.html deleted file mode 100644 index 91b60fc..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_pulley_joint.html +++ /dev/null @@ -1,349 +0,0 @@ - - - - - - -Box2D: b2PulleyJoint Class Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    - -
    - -

    #include <b2PulleyJoint.h>

    -
    -Inheritance diagram for b2PulleyJoint:
    -
    -
    - - -b2Joint - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Member Functions

    -b2Vec2 GetAnchorA () const
     Get the anchor point on bodyA in world coordinates.
     
    -b2Vec2 GetAnchorB () const
     Get the anchor point on bodyB in world coordinates.
     
    -b2Vec2 GetReactionForce (float32 inv_dt) const
     Get the reaction force on bodyB at the joint anchor in Newtons.
     
    -float32 GetReactionTorque (float32 inv_dt) const
     Get the reaction torque on bodyB in N*m.
     
    -b2Vec2 GetGroundAnchorA () const
     Get the first ground anchor.
     
    -b2Vec2 GetGroundAnchorB () const
     Get the second ground anchor.
     
    -float32 GetLengthA () const
     Get the current length of the segment attached to bodyA.
     
    -float32 GetLengthB () const
     Get the current length of the segment attached to bodyB.
     
    -float32 GetRatio () const
     Get the pulley ratio.
     
    -float32 GetCurrentLengthA () const
     Get the current length of the segment attached to bodyA.
     
    -float32 GetCurrentLengthB () const
     Get the current length of the segment attached to bodyB.
     
    -void Dump ()
     Dump joint to dmLog.
     
    -void ShiftOrigin (const b2Vec2 &newOrigin)
     Implement b2Joint::ShiftOrigin.
     
    - Public Member Functions inherited from b2Joint
    -b2JointType GetType () const
     Get the type of the concrete joint.
     
    -b2BodyGetBodyA ()
     Get the first body attached to this joint.
     
    -b2BodyGetBodyB ()
     Get the second body attached to this joint.
     
    -b2JointGetNext ()
     Get the next joint the world joint list.
     
    -const b2JointGetNext () const
     
    -void * GetUserData () const
     Get the user data pointer.
     
    -void SetUserData (void *data)
     Set the user data pointer.
     
    -bool IsActive () const
     Short-cut function to determine if either body is inactive.
     
    bool GetCollideConnected () const
     
    - - - - - - - - - - - - -

    -Protected Member Functions

    b2PulleyJoint (const b2PulleyJointDef *data)
     
    -void InitVelocityConstraints (const b2SolverData &data)
     
    -void SolveVelocityConstraints (const b2SolverData &data)
     
    -bool SolvePositionConstraints (const b2SolverData &data)
     
    - Protected Member Functions inherited from b2Joint
    b2Joint (const b2JointDef *def)
     
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Protected Attributes

    -b2Vec2 m_groundAnchorA
     
    -b2Vec2 m_groundAnchorB
     
    -float32 m_lengthA
     
    -float32 m_lengthB
     
    -b2Vec2 m_localAnchorA
     
    -b2Vec2 m_localAnchorB
     
    -float32 m_constant
     
    -float32 m_ratio
     
    -float32 m_impulse
     
    -int32 m_indexA
     
    -int32 m_indexB
     
    -b2Vec2 m_uA
     
    -b2Vec2 m_uB
     
    -b2Vec2 m_rA
     
    -b2Vec2 m_rB
     
    -b2Vec2 m_localCenterA
     
    -b2Vec2 m_localCenterB
     
    -float32 m_invMassA
     
    -float32 m_invMassB
     
    -float32 m_invIA
     
    -float32 m_invIB
     
    -float32 m_mass
     
    - Protected Attributes inherited from b2Joint
    -b2JointType m_type
     
    -b2Jointm_prev
     
    -b2Jointm_next
     
    -b2JointEdge m_edgeA
     
    -b2JointEdge m_edgeB
     
    -b2Bodym_bodyA
     
    -b2Bodym_bodyB
     
    -int32 m_index
     
    -bool m_islandFlag
     
    -bool m_collideConnected
     
    -void * m_userData
     
    - - - -

    -Friends

    -class b2Joint
     
    - - - - - - -

    -Additional Inherited Members

    - Static Protected Member Functions inherited from b2Joint
    -static b2JointCreate (const b2JointDef *def, b2BlockAllocator *allocator)
     
    -static void Destroy (b2Joint *joint, b2BlockAllocator *allocator)
     
    -

    Detailed Description

    -

    The pulley joint is connected to two bodies and two fixed ground points. The pulley supports a ratio such that: length1 + ratio * length2 <= constant Yes, the force transmitted is scaled by the ratio. Warning: the pulley joint can get a bit squirrelly by itself. They often work better when combined with prismatic joints. You should also cover the the anchor points with static shapes to prevent one side from going to zero length.

    -

    The documentation for this class was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_pulley_joint.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_pulley_joint.png deleted file mode 100644 index 774785e..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_pulley_joint.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_query_callback-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_query_callback-members.html deleted file mode 100644 index 4810309..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_query_callback-members.html +++ /dev/null @@ -1,103 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2QueryCallback Member List
    -
    -
    - -

    This is the complete list of members for b2QueryCallback, including all inherited members.

    - - - -
    ReportFixture(b2Fixture *fixture)=0b2QueryCallbackpure virtual
    ~b2QueryCallback() (defined in b2QueryCallback)b2QueryCallbackinlinevirtual
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_query_callback.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_query_callback.html deleted file mode 100644 index 15a1a7d..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_query_callback.html +++ /dev/null @@ -1,141 +0,0 @@ - - - - - - -Box2D: b2QueryCallback Class Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2QueryCallback Class Referenceabstract
    -
    -
    - -

    #include <b2WorldCallbacks.h>

    - - - - -

    -Public Member Functions

    virtual bool ReportFixture (b2Fixture *fixture)=0
     
    -

    Detailed Description

    -

    Callback class for AABB queries. See b2World::Query

    -

    Member Function Documentation

    - -
    -
    - - - - - -
    - - - - - - - - -
    virtual bool b2QueryCallback::ReportFixture (b2Fixturefixture)
    -
    -pure virtual
    -
    -

    Called for each fixture found in the query AABB.

    -
    Returns
    false to terminate the query.
    - -
    -
    -
    The documentation for this class was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_ray_cast_callback-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_ray_cast_callback-members.html deleted file mode 100644 index 3cf4975..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_ray_cast_callback-members.html +++ /dev/null @@ -1,103 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2RayCastCallback Member List
    -
    -
    - -

    This is the complete list of members for b2RayCastCallback, including all inherited members.

    - - - -
    ReportFixture(b2Fixture *fixture, const b2Vec2 &point, const b2Vec2 &normal, float32 fraction)=0b2RayCastCallbackpure virtual
    ~b2RayCastCallback() (defined in b2RayCastCallback)b2RayCastCallbackinlinevirtual
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_ray_cast_callback.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_ray_cast_callback.html deleted file mode 100644 index e68d0cc..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_ray_cast_callback.html +++ /dev/null @@ -1,171 +0,0 @@ - - - - - - -Box2D: b2RayCastCallback Class Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2RayCastCallback Class Referenceabstract
    -
    -
    - -

    #include <b2WorldCallbacks.h>

    - - - - -

    -Public Member Functions

    virtual float32 ReportFixture (b2Fixture *fixture, const b2Vec2 &point, const b2Vec2 &normal, float32 fraction)=0
     
    -

    Detailed Description

    -

    Callback class for ray casts. See b2World::RayCast

    -

    Member Function Documentation

    - -
    -
    - - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    virtual float32 b2RayCastCallback::ReportFixture (b2Fixturefixture,
    const b2Vec2point,
    const b2Vec2normal,
    float32 fraction 
    )
    -
    -pure virtual
    -
    -

    Called for each fixture found in the query. You control how the ray cast proceeds by returning a float: return -1: ignore this fixture and continue return 0: terminate the ray cast return fraction: clip the ray to this point return 1: don't clip the ray and continue

    -
    Parameters
    - - - - -
    fixturethe fixture hit by the ray
    pointthe point of initial intersection
    normalthe normal vector at the point of intersection
    -
    -
    -
    Returns
    -1 to filter, 0 to terminate, fraction to clip the ray for closest hit, 1 to continue
    - -
    -
    -
    The documentation for this class was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_revolute_joint-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_revolute_joint-members.html deleted file mode 100644 index 9370226..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_revolute_joint-members.html +++ /dev/null @@ -1,178 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2RevoluteJoint Member List
    -
    -
    - -

    This is the complete list of members for b2RevoluteJoint, including all inherited members.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    b2GearJoint (defined in b2RevoluteJoint)b2RevoluteJointfriend
    b2Joint (defined in b2RevoluteJoint)b2RevoluteJointfriend
    b2Joint(const b2JointDef *def) (defined in b2Joint)b2Jointprotected
    b2RevoluteJoint(const b2RevoluteJointDef *def) (defined in b2RevoluteJoint)b2RevoluteJointprotected
    Create(const b2JointDef *def, b2BlockAllocator *allocator) (defined in b2Joint)b2Jointprotectedstatic
    Destroy(b2Joint *joint, b2BlockAllocator *allocator) (defined in b2Joint)b2Jointprotectedstatic
    Dump()b2RevoluteJointvirtual
    EnableLimit(bool flag)b2RevoluteJoint
    EnableMotor(bool flag)b2RevoluteJoint
    GetAnchorA() const b2RevoluteJointvirtual
    GetAnchorB() const b2RevoluteJointvirtual
    GetBodyA()b2Jointinline
    GetBodyB()b2Jointinline
    GetCollideConnected() const b2Jointinline
    GetJointAngle() const b2RevoluteJoint
    GetJointSpeed() const b2RevoluteJoint
    GetLocalAnchorA() const b2RevoluteJointinline
    GetLocalAnchorB() const b2RevoluteJointinline
    GetLowerLimit() const b2RevoluteJoint
    GetMaxMotorTorque() const (defined in b2RevoluteJoint)b2RevoluteJointinline
    GetMotorSpeed() const b2RevoluteJointinline
    GetMotorTorque(float32 inv_dt) const b2RevoluteJoint
    GetNext()b2Jointinline
    GetNext() const (defined in b2Joint)b2Jointinline
    GetReactionForce(float32 inv_dt) const b2RevoluteJointvirtual
    GetReactionTorque(float32 inv_dt) const b2RevoluteJointvirtual
    GetReferenceAngle() const b2RevoluteJointinline
    GetType() const b2Jointinline
    GetUpperLimit() const b2RevoluteJoint
    GetUserData() const b2Jointinline
    InitVelocityConstraints(const b2SolverData &data) (defined in b2RevoluteJoint)b2RevoluteJointprotectedvirtual
    IsActive() const b2Joint
    IsLimitEnabled() const b2RevoluteJoint
    IsMotorEnabled() const b2RevoluteJoint
    m_bodyA (defined in b2Joint)b2Jointprotected
    m_bodyB (defined in b2Joint)b2Jointprotected
    m_collideConnected (defined in b2Joint)b2Jointprotected
    m_edgeA (defined in b2Joint)b2Jointprotected
    m_edgeB (defined in b2Joint)b2Jointprotected
    m_enableLimit (defined in b2RevoluteJoint)b2RevoluteJointprotected
    m_enableMotor (defined in b2RevoluteJoint)b2RevoluteJointprotected
    m_impulse (defined in b2RevoluteJoint)b2RevoluteJointprotected
    m_index (defined in b2Joint)b2Jointprotected
    m_indexA (defined in b2RevoluteJoint)b2RevoluteJointprotected
    m_indexB (defined in b2RevoluteJoint)b2RevoluteJointprotected
    m_invIA (defined in b2RevoluteJoint)b2RevoluteJointprotected
    m_invIB (defined in b2RevoluteJoint)b2RevoluteJointprotected
    m_invMassA (defined in b2RevoluteJoint)b2RevoluteJointprotected
    m_invMassB (defined in b2RevoluteJoint)b2RevoluteJointprotected
    m_islandFlag (defined in b2Joint)b2Jointprotected
    m_limitState (defined in b2RevoluteJoint)b2RevoluteJointprotected
    m_localAnchorA (defined in b2RevoluteJoint)b2RevoluteJointprotected
    m_localAnchorB (defined in b2RevoluteJoint)b2RevoluteJointprotected
    m_localCenterA (defined in b2RevoluteJoint)b2RevoluteJointprotected
    m_localCenterB (defined in b2RevoluteJoint)b2RevoluteJointprotected
    m_lowerAngle (defined in b2RevoluteJoint)b2RevoluteJointprotected
    m_mass (defined in b2RevoluteJoint)b2RevoluteJointprotected
    m_maxMotorTorque (defined in b2RevoluteJoint)b2RevoluteJointprotected
    m_motorImpulse (defined in b2RevoluteJoint)b2RevoluteJointprotected
    m_motorMass (defined in b2RevoluteJoint)b2RevoluteJointprotected
    m_motorSpeed (defined in b2RevoluteJoint)b2RevoluteJointprotected
    m_next (defined in b2Joint)b2Jointprotected
    m_prev (defined in b2Joint)b2Jointprotected
    m_rA (defined in b2RevoluteJoint)b2RevoluteJointprotected
    m_rB (defined in b2RevoluteJoint)b2RevoluteJointprotected
    m_referenceAngle (defined in b2RevoluteJoint)b2RevoluteJointprotected
    m_type (defined in b2Joint)b2Jointprotected
    m_upperAngle (defined in b2RevoluteJoint)b2RevoluteJointprotected
    m_userData (defined in b2Joint)b2Jointprotected
    SetLimits(float32 lower, float32 upper)b2RevoluteJoint
    SetMaxMotorTorque(float32 torque)b2RevoluteJoint
    SetMotorSpeed(float32 speed)b2RevoluteJoint
    SetUserData(void *data)b2Jointinline
    ShiftOrigin(const b2Vec2 &newOrigin)b2Jointinlinevirtual
    SolvePositionConstraints(const b2SolverData &data) (defined in b2RevoluteJoint)b2RevoluteJointprotectedvirtual
    SolveVelocityConstraints(const b2SolverData &data) (defined in b2RevoluteJoint)b2RevoluteJointprotectedvirtual
    ~b2Joint() (defined in b2Joint)b2Jointinlineprotectedvirtual
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_revolute_joint.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_revolute_joint.html deleted file mode 100644 index 8fcdd82..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_revolute_joint.html +++ /dev/null @@ -1,463 +0,0 @@ - - - - - - -Box2D: b2RevoluteJoint Class Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    - -
    - -

    #include <b2RevoluteJoint.h>

    -
    -Inheritance diagram for b2RevoluteJoint:
    -
    -
    - - -b2Joint - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Member Functions

    -b2Vec2 GetAnchorA () const
     Get the anchor point on bodyA in world coordinates.
     
    -b2Vec2 GetAnchorB () const
     Get the anchor point on bodyB in world coordinates.
     
    -const b2Vec2GetLocalAnchorA () const
     The local anchor point relative to bodyA's origin.
     
    -const b2Vec2GetLocalAnchorB () const
     The local anchor point relative to bodyB's origin.
     
    -float32 GetReferenceAngle () const
     Get the reference angle.
     
    -float32 GetJointAngle () const
     Get the current joint angle in radians.
     
    -float32 GetJointSpeed () const
     Get the current joint angle speed in radians per second.
     
    -bool IsLimitEnabled () const
     Is the joint limit enabled?
     
    -void EnableLimit (bool flag)
     Enable/disable the joint limit.
     
    -float32 GetLowerLimit () const
     Get the lower joint limit in radians.
     
    -float32 GetUpperLimit () const
     Get the upper joint limit in radians.
     
    -void SetLimits (float32 lower, float32 upper)
     Set the joint limits in radians.
     
    -bool IsMotorEnabled () const
     Is the joint motor enabled?
     
    -void EnableMotor (bool flag)
     Enable/disable the joint motor.
     
    -void SetMotorSpeed (float32 speed)
     Set the motor speed in radians per second.
     
    -float32 GetMotorSpeed () const
     Get the motor speed in radians per second.
     
    -void SetMaxMotorTorque (float32 torque)
     Set the maximum motor torque, usually in N-m.
     
    -float32 GetMaxMotorTorque () const
     
    b2Vec2 GetReactionForce (float32 inv_dt) const
     
    float32 GetReactionTorque (float32 inv_dt) const
     
    float32 GetMotorTorque (float32 inv_dt) const
     
    -void Dump ()
     Dump to b2Log.
     
    - Public Member Functions inherited from b2Joint
    -b2JointType GetType () const
     Get the type of the concrete joint.
     
    -b2BodyGetBodyA ()
     Get the first body attached to this joint.
     
    -b2BodyGetBodyB ()
     Get the second body attached to this joint.
     
    -b2JointGetNext ()
     Get the next joint the world joint list.
     
    -const b2JointGetNext () const
     
    -void * GetUserData () const
     Get the user data pointer.
     
    -void SetUserData (void *data)
     Set the user data pointer.
     
    -bool IsActive () const
     Short-cut function to determine if either body is inactive.
     
    bool GetCollideConnected () const
     
    -virtual void ShiftOrigin (const b2Vec2 &newOrigin)
     Shift the origin for any points stored in world coordinates.
     
    - - - - - - - - - - - - -

    -Protected Member Functions

    b2RevoluteJoint (const b2RevoluteJointDef *def)
     
    -void InitVelocityConstraints (const b2SolverData &data)
     
    -void SolveVelocityConstraints (const b2SolverData &data)
     
    -bool SolvePositionConstraints (const b2SolverData &data)
     
    - Protected Member Functions inherited from b2Joint
    b2Joint (const b2JointDef *def)
     
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Protected Attributes

    -b2Vec2 m_localAnchorA
     
    -b2Vec2 m_localAnchorB
     
    -b2Vec3 m_impulse
     
    -float32 m_motorImpulse
     
    -bool m_enableMotor
     
    -float32 m_maxMotorTorque
     
    -float32 m_motorSpeed
     
    -bool m_enableLimit
     
    -float32 m_referenceAngle
     
    -float32 m_lowerAngle
     
    -float32 m_upperAngle
     
    -int32 m_indexA
     
    -int32 m_indexB
     
    -b2Vec2 m_rA
     
    -b2Vec2 m_rB
     
    -b2Vec2 m_localCenterA
     
    -b2Vec2 m_localCenterB
     
    -float32 m_invMassA
     
    -float32 m_invMassB
     
    -float32 m_invIA
     
    -float32 m_invIB
     
    -b2Mat33 m_mass
     
    -float32 m_motorMass
     
    -b2LimitState m_limitState
     
    - Protected Attributes inherited from b2Joint
    -b2JointType m_type
     
    -b2Jointm_prev
     
    -b2Jointm_next
     
    -b2JointEdge m_edgeA
     
    -b2JointEdge m_edgeB
     
    -b2Bodym_bodyA
     
    -b2Bodym_bodyB
     
    -int32 m_index
     
    -bool m_islandFlag
     
    -bool m_collideConnected
     
    -void * m_userData
     
    - - - - - -

    -Friends

    -class b2Joint
     
    -class b2GearJoint
     
    - - - - - - -

    -Additional Inherited Members

    - Static Protected Member Functions inherited from b2Joint
    -static b2JointCreate (const b2JointDef *def, b2BlockAllocator *allocator)
     
    -static void Destroy (b2Joint *joint, b2BlockAllocator *allocator)
     
    -

    Detailed Description

    -

    A revolute joint constrains two bodies to share a common point while they are free to rotate about the point. The relative rotation about the shared point is the joint angle. You can limit the relative rotation with a joint limit that specifies a lower and upper angle. You can use a motor to drive the relative rotation about the shared point. A maximum motor torque is provided so that infinite forces are not generated.

    -

    Member Function Documentation

    - -
    -
    - - - - - - - - -
    float32 b2RevoluteJoint::GetMotorTorque (float32 inv_dt) const
    -
    -

    Get the current motor torque given the inverse time step. Unit is N*m.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - -
    b2Vec2 b2RevoluteJoint::GetReactionForce (float32 inv_dt) const
    -
    -virtual
    -
    -

    Get the reaction force given the inverse time step. Unit is N.

    - -

    Implements b2Joint.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - -
    float32 b2RevoluteJoint::GetReactionTorque (float32 inv_dt) const
    -
    -virtual
    -
    -

    Get the reaction torque due to the joint limit given the inverse time step. Unit is N*m.

    - -

    Implements b2Joint.

    - -
    -
    -
    The documentation for this class was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_revolute_joint.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_revolute_joint.png deleted file mode 100644 index 11f1bc3..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_revolute_joint.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_rope-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_rope-members.html deleted file mode 100644 index 54d913a..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_rope-members.html +++ /dev/null @@ -1,109 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2Rope Member List
    -
    -
    - -

    This is the complete list of members for b2Rope, including all inherited members.

    - - - - - - - - - -
    b2Rope() (defined in b2Rope)b2Rope
    Draw(b2Draw *draw) const (defined in b2Rope)b2Rope
    GetVertexCount() const (defined in b2Rope)b2Ropeinline
    GetVertices() const (defined in b2Rope)b2Ropeinline
    Initialize(const b2RopeDef *def) (defined in b2Rope)b2Rope
    SetAngle(float32 angle) (defined in b2Rope)b2Rope
    Step(float32 timeStep, int32 iterations) (defined in b2Rope)b2Rope
    ~b2Rope() (defined in b2Rope)b2Rope
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_rope.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_rope.html deleted file mode 100644 index 48013ae..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_rope.html +++ /dev/null @@ -1,127 +0,0 @@ - - - - - - -Box2D: b2Rope Class Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2Rope Class Reference
    -
    -
    - - - - - - - - - - - - - - -

    -Public Member Functions

    -void Initialize (const b2RopeDef *def)
     
    -void Step (float32 timeStep, int32 iterations)
     
    -int32 GetVertexCount () const
     
    -const b2Vec2GetVertices () const
     
    -void Draw (b2Draw *draw) const
     
    -void SetAngle (float32 angle)
     
    -
    The documentation for this class was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_rope_joint-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_rope_joint-members.html deleted file mode 100644 index cc899df..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_rope_joint-members.html +++ /dev/null @@ -1,159 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2RopeJoint Member List
    -
    -
    - -

    This is the complete list of members for b2RopeJoint, including all inherited members.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    b2Joint (defined in b2RopeJoint)b2RopeJointfriend
    b2Joint(const b2JointDef *def) (defined in b2Joint)b2Jointprotected
    b2RopeJoint(const b2RopeJointDef *data) (defined in b2RopeJoint)b2RopeJointprotected
    Create(const b2JointDef *def, b2BlockAllocator *allocator) (defined in b2Joint)b2Jointprotectedstatic
    Destroy(b2Joint *joint, b2BlockAllocator *allocator) (defined in b2Joint)b2Jointprotectedstatic
    Dump()b2RopeJointvirtual
    GetAnchorA() const b2RopeJointvirtual
    GetAnchorB() const b2RopeJointvirtual
    GetBodyA()b2Jointinline
    GetBodyB()b2Jointinline
    GetCollideConnected() const b2Jointinline
    GetLimitState() const (defined in b2RopeJoint)b2RopeJoint
    GetLocalAnchorA() const b2RopeJointinline
    GetLocalAnchorB() const b2RopeJointinline
    GetMaxLength() const (defined in b2RopeJoint)b2RopeJoint
    GetNext()b2Jointinline
    GetNext() const (defined in b2Joint)b2Jointinline
    GetReactionForce(float32 inv_dt) const b2RopeJointvirtual
    GetReactionTorque(float32 inv_dt) const b2RopeJointvirtual
    GetType() const b2Jointinline
    GetUserData() const b2Jointinline
    InitVelocityConstraints(const b2SolverData &data) (defined in b2RopeJoint)b2RopeJointprotectedvirtual
    IsActive() const b2Joint
    m_bodyA (defined in b2Joint)b2Jointprotected
    m_bodyB (defined in b2Joint)b2Jointprotected
    m_collideConnected (defined in b2Joint)b2Jointprotected
    m_edgeA (defined in b2Joint)b2Jointprotected
    m_edgeB (defined in b2Joint)b2Jointprotected
    m_impulse (defined in b2RopeJoint)b2RopeJointprotected
    m_index (defined in b2Joint)b2Jointprotected
    m_indexA (defined in b2RopeJoint)b2RopeJointprotected
    m_indexB (defined in b2RopeJoint)b2RopeJointprotected
    m_invIA (defined in b2RopeJoint)b2RopeJointprotected
    m_invIB (defined in b2RopeJoint)b2RopeJointprotected
    m_invMassA (defined in b2RopeJoint)b2RopeJointprotected
    m_invMassB (defined in b2RopeJoint)b2RopeJointprotected
    m_islandFlag (defined in b2Joint)b2Jointprotected
    m_length (defined in b2RopeJoint)b2RopeJointprotected
    m_localAnchorA (defined in b2RopeJoint)b2RopeJointprotected
    m_localAnchorB (defined in b2RopeJoint)b2RopeJointprotected
    m_localCenterA (defined in b2RopeJoint)b2RopeJointprotected
    m_localCenterB (defined in b2RopeJoint)b2RopeJointprotected
    m_mass (defined in b2RopeJoint)b2RopeJointprotected
    m_maxLength (defined in b2RopeJoint)b2RopeJointprotected
    m_next (defined in b2Joint)b2Jointprotected
    m_prev (defined in b2Joint)b2Jointprotected
    m_rA (defined in b2RopeJoint)b2RopeJointprotected
    m_rB (defined in b2RopeJoint)b2RopeJointprotected
    m_state (defined in b2RopeJoint)b2RopeJointprotected
    m_type (defined in b2Joint)b2Jointprotected
    m_u (defined in b2RopeJoint)b2RopeJointprotected
    m_userData (defined in b2Joint)b2Jointprotected
    SetMaxLength(float32 length)b2RopeJointinline
    SetUserData(void *data)b2Jointinline
    ShiftOrigin(const b2Vec2 &newOrigin)b2Jointinlinevirtual
    SolvePositionConstraints(const b2SolverData &data) (defined in b2RopeJoint)b2RopeJointprotectedvirtual
    SolveVelocityConstraints(const b2SolverData &data) (defined in b2RopeJoint)b2RopeJointprotectedvirtual
    ~b2Joint() (defined in b2Joint)b2Jointinlineprotectedvirtual
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_rope_joint.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_rope_joint.html deleted file mode 100644 index 2cd2296..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_rope_joint.html +++ /dev/null @@ -1,327 +0,0 @@ - - - - - - -Box2D: b2RopeJoint Class Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    - -
    - -

    #include <b2RopeJoint.h>

    -
    -Inheritance diagram for b2RopeJoint:
    -
    -
    - - -b2Joint - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Member Functions

    -b2Vec2 GetAnchorA () const
     Get the anchor point on bodyA in world coordinates.
     
    -b2Vec2 GetAnchorB () const
     Get the anchor point on bodyB in world coordinates.
     
    -b2Vec2 GetReactionForce (float32 inv_dt) const
     Get the reaction force on bodyB at the joint anchor in Newtons.
     
    -float32 GetReactionTorque (float32 inv_dt) const
     Get the reaction torque on bodyB in N*m.
     
    -const b2Vec2GetLocalAnchorA () const
     The local anchor point relative to bodyA's origin.
     
    -const b2Vec2GetLocalAnchorB () const
     The local anchor point relative to bodyB's origin.
     
    -void SetMaxLength (float32 length)
     Set/Get the maximum length of the rope.
     
    -float32 GetMaxLength () const
     
    -b2LimitState GetLimitState () const
     
    -void Dump ()
     Dump joint to dmLog.
     
    - Public Member Functions inherited from b2Joint
    -b2JointType GetType () const
     Get the type of the concrete joint.
     
    -b2BodyGetBodyA ()
     Get the first body attached to this joint.
     
    -b2BodyGetBodyB ()
     Get the second body attached to this joint.
     
    -b2JointGetNext ()
     Get the next joint the world joint list.
     
    -const b2JointGetNext () const
     
    -void * GetUserData () const
     Get the user data pointer.
     
    -void SetUserData (void *data)
     Set the user data pointer.
     
    -bool IsActive () const
     Short-cut function to determine if either body is inactive.
     
    bool GetCollideConnected () const
     
    -virtual void ShiftOrigin (const b2Vec2 &newOrigin)
     Shift the origin for any points stored in world coordinates.
     
    - - - - - - - - - - - - -

    -Protected Member Functions

    b2RopeJoint (const b2RopeJointDef *data)
     
    -void InitVelocityConstraints (const b2SolverData &data)
     
    -void SolveVelocityConstraints (const b2SolverData &data)
     
    -bool SolvePositionConstraints (const b2SolverData &data)
     
    - Protected Member Functions inherited from b2Joint
    b2Joint (const b2JointDef *def)
     
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Protected Attributes

    -b2Vec2 m_localAnchorA
     
    -b2Vec2 m_localAnchorB
     
    -float32 m_maxLength
     
    -float32 m_length
     
    -float32 m_impulse
     
    -int32 m_indexA
     
    -int32 m_indexB
     
    -b2Vec2 m_u
     
    -b2Vec2 m_rA
     
    -b2Vec2 m_rB
     
    -b2Vec2 m_localCenterA
     
    -b2Vec2 m_localCenterB
     
    -float32 m_invMassA
     
    -float32 m_invMassB
     
    -float32 m_invIA
     
    -float32 m_invIB
     
    -float32 m_mass
     
    -b2LimitState m_state
     
    - Protected Attributes inherited from b2Joint
    -b2JointType m_type
     
    -b2Jointm_prev
     
    -b2Jointm_next
     
    -b2JointEdge m_edgeA
     
    -b2JointEdge m_edgeB
     
    -b2Bodym_bodyA
     
    -b2Bodym_bodyB
     
    -int32 m_index
     
    -bool m_islandFlag
     
    -bool m_collideConnected
     
    -void * m_userData
     
    - - - -

    -Friends

    -class b2Joint
     
    - - - - - - -

    -Additional Inherited Members

    - Static Protected Member Functions inherited from b2Joint
    -static b2JointCreate (const b2JointDef *def, b2BlockAllocator *allocator)
     
    -static void Destroy (b2Joint *joint, b2BlockAllocator *allocator)
     
    -

    Detailed Description

    -

    A rope joint enforces a maximum distance between two points on two bodies. It has no other effect. Warning: if you attempt to change the maximum length during the simulation you will get some non-physical behavior. A model that would allow you to dynamically modify the length would have some sponginess, so I chose not to implement it that way. See b2DistanceJoint if you want to dynamically control length.

    -

    The documentation for this class was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_rope_joint.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_rope_joint.png deleted file mode 100644 index 0e9ba3f..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_rope_joint.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_shape-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_shape-members.html deleted file mode 100644 index e975c17..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_shape-members.html +++ /dev/null @@ -1,117 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2Shape Member List
    -
    -
    - -

    This is the complete list of members for b2Shape, including all inherited members.

    - - - - - - - - - - - - - - - - - -
    Clone(b2BlockAllocator *allocator) const =0b2Shapepure virtual
    ComputeAABB(b2AABB *aabb, const b2Transform &xf, int32 childIndex) const =0b2Shapepure virtual
    ComputeMass(b2MassData *massData, float32 density) const =0b2Shapepure virtual
    e_chain enum value (defined in b2Shape)b2Shape
    e_circle enum value (defined in b2Shape)b2Shape
    e_edge enum value (defined in b2Shape)b2Shape
    e_polygon enum value (defined in b2Shape)b2Shape
    e_typeCount enum value (defined in b2Shape)b2Shape
    GetChildCount() const =0b2Shapepure virtual
    GetType() const b2Shapeinline
    m_radius (defined in b2Shape)b2Shape
    m_type (defined in b2Shape)b2Shape
    RayCast(b2RayCastOutput *output, const b2RayCastInput &input, const b2Transform &transform, int32 childIndex) const =0b2Shapepure virtual
    TestPoint(const b2Transform &xf, const b2Vec2 &p) const =0b2Shapepure virtual
    Type enum name (defined in b2Shape)b2Shape
    ~b2Shape() (defined in b2Shape)b2Shapeinlinevirtual
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_shape.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_shape.html deleted file mode 100644 index b61f6cb..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_shape.html +++ /dev/null @@ -1,389 +0,0 @@ - - - - - - -Box2D: b2Shape Class Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2Shape Class Referenceabstract
    -
    -
    - -

    #include <b2Shape.h>

    -
    -Inheritance diagram for b2Shape:
    -
    -
    - - -b2ChainShape -b2CircleShape -b2EdgeShape -b2PolygonShape - -
    - - - - -

    -Public Types

    enum  Type {
    -  e_circle = 0, -e_edge = 1, -e_polygon = 2, -e_chain = 3, -
    -  e_typeCount = 4 -
    - }
     
    - - - - - - - - - - - - - - - - - -

    -Public Member Functions

    -virtual b2ShapeClone (b2BlockAllocator *allocator) const =0
     Clone the concrete shape using the provided allocator.
     
    Type GetType () const
     
    -virtual int32 GetChildCount () const =0
     Get the number of child primitives.
     
    virtual bool TestPoint (const b2Transform &xf, const b2Vec2 &p) const =0
     
    virtual bool RayCast (b2RayCastOutput *output, const b2RayCastInput &input, const b2Transform &transform, int32 childIndex) const =0
     
    virtual void ComputeAABB (b2AABB *aabb, const b2Transform &xf, int32 childIndex) const =0
     
    virtual void ComputeMass (b2MassData *massData, float32 density) const =0
     
    - - - - - -

    -Public Attributes

    -Type m_type
     
    -float32 m_radius
     
    -

    Detailed Description

    -

    A shape is used for collision detection. You can create a shape however you like. Shapes used for simulation in b2World are created automatically when a b2Fixture is created. Shapes may encapsulate a one or more child shapes.

    -

    Member Function Documentation

    - -
    -
    - - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    virtual void b2Shape::ComputeAABB (b2AABBaabb,
    const b2Transformxf,
    int32 childIndex 
    ) const
    -
    -pure virtual
    -
    -

    Given a transform, compute the associated axis aligned bounding box for a child shape.

    -
    Parameters
    - - - - -
    aabbreturns the axis aligned box.
    xfthe world transform of the shape.
    childIndexthe child shape
    -
    -
    - -

    Implemented in b2ChainShape, b2PolygonShape, b2EdgeShape, and b2CircleShape.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - - - - - - - - - - - -
    virtual void b2Shape::ComputeMass (b2MassDatamassData,
    float32 density 
    ) const
    -
    -pure virtual
    -
    -

    Compute the mass properties of this shape using its dimensions and density. The inertia tensor is computed about the local origin.

    -
    Parameters
    - - - -
    massDatareturns the mass data for this shape.
    densitythe density in kilograms per meter squared.
    -
    -
    - -

    Implemented in b2ChainShape, b2PolygonShape, b2EdgeShape, and b2CircleShape.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    b2Shape::Type b2Shape::GetType () const
    -
    -inline
    -
    -

    Get the type of this shape. You can use this to down cast to the concrete shape.

    -
    Returns
    the shape type.
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    virtual bool b2Shape::RayCast (b2RayCastOutputoutput,
    const b2RayCastInputinput,
    const b2Transformtransform,
    int32 childIndex 
    ) const
    -
    -pure virtual
    -
    -

    Cast a ray against a child shape.

    -
    Parameters
    - - - - - -
    outputthe ray-cast results.
    inputthe ray-cast input parameters.
    transformthe transform to be applied to the shape.
    childIndexthe child shape index
    -
    -
    - -

    Implemented in b2ChainShape, b2PolygonShape, b2EdgeShape, and b2CircleShape.

    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - - - - - - - - - - - -
    virtual bool b2Shape::TestPoint (const b2Transformxf,
    const b2Vec2p 
    ) const
    -
    -pure virtual
    -
    -

    Test a point for containment in this shape. This only works for convex shapes.

    -
    Parameters
    - - - -
    xfthe shape world transform.
    pa point in world coordinates.
    -
    -
    - -

    Implemented in b2ChainShape, b2PolygonShape, b2EdgeShape, and b2CircleShape.

    - -
    -
    -
    The documentation for this class was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_shape.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_shape.png deleted file mode 100644 index e1af003..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_shape.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_stack_allocator-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_stack_allocator-members.html deleted file mode 100644 index fdc3c17..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_stack_allocator-members.html +++ /dev/null @@ -1,106 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2StackAllocator Member List
    -
    -
    - -

    This is the complete list of members for b2StackAllocator, including all inherited members.

    - - - - - - -
    Allocate(int32 size) (defined in b2StackAllocator)b2StackAllocator
    b2StackAllocator() (defined in b2StackAllocator)b2StackAllocator
    Free(void *p) (defined in b2StackAllocator)b2StackAllocator
    GetMaxAllocation() const (defined in b2StackAllocator)b2StackAllocator
    ~b2StackAllocator() (defined in b2StackAllocator)b2StackAllocator
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_stack_allocator.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_stack_allocator.html deleted file mode 100644 index 5bb4ba6..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_stack_allocator.html +++ /dev/null @@ -1,118 +0,0 @@ - - - - - - -Box2D: b2StackAllocator Class Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2StackAllocator Class Reference
    -
    -
    - - - - - - - - -

    -Public Member Functions

    -void * Allocate (int32 size)
     
    -void Free (void *p)
     
    -int32 GetMaxAllocation () const
     
    -
    The documentation for this class was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_timer-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_timer-members.html deleted file mode 100644 index ae19f25..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_timer-members.html +++ /dev/null @@ -1,104 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2Timer Member List
    -
    -
    - -

    This is the complete list of members for b2Timer, including all inherited members.

    - - - - -
    b2Timer()b2Timer
    GetMilliseconds() const b2Timer
    Reset()b2Timer
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_timer.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_timer.html deleted file mode 100644 index fa00835..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_timer.html +++ /dev/null @@ -1,125 +0,0 @@ - - - - - - -Box2D: b2Timer Class Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2Timer Class Reference
    -
    -
    - -

    #include <b2Timer.h>

    - - - - - - - - - - - -

    -Public Member Functions

    b2Timer ()
     Constructor.
     
    -void Reset ()
     Reset the timer.
     
    -float32 GetMilliseconds () const
     Get the time since construction or the last reset.
     
    -

    Detailed Description

    -

    Timer for profiling. This has platform specific code and may not work on every platform.

    -

    The documentation for this class was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_weld_joint-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_weld_joint-members.html deleted file mode 100644 index c097617..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_weld_joint-members.html +++ /dev/null @@ -1,162 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2WeldJoint Member List
    -
    -
    - -

    This is the complete list of members for b2WeldJoint, including all inherited members.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    b2Joint (defined in b2WeldJoint)b2WeldJointfriend
    b2Joint(const b2JointDef *def) (defined in b2Joint)b2Jointprotected
    b2WeldJoint(const b2WeldJointDef *def) (defined in b2WeldJoint)b2WeldJointprotected
    Create(const b2JointDef *def, b2BlockAllocator *allocator) (defined in b2Joint)b2Jointprotectedstatic
    Destroy(b2Joint *joint, b2BlockAllocator *allocator) (defined in b2Joint)b2Jointprotectedstatic
    Dump()b2WeldJointvirtual
    GetAnchorA() const b2WeldJointvirtual
    GetAnchorB() const b2WeldJointvirtual
    GetBodyA()b2Jointinline
    GetBodyB()b2Jointinline
    GetCollideConnected() const b2Jointinline
    GetDampingRatio() const (defined in b2WeldJoint)b2WeldJointinline
    GetFrequency() const (defined in b2WeldJoint)b2WeldJointinline
    GetLocalAnchorA() const b2WeldJointinline
    GetLocalAnchorB() const b2WeldJointinline
    GetNext()b2Jointinline
    GetNext() const (defined in b2Joint)b2Jointinline
    GetReactionForce(float32 inv_dt) const b2WeldJointvirtual
    GetReactionTorque(float32 inv_dt) const b2WeldJointvirtual
    GetReferenceAngle() const b2WeldJointinline
    GetType() const b2Jointinline
    GetUserData() const b2Jointinline
    InitVelocityConstraints(const b2SolverData &data) (defined in b2WeldJoint)b2WeldJointprotectedvirtual
    IsActive() const b2Joint
    m_bias (defined in b2WeldJoint)b2WeldJointprotected
    m_bodyA (defined in b2Joint)b2Jointprotected
    m_bodyB (defined in b2Joint)b2Jointprotected
    m_collideConnected (defined in b2Joint)b2Jointprotected
    m_dampingRatio (defined in b2WeldJoint)b2WeldJointprotected
    m_edgeA (defined in b2Joint)b2Jointprotected
    m_edgeB (defined in b2Joint)b2Jointprotected
    m_frequencyHz (defined in b2WeldJoint)b2WeldJointprotected
    m_gamma (defined in b2WeldJoint)b2WeldJointprotected
    m_impulse (defined in b2WeldJoint)b2WeldJointprotected
    m_index (defined in b2Joint)b2Jointprotected
    m_indexA (defined in b2WeldJoint)b2WeldJointprotected
    m_indexB (defined in b2WeldJoint)b2WeldJointprotected
    m_invIA (defined in b2WeldJoint)b2WeldJointprotected
    m_invIB (defined in b2WeldJoint)b2WeldJointprotected
    m_invMassA (defined in b2WeldJoint)b2WeldJointprotected
    m_invMassB (defined in b2WeldJoint)b2WeldJointprotected
    m_islandFlag (defined in b2Joint)b2Jointprotected
    m_localAnchorA (defined in b2WeldJoint)b2WeldJointprotected
    m_localAnchorB (defined in b2WeldJoint)b2WeldJointprotected
    m_localCenterA (defined in b2WeldJoint)b2WeldJointprotected
    m_localCenterB (defined in b2WeldJoint)b2WeldJointprotected
    m_mass (defined in b2WeldJoint)b2WeldJointprotected
    m_next (defined in b2Joint)b2Jointprotected
    m_prev (defined in b2Joint)b2Jointprotected
    m_rA (defined in b2WeldJoint)b2WeldJointprotected
    m_rB (defined in b2WeldJoint)b2WeldJointprotected
    m_referenceAngle (defined in b2WeldJoint)b2WeldJointprotected
    m_type (defined in b2Joint)b2Jointprotected
    m_userData (defined in b2Joint)b2Jointprotected
    SetDampingRatio(float32 ratio)b2WeldJointinline
    SetFrequency(float32 hz)b2WeldJointinline
    SetUserData(void *data)b2Jointinline
    ShiftOrigin(const b2Vec2 &newOrigin)b2Jointinlinevirtual
    SolvePositionConstraints(const b2SolverData &data) (defined in b2WeldJoint)b2WeldJointprotectedvirtual
    SolveVelocityConstraints(const b2SolverData &data) (defined in b2WeldJoint)b2WeldJointprotectedvirtual
    ~b2Joint() (defined in b2Joint)b2Jointinlineprotectedvirtual
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_weld_joint.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_weld_joint.html deleted file mode 100644 index 5c3608d..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_weld_joint.html +++ /dev/null @@ -1,338 +0,0 @@ - - - - - - -Box2D: b2WeldJoint Class Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    - -
    - -

    #include <b2WeldJoint.h>

    -
    -Inheritance diagram for b2WeldJoint:
    -
    -
    - - -b2Joint - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Member Functions

    -b2Vec2 GetAnchorA () const
     Get the anchor point on bodyA in world coordinates.
     
    -b2Vec2 GetAnchorB () const
     Get the anchor point on bodyB in world coordinates.
     
    -b2Vec2 GetReactionForce (float32 inv_dt) const
     Get the reaction force on bodyB at the joint anchor in Newtons.
     
    -float32 GetReactionTorque (float32 inv_dt) const
     Get the reaction torque on bodyB in N*m.
     
    -const b2Vec2GetLocalAnchorA () const
     The local anchor point relative to bodyA's origin.
     
    -const b2Vec2GetLocalAnchorB () const
     The local anchor point relative to bodyB's origin.
     
    -float32 GetReferenceAngle () const
     Get the reference angle.
     
    -void SetFrequency (float32 hz)
     Set/get frequency in Hz.
     
    -float32 GetFrequency () const
     
    -void SetDampingRatio (float32 ratio)
     Set/get damping ratio.
     
    -float32 GetDampingRatio () const
     
    -void Dump ()
     Dump to b2Log.
     
    - Public Member Functions inherited from b2Joint
    -b2JointType GetType () const
     Get the type of the concrete joint.
     
    -b2BodyGetBodyA ()
     Get the first body attached to this joint.
     
    -b2BodyGetBodyB ()
     Get the second body attached to this joint.
     
    -b2JointGetNext ()
     Get the next joint the world joint list.
     
    -const b2JointGetNext () const
     
    -void * GetUserData () const
     Get the user data pointer.
     
    -void SetUserData (void *data)
     Set the user data pointer.
     
    -bool IsActive () const
     Short-cut function to determine if either body is inactive.
     
    bool GetCollideConnected () const
     
    -virtual void ShiftOrigin (const b2Vec2 &newOrigin)
     Shift the origin for any points stored in world coordinates.
     
    - - - - - - - - - - - - -

    -Protected Member Functions

    b2WeldJoint (const b2WeldJointDef *def)
     
    -void InitVelocityConstraints (const b2SolverData &data)
     
    -void SolveVelocityConstraints (const b2SolverData &data)
     
    -bool SolvePositionConstraints (const b2SolverData &data)
     
    - Protected Member Functions inherited from b2Joint
    b2Joint (const b2JointDef *def)
     
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Protected Attributes

    -float32 m_frequencyHz
     
    -float32 m_dampingRatio
     
    -float32 m_bias
     
    -b2Vec2 m_localAnchorA
     
    -b2Vec2 m_localAnchorB
     
    -float32 m_referenceAngle
     
    -float32 m_gamma
     
    -b2Vec3 m_impulse
     
    -int32 m_indexA
     
    -int32 m_indexB
     
    -b2Vec2 m_rA
     
    -b2Vec2 m_rB
     
    -b2Vec2 m_localCenterA
     
    -b2Vec2 m_localCenterB
     
    -float32 m_invMassA
     
    -float32 m_invMassB
     
    -float32 m_invIA
     
    -float32 m_invIB
     
    -b2Mat33 m_mass
     
    - Protected Attributes inherited from b2Joint
    -b2JointType m_type
     
    -b2Jointm_prev
     
    -b2Jointm_next
     
    -b2JointEdge m_edgeA
     
    -b2JointEdge m_edgeB
     
    -b2Bodym_bodyA
     
    -b2Bodym_bodyB
     
    -int32 m_index
     
    -bool m_islandFlag
     
    -bool m_collideConnected
     
    -void * m_userData
     
    - - - -

    -Friends

    -class b2Joint
     
    - - - - - - -

    -Additional Inherited Members

    - Static Protected Member Functions inherited from b2Joint
    -static b2JointCreate (const b2JointDef *def, b2BlockAllocator *allocator)
     
    -static void Destroy (b2Joint *joint, b2BlockAllocator *allocator)
     
    -

    Detailed Description

    -

    A weld joint essentially glues two bodies together. A weld joint may distort somewhat because the island constraint solver is approximate.

    -

    The documentation for this class was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_weld_joint.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_weld_joint.png deleted file mode 100644 index ff245cb..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_weld_joint.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_wheel_joint-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_wheel_joint-members.html deleted file mode 100644 index 1021c07..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_wheel_joint-members.html +++ /dev/null @@ -1,183 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2WheelJoint Member List
    -
    -
    - -

    This is the complete list of members for b2WheelJoint, including all inherited members.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    b2Joint (defined in b2WheelJoint)b2WheelJointfriend
    b2Joint(const b2JointDef *def) (defined in b2Joint)b2Jointprotected
    b2WheelJoint(const b2WheelJointDef *def) (defined in b2WheelJoint)b2WheelJointprotected
    Create(const b2JointDef *def, b2BlockAllocator *allocator) (defined in b2Joint)b2Jointprotectedstatic
    Destroy(b2Joint *joint, b2BlockAllocator *allocator) (defined in b2Joint)b2Jointprotectedstatic
    Dump()b2WheelJointvirtual
    EnableMotor(bool flag)b2WheelJoint
    GetAnchorA() const b2WheelJointvirtual
    GetAnchorB() const b2WheelJointvirtual
    GetBodyA()b2Jointinline
    GetBodyB()b2Jointinline
    GetCollideConnected() const b2Jointinline
    GetJointSpeed() const b2WheelJoint
    GetJointTranslation() const b2WheelJoint
    GetLocalAnchorA() const b2WheelJointinline
    GetLocalAnchorB() const b2WheelJointinline
    GetLocalAxisA() const b2WheelJointinline
    GetMaxMotorTorque() const (defined in b2WheelJoint)b2WheelJointinline
    GetMotorSpeed() const b2WheelJointinline
    GetMotorTorque(float32 inv_dt) const b2WheelJoint
    GetNext()b2Jointinline
    GetNext() const (defined in b2Joint)b2Jointinline
    GetReactionForce(float32 inv_dt) const b2WheelJointvirtual
    GetReactionTorque(float32 inv_dt) const b2WheelJointvirtual
    GetSpringDampingRatio() const (defined in b2WheelJoint)b2WheelJointinline
    GetSpringFrequencyHz() const (defined in b2WheelJoint)b2WheelJointinline
    GetType() const b2Jointinline
    GetUserData() const b2Jointinline
    InitVelocityConstraints(const b2SolverData &data) (defined in b2WheelJoint)b2WheelJointprotectedvirtual
    IsActive() const b2Joint
    IsMotorEnabled() const b2WheelJoint
    m_ax (defined in b2WheelJoint)b2WheelJointprotected
    m_ay (defined in b2WheelJoint)b2WheelJointprotected
    m_bias (defined in b2WheelJoint)b2WheelJointprotected
    m_bodyA (defined in b2Joint)b2Jointprotected
    m_bodyB (defined in b2Joint)b2Jointprotected
    m_collideConnected (defined in b2Joint)b2Jointprotected
    m_dampingRatio (defined in b2WheelJoint)b2WheelJointprotected
    m_edgeA (defined in b2Joint)b2Jointprotected
    m_edgeB (defined in b2Joint)b2Jointprotected
    m_enableMotor (defined in b2WheelJoint)b2WheelJointprotected
    m_frequencyHz (defined in b2WheelJoint)b2WheelJointprotected
    m_gamma (defined in b2WheelJoint)b2WheelJointprotected
    m_impulse (defined in b2WheelJoint)b2WheelJointprotected
    m_index (defined in b2Joint)b2Jointprotected
    m_indexA (defined in b2WheelJoint)b2WheelJointprotected
    m_indexB (defined in b2WheelJoint)b2WheelJointprotected
    m_invIA (defined in b2WheelJoint)b2WheelJointprotected
    m_invIB (defined in b2WheelJoint)b2WheelJointprotected
    m_invMassA (defined in b2WheelJoint)b2WheelJointprotected
    m_invMassB (defined in b2WheelJoint)b2WheelJointprotected
    m_islandFlag (defined in b2Joint)b2Jointprotected
    m_localAnchorA (defined in b2WheelJoint)b2WheelJointprotected
    m_localAnchorB (defined in b2WheelJoint)b2WheelJointprotected
    m_localCenterA (defined in b2WheelJoint)b2WheelJointprotected
    m_localCenterB (defined in b2WheelJoint)b2WheelJointprotected
    m_localXAxisA (defined in b2WheelJoint)b2WheelJointprotected
    m_localYAxisA (defined in b2WheelJoint)b2WheelJointprotected
    m_mass (defined in b2WheelJoint)b2WheelJointprotected
    m_maxMotorTorque (defined in b2WheelJoint)b2WheelJointprotected
    m_motorImpulse (defined in b2WheelJoint)b2WheelJointprotected
    m_motorMass (defined in b2WheelJoint)b2WheelJointprotected
    m_motorSpeed (defined in b2WheelJoint)b2WheelJointprotected
    m_next (defined in b2Joint)b2Jointprotected
    m_prev (defined in b2Joint)b2Jointprotected
    m_sAx (defined in b2WheelJoint)b2WheelJointprotected
    m_sAy (defined in b2WheelJoint)b2WheelJointprotected
    m_sBx (defined in b2WheelJoint)b2WheelJointprotected
    m_sBy (defined in b2WheelJoint)b2WheelJointprotected
    m_springImpulse (defined in b2WheelJoint)b2WheelJointprotected
    m_springMass (defined in b2WheelJoint)b2WheelJointprotected
    m_type (defined in b2Joint)b2Jointprotected
    m_userData (defined in b2Joint)b2Jointprotected
    SetMaxMotorTorque(float32 torque)b2WheelJoint
    SetMotorSpeed(float32 speed)b2WheelJoint
    SetSpringDampingRatio(float32 ratio)b2WheelJointinline
    SetSpringFrequencyHz(float32 hz)b2WheelJointinline
    SetUserData(void *data)b2Jointinline
    ShiftOrigin(const b2Vec2 &newOrigin)b2Jointinlinevirtual
    SolvePositionConstraints(const b2SolverData &data) (defined in b2WheelJoint)b2WheelJointprotectedvirtual
    SolveVelocityConstraints(const b2SolverData &data) (defined in b2WheelJoint)b2WheelJointprotectedvirtual
    ~b2Joint() (defined in b2Joint)b2Jointinlineprotectedvirtual
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_wheel_joint.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_wheel_joint.html deleted file mode 100644 index b144288..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_wheel_joint.html +++ /dev/null @@ -1,409 +0,0 @@ - - - - - - -Box2D: b2WheelJoint Class Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    - -
    - -

    #include <b2WheelJoint.h>

    -
    -Inheritance diagram for b2WheelJoint:
    -
    -
    - - -b2Joint - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Member Functions

    -b2Vec2 GetAnchorA () const
     Get the anchor point on bodyA in world coordinates.
     
    -b2Vec2 GetAnchorB () const
     Get the anchor point on bodyB in world coordinates.
     
    -b2Vec2 GetReactionForce (float32 inv_dt) const
     Get the reaction force on bodyB at the joint anchor in Newtons.
     
    -float32 GetReactionTorque (float32 inv_dt) const
     Get the reaction torque on bodyB in N*m.
     
    -const b2Vec2GetLocalAnchorA () const
     The local anchor point relative to bodyA's origin.
     
    -const b2Vec2GetLocalAnchorB () const
     The local anchor point relative to bodyB's origin.
     
    -const b2Vec2GetLocalAxisA () const
     The local joint axis relative to bodyA.
     
    -float32 GetJointTranslation () const
     Get the current joint translation, usually in meters.
     
    -float32 GetJointSpeed () const
     Get the current joint translation speed, usually in meters per second.
     
    -bool IsMotorEnabled () const
     Is the joint motor enabled?
     
    -void EnableMotor (bool flag)
     Enable/disable the joint motor.
     
    -void SetMotorSpeed (float32 speed)
     Set the motor speed, usually in radians per second.
     
    -float32 GetMotorSpeed () const
     Get the motor speed, usually in radians per second.
     
    -void SetMaxMotorTorque (float32 torque)
     Set/Get the maximum motor force, usually in N-m.
     
    -float32 GetMaxMotorTorque () const
     
    -float32 GetMotorTorque (float32 inv_dt) const
     Get the current motor torque given the inverse time step, usually in N-m.
     
    -void SetSpringFrequencyHz (float32 hz)
     Set/Get the spring frequency in hertz. Setting the frequency to zero disables the spring.
     
    -float32 GetSpringFrequencyHz () const
     
    -void SetSpringDampingRatio (float32 ratio)
     Set/Get the spring damping ratio.
     
    -float32 GetSpringDampingRatio () const
     
    -void Dump ()
     Dump to b2Log.
     
    - Public Member Functions inherited from b2Joint
    -b2JointType GetType () const
     Get the type of the concrete joint.
     
    -b2BodyGetBodyA ()
     Get the first body attached to this joint.
     
    -b2BodyGetBodyB ()
     Get the second body attached to this joint.
     
    -b2JointGetNext ()
     Get the next joint the world joint list.
     
    -const b2JointGetNext () const
     
    -void * GetUserData () const
     Get the user data pointer.
     
    -void SetUserData (void *data)
     Set the user data pointer.
     
    -bool IsActive () const
     Short-cut function to determine if either body is inactive.
     
    bool GetCollideConnected () const
     
    -virtual void ShiftOrigin (const b2Vec2 &newOrigin)
     Shift the origin for any points stored in world coordinates.
     
    - - - - - - - - - - - - -

    -Protected Member Functions

    b2WheelJoint (const b2WheelJointDef *def)
     
    -void InitVelocityConstraints (const b2SolverData &data)
     
    -void SolveVelocityConstraints (const b2SolverData &data)
     
    -bool SolvePositionConstraints (const b2SolverData &data)
     
    - Protected Member Functions inherited from b2Joint
    b2Joint (const b2JointDef *def)
     
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Protected Attributes

    -float32 m_frequencyHz
     
    -float32 m_dampingRatio
     
    -b2Vec2 m_localAnchorA
     
    -b2Vec2 m_localAnchorB
     
    -b2Vec2 m_localXAxisA
     
    -b2Vec2 m_localYAxisA
     
    -float32 m_impulse
     
    -float32 m_motorImpulse
     
    -float32 m_springImpulse
     
    -float32 m_maxMotorTorque
     
    -float32 m_motorSpeed
     
    -bool m_enableMotor
     
    -int32 m_indexA
     
    -int32 m_indexB
     
    -b2Vec2 m_localCenterA
     
    -b2Vec2 m_localCenterB
     
    -float32 m_invMassA
     
    -float32 m_invMassB
     
    -float32 m_invIA
     
    -float32 m_invIB
     
    -b2Vec2 m_ax
     
    -b2Vec2 m_ay
     
    -float32 m_sAx
     
    -float32 m_sBx
     
    -float32 m_sAy
     
    -float32 m_sBy
     
    -float32 m_mass
     
    -float32 m_motorMass
     
    -float32 m_springMass
     
    -float32 m_bias
     
    -float32 m_gamma
     
    - Protected Attributes inherited from b2Joint
    -b2JointType m_type
     
    -b2Jointm_prev
     
    -b2Jointm_next
     
    -b2JointEdge m_edgeA
     
    -b2JointEdge m_edgeB
     
    -b2Bodym_bodyA
     
    -b2Bodym_bodyB
     
    -int32 m_index
     
    -bool m_islandFlag
     
    -bool m_collideConnected
     
    -void * m_userData
     
    - - - -

    -Friends

    -class b2Joint
     
    - - - - - - -

    -Additional Inherited Members

    - Static Protected Member Functions inherited from b2Joint
    -static b2JointCreate (const b2JointDef *def, b2BlockAllocator *allocator)
     
    -static void Destroy (b2Joint *joint, b2BlockAllocator *allocator)
     
    -

    Detailed Description

    -

    A wheel joint. This joint provides two degrees of freedom: translation along an axis fixed in bodyA and rotation in the plane. You can use a joint limit to restrict the range of motion and a joint motor to drive the rotation or to model rotational friction. This joint is designed for vehicle suspensions.

    -

    The documentation for this class was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_wheel_joint.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_wheel_joint.png deleted file mode 100644 index f34fde2..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_wheel_joint.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_world-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_world-members.html deleted file mode 100644 index 94acccf..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_world-members.html +++ /dev/null @@ -1,150 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2World Member List
    -
    -
    - -

    This is the complete list of members for b2World, including all inherited members.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    b2Body (defined in b2World)b2Worldfriend
    b2ContactManager (defined in b2World)b2Worldfriend
    b2Controller (defined in b2World)b2Worldfriend
    b2Fixture (defined in b2World)b2Worldfriend
    b2World(const b2Vec2 &gravity)b2World
    ClearForces()b2World
    CreateBody(const b2BodyDef *def)b2World
    CreateJoint(const b2JointDef *def)b2World
    DestroyBody(b2Body *body)b2World
    DestroyJoint(b2Joint *joint)b2World
    DrawDebugData()b2World
    Dump()b2World
    GetAllowSleeping() const (defined in b2World)b2Worldinline
    GetAutoClearForces() const b2Worldinline
    GetBodyCount() const b2Worldinline
    GetBodyList()b2Worldinline
    GetBodyList() const (defined in b2World)b2Worldinline
    GetContactCount() const b2Worldinline
    GetContactList()b2Worldinline
    GetContactList() const (defined in b2World)b2Worldinline
    GetContactManager() const b2Worldinline
    GetContinuousPhysics() const (defined in b2World)b2Worldinline
    GetGravity() const b2Worldinline
    GetJointCount() const b2Worldinline
    GetJointList()b2Worldinline
    GetJointList() const (defined in b2World)b2Worldinline
    GetProfile() const b2Worldinline
    GetProxyCount() const b2World
    GetSubStepping() const (defined in b2World)b2Worldinline
    GetTreeBalance() const b2World
    GetTreeHeight() const b2World
    GetTreeQuality() const b2World
    GetWarmStarting() const (defined in b2World)b2Worldinline
    IsLocked() const b2Worldinline
    QueryAABB(b2QueryCallback *callback, const b2AABB &aabb) const b2World
    RayCast(b2RayCastCallback *callback, const b2Vec2 &point1, const b2Vec2 &point2) const b2World
    SetAllowSleeping(bool flag)b2World
    SetAutoClearForces(bool flag)b2Worldinline
    SetContactFilter(b2ContactFilter *filter)b2World
    SetContactListener(b2ContactListener *listener)b2World
    SetContinuousPhysics(bool flag)b2Worldinline
    SetDebugDraw(b2Draw *debugDraw)b2World
    SetDestructionListener(b2DestructionListener *listener)b2World
    SetGravity(const b2Vec2 &gravity)b2Worldinline
    SetSubStepping(bool flag)b2Worldinline
    SetWarmStarting(bool flag)b2Worldinline
    ShiftOrigin(const b2Vec2 &newOrigin)b2World
    Step(float32 timeStep, int32 velocityIterations, int32 positionIterations)b2World
    ~b2World()b2World
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_world.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_world.html deleted file mode 100644 index 8f97943..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classb2_world.html +++ /dev/null @@ -1,696 +0,0 @@ - - - - - - -Box2D: b2World Class Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2World Class Reference
    -
    -
    - -

    #include <b2World.h>

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Member Functions

     b2World (const b2Vec2 &gravity)
     
    ~b2World ()
     Destruct the world. All physics entities are destroyed and all heap memory is released.
     
    void SetDestructionListener (b2DestructionListener *listener)
     
    void SetContactFilter (b2ContactFilter *filter)
     
    void SetContactListener (b2ContactListener *listener)
     
    void SetDebugDraw (b2Draw *debugDraw)
     
    b2BodyCreateBody (const b2BodyDef *def)
     
    void DestroyBody (b2Body *body)
     
    b2JointCreateJoint (const b2JointDef *def)
     
    void DestroyJoint (b2Joint *joint)
     
    void Step (float32 timeStep, int32 velocityIterations, int32 positionIterations)
     
    void ClearForces ()
     
    -void DrawDebugData ()
     Call this to draw shapes and other debug draw data. This is intentionally non-const.
     
    void QueryAABB (b2QueryCallback *callback, const b2AABB &aabb) const
     
    void RayCast (b2RayCastCallback *callback, const b2Vec2 &point1, const b2Vec2 &point2) const
     
    b2BodyGetBodyList ()
     
    -const b2BodyGetBodyList () const
     
    b2JointGetJointList ()
     
    -const b2JointGetJointList () const
     
    b2ContactGetContactList ()
     
    -const b2ContactGetContactList () const
     
    -void SetAllowSleeping (bool flag)
     Enable/disable sleep.
     
    -bool GetAllowSleeping () const
     
    -void SetWarmStarting (bool flag)
     Enable/disable warm starting. For testing.
     
    -bool GetWarmStarting () const
     
    -void SetContinuousPhysics (bool flag)
     Enable/disable continuous physics. For testing.
     
    -bool GetContinuousPhysics () const
     
    -void SetSubStepping (bool flag)
     Enable/disable single stepped continuous physics. For testing.
     
    -bool GetSubStepping () const
     
    -int32 GetProxyCount () const
     Get the number of broad-phase proxies.
     
    -int32 GetBodyCount () const
     Get the number of bodies.
     
    -int32 GetJointCount () const
     Get the number of joints.
     
    -int32 GetContactCount () const
     Get the number of contacts (each may have 0 or more contact points).
     
    -int32 GetTreeHeight () const
     Get the height of the dynamic tree.
     
    -int32 GetTreeBalance () const
     Get the balance of the dynamic tree.
     
    float32 GetTreeQuality () const
     
    -void SetGravity (const b2Vec2 &gravity)
     Change the global gravity vector.
     
    -b2Vec2 GetGravity () const
     Get the global gravity vector.
     
    -bool IsLocked () const
     Is the world locked (in the middle of a time step).
     
    -void SetAutoClearForces (bool flag)
     Set flag to control automatic clearing of forces after each time step.
     
    -bool GetAutoClearForces () const
     Get the flag that controls automatic clearing of forces after each time step.
     
    void ShiftOrigin (const b2Vec2 &newOrigin)
     
    -const b2ContactManagerGetContactManager () const
     Get the contact manager for testing.
     
    -const b2ProfileGetProfile () const
     Get the current profile.
     
    void Dump ()
     
    - - - - - - - - - -

    -Friends

    -class b2Body
     
    -class b2Fixture
     
    -class b2ContactManager
     
    -class b2Controller
     
    -

    Detailed Description

    -

    The world class manages all physics entities, dynamic simulation, and asynchronous queries. The world also contains efficient memory management facilities.

    -

    Constructor & Destructor Documentation

    - -
    -
    - - - - - - - - -
    b2World::b2World (const b2Vec2gravity)
    -
    -

    Construct a world object.

    -
    Parameters
    - - -
    gravitythe world gravity vector.
    -
    -
    - -
    -
    -

    Member Function Documentation

    - -
    -
    - - - - - - - -
    void b2World::ClearForces ()
    -
    -

    Manually clear the force buffer on all bodies. By default, forces are cleared automatically after each call to Step. The default behavior is modified by calling SetAutoClearForces. The purpose of this function is to support sub-stepping. Sub-stepping is often used to maintain a fixed sized time step under a variable frame-rate. When you perform sub-stepping you will disable auto clearing of forces and instead call ClearForces after all sub-steps are complete in one pass of your game loop.

    -
    See Also
    SetAutoClearForces
    - -
    -
    - -
    -
    - - - - - - - - -
    b2Body * b2World::CreateBody (const b2BodyDefdef)
    -
    -

    Create a rigid body given a definition. No reference to the definition is retained.

    -
    Warning
    This function is locked during callbacks.
    - -
    -
    - -
    -
    - - - - - - - - -
    b2Joint * b2World::CreateJoint (const b2JointDefdef)
    -
    -

    Create a joint to constrain bodies together. No reference to the definition is retained. This may cause the connected bodies to cease colliding.

    -
    Warning
    This function is locked during callbacks.
    - -
    -
    - -
    -
    - - - - - - - - -
    void b2World::DestroyBody (b2Bodybody)
    -
    -

    Destroy a rigid body given a definition. No reference to the definition is retained. This function is locked during callbacks.

    -
    Warning
    This automatically deletes all associated shapes and joints.
    -
    -This function is locked during callbacks.
    - -
    -
    - -
    -
    - - - - - - - - -
    void b2World::DestroyJoint (b2Jointjoint)
    -
    -

    Destroy a joint. This may cause the connected bodies to begin colliding.

    -
    Warning
    This function is locked during callbacks.
    - -
    -
    - -
    -
    - - - - - - - -
    void b2World::Dump ()
    -
    -

    Dump the world into the log file.

    -
    Warning
    this should be called outside of a time step.
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    b2Body * b2World::GetBodyList ()
    -
    -inline
    -
    -

    Get the world body list. With the returned body, use b2Body::GetNext to get the next body in the world list. A NULL body indicates the end of the list.

    -
    Returns
    the head of the world body list.
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    b2Contact * b2World::GetContactList ()
    -
    -inline
    -
    -

    Get the world contact list. With the returned contact, use b2Contact::GetNext to get the next contact in the world list. A NULL contact indicates the end of the list.

    -
    Returns
    the head of the world contact list.
    -
    Warning
    contacts are created and destroyed in the middle of a time step. Use b2ContactListener to avoid missing contacts.
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    b2Joint * b2World::GetJointList ()
    -
    -inline
    -
    -

    Get the world joint list. With the returned joint, use b2Joint::GetNext to get the next joint in the world list. A NULL joint indicates the end of the list.

    -
    Returns
    the head of the world joint list.
    - -
    -
    - -
    -
    - - - - - - - -
    float32 b2World::GetTreeQuality () const
    -
    -

    Get the quality metric of the dynamic tree. The smaller the better. The minimum is 1.

    - -
    -
    - -
    -
    - - - - - - - - - - - - - - - - - - -
    void b2World::QueryAABB (b2QueryCallbackcallback,
    const b2AABBaabb 
    ) const
    -
    -

    Query the world for all fixtures that potentially overlap the provided AABB.

    -
    Parameters
    - - - -
    callbacka user implemented callback class.
    aabbthe query box.
    -
    -
    - -
    -
    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    void b2World::RayCast (b2RayCastCallbackcallback,
    const b2Vec2point1,
    const b2Vec2point2 
    ) const
    -
    -

    Ray-cast the world for all fixtures in the path of the ray. Your callback controls whether you get the closest point, any point, or n-points. The ray-cast ignores shapes that contain the starting point.

    -
    Parameters
    - - - - -
    callbacka user implemented callback class.
    point1the ray starting point
    point2the ray ending point
    -
    -
    - -
    -
    - -
    -
    - - - - - - - - -
    void b2World::SetContactFilter (b2ContactFilterfilter)
    -
    -

    Register a contact filter to provide specific control over collision. Otherwise the default filter is used (b2_defaultFilter). The listener is owned by you and must remain in scope.

    - -
    -
    - -
    -
    - - - - - - - - -
    void b2World::SetContactListener (b2ContactListenerlistener)
    -
    -

    Register a contact event listener. The listener is owned by you and must remain in scope.

    - -
    -
    - -
    -
    - - - - - - - - -
    void b2World::SetDebugDraw (b2DrawdebugDraw)
    -
    -

    Register a routine for debug drawing. The debug draw functions are called inside with b2World::DrawDebugData method. The debug draw object is owned by you and must remain in scope.

    - -
    -
    - -
    -
    - - - - - - - - -
    void b2World::SetDestructionListener (b2DestructionListenerlistener)
    -
    -

    Register a destruction listener. The listener is owned by you and must remain in scope.

    - -
    -
    - -
    -
    - - - - - - - - -
    void b2World::ShiftOrigin (const b2Vec2newOrigin)
    -
    -

    Shift the world origin. Useful for large worlds. The body shift formula is: position -= newOrigin

    -
    Parameters
    - - -
    newOriginthe new origin with respect to the old origin
    -
    -
    - -
    -
    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    void b2World::Step (float32 timeStep,
    int32 velocityIterations,
    int32 positionIterations 
    )
    -
    -

    Take a time step. This performs collision detection, integration, and constraint solution.

    -
    Parameters
    - - - - -
    timeStepthe amount of time to simulate, this should not vary.
    velocityIterationsfor the velocity constraint solver.
    positionIterationsfor the position constraint solver.
    -
    -
    - -
    -
    -
    The documentation for this class was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classes.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classes.html deleted file mode 100644 index abaaa44..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/classes.html +++ /dev/null @@ -1,128 +0,0 @@ - - - - - - -Box2D: Class Index - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - -
    - - - - -
    - -
    - -
    -
    -
    Class Index
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - -
      B  
    -
    b2ContactPositionConstraint   b2GearJoint   b2PrismaticJointDef   b2Sweep   
    b2ContactRegister   b2GearJointDef   b2Profile   b2TempPolygon   
    b2AABB   b2ContactSolver   b2GrowableStack   b2PulleyJoint   b2Timer   
    b2Block   b2ContactSolverDef   b2Island   b2PulleyJointDef   b2TimeStep   
    b2BlockAllocator   b2ContactVelocityConstraint   b2Jacobian   b2QueryCallback   b2TOIInput   
    b2Body   b2DestructionListener   b2Joint   b2RayCastCallback   b2TOIOutput   
    b2BodyDef   b2DistanceInput   b2JointDef   b2RayCastInput   b2Transform   
    b2BroadPhase   b2DistanceJoint   b2JointEdge   b2RayCastOutput   b2TreeNode   
    b2ChainAndCircleContact   b2DistanceJointDef   b2Manifold   b2ReferenceFace   b2Vec2   
    b2ChainAndPolygonContact   b2DistanceOutput   b2ManifoldPoint   b2RevoluteJoint   b2Vec3   
    b2ChainShape   b2DistanceProxy   b2MassData   b2RevoluteJointDef   b2Velocity   
    b2Chunk   b2Draw   b2Mat22   b2Rope   b2VelocityConstraintPoint   
    b2CircleContact   b2DynamicTree   b2Mat33   b2RopeDef   b2Version   
    b2CircleShape   b2EdgeAndCircleContact   b2MotorJoint   b2RopeJoint   b2WeldJoint   
    b2ClipVertex   b2EdgeAndPolygonContact   b2MotorJointDef   b2RopeJointDef   b2WeldJointDef   
    b2Color   b2EdgeShape   b2MouseJoint   b2Rot   b2WheelJoint   
    b2Contact   b2EPAxis   b2MouseJointDef   b2SeparationFunction   b2WheelJointDef   
    b2ContactEdge   b2EPCollider   b2Pair   b2Shape   b2World   
    b2ContactFeature   b2Filter   b2PolygonAndCircleContact   b2Simplex   b2WorldManifold   
    b2ContactFilter   b2Fixture   b2PolygonContact   b2SimplexCache   b2WorldQueryWrapper   
    b2ContactID   b2FixtureDef   b2PolygonShape   b2SimplexVertex   b2WorldRayCastWrapper   
    b2ContactImpulse   b2FixtureProxy   b2Position   b2SolverData   
    b2ContactListener   b2FrictionJoint   b2PositionSolverManifold   b2StackAllocator   
    b2ContactManager   b2FrictionJointDef   b2PrismaticJoint   b2StackEntry   
    - -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/closed.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/closed.png deleted file mode 100644 index 98cc2c9..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/closed.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/dir_2b0aaca8962b4c18f14a1e758f920130.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/dir_2b0aaca8962b4c18f14a1e758f920130.html deleted file mode 100644 index 8895df3..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/dir_2b0aaca8962b4c18f14a1e758f920130.html +++ /dev/null @@ -1,116 +0,0 @@ - - - - - - -Box2D: Shapes Directory Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - -
    - -
    - - -
    -
    -
    -
    Shapes Directory Reference
    -
    -
    - - - - - - - - - - - - - - - - - - - - -

    -Files

    file  b2ChainShape.cpp
     
    file  b2ChainShape.h [code]
     
    file  b2CircleShape.cpp
     
    file  b2CircleShape.h [code]
     
    file  b2EdgeShape.cpp
     
    file  b2EdgeShape.h [code]
     
    file  b2PolygonShape.cpp
     
    file  b2PolygonShape.h [code]
     
    file  b2Shape.h [code]
     
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/dir_2bb440aa7e31c6a1fa7299279b8cd0fb.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/dir_2bb440aa7e31c6a1fa7299279b8cd0fb.html deleted file mode 100644 index c320df1..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/dir_2bb440aa7e31c6a1fa7299279b8cd0fb.html +++ /dev/null @@ -1,124 +0,0 @@ - - - - - - -Box2D: Common Directory Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - -
    - -
    - - -
    -
    -
    -
    Common Directory Reference
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Files

    file  b2BlockAllocator.cpp
     
    file  b2BlockAllocator.h [code]
     
    file  b2Draw.cpp
     
    file  b2Draw.h [code]
     
    file  b2GrowableStack.h [code]
     
    file  b2Math.cpp
     
    file  b2Math.h [code]
     
    file  b2Settings.cpp
     
    file  b2Settings.h [code]
     
    file  b2StackAllocator.cpp
     
    file  b2StackAllocator.h [code]
     
    file  b2Timer.cpp
     
    file  b2Timer.h [code]
     
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/dir_54cad791c4d2b04cb4a0ba0bba686f79.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/dir_54cad791c4d2b04cb4a0ba0bba686f79.html deleted file mode 100644 index dde4255..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/dir_54cad791c4d2b04cb4a0ba0bba686f79.html +++ /dev/null @@ -1,131 +0,0 @@ - - - - - - -Box2D: Dynamics Directory Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - -
    - -
    - - -
    -
    -
    -
    Dynamics Directory Reference
    -
    -
    - - - - - - -

    -Directories

    directory  Contacts
     
    directory  Joints
     
    - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Files

    file  b2Body.cpp
     
    file  b2Body.h [code]
     
    file  b2ContactManager.cpp
     
    file  b2ContactManager.h [code]
     
    file  b2Fixture.cpp
     
    file  b2Fixture.h [code]
     
    file  b2Island.cpp
     
    file  b2Island.h [code]
     
    file  b2TimeStep.h [code]
     
    file  b2World.cpp
     
    file  b2World.h [code]
     
    file  b2WorldCallbacks.cpp
     
    file  b2WorldCallbacks.h [code]
     
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/dir_6d0481e1d3c0616ecae75ec35bddf767.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/dir_6d0481e1d3c0616ecae75ec35bddf767.html deleted file mode 100644 index 9069274..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/dir_6d0481e1d3c0616ecae75ec35bddf767.html +++ /dev/null @@ -1,134 +0,0 @@ - - - - - - -Box2D: Contacts Directory Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - -
    - -
    - - -
    -
    -
    -
    Contacts Directory Reference
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Files

    file  b2ChainAndCircleContact.cpp
     
    file  b2ChainAndCircleContact.h [code]
     
    file  b2ChainAndPolygonContact.cpp
     
    file  b2ChainAndPolygonContact.h [code]
     
    file  b2CircleContact.cpp
     
    file  b2CircleContact.h [code]
     
    file  b2Contact.cpp
     
    file  b2Contact.h [code]
     
    file  b2ContactSolver.cpp
     
    file  b2ContactSolver.h [code]
     
    file  b2EdgeAndCircleContact.cpp
     
    file  b2EdgeAndCircleContact.h [code]
     
    file  b2EdgeAndPolygonContact.cpp
     
    file  b2EdgeAndPolygonContact.h [code]
     
    file  b2PolygonAndCircleContact.cpp
     
    file  b2PolygonAndCircleContact.h [code]
     
    file  b2PolygonContact.cpp
     
    file  b2PolygonContact.h [code]
     
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/dir_a7f953fea4e008d17e00594b3bbaff29.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/dir_a7f953fea4e008d17e00594b3bbaff29.html deleted file mode 100644 index a99e87d..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/dir_a7f953fea4e008d17e00594b3bbaff29.html +++ /dev/null @@ -1,111 +0,0 @@ - - - - - - -Box2D: Box2D Directory Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - -
    - -
    - - -
    -
    -
    -
    Box2D Directory Reference
    -
    -
    - - - - - - - - - - -

    -Directories

    directory  Collision
     
    directory  Common
     
    directory  Dynamics
     
    directory  Rope
     
    - - - -

    -Files

    file  Box2D.h [code]
     
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/dir_b4ce54b79b9fedd1c216c802993ffbe1.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/dir_b4ce54b79b9fedd1c216c802993ffbe1.html deleted file mode 100644 index 1eb5d52..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/dir_b4ce54b79b9fedd1c216c802993ffbe1.html +++ /dev/null @@ -1,146 +0,0 @@ - - - - - - -Box2D: Joints Directory Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - -
    - -
    - - -
    -
    -
    -
    Joints Directory Reference
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Files

    file  b2DistanceJoint.cpp
     
    file  b2DistanceJoint.h [code]
     
    file  b2FrictionJoint.cpp
     
    file  b2FrictionJoint.h [code]
     
    file  b2GearJoint.cpp
     
    file  b2GearJoint.h [code]
     
    file  b2Joint.cpp
     
    file  b2Joint.h [code]
     
    file  b2MotorJoint.cpp
     
    file  b2MotorJoint.h [code]
     
    file  b2MouseJoint.cpp
     
    file  b2MouseJoint.h [code]
     
    file  b2PrismaticJoint.cpp
     
    file  b2PrismaticJoint.h [code]
     
    file  b2PulleyJoint.cpp
     
    file  b2PulleyJoint.h [code]
     
    file  b2RevoluteJoint.cpp
     
    file  b2RevoluteJoint.h [code]
     
    file  b2RopeJoint.cpp
     
    file  b2RopeJoint.h [code]
     
    file  b2WeldJoint.cpp
     
    file  b2WeldJoint.h [code]
     
    file  b2WheelJoint.cpp
     
    file  b2WheelJoint.h [code]
     
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/dir_f938a2b4566b4bd7e1dc8e6edc30956c.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/dir_f938a2b4566b4bd7e1dc8e6edc30956c.html deleted file mode 100644 index 1e75ec8..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/dir_f938a2b4566b4bd7e1dc8e6edc30956c.html +++ /dev/null @@ -1,129 +0,0 @@ - - - - - - -Box2D: Collision Directory Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - -
    - -
    - - -
    -
    -
    -
    Collision Directory Reference
    -
    -
    - - - - -

    -Directories

    directory  Shapes
     
    - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Files

    file  b2BroadPhase.cpp
     
    file  b2BroadPhase.h [code]
     
    file  b2CollideCircle.cpp
     
    file  b2CollideEdge.cpp
     
    file  b2CollidePolygon.cpp
     
    file  b2Collision.cpp
     
    file  b2Collision.h [code]
     
    file  b2Distance.cpp
     
    file  b2Distance.h [code]
     
    file  b2DynamicTree.cpp
     
    file  b2DynamicTree.h [code]
     
    file  b2TimeOfImpact.cpp
     
    file  b2TimeOfImpact.h [code]
     
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/dir_fe69815ec5df867d8480807c50df8353.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/dir_fe69815ec5df867d8480807c50df8353.html deleted file mode 100644 index 3af2314..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/dir_fe69815ec5df867d8480807c50df8353.html +++ /dev/null @@ -1,102 +0,0 @@ - - - - - - -Box2D: Rope Directory Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - -
    - -
    - - -
    -
    -
    -
    Rope Directory Reference
    -
    -
    - - - - - - -

    -Files

    file  b2Rope.cpp
     
    file  b2Rope.h [code]
     
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/doxygen.css b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/doxygen.css deleted file mode 100644 index 4699e69..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/doxygen.css +++ /dev/null @@ -1,1357 +0,0 @@ -/* The standard CSS for doxygen 1.8.5 */ - -body, table, div, p, dl { - font: 400 14px/22px Roboto,sans-serif; -} - -/* @group Heading Levels */ - -h1.groupheader { - font-size: 150%; -} - -.title { - font: 400 14px/28px Roboto,sans-serif; - font-size: 150%; - font-weight: bold; - margin: 10px 2px; -} - -h2.groupheader { - border-bottom: 1px solid #879ECB; - color: #354C7B; - font-size: 150%; - font-weight: normal; - margin-top: 1.75em; - padding-top: 8px; - padding-bottom: 4px; - width: 100%; -} - -h3.groupheader { - font-size: 100%; -} - -h1, h2, h3, h4, h5, h6 { - -webkit-transition: text-shadow 0.5s linear; - -moz-transition: text-shadow 0.5s linear; - -ms-transition: text-shadow 0.5s linear; - -o-transition: text-shadow 0.5s linear; - transition: text-shadow 0.5s linear; - margin-right: 15px; -} - -h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow { - text-shadow: 0 0 15px cyan; -} - -dt { - font-weight: bold; -} - -div.multicol { - -moz-column-gap: 1em; - -webkit-column-gap: 1em; - -moz-column-count: 3; - -webkit-column-count: 3; -} - -p.startli, p.startdd, p.starttd { - margin-top: 2px; -} - -p.endli { - margin-bottom: 0px; -} - -p.enddd { - margin-bottom: 4px; -} - -p.endtd { - margin-bottom: 2px; -} - -/* @end */ - -caption { - font-weight: bold; -} - -span.legend { - font-size: 70%; - text-align: center; -} - -h3.version { - font-size: 90%; - text-align: center; -} - -div.qindex, div.navtab{ - background-color: #EBEFF6; - border: 1px solid #A3B4D7; - text-align: center; -} - -div.qindex, div.navpath { - width: 100%; - line-height: 140%; -} - -div.navtab { - margin-right: 15px; -} - -/* @group Link Styling */ - -a { - color: #3D578C; - font-weight: normal; - text-decoration: none; -} - -.contents a:visited { - color: #4665A2; -} - -a:hover { - text-decoration: underline; -} - -a.qindex { - font-weight: bold; -} - -a.qindexHL { - font-weight: bold; - background-color: #9CAFD4; - color: #ffffff; - border: 1px double #869DCA; -} - -.contents a.qindexHL:visited { - color: #ffffff; -} - -a.el { - font-weight: bold; -} - -a.elRef { -} - -a.code, a.code:visited, a.line, a.line:visited { - color: #4665A2; -} - -a.codeRef, a.codeRef:visited, a.lineRef, a.lineRef:visited { - color: #4665A2; -} - -/* @end */ - -dl.el { - margin-left: -1cm; -} - -pre.fragment { - border: 1px solid #C4CFE5; - background-color: #FBFCFD; - padding: 4px 6px; - margin: 4px 8px 4px 2px; - overflow: auto; - word-wrap: break-word; - font-size: 9pt; - line-height: 125%; - font-family: monospace, fixed; - font-size: 105%; -} - -div.fragment { - padding: 0px; - margin: 0px; - background-color: #FBFCFD; - border: 1px solid #C4CFE5; -} - -div.line { - font-family: monospace, fixed; - font-size: 13px; - min-height: 13px; - line-height: 1.0; - text-wrap: unrestricted; - white-space: -moz-pre-wrap; /* Moz */ - white-space: -pre-wrap; /* Opera 4-6 */ - white-space: -o-pre-wrap; /* Opera 7 */ - white-space: pre-wrap; /* CSS3 */ - word-wrap: break-word; /* IE 5.5+ */ - text-indent: -53px; - padding-left: 53px; - padding-bottom: 0px; - margin: 0px; - -webkit-transition-property: background-color, box-shadow; - -webkit-transition-duration: 0.5s; - -moz-transition-property: background-color, box-shadow; - -moz-transition-duration: 0.5s; - -ms-transition-property: background-color, box-shadow; - -ms-transition-duration: 0.5s; - -o-transition-property: background-color, box-shadow; - -o-transition-duration: 0.5s; - transition-property: background-color, box-shadow; - transition-duration: 0.5s; -} - -div.line.glow { - background-color: cyan; - box-shadow: 0 0 10px cyan; -} - - -span.lineno { - padding-right: 4px; - text-align: right; - border-right: 2px solid #0F0; - background-color: #E8E8E8; - white-space: pre; -} -span.lineno a { - background-color: #D8D8D8; -} - -span.lineno a:hover { - background-color: #C8C8C8; -} - -div.ah { - background-color: black; - font-weight: bold; - color: #ffffff; - margin-bottom: 3px; - margin-top: 3px; - padding: 0.2em; - border: solid thin #333; - border-radius: 0.5em; - -webkit-border-radius: .5em; - -moz-border-radius: .5em; - box-shadow: 2px 2px 3px #999; - -webkit-box-shadow: 2px 2px 3px #999; - -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; - background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444)); - background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000); -} - -div.groupHeader { - margin-left: 16px; - margin-top: 12px; - font-weight: bold; -} - -div.groupText { - margin-left: 16px; - font-style: italic; -} - -body { - background-color: white; - color: black; - margin: 0; -} - -div.contents { - margin-top: 10px; - margin-left: 12px; - margin-right: 8px; -} - -td.indexkey { - background-color: #EBEFF6; - font-weight: bold; - border: 1px solid #C4CFE5; - margin: 2px 0px 2px 0; - padding: 2px 10px; - white-space: nowrap; - vertical-align: top; -} - -td.indexvalue { - background-color: #EBEFF6; - border: 1px solid #C4CFE5; - padding: 2px 10px; - margin: 2px 0px; -} - -tr.memlist { - background-color: #EEF1F7; -} - -p.formulaDsp { - text-align: center; -} - -img.formulaDsp { - -} - -img.formulaInl { - vertical-align: middle; -} - -div.center { - text-align: center; - margin-top: 0px; - margin-bottom: 0px; - padding: 0px; -} - -div.center img { - border: 0px; -} - -address.footer { - text-align: right; - padding-right: 12px; -} - -img.footer { - border: 0px; - vertical-align: middle; -} - -/* @group Code Colorization */ - -span.keyword { - color: #008000 -} - -span.keywordtype { - color: #604020 -} - -span.keywordflow { - color: #e08000 -} - -span.comment { - color: #800000 -} - -span.preprocessor { - color: #806020 -} - -span.stringliteral { - color: #002080 -} - -span.charliteral { - color: #008080 -} - -span.vhdldigit { - color: #ff00ff -} - -span.vhdlchar { - color: #000000 -} - -span.vhdlkeyword { - color: #700070 -} - -span.vhdllogic { - color: #ff0000 -} - -blockquote { - background-color: #F7F8FB; - border-left: 2px solid #9CAFD4; - margin: 0 24px 0 4px; - padding: 0 12px 0 16px; -} - -/* @end */ - -/* -.search { - color: #003399; - font-weight: bold; -} - -form.search { - margin-bottom: 0px; - margin-top: 0px; -} - -input.search { - font-size: 75%; - color: #000080; - font-weight: normal; - background-color: #e8eef2; -} -*/ - -td.tiny { - font-size: 75%; -} - -.dirtab { - padding: 4px; - border-collapse: collapse; - border: 1px solid #A3B4D7; -} - -th.dirtab { - background: #EBEFF6; - font-weight: bold; -} - -hr { - height: 0px; - border: none; - border-top: 1px solid #4A6AAA; -} - -hr.footer { - height: 1px; -} - -/* @group Member Descriptions */ - -table.memberdecls { - border-spacing: 0px; - padding: 0px; -} - -.memberdecls td, .fieldtable tr { - -webkit-transition-property: background-color, box-shadow; - -webkit-transition-duration: 0.5s; - -moz-transition-property: background-color, box-shadow; - -moz-transition-duration: 0.5s; - -ms-transition-property: background-color, box-shadow; - -ms-transition-duration: 0.5s; - -o-transition-property: background-color, box-shadow; - -o-transition-duration: 0.5s; - transition-property: background-color, box-shadow; - transition-duration: 0.5s; -} - -.memberdecls td.glow, .fieldtable tr.glow { - background-color: cyan; - box-shadow: 0 0 15px cyan; -} - -.mdescLeft, .mdescRight, -.memItemLeft, .memItemRight, -.memTemplItemLeft, .memTemplItemRight, .memTemplParams { - background-color: #F9FAFC; - border: none; - margin: 4px; - padding: 1px 0 0 8px; -} - -.mdescLeft, .mdescRight { - padding: 0px 8px 4px 8px; - color: #555; -} - -.memSeparator { - border-bottom: 1px solid #DEE4F0; - line-height: 1px; - margin: 0px; - padding: 0px; -} - -.memItemLeft, .memTemplItemLeft { - white-space: nowrap; -} - -.memItemRight { - width: 100%; -} - -.memTemplParams { - color: #4665A2; - white-space: nowrap; - font-size: 80%; -} - -/* @end */ - -/* @group Member Details */ - -/* Styles for detailed member documentation */ - -.memtemplate { - font-size: 80%; - color: #4665A2; - font-weight: normal; - margin-left: 9px; -} - -.memnav { - background-color: #EBEFF6; - border: 1px solid #A3B4D7; - text-align: center; - margin: 2px; - margin-right: 15px; - padding: 2px; -} - -.mempage { - width: 100%; -} - -.memitem { - padding: 0; - margin-bottom: 10px; - margin-right: 5px; - -webkit-transition: box-shadow 0.5s linear; - -moz-transition: box-shadow 0.5s linear; - -ms-transition: box-shadow 0.5s linear; - -o-transition: box-shadow 0.5s linear; - transition: box-shadow 0.5s linear; - display: table !important; - width: 100%; -} - -.memitem.glow { - box-shadow: 0 0 15px cyan; -} - -.memname { - font-weight: bold; - margin-left: 6px; -} - -.memname td { - vertical-align: bottom; -} - -.memproto, dl.reflist dt { - border-top: 1px solid #A8B8D9; - border-left: 1px solid #A8B8D9; - border-right: 1px solid #A8B8D9; - padding: 6px 0px 6px 0px; - color: #253555; - font-weight: bold; - text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); - background-image:url('nav_f.png'); - background-repeat:repeat-x; - background-color: #E2E8F2; - /* opera specific markup */ - box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); - border-top-right-radius: 4px; - border-top-left-radius: 4px; - /* firefox specific markup */ - -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; - -moz-border-radius-topright: 4px; - -moz-border-radius-topleft: 4px; - /* webkit specific markup */ - -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); - -webkit-border-top-right-radius: 4px; - -webkit-border-top-left-radius: 4px; - -} - -.memdoc, dl.reflist dd { - border-bottom: 1px solid #A8B8D9; - border-left: 1px solid #A8B8D9; - border-right: 1px solid #A8B8D9; - padding: 6px 10px 2px 10px; - background-color: #FBFCFD; - border-top-width: 0; - background-image:url('nav_g.png'); - background-repeat:repeat-x; - background-color: #FFFFFF; - /* opera specific markup */ - border-bottom-left-radius: 4px; - border-bottom-right-radius: 4px; - box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); - /* firefox specific markup */ - -moz-border-radius-bottomleft: 4px; - -moz-border-radius-bottomright: 4px; - -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; - /* webkit specific markup */ - -webkit-border-bottom-left-radius: 4px; - -webkit-border-bottom-right-radius: 4px; - -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); -} - -dl.reflist dt { - padding: 5px; -} - -dl.reflist dd { - margin: 0px 0px 10px 0px; - padding: 5px; -} - -.paramkey { - text-align: right; -} - -.paramtype { - white-space: nowrap; -} - -.paramname { - color: #602020; - white-space: nowrap; -} -.paramname em { - font-style: normal; -} -.paramname code { - line-height: 14px; -} - -.params, .retval, .exception, .tparams { - margin-left: 0px; - padding-left: 0px; -} - -.params .paramname, .retval .paramname { - font-weight: bold; - vertical-align: top; -} - -.params .paramtype { - font-style: italic; - vertical-align: top; -} - -.params .paramdir { - font-family: "courier new",courier,monospace; - vertical-align: top; -} - -table.mlabels { - border-spacing: 0px; -} - -td.mlabels-left { - width: 100%; - padding: 0px; -} - -td.mlabels-right { - vertical-align: bottom; - padding: 0px; - white-space: nowrap; -} - -span.mlabels { - margin-left: 8px; -} - -span.mlabel { - background-color: #728DC1; - border-top:1px solid #5373B4; - border-left:1px solid #5373B4; - border-right:1px solid #C4CFE5; - border-bottom:1px solid #C4CFE5; - text-shadow: none; - color: white; - margin-right: 4px; - padding: 2px 3px; - border-radius: 3px; - font-size: 7pt; - white-space: nowrap; - vertical-align: middle; -} - - - -/* @end */ - -/* these are for tree view when not used as main index */ - -div.directory { - margin: 10px 0px; - border-top: 1px solid #A8B8D9; - border-bottom: 1px solid #A8B8D9; - width: 100%; -} - -.directory table { - border-collapse:collapse; -} - -.directory td { - margin: 0px; - padding: 0px; - vertical-align: top; -} - -.directory td.entry { - white-space: nowrap; - padding-right: 6px; - padding-top: 3px; -} - -.directory td.entry a { - outline:none; -} - -.directory td.entry a img { - border: none; -} - -.directory td.desc { - width: 100%; - padding-left: 6px; - padding-right: 6px; - padding-top: 3px; - border-left: 1px solid rgba(0,0,0,0.05); -} - -.directory tr.even { - padding-left: 6px; - background-color: #F7F8FB; -} - -.directory img { - vertical-align: -30%; -} - -.directory .levels { - white-space: nowrap; - width: 100%; - text-align: right; - font-size: 9pt; -} - -.directory .levels span { - cursor: pointer; - padding-left: 2px; - padding-right: 2px; - color: #3D578C; -} - -div.dynheader { - margin-top: 8px; - -webkit-touch-callout: none; - -webkit-user-select: none; - -khtml-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; -} - -address { - font-style: normal; - color: #2A3D61; -} - -table.doxtable { - border-collapse:collapse; - margin-top: 4px; - margin-bottom: 4px; -} - -table.doxtable td, table.doxtable th { - border: 1px solid #2D4068; - padding: 3px 7px 2px; -} - -table.doxtable th { - background-color: #374F7F; - color: #FFFFFF; - font-size: 110%; - padding-bottom: 4px; - padding-top: 5px; -} - -table.fieldtable { - /*width: 100%;*/ - margin-bottom: 10px; - border: 1px solid #A8B8D9; - border-spacing: 0px; - -moz-border-radius: 4px; - -webkit-border-radius: 4px; - border-radius: 4px; - -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; - -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); - box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); -} - -.fieldtable td, .fieldtable th { - padding: 3px 7px 2px; -} - -.fieldtable td.fieldtype, .fieldtable td.fieldname { - white-space: nowrap; - border-right: 1px solid #A8B8D9; - border-bottom: 1px solid #A8B8D9; - vertical-align: top; -} - -.fieldtable td.fieldname { - padding-top: 3px; -} - -.fieldtable td.fielddoc { - border-bottom: 1px solid #A8B8D9; - /*width: 100%;*/ -} - -.fieldtable td.fielddoc p:first-child { - margin-top: 0px; -} - -.fieldtable td.fielddoc p:last-child { - margin-bottom: 2px; -} - -.fieldtable tr:last-child td { - border-bottom: none; -} - -.fieldtable th { - background-image:url('nav_f.png'); - background-repeat:repeat-x; - background-color: #E2E8F2; - font-size: 90%; - color: #253555; - padding-bottom: 4px; - padding-top: 5px; - text-align:left; - -moz-border-radius-topleft: 4px; - -moz-border-radius-topright: 4px; - -webkit-border-top-left-radius: 4px; - -webkit-border-top-right-radius: 4px; - border-top-left-radius: 4px; - border-top-right-radius: 4px; - border-bottom: 1px solid #A8B8D9; -} - - -.tabsearch { - top: 0px; - left: 10px; - height: 36px; - background-image: url('tab_b.png'); - z-index: 101; - overflow: hidden; - font-size: 13px; -} - -.navpath ul -{ - font-size: 11px; - background-image:url('tab_b.png'); - background-repeat:repeat-x; - background-position: 0 -5px; - height:30px; - line-height:30px; - color:#8AA0CC; - border:solid 1px #C2CDE4; - overflow:hidden; - margin:0px; - padding:0px; -} - -.navpath li -{ - list-style-type:none; - float:left; - padding-left:10px; - padding-right:15px; - background-image:url('bc_s.png'); - background-repeat:no-repeat; - background-position:right; - color:#364D7C; -} - -.navpath li.navelem a -{ - height:32px; - display:block; - text-decoration: none; - outline: none; - color: #283A5D; - font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; - text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); - text-decoration: none; -} - -.navpath li.navelem a:hover -{ - color:#6884BD; -} - -.navpath li.footer -{ - list-style-type:none; - float:right; - padding-left:10px; - padding-right:15px; - background-image:none; - background-repeat:no-repeat; - background-position:right; - color:#364D7C; - font-size: 8pt; -} - - -div.summary -{ - float: right; - font-size: 8pt; - padding-right: 5px; - width: 50%; - text-align: right; -} - -div.summary a -{ - white-space: nowrap; -} - -div.ingroups -{ - font-size: 8pt; - width: 50%; - text-align: left; -} - -div.ingroups a -{ - white-space: nowrap; -} - -div.header -{ - background-image:url('nav_h.png'); - background-repeat:repeat-x; - background-color: #F9FAFC; - margin: 0px; - border-bottom: 1px solid #C4CFE5; -} - -div.headertitle -{ - padding: 5px 5px 5px 10px; -} - -dl -{ - padding: 0 0 0 10px; -} - -/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug */ -dl.section -{ - margin-left: 0px; - padding-left: 0px; -} - -dl.note -{ - margin-left:-7px; - padding-left: 3px; - border-left:4px solid; - border-color: #D0C000; -} - -dl.warning, dl.attention -{ - margin-left:-7px; - padding-left: 3px; - border-left:4px solid; - border-color: #FF0000; -} - -dl.pre, dl.post, dl.invariant -{ - margin-left:-7px; - padding-left: 3px; - border-left:4px solid; - border-color: #00D000; -} - -dl.deprecated -{ - margin-left:-7px; - padding-left: 3px; - border-left:4px solid; - border-color: #505050; -} - -dl.todo -{ - margin-left:-7px; - padding-left: 3px; - border-left:4px solid; - border-color: #00C0E0; -} - -dl.test -{ - margin-left:-7px; - padding-left: 3px; - border-left:4px solid; - border-color: #3030E0; -} - -dl.bug -{ - margin-left:-7px; - padding-left: 3px; - border-left:4px solid; - border-color: #C08050; -} - -dl.section dd { - margin-bottom: 6px; -} - - -#projectlogo -{ - text-align: center; - vertical-align: bottom; - border-collapse: separate; -} - -#projectlogo img -{ - border: 0px none; -} - -#projectname -{ - font: 300% Tahoma, Arial,sans-serif; - margin: 0px; - padding: 2px 0px; -} - -#projectbrief -{ - font: 120% Tahoma, Arial,sans-serif; - margin: 0px; - padding: 0px; -} - -#projectnumber -{ - font: 50% Tahoma, Arial,sans-serif; - margin: 0px; - padding: 0px; -} - -#titlearea -{ - padding: 0px; - margin: 0px; - width: 100%; - border-bottom: 1px solid #5373B4; -} - -.image -{ - text-align: center; -} - -.dotgraph -{ - text-align: center; -} - -.mscgraph -{ - text-align: center; -} - -.caption -{ - font-weight: bold; -} - -div.zoom -{ - border: 1px solid #90A5CE; -} - -dl.citelist { - margin-bottom:50px; -} - -dl.citelist dt { - color:#334975; - float:left; - font-weight:bold; - margin-right:10px; - padding:5px; -} - -dl.citelist dd { - margin:2px 0; - padding:5px 0; -} - -div.toc { - padding: 14px 25px; - background-color: #F4F6FA; - border: 1px solid #D8DFEE; - border-radius: 7px 7px 7px 7px; - float: right; - height: auto; - margin: 0 20px 10px 10px; - width: 200px; -} - -div.toc li { - background: url("bdwn.png") no-repeat scroll 0 5px transparent; - font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif; - margin-top: 5px; - padding-left: 10px; - padding-top: 2px; -} - -div.toc h3 { - font: bold 12px/1.2 Arial,FreeSans,sans-serif; - color: #4665A2; - border-bottom: 0 none; - margin: 0; -} - -div.toc ul { - list-style: none outside none; - border: medium none; - padding: 0px; -} - -div.toc li.level1 { - margin-left: 0px; -} - -div.toc li.level2 { - margin-left: 15px; -} - -div.toc li.level3 { - margin-left: 30px; -} - -div.toc li.level4 { - margin-left: 45px; -} - -.inherit_header { - font-weight: bold; - color: gray; - cursor: pointer; - -webkit-touch-callout: none; - -webkit-user-select: none; - -khtml-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; -} - -.inherit_header td { - padding: 6px 0px 2px 5px; -} - -.inherit { - display: none; -} - -tr.heading h2 { - margin-top: 12px; - margin-bottom: 4px; -} - -/* tooltip related style info */ - -.ttc { - position: absolute; - display: none; -} - -#powerTip { - cursor: default; - white-space: nowrap; - background-color: white; - border: 1px solid gray; - border-radius: 4px 4px 4px 4px; - box-shadow: 1px 1px 7px gray; - display: none; - font-size: smaller; - max-width: 80%; - opacity: 0.9; - padding: 1ex 1em 1em; - position: absolute; - z-index: 2147483647; -} - -#powerTip div.ttdoc { - color: grey; - font-style: italic; -} - -#powerTip div.ttname a { - font-weight: bold; -} - -#powerTip div.ttname { - font-weight: bold; -} - -#powerTip div.ttdeci { - color: #006318; -} - -#powerTip div { - margin: 0px; - padding: 0px; - font: 12px/16px Roboto,sans-serif; -} - -#powerTip:before, #powerTip:after { - content: ""; - position: absolute; - margin: 0px; -} - -#powerTip.n:after, #powerTip.n:before, -#powerTip.s:after, #powerTip.s:before, -#powerTip.w:after, #powerTip.w:before, -#powerTip.e:after, #powerTip.e:before, -#powerTip.ne:after, #powerTip.ne:before, -#powerTip.se:after, #powerTip.se:before, -#powerTip.nw:after, #powerTip.nw:before, -#powerTip.sw:after, #powerTip.sw:before { - border: solid transparent; - content: " "; - height: 0; - width: 0; - position: absolute; -} - -#powerTip.n:after, #powerTip.s:after, -#powerTip.w:after, #powerTip.e:after, -#powerTip.nw:after, #powerTip.ne:after, -#powerTip.sw:after, #powerTip.se:after { - border-color: rgba(255, 255, 255, 0); -} - -#powerTip.n:before, #powerTip.s:before, -#powerTip.w:before, #powerTip.e:before, -#powerTip.nw:before, #powerTip.ne:before, -#powerTip.sw:before, #powerTip.se:before { - border-color: rgba(128, 128, 128, 0); -} - -#powerTip.n:after, #powerTip.n:before, -#powerTip.ne:after, #powerTip.ne:before, -#powerTip.nw:after, #powerTip.nw:before { - top: 100%; -} - -#powerTip.n:after, #powerTip.ne:after, #powerTip.nw:after { - border-top-color: #ffffff; - border-width: 10px; - margin: 0px -10px; -} -#powerTip.n:before { - border-top-color: #808080; - border-width: 11px; - margin: 0px -11px; -} -#powerTip.n:after, #powerTip.n:before { - left: 50%; -} - -#powerTip.nw:after, #powerTip.nw:before { - right: 14px; -} - -#powerTip.ne:after, #powerTip.ne:before { - left: 14px; -} - -#powerTip.s:after, #powerTip.s:before, -#powerTip.se:after, #powerTip.se:before, -#powerTip.sw:after, #powerTip.sw:before { - bottom: 100%; -} - -#powerTip.s:after, #powerTip.se:after, #powerTip.sw:after { - border-bottom-color: #ffffff; - border-width: 10px; - margin: 0px -10px; -} - -#powerTip.s:before, #powerTip.se:before, #powerTip.sw:before { - border-bottom-color: #808080; - border-width: 11px; - margin: 0px -11px; -} - -#powerTip.s:after, #powerTip.s:before { - left: 50%; -} - -#powerTip.sw:after, #powerTip.sw:before { - right: 14px; -} - -#powerTip.se:after, #powerTip.se:before { - left: 14px; -} - -#powerTip.e:after, #powerTip.e:before { - left: 100%; -} -#powerTip.e:after { - border-left-color: #ffffff; - border-width: 10px; - top: 50%; - margin-top: -10px; -} -#powerTip.e:before { - border-left-color: #808080; - border-width: 11px; - top: 50%; - margin-top: -11px; -} - -#powerTip.w:after, #powerTip.w:before { - right: 100%; -} -#powerTip.w:after { - border-right-color: #ffffff; - border-width: 10px; - top: 50%; - margin-top: -10px; -} -#powerTip.w:before { - border-right-color: #808080; - border-width: 11px; - top: 50%; - margin-top: -11px; -} - -@media print -{ - #top { display: none; } - #side-nav { display: none; } - #nav-path { display: none; } - body { overflow:visible; } - h1, h2, h3, h4, h5, h6 { page-break-after: avoid; } - .summary { display: none; } - .memitem { page-break-inside: avoid; } - #doc-content - { - margin-left:0 !important; - height:auto !important; - width:auto !important; - overflow:inherit; - display:inline; - } -} - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/doxygen.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/doxygen.png deleted file mode 100644 index 3ff17d8..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/doxygen.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/dynsections.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/dynsections.js deleted file mode 100644 index ed092c7..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/dynsections.js +++ /dev/null @@ -1,97 +0,0 @@ -function toggleVisibility(linkObj) -{ - var base = $(linkObj).attr('id'); - var summary = $('#'+base+'-summary'); - var content = $('#'+base+'-content'); - var trigger = $('#'+base+'-trigger'); - var src=$(trigger).attr('src'); - if (content.is(':visible')===true) { - content.hide(); - summary.show(); - $(linkObj).addClass('closed').removeClass('opened'); - $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png'); - } else { - content.show(); - summary.hide(); - $(linkObj).removeClass('closed').addClass('opened'); - $(trigger).attr('src',src.substring(0,src.length-10)+'open.png'); - } - return false; -} - -function updateStripes() -{ - $('table.directory tr'). - removeClass('even').filter(':visible:even').addClass('even'); -} -function toggleLevel(level) -{ - $('table.directory tr').each(function(){ - var l = this.id.split('_').length-1; - var i = $('#img'+this.id.substring(3)); - var a = $('#arr'+this.id.substring(3)); - if (l - - - - - -Box2D: File List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - -
    - - - - -
    - -
    - -
    -
    -
    File List
    -
    -
    -
    Here is a list of all documented files with brief descriptions:
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    o*b2BlockAllocator.h
    o*b2Body.h
    o*b2BroadPhase.h
    o*b2ChainAndCircleContact.h
    o*b2ChainAndPolygonContact.h
    o*b2ChainShape.h
    o*b2CircleContact.h
    o*b2CircleShape.h
    o*b2Collision.h
    o*b2Contact.h
    o*b2ContactManager.h
    o*b2ContactSolver.h
    o*b2Distance.h
    o*b2DistanceJoint.h
    o*b2Draw.h
    o*b2DynamicTree.h
    o*b2EdgeAndCircleContact.h
    o*b2EdgeAndPolygonContact.h
    o*b2EdgeShape.h
    o*b2Fixture.h
    o*b2FrictionJoint.h
    o*b2GearJoint.h
    o*b2GrowableStack.h
    o*b2Island.h
    o*b2Joint.h
    o*b2Math.h
    o*b2MotorJoint.h
    o*b2MouseJoint.h
    o*b2PolygonAndCircleContact.h
    o*b2PolygonContact.h
    o*b2PolygonShape.h
    o*b2PrismaticJoint.h
    o*b2PulleyJoint.h
    o*b2RevoluteJoint.h
    o*b2Rope.h
    o*b2RopeJoint.h
    o*b2Settings.h
    o*b2Shape.h
    o*b2StackAllocator.h
    o*b2TimeOfImpact.h
    o*b2Timer.h
    o*b2TimeStep.h
    o*b2WeldJoint.h
    o*b2WheelJoint.h
    o*b2World.h
    o*b2WorldCallbacks.h
    \*Box2D.h
    -
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/ftv2blank.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/ftv2blank.png deleted file mode 100644 index 63c605b..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/ftv2blank.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/ftv2cl.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/ftv2cl.png deleted file mode 100644 index 132f657..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/ftv2cl.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/ftv2lastnode.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/ftv2lastnode.png deleted file mode 100644 index 63c605b..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/ftv2lastnode.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/ftv2link.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/ftv2link.png deleted file mode 100644 index 17edabf..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/ftv2link.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/ftv2mnode.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/ftv2mnode.png deleted file mode 100644 index 0b63f6d..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/ftv2mnode.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/ftv2mo.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/ftv2mo.png deleted file mode 100644 index 4bfb80f..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/ftv2mo.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/ftv2node.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/ftv2node.png deleted file mode 100644 index 63c605b..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/ftv2node.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/ftv2ns.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/ftv2ns.png deleted file mode 100644 index 72e3d71..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/ftv2ns.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/ftv2pnode.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/ftv2pnode.png deleted file mode 100644 index c6ee22f..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/ftv2pnode.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/ftv2vertline.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/ftv2vertline.png deleted file mode 100644 index 63c605b..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/ftv2vertline.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions.html deleted file mode 100644 index 2586664..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions.html +++ /dev/null @@ -1,186 +0,0 @@ - - - - - - -Box2D: Class Members - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - -
    - - - - -
    - -
    - -
    -
    Here is a list of all documented class members with links to the class documentation for each member:
    - -

    - a -

    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x62.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x62.html deleted file mode 100644 index b2c2c45..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x62.html +++ /dev/null @@ -1,177 +0,0 @@ - - - - - - -Box2D: Class Members - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - -
    - - - - -
    - -
    - -
    -
    Here is a list of all documented class members with links to the class documentation for each member:
    - -

    - b -

    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x63.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x63.html deleted file mode 100644 index 4caeb82..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x63.html +++ /dev/null @@ -1,202 +0,0 @@ - - - - - - -Box2D: Class Members - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - -
    - - - - -
    - -
    - -
    -
    Here is a list of all documented class members with links to the class documentation for each member:
    - -

    - c -

    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x64.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x64.html deleted file mode 100644 index 62a5a75..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x64.html +++ /dev/null @@ -1,192 +0,0 @@ - - - - - - -Box2D: Class Members - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - -
    - - - - -
    - -
    - -
    -
    Here is a list of all documented class members with links to the class documentation for each member:
    - -

    - d -

    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x65.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x65.html deleted file mode 100644 index 48c6b31..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x65.html +++ /dev/null @@ -1,182 +0,0 @@ - - - - - - -Box2D: Class Members - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - -
    - - - - -
    - -
    - -
    -
    Here is a list of all documented class members with links to the class documentation for each member:
    - -

    - e -

    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x66.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x66.html deleted file mode 100644 index 4aac913..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x66.html +++ /dev/null @@ -1,153 +0,0 @@ - - - - - - -Box2D: Class Members - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - -
    - - - - -
    - -
    - -
    -
    Here is a list of all documented class members with links to the class documentation for each member:
    - -

    - f -

    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x67.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x67.html deleted file mode 100644 index 0792639..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x67.html +++ /dev/null @@ -1,551 +0,0 @@ - - - - - - -Box2D: Class Members - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - -
    - - - - -
    - -
    - -
    -
    Here is a list of all documented class members with links to the class documentation for each member:
    - -

    - g -

    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x69.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x69.html deleted file mode 100644 index 55e4a8c..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x69.html +++ /dev/null @@ -1,204 +0,0 @@ - - - - - - -Box2D: Class Members - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - -
    - - - - -
    - -
    - -
    -
    Here is a list of all documented class members with links to the class documentation for each member:
    - -

    - i -

    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x6a.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x6a.html deleted file mode 100644 index 1587a58..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x6a.html +++ /dev/null @@ -1,141 +0,0 @@ - - - - - - -Box2D: Class Members - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - -
    - - - - -
    - -
    - -
    -
    Here is a list of all documented class members with links to the class documentation for each member:
    - -

    - j -

    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x6b.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x6b.html deleted file mode 100644 index 371bc09..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x6b.html +++ /dev/null @@ -1,141 +0,0 @@ - - - - - - -Box2D: Class Members - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - -
    - - - - -
    - -
    - -
    -
    Here is a list of all documented class members with links to the class documentation for each member:
    - -

    - k -

    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x6c.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x6c.html deleted file mode 100644 index 161d237..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x6c.html +++ /dev/null @@ -1,199 +0,0 @@ - - - - - - -Box2D: Class Members - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - -
    - - - - -
    - -
    - -
    -
    Here is a list of all documented class members with links to the class documentation for each member:
    - -

    - l -

    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x6d.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x6d.html deleted file mode 100644 index 58cd886..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x6d.html +++ /dev/null @@ -1,190 +0,0 @@ - - - - - - -Box2D: Class Members - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - -
    - - - - -
    - -
    - -
    -
    Here is a list of all documented class members with links to the class documentation for each member:
    - -

    - m -

    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x6e.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x6e.html deleted file mode 100644 index 41447b5..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x6e.html +++ /dev/null @@ -1,146 +0,0 @@ - - - - - - -Box2D: Class Members - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - -
    - - - - -
    - -
    - -
    -
    Here is a list of all documented class members with links to the class documentation for each member:
    - -

    - n -

    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x6f.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x6f.html deleted file mode 100644 index 98939c1..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x6f.html +++ /dev/null @@ -1,155 +0,0 @@ - - - - - - -Box2D: Class Members - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - -
    - - - - -
    - -
    - -
    -
    Here is a list of all documented class members with links to the class documentation for each member:
    - -

    - o -

    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x70.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x70.html deleted file mode 100644 index 98db458..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x70.html +++ /dev/null @@ -1,158 +0,0 @@ - - - - - - -Box2D: Class Members - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - -
    - - - - -
    - -
    - -
    -
    Here is a list of all documented class members with links to the class documentation for each member:
    - -

    - p -

    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x71.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x71.html deleted file mode 100644 index 3f3b2e2..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x71.html +++ /dev/null @@ -1,139 +0,0 @@ - - - - - - -Box2D: Class Members - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - -
    - - - - -
    - -
    - -
    -
    Here is a list of all documented class members with links to the class documentation for each member:
    - -

    - q -

    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x72.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x72.html deleted file mode 100644 index 158bdab..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x72.html +++ /dev/null @@ -1,180 +0,0 @@ - - - - - - -Box2D: Class Members - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - -
    - - - - -
    - -
    - -
    -
    Here is a list of all documented class members with links to the class documentation for each member:
    - -

    - r -

    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x73.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x73.html deleted file mode 100644 index bef2066..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x73.html +++ /dev/null @@ -1,362 +0,0 @@ - - - - - - -Box2D: Class Members - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - -
    - - - - -
    - -
    - -
    -
    Here is a list of all documented class members with links to the class documentation for each member:
    - -

    - s -

    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x74.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x74.html deleted file mode 100644 index 062e8a2..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x74.html +++ /dev/null @@ -1,162 +0,0 @@ - - - - - - -Box2D: Class Members - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - -
    - - - - -
    - -
    - -
    -
    Here is a list of all documented class members with links to the class documentation for each member:
    - -

    - t -

    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x75.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x75.html deleted file mode 100644 index f976838..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x75.html +++ /dev/null @@ -1,149 +0,0 @@ - - - - - - -Box2D: Class Members - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - -
    - - - - -
    - -
    - -
    -
    Here is a list of all documented class members with links to the class documentation for each member:
    - -

    - u -

    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x76.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x76.html deleted file mode 100644 index fc76ddb..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x76.html +++ /dev/null @@ -1,136 +0,0 @@ - - - - - - -Box2D: Class Members - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - -
    - - - - -
    - -
    - -
    -
    Here is a list of all documented class members with links to the class documentation for each member:
    - -

    - v -

    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x7e.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x7e.html deleted file mode 100644 index 2fcaf5e..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_0x7e.html +++ /dev/null @@ -1,141 +0,0 @@ - - - - - - -Box2D: Class Members - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - -
    - - - - -
    - -
    - -
    -
    Here is a list of all documented class members with links to the class documentation for each member:
    - -

    - ~ -

    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_eval.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_eval.html deleted file mode 100644 index ac086a2..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_eval.html +++ /dev/null @@ -1,119 +0,0 @@ - - - - - - -Box2D: Class Members - Enumerator - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - -
    - - - - -
    - -
    - -
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func.html deleted file mode 100644 index fc2d36d..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func.html +++ /dev/null @@ -1,154 +0,0 @@ - - - - - - -Box2D: Class Members - Functions - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - -
    - - - - -
    - -
    - -
    -  - -

    - a -

    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x62.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x62.html deleted file mode 100644 index 7443c9f..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x62.html +++ /dev/null @@ -1,166 +0,0 @@ - - - - - - -Box2D: Class Members - Functions - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - -
    - - - - -
    - -
    - -
    -  - -

    - b -

    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x63.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x63.html deleted file mode 100644 index 8e51214..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x63.html +++ /dev/null @@ -1,182 +0,0 @@ - - - - - - -Box2D: Class Members - Functions - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - -
    - - - - -
    - -
    - -
    -  - -

    - c -

    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x64.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x64.html deleted file mode 100644 index a96e476..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x64.html +++ /dev/null @@ -1,181 +0,0 @@ - - - - - - -Box2D: Class Members - Functions - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - -
    - - - - -
    - -
    - -
    -  - -

    - d -

    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x65.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x65.html deleted file mode 100644 index 6076dc4..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x65.html +++ /dev/null @@ -1,152 +0,0 @@ - - - - - - -Box2D: Class Members - Functions - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - -
    - - - - -
    - -
    - - - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x66.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x66.html deleted file mode 100644 index fd42800..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x66.html +++ /dev/null @@ -1,136 +0,0 @@ - - - - - - -Box2D: Class Members - Functions - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - -
    - - - - -
    - -
    - -
    -  - -

    - f -

    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x67.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x67.html deleted file mode 100644 index f7b23ad..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x67.html +++ /dev/null @@ -1,537 +0,0 @@ - - - - - - -Box2D: Class Members - Functions - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - -
    - - - - -
    - -
    - -
    -  - -

    - g -

    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x69.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x69.html deleted file mode 100644 index a4ee1eb..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x69.html +++ /dev/null @@ -1,182 +0,0 @@ - - - - - - -Box2D: Class Members - Functions - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - -
    - - - - -
    - -
    - -
    -  - -

    - i -

    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x6c.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x6c.html deleted file mode 100644 index e92214b..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x6c.html +++ /dev/null @@ -1,136 +0,0 @@ - - - - - - -Box2D: Class Members - Functions - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - -
    - - - - -
    - -
    - -
    -  - -

    - l -

    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x6d.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x6d.html deleted file mode 100644 index ff18533..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x6d.html +++ /dev/null @@ -1,134 +0,0 @@ - - - - - - -Box2D: Class Members - Functions - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - -
    - - - - -
    - -
    - -
    -  - -

    - m -

    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x6e.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x6e.html deleted file mode 100644 index 162e9c7..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x6e.html +++ /dev/null @@ -1,134 +0,0 @@ - - - - - - -Box2D: Class Members - Functions - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - -
    - - - - -
    - -
    - -
    -  - -

    - n -

    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x6f.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x6f.html deleted file mode 100644 index e421030..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x6f.html +++ /dev/null @@ -1,149 +0,0 @@ - - - - - - -Box2D: Class Members - Functions - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - -
    - - - - -
    - -
    - -
    -  - -

    - o -

    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x70.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x70.html deleted file mode 100644 index 29c1a4a..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x70.html +++ /dev/null @@ -1,136 +0,0 @@ - - - - - - -Box2D: Class Members - Functions - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - -
    - - - - -
    - -
    - -
    -  - -

    - p -

    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x71.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x71.html deleted file mode 100644 index 0aaece2..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x71.html +++ /dev/null @@ -1,137 +0,0 @@ - - - - - - -Box2D: Class Members - Functions - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - -
    - - - - -
    - -
    - -
    -  - -

    - q -

    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x72.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x72.html deleted file mode 100644 index 46e6a25..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x72.html +++ /dev/null @@ -1,163 +0,0 @@ - - - - - - -Box2D: Class Members - Functions - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - -
    - - - - -
    - -
    - -
    -  - -

    - r -

    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x73.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x73.html deleted file mode 100644 index aad999b..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x73.html +++ /dev/null @@ -1,351 +0,0 @@ - - - - - - -Box2D: Class Members - Functions - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - -
    - - - - -
    - -
    - -
    -  - -

    - s -

    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x74.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x74.html deleted file mode 100644 index 564c7b7..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x74.html +++ /dev/null @@ -1,144 +0,0 @@ - - - - - - -Box2D: Class Members - Functions - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - -
    - - - - -
    - -
    - -
    -  - -

    - t -

    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x75.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x75.html deleted file mode 100644 index 188e447..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x75.html +++ /dev/null @@ -1,133 +0,0 @@ - - - - - - -Box2D: Class Members - Functions - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - -
    - - - - -
    - -
    - -
    -  - -

    - u -

    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x76.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x76.html deleted file mode 100644 index 8409a59..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x76.html +++ /dev/null @@ -1,134 +0,0 @@ - - - - - - -Box2D: Class Members - Functions - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - -
    - - - - -
    - -
    - -
    -  - -

    - v -

    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x7e.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x7e.html deleted file mode 100644 index b2caec4..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_func_0x7e.html +++ /dev/null @@ -1,139 +0,0 @@ - - - - - - -Box2D: Class Members - Functions - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - -
    - - - - -
    - -
    - -
    -  - -

    - ~ -

    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_vars.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_vars.html deleted file mode 100644 index 560e8b0..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/functions_vars.html +++ /dev/null @@ -1,544 +0,0 @@ - - - - - - -Box2D: Class Members - Variables - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - -
    - - - - -
    - -
    - -
    -  - -

    - a -

    - - -

    - b -

    - - -

    - c -

    - - -

    - d -

    - - -

    - e -

    - - -

    - f -

    - - -

    - g -

    - - -

    - i -

    - - -

    - j -

    - - -

    - k -

    - - -

    - l -

    - - -

    - m -

    - - -

    - n -

    - - -

    - o -

    - - -

    - p -

    - - -

    - r -

    - - -

    - s -

    - - -

    - t -

    - - -

    - u -

    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/globals.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/globals.html deleted file mode 100644 index 452f03e..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/globals.html +++ /dev/null @@ -1,216 +0,0 @@ - - - - - - -Box2D: File Members - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - -
    - - - - -
    - -
    - -
    -
    Here is a list of all documented file members with links to the documentation:
    - -

    - b -

    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/globals_defs.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/globals_defs.html deleted file mode 100644 index 4129baa..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/globals_defs.html +++ /dev/null @@ -1,158 +0,0 @@ - - - - - - -Box2D: File Members - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - -
    - - - - -
    - -
    - -
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/globals_enum.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/globals_enum.html deleted file mode 100644 index 282f0ca..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/globals_enum.html +++ /dev/null @@ -1,107 +0,0 @@ - - - - - - -Box2D: File Members - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - -
    - - - - -
    - -
    - -
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/globals_eval.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/globals_eval.html deleted file mode 100644 index 4d8a591..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/globals_eval.html +++ /dev/null @@ -1,116 +0,0 @@ - - - - - - -Box2D: File Members - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - -
    - - - - -
    - -
    - -
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/globals_func.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/globals_func.html deleted file mode 100644 index 3a7789c..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/globals_func.html +++ /dev/null @@ -1,137 +0,0 @@ - - - - - - -Box2D: File Members - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - -
    - - - - -
    - -
    - -
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/globals_vars.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/globals_vars.html deleted file mode 100644 index 5914a08..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/globals_vars.html +++ /dev/null @@ -1,107 +0,0 @@ - - - - - - -Box2D: File Members - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - -
    - - - - -
    - -
    - -
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/hierarchy.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/hierarchy.html deleted file mode 100644 index 4ba0079..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/hierarchy.html +++ /dev/null @@ -1,217 +0,0 @@ - - - - - - -Box2D: Class Hierarchy - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - -
    - - - - -
    - -
    - -
    -
    -
    Class Hierarchy
    -
    -
    -
    This inheritance list is sorted roughly, but not completely, alphabetically:
    -
    [detail level 12]
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    oCb2AABBAn axis aligned bounding box
    oCb2Block
    oCb2BlockAllocator
    oCb2BodyA rigid body. These are created via b2World::CreateBody
    oCb2BodyDef
    oCb2BroadPhase
    oCb2Chunk
    oCb2ClipVertexUsed for computing contact manifolds
    oCb2ColorColor for debug drawing. Each value has the range [0,1]
    oCb2Contact
    oCb2ContactEdge
    oCb2ContactFeature
    oCb2ContactFilter
    oCb2ContactIDContact ids to facilitate warm starting
    oCb2ContactImpulse
    oCb2ContactListener
    oCb2ContactManager
    oCb2ContactPositionConstraint
    oCb2ContactRegister
    oCb2ContactSolver
    oCb2ContactSolverDef
    oCb2ContactVelocityConstraint
    oCb2DestructionListener
    oCb2DistanceInput
    oCb2DistanceOutputOutput for b2Distance
    oCb2DistanceProxy
    oCb2Draw
    oCb2DynamicTree
    oCb2EPAxis
    oCb2EPCollider
    oCb2FilterThis holds contact filtering data
    oCb2Fixture
    oCb2FixtureDef
    oCb2FixtureProxyThis proxy is used internally to connect fixtures to the broad-phase
    oCb2GrowableStack< T, N >
    oCb2IslandThis is an internal class
    oCb2Jacobian
    oCb2Joint
    oCb2JointDefJoint definitions are used to construct joints
    oCb2JointEdge
    oCb2Manifold
    oCb2ManifoldPoint
    oCb2MassDataThis holds the mass data computed for a shape
    oCb2Mat22A 2-by-2 matrix. Stored in column-major order
    oCb2Mat33A 3-by-3 matrix. Stored in column-major order
    oCb2Pair
    oCb2PositionThis is an internal structure
    oCb2PositionSolverManifold
    oCb2ProfileProfiling data. Times are in milliseconds
    oCb2QueryCallback
    oCb2RayCastCallback
    oCb2RayCastInputRay-cast input data. The ray extends from p1 to p1 + maxFraction * (p2 - p1)
    oCb2RayCastOutput
    oCb2ReferenceFace
    oCb2Rope
    oCb2RopeDef
    oCb2RotRotation
    oCb2SeparationFunction
    oCb2Shape
    oCb2Simplex
    oCb2SimplexCache
    oCb2SimplexVertex
    oCb2SolverDataSolver Data
    oCb2StackAllocator
    oCb2StackEntry
    oCb2Sweep
    oCb2TempPolygon
    oCb2Timer
    oCb2TimeStepThis is an internal structure
    oCb2TOIInputInput parameters for b2TimeOfImpact
    oCb2TOIOutput
    oCb2Transform
    oCb2TreeNodeA node in the dynamic tree. The client does not interact with this directly
    oCb2Vec2A 2D column vector
    oCb2Vec3A 2D column vector with 3 elements
    oCb2VelocityThis is an internal structure
    oCb2VelocityConstraintPoint
    oCb2Version
    oCb2World
    oCb2WorldManifoldThis is used to compute the current state of a contact manifold
    oCb2WorldQueryWrapper
    \Cb2WorldRayCastWrapper
    -
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/index.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/index.html deleted file mode 100644 index a3d855c..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/index.html +++ /dev/null @@ -1,94 +0,0 @@ - - - - - - -Box2D: Box2D API Documentation - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - -
    - - - - -
    - -
    - -
    -
    -
    Box2D API Documentation
    -
    -
    -

    -Getting Started

    -

    For documentation please see http://box2d.org/documentation.html

    -

    For discussion please visit http://box2d.org/forum

    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/jquery.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/jquery.js deleted file mode 100644 index c197801..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/jquery.js +++ /dev/null @@ -1,31 +0,0 @@ -/*! - * jQuery JavaScript Library v1.7.1 - * http://jquery.com/ - * - * Copyright 2011, John Resig - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * Includes Sizzle.js - * http://sizzlejs.com/ - * Copyright 2011, The Dojo Foundation - * Released under the MIT, BSD, and GPL Licenses. - * - * Date: Mon Nov 21 21:11:03 2011 -0500 - */ -(function(bb,L){var av=bb.document,bu=bb.navigator,bl=bb.location;var b=(function(){var bF=function(b0,b1){return new bF.fn.init(b0,b1,bD)},bU=bb.jQuery,bH=bb.$,bD,bY=/^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,bM=/\S/,bI=/^\s+/,bE=/\s+$/,bA=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,bN=/^[\],:{}\s]*$/,bW=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,bP=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,bJ=/(?:^|:|,)(?:\s*\[)+/g,by=/(webkit)[ \/]([\w.]+)/,bR=/(opera)(?:.*version)?[ \/]([\w.]+)/,bQ=/(msie) ([\w.]+)/,bS=/(mozilla)(?:.*? rv:([\w.]+))?/,bB=/-([a-z]|[0-9])/ig,bZ=/^-ms-/,bT=function(b0,b1){return(b1+"").toUpperCase()},bX=bu.userAgent,bV,bC,e,bL=Object.prototype.toString,bG=Object.prototype.hasOwnProperty,bz=Array.prototype.push,bK=Array.prototype.slice,bO=String.prototype.trim,bv=Array.prototype.indexOf,bx={};bF.fn=bF.prototype={constructor:bF,init:function(b0,b4,b3){var b2,b5,b1,b6;if(!b0){return this}if(b0.nodeType){this.context=this[0]=b0;this.length=1;return this}if(b0==="body"&&!b4&&av.body){this.context=av;this[0]=av.body;this.selector=b0;this.length=1;return this}if(typeof b0==="string"){if(b0.charAt(0)==="<"&&b0.charAt(b0.length-1)===">"&&b0.length>=3){b2=[null,b0,null]}else{b2=bY.exec(b0)}if(b2&&(b2[1]||!b4)){if(b2[1]){b4=b4 instanceof bF?b4[0]:b4;b6=(b4?b4.ownerDocument||b4:av);b1=bA.exec(b0);if(b1){if(bF.isPlainObject(b4)){b0=[av.createElement(b1[1])];bF.fn.attr.call(b0,b4,true)}else{b0=[b6.createElement(b1[1])]}}else{b1=bF.buildFragment([b2[1]],[b6]);b0=(b1.cacheable?bF.clone(b1.fragment):b1.fragment).childNodes}return bF.merge(this,b0)}else{b5=av.getElementById(b2[2]);if(b5&&b5.parentNode){if(b5.id!==b2[2]){return b3.find(b0)}this.length=1;this[0]=b5}this.context=av;this.selector=b0;return this}}else{if(!b4||b4.jquery){return(b4||b3).find(b0)}else{return this.constructor(b4).find(b0)}}}else{if(bF.isFunction(b0)){return b3.ready(b0)}}if(b0.selector!==L){this.selector=b0.selector;this.context=b0.context}return bF.makeArray(b0,this)},selector:"",jquery:"1.7.1",length:0,size:function(){return this.length},toArray:function(){return bK.call(this,0)},get:function(b0){return b0==null?this.toArray():(b0<0?this[this.length+b0]:this[b0])},pushStack:function(b1,b3,b0){var b2=this.constructor();if(bF.isArray(b1)){bz.apply(b2,b1)}else{bF.merge(b2,b1)}b2.prevObject=this;b2.context=this.context;if(b3==="find"){b2.selector=this.selector+(this.selector?" ":"")+b0}else{if(b3){b2.selector=this.selector+"."+b3+"("+b0+")"}}return b2},each:function(b1,b0){return bF.each(this,b1,b0)},ready:function(b0){bF.bindReady();bC.add(b0);return this},eq:function(b0){b0=+b0;return b0===-1?this.slice(b0):this.slice(b0,b0+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(bK.apply(this,arguments),"slice",bK.call(arguments).join(","))},map:function(b0){return this.pushStack(bF.map(this,function(b2,b1){return b0.call(b2,b1,b2)}))},end:function(){return this.prevObject||this.constructor(null)},push:bz,sort:[].sort,splice:[].splice};bF.fn.init.prototype=bF.fn;bF.extend=bF.fn.extend=function(){var b9,b2,b0,b1,b6,b7,b5=arguments[0]||{},b4=1,b3=arguments.length,b8=false;if(typeof b5==="boolean"){b8=b5;b5=arguments[1]||{};b4=2}if(typeof b5!=="object"&&!bF.isFunction(b5)){b5={}}if(b3===b4){b5=this;--b4}for(;b40){return}bC.fireWith(av,[bF]);if(bF.fn.trigger){bF(av).trigger("ready").off("ready")}}},bindReady:function(){if(bC){return}bC=bF.Callbacks("once memory");if(av.readyState==="complete"){return setTimeout(bF.ready,1)}if(av.addEventListener){av.addEventListener("DOMContentLoaded",e,false);bb.addEventListener("load",bF.ready,false)}else{if(av.attachEvent){av.attachEvent("onreadystatechange",e);bb.attachEvent("onload",bF.ready);var b0=false;try{b0=bb.frameElement==null}catch(b1){}if(av.documentElement.doScroll&&b0){bw()}}}},isFunction:function(b0){return bF.type(b0)==="function"},isArray:Array.isArray||function(b0){return bF.type(b0)==="array"},isWindow:function(b0){return b0&&typeof b0==="object"&&"setInterval" in b0},isNumeric:function(b0){return !isNaN(parseFloat(b0))&&isFinite(b0)},type:function(b0){return b0==null?String(b0):bx[bL.call(b0)]||"object"},isPlainObject:function(b2){if(!b2||bF.type(b2)!=="object"||b2.nodeType||bF.isWindow(b2)){return false}try{if(b2.constructor&&!bG.call(b2,"constructor")&&!bG.call(b2.constructor.prototype,"isPrototypeOf")){return false}}catch(b1){return false}var b0;for(b0 in b2){}return b0===L||bG.call(b2,b0)},isEmptyObject:function(b1){for(var b0 in b1){return false}return true},error:function(b0){throw new Error(b0)},parseJSON:function(b0){if(typeof b0!=="string"||!b0){return null}b0=bF.trim(b0);if(bb.JSON&&bb.JSON.parse){return bb.JSON.parse(b0)}if(bN.test(b0.replace(bW,"@").replace(bP,"]").replace(bJ,""))){return(new Function("return "+b0))()}bF.error("Invalid JSON: "+b0)},parseXML:function(b2){var b0,b1;try{if(bb.DOMParser){b1=new DOMParser();b0=b1.parseFromString(b2,"text/xml")}else{b0=new ActiveXObject("Microsoft.XMLDOM");b0.async="false";b0.loadXML(b2)}}catch(b3){b0=L}if(!b0||!b0.documentElement||b0.getElementsByTagName("parsererror").length){bF.error("Invalid XML: "+b2)}return b0},noop:function(){},globalEval:function(b0){if(b0&&bM.test(b0)){(bb.execScript||function(b1){bb["eval"].call(bb,b1)})(b0)}},camelCase:function(b0){return b0.replace(bZ,"ms-").replace(bB,bT)},nodeName:function(b1,b0){return b1.nodeName&&b1.nodeName.toUpperCase()===b0.toUpperCase()},each:function(b3,b6,b2){var b1,b4=0,b5=b3.length,b0=b5===L||bF.isFunction(b3);if(b2){if(b0){for(b1 in b3){if(b6.apply(b3[b1],b2)===false){break}}}else{for(;b40&&b0[0]&&b0[b1-1])||b1===0||bF.isArray(b0));if(b3){for(;b21?aJ.call(arguments,0):bG;if(!(--bw)){bC.resolveWith(bC,bx)}}}function bz(bF){return function(bG){bB[bF]=arguments.length>1?aJ.call(arguments,0):bG;bC.notifyWith(bE,bB)}}if(e>1){for(;bv
    a";bI=bv.getElementsByTagName("*");bF=bv.getElementsByTagName("a")[0];if(!bI||!bI.length||!bF){return{}}bG=av.createElement("select");bx=bG.appendChild(av.createElement("option"));bE=bv.getElementsByTagName("input")[0];bJ={leadingWhitespace:(bv.firstChild.nodeType===3),tbody:!bv.getElementsByTagName("tbody").length,htmlSerialize:!!bv.getElementsByTagName("link").length,style:/top/.test(bF.getAttribute("style")),hrefNormalized:(bF.getAttribute("href")==="/a"),opacity:/^0.55/.test(bF.style.opacity),cssFloat:!!bF.style.cssFloat,checkOn:(bE.value==="on"),optSelected:bx.selected,getSetAttribute:bv.className!=="t",enctype:!!av.createElement("form").enctype,html5Clone:av.createElement("nav").cloneNode(true).outerHTML!=="<:nav>",submitBubbles:true,changeBubbles:true,focusinBubbles:false,deleteExpando:true,noCloneEvent:true,inlineBlockNeedsLayout:false,shrinkWrapBlocks:false,reliableMarginRight:true};bE.checked=true;bJ.noCloneChecked=bE.cloneNode(true).checked;bG.disabled=true;bJ.optDisabled=!bx.disabled;try{delete bv.test}catch(bC){bJ.deleteExpando=false}if(!bv.addEventListener&&bv.attachEvent&&bv.fireEvent){bv.attachEvent("onclick",function(){bJ.noCloneEvent=false});bv.cloneNode(true).fireEvent("onclick")}bE=av.createElement("input");bE.value="t";bE.setAttribute("type","radio");bJ.radioValue=bE.value==="t";bE.setAttribute("checked","checked");bv.appendChild(bE);bD=av.createDocumentFragment();bD.appendChild(bv.lastChild);bJ.checkClone=bD.cloneNode(true).cloneNode(true).lastChild.checked;bJ.appendChecked=bE.checked;bD.removeChild(bE);bD.appendChild(bv);bv.innerHTML="";if(bb.getComputedStyle){bA=av.createElement("div");bA.style.width="0";bA.style.marginRight="0";bv.style.width="2px";bv.appendChild(bA);bJ.reliableMarginRight=(parseInt((bb.getComputedStyle(bA,null)||{marginRight:0}).marginRight,10)||0)===0}if(bv.attachEvent){for(by in {submit:1,change:1,focusin:1}){bB="on"+by;bw=(bB in bv);if(!bw){bv.setAttribute(bB,"return;");bw=(typeof bv[bB]==="function")}bJ[by+"Bubbles"]=bw}}bD.removeChild(bv);bD=bG=bx=bA=bv=bE=null;b(function(){var bM,bU,bV,bT,bN,bO,bL,bS,bR,e,bP,bQ=av.getElementsByTagName("body")[0];if(!bQ){return}bL=1;bS="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;";bR="visibility:hidden;border:0;";e="style='"+bS+"border:5px solid #000;padding:0;'";bP="
    ";bM=av.createElement("div");bM.style.cssText=bR+"width:0;height:0;position:static;top:0;margin-top:"+bL+"px";bQ.insertBefore(bM,bQ.firstChild);bv=av.createElement("div");bM.appendChild(bv);bv.innerHTML="
    t
    ";bz=bv.getElementsByTagName("td");bw=(bz[0].offsetHeight===0);bz[0].style.display="";bz[1].style.display="none";bJ.reliableHiddenOffsets=bw&&(bz[0].offsetHeight===0);bv.innerHTML="";bv.style.width=bv.style.paddingLeft="1px";b.boxModel=bJ.boxModel=bv.offsetWidth===2;if(typeof bv.style.zoom!=="undefined"){bv.style.display="inline";bv.style.zoom=1;bJ.inlineBlockNeedsLayout=(bv.offsetWidth===2);bv.style.display="";bv.innerHTML="
    ";bJ.shrinkWrapBlocks=(bv.offsetWidth!==2)}bv.style.cssText=bS+bR;bv.innerHTML=bP;bU=bv.firstChild;bV=bU.firstChild;bN=bU.nextSibling.firstChild.firstChild;bO={doesNotAddBorder:(bV.offsetTop!==5),doesAddBorderForTableAndCells:(bN.offsetTop===5)};bV.style.position="fixed";bV.style.top="20px";bO.fixedPosition=(bV.offsetTop===20||bV.offsetTop===15);bV.style.position=bV.style.top="";bU.style.overflow="hidden";bU.style.position="relative";bO.subtractsBorderForOverflowNotVisible=(bV.offsetTop===-5);bO.doesNotIncludeMarginInBodyOffset=(bQ.offsetTop!==bL);bQ.removeChild(bM);bv=bM=null;b.extend(bJ,bO)});return bJ})();var aS=/^(?:\{.*\}|\[.*\])$/,aA=/([A-Z])/g;b.extend({cache:{},uuid:0,expando:"jQuery"+(b.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:true,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:true},hasData:function(e){e=e.nodeType?b.cache[e[b.expando]]:e[b.expando];return !!e&&!S(e)},data:function(bx,bv,bz,by){if(!b.acceptData(bx)){return}var bG,bA,bD,bE=b.expando,bC=typeof bv==="string",bF=bx.nodeType,e=bF?b.cache:bx,bw=bF?bx[bE]:bx[bE]&&bE,bB=bv==="events";if((!bw||!e[bw]||(!bB&&!by&&!e[bw].data))&&bC&&bz===L){return}if(!bw){if(bF){bx[bE]=bw=++b.uuid}else{bw=bE}}if(!e[bw]){e[bw]={};if(!bF){e[bw].toJSON=b.noop}}if(typeof bv==="object"||typeof bv==="function"){if(by){e[bw]=b.extend(e[bw],bv)}else{e[bw].data=b.extend(e[bw].data,bv)}}bG=bA=e[bw];if(!by){if(!bA.data){bA.data={}}bA=bA.data}if(bz!==L){bA[b.camelCase(bv)]=bz}if(bB&&!bA[bv]){return bG.events}if(bC){bD=bA[bv];if(bD==null){bD=bA[b.camelCase(bv)]}}else{bD=bA}return bD},removeData:function(bx,bv,by){if(!b.acceptData(bx)){return}var bB,bA,bz,bC=b.expando,bD=bx.nodeType,e=bD?b.cache:bx,bw=bD?bx[bC]:bC;if(!e[bw]){return}if(bv){bB=by?e[bw]:e[bw].data;if(bB){if(!b.isArray(bv)){if(bv in bB){bv=[bv]}else{bv=b.camelCase(bv);if(bv in bB){bv=[bv]}else{bv=bv.split(" ")}}}for(bA=0,bz=bv.length;bA-1){return true}}return false},val:function(bx){var e,bv,by,bw=this[0];if(!arguments.length){if(bw){e=b.valHooks[bw.nodeName.toLowerCase()]||b.valHooks[bw.type];if(e&&"get" in e&&(bv=e.get(bw,"value"))!==L){return bv}bv=bw.value;return typeof bv==="string"?bv.replace(aU,""):bv==null?"":bv}return}by=b.isFunction(bx);return this.each(function(bA){var bz=b(this),bB;if(this.nodeType!==1){return}if(by){bB=bx.call(this,bA,bz.val())}else{bB=bx}if(bB==null){bB=""}else{if(typeof bB==="number"){bB+=""}else{if(b.isArray(bB)){bB=b.map(bB,function(bC){return bC==null?"":bC+""})}}}e=b.valHooks[this.nodeName.toLowerCase()]||b.valHooks[this.type];if(!e||!("set" in e)||e.set(this,bB,"value")===L){this.value=bB}})}});b.extend({valHooks:{option:{get:function(e){var bv=e.attributes.value;return !bv||bv.specified?e.value:e.text}},select:{get:function(e){var bA,bv,bz,bx,by=e.selectedIndex,bB=[],bC=e.options,bw=e.type==="select-one";if(by<0){return null}bv=bw?by:0;bz=bw?by+1:bC.length;for(;bv=0});if(!e.length){bv.selectedIndex=-1}return e}}},attrFn:{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true},attr:function(bA,bx,bB,bz){var bw,e,by,bv=bA.nodeType; -if(!bA||bv===3||bv===8||bv===2){return}if(bz&&bx in b.attrFn){return b(bA)[bx](bB)}if(typeof bA.getAttribute==="undefined"){return b.prop(bA,bx,bB)}by=bv!==1||!b.isXMLDoc(bA);if(by){bx=bx.toLowerCase();e=b.attrHooks[bx]||(ao.test(bx)?aY:be)}if(bB!==L){if(bB===null){b.removeAttr(bA,bx);return}else{if(e&&"set" in e&&by&&(bw=e.set(bA,bB,bx))!==L){return bw}else{bA.setAttribute(bx,""+bB);return bB}}}else{if(e&&"get" in e&&by&&(bw=e.get(bA,bx))!==null){return bw}else{bw=bA.getAttribute(bx);return bw===null?L:bw}}},removeAttr:function(bx,bz){var by,bA,bv,e,bw=0;if(bz&&bx.nodeType===1){bA=bz.toLowerCase().split(af);e=bA.length;for(;bw=0)}}})});var bd=/^(?:textarea|input|select)$/i,n=/^([^\.]*)?(?:\.(.+))?$/,J=/\bhover(\.\S+)?\b/,aO=/^key/,bf=/^(?:mouse|contextmenu)|click/,T=/^(?:focusinfocus|focusoutblur)$/,U=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,Y=function(e){var bv=U.exec(e);if(bv){bv[1]=(bv[1]||"").toLowerCase();bv[3]=bv[3]&&new RegExp("(?:^|\\s)"+bv[3]+"(?:\\s|$)")}return bv},j=function(bw,e){var bv=bw.attributes||{};return((!e[1]||bw.nodeName.toLowerCase()===e[1])&&(!e[2]||(bv.id||{}).value===e[2])&&(!e[3]||e[3].test((bv["class"]||{}).value)))},bt=function(e){return b.event.special.hover?e:e.replace(J,"mouseenter$1 mouseleave$1")};b.event={add:function(bx,bC,bJ,bA,by){var bD,bB,bK,bI,bH,bF,e,bG,bv,bz,bw,bE;if(bx.nodeType===3||bx.nodeType===8||!bC||!bJ||!(bD=b._data(bx))){return}if(bJ.handler){bv=bJ;bJ=bv.handler}if(!bJ.guid){bJ.guid=b.guid++}bK=bD.events;if(!bK){bD.events=bK={}}bB=bD.handle;if(!bB){bD.handle=bB=function(bL){return typeof b!=="undefined"&&(!bL||b.event.triggered!==bL.type)?b.event.dispatch.apply(bB.elem,arguments):L};bB.elem=bx}bC=b.trim(bt(bC)).split(" ");for(bI=0;bI=0){bG=bG.slice(0,-1);bw=true}if(bG.indexOf(".")>=0){bx=bG.split(".");bG=bx.shift();bx.sort()}if((!bA||b.event.customEvent[bG])&&!b.event.global[bG]){return}bv=typeof bv==="object"?bv[b.expando]?bv:new b.Event(bG,bv):new b.Event(bG);bv.type=bG;bv.isTrigger=true;bv.exclusive=bw;bv.namespace=bx.join(".");bv.namespace_re=bv.namespace?new RegExp("(^|\\.)"+bx.join("\\.(?:.*\\.)?")+"(\\.|$)"):null;by=bG.indexOf(":")<0?"on"+bG:"";if(!bA){e=b.cache;for(bC in e){if(e[bC].events&&e[bC].events[bG]){b.event.trigger(bv,bD,e[bC].handle.elem,true)}}return}bv.result=L;if(!bv.target){bv.target=bA}bD=bD!=null?b.makeArray(bD):[];bD.unshift(bv);bF=b.event.special[bG]||{};if(bF.trigger&&bF.trigger.apply(bA,bD)===false){return}bB=[[bA,bF.bindType||bG]];if(!bJ&&!bF.noBubble&&!b.isWindow(bA)){bI=bF.delegateType||bG;bH=T.test(bI+bG)?bA:bA.parentNode;bz=null;for(;bH;bH=bH.parentNode){bB.push([bH,bI]);bz=bH}if(bz&&bz===bA.ownerDocument){bB.push([bz.defaultView||bz.parentWindow||bb,bI])}}for(bC=0;bCbA){bH.push({elem:this,matches:bz.slice(bA)})}for(bC=0;bC0?this.on(e,null,bx,bw):this.trigger(e)};if(b.attrFn){b.attrFn[e]=true}if(aO.test(e)){b.event.fixHooks[e]=b.event.keyHooks}if(bf.test(e)){b.event.fixHooks[e]=b.event.mouseHooks}}); -/*! - * Sizzle CSS Selector Engine - * Copyright 2011, The Dojo Foundation - * Released under the MIT, BSD, and GPL Licenses. - * More information: http://sizzlejs.com/ - */ -(function(){var bH=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,bC="sizcache"+(Math.random()+"").replace(".",""),bI=0,bL=Object.prototype.toString,bB=false,bA=true,bK=/\\/g,bO=/\r\n/g,bQ=/\W/;[0,0].sort(function(){bA=false;return 0});var by=function(bV,e,bY,bZ){bY=bY||[];e=e||av;var b1=e;if(e.nodeType!==1&&e.nodeType!==9){return[]}if(!bV||typeof bV!=="string"){return bY}var bS,b3,b6,bR,b2,b5,b4,bX,bU=true,bT=by.isXML(e),bW=[],b0=bV;do{bH.exec("");bS=bH.exec(b0);if(bS){b0=bS[3];bW.push(bS[1]);if(bS[2]){bR=bS[3];break}}}while(bS);if(bW.length>1&&bD.exec(bV)){if(bW.length===2&&bE.relative[bW[0]]){b3=bM(bW[0]+bW[1],e,bZ)}else{b3=bE.relative[bW[0]]?[e]:by(bW.shift(),e);while(bW.length){bV=bW.shift();if(bE.relative[bV]){bV+=bW.shift()}b3=bM(bV,b3,bZ)}}}else{if(!bZ&&bW.length>1&&e.nodeType===9&&!bT&&bE.match.ID.test(bW[0])&&!bE.match.ID.test(bW[bW.length-1])){b2=by.find(bW.shift(),e,bT);e=b2.expr?by.filter(b2.expr,b2.set)[0]:b2.set[0]}if(e){b2=bZ?{expr:bW.pop(),set:bF(bZ)}:by.find(bW.pop(),bW.length===1&&(bW[0]==="~"||bW[0]==="+")&&e.parentNode?e.parentNode:e,bT);b3=b2.expr?by.filter(b2.expr,b2.set):b2.set;if(bW.length>0){b6=bF(b3)}else{bU=false}while(bW.length){b5=bW.pop();b4=b5;if(!bE.relative[b5]){b5=""}else{b4=bW.pop()}if(b4==null){b4=e}bE.relative[b5](b6,b4,bT)}}else{b6=bW=[]}}if(!b6){b6=b3}if(!b6){by.error(b5||bV)}if(bL.call(b6)==="[object Array]"){if(!bU){bY.push.apply(bY,b6)}else{if(e&&e.nodeType===1){for(bX=0;b6[bX]!=null;bX++){if(b6[bX]&&(b6[bX]===true||b6[bX].nodeType===1&&by.contains(e,b6[bX]))){bY.push(b3[bX])}}}else{for(bX=0;b6[bX]!=null;bX++){if(b6[bX]&&b6[bX].nodeType===1){bY.push(b3[bX])}}}}}else{bF(b6,bY)}if(bR){by(bR,b1,bY,bZ);by.uniqueSort(bY)}return bY};by.uniqueSort=function(bR){if(bJ){bB=bA;bR.sort(bJ);if(bB){for(var e=1;e0};by.find=function(bX,e,bY){var bW,bS,bU,bT,bV,bR;if(!bX){return[]}for(bS=0,bU=bE.order.length;bS":function(bW,bR){var bV,bU=typeof bR==="string",bS=0,e=bW.length;if(bU&&!bQ.test(bR)){bR=bR.toLowerCase();for(;bS=0)){if(!bS){e.push(bV)}}else{if(bS){bR[bU]=false}}}}return false},ID:function(e){return e[1].replace(bK,"")},TAG:function(bR,e){return bR[1].replace(bK,"").toLowerCase()},CHILD:function(e){if(e[1]==="nth"){if(!e[2]){by.error(e[0])}e[2]=e[2].replace(/^\+|\s*/g,"");var bR=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(e[2]==="even"&&"2n"||e[2]==="odd"&&"2n+1"||!/\D/.test(e[2])&&"0n+"+e[2]||e[2]);e[2]=(bR[1]+(bR[2]||1))-0;e[3]=bR[3]-0}else{if(e[2]){by.error(e[0])}}e[0]=bI++;return e},ATTR:function(bU,bR,bS,e,bV,bW){var bT=bU[1]=bU[1].replace(bK,"");if(!bW&&bE.attrMap[bT]){bU[1]=bE.attrMap[bT]}bU[4]=(bU[4]||bU[5]||"").replace(bK,"");if(bU[2]==="~="){bU[4]=" "+bU[4]+" "}return bU},PSEUDO:function(bU,bR,bS,e,bV){if(bU[1]==="not"){if((bH.exec(bU[3])||"").length>1||/^\w/.test(bU[3])){bU[3]=by(bU[3],null,null,bR)}else{var bT=by.filter(bU[3],bR,bS,true^bV);if(!bS){e.push.apply(e,bT)}return false}}else{if(bE.match.POS.test(bU[0])||bE.match.CHILD.test(bU[0])){return true}}return bU},POS:function(e){e.unshift(true);return e}},filters:{enabled:function(e){return e.disabled===false&&e.type!=="hidden"},disabled:function(e){return e.disabled===true},checked:function(e){return e.checked===true},selected:function(e){if(e.parentNode){e.parentNode.selectedIndex}return e.selected===true},parent:function(e){return !!e.firstChild},empty:function(e){return !e.firstChild},has:function(bS,bR,e){return !!by(e[3],bS).length},header:function(e){return(/h\d/i).test(e.nodeName)},text:function(bS){var e=bS.getAttribute("type"),bR=bS.type;return bS.nodeName.toLowerCase()==="input"&&"text"===bR&&(e===bR||e===null)},radio:function(e){return e.nodeName.toLowerCase()==="input"&&"radio"===e.type},checkbox:function(e){return e.nodeName.toLowerCase()==="input"&&"checkbox"===e.type},file:function(e){return e.nodeName.toLowerCase()==="input"&&"file"===e.type},password:function(e){return e.nodeName.toLowerCase()==="input"&&"password"===e.type},submit:function(bR){var e=bR.nodeName.toLowerCase();return(e==="input"||e==="button")&&"submit"===bR.type},image:function(e){return e.nodeName.toLowerCase()==="input"&&"image"===e.type},reset:function(bR){var e=bR.nodeName.toLowerCase();return(e==="input"||e==="button")&&"reset"===bR.type},button:function(bR){var e=bR.nodeName.toLowerCase();return e==="input"&&"button"===bR.type||e==="button"},input:function(e){return(/input|select|textarea|button/i).test(e.nodeName)},focus:function(e){return e===e.ownerDocument.activeElement}},setFilters:{first:function(bR,e){return e===0},last:function(bS,bR,e,bT){return bR===bT.length-1},even:function(bR,e){return e%2===0},odd:function(bR,e){return e%2===1 -},lt:function(bS,bR,e){return bRe[3]-0},nth:function(bS,bR,e){return e[3]-0===bR},eq:function(bS,bR,e){return e[3]-0===bR}},filter:{PSEUDO:function(bS,bX,bW,bY){var e=bX[1],bR=bE.filters[e];if(bR){return bR(bS,bW,bX,bY)}else{if(e==="contains"){return(bS.textContent||bS.innerText||bw([bS])||"").indexOf(bX[3])>=0}else{if(e==="not"){var bT=bX[3];for(var bV=0,bU=bT.length;bV=0)}}},ID:function(bR,e){return bR.nodeType===1&&bR.getAttribute("id")===e},TAG:function(bR,e){return(e==="*"&&bR.nodeType===1)||!!bR.nodeName&&bR.nodeName.toLowerCase()===e},CLASS:function(bR,e){return(" "+(bR.className||bR.getAttribute("class"))+" ").indexOf(e)>-1},ATTR:function(bV,bT){var bS=bT[1],e=by.attr?by.attr(bV,bS):bE.attrHandle[bS]?bE.attrHandle[bS](bV):bV[bS]!=null?bV[bS]:bV.getAttribute(bS),bW=e+"",bU=bT[2],bR=bT[4];return e==null?bU==="!=":!bU&&by.attr?e!=null:bU==="="?bW===bR:bU==="*="?bW.indexOf(bR)>=0:bU==="~="?(" "+bW+" ").indexOf(bR)>=0:!bR?bW&&e!==false:bU==="!="?bW!==bR:bU==="^="?bW.indexOf(bR)===0:bU==="$="?bW.substr(bW.length-bR.length)===bR:bU==="|="?bW===bR||bW.substr(0,bR.length+1)===bR+"-":false},POS:function(bU,bR,bS,bV){var e=bR[2],bT=bE.setFilters[e];if(bT){return bT(bU,bS,bR,bV)}}}};var bD=bE.match.POS,bx=function(bR,e){return"\\"+(e-0+1)};for(var bz in bE.match){bE.match[bz]=new RegExp(bE.match[bz].source+(/(?![^\[]*\])(?![^\(]*\))/.source));bE.leftMatch[bz]=new RegExp(/(^(?:.|\r|\n)*?)/.source+bE.match[bz].source.replace(/\\(\d+)/g,bx))}var bF=function(bR,e){bR=Array.prototype.slice.call(bR,0);if(e){e.push.apply(e,bR);return e}return bR};try{Array.prototype.slice.call(av.documentElement.childNodes,0)[0].nodeType}catch(bP){bF=function(bU,bT){var bS=0,bR=bT||[];if(bL.call(bU)==="[object Array]"){Array.prototype.push.apply(bR,bU)}else{if(typeof bU.length==="number"){for(var e=bU.length;bS";e.insertBefore(bR,e.firstChild);if(av.getElementById(bS)){bE.find.ID=function(bU,bV,bW){if(typeof bV.getElementById!=="undefined"&&!bW){var bT=bV.getElementById(bU[1]);return bT?bT.id===bU[1]||typeof bT.getAttributeNode!=="undefined"&&bT.getAttributeNode("id").nodeValue===bU[1]?[bT]:L:[]}};bE.filter.ID=function(bV,bT){var bU=typeof bV.getAttributeNode!=="undefined"&&bV.getAttributeNode("id");return bV.nodeType===1&&bU&&bU.nodeValue===bT}}e.removeChild(bR);e=bR=null})();(function(){var e=av.createElement("div");e.appendChild(av.createComment(""));if(e.getElementsByTagName("*").length>0){bE.find.TAG=function(bR,bV){var bU=bV.getElementsByTagName(bR[1]);if(bR[1]==="*"){var bT=[];for(var bS=0;bU[bS];bS++){if(bU[bS].nodeType===1){bT.push(bU[bS])}}bU=bT}return bU}}e.innerHTML="";if(e.firstChild&&typeof e.firstChild.getAttribute!=="undefined"&&e.firstChild.getAttribute("href")!=="#"){bE.attrHandle.href=function(bR){return bR.getAttribute("href",2)}}e=null})();if(av.querySelectorAll){(function(){var e=by,bT=av.createElement("div"),bS="__sizzle__";bT.innerHTML="

    ";if(bT.querySelectorAll&&bT.querySelectorAll(".TEST").length===0){return}by=function(b4,bV,bZ,b3){bV=bV||av;if(!b3&&!by.isXML(bV)){var b2=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b4);if(b2&&(bV.nodeType===1||bV.nodeType===9)){if(b2[1]){return bF(bV.getElementsByTagName(b4),bZ)}else{if(b2[2]&&bE.find.CLASS&&bV.getElementsByClassName){return bF(bV.getElementsByClassName(b2[2]),bZ)}}}if(bV.nodeType===9){if(b4==="body"&&bV.body){return bF([bV.body],bZ)}else{if(b2&&b2[3]){var bY=bV.getElementById(b2[3]);if(bY&&bY.parentNode){if(bY.id===b2[3]){return bF([bY],bZ)}}else{return bF([],bZ)}}}try{return bF(bV.querySelectorAll(b4),bZ)}catch(b0){}}else{if(bV.nodeType===1&&bV.nodeName.toLowerCase()!=="object"){var bW=bV,bX=bV.getAttribute("id"),bU=bX||bS,b6=bV.parentNode,b5=/^\s*[+~]/.test(b4);if(!bX){bV.setAttribute("id",bU)}else{bU=bU.replace(/'/g,"\\$&")}if(b5&&b6){bV=bV.parentNode}try{if(!b5||b6){return bF(bV.querySelectorAll("[id='"+bU+"'] "+b4),bZ)}}catch(b1){}finally{if(!bX){bW.removeAttribute("id")}}}}}return e(b4,bV,bZ,b3)};for(var bR in e){by[bR]=e[bR]}bT=null})()}(function(){var e=av.documentElement,bS=e.matchesSelector||e.mozMatchesSelector||e.webkitMatchesSelector||e.msMatchesSelector;if(bS){var bU=!bS.call(av.createElement("div"),"div"),bR=false;try{bS.call(av.documentElement,"[test!='']:sizzle")}catch(bT){bR=true}by.matchesSelector=function(bW,bY){bY=bY.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!by.isXML(bW)){try{if(bR||!bE.match.PSEUDO.test(bY)&&!/!=/.test(bY)){var bV=bS.call(bW,bY);if(bV||!bU||bW.document&&bW.document.nodeType!==11){return bV}}}catch(bX){}}return by(bY,null,null,[bW]).length>0}}})();(function(){var e=av.createElement("div");e.innerHTML="
    ";if(!e.getElementsByClassName||e.getElementsByClassName("e").length===0){return}e.lastChild.className="e";if(e.getElementsByClassName("e").length===1){return}bE.order.splice(1,0,"CLASS");bE.find.CLASS=function(bR,bS,bT){if(typeof bS.getElementsByClassName!=="undefined"&&!bT){return bS.getElementsByClassName(bR[1])}};e=null})();function bv(bR,bW,bV,bZ,bX,bY){for(var bT=0,bS=bZ.length;bT0){bU=e;break}}}e=e[bR]}bZ[bT]=bU}}}if(av.documentElement.contains){by.contains=function(bR,e){return bR!==e&&(bR.contains?bR.contains(e):true)}}else{if(av.documentElement.compareDocumentPosition){by.contains=function(bR,e){return !!(bR.compareDocumentPosition(e)&16)}}else{by.contains=function(){return false}}}by.isXML=function(e){var bR=(e?e.ownerDocument||e:0).documentElement;return bR?bR.nodeName!=="HTML":false};var bM=function(bS,e,bW){var bV,bX=[],bU="",bY=e.nodeType?[e]:e;while((bV=bE.match.PSEUDO.exec(bS))){bU+=bV[0];bS=bS.replace(bE.match.PSEUDO,"")}bS=bE.relative[bS]?bS+"*":bS;for(var bT=0,bR=bY.length;bT0){for(bB=bA;bB=0:b.filter(e,this).length>0:this.filter(e).length>0)},closest:function(by,bx){var bv=[],bw,e,bz=this[0];if(b.isArray(by)){var bB=1;while(bz&&bz.ownerDocument&&bz!==bx){for(bw=0;bw-1:b.find.matchesSelector(bz,by)){bv.push(bz);break}else{bz=bz.parentNode;if(!bz||!bz.ownerDocument||bz===bx||bz.nodeType===11){break}}}}bv=bv.length>1?b.unique(bv):bv;return this.pushStack(bv,"closest",by)},index:function(e){if(!e){return(this[0]&&this[0].parentNode)?this.prevAll().length:-1}if(typeof e==="string"){return b.inArray(this[0],b(e))}return b.inArray(e.jquery?e[0]:e,this)},add:function(e,bv){var bx=typeof e==="string"?b(e,bv):b.makeArray(e&&e.nodeType?[e]:e),bw=b.merge(this.get(),bx);return this.pushStack(C(bx[0])||C(bw[0])?bw:b.unique(bw))},andSelf:function(){return this.add(this.prevObject)}});function C(e){return !e||!e.parentNode||e.parentNode.nodeType===11}b.each({parent:function(bv){var e=bv.parentNode;return e&&e.nodeType!==11?e:null},parents:function(e){return b.dir(e,"parentNode")},parentsUntil:function(bv,e,bw){return b.dir(bv,"parentNode",bw)},next:function(e){return b.nth(e,2,"nextSibling")},prev:function(e){return b.nth(e,2,"previousSibling")},nextAll:function(e){return b.dir(e,"nextSibling")},prevAll:function(e){return b.dir(e,"previousSibling")},nextUntil:function(bv,e,bw){return b.dir(bv,"nextSibling",bw)},prevUntil:function(bv,e,bw){return b.dir(bv,"previousSibling",bw)},siblings:function(e){return b.sibling(e.parentNode.firstChild,e)},children:function(e){return b.sibling(e.firstChild)},contents:function(e){return b.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:b.makeArray(e.childNodes)}},function(e,bv){b.fn[e]=function(by,bw){var bx=b.map(this,bv,by);if(!ab.test(e)){bw=by}if(bw&&typeof bw==="string"){bx=b.filter(bw,bx)}bx=this.length>1&&!ay[e]?b.unique(bx):bx;if((this.length>1||a9.test(bw))&&aq.test(e)){bx=bx.reverse()}return this.pushStack(bx,e,P.call(arguments).join(","))}});b.extend({filter:function(bw,e,bv){if(bv){bw=":not("+bw+")"}return e.length===1?b.find.matchesSelector(e[0],bw)?[e[0]]:[]:b.find.matches(bw,e)},dir:function(bw,bv,by){var e=[],bx=bw[bv];while(bx&&bx.nodeType!==9&&(by===L||bx.nodeType!==1||!b(bx).is(by))){if(bx.nodeType===1){e.push(bx)}bx=bx[bv]}return e},nth:function(by,e,bw,bx){e=e||1;var bv=0;for(;by;by=by[bw]){if(by.nodeType===1&&++bv===e){break}}return by},sibling:function(bw,bv){var e=[];for(;bw;bw=bw.nextSibling){if(bw.nodeType===1&&bw!==bv){e.push(bw)}}return e}});function aG(bx,bw,e){bw=bw||0;if(b.isFunction(bw)){return b.grep(bx,function(bz,by){var bA=!!bw.call(bz,by,bz);return bA===e})}else{if(bw.nodeType){return b.grep(bx,function(bz,by){return(bz===bw)===e})}else{if(typeof bw==="string"){var bv=b.grep(bx,function(by){return by.nodeType===1});if(bp.test(bw)){return b.filter(bw,bv,!e)}else{bw=b.filter(bw,bv)}}}}return b.grep(bx,function(bz,by){return(b.inArray(bz,bw)>=0)===e})}function a(e){var bw=aR.split("|"),bv=e.createDocumentFragment();if(bv.createElement){while(bw.length){bv.createElement(bw.pop())}}return bv}var aR="abbr|article|aside|audio|canvas|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",ag=/ jQuery\d+="(?:\d+|null)"/g,ar=/^\s+/,R=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,d=/<([\w:]+)/,w=/",""],legend:[1,"
    ","
    "],thead:[1,"","
    "],tr:[2,"","
    "],td:[3,"","
    "],col:[2,"","
    "],area:[1,"",""],_default:[0,"",""]},ac=a(av); -ax.optgroup=ax.option;ax.tbody=ax.tfoot=ax.colgroup=ax.caption=ax.thead;ax.th=ax.td;if(!b.support.htmlSerialize){ax._default=[1,"div
    ","
    "]}b.fn.extend({text:function(e){if(b.isFunction(e)){return this.each(function(bw){var bv=b(this);bv.text(e.call(this,bw,bv.text()))})}if(typeof e!=="object"&&e!==L){return this.empty().append((this[0]&&this[0].ownerDocument||av).createTextNode(e))}return b.text(this)},wrapAll:function(e){if(b.isFunction(e)){return this.each(function(bw){b(this).wrapAll(e.call(this,bw))})}if(this[0]){var bv=b(e,this[0].ownerDocument).eq(0).clone(true);if(this[0].parentNode){bv.insertBefore(this[0])}bv.map(function(){var bw=this;while(bw.firstChild&&bw.firstChild.nodeType===1){bw=bw.firstChild}return bw}).append(this)}return this},wrapInner:function(e){if(b.isFunction(e)){return this.each(function(bv){b(this).wrapInner(e.call(this,bv))})}return this.each(function(){var bv=b(this),bw=bv.contents();if(bw.length){bw.wrapAll(e)}else{bv.append(e)}})},wrap:function(e){var bv=b.isFunction(e);return this.each(function(bw){b(this).wrapAll(bv?e.call(this,bw):e)})},unwrap:function(){return this.parent().each(function(){if(!b.nodeName(this,"body")){b(this).replaceWith(this.childNodes)}}).end()},append:function(){return this.domManip(arguments,true,function(e){if(this.nodeType===1){this.appendChild(e)}})},prepend:function(){return this.domManip(arguments,true,function(e){if(this.nodeType===1){this.insertBefore(e,this.firstChild)}})},before:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(bv){this.parentNode.insertBefore(bv,this)})}else{if(arguments.length){var e=b.clean(arguments);e.push.apply(e,this.toArray());return this.pushStack(e,"before",arguments)}}},after:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(bv){this.parentNode.insertBefore(bv,this.nextSibling)})}else{if(arguments.length){var e=this.pushStack(this,"after",arguments);e.push.apply(e,b.clean(arguments));return e}}},remove:function(e,bx){for(var bv=0,bw;(bw=this[bv])!=null;bv++){if(!e||b.filter(e,[bw]).length){if(!bx&&bw.nodeType===1){b.cleanData(bw.getElementsByTagName("*"));b.cleanData([bw])}if(bw.parentNode){bw.parentNode.removeChild(bw)}}}return this},empty:function(){for(var e=0,bv;(bv=this[e])!=null;e++){if(bv.nodeType===1){b.cleanData(bv.getElementsByTagName("*"))}while(bv.firstChild){bv.removeChild(bv.firstChild)}}return this},clone:function(bv,e){bv=bv==null?false:bv;e=e==null?bv:e;return this.map(function(){return b.clone(this,bv,e)})},html:function(bx){if(bx===L){return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(ag,""):null}else{if(typeof bx==="string"&&!ae.test(bx)&&(b.support.leadingWhitespace||!ar.test(bx))&&!ax[(d.exec(bx)||["",""])[1].toLowerCase()]){bx=bx.replace(R,"<$1>");try{for(var bw=0,bv=this.length;bw1&&bw0?this.clone(true):this).get();b(bC[bA])[bv](by);bz=bz.concat(by)}return this.pushStack(bz,e,bC.selector)}}});function bg(e){if(typeof e.getElementsByTagName!=="undefined"){return e.getElementsByTagName("*")}else{if(typeof e.querySelectorAll!=="undefined"){return e.querySelectorAll("*")}else{return[]}}}function az(e){if(e.type==="checkbox"||e.type==="radio"){e.defaultChecked=e.checked}}function E(e){var bv=(e.nodeName||"").toLowerCase();if(bv==="input"){az(e)}else{if(bv!=="script"&&typeof e.getElementsByTagName!=="undefined"){b.grep(e.getElementsByTagName("input"),az)}}}function al(e){var bv=av.createElement("div");ac.appendChild(bv);bv.innerHTML=e.outerHTML;return bv.firstChild}b.extend({clone:function(by,bA,bw){var e,bv,bx,bz=b.support.html5Clone||!ah.test("<"+by.nodeName)?by.cloneNode(true):al(by);if((!b.support.noCloneEvent||!b.support.noCloneChecked)&&(by.nodeType===1||by.nodeType===11)&&!b.isXMLDoc(by)){ai(by,bz);e=bg(by);bv=bg(bz);for(bx=0;e[bx];++bx){if(bv[bx]){ai(e[bx],bv[bx])}}}if(bA){t(by,bz);if(bw){e=bg(by);bv=bg(bz);for(bx=0;e[bx];++bx){t(e[bx],bv[bx])}}}e=bv=null;return bz},clean:function(bw,by,bH,bA){var bF;by=by||av;if(typeof by.createElement==="undefined"){by=by.ownerDocument||by[0]&&by[0].ownerDocument||av}var bI=[],bB;for(var bE=0,bz;(bz=bw[bE])!=null;bE++){if(typeof bz==="number"){bz+=""}if(!bz){continue}if(typeof bz==="string"){if(!W.test(bz)){bz=by.createTextNode(bz)}else{bz=bz.replace(R,"<$1>");var bK=(d.exec(bz)||["",""])[1].toLowerCase(),bx=ax[bK]||ax._default,bD=bx[0],bv=by.createElement("div");if(by===av){ac.appendChild(bv)}else{a(by).appendChild(bv)}bv.innerHTML=bx[1]+bz+bx[2];while(bD--){bv=bv.lastChild}if(!b.support.tbody){var e=w.test(bz),bC=bK==="table"&&!e?bv.firstChild&&bv.firstChild.childNodes:bx[1]===""&&!e?bv.childNodes:[];for(bB=bC.length-1;bB>=0;--bB){if(b.nodeName(bC[bB],"tbody")&&!bC[bB].childNodes.length){bC[bB].parentNode.removeChild(bC[bB])}}}if(!b.support.leadingWhitespace&&ar.test(bz)){bv.insertBefore(by.createTextNode(ar.exec(bz)[0]),bv.firstChild)}bz=bv.childNodes}}var bG;if(!b.support.appendChecked){if(bz[0]&&typeof(bG=bz.length)==="number"){for(bB=0;bB=0){return bx+"px"}}else{return bx}}}});if(!b.support.opacity){b.cssHooks.opacity={get:function(bv,e){return au.test((e&&bv.currentStyle?bv.currentStyle.filter:bv.style.filter)||"")?(parseFloat(RegExp.$1)/100)+"":e?"1":""},set:function(by,bz){var bx=by.style,bv=by.currentStyle,e=b.isNumeric(bz)?"alpha(opacity="+bz*100+")":"",bw=bv&&bv.filter||bx.filter||"";bx.zoom=1;if(bz>=1&&b.trim(bw.replace(ak,""))===""){bx.removeAttribute("filter");if(bv&&!bv.filter){return}}bx.filter=ak.test(bw)?bw.replace(ak,e):bw+" "+e}}}b(function(){if(!b.support.reliableMarginRight){b.cssHooks.marginRight={get:function(bw,bv){var e;b.swap(bw,{display:"inline-block"},function(){if(bv){e=Z(bw,"margin-right","marginRight")}else{e=bw.style.marginRight}});return e}}}});if(av.defaultView&&av.defaultView.getComputedStyle){aI=function(by,bw){var bv,bx,e;bw=bw.replace(z,"-$1").toLowerCase();if((bx=by.ownerDocument.defaultView)&&(e=bx.getComputedStyle(by,null))){bv=e.getPropertyValue(bw);if(bv===""&&!b.contains(by.ownerDocument.documentElement,by)){bv=b.style(by,bw)}}return bv}}if(av.documentElement.currentStyle){aX=function(bz,bw){var bA,e,by,bv=bz.currentStyle&&bz.currentStyle[bw],bx=bz.style;if(bv===null&&bx&&(by=bx[bw])){bv=by}if(!bc.test(bv)&&bn.test(bv)){bA=bx.left;e=bz.runtimeStyle&&bz.runtimeStyle.left;if(e){bz.runtimeStyle.left=bz.currentStyle.left}bx.left=bw==="fontSize"?"1em":(bv||0);bv=bx.pixelLeft+"px";bx.left=bA;if(e){bz.runtimeStyle.left=e}}return bv===""?"auto":bv}}Z=aI||aX;function p(by,bw,bv){var bA=bw==="width"?by.offsetWidth:by.offsetHeight,bz=bw==="width"?an:a1,bx=0,e=bz.length; -if(bA>0){if(bv!=="border"){for(;bx)<[^<]*)*<\/script>/gi,q=/^(?:select|textarea)/i,h=/\s+/,br=/([?&])_=[^&]*/,K=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,A=b.fn.load,aa={},r={},aE,s,aV=["*/"]+["*"];try{aE=bl.href}catch(aw){aE=av.createElement("a");aE.href="";aE=aE.href}s=K.exec(aE.toLowerCase())||[];function f(e){return function(by,bA){if(typeof by!=="string"){bA=by;by="*"}if(b.isFunction(bA)){var bx=by.toLowerCase().split(h),bw=0,bz=bx.length,bv,bB,bC;for(;bw=0){var e=bw.slice(by,bw.length);bw=bw.slice(0,by)}var bx="GET";if(bz){if(b.isFunction(bz)){bA=bz;bz=L}else{if(typeof bz==="object"){bz=b.param(bz,b.ajaxSettings.traditional);bx="POST"}}}var bv=this;b.ajax({url:bw,type:bx,dataType:"html",data:bz,complete:function(bC,bB,bD){bD=bC.responseText;if(bC.isResolved()){bC.done(function(bE){bD=bE});bv.html(e?b("
    ").append(bD.replace(a6,"")).find(e):bD)}if(bA){bv.each(bA,[bD,bB,bC])}}});return this},serialize:function(){return b.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?b.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||q.test(this.nodeName)||aZ.test(this.type))}).map(function(e,bv){var bw=b(this).val();return bw==null?null:b.isArray(bw)?b.map(bw,function(by,bx){return{name:bv.name,value:by.replace(bs,"\r\n")}}):{name:bv.name,value:bw.replace(bs,"\r\n")}}).get()}});b.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(e,bv){b.fn[bv]=function(bw){return this.on(bv,bw)}});b.each(["get","post"],function(e,bv){b[bv]=function(bw,by,bz,bx){if(b.isFunction(by)){bx=bx||bz;bz=by;by=L}return b.ajax({type:bv,url:bw,data:by,success:bz,dataType:bx})}});b.extend({getScript:function(e,bv){return b.get(e,L,bv,"script")},getJSON:function(e,bv,bw){return b.get(e,bv,bw,"json")},ajaxSetup:function(bv,e){if(e){am(bv,b.ajaxSettings)}else{e=bv;bv=b.ajaxSettings}am(bv,e);return bv},ajaxSettings:{url:aE,isLocal:aM.test(s[1]),global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":aV},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":bb.String,"text html":true,"text json":b.parseJSON,"text xml":b.parseXML},flatOptions:{context:true,url:true}},ajaxPrefilter:f(aa),ajaxTransport:f(r),ajax:function(bz,bx){if(typeof bz==="object"){bx=bz;bz=L}bx=bx||{};var bD=b.ajaxSetup({},bx),bS=bD.context||bD,bG=bS!==bD&&(bS.nodeType||bS instanceof b)?b(bS):b.event,bR=b.Deferred(),bN=b.Callbacks("once memory"),bB=bD.statusCode||{},bC,bH={},bO={},bQ,by,bL,bE,bI,bA=0,bw,bK,bJ={readyState:0,setRequestHeader:function(bT,bU){if(!bA){var e=bT.toLowerCase();bT=bO[e]=bO[e]||bT;bH[bT]=bU}return this},getAllResponseHeaders:function(){return bA===2?bQ:null},getResponseHeader:function(bT){var e;if(bA===2){if(!by){by={};while((e=aD.exec(bQ))){by[e[1].toLowerCase()]=e[2]}}e=by[bT.toLowerCase()]}return e===L?null:e},overrideMimeType:function(e){if(!bA){bD.mimeType=e}return this},abort:function(e){e=e||"abort";if(bL){bL.abort(e)}bF(0,e);return this}};function bF(bZ,bU,b0,bW){if(bA===2){return}bA=2;if(bE){clearTimeout(bE)}bL=L;bQ=bW||"";bJ.readyState=bZ>0?4:0;var bT,b4,b3,bX=bU,bY=b0?bj(bD,bJ,b0):L,bV,b2;if(bZ>=200&&bZ<300||bZ===304){if(bD.ifModified){if((bV=bJ.getResponseHeader("Last-Modified"))){b.lastModified[bC]=bV}if((b2=bJ.getResponseHeader("Etag"))){b.etag[bC]=b2}}if(bZ===304){bX="notmodified";bT=true}else{try{b4=G(bD,bY);bX="success";bT=true}catch(b1){bX="parsererror";b3=b1}}}else{b3=bX;if(!bX||bZ){bX="error";if(bZ<0){bZ=0}}}bJ.status=bZ;bJ.statusText=""+(bU||bX);if(bT){bR.resolveWith(bS,[b4,bX,bJ])}else{bR.rejectWith(bS,[bJ,bX,b3])}bJ.statusCode(bB);bB=L;if(bw){bG.trigger("ajax"+(bT?"Success":"Error"),[bJ,bD,bT?b4:b3])}bN.fireWith(bS,[bJ,bX]);if(bw){bG.trigger("ajaxComplete",[bJ,bD]);if(!(--b.active)){b.event.trigger("ajaxStop")}}}bR.promise(bJ);bJ.success=bJ.done;bJ.error=bJ.fail;bJ.complete=bN.add;bJ.statusCode=function(bT){if(bT){var e;if(bA<2){for(e in bT){bB[e]=[bB[e],bT[e]]}}else{e=bT[bJ.status];bJ.then(e,e)}}return this};bD.url=((bz||bD.url)+"").replace(bq,"").replace(c,s[1]+"//");bD.dataTypes=b.trim(bD.dataType||"*").toLowerCase().split(h);if(bD.crossDomain==null){bI=K.exec(bD.url.toLowerCase());bD.crossDomain=!!(bI&&(bI[1]!=s[1]||bI[2]!=s[2]||(bI[3]||(bI[1]==="http:"?80:443))!=(s[3]||(s[1]==="http:"?80:443))))}if(bD.data&&bD.processData&&typeof bD.data!=="string"){bD.data=b.param(bD.data,bD.traditional)}aW(aa,bD,bx,bJ);if(bA===2){return false}bw=bD.global;bD.type=bD.type.toUpperCase();bD.hasContent=!aQ.test(bD.type);if(bw&&b.active++===0){b.event.trigger("ajaxStart")}if(!bD.hasContent){if(bD.data){bD.url+=(M.test(bD.url)?"&":"?")+bD.data;delete bD.data}bC=bD.url;if(bD.cache===false){var bv=b.now(),bP=bD.url.replace(br,"$1_="+bv);bD.url=bP+((bP===bD.url)?(M.test(bD.url)?"&":"?")+"_="+bv:"")}}if(bD.data&&bD.hasContent&&bD.contentType!==false||bx.contentType){bJ.setRequestHeader("Content-Type",bD.contentType)}if(bD.ifModified){bC=bC||bD.url;if(b.lastModified[bC]){bJ.setRequestHeader("If-Modified-Since",b.lastModified[bC])}if(b.etag[bC]){bJ.setRequestHeader("If-None-Match",b.etag[bC])}}bJ.setRequestHeader("Accept",bD.dataTypes[0]&&bD.accepts[bD.dataTypes[0]]?bD.accepts[bD.dataTypes[0]]+(bD.dataTypes[0]!=="*"?", "+aV+"; q=0.01":""):bD.accepts["*"]);for(bK in bD.headers){bJ.setRequestHeader(bK,bD.headers[bK])}if(bD.beforeSend&&(bD.beforeSend.call(bS,bJ,bD)===false||bA===2)){bJ.abort();return false}for(bK in {success:1,error:1,complete:1}){bJ[bK](bD[bK])}bL=aW(r,bD,bx,bJ);if(!bL){bF(-1,"No Transport")}else{bJ.readyState=1;if(bw){bG.trigger("ajaxSend",[bJ,bD])}if(bD.async&&bD.timeout>0){bE=setTimeout(function(){bJ.abort("timeout")},bD.timeout)}try{bA=1;bL.send(bH,bF)}catch(bM){if(bA<2){bF(-1,bM)}else{throw bM}}}return bJ},param:function(e,bw){var bv=[],by=function(bz,bA){bA=b.isFunction(bA)?bA():bA;bv[bv.length]=encodeURIComponent(bz)+"="+encodeURIComponent(bA)};if(bw===L){bw=b.ajaxSettings.traditional}if(b.isArray(e)||(e.jquery&&!b.isPlainObject(e))){b.each(e,function(){by(this.name,this.value)})}else{for(var bx in e){v(bx,e[bx],bw,by)}}return bv.join("&").replace(k,"+")}});function v(bw,by,bv,bx){if(b.isArray(by)){b.each(by,function(bA,bz){if(bv||ap.test(bw)){bx(bw,bz)}else{v(bw+"["+(typeof bz==="object"||b.isArray(bz)?bA:"")+"]",bz,bv,bx)}})}else{if(!bv&&by!=null&&typeof by==="object"){for(var e in by){v(bw+"["+e+"]",by[e],bv,bx)}}else{bx(bw,by)}}}b.extend({active:0,lastModified:{},etag:{}});function bj(bD,bC,bz){var bv=bD.contents,bB=bD.dataTypes,bw=bD.responseFields,by,bA,bx,e;for(bA in bw){if(bA in bz){bC[bw[bA]]=bz[bA]}}while(bB[0]==="*"){bB.shift();if(by===L){by=bD.mimeType||bC.getResponseHeader("content-type")}}if(by){for(bA in bv){if(bv[bA]&&bv[bA].test(by)){bB.unshift(bA);break}}}if(bB[0] in bz){bx=bB[0]}else{for(bA in bz){if(!bB[0]||bD.converters[bA+" "+bB[0]]){bx=bA;break}if(!e){e=bA}}bx=bx||e}if(bx){if(bx!==bB[0]){bB.unshift(bx)}return bz[bx]}}function G(bH,bz){if(bH.dataFilter){bz=bH.dataFilter(bz,bH.dataType)}var bD=bH.dataTypes,bG={},bA,bE,bw=bD.length,bB,bC=bD[0],bx,by,bF,bv,e;for(bA=1;bA=bw.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();bw.animatedProperties[this.prop]=true;for(bA in bw.animatedProperties){if(bw.animatedProperties[bA]!==true){e=false}}if(e){if(bw.overflow!=null&&!b.support.shrinkWrapBlocks){b.each(["","X","Y"],function(bC,bD){bz.style["overflow"+bD]=bw.overflow[bC]})}if(bw.hide){b(bz).hide()}if(bw.hide||bw.show){for(bA in bw.animatedProperties){b.style(bz,bA,bw.orig[bA]);b.removeData(bz,"fxshow"+bA,true);b.removeData(bz,"toggle"+bA,true)}}bv=bw.complete;if(bv){bw.complete=false;bv.call(bz)}}return false}else{if(bw.duration==Infinity){this.now=bx}else{bB=bx-this.startTime;this.state=bB/bw.duration;this.pos=b.easing[bw.animatedProperties[this.prop]](this.state,bB,0,1,bw.duration);this.now=this.start+((this.end-this.start)*this.pos)}this.update()}return true}};b.extend(b.fx,{tick:function(){var bw,bv=b.timers,e=0;for(;e").appendTo(e),bw=bv.css("display");bv.remove();if(bw==="none"||bw===""){if(!a8){a8=av.createElement("iframe");a8.frameBorder=a8.width=a8.height=0}e.appendChild(a8);if(!m||!a8.createElement){m=(a8.contentWindow||a8.contentDocument).document;m.write((av.compatMode==="CSS1Compat"?"":"")+"");m.close()}bv=m.createElement(bx);m.body.appendChild(bv);bw=b.css(bv,"display");e.removeChild(a8)}Q[bx]=bw}return Q[bx]}var V=/^t(?:able|d|h)$/i,ad=/^(?:body|html)$/i;if("getBoundingClientRect" in av.documentElement){b.fn.offset=function(bI){var by=this[0],bB;if(bI){return this.each(function(e){b.offset.setOffset(this,bI,e)})}if(!by||!by.ownerDocument){return null}if(by===by.ownerDocument.body){return b.offset.bodyOffset(by)}try{bB=by.getBoundingClientRect()}catch(bF){}var bH=by.ownerDocument,bw=bH.documentElement;if(!bB||!b.contains(bw,by)){return bB?{top:bB.top,left:bB.left}:{top:0,left:0}}var bC=bH.body,bD=aK(bH),bA=bw.clientTop||bC.clientTop||0,bE=bw.clientLeft||bC.clientLeft||0,bv=bD.pageYOffset||b.support.boxModel&&bw.scrollTop||bC.scrollTop,bz=bD.pageXOffset||b.support.boxModel&&bw.scrollLeft||bC.scrollLeft,bG=bB.top+bv-bA,bx=bB.left+bz-bE;return{top:bG,left:bx}}}else{b.fn.offset=function(bF){var bz=this[0];if(bF){return this.each(function(bG){b.offset.setOffset(this,bF,bG)})}if(!bz||!bz.ownerDocument){return null}if(bz===bz.ownerDocument.body){return b.offset.bodyOffset(bz)}var bC,bw=bz.offsetParent,bv=bz,bE=bz.ownerDocument,bx=bE.documentElement,bA=bE.body,bB=bE.defaultView,e=bB?bB.getComputedStyle(bz,null):bz.currentStyle,bD=bz.offsetTop,by=bz.offsetLeft;while((bz=bz.parentNode)&&bz!==bA&&bz!==bx){if(b.support.fixedPosition&&e.position==="fixed"){break}bC=bB?bB.getComputedStyle(bz,null):bz.currentStyle;bD-=bz.scrollTop;by-=bz.scrollLeft;if(bz===bw){bD+=bz.offsetTop;by+=bz.offsetLeft;if(b.support.doesNotAddBorder&&!(b.support.doesAddBorderForTableAndCells&&V.test(bz.nodeName))){bD+=parseFloat(bC.borderTopWidth)||0;by+=parseFloat(bC.borderLeftWidth)||0}bv=bw;bw=bz.offsetParent}if(b.support.subtractsBorderForOverflowNotVisible&&bC.overflow!=="visible"){bD+=parseFloat(bC.borderTopWidth)||0;by+=parseFloat(bC.borderLeftWidth)||0}e=bC}if(e.position==="relative"||e.position==="static"){bD+=bA.offsetTop;by+=bA.offsetLeft}if(b.support.fixedPosition&&e.position==="fixed"){bD+=Math.max(bx.scrollTop,bA.scrollTop);by+=Math.max(bx.scrollLeft,bA.scrollLeft)}return{top:bD,left:by}}}b.offset={bodyOffset:function(e){var bw=e.offsetTop,bv=e.offsetLeft;if(b.support.doesNotIncludeMarginInBodyOffset){bw+=parseFloat(b.css(e,"marginTop"))||0;bv+=parseFloat(b.css(e,"marginLeft"))||0}return{top:bw,left:bv}},setOffset:function(bx,bG,bA){var bB=b.css(bx,"position");if(bB==="static"){bx.style.position="relative"}var bz=b(bx),bv=bz.offset(),e=b.css(bx,"top"),bE=b.css(bx,"left"),bF=(bB==="absolute"||bB==="fixed")&&b.inArray("auto",[e,bE])>-1,bD={},bC={},bw,by;if(bF){bC=bz.position();bw=bC.top;by=bC.left}else{bw=parseFloat(e)||0;by=parseFloat(bE)||0}if(b.isFunction(bG)){bG=bG.call(bx,bA,bv)}if(bG.top!=null){bD.top=(bG.top-bv.top)+bw}if(bG.left!=null){bD.left=(bG.left-bv.left)+by}if("using" in bG){bG.using.call(bx,bD)}else{bz.css(bD)}}};b.fn.extend({position:function(){if(!this[0]){return null}var bw=this[0],bv=this.offsetParent(),bx=this.offset(),e=ad.test(bv[0].nodeName)?{top:0,left:0}:bv.offset();bx.top-=parseFloat(b.css(bw,"marginTop"))||0;bx.left-=parseFloat(b.css(bw,"marginLeft"))||0;e.top+=parseFloat(b.css(bv[0],"borderTopWidth"))||0;e.left+=parseFloat(b.css(bv[0],"borderLeftWidth"))||0;return{top:bx.top-e.top,left:bx.left-e.left}},offsetParent:function(){return this.map(function(){var e=this.offsetParent||av.body;while(e&&(!ad.test(e.nodeName)&&b.css(e,"position")==="static")){e=e.offsetParent}return e})}});b.each(["Left","Top"],function(bv,e){var bw="scroll"+e;b.fn[bw]=function(bz){var bx,by;if(bz===L){bx=this[0];if(!bx){return null}by=aK(bx);return by?("pageXOffset" in by)?by[bv?"pageYOffset":"pageXOffset"]:b.support.boxModel&&by.document.documentElement[bw]||by.document.body[bw]:bx[bw]}return this.each(function(){by=aK(this);if(by){by.scrollTo(!bv?bz:b(by).scrollLeft(),bv?bz:b(by).scrollTop())}else{this[bw]=bz}})}});function aK(e){return b.isWindow(e)?e:e.nodeType===9?e.defaultView||e.parentWindow:false}b.each(["Height","Width"],function(bv,e){var bw=e.toLowerCase();b.fn["inner"+e]=function(){var bx=this[0];return bx?bx.style?parseFloat(b.css(bx,bw,"padding")):this[bw]():null};b.fn["outer"+e]=function(by){var bx=this[0];return bx?bx.style?parseFloat(b.css(bx,bw,by?"margin":"border")):this[bw]():null};b.fn[bw]=function(bz){var bA=this[0];if(!bA){return bz==null?null:this}if(b.isFunction(bz)){return this.each(function(bE){var bD=b(this);bD[bw](bz.call(this,bE,bD[bw]()))})}if(b.isWindow(bA)){var bB=bA.document.documentElement["client"+e],bx=bA.document.body;return bA.document.compatMode==="CSS1Compat"&&bB||bx&&bx["client"+e]||bB}else{if(bA.nodeType===9){return Math.max(bA.documentElement["client"+e],bA.body["scroll"+e],bA.documentElement["scroll"+e],bA.body["offset"+e],bA.documentElement["offset"+e])}else{if(bz===L){var bC=b.css(bA,bw),by=parseFloat(bC);return b.isNumeric(by)?by:bC}else{return this.css(bw,typeof bz==="string"?bz:bz+"px")}}}}});bb.jQuery=bb.$=b;if(typeof define==="function"&&define.amd&&define.amd.jQuery){define("jquery",[],function(){return b -})}})(window); diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/nav_f.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/nav_f.png deleted file mode 100644 index 72a58a5..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/nav_f.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/nav_g.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/nav_g.png deleted file mode 100644 index 2093a23..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/nav_g.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/nav_h.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/nav_h.png deleted file mode 100644 index 33389b1..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/nav_h.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/open.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/open.png deleted file mode 100644 index 30f75c7..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/open.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_61.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_61.html deleted file mode 100644 index b8328c6..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_61.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_61.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_61.js deleted file mode 100644 index c2afda4..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_61.js +++ /dev/null @@ -1,21 +0,0 @@ -var searchData= -[ - ['a',['a',['../structb2_sweep.html#afa96bacc91dd3c92ae716a45512332d6',1,'b2Sweep']]], - ['aabb',['aabb',['../structb2_tree_node.html#a798f1a594b33c713be45e76e79912239',1,'b2TreeNode']]], - ['active',['active',['../structb2_body_def.html#adf6f3e9a9e124e080c68bc0edeb170df',1,'b2BodyDef']]], - ['advance',['Advance',['../structb2_sweep.html#a35eb9b976ca87c9b8d758bec070c6c06',1,'b2Sweep']]], - ['allocate',['Allocate',['../classb2_block_allocator.html#a437bf775c23f6e36af11a6d1653d7040',1,'b2BlockAllocator']]], - ['allowsleep',['allowSleep',['../structb2_body_def.html#a0765068172e521ed63cb34084c59c003',1,'b2BodyDef']]], - ['alpha0',['alpha0',['../structb2_sweep.html#aa5f8ab90178b58bc0777096cbc6b91cf',1,'b2Sweep']]], - ['angle',['angle',['../structb2_body_def.html#a564b16f4f8e9fcb5dda397e64aa9be6f',1,'b2BodyDef']]], - ['angulardamping',['angularDamping',['../structb2_body_def.html#a01b8dc8ad9f0962efef9e4a8e836feb6',1,'b2BodyDef']]], - ['angularoffset',['angularOffset',['../structb2_motor_joint_def.html#abdb42eff4aeff1d48038e084c57e1cb0',1,'b2MotorJointDef']]], - ['angularvelocity',['angularVelocity',['../structb2_body_def.html#add7809f7a29656b8c4b643ad8c2f34a9',1,'b2BodyDef']]], - ['appendflags',['AppendFlags',['../classb2_draw.html#acc2fd4648ee0a65574770c64528f7166',1,'b2Draw']]], - ['applyangularimpulse',['ApplyAngularImpulse',['../classb2_body.html#a65384cfad8db2376cdf3fab38cac06e5',1,'b2Body']]], - ['applyforce',['ApplyForce',['../classb2_body.html#a942be8e1cd2bcd06f53c4638c45a9525',1,'b2Body']]], - ['applyforcetocenter',['ApplyForceToCenter',['../classb2_body.html#abeba04911f7a2a141169bb06fe98d06a',1,'b2Body']]], - ['applylinearimpulse',['ApplyLinearImpulse',['../classb2_body.html#a7f677e93efb3c4c065087aff317274a3',1,'b2Body']]], - ['applytorque',['ApplyTorque',['../classb2_body.html#a54a354447ac3b4cc224c8327a5abc0e8',1,'b2Body']]], - ['awake',['awake',['../structb2_body_def.html#a17a8102638aac41e7ab94278651a45bd',1,'b2BodyDef']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_62.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_62.html deleted file mode 100644 index 281723e..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_62.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_62.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_62.js deleted file mode 100644 index 02678af..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_62.js +++ /dev/null @@ -1,160 +0,0 @@ -var searchData= -[ - ['b2_5faabbextension',['b2_aabbExtension',['../b2_settings_8h.html#adb86e231496fdd6ac7795ce58d40c870',1,'b2Settings.h']]], - ['b2_5faabbmultiplier',['b2_aabbMultiplier',['../b2_settings_8h.html#a7d1bd1594f20601d4079bccbd0a6a03c',1,'b2Settings.h']]], - ['b2_5faddstate',['b2_addState',['../b2_collision_8h.html#a0a894e3715ce8c61b7958dd6e083663dac60dc479bee2089a695b37948179b3d4',1,'b2Collision.h']]], - ['b2_5fangularsleeptolerance',['b2_angularSleepTolerance',['../b2_settings_8h.html#a571f3e7c864aca14141b163205600eef',1,'b2Settings.h']]], - ['b2_5fangularslop',['b2_angularSlop',['../b2_settings_8h.html#a67810fb101bb7a7e0b3afc14845383ee',1,'b2Settings.h']]], - ['b2_5fbaumgarte',['b2_baumgarte',['../b2_settings_8h.html#a88e32539e0f9e69e3832e1321eba3caa',1,'b2Settings.h']]], - ['b2_5flinearsleeptolerance',['b2_linearSleepTolerance',['../b2_settings_8h.html#a6d882c48142a8c73011b576e20dc6dd8',1,'b2Settings.h']]], - ['b2_5flinearslop',['b2_linearSlop',['../b2_settings_8h.html#a57268ade379c5c3373d0ff558b0350cf',1,'b2Settings.h']]], - ['b2_5fmaxangularcorrection',['b2_maxAngularCorrection',['../b2_settings_8h.html#a823e4f9a6fa4b9de3c97da696571400a',1,'b2Settings.h']]], - ['b2_5fmaxlinearcorrection',['b2_maxLinearCorrection',['../b2_settings_8h.html#a23ab70e4809f5ee23abcd52018d5eb88',1,'b2Settings.h']]], - ['b2_5fmaxmanifoldpoints',['b2_maxManifoldPoints',['../b2_settings_8h.html#aa5f44cc9edf711433dea2b2ec94f3c42',1,'b2Settings.h']]], - ['b2_5fmaxpolygonvertices',['b2_maxPolygonVertices',['../b2_settings_8h.html#a09d71ee1993bee28b5b2e6d893b41884',1,'b2Settings.h']]], - ['b2_5fmaxrotation',['b2_maxRotation',['../b2_settings_8h.html#a5808c5f1e946205d8f7458101ccc698e',1,'b2Settings.h']]], - ['b2_5fmaxsubsteps',['b2_maxSubSteps',['../b2_settings_8h.html#ac1fd56e39ab8499f344b6398b7332e55',1,'b2Settings.h']]], - ['b2_5fmaxtoicontacts',['b2_maxTOIContacts',['../b2_settings_8h.html#aad3a54bcae5f7ec0235963403c2fccc9',1,'b2Settings.h']]], - ['b2_5fmaxtranslation',['b2_maxTranslation',['../b2_settings_8h.html#af2bad257bfbafed3665df3e243ba2b52',1,'b2Settings.h']]], - ['b2_5fnullstate',['b2_nullState',['../b2_collision_8h.html#a0a894e3715ce8c61b7958dd6e083663da7ce77ce1a592f49d92939997976c217b',1,'b2Collision.h']]], - ['b2_5fpersiststate',['b2_persistState',['../b2_collision_8h.html#a0a894e3715ce8c61b7958dd6e083663dafb032f2175741fa95361e55d1c069e0a',1,'b2Collision.h']]], - ['b2_5fpolygonradius',['b2_polygonRadius',['../b2_settings_8h.html#afc0f934dabffb1e83e081249133ad860',1,'b2Settings.h']]], - ['b2_5fremovestate',['b2_removeState',['../b2_collision_8h.html#a0a894e3715ce8c61b7958dd6e083663da42ca6d7de57b948c8c895cd6f51ee8be',1,'b2Collision.h']]], - ['b2_5ftimetosleep',['b2_timeToSleep',['../b2_settings_8h.html#ab021adb740e4a5e1f5f7d9913ed94781',1,'b2Settings.h']]], - ['b2_5fvelocitythreshold',['b2_velocityThreshold',['../b2_settings_8h.html#a690b448aa2dba2a1393781f8c059c22a',1,'b2Settings.h']]], - ['b2_5fversion',['b2_version',['../b2_settings_8h.html#a3a20e3b6a8b05633d911fea031f7a44f',1,'b2Settings.cpp']]], - ['b2aabb',['b2AABB',['../structb2_a_a_b_b.html',1,'']]], - ['b2alloc',['b2Alloc',['../b2_settings_8h.html#a2dca9b286e9b9d6d022055fd61534bd7',1,'b2Settings.cpp']]], - ['b2block',['b2Block',['../structb2_block.html',1,'']]], - ['b2blockallocator',['b2BlockAllocator',['../classb2_block_allocator.html',1,'']]], - ['b2body',['b2Body',['../classb2_body.html',1,'']]], - ['b2bodydef',['b2BodyDef',['../structb2_body_def.html',1,'b2BodyDef'],['../structb2_body_def.html#a87bee47596b3b3eced0d9dd1f4c18fee',1,'b2BodyDef::b2BodyDef()']]], - ['b2broadphase',['b2BroadPhase',['../classb2_broad_phase.html',1,'']]], - ['b2chainandcirclecontact',['b2ChainAndCircleContact',['../classb2_chain_and_circle_contact.html',1,'']]], - ['b2chainandpolygoncontact',['b2ChainAndPolygonContact',['../classb2_chain_and_polygon_contact.html',1,'']]], - ['b2chainshape',['b2ChainShape',['../classb2_chain_shape.html',1,'']]], - ['b2chunk',['b2Chunk',['../structb2_chunk.html',1,'']]], - ['b2circlecontact',['b2CircleContact',['../classb2_circle_contact.html',1,'']]], - ['b2circleshape',['b2CircleShape',['../classb2_circle_shape.html',1,'']]], - ['b2clipsegmenttoline',['b2ClipSegmentToLine',['../b2_collision_8h.html#a8b36e651798f55f2533f9837462ded41',1,'b2Collision.cpp']]], - ['b2clipvertex',['b2ClipVertex',['../structb2_clip_vertex.html',1,'']]], - ['b2collidecircles',['b2CollideCircles',['../b2_collision_8h.html#ab8a1bf2c6a9453307466f4870c1fa333',1,'b2CollideCircle.cpp']]], - ['b2collideedgeandcircle',['b2CollideEdgeAndCircle',['../b2_collision_8h.html#aee6f752fdf8c89152e824da12e944733',1,'b2CollideEdge.cpp']]], - ['b2collideedgeandpolygon',['b2CollideEdgeAndPolygon',['../b2_collision_8h.html#a5d0c5fab412d5ca886b1965666b16d99',1,'b2CollideEdge.cpp']]], - ['b2collidepolygonandcircle',['b2CollidePolygonAndCircle',['../b2_collision_8h.html#a30da13c857596fbefa40b47c3e1e78d0',1,'b2CollideCircle.cpp']]], - ['b2collidepolygons',['b2CollidePolygons',['../b2_collision_8h.html#a2f7b9859479384c0e2cceb9e7744afcb',1,'b2CollidePolygon.cpp']]], - ['b2collision_2eh',['b2Collision.h',['../b2_collision_8h.html',1,'']]], - ['b2color',['b2Color',['../structb2_color.html',1,'']]], - ['b2contact',['b2Contact',['../classb2_contact.html',1,'']]], - ['b2contactedge',['b2ContactEdge',['../structb2_contact_edge.html',1,'']]], - ['b2contactfeature',['b2ContactFeature',['../structb2_contact_feature.html',1,'']]], - ['b2contactfilter',['b2ContactFilter',['../classb2_contact_filter.html',1,'']]], - ['b2contactid',['b2ContactID',['../unionb2_contact_i_d.html',1,'']]], - ['b2contactimpulse',['b2ContactImpulse',['../structb2_contact_impulse.html',1,'']]], - ['b2contactlistener',['b2ContactListener',['../classb2_contact_listener.html',1,'']]], - ['b2contactmanager',['b2ContactManager',['../classb2_contact_manager.html',1,'']]], - ['b2contactpositionconstraint',['b2ContactPositionConstraint',['../structb2_contact_position_constraint.html',1,'']]], - ['b2contactregister',['b2ContactRegister',['../structb2_contact_register.html',1,'']]], - ['b2contactsolver',['b2ContactSolver',['../classb2_contact_solver.html',1,'']]], - ['b2contactsolverdef',['b2ContactSolverDef',['../structb2_contact_solver_def.html',1,'']]], - ['b2contactvelocityconstraint',['b2ContactVelocityConstraint',['../structb2_contact_velocity_constraint.html',1,'']]], - ['b2destructionlistener',['b2DestructionListener',['../classb2_destruction_listener.html',1,'']]], - ['b2distanceinput',['b2DistanceInput',['../structb2_distance_input.html',1,'']]], - ['b2distancejoint',['b2DistanceJoint',['../classb2_distance_joint.html',1,'']]], - ['b2distancejointdef',['b2DistanceJointDef',['../structb2_distance_joint_def.html',1,'']]], - ['b2distanceoutput',['b2DistanceOutput',['../structb2_distance_output.html',1,'']]], - ['b2distanceproxy',['b2DistanceProxy',['../structb2_distance_proxy.html',1,'']]], - ['b2draw',['b2Draw',['../classb2_draw.html',1,'']]], - ['b2dynamictree',['b2DynamicTree',['../classb2_dynamic_tree.html',1,'b2DynamicTree'],['../classb2_dynamic_tree.html#a8af64cf6a1566fa4c5b5c9683bd937d9',1,'b2DynamicTree::b2DynamicTree()']]], - ['b2edgeandcirclecontact',['b2EdgeAndCircleContact',['../classb2_edge_and_circle_contact.html',1,'']]], - ['b2edgeandpolygoncontact',['b2EdgeAndPolygonContact',['../classb2_edge_and_polygon_contact.html',1,'']]], - ['b2edgeshape',['b2EdgeShape',['../classb2_edge_shape.html',1,'']]], - ['b2epaxis',['b2EPAxis',['../structb2_e_p_axis.html',1,'']]], - ['b2epcollider',['b2EPCollider',['../structb2_e_p_collider.html',1,'']]], - ['b2filter',['b2Filter',['../structb2_filter.html',1,'']]], - ['b2fixture',['b2Fixture',['../classb2_fixture.html',1,'']]], - ['b2fixturedef',['b2FixtureDef',['../structb2_fixture_def.html',1,'b2FixtureDef'],['../structb2_fixture_def.html#aa34ba06bcf0d6d981931a83cf124a602',1,'b2FixtureDef::b2FixtureDef()']]], - ['b2fixtureproxy',['b2FixtureProxy',['../structb2_fixture_proxy.html',1,'']]], - ['b2free',['b2Free',['../b2_settings_8h.html#a50f4abf5edeabd0300946edbd542e24d',1,'b2Settings.cpp']]], - ['b2frictionjoint',['b2FrictionJoint',['../classb2_friction_joint.html',1,'']]], - ['b2frictionjointdef',['b2FrictionJointDef',['../structb2_friction_joint_def.html',1,'']]], - ['b2gearjoint',['b2GearJoint',['../classb2_gear_joint.html',1,'']]], - ['b2gearjointdef',['b2GearJointDef',['../structb2_gear_joint_def.html',1,'']]], - ['b2getpointstates',['b2GetPointStates',['../b2_collision_8h.html#a401e2747d276e9fbfd131989e02ff568',1,'b2Collision.cpp']]], - ['b2growablestack',['b2GrowableStack',['../classb2_growable_stack.html',1,'']]], - ['b2island',['b2Island',['../classb2_island.html',1,'']]], - ['b2jacobian',['b2Jacobian',['../structb2_jacobian.html',1,'']]], - ['b2joint',['b2Joint',['../classb2_joint.html',1,'']]], - ['b2jointdef',['b2JointDef',['../structb2_joint_def.html',1,'']]], - ['b2jointedge',['b2JointEdge',['../structb2_joint_edge.html',1,'']]], - ['b2log',['b2Log',['../b2_settings_8h.html#a9f10095d05c74eebfe535931c9061ab2',1,'b2Settings.cpp']]], - ['b2manifold',['b2Manifold',['../structb2_manifold.html',1,'']]], - ['b2manifoldpoint',['b2ManifoldPoint',['../structb2_manifold_point.html',1,'']]], - ['b2massdata',['b2MassData',['../structb2_mass_data.html',1,'']]], - ['b2mat22',['b2Mat22',['../structb2_mat22.html',1,'b2Mat22'],['../structb2_mat22.html#ac3e10f6d457c8dab9062ba378f66bc4d',1,'b2Mat22::b2Mat22()'],['../structb2_mat22.html#abd674c6d92e26962977f34bcd92ff24d',1,'b2Mat22::b2Mat22(const b2Vec2 &c1, const b2Vec2 &c2)'],['../structb2_mat22.html#a41d5d8743bda32cb8c6e212528934810',1,'b2Mat22::b2Mat22(float32 a11, float32 a12, float32 a21, float32 a22)']]], - ['b2mat33',['b2Mat33',['../structb2_mat33.html',1,'b2Mat33'],['../structb2_mat33.html#a1f4d7ddf1c8a202fc08ec64dfe191463',1,'b2Mat33::b2Mat33()'],['../structb2_mat33.html#a36d99a037008776c8d09fe0aeb5c759c',1,'b2Mat33::b2Mat33(const b2Vec3 &c1, const b2Vec3 &c2, const b2Vec3 &c3)']]], - ['b2motorjoint',['b2MotorJoint',['../classb2_motor_joint.html',1,'']]], - ['b2motorjointdef',['b2MotorJointDef',['../structb2_motor_joint_def.html',1,'']]], - ['b2mousejoint',['b2MouseJoint',['../classb2_mouse_joint.html',1,'']]], - ['b2mousejointdef',['b2MouseJointDef',['../structb2_mouse_joint_def.html',1,'']]], - ['b2pair',['b2Pair',['../structb2_pair.html',1,'']]], - ['b2pointstate',['b2PointState',['../b2_collision_8h.html#a0a894e3715ce8c61b7958dd6e083663d',1,'b2Collision.h']]], - ['b2polygonandcirclecontact',['b2PolygonAndCircleContact',['../classb2_polygon_and_circle_contact.html',1,'']]], - ['b2polygoncontact',['b2PolygonContact',['../classb2_polygon_contact.html',1,'']]], - ['b2polygonshape',['b2PolygonShape',['../classb2_polygon_shape.html',1,'']]], - ['b2position',['b2Position',['../structb2_position.html',1,'']]], - ['b2positionsolvermanifold',['b2PositionSolverManifold',['../structb2_position_solver_manifold.html',1,'']]], - ['b2prismaticjoint',['b2PrismaticJoint',['../classb2_prismatic_joint.html',1,'']]], - ['b2prismaticjointdef',['b2PrismaticJointDef',['../structb2_prismatic_joint_def.html',1,'']]], - ['b2profile',['b2Profile',['../structb2_profile.html',1,'']]], - ['b2pulleyjoint',['b2PulleyJoint',['../classb2_pulley_joint.html',1,'']]], - ['b2pulleyjointdef',['b2PulleyJointDef',['../structb2_pulley_joint_def.html',1,'']]], - ['b2querycallback',['b2QueryCallback',['../classb2_query_callback.html',1,'']]], - ['b2raycastcallback',['b2RayCastCallback',['../classb2_ray_cast_callback.html',1,'']]], - ['b2raycastinput',['b2RayCastInput',['../structb2_ray_cast_input.html',1,'']]], - ['b2raycastoutput',['b2RayCastOutput',['../structb2_ray_cast_output.html',1,'']]], - ['b2referenceface',['b2ReferenceFace',['../structb2_reference_face.html',1,'']]], - ['b2revolutejoint',['b2RevoluteJoint',['../classb2_revolute_joint.html',1,'']]], - ['b2revolutejointdef',['b2RevoluteJointDef',['../structb2_revolute_joint_def.html',1,'']]], - ['b2rope',['b2Rope',['../classb2_rope.html',1,'']]], - ['b2ropedef',['b2RopeDef',['../structb2_rope_def.html',1,'']]], - ['b2ropejoint',['b2RopeJoint',['../classb2_rope_joint.html',1,'']]], - ['b2ropejointdef',['b2RopeJointDef',['../structb2_rope_joint_def.html',1,'']]], - ['b2rot',['b2Rot',['../structb2_rot.html',1,'b2Rot'],['../structb2_rot.html#aa40dda6d390a2f54c793c63027a9b46e',1,'b2Rot::b2Rot()']]], - ['b2separationfunction',['b2SeparationFunction',['../structb2_separation_function.html',1,'']]], - ['b2settings_2eh',['b2Settings.h',['../b2_settings_8h.html',1,'']]], - ['b2shape',['b2Shape',['../classb2_shape.html',1,'']]], - ['b2simplex',['b2Simplex',['../structb2_simplex.html',1,'']]], - ['b2simplexcache',['b2SimplexCache',['../structb2_simplex_cache.html',1,'']]], - ['b2simplexvertex',['b2SimplexVertex',['../structb2_simplex_vertex.html',1,'']]], - ['b2solverdata',['b2SolverData',['../structb2_solver_data.html',1,'']]], - ['b2stackallocator',['b2StackAllocator',['../classb2_stack_allocator.html',1,'']]], - ['b2stackentry',['b2StackEntry',['../structb2_stack_entry.html',1,'']]], - ['b2sweep',['b2Sweep',['../structb2_sweep.html',1,'']]], - ['b2temppolygon',['b2TempPolygon',['../structb2_temp_polygon.html',1,'']]], - ['b2testoverlap',['b2TestOverlap',['../b2_collision_8h.html#ae7601420d0b42c1ee494e879dd2009a5',1,'b2Collision.cpp']]], - ['b2timer',['b2Timer',['../classb2_timer.html',1,'b2Timer'],['../classb2_timer.html#afcc159032a8edeaa9febdf2b6cbd49a5',1,'b2Timer::b2Timer()']]], - ['b2timestep',['b2TimeStep',['../structb2_time_step.html',1,'']]], - ['b2toiinput',['b2TOIInput',['../structb2_t_o_i_input.html',1,'']]], - ['b2toioutput',['b2TOIOutput',['../structb2_t_o_i_output.html',1,'']]], - ['b2transform',['b2Transform',['../structb2_transform.html',1,'b2Transform'],['../structb2_transform.html#a765a2e5c692a2e1d05c7a5441019373d',1,'b2Transform::b2Transform()'],['../structb2_transform.html#a823e190e4810e35e8100f4414d0bef62',1,'b2Transform::b2Transform(const b2Vec2 &position, const b2Rot &rotation)']]], - ['b2treenode',['b2TreeNode',['../structb2_tree_node.html',1,'']]], - ['b2vec2',['b2Vec2',['../structb2_vec2.html',1,'b2Vec2'],['../structb2_vec2.html#a9171b31deb83af96872f99689939a12f',1,'b2Vec2::b2Vec2()'],['../structb2_vec2.html#aa8a2f026420a84bbbc62f3a3de2041d6',1,'b2Vec2::b2Vec2(float32 x, float32 y)']]], - ['b2vec3',['b2Vec3',['../structb2_vec3.html',1,'b2Vec3'],['../structb2_vec3.html#a837423f66d6fb72d815e7390c09938b9',1,'b2Vec3::b2Vec3()'],['../structb2_vec3.html#a47df55b26ab254dcf42a16638c7feeeb',1,'b2Vec3::b2Vec3(float32 x, float32 y, float32 z)']]], - ['b2velocity',['b2Velocity',['../structb2_velocity.html',1,'']]], - ['b2velocityconstraintpoint',['b2VelocityConstraintPoint',['../structb2_velocity_constraint_point.html',1,'']]], - ['b2version',['b2Version',['../structb2_version.html',1,'']]], - ['b2weldjoint',['b2WeldJoint',['../classb2_weld_joint.html',1,'']]], - ['b2weldjointdef',['b2WeldJointDef',['../structb2_weld_joint_def.html',1,'']]], - ['b2wheeljoint',['b2WheelJoint',['../classb2_wheel_joint.html',1,'']]], - ['b2wheeljointdef',['b2WheelJointDef',['../structb2_wheel_joint_def.html',1,'']]], - ['b2world',['b2World',['../classb2_world.html',1,'b2World'],['../classb2_world.html#aeccc87fd9e36702c821a8244ca7cd875',1,'b2World::b2World()']]], - ['b2worldmanifold',['b2WorldManifold',['../structb2_world_manifold.html',1,'']]], - ['b2worldquerywrapper',['b2WorldQueryWrapper',['../structb2_world_query_wrapper.html',1,'']]], - ['b2worldraycastwrapper',['b2WorldRayCastWrapper',['../structb2_world_ray_cast_wrapper.html',1,'']]], - ['begincontact',['BeginContact',['../classb2_contact_listener.html#a35148fc56fb9eac12077200fbd928f65',1,'b2ContactListener']]], - ['bodya',['bodyA',['../structb2_joint_def.html#a8cd54c93da396be75a9788f2c6897f05',1,'b2JointDef']]], - ['bodyb',['bodyB',['../structb2_joint_def.html#aa4f4dee2fbcd12187b19506b60e68e3d',1,'b2JointDef']]], - ['bullet',['bullet',['../structb2_body_def.html#a7c0047c9a98a1d20614eeddcdbce7586',1,'b2BodyDef']]], - ['box2d_20api_20documentation',['Box2D API Documentation',['../index.html',1,'']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_63.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_63.html deleted file mode 100644 index a8fe36d..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_63.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_63.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_63.js deleted file mode 100644 index 82780f9..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_63.js +++ /dev/null @@ -1,22 +0,0 @@ -var searchData= -[ - ['c',['c',['../structb2_sweep.html#a1b5402e01b92cc82473389fc6f0375c3',1,'b2Sweep']]], - ['categorybits',['categoryBits',['../structb2_filter.html#a368907397168d39af8b4fc5201d50bba',1,'b2Filter']]], - ['center',['center',['../structb2_mass_data.html#a1d59bebc7030c4dded0c2febc57ebdd7',1,'b2MassData']]], - ['clearflags',['ClearFlags',['../classb2_draw.html#afc240b71f4ba8c17440d6ed526d4e22e',1,'b2Draw']]], - ['clearforces',['ClearForces',['../classb2_world.html#ac082ab4c4ad0b1c5ec4674315eeec643',1,'b2World']]], - ['clone',['Clone',['../classb2_chain_shape.html#a651a039aa4584e48df91db8108729bfa',1,'b2ChainShape::Clone()'],['../classb2_circle_shape.html#a895ba8656a146d26a0c531e9dbea2e14',1,'b2CircleShape::Clone()'],['../classb2_edge_shape.html#a70ce8532bab35dce4367d3717ae024b3',1,'b2EdgeShape::Clone()'],['../classb2_polygon_shape.html#a38cf6a915a85691746465c9dbfc5aeb6',1,'b2PolygonShape::Clone()'],['../classb2_shape.html#a4716243454bb9cf7c7ee1d9cb23ae634',1,'b2Shape::Clone()']]], - ['collideconnected',['collideConnected',['../structb2_joint_def.html#aef099a1f89b64e230173b6016848ea9b',1,'b2JointDef']]], - ['combine',['Combine',['../structb2_a_a_b_b.html#ad551edba62d2ad6094672a9ba3e26496',1,'b2AABB::Combine(const b2AABB &aabb)'],['../structb2_a_a_b_b.html#a34b9c7d824df845c10caa9c12ae90452',1,'b2AABB::Combine(const b2AABB &aabb1, const b2AABB &aabb2)']]], - ['computeaabb',['ComputeAABB',['../classb2_chain_shape.html#a409c21206e4c84f66700809aac5b164c',1,'b2ChainShape::ComputeAABB()'],['../classb2_circle_shape.html#aa6889a5af85aa1e272547fd0008eb64a',1,'b2CircleShape::ComputeAABB()'],['../classb2_edge_shape.html#a30f601c611eb549f9f657eee89d82f9f',1,'b2EdgeShape::ComputeAABB()'],['../classb2_polygon_shape.html#a00e225b0321bf6bb231a554036ffdf23',1,'b2PolygonShape::ComputeAABB()'],['../classb2_shape.html#a88e9807fab0c8ca9a98d8926e50a1411',1,'b2Shape::ComputeAABB()']]], - ['computemass',['ComputeMass',['../classb2_chain_shape.html#a009259d589abebeda27fe580d117b11e',1,'b2ChainShape::ComputeMass()'],['../classb2_circle_shape.html#a335edea2ef84789e102dde41ca889828',1,'b2CircleShape::ComputeMass()'],['../classb2_edge_shape.html#a3a305707a07ca3dffa6f2eaff3735dff',1,'b2EdgeShape::ComputeMass()'],['../classb2_polygon_shape.html#ad86c4c2a83a7122599462da83bf35389',1,'b2PolygonShape::ComputeMass()'],['../classb2_shape.html#a61b365526241b47f124789b0309cac69',1,'b2Shape::ComputeMass()']]], - ['contact',['contact',['../structb2_contact_edge.html#a2fbfaffa0dfdf715fd1a709cff939dee',1,'b2ContactEdge']]], - ['contains',['Contains',['../structb2_a_a_b_b.html#aba5fc112e3c8d05e034a21d95fc37704',1,'b2AABB']]], - ['correctionfactor',['correctionFactor',['../structb2_motor_joint_def.html#ab282afdb92d07ead23530f57fd0eb9ea',1,'b2MotorJointDef']]], - ['createbody',['CreateBody',['../classb2_world.html#a2eb36e967e43294bfa03ec3d177c2dae',1,'b2World']]], - ['createchain',['CreateChain',['../classb2_chain_shape.html#aa0977339b743c05f2179939ccc38e7e0',1,'b2ChainShape']]], - ['createfixture',['CreateFixture',['../classb2_body.html#aa4892301e9b9d62ede5e93dad1743894',1,'b2Body::CreateFixture(const b2FixtureDef *def)'],['../classb2_body.html#a52d971867086d5db79769a62bbb70a60',1,'b2Body::CreateFixture(const b2Shape *shape, float32 density)']]], - ['createjoint',['CreateJoint',['../classb2_world.html#a5cba9d0653149eb62504154e6fb35021',1,'b2World']]], - ['createloop',['CreateLoop',['../classb2_chain_shape.html#ac257742a52cac391e25962a4c703fb06',1,'b2ChainShape']]], - ['createproxy',['CreateProxy',['../classb2_broad_phase.html#ae2f7af756bc55ece45221466c5af449c',1,'b2BroadPhase::CreateProxy()'],['../classb2_dynamic_tree.html#ae44676f12977dada46037da47fc7ffbf',1,'b2DynamicTree::CreateProxy()']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_64.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_64.html deleted file mode 100644 index b415c0e..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_64.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_64.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_64.js deleted file mode 100644 index 52e71ea..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_64.js +++ /dev/null @@ -1,17 +0,0 @@ -var searchData= -[ - ['dampingratio',['dampingRatio',['../structb2_distance_joint_def.html#ad009b24ff211158eb4e1db4815a63b94',1,'b2DistanceJointDef::dampingRatio()'],['../structb2_mouse_joint_def.html#aee42888dab204a5c5745ba61acbfb7d6',1,'b2MouseJointDef::dampingRatio()'],['../structb2_weld_joint_def.html#ace1f0131610f14558f3dbaaed7b10e24',1,'b2WeldJointDef::dampingRatio()'],['../structb2_wheel_joint_def.html#a9976584bfee18b46dec355764797ce54',1,'b2WheelJointDef::dampingRatio()']]], - ['density',['density',['../structb2_fixture_def.html#a6e27d733789a35aa689af2b30a1de0ff',1,'b2FixtureDef']]], - ['destroybody',['DestroyBody',['../classb2_world.html#ad52231ad7a9556ef5735ac79cbcd8fcf',1,'b2World']]], - ['destroyfixture',['DestroyFixture',['../classb2_body.html#a856d1df86b7bded91f02d8cfcaea1c2f',1,'b2Body']]], - ['destroyjoint',['DestroyJoint',['../classb2_world.html#add5942aef171e54cfa384c8975746dca',1,'b2World']]], - ['destroyproxy',['DestroyProxy',['../classb2_broad_phase.html#a84f0fb227dc01a9b9baa55c7b8c68984',1,'b2BroadPhase::DestroyProxy()'],['../classb2_dynamic_tree.html#a62aa451e7d7fe029818dd05f76ea9cdc',1,'b2DynamicTree::DestroyProxy()']]], - ['drawcircle',['DrawCircle',['../classb2_draw.html#ae2effe9bca87c8d7cb90e860d13b7e9e',1,'b2Draw']]], - ['drawdebugdata',['DrawDebugData',['../classb2_world.html#a293d9865e407fd463e168b0a29856acc',1,'b2World']]], - ['drawpolygon',['DrawPolygon',['../classb2_draw.html#acd5427d1d2e7d19f1b34ad3620134d28',1,'b2Draw']]], - ['drawsegment',['DrawSegment',['../classb2_draw.html#a1de5aaf50db875d1c644c596832af57d',1,'b2Draw']]], - ['drawsolidcircle',['DrawSolidCircle',['../classb2_draw.html#a775a1d0472c5980d597904c7b596a0a6',1,'b2Draw']]], - ['drawsolidpolygon',['DrawSolidPolygon',['../classb2_draw.html#a76f2d67de0781a32cab116278c5c9eea',1,'b2Draw']]], - ['drawtransform',['DrawTransform',['../classb2_draw.html#ade698123482a491a7a61fa1fe4d3a4f4',1,'b2Draw']]], - ['dump',['Dump',['../classb2_body.html#ac9e482f7d9df92801c24e79a7e751d06',1,'b2Body::Dump()'],['../classb2_fixture.html#a57485e73a2063060e320c7176676cd5e',1,'b2Fixture::Dump()'],['../classb2_world.html#a73c1fec260d460514edd335d4c235893',1,'b2World::Dump()'],['../classb2_distance_joint.html#a3cebcc6ccce6f3c24432cd130fd53517',1,'b2DistanceJoint::Dump()'],['../classb2_friction_joint.html#a9a27084c9f4a7ea0a4f590f687ac1edb',1,'b2FrictionJoint::Dump()'],['../classb2_gear_joint.html#a1620b5a39e9da2b40d324c45736ad322',1,'b2GearJoint::Dump()'],['../classb2_joint.html#abd35e7316017ad9a40d5dbf9b5ba3f36',1,'b2Joint::Dump()'],['../classb2_motor_joint.html#a5d23974c2fc23f64426a8321520e45bb',1,'b2MotorJoint::Dump()'],['../classb2_mouse_joint.html#ae3d3a46a0032c0e50f346e7f7129617f',1,'b2MouseJoint::Dump()'],['../classb2_prismatic_joint.html#a1d8e01f0c7ca9e1840f1f17c17dda7db',1,'b2PrismaticJoint::Dump()'],['../classb2_pulley_joint.html#ad12d0e03b5d07b2f8af1005c95c67aa2',1,'b2PulleyJoint::Dump()'],['../classb2_revolute_joint.html#aa9d88f5476c77a5c4a6ef5b2ad0d3e6f',1,'b2RevoluteJoint::Dump()'],['../classb2_rope_joint.html#a4612dca9851a66701893a48d896dbd14',1,'b2RopeJoint::Dump()'],['../classb2_weld_joint.html#a2fd073c5e6264e98592240308a006981',1,'b2WeldJoint::Dump()'],['../classb2_wheel_joint.html#a09534b6f4c5d0254711e0bcc7cf3b0e4',1,'b2WheelJoint::Dump()']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_65.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_65.html deleted file mode 100644 index 49e2cae..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_65.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_65.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_65.js deleted file mode 100644 index 059256c..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_65.js +++ /dev/null @@ -1,12 +0,0 @@ -var searchData= -[ - ['e_5faabbbit',['e_aabbBit',['../classb2_draw.html#ae23c5d6c4f5230621f736593469cf7f2acdf1370108930182a45f39e7cc9b0cc7',1,'b2Draw']]], - ['e_5fcenterofmassbit',['e_centerOfMassBit',['../classb2_draw.html#ae23c5d6c4f5230621f736593469cf7f2a7f1494d816479c7d23997a6c292cd8b6',1,'b2Draw']]], - ['e_5fjointbit',['e_jointBit',['../classb2_draw.html#ae23c5d6c4f5230621f736593469cf7f2a241137a63679720c41a271c11681e2b3',1,'b2Draw']]], - ['e_5fpairbit',['e_pairBit',['../classb2_draw.html#ae23c5d6c4f5230621f736593469cf7f2ac86bb64ac65e555db28827407f2f2d43',1,'b2Draw']]], - ['e_5fshapebit',['e_shapeBit',['../classb2_draw.html#ae23c5d6c4f5230621f736593469cf7f2a1c8964c4f1fdc39e98b58ac38ecda1f9',1,'b2Draw']]], - ['enablelimit',['EnableLimit',['../classb2_prismatic_joint.html#a6d419afe7bd4b0e36d2e4607df7f79f2',1,'b2PrismaticJoint::EnableLimit()'],['../classb2_revolute_joint.html#a56bdfdd04e906e52d0258f6a481b9093',1,'b2RevoluteJoint::EnableLimit()'],['../structb2_prismatic_joint_def.html#aa61a03b68caac62a5cf66354f6756eae',1,'b2PrismaticJointDef::enableLimit()'],['../structb2_revolute_joint_def.html#a2eaefc5fc5caf879cfd59ebcd852b756',1,'b2RevoluteJointDef::enableLimit()']]], - ['enablemotor',['EnableMotor',['../classb2_prismatic_joint.html#a4a7fd079de49f7ed5aa4a5d8d90be2a2',1,'b2PrismaticJoint::EnableMotor()'],['../classb2_revolute_joint.html#a80ed5a07d9a0e07d010808a73ffae6ff',1,'b2RevoluteJoint::EnableMotor()'],['../classb2_wheel_joint.html#a7a832d814bdda135a78fad41ba671da6',1,'b2WheelJoint::EnableMotor()'],['../structb2_prismatic_joint_def.html#a58ac79a54a8110d3a745e1d6d36990dc',1,'b2PrismaticJointDef::enableMotor()'],['../structb2_revolute_joint_def.html#aa94d9e66be9f03818d0cfbd9c70b2996',1,'b2RevoluteJointDef::enableMotor()'],['../structb2_wheel_joint_def.html#a8e7193d6c34c784ffd71e79d3a70acc6',1,'b2WheelJointDef::enableMotor()']]], - ['endcontact',['EndContact',['../classb2_contact_listener.html#afb3059058e5c47903a3947c2eef5826b',1,'b2ContactListener']]], - ['evaluate',['Evaluate',['../classb2_chain_and_circle_contact.html#afe52ebd870f24cbecedd1db662705f12',1,'b2ChainAndCircleContact::Evaluate()'],['../classb2_chain_and_polygon_contact.html#a8c25ceb49d981797d0a7f8a1ea769442',1,'b2ChainAndPolygonContact::Evaluate()'],['../classb2_circle_contact.html#ac0651dda773561b8561b8efa3cd31d5c',1,'b2CircleContact::Evaluate()'],['../classb2_contact.html#ae3c2842e5325b2d4500f8ed1d4de2f72',1,'b2Contact::Evaluate()'],['../classb2_edge_and_circle_contact.html#a8f083c4c7c7da83eae38975164fd1452',1,'b2EdgeAndCircleContact::Evaluate()'],['../classb2_edge_and_polygon_contact.html#a5f360f5f0b1d367beb517ba9f380c84b',1,'b2EdgeAndPolygonContact::Evaluate()'],['../classb2_polygon_and_circle_contact.html#ac24d495022aae853cb573f86c8d86c3d',1,'b2PolygonAndCircleContact::Evaluate()'],['../classb2_polygon_contact.html#ae75f78bb52c76fc4fffda4d91e62d354',1,'b2PolygonContact::Evaluate()']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_66.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_66.html deleted file mode 100644 index 6aa068f..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_66.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_66.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_66.js deleted file mode 100644 index 9d97be8..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_66.js +++ /dev/null @@ -1,9 +0,0 @@ -var searchData= -[ - ['filter',['filter',['../structb2_fixture_def.html#a4c3e493a13d11ab27fcc2eee9f52fd61',1,'b2FixtureDef']]], - ['fixedrotation',['fixedRotation',['../structb2_body_def.html#a273a51c57440a8884de5939d76b6e3ea',1,'b2BodyDef']]], - ['flagforfiltering',['FlagForFiltering',['../classb2_contact.html#a44a3d32149021269eb9dfd4015c98e0d',1,'b2Contact']]], - ['free',['Free',['../classb2_block_allocator.html#a945fdf86e260318b930a53dcc887ca8b',1,'b2BlockAllocator']]], - ['frequencyhz',['frequencyHz',['../structb2_distance_joint_def.html#a35e2362bcb6c58734f95d0ac045863ea',1,'b2DistanceJointDef::frequencyHz()'],['../structb2_mouse_joint_def.html#a61e9017eb928608f75edddb6e0ca7f63',1,'b2MouseJointDef::frequencyHz()'],['../structb2_weld_joint_def.html#abf42ce852914af845e9203b341f55c87',1,'b2WeldJointDef::frequencyHz()'],['../structb2_wheel_joint_def.html#acf3540f46eaf3bc91426386939bd37b1',1,'b2WheelJointDef::frequencyHz()']]], - ['friction',['friction',['../structb2_fixture_def.html#a66081c8d0e12d4bdb0b341fb97b46eb6',1,'b2FixtureDef']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_67.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_67.html deleted file mode 100644 index a6568a3..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_67.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_67.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_67.js deleted file mode 100644 index 1701a43..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_67.js +++ /dev/null @@ -1,109 +0,0 @@ -var searchData= -[ - ['getaabb',['GetAABB',['../classb2_fixture.html#abdc2a225110310a481a78cdb14000ca7',1,'b2Fixture']]], - ['getanchora',['GetAnchorA',['../classb2_distance_joint.html#a66c1cb4deff1166c1dab67df6047a89c',1,'b2DistanceJoint::GetAnchorA()'],['../classb2_friction_joint.html#a01918be429fa5d37d51fda4fe0cc639b',1,'b2FrictionJoint::GetAnchorA()'],['../classb2_gear_joint.html#a2b5cdcb78c7ac3df4bd47e4195443a05',1,'b2GearJoint::GetAnchorA()'],['../classb2_joint.html#abe46ca3aad5db73909a9b5a7b2117447',1,'b2Joint::GetAnchorA()'],['../classb2_motor_joint.html#ac94ea6c5f903c8d8e22724889bff2562',1,'b2MotorJoint::GetAnchorA()'],['../classb2_mouse_joint.html#a9db1c131fde2d11e61c6ccee9c28219b',1,'b2MouseJoint::GetAnchorA()'],['../classb2_prismatic_joint.html#ae6ccc4b3ceba180e4381fe4b821ef8d1',1,'b2PrismaticJoint::GetAnchorA()'],['../classb2_pulley_joint.html#a05ac0d0d927e9541f08b07cb1bf9ec56',1,'b2PulleyJoint::GetAnchorA()'],['../classb2_revolute_joint.html#a7f266986c12009973fd74c9828b6c236',1,'b2RevoluteJoint::GetAnchorA()'],['../classb2_rope_joint.html#a046c6f0bc73800716c669a2b955b3c05',1,'b2RopeJoint::GetAnchorA()'],['../classb2_weld_joint.html#a8550de74e174a08856bc4bc7a4853429',1,'b2WeldJoint::GetAnchorA()'],['../classb2_wheel_joint.html#a6499dcd788d29f06c2e1b28c755e01c8',1,'b2WheelJoint::GetAnchorA()']]], - ['getanchorb',['GetAnchorB',['../classb2_distance_joint.html#afc58d85cf7cc5e23082cf469e1a1a067',1,'b2DistanceJoint::GetAnchorB()'],['../classb2_friction_joint.html#ac519021aadea0faf1df01f232023c745',1,'b2FrictionJoint::GetAnchorB()'],['../classb2_gear_joint.html#a84b9aedb8918a98b84032c9f0f823e13',1,'b2GearJoint::GetAnchorB()'],['../classb2_joint.html#a88e947c65d4ea26fe539f02a8cb7f7a9',1,'b2Joint::GetAnchorB()'],['../classb2_motor_joint.html#acb603ebe6615308654574356e8bb7dc5',1,'b2MotorJoint::GetAnchorB()'],['../classb2_mouse_joint.html#a0db991ec36238105eb481f75e9b6161a',1,'b2MouseJoint::GetAnchorB()'],['../classb2_prismatic_joint.html#aa2e00a1801989c3b6bc67bf47092b531',1,'b2PrismaticJoint::GetAnchorB()'],['../classb2_pulley_joint.html#a5cc3596f683d621b9a885c2569ecd452',1,'b2PulleyJoint::GetAnchorB()'],['../classb2_revolute_joint.html#a3a67ad189b29ea8ab6602a28697807f6',1,'b2RevoluteJoint::GetAnchorB()'],['../classb2_rope_joint.html#a14a8ef7c16e0d6d874cdfb986d0eb8f0',1,'b2RopeJoint::GetAnchorB()'],['../classb2_weld_joint.html#a2030794df9b2a3111bcf7a1eb0593960',1,'b2WeldJoint::GetAnchorB()'],['../classb2_wheel_joint.html#ace182061f7f78ac2ec3f957a763ca5d3',1,'b2WheelJoint::GetAnchorB()']]], - ['getangle',['GetAngle',['../structb2_rot.html#a67a6c08812c009654f00800256c8bfdc',1,'b2Rot::GetAngle()'],['../classb2_body.html#a57c4a1946a6dd5a00e28691bc419fdcd',1,'b2Body::GetAngle()']]], - ['getangulardamping',['GetAngularDamping',['../classb2_body.html#a5153143f2593802c85e54a21de5464ce',1,'b2Body']]], - ['getangularvelocity',['GetAngularVelocity',['../classb2_body.html#a158fe4c141168d2c3e65096b209f548c',1,'b2Body']]], - ['getarearatio',['GetAreaRatio',['../classb2_dynamic_tree.html#ad78282a720c451e032b43c34cba02f1a',1,'b2DynamicTree']]], - ['getautoclearforces',['GetAutoClearForces',['../classb2_world.html#af56cc43ebde27946ed39382b4ea31640',1,'b2World']]], - ['getbody',['GetBody',['../classb2_fixture.html#a9d6536ef274d768e86ab0a8330921535',1,'b2Fixture']]], - ['getbodya',['GetBodyA',['../classb2_joint.html#a2ed5eca3dbdce48665c14452b280613f',1,'b2Joint']]], - ['getbodyb',['GetBodyB',['../classb2_joint.html#a700b3d4c87f34f456151b9598e4641a0',1,'b2Joint']]], - ['getbodycount',['GetBodyCount',['../classb2_world.html#a4559122ea51401b4fb7342eb6232ce74',1,'b2World']]], - ['getbodylist',['GetBodyList',['../classb2_world.html#a1b87c03955e3312d308ddf679adf3c85',1,'b2World']]], - ['getcenter',['GetCenter',['../structb2_a_a_b_b.html#aa26703e234bd6fb30fd443cd5001795a',1,'b2AABB']]], - ['getchildcount',['GetChildCount',['../classb2_chain_shape.html#a44bd58b9602dbe57cdfc3b66f8f03b61',1,'b2ChainShape::GetChildCount()'],['../classb2_circle_shape.html#a64b58799675edc9a6debc09c0d6ddce4',1,'b2CircleShape::GetChildCount()'],['../classb2_edge_shape.html#a8c15a5a5aa8e7dc69826be17aaa82293',1,'b2EdgeShape::GetChildCount()'],['../classb2_polygon_shape.html#ae844375297d19744e01a37b397a5baba',1,'b2PolygonShape::GetChildCount()'],['../classb2_shape.html#a05a3c445017d96df9238ceefe6ce37ab',1,'b2Shape::GetChildCount()']]], - ['getchildedge',['GetChildEdge',['../classb2_chain_shape.html#a614e630221ac7f19257c9351edf4bd12',1,'b2ChainShape']]], - ['getchildindexa',['GetChildIndexA',['../classb2_contact.html#ab0c9c059c776f315ae62abb5c978afcc',1,'b2Contact']]], - ['getchildindexb',['GetChildIndexB',['../classb2_contact.html#a9edc26022c3d1a9cf1dab9d79d639b3f',1,'b2Contact']]], - ['getcollideconnected',['GetCollideConnected',['../classb2_joint.html#a09c6bdfa5842522ba381bac8dd559f4d',1,'b2Joint']]], - ['getcontactcount',['GetContactCount',['../classb2_world.html#abcc976f1755f9bb94a8650f5f4219a8d',1,'b2World']]], - ['getcontactlist',['GetContactList',['../classb2_body.html#a16bdbfb266c82a0ef51be351a8928bc5',1,'b2Body::GetContactList()'],['../classb2_world.html#ab1e1c59fd7534c0268c2a3e31370a425',1,'b2World::GetContactList()']]], - ['getcontactmanager',['GetContactManager',['../classb2_world.html#a16259159ae1719c30808561c990a8c05',1,'b2World']]], - ['getcorrectionfactor',['GetCorrectionFactor',['../classb2_motor_joint.html#a9ea99c4280374d85b29d4ab74afd7aff',1,'b2MotorJoint']]], - ['getcurrentlengtha',['GetCurrentLengthA',['../classb2_pulley_joint.html#aa57599ec0d229c3ef95dafa39a277c7b',1,'b2PulleyJoint']]], - ['getcurrentlengthb',['GetCurrentLengthB',['../classb2_pulley_joint.html#a3b68ad489d726afa74e538331c1f72d8',1,'b2PulleyJoint']]], - ['getdensity',['GetDensity',['../classb2_fixture.html#a5deb4acfb464f3dcb668f081a2c44ff4',1,'b2Fixture']]], - ['getextents',['GetExtents',['../structb2_a_a_b_b.html#aff8b9aa64069a33fe45025299aa0e9b7',1,'b2AABB']]], - ['getfataabb',['GetFatAABB',['../classb2_broad_phase.html#a7b00ac700db52e52248a25397007d4ff',1,'b2BroadPhase::GetFatAABB()'],['../classb2_dynamic_tree.html#adf4676b1c34a57b4451bcbeaebe65687',1,'b2DynamicTree::GetFatAABB()']]], - ['getfilterdata',['GetFilterData',['../classb2_fixture.html#a5bc271a6e8082e727b053aead1ae86a9',1,'b2Fixture']]], - ['getfixturea',['GetFixtureA',['../classb2_contact.html#a707a3a5a14c2cdd4c6eb7fc648d76037',1,'b2Contact']]], - ['getfixtureb',['GetFixtureB',['../classb2_contact.html#a68464fe587d7e6a1f52763e965bb7361',1,'b2Contact']]], - ['getfixturelist',['GetFixtureList',['../classb2_body.html#a64634da20c6e0ab2d68a3cc9ea15efc3',1,'b2Body']]], - ['getflags',['GetFlags',['../classb2_draw.html#acadab1a12ec06541814f6118950aa998',1,'b2Draw']]], - ['getfriction',['GetFriction',['../classb2_fixture.html#a31253b90b87f1fec7256bba92aeb4645',1,'b2Fixture::GetFriction()'],['../classb2_contact.html#a0b6daf4137fd1719961f5d780b8dda15',1,'b2Contact::GetFriction()']]], - ['getgravity',['GetGravity',['../classb2_world.html#a1e34bcd2f75fbdd41e2d84b3eb26d1ab',1,'b2World']]], - ['getgravityscale',['GetGravityScale',['../classb2_body.html#ad8348f06a391d169d6395dfd66762454',1,'b2Body']]], - ['getgroundanchora',['GetGroundAnchorA',['../classb2_pulley_joint.html#a19eefa28d2647882406ea9bfe2850a9e',1,'b2PulleyJoint']]], - ['getgroundanchorb',['GetGroundAnchorB',['../classb2_pulley_joint.html#a1b49d0dbce802f19711a9ab6d7dadfee',1,'b2PulleyJoint']]], - ['getheight',['GetHeight',['../classb2_dynamic_tree.html#add7e09cdf279e7c0031da9dfd4cdf4db',1,'b2DynamicTree']]], - ['getinertia',['GetInertia',['../classb2_body.html#a8c8916caf67c1e618a07d8b6b9253fa8',1,'b2Body']]], - ['getinverse22',['GetInverse22',['../structb2_mat33.html#a9eb5090b15d08ab495458adfec50e7cb',1,'b2Mat33']]], - ['getjoint1',['GetJoint1',['../classb2_gear_joint.html#acd3fb38982319f387d1eb7aeddd5311f',1,'b2GearJoint']]], - ['getjoint2',['GetJoint2',['../classb2_gear_joint.html#af1673b8edd80f3ae3b868c3a18b7b058',1,'b2GearJoint']]], - ['getjointangle',['GetJointAngle',['../classb2_revolute_joint.html#ab20fc12ce5ad5d84a032eb613c80764a',1,'b2RevoluteJoint']]], - ['getjointcount',['GetJointCount',['../classb2_world.html#a54a95a98787ed5f383c6549ee1f4c4d5',1,'b2World']]], - ['getjointlist',['GetJointList',['../classb2_body.html#a55cf2eb851780599ca5c1f6f25a17e41',1,'b2Body::GetJointList()'],['../classb2_world.html#a55db7240f8290aa02cab79f181934de8',1,'b2World::GetJointList()']]], - ['getjointspeed',['GetJointSpeed',['../classb2_prismatic_joint.html#a221aa1c6253686c96a02ecdd99c84b4c',1,'b2PrismaticJoint::GetJointSpeed()'],['../classb2_revolute_joint.html#a48e4db13c187af159587d731656aa0c4',1,'b2RevoluteJoint::GetJointSpeed()'],['../classb2_wheel_joint.html#a398bc3a1f807905e0923cc7d9bff640d',1,'b2WheelJoint::GetJointSpeed()']]], - ['getjointtranslation',['GetJointTranslation',['../classb2_prismatic_joint.html#ade994ac79315258c80bccceef371df57',1,'b2PrismaticJoint::GetJointTranslation()'],['../classb2_wheel_joint.html#abc3791f9c8139e5c5ba0fb72d5c7f9df',1,'b2WheelJoint::GetJointTranslation()']]], - ['getlengtha',['GetLengthA',['../classb2_pulley_joint.html#a6b4c2e5cb4f5da48fcb074c7b5988084',1,'b2PulleyJoint']]], - ['getlengthb',['GetLengthB',['../classb2_pulley_joint.html#abc7f31a35c6fb32647fd15d57e4ce60c',1,'b2PulleyJoint']]], - ['getlineardamping',['GetLinearDamping',['../classb2_body.html#a7283e4821d24aed0fa5b0f7891175183',1,'b2Body']]], - ['getlinearvelocity',['GetLinearVelocity',['../classb2_body.html#a427cf835b5d3327a003ff43cb6107ead',1,'b2Body']]], - ['getlinearvelocityfromlocalpoint',['GetLinearVelocityFromLocalPoint',['../classb2_body.html#a4429e3f380e882def11c52ac893b8e2e',1,'b2Body']]], - ['getlinearvelocityfromworldpoint',['GetLinearVelocityFromWorldPoint',['../classb2_body.html#a4238ae43f5afeb2126b8e8bf765334b5',1,'b2Body']]], - ['getlocalanchora',['GetLocalAnchorA',['../classb2_distance_joint.html#a75a41c40f21e48a6f9e947dd1dc46db4',1,'b2DistanceJoint::GetLocalAnchorA()'],['../classb2_friction_joint.html#a91ef023d373f775c401ae359f6f74d60',1,'b2FrictionJoint::GetLocalAnchorA()'],['../classb2_prismatic_joint.html#a8453728991590d064f75ac9ee43eb0cb',1,'b2PrismaticJoint::GetLocalAnchorA()'],['../classb2_revolute_joint.html#af270a3029b2573bf85cde345c22d65ab',1,'b2RevoluteJoint::GetLocalAnchorA()'],['../classb2_rope_joint.html#aa423bbe186d46bff0b50ede8338851d4',1,'b2RopeJoint::GetLocalAnchorA()'],['../classb2_weld_joint.html#aaef4f238fb5badf1112321ba878e8b06',1,'b2WeldJoint::GetLocalAnchorA()'],['../classb2_wheel_joint.html#abf725ee0fa640d1b9374283f6f50e82d',1,'b2WheelJoint::GetLocalAnchorA()']]], - ['getlocalanchorb',['GetLocalAnchorB',['../classb2_distance_joint.html#a22e9572c8b3d1f0619b340738811c082',1,'b2DistanceJoint::GetLocalAnchorB()'],['../classb2_friction_joint.html#acd57698eb559d36eeac6df00dfd8b89f',1,'b2FrictionJoint::GetLocalAnchorB()'],['../classb2_prismatic_joint.html#a5591358eced21a8845744a8c47b7df9d',1,'b2PrismaticJoint::GetLocalAnchorB()'],['../classb2_revolute_joint.html#a985f788cffd53d7bb926b11cf77734e4',1,'b2RevoluteJoint::GetLocalAnchorB()'],['../classb2_rope_joint.html#a511b297fbebfbecdcdce68e1cffa272c',1,'b2RopeJoint::GetLocalAnchorB()'],['../classb2_weld_joint.html#a7fdc0c047dc04bbc8c5ca67011be071c',1,'b2WeldJoint::GetLocalAnchorB()'],['../classb2_wheel_joint.html#a38313bcd5d5a91f190956086b9d9b8e5',1,'b2WheelJoint::GetLocalAnchorB()']]], - ['getlocalaxisa',['GetLocalAxisA',['../classb2_prismatic_joint.html#ab1aff69853c5ddb89ed8efdf8a0f4376',1,'b2PrismaticJoint::GetLocalAxisA()'],['../classb2_wheel_joint.html#a03c1a1cf19dbada68630aa3cbf970a55',1,'b2WheelJoint::GetLocalAxisA()']]], - ['getlocalcenter',['GetLocalCenter',['../classb2_body.html#a27ed7f8a3b36ddfb01069ee8f7106033',1,'b2Body']]], - ['getlocalpoint',['GetLocalPoint',['../classb2_body.html#a8f9ef0226b7eb989e700fa8898d29fc0',1,'b2Body']]], - ['getlocalvector',['GetLocalVector',['../classb2_body.html#a93de09565c0c1a9da2601c1847aa22df',1,'b2Body']]], - ['getlowerlimit',['GetLowerLimit',['../classb2_prismatic_joint.html#ad58727abc63a820e6d93983408a9508b',1,'b2PrismaticJoint::GetLowerLimit()'],['../classb2_revolute_joint.html#a0f33656869e46ec9405f42d68e858220',1,'b2RevoluteJoint::GetLowerLimit()']]], - ['getmanifold',['GetManifold',['../classb2_contact.html#ab0597077b23615476327f9b32d9c4979',1,'b2Contact']]], - ['getmass',['GetMass',['../classb2_body.html#a4f62fea4546d2b9ca64a5f6723bbc71c',1,'b2Body']]], - ['getmassdata',['GetMassData',['../classb2_body.html#ad0a90df7e2617a8572cd476267f95417',1,'b2Body::GetMassData()'],['../classb2_fixture.html#adbfb9b64006abaaa0ca01e6d9e06deea',1,'b2Fixture::GetMassData()']]], - ['getmaxbalance',['GetMaxBalance',['../classb2_dynamic_tree.html#ae02c45d1a68b42e59d170438ddbb7977',1,'b2DynamicTree']]], - ['getmaxforce',['GetMaxForce',['../classb2_friction_joint.html#af3abd33af3943197c89375057302fd0d',1,'b2FrictionJoint::GetMaxForce()'],['../classb2_motor_joint.html#ac63233e45f6428319a9857bf89557f46',1,'b2MotorJoint::GetMaxForce()']]], - ['getmaxtorque',['GetMaxTorque',['../classb2_friction_joint.html#ae59d07030bded21f46a6a432553e71c1',1,'b2FrictionJoint::GetMaxTorque()'],['../classb2_motor_joint.html#af84c933978d0a13a242c71a612f4116b',1,'b2MotorJoint::GetMaxTorque()']]], - ['getmilliseconds',['GetMilliseconds',['../classb2_timer.html#a354e020ec583a067b8f3b90a42a88e53',1,'b2Timer']]], - ['getmotorforce',['GetMotorForce',['../classb2_prismatic_joint.html#aee80c02627750559fc382422804a30e6',1,'b2PrismaticJoint']]], - ['getmotorspeed',['GetMotorSpeed',['../classb2_prismatic_joint.html#a20f969fefb08d86728bd1f0cf03e121f',1,'b2PrismaticJoint::GetMotorSpeed()'],['../classb2_revolute_joint.html#a5ebdb2b410725d2c7999d8fce792e0da',1,'b2RevoluteJoint::GetMotorSpeed()'],['../classb2_wheel_joint.html#acc7a31fdd444614ba1943f57f0c6ac5a',1,'b2WheelJoint::GetMotorSpeed()']]], - ['getmotortorque',['GetMotorTorque',['../classb2_revolute_joint.html#a64579cb1db5e9674ec17244133c72920',1,'b2RevoluteJoint::GetMotorTorque()'],['../classb2_wheel_joint.html#a4fbfb199ed267f7a2fad934cd2f4fbdc',1,'b2WheelJoint::GetMotorTorque()']]], - ['getnext',['GetNext',['../classb2_body.html#ad54182a11d02362b027a0eb072775bdc',1,'b2Body::GetNext()'],['../classb2_fixture.html#a0241952461f6f1a04a3c850306390fd2',1,'b2Fixture::GetNext()'],['../classb2_contact.html#aebfebb1e4b27dc0bd7aa120093e3d650',1,'b2Contact::GetNext()'],['../classb2_joint.html#a1a0e2137b631010750c728cb4e276e5d',1,'b2Joint::GetNext()']]], - ['getperimeter',['GetPerimeter',['../structb2_a_a_b_b.html#ace4448c60ef309726e59247a8ae67db5',1,'b2AABB']]], - ['getposition',['GetPosition',['../classb2_body.html#a798da9dc2d47431912d991d152b13711',1,'b2Body']]], - ['getprofile',['GetProfile',['../classb2_world.html#af41b3f1a21efc854b485d311911e24b2',1,'b2World']]], - ['getproxycount',['GetProxyCount',['../classb2_broad_phase.html#a399fa4f5289a1ec46a65f726f3bac890',1,'b2BroadPhase::GetProxyCount()'],['../classb2_world.html#a67f1f9fbdd85abd2100104c5eabe17cb',1,'b2World::GetProxyCount()']]], - ['getratio',['GetRatio',['../classb2_pulley_joint.html#a625685e60d95b7c5a725e8586d146752',1,'b2PulleyJoint']]], - ['getreactionforce',['GetReactionForce',['../classb2_distance_joint.html#a99413cc114b2f4dc4ce7693c062ce226',1,'b2DistanceJoint::GetReactionForce()'],['../classb2_friction_joint.html#ae646d8a191e490f690b748f057cdd90b',1,'b2FrictionJoint::GetReactionForce()'],['../classb2_gear_joint.html#ad415f3db70ba3e60a132ef668c263713',1,'b2GearJoint::GetReactionForce()'],['../classb2_joint.html#a7e0eddefb9b69ad050b8ef6425838a74',1,'b2Joint::GetReactionForce()'],['../classb2_motor_joint.html#ab9d427f4fd74d0afbd17989701d20924',1,'b2MotorJoint::GetReactionForce()'],['../classb2_mouse_joint.html#ab8e07dbed9d24c1c046d1ede60930c52',1,'b2MouseJoint::GetReactionForce()'],['../classb2_prismatic_joint.html#a9e2a6103c1ff57e65d524b42f72b09e0',1,'b2PrismaticJoint::GetReactionForce()'],['../classb2_pulley_joint.html#a38c174bf1cf1011063ff4c16556b331e',1,'b2PulleyJoint::GetReactionForce()'],['../classb2_revolute_joint.html#a1e5d6eb28f3f35e825cfc42dbd23d66e',1,'b2RevoluteJoint::GetReactionForce()'],['../classb2_rope_joint.html#afe0acc77e40b62133547897a6d01b7e6',1,'b2RopeJoint::GetReactionForce()'],['../classb2_weld_joint.html#a2ca6323d03b9fd4b591a0bfadddc25a8',1,'b2WeldJoint::GetReactionForce()'],['../classb2_wheel_joint.html#aa16e3a1c0246017bc25e72cf494daa42',1,'b2WheelJoint::GetReactionForce()']]], - ['getreactiontorque',['GetReactionTorque',['../classb2_distance_joint.html#a8d65840abe0b398399020524852788fd',1,'b2DistanceJoint::GetReactionTorque()'],['../classb2_friction_joint.html#a49479d4af9c4bffa0b146d153c78512c',1,'b2FrictionJoint::GetReactionTorque()'],['../classb2_gear_joint.html#ae2c4b1ae1cf00f14331332c4fe9ae964',1,'b2GearJoint::GetReactionTorque()'],['../classb2_joint.html#ae355e441c2aa842777dc04e24f15ced0',1,'b2Joint::GetReactionTorque()'],['../classb2_motor_joint.html#a17741b102f8bb3e32f1c139781b41c04',1,'b2MotorJoint::GetReactionTorque()'],['../classb2_mouse_joint.html#a68efbc617aa7f0a41578e0aea988d662',1,'b2MouseJoint::GetReactionTorque()'],['../classb2_prismatic_joint.html#a59b419ccec1a5a4b80d6664d03bd256e',1,'b2PrismaticJoint::GetReactionTorque()'],['../classb2_pulley_joint.html#a418b200055623474c44742b1342dd278',1,'b2PulleyJoint::GetReactionTorque()'],['../classb2_revolute_joint.html#a85cdf204bf80dc0a4df6536e2e9a941e',1,'b2RevoluteJoint::GetReactionTorque()'],['../classb2_rope_joint.html#abb7baf596f13ff5a76ff657ad6d3232c',1,'b2RopeJoint::GetReactionTorque()'],['../classb2_weld_joint.html#a7199b5cce47b29624b4b231d78af71a3',1,'b2WeldJoint::GetReactionTorque()'],['../classb2_wheel_joint.html#ae88eeec295a19f216acab9b23d9c704b',1,'b2WheelJoint::GetReactionTorque()']]], - ['getreferenceangle',['GetReferenceAngle',['../classb2_prismatic_joint.html#ae9e0a48367f191b2dd6a5bc05364a372',1,'b2PrismaticJoint::GetReferenceAngle()'],['../classb2_revolute_joint.html#acfe881247b1f1f8f12aefd3a8f0cfd00',1,'b2RevoluteJoint::GetReferenceAngle()'],['../classb2_weld_joint.html#a0d347bf22be13aa8a96f615e230b095a',1,'b2WeldJoint::GetReferenceAngle()']]], - ['getrestitution',['GetRestitution',['../classb2_fixture.html#a6ce4d949ffff6201a117f1e3833953f8',1,'b2Fixture::GetRestitution()'],['../classb2_contact.html#aed12746a2855277479802144b699326b',1,'b2Contact::GetRestitution()']]], - ['getshape',['GetShape',['../classb2_fixture.html#aaa2b73fa212fa53b1c800cccd7a1d31e',1,'b2Fixture']]], - ['getsupport',['GetSupport',['../structb2_distance_proxy.html#ad763543846db0c220e6b0a29275d723e',1,'b2DistanceProxy::GetSupport()'],['../classb2_circle_shape.html#a8644ce19547e5efaf43bd8ec543e284e',1,'b2CircleShape::GetSupport()']]], - ['getsupportvertex',['GetSupportVertex',['../structb2_distance_proxy.html#ad98a909b9aee9e42ba184b1e6bd526ba',1,'b2DistanceProxy::GetSupportVertex()'],['../classb2_circle_shape.html#aa23975b480495bf8bc70073d4f135fd2',1,'b2CircleShape::GetSupportVertex()']]], - ['getsyminverse33',['GetSymInverse33',['../structb2_mat33.html#a501f85edde8f080e4e9ecff0ec2ee27e',1,'b2Mat33']]], - ['gettangentspeed',['GetTangentSpeed',['../classb2_contact.html#a961417ed0d43706ee8a39c396d5e6002',1,'b2Contact']]], - ['gettransform',['GetTransform',['../structb2_sweep.html#a81947646092468290d15005928e12fcd',1,'b2Sweep::GetTransform()'],['../classb2_body.html#adaaebca750d0bda56a543884adc5f519',1,'b2Body::GetTransform()']]], - ['gettreebalance',['GetTreeBalance',['../classb2_broad_phase.html#a1189e783d39bfd69b314284ce52ea3c3',1,'b2BroadPhase::GetTreeBalance()'],['../classb2_world.html#a9fb7c28d042b600ba1155e3d38f1c5f9',1,'b2World::GetTreeBalance()']]], - ['gettreeheight',['GetTreeHeight',['../classb2_broad_phase.html#aeb9f94f44840c5bd766031d78f63ca08',1,'b2BroadPhase::GetTreeHeight()'],['../classb2_world.html#a48f90a31dc2ad30dbc50cac5111400d7',1,'b2World::GetTreeHeight()']]], - ['gettreequality',['GetTreeQuality',['../classb2_broad_phase.html#abe02c30ca1b3b9c9b84a571a2f8cef92',1,'b2BroadPhase::GetTreeQuality()'],['../classb2_world.html#a0e9dceab7052fd6e0d73d6024cca1bcb',1,'b2World::GetTreeQuality()']]], - ['gettype',['GetType',['../classb2_shape.html#a3b6093f16c18f8a877519a29674abca0',1,'b2Shape::GetType()'],['../classb2_body.html#aa0d5acad4f0104e709e34e29a4a0c1a4',1,'b2Body::GetType()'],['../classb2_fixture.html#ab0e1d6bc1c42e6f779e77db408ab2d24',1,'b2Fixture::GetType()'],['../classb2_joint.html#a37a2ca3f0d41c6903d2cc73757f02be2',1,'b2Joint::GetType()']]], - ['getupperlimit',['GetUpperLimit',['../classb2_prismatic_joint.html#ac72bdcf5108d474d3f11e86773a9a471',1,'b2PrismaticJoint::GetUpperLimit()'],['../classb2_revolute_joint.html#a9bb683118879611e84e4cb26bdc8d39f',1,'b2RevoluteJoint::GetUpperLimit()']]], - ['getuserdata',['GetUserData',['../classb2_broad_phase.html#a89c099e95237d68577376d8f9a4ed013',1,'b2BroadPhase::GetUserData()'],['../classb2_dynamic_tree.html#a44ab57dce3c42b0a5847a64e489a71ce',1,'b2DynamicTree::GetUserData()'],['../classb2_body.html#a6833f7e2ef1b6ac82641bb6b07ec50d1',1,'b2Body::GetUserData()'],['../classb2_fixture.html#a57247425e7c859d7653eec417ec83cdc',1,'b2Fixture::GetUserData()'],['../classb2_joint.html#a505ab02c234f1cc20aa3375f3ab7b587',1,'b2Joint::GetUserData()']]], - ['getvertex',['GetVertex',['../structb2_distance_proxy.html#ac5ecae62c2a96afdf220074118c71a92',1,'b2DistanceProxy::GetVertex()'],['../classb2_circle_shape.html#a029e555a3ea76b00479b051f1b813c3a',1,'b2CircleShape::GetVertex()'],['../classb2_polygon_shape.html#a88cdb687ec7dc0cbcf4bd25fd37f4da1',1,'b2PolygonShape::GetVertex()']]], - ['getvertexcount',['GetVertexCount',['../structb2_distance_proxy.html#a43c51168f2829c55dacc8b9adbd90206',1,'b2DistanceProxy::GetVertexCount()'],['../classb2_circle_shape.html#a477a087b143147223e4b9fbb6581acf1',1,'b2CircleShape::GetVertexCount()'],['../classb2_polygon_shape.html#ae220f24c42eff4aef4cd452676ca2ced',1,'b2PolygonShape::GetVertexCount()']]], - ['getworld',['GetWorld',['../classb2_body.html#abfd9466763b20977f9122d0e162dfeb9',1,'b2Body']]], - ['getworldcenter',['GetWorldCenter',['../classb2_body.html#a04db0c7b12b315802e58b33884f4f63c',1,'b2Body']]], - ['getworldmanifold',['GetWorldManifold',['../classb2_contact.html#a6a30a44a28b44754cb61bba65cb5b728',1,'b2Contact']]], - ['getworldpoint',['GetWorldPoint',['../classb2_body.html#a8055b90bccb51383caa8c42fbc96c9c3',1,'b2Body']]], - ['getworldvector',['GetWorldVector',['../classb2_body.html#afd44622669b5e45202c23e4a212895fc',1,'b2Body']]], - ['getxaxis',['GetXAxis',['../structb2_rot.html#ac4ab7f262adb99f161775314852723d8',1,'b2Rot']]], - ['getyaxis',['GetYAxis',['../structb2_rot.html#ae731c7434fe1754114ee70149df36c7f',1,'b2Rot']]], - ['gravityscale',['gravityScale',['../structb2_body_def.html#aadea3fa173ed1014739ec8b023de4336',1,'b2BodyDef']]], - ['groundanchora',['groundAnchorA',['../structb2_pulley_joint_def.html#aae77c020ce4629ab9e03560e28aa853d',1,'b2PulleyJointDef']]], - ['groundanchorb',['groundAnchorB',['../structb2_pulley_joint_def.html#aa412b9f3bffd1fb69ace14f9b3e03b82',1,'b2PulleyJointDef']]], - ['groupindex',['groupIndex',['../structb2_filter.html#a572a8f4a1672f6d5d71123a35e872950',1,'b2Filter']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_69.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_69.html deleted file mode 100644 index 676651e..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_69.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_69.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_69.js deleted file mode 100644 index 752c48f..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_69.js +++ /dev/null @@ -1,21 +0,0 @@ -var searchData= -[ - ['i',['I',['../structb2_mass_data.html#ad2d06e96e2d79d895df16ae0e5fe0376',1,'b2MassData']]], - ['id',['id',['../structb2_manifold_point.html#afa7ec272b2b27abe129540f8fbe57fc5',1,'b2ManifoldPoint']]], - ['indexa',['indexA',['../structb2_contact_feature.html#a833bc746e7cb5e3cd458f1c0809101d0',1,'b2ContactFeature::indexA()'],['../structb2_simplex_cache.html#ab574159e69dda7e14ead8de848ca6b67',1,'b2SimplexCache::indexA()']]], - ['indexb',['indexB',['../structb2_contact_feature.html#ad96712b6a0cc1f4b22b85b5948eab81d',1,'b2ContactFeature::indexB()'],['../structb2_simplex_cache.html#ab7586465ee2c5f7c3bdd8f80d5e256a7',1,'b2SimplexCache::indexB()']]], - ['initialize',['Initialize',['../structb2_world_manifold.html#a896dd7e7d4d6f6a5bc69e19fbd6871bd',1,'b2WorldManifold::Initialize()'],['../structb2_distance_joint_def.html#a99788a534638cc28cd1e44e0036503f0',1,'b2DistanceJointDef::Initialize()'],['../structb2_friction_joint_def.html#aee104f2aeb34dec4e17e3c52a98f7915',1,'b2FrictionJointDef::Initialize()'],['../structb2_motor_joint_def.html#a90eb924b6e04da8d75d9cefad0655960',1,'b2MotorJointDef::Initialize()'],['../structb2_prismatic_joint_def.html#ae60043bc22b077e8c59ab248dc34652f',1,'b2PrismaticJointDef::Initialize()'],['../structb2_pulley_joint_def.html#abef614a93562b82aa3b5f8cac17d1ce8',1,'b2PulleyJointDef::Initialize()'],['../structb2_revolute_joint_def.html#a6401b2a663533415d032a525e4fa2806',1,'b2RevoluteJointDef::Initialize()'],['../structb2_weld_joint_def.html#a9f6592c2a7eba6ce6e07e40c4e82aab5',1,'b2WeldJointDef::Initialize()'],['../structb2_wheel_joint_def.html#af26887092d36c3cd03898401a38783e2',1,'b2WheelJointDef::Initialize()']]], - ['isactive',['IsActive',['../classb2_body.html#ae69b9cb7461ee165b6459ce43d648479',1,'b2Body::IsActive()'],['../classb2_joint.html#a825d3a6abb32014f31fd622f2bfc0363',1,'b2Joint::IsActive()']]], - ['isawake',['IsAwake',['../classb2_body.html#aa28fdb95dffac89d20b04bd1a038b4ea',1,'b2Body']]], - ['isbullet',['IsBullet',['../classb2_body.html#af48509b43c9474b394cf76d733b56882',1,'b2Body']]], - ['isenabled',['IsEnabled',['../classb2_contact.html#ae7bd71ee1b0bb352bec6eeaab4f91c6a',1,'b2Contact']]], - ['isfixedrotation',['IsFixedRotation',['../classb2_body.html#a6bef51a11a1fec3fddad273b11c14214',1,'b2Body']]], - ['islimitenabled',['IsLimitEnabled',['../classb2_prismatic_joint.html#afb109fd7f3efbf44eae4b7961169bf9f',1,'b2PrismaticJoint::IsLimitEnabled()'],['../classb2_revolute_joint.html#a7711afbfbdba4451d2dbfa8e55b9ded8',1,'b2RevoluteJoint::IsLimitEnabled()']]], - ['islocked',['IsLocked',['../classb2_world.html#ae50c318304546c9cc066ee382668c4a1',1,'b2World']]], - ['ismotorenabled',['IsMotorEnabled',['../classb2_prismatic_joint.html#a236650664554a4d81f8644e9a9d19c65',1,'b2PrismaticJoint::IsMotorEnabled()'],['../classb2_revolute_joint.html#a9477b305db080e17dce8f2c6da0babb0',1,'b2RevoluteJoint::IsMotorEnabled()'],['../classb2_wheel_joint.html#a419bc80e17cc4c1062a692ea79396d19',1,'b2WheelJoint::IsMotorEnabled()']]], - ['issensor',['isSensor',['../structb2_fixture_def.html#ac8cfcc6208663c92861eaab3b3fdc57e',1,'b2FixtureDef::isSensor()'],['../classb2_fixture.html#a91758c9dca818ca45f3f6427c7e3fc19',1,'b2Fixture::IsSensor()']]], - ['issleepingallowed',['IsSleepingAllowed',['../classb2_body.html#ac0b0c558008bda8cf7984dbaf2ee3aea',1,'b2Body']]], - ['istouching',['IsTouching',['../classb2_contact.html#a367dc9a563ad7db5547f4247777a33c9',1,'b2Contact']]], - ['isvalid',['IsValid',['../structb2_a_a_b_b.html#a8d170a2de7a267c3e19f5365685b713d',1,'b2AABB::IsValid()'],['../structb2_vec2.html#aafb971cf7cc726f91fc3a8215fb0aa17',1,'b2Vec2::IsValid()']]], - ['iterations',['iterations',['../structb2_distance_output.html#ae2d4c84dd3d05ea4f4d20c91099ec8d5',1,'b2DistanceOutput']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_6a.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_6a.html deleted file mode 100644 index 12ef2ec..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_6a.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_6a.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_6a.js deleted file mode 100644 index f1869a3..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_6a.js +++ /dev/null @@ -1,6 +0,0 @@ -var searchData= -[ - ['joint',['joint',['../structb2_joint_edge.html#ab5bac5d495af1280c50271f56a221503',1,'b2JointEdge']]], - ['joint1',['joint1',['../structb2_gear_joint_def.html#ae42d33b54291a9e256f3810926883473',1,'b2GearJointDef']]], - ['joint2',['joint2',['../structb2_gear_joint_def.html#a73cf056fe40e63355073a01b097f4c82',1,'b2GearJointDef']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_6b.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_6b.html deleted file mode 100644 index b6e38ce..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_6b.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_6b.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_6b.js deleted file mode 100644 index aab8e5c..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_6b.js +++ /dev/null @@ -1,6 +0,0 @@ -var searchData= -[ - ['k2',['k2',['../structb2_rope_def.html#a89de5d2c15afacd41722c76523e33826',1,'b2RopeDef']]], - ['k3',['k3',['../structb2_rope_def.html#a3f4749e0a309b53daf804c75adfb4ba8',1,'b2RopeDef']]], - ['key',['key',['../unionb2_contact_i_d.html#a04c04f8fdcb799b33552d01b3aa3f245',1,'b2ContactID']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_6c.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_6c.html deleted file mode 100644 index 3623130..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_6c.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_6c.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_6c.js deleted file mode 100644 index d1d22a1..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_6c.js +++ /dev/null @@ -1,19 +0,0 @@ -var searchData= -[ - ['length',['Length',['../structb2_vec2.html#afb1c498214b88874fcb07eb6322374da',1,'b2Vec2::Length()'],['../structb2_distance_joint_def.html#ac2c48ad52de91c804c386c12c5bf3714',1,'b2DistanceJointDef::length()']]], - ['lengtha',['lengthA',['../structb2_pulley_joint_def.html#a51d945882c1d7a78af2b0e9ffb31a33b',1,'b2PulleyJointDef']]], - ['lengthb',['lengthB',['../structb2_pulley_joint_def.html#a5857d5b5b9880b6c8201ce3ee8c3eef0',1,'b2PulleyJointDef']]], - ['lengthsquared',['LengthSquared',['../structb2_vec2.html#af66641b887488490e2168bfafc5a7e36',1,'b2Vec2']]], - ['lineardamping',['linearDamping',['../structb2_body_def.html#a728f6df3be7dedb331455105e3659d46',1,'b2BodyDef']]], - ['linearoffset',['linearOffset',['../structb2_motor_joint_def.html#a2c957cffc2af66c6c8077c069b906bc4',1,'b2MotorJointDef']]], - ['linearvelocity',['linearVelocity',['../structb2_body_def.html#a25fa5aa78d93159c344241af95bec2bf',1,'b2BodyDef']]], - ['localanchora',['localAnchorA',['../structb2_distance_joint_def.html#a15c7a75fa277e2056bf1b44198658518',1,'b2DistanceJointDef::localAnchorA()'],['../structb2_friction_joint_def.html#a00b246e60ae282a956a42b662993e92a',1,'b2FrictionJointDef::localAnchorA()'],['../structb2_prismatic_joint_def.html#abb51df8daff7a55f47adc83e4f7fa5b9',1,'b2PrismaticJointDef::localAnchorA()'],['../structb2_pulley_joint_def.html#ad7677a4ad02a6e7cb8699fc5012eac3e',1,'b2PulleyJointDef::localAnchorA()'],['../structb2_revolute_joint_def.html#a76337d07aa63232a7b20d50decc862ae',1,'b2RevoluteJointDef::localAnchorA()'],['../structb2_rope_joint_def.html#ab680fcc3cd44741a7a824ddff86ff01e',1,'b2RopeJointDef::localAnchorA()'],['../structb2_weld_joint_def.html#a3b04af6164bb32efc3f5cf3e8d2b7109',1,'b2WeldJointDef::localAnchorA()'],['../structb2_wheel_joint_def.html#a9429d2273bfdd8bdc0db416e73b89ae4',1,'b2WheelJointDef::localAnchorA()']]], - ['localanchorb',['localAnchorB',['../structb2_distance_joint_def.html#a3c8995be726238eee084af750442255c',1,'b2DistanceJointDef::localAnchorB()'],['../structb2_friction_joint_def.html#ad6d5a5614a7ac77b13e53fda3e32ed05',1,'b2FrictionJointDef::localAnchorB()'],['../structb2_prismatic_joint_def.html#a5acc1f2f14d1b659fc9d804ab1baf4a3',1,'b2PrismaticJointDef::localAnchorB()'],['../structb2_pulley_joint_def.html#aed3f9c9f5f4145ceb32e7e164de73144',1,'b2PulleyJointDef::localAnchorB()'],['../structb2_revolute_joint_def.html#a3f33bc1d9f6c22043a5ff2f1d89f04e0',1,'b2RevoluteJointDef::localAnchorB()'],['../structb2_rope_joint_def.html#a3271da0e4027e25546aa6a81e8fbe4e2',1,'b2RopeJointDef::localAnchorB()'],['../structb2_weld_joint_def.html#a528262b92dac10de37411ad8c5637149',1,'b2WeldJointDef::localAnchorB()'],['../structb2_wheel_joint_def.html#a88ba0f7108076b9d7ced68425be95c27',1,'b2WheelJointDef::localAnchorB()']]], - ['localaxisa',['localAxisA',['../structb2_prismatic_joint_def.html#af36fdbcedca5a392a2649cd235c42676',1,'b2PrismaticJointDef::localAxisA()'],['../structb2_wheel_joint_def.html#ad635ee7b77b50037dc0e021a0f5c93a6',1,'b2WheelJointDef::localAxisA()']]], - ['localcenter',['localCenter',['../structb2_sweep.html#a4bcc302cf78771896d6256fc53f2f8be',1,'b2Sweep']]], - ['localnormal',['localNormal',['../structb2_manifold.html#a3604e9fef2a03347c5649c71a9fd4c79',1,'b2Manifold']]], - ['localpoint',['localPoint',['../structb2_manifold_point.html#ab3616990e7d1644deeeb691246094bfa',1,'b2ManifoldPoint::localPoint()'],['../structb2_manifold.html#a8825cea31b27dbbaf22c13c3070870d5',1,'b2Manifold::localPoint()']]], - ['lowerangle',['lowerAngle',['../structb2_revolute_joint_def.html#a24d0b2638a01405c77bd1c0de3e53de8',1,'b2RevoluteJointDef']]], - ['lowerbound',['lowerBound',['../structb2_a_a_b_b.html#ab94b68fbad8348b22b0522469b11bdb5',1,'b2AABB']]], - ['lowertranslation',['lowerTranslation',['../structb2_prismatic_joint_def.html#ac0a0e2a669d640ebea354895fe6a9fb6',1,'b2PrismaticJointDef']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_6d.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_6d.html deleted file mode 100644 index 82ceec7..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_6d.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_6d.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_6d.js deleted file mode 100644 index 6a10dd2..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_6d.js +++ /dev/null @@ -1,20 +0,0 @@ -var searchData= -[ - ['m_5fcount',['m_count',['../classb2_chain_shape.html#ab2ad711781e6ac81179074e90e0e058b',1,'b2ChainShape']]], - ['m_5fp',['m_p',['../classb2_circle_shape.html#a190705618b2e65f636f1dc03c63640ff',1,'b2CircleShape']]], - ['m_5fvertex0',['m_vertex0',['../classb2_edge_shape.html#a907c9829484cc1ba7527ab368e9fdf93',1,'b2EdgeShape']]], - ['m_5fvertex1',['m_vertex1',['../classb2_edge_shape.html#a916cf02a752ff1a70db35b2edaf19bb4',1,'b2EdgeShape']]], - ['m_5fvertices',['m_vertices',['../classb2_chain_shape.html#a481116a6886fb3880b13e55c966579da',1,'b2ChainShape']]], - ['major',['major',['../structb2_version.html#a720da8e346364d1cb34d176125380b44',1,'b2Version']]], - ['maskbits',['maskBits',['../structb2_filter.html#a533cccf85e3ba3d9e3700d73b819f6e2',1,'b2Filter']]], - ['mass',['mass',['../structb2_mass_data.html#aea85d9595a38d2eed05b8d2ea80d97b1',1,'b2MassData']]], - ['maxforce',['maxForce',['../structb2_friction_joint_def.html#ad30e97a80790d4ca64bac7a1fa7d1b35',1,'b2FrictionJointDef::maxForce()'],['../structb2_motor_joint_def.html#a2f66d1b99c654e112dc68e15375d5ee7',1,'b2MotorJointDef::maxForce()'],['../structb2_mouse_joint_def.html#ae9c52b3afda8ed006eb62fad163cdc3b',1,'b2MouseJointDef::maxForce()']]], - ['maxlength',['maxLength',['../structb2_rope_joint_def.html#a6efdcae22e2bdcfc3aae62da1a5f0d69',1,'b2RopeJointDef']]], - ['maxmotorforce',['maxMotorForce',['../structb2_prismatic_joint_def.html#aabeec48af1e49c7f9fed5e0bc8270a1b',1,'b2PrismaticJointDef']]], - ['maxmotortorque',['maxMotorTorque',['../structb2_revolute_joint_def.html#a9fc1b67fe6d1bc31f88cc2cfd681fe30',1,'b2RevoluteJointDef::maxMotorTorque()'],['../structb2_wheel_joint_def.html#ab658ce0fae40c6de09133659f7ffb829',1,'b2WheelJointDef::maxMotorTorque()']]], - ['maxtorque',['maxTorque',['../structb2_friction_joint_def.html#a61adfb0ee7c0ed4cb8feee8304c16ef6',1,'b2FrictionJointDef::maxTorque()'],['../structb2_motor_joint_def.html#afcf5dd58166917a4574d1f28f6bb3660',1,'b2MotorJointDef::maxTorque()']]], - ['metric',['metric',['../structb2_simplex_cache.html#a018e0a500b417d79bfed3f21310b15a2',1,'b2SimplexCache']]], - ['minor',['minor',['../structb2_version.html#a115b8797a6e0b8e53f54502bd20d89da',1,'b2Version']]], - ['motorspeed',['motorSpeed',['../structb2_prismatic_joint_def.html#ac4bdaea15653657e724a04fc60f3f235',1,'b2PrismaticJointDef::motorSpeed()'],['../structb2_revolute_joint_def.html#aced7cf768f4dcc3561576a39c7b92ec4',1,'b2RevoluteJointDef::motorSpeed()'],['../structb2_wheel_joint_def.html#a7248e25f2ca6b6c2a5f7079ce16e7748',1,'b2WheelJointDef::motorSpeed()']]], - ['moveproxy',['MoveProxy',['../classb2_broad_phase.html#a01dc18a19c2b5d0cc1d9cd8c8554234c',1,'b2BroadPhase::MoveProxy()'],['../classb2_dynamic_tree.html#a7748252811f3c575015931399cbe4daa',1,'b2DynamicTree::MoveProxy()']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_6e.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_6e.html deleted file mode 100644 index 92a12bb..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_6e.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_6e.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_6e.js deleted file mode 100644 index 9299f33..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_6e.js +++ /dev/null @@ -1,7 +0,0 @@ -var searchData= -[ - ['next',['next',['../structb2_contact_edge.html#a9af32b3cfadf35a927f4dffcf6338a6d',1,'b2ContactEdge::next()'],['../structb2_joint_edge.html#a3d17286bc697bb620ee151e4cd07438c',1,'b2JointEdge::next()']]], - ['normal',['normal',['../structb2_world_manifold.html#acf8de61b73d9784d16f7d0e824ce44bf',1,'b2WorldManifold']]], - ['normalimpulse',['normalImpulse',['../structb2_manifold_point.html#af4218c2359cb7762cd4e9d8ecefab173',1,'b2ManifoldPoint']]], - ['normalize',['Normalize',['../structb2_vec2.html#adda78c92f318fe53d8a53f9b5cfd8e41',1,'b2Vec2::Normalize()'],['../structb2_sweep.html#ad66a3086bc7656df9cf7454013a2f61b',1,'b2Sweep::Normalize()']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_6f.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_6f.html deleted file mode 100644 index 51c8b11..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_6f.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_6f.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_6f.js deleted file mode 100644 index 1cfc84f..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_6f.js +++ /dev/null @@ -1,9 +0,0 @@ -var searchData= -[ - ['operator_28_29',['operator()',['../structb2_vec2.html#a9cb67b5f755b82d40673337a3652d81f',1,'b2Vec2::operator()(int32 i) const '],['../structb2_vec2.html#a50b39580d9f479e17b23ce3cb8efbac6',1,'b2Vec2::operator()(int32 i)']]], - ['operator_2a_3d',['operator*=',['../structb2_vec2.html#a7097696dce578322928f4535b34f1c6b',1,'b2Vec2::operator*=()'],['../structb2_vec3.html#aaa9aa20195cd0ee53c7176a9a9b02389',1,'b2Vec3::operator*=()']]], - ['operator_2b_3d',['operator+=',['../structb2_vec2.html#a590789342e22ac1e7f9c1a63a2778b6d',1,'b2Vec2::operator+=()'],['../structb2_vec3.html#a2aaeed3f5308aad85d19c5f0efc72641',1,'b2Vec3::operator+=()']]], - ['operator_2d',['operator-',['../structb2_vec2.html#ab1f648091d3cba00b4c132758fcf4450',1,'b2Vec2::operator-()'],['../structb2_vec3.html#a246cb7ed59d3e758989939ed4e30e5ec',1,'b2Vec3::operator-()']]], - ['operator_2d_3d',['operator-=',['../structb2_vec2.html#a6b48cab4695a979ae40b7613aedc8b17',1,'b2Vec2::operator-=()'],['../structb2_vec3.html#a9e5b535548e1c5dfc0dc258d08f5ca32',1,'b2Vec3::operator-=()']]], - ['other',['other',['../structb2_contact_edge.html#a69015fc22e064eac04ed74f27a13ae78',1,'b2ContactEdge::other()'],['../structb2_joint_edge.html#a64aef21fb91211871de8796baecccb95',1,'b2JointEdge::other()']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_70.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_70.html deleted file mode 100644 index a279cb2..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_70.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_70.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_70.js deleted file mode 100644 index c90e80b..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_70.js +++ /dev/null @@ -1,11 +0,0 @@ -var searchData= -[ - ['pointa',['pointA',['../structb2_distance_output.html#a7e0f1f44a64e596dc7d37570c69eefce',1,'b2DistanceOutput']]], - ['pointb',['pointB',['../structb2_distance_output.html#aa85beca17337a506cd4a924d0c6f92cc',1,'b2DistanceOutput']]], - ['pointcount',['pointCount',['../structb2_manifold.html#abf59ff6fa36bed34b0242ad54951a696',1,'b2Manifold']]], - ['points',['points',['../structb2_manifold.html#ab8021128e9792cc7391a8804ea02173d',1,'b2Manifold::points()'],['../structb2_world_manifold.html#af15e84b90f102c0ac433be2d63604021',1,'b2WorldManifold::points()']]], - ['position',['position',['../structb2_body_def.html#a680cadc09ad6cf4b3366cbf0914c648b',1,'b2BodyDef']]], - ['postsolve',['PostSolve',['../classb2_contact_listener.html#acd58ec96f7569b95eec65b8ca3f8013d',1,'b2ContactListener']]], - ['presolve',['PreSolve',['../classb2_contact_listener.html#a416f85eb45a1099053402b15a19a7de0',1,'b2ContactListener']]], - ['prev',['prev',['../structb2_contact_edge.html#a606dfacb78dc5c51672e4d7449006b8c',1,'b2ContactEdge::prev()'],['../structb2_joint_edge.html#acc3621e38d9664db2805e0fc29d71335',1,'b2JointEdge::prev()']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_71.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_71.html deleted file mode 100644 index ee4ba24..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_71.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_71.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_71.js deleted file mode 100644 index bb03989..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_71.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['query',['Query',['../classb2_broad_phase.html#aea5732362c8bb3959c6b24f967654d93',1,'b2BroadPhase::Query()'],['../classb2_dynamic_tree.html#adf70aee89b4692fc79d65b1f54308585',1,'b2DynamicTree::Query()']]], - ['queryaabb',['QueryAABB',['../classb2_world.html#a711e55d2c6e68400f93472f807c3775b',1,'b2World']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_72.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_72.html deleted file mode 100644 index 315ac4f..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_72.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_72.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_72.js deleted file mode 100644 index 2bab435..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_72.js +++ /dev/null @@ -1,15 +0,0 @@ -var searchData= -[ - ['ratio',['ratio',['../structb2_gear_joint_def.html#a57e9f4b6ce1ddc8b89b8455515f69323',1,'b2GearJointDef::ratio()'],['../structb2_pulley_joint_def.html#af35074246aeacbf239c11682642b31f5',1,'b2PulleyJointDef::ratio()']]], - ['raycast',['RayCast',['../classb2_broad_phase.html#aebcb837120ce45bbb82b4b61db533026',1,'b2BroadPhase::RayCast()'],['../classb2_dynamic_tree.html#abd7a5c6a5bc109dbbdb0ec3aae039648',1,'b2DynamicTree::RayCast()'],['../classb2_chain_shape.html#a85c7a17a15581e0e258c7af561cf5403',1,'b2ChainShape::RayCast()'],['../classb2_circle_shape.html#a76175079381193917026fdf3702190fa',1,'b2CircleShape::RayCast()'],['../classb2_edge_shape.html#aefbae6b3840f486b22ffecee7d0d15fd',1,'b2EdgeShape::RayCast()'],['../classb2_polygon_shape.html#ac13bded10d09c341f64aaa2750dda6b5',1,'b2PolygonShape::RayCast()'],['../classb2_shape.html#aee53a926f4fe64cd03693f6211ef6335',1,'b2Shape::RayCast()'],['../classb2_fixture.html#a614e84f47e8b32b503fa719099ecba79',1,'b2Fixture::RayCast()'],['../classb2_world.html#ad902548be84df9cc36eced0f4c89ab0a',1,'b2World::RayCast()']]], - ['rebuildbottomup',['RebuildBottomUp',['../classb2_dynamic_tree.html#abd146017cfec1cf5ea7b87331f30a3ff',1,'b2DynamicTree']]], - ['referenceangle',['referenceAngle',['../structb2_prismatic_joint_def.html#aa84b43d08e6e11b4daa0c86f46094463',1,'b2PrismaticJointDef::referenceAngle()'],['../structb2_revolute_joint_def.html#a1858d897d5fea04c5e606a1ff73f64f8',1,'b2RevoluteJointDef::referenceAngle()'],['../structb2_weld_joint_def.html#a31aeb208f15842091c55e3f1bab6d8f1',1,'b2WeldJointDef::referenceAngle()']]], - ['refilter',['Refilter',['../classb2_fixture.html#a45d3320f94811d67383c48466165fa26',1,'b2Fixture']]], - ['reportfixture',['ReportFixture',['../classb2_query_callback.html#a187dd04dd0f5164fb05c2ce2cbfd9ee5',1,'b2QueryCallback::ReportFixture()'],['../classb2_ray_cast_callback.html#a658d5c8e89e0c73230cc8bddade4f3a4',1,'b2RayCastCallback::ReportFixture()']]], - ['reset',['Reset',['../classb2_timer.html#a367388794588e9283600437be82f2889',1,'b2Timer']]], - ['resetfriction',['ResetFriction',['../classb2_contact.html#ad66d9290da187cef4c9f48c5766d4460',1,'b2Contact']]], - ['resetmassdata',['ResetMassData',['../classb2_body.html#a109d8567c6ae84c61fce2919fb209c63',1,'b2Body']]], - ['resetrestitution',['ResetRestitution',['../classb2_contact.html#a243501bc5c146e9eb1296162d328aef1',1,'b2Contact']]], - ['restitution',['restitution',['../structb2_fixture_def.html#ad7ee26656e4749f7b548d2cc0cf9f168',1,'b2FixtureDef']]], - ['revision',['revision',['../structb2_version.html#a395cfe1434e348115d2ead3d72b88847',1,'b2Version']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_73.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_73.html deleted file mode 100644 index 09f8ce8..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_73.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_73.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_73.js deleted file mode 100644 index a57a4cc..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_73.js +++ /dev/null @@ -1,69 +0,0 @@ -var searchData= -[ - ['s',['s',['../structb2_rot.html#a15725ce0a89cc735ad90687b4c0f4dce',1,'b2Rot']]], - ['saygoodbye',['SayGoodbye',['../classb2_destruction_listener.html#a6cd15baa6e5c33118cf7173ab5bf6d58',1,'b2DestructionListener::SayGoodbye(b2Joint *joint)=0'],['../classb2_destruction_listener.html#ab327c0073d162112c38d2fe8f8b9fce3',1,'b2DestructionListener::SayGoodbye(b2Fixture *fixture)=0']]], - ['separations',['separations',['../structb2_world_manifold.html#ac545e60a52d219d53ef1de3e0cad2d84',1,'b2WorldManifold']]], - ['set',['Set',['../structb2_distance_proxy.html#a80a59a9c9e952482a8fc6db4b883365d',1,'b2DistanceProxy::Set()'],['../classb2_edge_shape.html#a67dd3b17630a600033cb4380697a4e9d',1,'b2EdgeShape::Set()'],['../classb2_polygon_shape.html#a4d7b35550509f570814b97325a68966b',1,'b2PolygonShape::Set()'],['../structb2_vec2.html#a4d61640a645e470a50b451307d8e94c3',1,'b2Vec2::Set()'],['../structb2_vec3.html#a12a1bc14bbe722dfb175a492d2d00a79',1,'b2Vec3::Set()'],['../structb2_mat22.html#aed3bee1de38a0b3f36e21c90faa24112',1,'b2Mat22::Set()'],['../structb2_rot.html#acde9186de0a4a7397bf8ef714408ad60',1,'b2Rot::Set()'],['../structb2_transform.html#a4db696a0b3fada95f95cde3e7e85ced9',1,'b2Transform::Set()']]], - ['setactive',['SetActive',['../classb2_body.html#ab8059b7b3e3b64aee17b54f68f7dde80',1,'b2Body']]], - ['setallowsleeping',['SetAllowSleeping',['../classb2_world.html#a6755872564fc3db70c69d2b9d349fa33',1,'b2World']]], - ['setangulardamping',['SetAngularDamping',['../classb2_body.html#a73a79541b18394fa224d2eae8ad493e8',1,'b2Body']]], - ['setangularoffset',['SetAngularOffset',['../classb2_motor_joint.html#a14d7dca1767548ddffe293e39cafc3c7',1,'b2MotorJoint']]], - ['setangularvelocity',['SetAngularVelocity',['../classb2_body.html#a37adc4160b84f73e8552a91cbde3f578',1,'b2Body']]], - ['setasbox',['SetAsBox',['../classb2_polygon_shape.html#a6bb90df8b4a40d1c53b64cc352a855dd',1,'b2PolygonShape::SetAsBox(float32 hx, float32 hy)'],['../classb2_polygon_shape.html#a890690250115483da6c7d69829be087e',1,'b2PolygonShape::SetAsBox(float32 hx, float32 hy, const b2Vec2 &center, float32 angle)']]], - ['setautoclearforces',['SetAutoClearForces',['../classb2_world.html#aa2bced28ddef5bbb00ed5666e5e9f620',1,'b2World']]], - ['setawake',['SetAwake',['../classb2_body.html#ac72ed3df52a26c33db82252ab57399af',1,'b2Body']]], - ['setbullet',['SetBullet',['../classb2_body.html#a3253af3725b8d6d63d8223bcd2ddab5c',1,'b2Body']]], - ['setcontactfilter',['SetContactFilter',['../classb2_world.html#a85e6e1e911c7d6366f8c7d57a12b72ff',1,'b2World']]], - ['setcontactlistener',['SetContactListener',['../classb2_world.html#a614549967fb8a1584b61c11e2d553d42',1,'b2World']]], - ['setcontinuousphysics',['SetContinuousPhysics',['../classb2_world.html#a536dd9181c2e20096073e3cfe2c8530a',1,'b2World']]], - ['setcorrectionfactor',['SetCorrectionFactor',['../classb2_motor_joint.html#ae59e624b8a7b6f869ab5e6148352cb52',1,'b2MotorJoint']]], - ['setdampingratio',['SetDampingRatio',['../classb2_distance_joint.html#a58da61301a1f1398a715107b76649923',1,'b2DistanceJoint::SetDampingRatio()'],['../classb2_mouse_joint.html#a648c8f3ecb82f4887c0eefcfe48cbd37',1,'b2MouseJoint::SetDampingRatio()'],['../classb2_weld_joint.html#aea79865e590edba09eff9d2243689967',1,'b2WeldJoint::SetDampingRatio()']]], - ['setdebugdraw',['SetDebugDraw',['../classb2_world.html#a6976d2c67400df03c0d44174ffcfb7ee',1,'b2World']]], - ['setdensity',['SetDensity',['../classb2_fixture.html#ad4e1d9323103975c8931d022b952d04a',1,'b2Fixture']]], - ['setdestructionlistener',['SetDestructionListener',['../classb2_world.html#ae377f2dd5512ada7d27f4ad3541c75bf',1,'b2World']]], - ['setenabled',['SetEnabled',['../classb2_contact.html#a6edf582f8c161d6632854cddefe55a0c',1,'b2Contact']]], - ['setfilterdata',['SetFilterData',['../classb2_fixture.html#a2c5e0d12c174927a4ad550459be334ad',1,'b2Fixture']]], - ['setfixedrotation',['SetFixedRotation',['../classb2_body.html#aff35078e2a221d2d05409674936cb8d2',1,'b2Body']]], - ['setflags',['SetFlags',['../classb2_draw.html#ac2bbe31595478690e44de4ff1e7f347e',1,'b2Draw']]], - ['setfrequency',['SetFrequency',['../classb2_distance_joint.html#a1a12446f8926a1324edd481d9cd28c8a',1,'b2DistanceJoint::SetFrequency()'],['../classb2_mouse_joint.html#a8b37706535923637ca280c5a0467b14d',1,'b2MouseJoint::SetFrequency()'],['../classb2_weld_joint.html#a0796404379b7562f1af557729085c447',1,'b2WeldJoint::SetFrequency()']]], - ['setfriction',['SetFriction',['../classb2_fixture.html#ad0cd91eef5858c8ef1d6b62cc2a34ea2',1,'b2Fixture::SetFriction()'],['../classb2_contact.html#a5e8fbb6bb2966ac84272bb0ea9d2e4c7',1,'b2Contact::SetFriction()']]], - ['setgravity',['SetGravity',['../classb2_world.html#aeafa43d6580e1dddb0675e672ca2375c',1,'b2World']]], - ['setgravityscale',['SetGravityScale',['../classb2_body.html#a8e66a570c2aeee93b29d84cae861a612',1,'b2Body']]], - ['setidentity',['SetIdentity',['../structb2_mat22.html#a7192f063b771ac9ded060e41df890509',1,'b2Mat22::SetIdentity()'],['../structb2_rot.html#a7f534cb7ece8d325662d7d0e27d4f617',1,'b2Rot::SetIdentity()'],['../structb2_transform.html#af92af4ec6833552b1b22a6ca6d4f5644',1,'b2Transform::SetIdentity()']]], - ['setlength',['SetLength',['../classb2_distance_joint.html#a950a0f187ef691208e50de40ed9223fe',1,'b2DistanceJoint']]], - ['setlimits',['SetLimits',['../classb2_prismatic_joint.html#a82a220e6d5a212c1924882e0855b0bef',1,'b2PrismaticJoint::SetLimits()'],['../classb2_revolute_joint.html#a32f9393d8a6b993fd523f0f643c28107',1,'b2RevoluteJoint::SetLimits()']]], - ['setlineardamping',['SetLinearDamping',['../classb2_body.html#a909f9753ad700f70282a56e00bc182a5',1,'b2Body']]], - ['setlinearoffset',['SetLinearOffset',['../classb2_motor_joint.html#a99254b5fc9ed9f2d0fdccada513000c3',1,'b2MotorJoint']]], - ['setlinearvelocity',['SetLinearVelocity',['../classb2_body.html#a832f3989a44f0d4782c80456832197ad',1,'b2Body']]], - ['setmassdata',['SetMassData',['../classb2_body.html#a58a641fedf8a81e1e26d09ec00a22fe2',1,'b2Body']]], - ['setmaxforce',['SetMaxForce',['../classb2_friction_joint.html#a7936d852b5ad71dc92efc397865dda41',1,'b2FrictionJoint::SetMaxForce()'],['../classb2_motor_joint.html#a62f95f23d60123cebe14f2fcec155801',1,'b2MotorJoint::SetMaxForce()'],['../classb2_mouse_joint.html#a4beba6ea0827960fac2474563591c03a',1,'b2MouseJoint::SetMaxForce()']]], - ['setmaxlength',['SetMaxLength',['../classb2_rope_joint.html#a92cea201d21acd2f2a7cc9b00e165848',1,'b2RopeJoint']]], - ['setmaxmotorforce',['SetMaxMotorForce',['../classb2_prismatic_joint.html#aa7817474aef15ca4815341479ac590e2',1,'b2PrismaticJoint']]], - ['setmaxmotortorque',['SetMaxMotorTorque',['../classb2_revolute_joint.html#a41779d7ec05be33e6368ef00123a3581',1,'b2RevoluteJoint::SetMaxMotorTorque()'],['../classb2_wheel_joint.html#a8aae3cd624ec9d48fc86c325c4595edc',1,'b2WheelJoint::SetMaxMotorTorque()']]], - ['setmaxtorque',['SetMaxTorque',['../classb2_friction_joint.html#a9e3aaf485dc86a378bb62ee78cea43aa',1,'b2FrictionJoint::SetMaxTorque()'],['../classb2_motor_joint.html#a3e9a259d36c36e0dc078282e6799d625',1,'b2MotorJoint::SetMaxTorque()']]], - ['setmotorspeed',['SetMotorSpeed',['../classb2_prismatic_joint.html#a602ef7a6ca4fca55d011f1b38ab5a6c3',1,'b2PrismaticJoint::SetMotorSpeed()'],['../classb2_revolute_joint.html#a56f60bb1ea69048c8a455da49d62bf65',1,'b2RevoluteJoint::SetMotorSpeed()'],['../classb2_wheel_joint.html#a6e3255fcf5c82b979ad7e3dc1c089c0b',1,'b2WheelJoint::SetMotorSpeed()']]], - ['setnextvertex',['SetNextVertex',['../classb2_chain_shape.html#a15c7c2821a52266ef57621ac7d34a95f',1,'b2ChainShape']]], - ['setprevvertex',['SetPrevVertex',['../classb2_chain_shape.html#aeb2ddbe0c52a98885e91b7c8f597315b',1,'b2ChainShape']]], - ['setratio',['SetRatio',['../classb2_gear_joint.html#a21c867bdc00c15ade2f399d370f92636',1,'b2GearJoint']]], - ['setrestitution',['SetRestitution',['../classb2_fixture.html#a19c507332e4f7bd04a05f00426f11ee4',1,'b2Fixture::SetRestitution()'],['../classb2_contact.html#a24ca342c2bb766c53ef5ad04f5268fc1',1,'b2Contact::SetRestitution()']]], - ['setsensor',['SetSensor',['../classb2_fixture.html#a6198a81dcee0fe814d730383ebfa7038',1,'b2Fixture']]], - ['setsleepingallowed',['SetSleepingAllowed',['../classb2_body.html#a229a6de228416203fecbf7a7544c33bb',1,'b2Body']]], - ['setspringdampingratio',['SetSpringDampingRatio',['../classb2_wheel_joint.html#a39b123ac045c8ec93faa65746e6655dc',1,'b2WheelJoint']]], - ['setspringfrequencyhz',['SetSpringFrequencyHz',['../classb2_wheel_joint.html#af9f8fada5cb30f83aa2fbf486e9d347b',1,'b2WheelJoint']]], - ['setsubstepping',['SetSubStepping',['../classb2_world.html#ae8aacc78ea4753075067daff51b61778',1,'b2World']]], - ['settangentspeed',['SetTangentSpeed',['../classb2_contact.html#a32033914a6c7f35b469e8fddbc17c566',1,'b2Contact']]], - ['settarget',['SetTarget',['../classb2_mouse_joint.html#a96f34c1c990407eddbadf07ae359b1f3',1,'b2MouseJoint']]], - ['settransform',['SetTransform',['../classb2_body.html#a4686f32bbce5723761e9719c706eca11',1,'b2Body']]], - ['settype',['SetType',['../classb2_body.html#a34ff1c84b10b74eb990749a025a1b1ad',1,'b2Body']]], - ['setuserdata',['SetUserData',['../classb2_body.html#a5553a5ecdfd2d7200ba2405ce6043f52',1,'b2Body::SetUserData()'],['../classb2_fixture.html#a3db7f89ef4493247d922fe3d96351ad9',1,'b2Fixture::SetUserData()'],['../classb2_joint.html#a492f2d02496437572aaec6013ebdc1c8',1,'b2Joint::SetUserData()']]], - ['setwarmstarting',['SetWarmStarting',['../classb2_world.html#a8e8c12142e8c4884a18787926a261359',1,'b2World']]], - ['setzero',['SetZero',['../structb2_vec2.html#a5c6cbe27cfb29c6dbb29b9a3285b88d0',1,'b2Vec2::SetZero()'],['../structb2_vec3.html#a5a459ed49f1910a347ca247f848a2dd8',1,'b2Vec3::SetZero()'],['../structb2_mat22.html#aaeae95f61cf3171ffb94703980e3594b',1,'b2Mat22::SetZero()'],['../structb2_mat33.html#a42fc6953b025e1c8b59717d0ee7accde',1,'b2Mat33::SetZero()']]], - ['shape',['shape',['../structb2_fixture_def.html#a1e41753d89abf3443e7897e2498a3240',1,'b2FixtureDef']]], - ['shiftorigin',['ShiftOrigin',['../classb2_broad_phase.html#a410e6115e3d1b4fca61cfbf397767772',1,'b2BroadPhase::ShiftOrigin()'],['../classb2_dynamic_tree.html#af37ddfed6a5da97d5a78b09918d19ceb',1,'b2DynamicTree::ShiftOrigin()'],['../classb2_world.html#afc33e20e64252c5be115216051408047',1,'b2World::ShiftOrigin()'],['../classb2_joint.html#a7804f649e993dc0fd9ae47fde5601f90',1,'b2Joint::ShiftOrigin()'],['../classb2_mouse_joint.html#aa3c46b204aea79822dd6c6843c361801',1,'b2MouseJoint::ShiftOrigin()'],['../classb2_pulley_joint.html#a5b88d498ce306c4ff5ce99dec4811825',1,'b2PulleyJoint::ShiftOrigin()']]], - ['shouldcollide',['ShouldCollide',['../classb2_contact_filter.html#aac8f6155d1f577d125db587f5269289b',1,'b2ContactFilter']]], - ['skew',['Skew',['../structb2_vec2.html#a8f2c6e60cb5898bc239801bd19e2d619',1,'b2Vec2']]], - ['solve',['Solve',['../structb2_mat22.html#ab511ad33f5abf87351581842628a9dc3',1,'b2Mat22']]], - ['solve22',['Solve22',['../structb2_mat33.html#a2580ac2afadc48028a63ed4c8a1f16bc',1,'b2Mat33']]], - ['solve33',['Solve33',['../structb2_mat33.html#a478872c7b6a3bedd13fbedd3ec7a2edb',1,'b2Mat33']]], - ['step',['Step',['../classb2_world.html#a7a8eff61af98461f978fe43f3af7be90',1,'b2World']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_74.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_74.html deleted file mode 100644 index c2cd095..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_74.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_74.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_74.js deleted file mode 100644 index fcb4662..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_74.js +++ /dev/null @@ -1,11 +0,0 @@ -var searchData= -[ - ['tangentimpulse',['tangentImpulse',['../structb2_manifold_point.html#a0ac5375b1fc4675a0073129f56aa62c9',1,'b2ManifoldPoint']]], - ['target',['target',['../structb2_mouse_joint_def.html#aa1b76f72df9aca8d42bdc3e9922e310a',1,'b2MouseJointDef']]], - ['testoverlap',['TestOverlap',['../classb2_broad_phase.html#a1785eb29d14997d81bd537f064d22aba',1,'b2BroadPhase']]], - ['testpoint',['TestPoint',['../classb2_chain_shape.html#a4fc27b41ecc556985efacf8e0f91c39f',1,'b2ChainShape::TestPoint()'],['../classb2_circle_shape.html#a77171941cd1633c337fed1efb366bebb',1,'b2CircleShape::TestPoint()'],['../classb2_edge_shape.html#a28a977f82e4bc1cf60a3143ba5636c22',1,'b2EdgeShape::TestPoint()'],['../classb2_polygon_shape.html#a69ccc2f671394b3cc1a00a16ef36b12b',1,'b2PolygonShape::TestPoint()'],['../classb2_shape.html#a6ac968e403e2d93e8ae46d728a2e50fa',1,'b2Shape::TestPoint()'],['../classb2_fixture.html#ab875147c7a9df4ff94d224f6aa81a7a9',1,'b2Fixture::TestPoint()']]], - ['touchproxy',['TouchProxy',['../classb2_broad_phase.html#a67b296431ebbc7b44037f21d645d9166',1,'b2BroadPhase']]], - ['type',['type',['../structb2_body_def.html#a89cc3ad1873908042b002147b3861381',1,'b2BodyDef::type()'],['../structb2_joint_def.html#a470f2879b24adb05facbd49f338856fb',1,'b2JointDef::type()']]], - ['typea',['typeA',['../structb2_contact_feature.html#a3361b651f0a88fb60ec6aba9f4921cc2',1,'b2ContactFeature']]], - ['typeb',['typeB',['../structb2_contact_feature.html#abb74afd6ee5b60834a3f8e2616182bdf',1,'b2ContactFeature']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_75.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_75.html deleted file mode 100644 index 49c1e78..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_75.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_75.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_75.js deleted file mode 100644 index 9c79a68..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_75.js +++ /dev/null @@ -1,8 +0,0 @@ -var searchData= -[ - ['updatepairs',['UpdatePairs',['../classb2_broad_phase.html#a0a1acd693466b997700242ae00784c20',1,'b2BroadPhase']]], - ['upperangle',['upperAngle',['../structb2_revolute_joint_def.html#a692cfe333ad12afd5753a6ec54e39a66',1,'b2RevoluteJointDef']]], - ['upperbound',['upperBound',['../structb2_a_a_b_b.html#ad4a8ec483ba13a2c02918b01d058a18f',1,'b2AABB']]], - ['uppertranslation',['upperTranslation',['../structb2_prismatic_joint_def.html#ae3eac123c7fe543071bdfcd1a6942350',1,'b2PrismaticJointDef']]], - ['userdata',['userData',['../structb2_body_def.html#ae457dd1d39be09945eace6061121be29',1,'b2BodyDef::userData()'],['../structb2_fixture_def.html#a4f77ef2b2585a40899b61faf53db1093',1,'b2FixtureDef::userData()'],['../structb2_joint_def.html#a07eb150daaaa52fc09c3bcf402b295fe',1,'b2JointDef::userData()']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_76.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_76.html deleted file mode 100644 index 5643d68..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_76.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_76.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_76.js deleted file mode 100644 index 73a97a9..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_76.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['validate',['Validate',['../classb2_dynamic_tree.html#abfac96c615b08406cba3e53b39800f1c',1,'b2DynamicTree::Validate()'],['../classb2_polygon_shape.html#afa9fe13cd6963e2317be35071ac69959',1,'b2PolygonShape::Validate()']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_7e.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_7e.html deleted file mode 100644 index 047ca06..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_7e.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_7e.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_7e.js deleted file mode 100644 index 0fdde5b..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/all_7e.js +++ /dev/null @@ -1,6 +0,0 @@ -var searchData= -[ - ['_7eb2chainshape',['~b2ChainShape',['../classb2_chain_shape.html#a8c032394f5a85e7fc425a437e7689a18',1,'b2ChainShape']]], - ['_7eb2dynamictree',['~b2DynamicTree',['../classb2_dynamic_tree.html#a9060565fc63b4dd87d9560775c076786',1,'b2DynamicTree']]], - ['_7eb2world',['~b2World',['../classb2_world.html#a5250ae4487475c33ccefdead07c768c8',1,'b2World']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/classes_62.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/classes_62.html deleted file mode 100644 index d850f52..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/classes_62.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/classes_62.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/classes_62.js deleted file mode 100644 index 61a6865..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/classes_62.js +++ /dev/null @@ -1,118 +0,0 @@ -var searchData= -[ - ['b2aabb',['b2AABB',['../structb2_a_a_b_b.html',1,'']]], - ['b2block',['b2Block',['../structb2_block.html',1,'']]], - ['b2blockallocator',['b2BlockAllocator',['../classb2_block_allocator.html',1,'']]], - ['b2body',['b2Body',['../classb2_body.html',1,'']]], - ['b2bodydef',['b2BodyDef',['../structb2_body_def.html',1,'']]], - ['b2broadphase',['b2BroadPhase',['../classb2_broad_phase.html',1,'']]], - ['b2chainandcirclecontact',['b2ChainAndCircleContact',['../classb2_chain_and_circle_contact.html',1,'']]], - ['b2chainandpolygoncontact',['b2ChainAndPolygonContact',['../classb2_chain_and_polygon_contact.html',1,'']]], - ['b2chainshape',['b2ChainShape',['../classb2_chain_shape.html',1,'']]], - ['b2chunk',['b2Chunk',['../structb2_chunk.html',1,'']]], - ['b2circlecontact',['b2CircleContact',['../classb2_circle_contact.html',1,'']]], - ['b2circleshape',['b2CircleShape',['../classb2_circle_shape.html',1,'']]], - ['b2clipvertex',['b2ClipVertex',['../structb2_clip_vertex.html',1,'']]], - ['b2color',['b2Color',['../structb2_color.html',1,'']]], - ['b2contact',['b2Contact',['../classb2_contact.html',1,'']]], - ['b2contactedge',['b2ContactEdge',['../structb2_contact_edge.html',1,'']]], - ['b2contactfeature',['b2ContactFeature',['../structb2_contact_feature.html',1,'']]], - ['b2contactfilter',['b2ContactFilter',['../classb2_contact_filter.html',1,'']]], - ['b2contactid',['b2ContactID',['../unionb2_contact_i_d.html',1,'']]], - ['b2contactimpulse',['b2ContactImpulse',['../structb2_contact_impulse.html',1,'']]], - ['b2contactlistener',['b2ContactListener',['../classb2_contact_listener.html',1,'']]], - ['b2contactmanager',['b2ContactManager',['../classb2_contact_manager.html',1,'']]], - ['b2contactpositionconstraint',['b2ContactPositionConstraint',['../structb2_contact_position_constraint.html',1,'']]], - ['b2contactregister',['b2ContactRegister',['../structb2_contact_register.html',1,'']]], - ['b2contactsolver',['b2ContactSolver',['../classb2_contact_solver.html',1,'']]], - ['b2contactsolverdef',['b2ContactSolverDef',['../structb2_contact_solver_def.html',1,'']]], - ['b2contactvelocityconstraint',['b2ContactVelocityConstraint',['../structb2_contact_velocity_constraint.html',1,'']]], - ['b2destructionlistener',['b2DestructionListener',['../classb2_destruction_listener.html',1,'']]], - ['b2distanceinput',['b2DistanceInput',['../structb2_distance_input.html',1,'']]], - ['b2distancejoint',['b2DistanceJoint',['../classb2_distance_joint.html',1,'']]], - ['b2distancejointdef',['b2DistanceJointDef',['../structb2_distance_joint_def.html',1,'']]], - ['b2distanceoutput',['b2DistanceOutput',['../structb2_distance_output.html',1,'']]], - ['b2distanceproxy',['b2DistanceProxy',['../structb2_distance_proxy.html',1,'']]], - ['b2draw',['b2Draw',['../classb2_draw.html',1,'']]], - ['b2dynamictree',['b2DynamicTree',['../classb2_dynamic_tree.html',1,'']]], - ['b2edgeandcirclecontact',['b2EdgeAndCircleContact',['../classb2_edge_and_circle_contact.html',1,'']]], - ['b2edgeandpolygoncontact',['b2EdgeAndPolygonContact',['../classb2_edge_and_polygon_contact.html',1,'']]], - ['b2edgeshape',['b2EdgeShape',['../classb2_edge_shape.html',1,'']]], - ['b2epaxis',['b2EPAxis',['../structb2_e_p_axis.html',1,'']]], - ['b2epcollider',['b2EPCollider',['../structb2_e_p_collider.html',1,'']]], - ['b2filter',['b2Filter',['../structb2_filter.html',1,'']]], - ['b2fixture',['b2Fixture',['../classb2_fixture.html',1,'']]], - ['b2fixturedef',['b2FixtureDef',['../structb2_fixture_def.html',1,'']]], - ['b2fixtureproxy',['b2FixtureProxy',['../structb2_fixture_proxy.html',1,'']]], - ['b2frictionjoint',['b2FrictionJoint',['../classb2_friction_joint.html',1,'']]], - ['b2frictionjointdef',['b2FrictionJointDef',['../structb2_friction_joint_def.html',1,'']]], - ['b2gearjoint',['b2GearJoint',['../classb2_gear_joint.html',1,'']]], - ['b2gearjointdef',['b2GearJointDef',['../structb2_gear_joint_def.html',1,'']]], - ['b2growablestack',['b2GrowableStack',['../classb2_growable_stack.html',1,'']]], - ['b2island',['b2Island',['../classb2_island.html',1,'']]], - ['b2jacobian',['b2Jacobian',['../structb2_jacobian.html',1,'']]], - ['b2joint',['b2Joint',['../classb2_joint.html',1,'']]], - ['b2jointdef',['b2JointDef',['../structb2_joint_def.html',1,'']]], - ['b2jointedge',['b2JointEdge',['../structb2_joint_edge.html',1,'']]], - ['b2manifold',['b2Manifold',['../structb2_manifold.html',1,'']]], - ['b2manifoldpoint',['b2ManifoldPoint',['../structb2_manifold_point.html',1,'']]], - ['b2massdata',['b2MassData',['../structb2_mass_data.html',1,'']]], - ['b2mat22',['b2Mat22',['../structb2_mat22.html',1,'']]], - ['b2mat33',['b2Mat33',['../structb2_mat33.html',1,'']]], - ['b2motorjoint',['b2MotorJoint',['../classb2_motor_joint.html',1,'']]], - ['b2motorjointdef',['b2MotorJointDef',['../structb2_motor_joint_def.html',1,'']]], - ['b2mousejoint',['b2MouseJoint',['../classb2_mouse_joint.html',1,'']]], - ['b2mousejointdef',['b2MouseJointDef',['../structb2_mouse_joint_def.html',1,'']]], - ['b2pair',['b2Pair',['../structb2_pair.html',1,'']]], - ['b2polygonandcirclecontact',['b2PolygonAndCircleContact',['../classb2_polygon_and_circle_contact.html',1,'']]], - ['b2polygoncontact',['b2PolygonContact',['../classb2_polygon_contact.html',1,'']]], - ['b2polygonshape',['b2PolygonShape',['../classb2_polygon_shape.html',1,'']]], - ['b2position',['b2Position',['../structb2_position.html',1,'']]], - ['b2positionsolvermanifold',['b2PositionSolverManifold',['../structb2_position_solver_manifold.html',1,'']]], - ['b2prismaticjoint',['b2PrismaticJoint',['../classb2_prismatic_joint.html',1,'']]], - ['b2prismaticjointdef',['b2PrismaticJointDef',['../structb2_prismatic_joint_def.html',1,'']]], - ['b2profile',['b2Profile',['../structb2_profile.html',1,'']]], - ['b2pulleyjoint',['b2PulleyJoint',['../classb2_pulley_joint.html',1,'']]], - ['b2pulleyjointdef',['b2PulleyJointDef',['../structb2_pulley_joint_def.html',1,'']]], - ['b2querycallback',['b2QueryCallback',['../classb2_query_callback.html',1,'']]], - ['b2raycastcallback',['b2RayCastCallback',['../classb2_ray_cast_callback.html',1,'']]], - ['b2raycastinput',['b2RayCastInput',['../structb2_ray_cast_input.html',1,'']]], - ['b2raycastoutput',['b2RayCastOutput',['../structb2_ray_cast_output.html',1,'']]], - ['b2referenceface',['b2ReferenceFace',['../structb2_reference_face.html',1,'']]], - ['b2revolutejoint',['b2RevoluteJoint',['../classb2_revolute_joint.html',1,'']]], - ['b2revolutejointdef',['b2RevoluteJointDef',['../structb2_revolute_joint_def.html',1,'']]], - ['b2rope',['b2Rope',['../classb2_rope.html',1,'']]], - ['b2ropedef',['b2RopeDef',['../structb2_rope_def.html',1,'']]], - ['b2ropejoint',['b2RopeJoint',['../classb2_rope_joint.html',1,'']]], - ['b2ropejointdef',['b2RopeJointDef',['../structb2_rope_joint_def.html',1,'']]], - ['b2rot',['b2Rot',['../structb2_rot.html',1,'']]], - ['b2separationfunction',['b2SeparationFunction',['../structb2_separation_function.html',1,'']]], - ['b2shape',['b2Shape',['../classb2_shape.html',1,'']]], - ['b2simplex',['b2Simplex',['../structb2_simplex.html',1,'']]], - ['b2simplexcache',['b2SimplexCache',['../structb2_simplex_cache.html',1,'']]], - ['b2simplexvertex',['b2SimplexVertex',['../structb2_simplex_vertex.html',1,'']]], - ['b2solverdata',['b2SolverData',['../structb2_solver_data.html',1,'']]], - ['b2stackallocator',['b2StackAllocator',['../classb2_stack_allocator.html',1,'']]], - ['b2stackentry',['b2StackEntry',['../structb2_stack_entry.html',1,'']]], - ['b2sweep',['b2Sweep',['../structb2_sweep.html',1,'']]], - ['b2temppolygon',['b2TempPolygon',['../structb2_temp_polygon.html',1,'']]], - ['b2timer',['b2Timer',['../classb2_timer.html',1,'']]], - ['b2timestep',['b2TimeStep',['../structb2_time_step.html',1,'']]], - ['b2toiinput',['b2TOIInput',['../structb2_t_o_i_input.html',1,'']]], - ['b2toioutput',['b2TOIOutput',['../structb2_t_o_i_output.html',1,'']]], - ['b2transform',['b2Transform',['../structb2_transform.html',1,'']]], - ['b2treenode',['b2TreeNode',['../structb2_tree_node.html',1,'']]], - ['b2vec2',['b2Vec2',['../structb2_vec2.html',1,'']]], - ['b2vec3',['b2Vec3',['../structb2_vec3.html',1,'']]], - ['b2velocity',['b2Velocity',['../structb2_velocity.html',1,'']]], - ['b2velocityconstraintpoint',['b2VelocityConstraintPoint',['../structb2_velocity_constraint_point.html',1,'']]], - ['b2version',['b2Version',['../structb2_version.html',1,'']]], - ['b2weldjoint',['b2WeldJoint',['../classb2_weld_joint.html',1,'']]], - ['b2weldjointdef',['b2WeldJointDef',['../structb2_weld_joint_def.html',1,'']]], - ['b2wheeljoint',['b2WheelJoint',['../classb2_wheel_joint.html',1,'']]], - ['b2wheeljointdef',['b2WheelJointDef',['../structb2_wheel_joint_def.html',1,'']]], - ['b2world',['b2World',['../classb2_world.html',1,'']]], - ['b2worldmanifold',['b2WorldManifold',['../structb2_world_manifold.html',1,'']]], - ['b2worldquerywrapper',['b2WorldQueryWrapper',['../structb2_world_query_wrapper.html',1,'']]], - ['b2worldraycastwrapper',['b2WorldRayCastWrapper',['../structb2_world_ray_cast_wrapper.html',1,'']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/close.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/close.png deleted file mode 100644 index 9342d3d..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/close.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/defines_62.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/defines_62.html deleted file mode 100644 index 6e7c55b..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/defines_62.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/defines_62.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/defines_62.js deleted file mode 100644 index e8c1509..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/defines_62.js +++ /dev/null @@ -1,21 +0,0 @@ -var searchData= -[ - ['b2_5faabbextension',['b2_aabbExtension',['../b2_settings_8h.html#adb86e231496fdd6ac7795ce58d40c870',1,'b2Settings.h']]], - ['b2_5faabbmultiplier',['b2_aabbMultiplier',['../b2_settings_8h.html#a7d1bd1594f20601d4079bccbd0a6a03c',1,'b2Settings.h']]], - ['b2_5fangularsleeptolerance',['b2_angularSleepTolerance',['../b2_settings_8h.html#a571f3e7c864aca14141b163205600eef',1,'b2Settings.h']]], - ['b2_5fangularslop',['b2_angularSlop',['../b2_settings_8h.html#a67810fb101bb7a7e0b3afc14845383ee',1,'b2Settings.h']]], - ['b2_5fbaumgarte',['b2_baumgarte',['../b2_settings_8h.html#a88e32539e0f9e69e3832e1321eba3caa',1,'b2Settings.h']]], - ['b2_5flinearsleeptolerance',['b2_linearSleepTolerance',['../b2_settings_8h.html#a6d882c48142a8c73011b576e20dc6dd8',1,'b2Settings.h']]], - ['b2_5flinearslop',['b2_linearSlop',['../b2_settings_8h.html#a57268ade379c5c3373d0ff558b0350cf',1,'b2Settings.h']]], - ['b2_5fmaxangularcorrection',['b2_maxAngularCorrection',['../b2_settings_8h.html#a823e4f9a6fa4b9de3c97da696571400a',1,'b2Settings.h']]], - ['b2_5fmaxlinearcorrection',['b2_maxLinearCorrection',['../b2_settings_8h.html#a23ab70e4809f5ee23abcd52018d5eb88',1,'b2Settings.h']]], - ['b2_5fmaxmanifoldpoints',['b2_maxManifoldPoints',['../b2_settings_8h.html#aa5f44cc9edf711433dea2b2ec94f3c42',1,'b2Settings.h']]], - ['b2_5fmaxpolygonvertices',['b2_maxPolygonVertices',['../b2_settings_8h.html#a09d71ee1993bee28b5b2e6d893b41884',1,'b2Settings.h']]], - ['b2_5fmaxrotation',['b2_maxRotation',['../b2_settings_8h.html#a5808c5f1e946205d8f7458101ccc698e',1,'b2Settings.h']]], - ['b2_5fmaxsubsteps',['b2_maxSubSteps',['../b2_settings_8h.html#ac1fd56e39ab8499f344b6398b7332e55',1,'b2Settings.h']]], - ['b2_5fmaxtoicontacts',['b2_maxTOIContacts',['../b2_settings_8h.html#aad3a54bcae5f7ec0235963403c2fccc9',1,'b2Settings.h']]], - ['b2_5fmaxtranslation',['b2_maxTranslation',['../b2_settings_8h.html#af2bad257bfbafed3665df3e243ba2b52',1,'b2Settings.h']]], - ['b2_5fpolygonradius',['b2_polygonRadius',['../b2_settings_8h.html#afc0f934dabffb1e83e081249133ad860',1,'b2Settings.h']]], - ['b2_5ftimetosleep',['b2_timeToSleep',['../b2_settings_8h.html#ab021adb740e4a5e1f5f7d9913ed94781',1,'b2Settings.h']]], - ['b2_5fvelocitythreshold',['b2_velocityThreshold',['../b2_settings_8h.html#a690b448aa2dba2a1393781f8c059c22a',1,'b2Settings.h']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/enums_62.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/enums_62.html deleted file mode 100644 index 399430c..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/enums_62.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/enums_62.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/enums_62.js deleted file mode 100644 index b4d49e2..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/enums_62.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['b2pointstate',['b2PointState',['../b2_collision_8h.html#a0a894e3715ce8c61b7958dd6e083663d',1,'b2Collision.h']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/enumvalues_62.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/enumvalues_62.html deleted file mode 100644 index effeaba..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/enumvalues_62.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/enumvalues_62.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/enumvalues_62.js deleted file mode 100644 index d113371..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/enumvalues_62.js +++ /dev/null @@ -1,7 +0,0 @@ -var searchData= -[ - ['b2_5faddstate',['b2_addState',['../b2_collision_8h.html#a0a894e3715ce8c61b7958dd6e083663dac60dc479bee2089a695b37948179b3d4',1,'b2Collision.h']]], - ['b2_5fnullstate',['b2_nullState',['../b2_collision_8h.html#a0a894e3715ce8c61b7958dd6e083663da7ce77ce1a592f49d92939997976c217b',1,'b2Collision.h']]], - ['b2_5fpersiststate',['b2_persistState',['../b2_collision_8h.html#a0a894e3715ce8c61b7958dd6e083663dafb032f2175741fa95361e55d1c069e0a',1,'b2Collision.h']]], - ['b2_5fremovestate',['b2_removeState',['../b2_collision_8h.html#a0a894e3715ce8c61b7958dd6e083663da42ca6d7de57b948c8c895cd6f51ee8be',1,'b2Collision.h']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/enumvalues_65.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/enumvalues_65.html deleted file mode 100644 index 96f19c1..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/enumvalues_65.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/enumvalues_65.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/enumvalues_65.js deleted file mode 100644 index 8eb1036..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/enumvalues_65.js +++ /dev/null @@ -1,8 +0,0 @@ -var searchData= -[ - ['e_5faabbbit',['e_aabbBit',['../classb2_draw.html#ae23c5d6c4f5230621f736593469cf7f2acdf1370108930182a45f39e7cc9b0cc7',1,'b2Draw']]], - ['e_5fcenterofmassbit',['e_centerOfMassBit',['../classb2_draw.html#ae23c5d6c4f5230621f736593469cf7f2a7f1494d816479c7d23997a6c292cd8b6',1,'b2Draw']]], - ['e_5fjointbit',['e_jointBit',['../classb2_draw.html#ae23c5d6c4f5230621f736593469cf7f2a241137a63679720c41a271c11681e2b3',1,'b2Draw']]], - ['e_5fpairbit',['e_pairBit',['../classb2_draw.html#ae23c5d6c4f5230621f736593469cf7f2ac86bb64ac65e555db28827407f2f2d43',1,'b2Draw']]], - ['e_5fshapebit',['e_shapeBit',['../classb2_draw.html#ae23c5d6c4f5230621f736593469cf7f2a1c8964c4f1fdc39e98b58ac38ecda1f9',1,'b2Draw']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/files_62.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/files_62.html deleted file mode 100644 index 82a4ca7..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/files_62.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/files_62.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/files_62.js deleted file mode 100644 index 6fa3c18..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/files_62.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['b2collision_2eh',['b2Collision.h',['../b2_collision_8h.html',1,'']]], - ['b2settings_2eh',['b2Settings.h',['../b2_settings_8h.html',1,'']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_61.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_61.html deleted file mode 100644 index ecabe40..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_61.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_61.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_61.js deleted file mode 100644 index e608c45..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_61.js +++ /dev/null @@ -1,11 +0,0 @@ -var searchData= -[ - ['advance',['Advance',['../structb2_sweep.html#a35eb9b976ca87c9b8d758bec070c6c06',1,'b2Sweep']]], - ['allocate',['Allocate',['../classb2_block_allocator.html#a437bf775c23f6e36af11a6d1653d7040',1,'b2BlockAllocator']]], - ['appendflags',['AppendFlags',['../classb2_draw.html#acc2fd4648ee0a65574770c64528f7166',1,'b2Draw']]], - ['applyangularimpulse',['ApplyAngularImpulse',['../classb2_body.html#a65384cfad8db2376cdf3fab38cac06e5',1,'b2Body']]], - ['applyforce',['ApplyForce',['../classb2_body.html#a942be8e1cd2bcd06f53c4638c45a9525',1,'b2Body']]], - ['applyforcetocenter',['ApplyForceToCenter',['../classb2_body.html#abeba04911f7a2a141169bb06fe98d06a',1,'b2Body']]], - ['applylinearimpulse',['ApplyLinearImpulse',['../classb2_body.html#a7f677e93efb3c4c065087aff317274a3',1,'b2Body']]], - ['applytorque',['ApplyTorque',['../classb2_body.html#a54a354447ac3b4cc224c8327a5abc0e8',1,'b2Body']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_62.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_62.html deleted file mode 100644 index 294285a..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_62.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_62.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_62.js deleted file mode 100644 index 0bebb15..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_62.js +++ /dev/null @@ -1,26 +0,0 @@ -var searchData= -[ - ['b2alloc',['b2Alloc',['../b2_settings_8h.html#a2dca9b286e9b9d6d022055fd61534bd7',1,'b2Settings.cpp']]], - ['b2bodydef',['b2BodyDef',['../structb2_body_def.html#a87bee47596b3b3eced0d9dd1f4c18fee',1,'b2BodyDef']]], - ['b2clipsegmenttoline',['b2ClipSegmentToLine',['../b2_collision_8h.html#a8b36e651798f55f2533f9837462ded41',1,'b2Collision.cpp']]], - ['b2collidecircles',['b2CollideCircles',['../b2_collision_8h.html#ab8a1bf2c6a9453307466f4870c1fa333',1,'b2CollideCircle.cpp']]], - ['b2collideedgeandcircle',['b2CollideEdgeAndCircle',['../b2_collision_8h.html#aee6f752fdf8c89152e824da12e944733',1,'b2CollideEdge.cpp']]], - ['b2collideedgeandpolygon',['b2CollideEdgeAndPolygon',['../b2_collision_8h.html#a5d0c5fab412d5ca886b1965666b16d99',1,'b2CollideEdge.cpp']]], - ['b2collidepolygonandcircle',['b2CollidePolygonAndCircle',['../b2_collision_8h.html#a30da13c857596fbefa40b47c3e1e78d0',1,'b2CollideCircle.cpp']]], - ['b2collidepolygons',['b2CollidePolygons',['../b2_collision_8h.html#a2f7b9859479384c0e2cceb9e7744afcb',1,'b2CollidePolygon.cpp']]], - ['b2dynamictree',['b2DynamicTree',['../classb2_dynamic_tree.html#a8af64cf6a1566fa4c5b5c9683bd937d9',1,'b2DynamicTree']]], - ['b2fixturedef',['b2FixtureDef',['../structb2_fixture_def.html#aa34ba06bcf0d6d981931a83cf124a602',1,'b2FixtureDef']]], - ['b2free',['b2Free',['../b2_settings_8h.html#a50f4abf5edeabd0300946edbd542e24d',1,'b2Settings.cpp']]], - ['b2getpointstates',['b2GetPointStates',['../b2_collision_8h.html#a401e2747d276e9fbfd131989e02ff568',1,'b2Collision.cpp']]], - ['b2log',['b2Log',['../b2_settings_8h.html#a9f10095d05c74eebfe535931c9061ab2',1,'b2Settings.cpp']]], - ['b2mat22',['b2Mat22',['../structb2_mat22.html#ac3e10f6d457c8dab9062ba378f66bc4d',1,'b2Mat22::b2Mat22()'],['../structb2_mat22.html#abd674c6d92e26962977f34bcd92ff24d',1,'b2Mat22::b2Mat22(const b2Vec2 &c1, const b2Vec2 &c2)'],['../structb2_mat22.html#a41d5d8743bda32cb8c6e212528934810',1,'b2Mat22::b2Mat22(float32 a11, float32 a12, float32 a21, float32 a22)']]], - ['b2mat33',['b2Mat33',['../structb2_mat33.html#a1f4d7ddf1c8a202fc08ec64dfe191463',1,'b2Mat33::b2Mat33()'],['../structb2_mat33.html#a36d99a037008776c8d09fe0aeb5c759c',1,'b2Mat33::b2Mat33(const b2Vec3 &c1, const b2Vec3 &c2, const b2Vec3 &c3)']]], - ['b2rot',['b2Rot',['../structb2_rot.html#aa40dda6d390a2f54c793c63027a9b46e',1,'b2Rot']]], - ['b2testoverlap',['b2TestOverlap',['../b2_collision_8h.html#ae7601420d0b42c1ee494e879dd2009a5',1,'b2Collision.cpp']]], - ['b2timer',['b2Timer',['../classb2_timer.html#afcc159032a8edeaa9febdf2b6cbd49a5',1,'b2Timer']]], - ['b2transform',['b2Transform',['../structb2_transform.html#a765a2e5c692a2e1d05c7a5441019373d',1,'b2Transform::b2Transform()'],['../structb2_transform.html#a823e190e4810e35e8100f4414d0bef62',1,'b2Transform::b2Transform(const b2Vec2 &position, const b2Rot &rotation)']]], - ['b2vec2',['b2Vec2',['../structb2_vec2.html#a9171b31deb83af96872f99689939a12f',1,'b2Vec2::b2Vec2()'],['../structb2_vec2.html#aa8a2f026420a84bbbc62f3a3de2041d6',1,'b2Vec2::b2Vec2(float32 x, float32 y)']]], - ['b2vec3',['b2Vec3',['../structb2_vec3.html#a837423f66d6fb72d815e7390c09938b9',1,'b2Vec3::b2Vec3()'],['../structb2_vec3.html#a47df55b26ab254dcf42a16638c7feeeb',1,'b2Vec3::b2Vec3(float32 x, float32 y, float32 z)']]], - ['b2world',['b2World',['../classb2_world.html#aeccc87fd9e36702c821a8244ca7cd875',1,'b2World']]], - ['begincontact',['BeginContact',['../classb2_contact_listener.html#a35148fc56fb9eac12077200fbd928f65',1,'b2ContactListener']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_63.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_63.html deleted file mode 100644 index 98924d8..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_63.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_63.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_63.js deleted file mode 100644 index 498b966..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_63.js +++ /dev/null @@ -1,16 +0,0 @@ -var searchData= -[ - ['clearflags',['ClearFlags',['../classb2_draw.html#afc240b71f4ba8c17440d6ed526d4e22e',1,'b2Draw']]], - ['clearforces',['ClearForces',['../classb2_world.html#ac082ab4c4ad0b1c5ec4674315eeec643',1,'b2World']]], - ['clone',['Clone',['../classb2_chain_shape.html#a651a039aa4584e48df91db8108729bfa',1,'b2ChainShape::Clone()'],['../classb2_circle_shape.html#a895ba8656a146d26a0c531e9dbea2e14',1,'b2CircleShape::Clone()'],['../classb2_edge_shape.html#a70ce8532bab35dce4367d3717ae024b3',1,'b2EdgeShape::Clone()'],['../classb2_polygon_shape.html#a38cf6a915a85691746465c9dbfc5aeb6',1,'b2PolygonShape::Clone()'],['../classb2_shape.html#a4716243454bb9cf7c7ee1d9cb23ae634',1,'b2Shape::Clone()']]], - ['combine',['Combine',['../structb2_a_a_b_b.html#ad551edba62d2ad6094672a9ba3e26496',1,'b2AABB::Combine(const b2AABB &aabb)'],['../structb2_a_a_b_b.html#a34b9c7d824df845c10caa9c12ae90452',1,'b2AABB::Combine(const b2AABB &aabb1, const b2AABB &aabb2)']]], - ['computeaabb',['ComputeAABB',['../classb2_chain_shape.html#a409c21206e4c84f66700809aac5b164c',1,'b2ChainShape::ComputeAABB()'],['../classb2_circle_shape.html#aa6889a5af85aa1e272547fd0008eb64a',1,'b2CircleShape::ComputeAABB()'],['../classb2_edge_shape.html#a30f601c611eb549f9f657eee89d82f9f',1,'b2EdgeShape::ComputeAABB()'],['../classb2_polygon_shape.html#a00e225b0321bf6bb231a554036ffdf23',1,'b2PolygonShape::ComputeAABB()'],['../classb2_shape.html#a88e9807fab0c8ca9a98d8926e50a1411',1,'b2Shape::ComputeAABB()']]], - ['computemass',['ComputeMass',['../classb2_chain_shape.html#a009259d589abebeda27fe580d117b11e',1,'b2ChainShape::ComputeMass()'],['../classb2_circle_shape.html#a335edea2ef84789e102dde41ca889828',1,'b2CircleShape::ComputeMass()'],['../classb2_edge_shape.html#a3a305707a07ca3dffa6f2eaff3735dff',1,'b2EdgeShape::ComputeMass()'],['../classb2_polygon_shape.html#ad86c4c2a83a7122599462da83bf35389',1,'b2PolygonShape::ComputeMass()'],['../classb2_shape.html#a61b365526241b47f124789b0309cac69',1,'b2Shape::ComputeMass()']]], - ['contains',['Contains',['../structb2_a_a_b_b.html#aba5fc112e3c8d05e034a21d95fc37704',1,'b2AABB']]], - ['createbody',['CreateBody',['../classb2_world.html#a2eb36e967e43294bfa03ec3d177c2dae',1,'b2World']]], - ['createchain',['CreateChain',['../classb2_chain_shape.html#aa0977339b743c05f2179939ccc38e7e0',1,'b2ChainShape']]], - ['createfixture',['CreateFixture',['../classb2_body.html#aa4892301e9b9d62ede5e93dad1743894',1,'b2Body::CreateFixture(const b2FixtureDef *def)'],['../classb2_body.html#a52d971867086d5db79769a62bbb70a60',1,'b2Body::CreateFixture(const b2Shape *shape, float32 density)']]], - ['createjoint',['CreateJoint',['../classb2_world.html#a5cba9d0653149eb62504154e6fb35021',1,'b2World']]], - ['createloop',['CreateLoop',['../classb2_chain_shape.html#ac257742a52cac391e25962a4c703fb06',1,'b2ChainShape']]], - ['createproxy',['CreateProxy',['../classb2_broad_phase.html#ae2f7af756bc55ece45221466c5af449c',1,'b2BroadPhase::CreateProxy()'],['../classb2_dynamic_tree.html#ae44676f12977dada46037da47fc7ffbf',1,'b2DynamicTree::CreateProxy()']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_64.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_64.html deleted file mode 100644 index bcfb550..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_64.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_64.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_64.js deleted file mode 100644 index 71ce0ef..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_64.js +++ /dev/null @@ -1,15 +0,0 @@ -var searchData= -[ - ['destroybody',['DestroyBody',['../classb2_world.html#ad52231ad7a9556ef5735ac79cbcd8fcf',1,'b2World']]], - ['destroyfixture',['DestroyFixture',['../classb2_body.html#a856d1df86b7bded91f02d8cfcaea1c2f',1,'b2Body']]], - ['destroyjoint',['DestroyJoint',['../classb2_world.html#add5942aef171e54cfa384c8975746dca',1,'b2World']]], - ['destroyproxy',['DestroyProxy',['../classb2_broad_phase.html#a84f0fb227dc01a9b9baa55c7b8c68984',1,'b2BroadPhase::DestroyProxy()'],['../classb2_dynamic_tree.html#a62aa451e7d7fe029818dd05f76ea9cdc',1,'b2DynamicTree::DestroyProxy()']]], - ['drawcircle',['DrawCircle',['../classb2_draw.html#ae2effe9bca87c8d7cb90e860d13b7e9e',1,'b2Draw']]], - ['drawdebugdata',['DrawDebugData',['../classb2_world.html#a293d9865e407fd463e168b0a29856acc',1,'b2World']]], - ['drawpolygon',['DrawPolygon',['../classb2_draw.html#acd5427d1d2e7d19f1b34ad3620134d28',1,'b2Draw']]], - ['drawsegment',['DrawSegment',['../classb2_draw.html#a1de5aaf50db875d1c644c596832af57d',1,'b2Draw']]], - ['drawsolidcircle',['DrawSolidCircle',['../classb2_draw.html#a775a1d0472c5980d597904c7b596a0a6',1,'b2Draw']]], - ['drawsolidpolygon',['DrawSolidPolygon',['../classb2_draw.html#a76f2d67de0781a32cab116278c5c9eea',1,'b2Draw']]], - ['drawtransform',['DrawTransform',['../classb2_draw.html#ade698123482a491a7a61fa1fe4d3a4f4',1,'b2Draw']]], - ['dump',['Dump',['../classb2_body.html#ac9e482f7d9df92801c24e79a7e751d06',1,'b2Body::Dump()'],['../classb2_fixture.html#a57485e73a2063060e320c7176676cd5e',1,'b2Fixture::Dump()'],['../classb2_world.html#a73c1fec260d460514edd335d4c235893',1,'b2World::Dump()'],['../classb2_distance_joint.html#a3cebcc6ccce6f3c24432cd130fd53517',1,'b2DistanceJoint::Dump()'],['../classb2_friction_joint.html#a9a27084c9f4a7ea0a4f590f687ac1edb',1,'b2FrictionJoint::Dump()'],['../classb2_gear_joint.html#a1620b5a39e9da2b40d324c45736ad322',1,'b2GearJoint::Dump()'],['../classb2_joint.html#abd35e7316017ad9a40d5dbf9b5ba3f36',1,'b2Joint::Dump()'],['../classb2_motor_joint.html#a5d23974c2fc23f64426a8321520e45bb',1,'b2MotorJoint::Dump()'],['../classb2_mouse_joint.html#ae3d3a46a0032c0e50f346e7f7129617f',1,'b2MouseJoint::Dump()'],['../classb2_prismatic_joint.html#a1d8e01f0c7ca9e1840f1f17c17dda7db',1,'b2PrismaticJoint::Dump()'],['../classb2_pulley_joint.html#ad12d0e03b5d07b2f8af1005c95c67aa2',1,'b2PulleyJoint::Dump()'],['../classb2_revolute_joint.html#aa9d88f5476c77a5c4a6ef5b2ad0d3e6f',1,'b2RevoluteJoint::Dump()'],['../classb2_rope_joint.html#a4612dca9851a66701893a48d896dbd14',1,'b2RopeJoint::Dump()'],['../classb2_weld_joint.html#a2fd073c5e6264e98592240308a006981',1,'b2WeldJoint::Dump()'],['../classb2_wheel_joint.html#a09534b6f4c5d0254711e0bcc7cf3b0e4',1,'b2WheelJoint::Dump()']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_65.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_65.html deleted file mode 100644 index f81fa7b..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_65.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_65.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_65.js deleted file mode 100644 index 19f2873..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_65.js +++ /dev/null @@ -1,7 +0,0 @@ -var searchData= -[ - ['enablelimit',['EnableLimit',['../classb2_prismatic_joint.html#a6d419afe7bd4b0e36d2e4607df7f79f2',1,'b2PrismaticJoint::EnableLimit()'],['../classb2_revolute_joint.html#a56bdfdd04e906e52d0258f6a481b9093',1,'b2RevoluteJoint::EnableLimit()']]], - ['enablemotor',['EnableMotor',['../classb2_prismatic_joint.html#a4a7fd079de49f7ed5aa4a5d8d90be2a2',1,'b2PrismaticJoint::EnableMotor()'],['../classb2_revolute_joint.html#a80ed5a07d9a0e07d010808a73ffae6ff',1,'b2RevoluteJoint::EnableMotor()'],['../classb2_wheel_joint.html#a7a832d814bdda135a78fad41ba671da6',1,'b2WheelJoint::EnableMotor()']]], - ['endcontact',['EndContact',['../classb2_contact_listener.html#afb3059058e5c47903a3947c2eef5826b',1,'b2ContactListener']]], - ['evaluate',['Evaluate',['../classb2_chain_and_circle_contact.html#afe52ebd870f24cbecedd1db662705f12',1,'b2ChainAndCircleContact::Evaluate()'],['../classb2_chain_and_polygon_contact.html#a8c25ceb49d981797d0a7f8a1ea769442',1,'b2ChainAndPolygonContact::Evaluate()'],['../classb2_circle_contact.html#ac0651dda773561b8561b8efa3cd31d5c',1,'b2CircleContact::Evaluate()'],['../classb2_contact.html#ae3c2842e5325b2d4500f8ed1d4de2f72',1,'b2Contact::Evaluate()'],['../classb2_edge_and_circle_contact.html#a8f083c4c7c7da83eae38975164fd1452',1,'b2EdgeAndCircleContact::Evaluate()'],['../classb2_edge_and_polygon_contact.html#a5f360f5f0b1d367beb517ba9f380c84b',1,'b2EdgeAndPolygonContact::Evaluate()'],['../classb2_polygon_and_circle_contact.html#ac24d495022aae853cb573f86c8d86c3d',1,'b2PolygonAndCircleContact::Evaluate()'],['../classb2_polygon_contact.html#ae75f78bb52c76fc4fffda4d91e62d354',1,'b2PolygonContact::Evaluate()']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_66.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_66.html deleted file mode 100644 index d0c32b6..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_66.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_66.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_66.js deleted file mode 100644 index 147a37c..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_66.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['flagforfiltering',['FlagForFiltering',['../classb2_contact.html#a44a3d32149021269eb9dfd4015c98e0d',1,'b2Contact']]], - ['free',['Free',['../classb2_block_allocator.html#a945fdf86e260318b930a53dcc887ca8b',1,'b2BlockAllocator']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_67.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_67.html deleted file mode 100644 index 39cc96d..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_67.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_67.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_67.js deleted file mode 100644 index 798beb6..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_67.js +++ /dev/null @@ -1,105 +0,0 @@ -var searchData= -[ - ['getaabb',['GetAABB',['../classb2_fixture.html#abdc2a225110310a481a78cdb14000ca7',1,'b2Fixture']]], - ['getanchora',['GetAnchorA',['../classb2_distance_joint.html#a66c1cb4deff1166c1dab67df6047a89c',1,'b2DistanceJoint::GetAnchorA()'],['../classb2_friction_joint.html#a01918be429fa5d37d51fda4fe0cc639b',1,'b2FrictionJoint::GetAnchorA()'],['../classb2_gear_joint.html#a2b5cdcb78c7ac3df4bd47e4195443a05',1,'b2GearJoint::GetAnchorA()'],['../classb2_joint.html#abe46ca3aad5db73909a9b5a7b2117447',1,'b2Joint::GetAnchorA()'],['../classb2_motor_joint.html#ac94ea6c5f903c8d8e22724889bff2562',1,'b2MotorJoint::GetAnchorA()'],['../classb2_mouse_joint.html#a9db1c131fde2d11e61c6ccee9c28219b',1,'b2MouseJoint::GetAnchorA()'],['../classb2_prismatic_joint.html#ae6ccc4b3ceba180e4381fe4b821ef8d1',1,'b2PrismaticJoint::GetAnchorA()'],['../classb2_pulley_joint.html#a05ac0d0d927e9541f08b07cb1bf9ec56',1,'b2PulleyJoint::GetAnchorA()'],['../classb2_revolute_joint.html#a7f266986c12009973fd74c9828b6c236',1,'b2RevoluteJoint::GetAnchorA()'],['../classb2_rope_joint.html#a046c6f0bc73800716c669a2b955b3c05',1,'b2RopeJoint::GetAnchorA()'],['../classb2_weld_joint.html#a8550de74e174a08856bc4bc7a4853429',1,'b2WeldJoint::GetAnchorA()'],['../classb2_wheel_joint.html#a6499dcd788d29f06c2e1b28c755e01c8',1,'b2WheelJoint::GetAnchorA()']]], - ['getanchorb',['GetAnchorB',['../classb2_distance_joint.html#afc58d85cf7cc5e23082cf469e1a1a067',1,'b2DistanceJoint::GetAnchorB()'],['../classb2_friction_joint.html#ac519021aadea0faf1df01f232023c745',1,'b2FrictionJoint::GetAnchorB()'],['../classb2_gear_joint.html#a84b9aedb8918a98b84032c9f0f823e13',1,'b2GearJoint::GetAnchorB()'],['../classb2_joint.html#a88e947c65d4ea26fe539f02a8cb7f7a9',1,'b2Joint::GetAnchorB()'],['../classb2_motor_joint.html#acb603ebe6615308654574356e8bb7dc5',1,'b2MotorJoint::GetAnchorB()'],['../classb2_mouse_joint.html#a0db991ec36238105eb481f75e9b6161a',1,'b2MouseJoint::GetAnchorB()'],['../classb2_prismatic_joint.html#aa2e00a1801989c3b6bc67bf47092b531',1,'b2PrismaticJoint::GetAnchorB()'],['../classb2_pulley_joint.html#a5cc3596f683d621b9a885c2569ecd452',1,'b2PulleyJoint::GetAnchorB()'],['../classb2_revolute_joint.html#a3a67ad189b29ea8ab6602a28697807f6',1,'b2RevoluteJoint::GetAnchorB()'],['../classb2_rope_joint.html#a14a8ef7c16e0d6d874cdfb986d0eb8f0',1,'b2RopeJoint::GetAnchorB()'],['../classb2_weld_joint.html#a2030794df9b2a3111bcf7a1eb0593960',1,'b2WeldJoint::GetAnchorB()'],['../classb2_wheel_joint.html#ace182061f7f78ac2ec3f957a763ca5d3',1,'b2WheelJoint::GetAnchorB()']]], - ['getangle',['GetAngle',['../structb2_rot.html#a67a6c08812c009654f00800256c8bfdc',1,'b2Rot::GetAngle()'],['../classb2_body.html#a57c4a1946a6dd5a00e28691bc419fdcd',1,'b2Body::GetAngle()']]], - ['getangulardamping',['GetAngularDamping',['../classb2_body.html#a5153143f2593802c85e54a21de5464ce',1,'b2Body']]], - ['getangularvelocity',['GetAngularVelocity',['../classb2_body.html#a158fe4c141168d2c3e65096b209f548c',1,'b2Body']]], - ['getarearatio',['GetAreaRatio',['../classb2_dynamic_tree.html#ad78282a720c451e032b43c34cba02f1a',1,'b2DynamicTree']]], - ['getautoclearforces',['GetAutoClearForces',['../classb2_world.html#af56cc43ebde27946ed39382b4ea31640',1,'b2World']]], - ['getbody',['GetBody',['../classb2_fixture.html#a9d6536ef274d768e86ab0a8330921535',1,'b2Fixture']]], - ['getbodya',['GetBodyA',['../classb2_joint.html#a2ed5eca3dbdce48665c14452b280613f',1,'b2Joint']]], - ['getbodyb',['GetBodyB',['../classb2_joint.html#a700b3d4c87f34f456151b9598e4641a0',1,'b2Joint']]], - ['getbodycount',['GetBodyCount',['../classb2_world.html#a4559122ea51401b4fb7342eb6232ce74',1,'b2World']]], - ['getbodylist',['GetBodyList',['../classb2_world.html#a1b87c03955e3312d308ddf679adf3c85',1,'b2World']]], - ['getcenter',['GetCenter',['../structb2_a_a_b_b.html#aa26703e234bd6fb30fd443cd5001795a',1,'b2AABB']]], - ['getchildcount',['GetChildCount',['../classb2_chain_shape.html#a44bd58b9602dbe57cdfc3b66f8f03b61',1,'b2ChainShape::GetChildCount()'],['../classb2_circle_shape.html#a64b58799675edc9a6debc09c0d6ddce4',1,'b2CircleShape::GetChildCount()'],['../classb2_edge_shape.html#a8c15a5a5aa8e7dc69826be17aaa82293',1,'b2EdgeShape::GetChildCount()'],['../classb2_polygon_shape.html#ae844375297d19744e01a37b397a5baba',1,'b2PolygonShape::GetChildCount()'],['../classb2_shape.html#a05a3c445017d96df9238ceefe6ce37ab',1,'b2Shape::GetChildCount()']]], - ['getchildedge',['GetChildEdge',['../classb2_chain_shape.html#a614e630221ac7f19257c9351edf4bd12',1,'b2ChainShape']]], - ['getchildindexa',['GetChildIndexA',['../classb2_contact.html#ab0c9c059c776f315ae62abb5c978afcc',1,'b2Contact']]], - ['getchildindexb',['GetChildIndexB',['../classb2_contact.html#a9edc26022c3d1a9cf1dab9d79d639b3f',1,'b2Contact']]], - ['getcollideconnected',['GetCollideConnected',['../classb2_joint.html#a09c6bdfa5842522ba381bac8dd559f4d',1,'b2Joint']]], - ['getcontactcount',['GetContactCount',['../classb2_world.html#abcc976f1755f9bb94a8650f5f4219a8d',1,'b2World']]], - ['getcontactlist',['GetContactList',['../classb2_body.html#a16bdbfb266c82a0ef51be351a8928bc5',1,'b2Body::GetContactList()'],['../classb2_world.html#ab1e1c59fd7534c0268c2a3e31370a425',1,'b2World::GetContactList()']]], - ['getcontactmanager',['GetContactManager',['../classb2_world.html#a16259159ae1719c30808561c990a8c05',1,'b2World']]], - ['getcorrectionfactor',['GetCorrectionFactor',['../classb2_motor_joint.html#a9ea99c4280374d85b29d4ab74afd7aff',1,'b2MotorJoint']]], - ['getcurrentlengtha',['GetCurrentLengthA',['../classb2_pulley_joint.html#aa57599ec0d229c3ef95dafa39a277c7b',1,'b2PulleyJoint']]], - ['getcurrentlengthb',['GetCurrentLengthB',['../classb2_pulley_joint.html#a3b68ad489d726afa74e538331c1f72d8',1,'b2PulleyJoint']]], - ['getdensity',['GetDensity',['../classb2_fixture.html#a5deb4acfb464f3dcb668f081a2c44ff4',1,'b2Fixture']]], - ['getextents',['GetExtents',['../structb2_a_a_b_b.html#aff8b9aa64069a33fe45025299aa0e9b7',1,'b2AABB']]], - ['getfataabb',['GetFatAABB',['../classb2_broad_phase.html#a7b00ac700db52e52248a25397007d4ff',1,'b2BroadPhase::GetFatAABB()'],['../classb2_dynamic_tree.html#adf4676b1c34a57b4451bcbeaebe65687',1,'b2DynamicTree::GetFatAABB()']]], - ['getfilterdata',['GetFilterData',['../classb2_fixture.html#a5bc271a6e8082e727b053aead1ae86a9',1,'b2Fixture']]], - ['getfixturea',['GetFixtureA',['../classb2_contact.html#a707a3a5a14c2cdd4c6eb7fc648d76037',1,'b2Contact']]], - ['getfixtureb',['GetFixtureB',['../classb2_contact.html#a68464fe587d7e6a1f52763e965bb7361',1,'b2Contact']]], - ['getfixturelist',['GetFixtureList',['../classb2_body.html#a64634da20c6e0ab2d68a3cc9ea15efc3',1,'b2Body']]], - ['getflags',['GetFlags',['../classb2_draw.html#acadab1a12ec06541814f6118950aa998',1,'b2Draw']]], - ['getfriction',['GetFriction',['../classb2_fixture.html#a31253b90b87f1fec7256bba92aeb4645',1,'b2Fixture::GetFriction()'],['../classb2_contact.html#a0b6daf4137fd1719961f5d780b8dda15',1,'b2Contact::GetFriction()']]], - ['getgravity',['GetGravity',['../classb2_world.html#a1e34bcd2f75fbdd41e2d84b3eb26d1ab',1,'b2World']]], - ['getgravityscale',['GetGravityScale',['../classb2_body.html#ad8348f06a391d169d6395dfd66762454',1,'b2Body']]], - ['getgroundanchora',['GetGroundAnchorA',['../classb2_pulley_joint.html#a19eefa28d2647882406ea9bfe2850a9e',1,'b2PulleyJoint']]], - ['getgroundanchorb',['GetGroundAnchorB',['../classb2_pulley_joint.html#a1b49d0dbce802f19711a9ab6d7dadfee',1,'b2PulleyJoint']]], - ['getheight',['GetHeight',['../classb2_dynamic_tree.html#add7e09cdf279e7c0031da9dfd4cdf4db',1,'b2DynamicTree']]], - ['getinertia',['GetInertia',['../classb2_body.html#a8c8916caf67c1e618a07d8b6b9253fa8',1,'b2Body']]], - ['getinverse22',['GetInverse22',['../structb2_mat33.html#a9eb5090b15d08ab495458adfec50e7cb',1,'b2Mat33']]], - ['getjoint1',['GetJoint1',['../classb2_gear_joint.html#acd3fb38982319f387d1eb7aeddd5311f',1,'b2GearJoint']]], - ['getjoint2',['GetJoint2',['../classb2_gear_joint.html#af1673b8edd80f3ae3b868c3a18b7b058',1,'b2GearJoint']]], - ['getjointangle',['GetJointAngle',['../classb2_revolute_joint.html#ab20fc12ce5ad5d84a032eb613c80764a',1,'b2RevoluteJoint']]], - ['getjointcount',['GetJointCount',['../classb2_world.html#a54a95a98787ed5f383c6549ee1f4c4d5',1,'b2World']]], - ['getjointlist',['GetJointList',['../classb2_body.html#a55cf2eb851780599ca5c1f6f25a17e41',1,'b2Body::GetJointList()'],['../classb2_world.html#a55db7240f8290aa02cab79f181934de8',1,'b2World::GetJointList()']]], - ['getjointspeed',['GetJointSpeed',['../classb2_prismatic_joint.html#a221aa1c6253686c96a02ecdd99c84b4c',1,'b2PrismaticJoint::GetJointSpeed()'],['../classb2_revolute_joint.html#a48e4db13c187af159587d731656aa0c4',1,'b2RevoluteJoint::GetJointSpeed()'],['../classb2_wheel_joint.html#a398bc3a1f807905e0923cc7d9bff640d',1,'b2WheelJoint::GetJointSpeed()']]], - ['getjointtranslation',['GetJointTranslation',['../classb2_prismatic_joint.html#ade994ac79315258c80bccceef371df57',1,'b2PrismaticJoint::GetJointTranslation()'],['../classb2_wheel_joint.html#abc3791f9c8139e5c5ba0fb72d5c7f9df',1,'b2WheelJoint::GetJointTranslation()']]], - ['getlengtha',['GetLengthA',['../classb2_pulley_joint.html#a6b4c2e5cb4f5da48fcb074c7b5988084',1,'b2PulleyJoint']]], - ['getlengthb',['GetLengthB',['../classb2_pulley_joint.html#abc7f31a35c6fb32647fd15d57e4ce60c',1,'b2PulleyJoint']]], - ['getlineardamping',['GetLinearDamping',['../classb2_body.html#a7283e4821d24aed0fa5b0f7891175183',1,'b2Body']]], - ['getlinearvelocity',['GetLinearVelocity',['../classb2_body.html#a427cf835b5d3327a003ff43cb6107ead',1,'b2Body']]], - ['getlinearvelocityfromlocalpoint',['GetLinearVelocityFromLocalPoint',['../classb2_body.html#a4429e3f380e882def11c52ac893b8e2e',1,'b2Body']]], - ['getlinearvelocityfromworldpoint',['GetLinearVelocityFromWorldPoint',['../classb2_body.html#a4238ae43f5afeb2126b8e8bf765334b5',1,'b2Body']]], - ['getlocalanchora',['GetLocalAnchorA',['../classb2_distance_joint.html#a75a41c40f21e48a6f9e947dd1dc46db4',1,'b2DistanceJoint::GetLocalAnchorA()'],['../classb2_friction_joint.html#a91ef023d373f775c401ae359f6f74d60',1,'b2FrictionJoint::GetLocalAnchorA()'],['../classb2_prismatic_joint.html#a8453728991590d064f75ac9ee43eb0cb',1,'b2PrismaticJoint::GetLocalAnchorA()'],['../classb2_revolute_joint.html#af270a3029b2573bf85cde345c22d65ab',1,'b2RevoluteJoint::GetLocalAnchorA()'],['../classb2_rope_joint.html#aa423bbe186d46bff0b50ede8338851d4',1,'b2RopeJoint::GetLocalAnchorA()'],['../classb2_weld_joint.html#aaef4f238fb5badf1112321ba878e8b06',1,'b2WeldJoint::GetLocalAnchorA()'],['../classb2_wheel_joint.html#abf725ee0fa640d1b9374283f6f50e82d',1,'b2WheelJoint::GetLocalAnchorA()']]], - ['getlocalanchorb',['GetLocalAnchorB',['../classb2_distance_joint.html#a22e9572c8b3d1f0619b340738811c082',1,'b2DistanceJoint::GetLocalAnchorB()'],['../classb2_friction_joint.html#acd57698eb559d36eeac6df00dfd8b89f',1,'b2FrictionJoint::GetLocalAnchorB()'],['../classb2_prismatic_joint.html#a5591358eced21a8845744a8c47b7df9d',1,'b2PrismaticJoint::GetLocalAnchorB()'],['../classb2_revolute_joint.html#a985f788cffd53d7bb926b11cf77734e4',1,'b2RevoluteJoint::GetLocalAnchorB()'],['../classb2_rope_joint.html#a511b297fbebfbecdcdce68e1cffa272c',1,'b2RopeJoint::GetLocalAnchorB()'],['../classb2_weld_joint.html#a7fdc0c047dc04bbc8c5ca67011be071c',1,'b2WeldJoint::GetLocalAnchorB()'],['../classb2_wheel_joint.html#a38313bcd5d5a91f190956086b9d9b8e5',1,'b2WheelJoint::GetLocalAnchorB()']]], - ['getlocalaxisa',['GetLocalAxisA',['../classb2_prismatic_joint.html#ab1aff69853c5ddb89ed8efdf8a0f4376',1,'b2PrismaticJoint::GetLocalAxisA()'],['../classb2_wheel_joint.html#a03c1a1cf19dbada68630aa3cbf970a55',1,'b2WheelJoint::GetLocalAxisA()']]], - ['getlocalcenter',['GetLocalCenter',['../classb2_body.html#a27ed7f8a3b36ddfb01069ee8f7106033',1,'b2Body']]], - ['getlocalpoint',['GetLocalPoint',['../classb2_body.html#a8f9ef0226b7eb989e700fa8898d29fc0',1,'b2Body']]], - ['getlocalvector',['GetLocalVector',['../classb2_body.html#a93de09565c0c1a9da2601c1847aa22df',1,'b2Body']]], - ['getlowerlimit',['GetLowerLimit',['../classb2_prismatic_joint.html#ad58727abc63a820e6d93983408a9508b',1,'b2PrismaticJoint::GetLowerLimit()'],['../classb2_revolute_joint.html#a0f33656869e46ec9405f42d68e858220',1,'b2RevoluteJoint::GetLowerLimit()']]], - ['getmanifold',['GetManifold',['../classb2_contact.html#ab0597077b23615476327f9b32d9c4979',1,'b2Contact']]], - ['getmass',['GetMass',['../classb2_body.html#a4f62fea4546d2b9ca64a5f6723bbc71c',1,'b2Body']]], - ['getmassdata',['GetMassData',['../classb2_body.html#ad0a90df7e2617a8572cd476267f95417',1,'b2Body::GetMassData()'],['../classb2_fixture.html#adbfb9b64006abaaa0ca01e6d9e06deea',1,'b2Fixture::GetMassData()']]], - ['getmaxbalance',['GetMaxBalance',['../classb2_dynamic_tree.html#ae02c45d1a68b42e59d170438ddbb7977',1,'b2DynamicTree']]], - ['getmaxforce',['GetMaxForce',['../classb2_friction_joint.html#af3abd33af3943197c89375057302fd0d',1,'b2FrictionJoint::GetMaxForce()'],['../classb2_motor_joint.html#ac63233e45f6428319a9857bf89557f46',1,'b2MotorJoint::GetMaxForce()']]], - ['getmaxtorque',['GetMaxTorque',['../classb2_friction_joint.html#ae59d07030bded21f46a6a432553e71c1',1,'b2FrictionJoint::GetMaxTorque()'],['../classb2_motor_joint.html#af84c933978d0a13a242c71a612f4116b',1,'b2MotorJoint::GetMaxTorque()']]], - ['getmilliseconds',['GetMilliseconds',['../classb2_timer.html#a354e020ec583a067b8f3b90a42a88e53',1,'b2Timer']]], - ['getmotorforce',['GetMotorForce',['../classb2_prismatic_joint.html#aee80c02627750559fc382422804a30e6',1,'b2PrismaticJoint']]], - ['getmotorspeed',['GetMotorSpeed',['../classb2_prismatic_joint.html#a20f969fefb08d86728bd1f0cf03e121f',1,'b2PrismaticJoint::GetMotorSpeed()'],['../classb2_revolute_joint.html#a5ebdb2b410725d2c7999d8fce792e0da',1,'b2RevoluteJoint::GetMotorSpeed()'],['../classb2_wheel_joint.html#acc7a31fdd444614ba1943f57f0c6ac5a',1,'b2WheelJoint::GetMotorSpeed()']]], - ['getmotortorque',['GetMotorTorque',['../classb2_revolute_joint.html#a64579cb1db5e9674ec17244133c72920',1,'b2RevoluteJoint::GetMotorTorque()'],['../classb2_wheel_joint.html#a4fbfb199ed267f7a2fad934cd2f4fbdc',1,'b2WheelJoint::GetMotorTorque()']]], - ['getnext',['GetNext',['../classb2_body.html#ad54182a11d02362b027a0eb072775bdc',1,'b2Body::GetNext()'],['../classb2_fixture.html#a0241952461f6f1a04a3c850306390fd2',1,'b2Fixture::GetNext()'],['../classb2_contact.html#aebfebb1e4b27dc0bd7aa120093e3d650',1,'b2Contact::GetNext()'],['../classb2_joint.html#a1a0e2137b631010750c728cb4e276e5d',1,'b2Joint::GetNext()']]], - ['getperimeter',['GetPerimeter',['../structb2_a_a_b_b.html#ace4448c60ef309726e59247a8ae67db5',1,'b2AABB']]], - ['getposition',['GetPosition',['../classb2_body.html#a798da9dc2d47431912d991d152b13711',1,'b2Body']]], - ['getprofile',['GetProfile',['../classb2_world.html#af41b3f1a21efc854b485d311911e24b2',1,'b2World']]], - ['getproxycount',['GetProxyCount',['../classb2_broad_phase.html#a399fa4f5289a1ec46a65f726f3bac890',1,'b2BroadPhase::GetProxyCount()'],['../classb2_world.html#a67f1f9fbdd85abd2100104c5eabe17cb',1,'b2World::GetProxyCount()']]], - ['getratio',['GetRatio',['../classb2_pulley_joint.html#a625685e60d95b7c5a725e8586d146752',1,'b2PulleyJoint']]], - ['getreactionforce',['GetReactionForce',['../classb2_distance_joint.html#a99413cc114b2f4dc4ce7693c062ce226',1,'b2DistanceJoint::GetReactionForce()'],['../classb2_friction_joint.html#ae646d8a191e490f690b748f057cdd90b',1,'b2FrictionJoint::GetReactionForce()'],['../classb2_gear_joint.html#ad415f3db70ba3e60a132ef668c263713',1,'b2GearJoint::GetReactionForce()'],['../classb2_joint.html#a7e0eddefb9b69ad050b8ef6425838a74',1,'b2Joint::GetReactionForce()'],['../classb2_motor_joint.html#ab9d427f4fd74d0afbd17989701d20924',1,'b2MotorJoint::GetReactionForce()'],['../classb2_mouse_joint.html#ab8e07dbed9d24c1c046d1ede60930c52',1,'b2MouseJoint::GetReactionForce()'],['../classb2_prismatic_joint.html#a9e2a6103c1ff57e65d524b42f72b09e0',1,'b2PrismaticJoint::GetReactionForce()'],['../classb2_pulley_joint.html#a38c174bf1cf1011063ff4c16556b331e',1,'b2PulleyJoint::GetReactionForce()'],['../classb2_revolute_joint.html#a1e5d6eb28f3f35e825cfc42dbd23d66e',1,'b2RevoluteJoint::GetReactionForce()'],['../classb2_rope_joint.html#afe0acc77e40b62133547897a6d01b7e6',1,'b2RopeJoint::GetReactionForce()'],['../classb2_weld_joint.html#a2ca6323d03b9fd4b591a0bfadddc25a8',1,'b2WeldJoint::GetReactionForce()'],['../classb2_wheel_joint.html#aa16e3a1c0246017bc25e72cf494daa42',1,'b2WheelJoint::GetReactionForce()']]], - ['getreactiontorque',['GetReactionTorque',['../classb2_distance_joint.html#a8d65840abe0b398399020524852788fd',1,'b2DistanceJoint::GetReactionTorque()'],['../classb2_friction_joint.html#a49479d4af9c4bffa0b146d153c78512c',1,'b2FrictionJoint::GetReactionTorque()'],['../classb2_gear_joint.html#ae2c4b1ae1cf00f14331332c4fe9ae964',1,'b2GearJoint::GetReactionTorque()'],['../classb2_joint.html#ae355e441c2aa842777dc04e24f15ced0',1,'b2Joint::GetReactionTorque()'],['../classb2_motor_joint.html#a17741b102f8bb3e32f1c139781b41c04',1,'b2MotorJoint::GetReactionTorque()'],['../classb2_mouse_joint.html#a68efbc617aa7f0a41578e0aea988d662',1,'b2MouseJoint::GetReactionTorque()'],['../classb2_prismatic_joint.html#a59b419ccec1a5a4b80d6664d03bd256e',1,'b2PrismaticJoint::GetReactionTorque()'],['../classb2_pulley_joint.html#a418b200055623474c44742b1342dd278',1,'b2PulleyJoint::GetReactionTorque()'],['../classb2_revolute_joint.html#a85cdf204bf80dc0a4df6536e2e9a941e',1,'b2RevoluteJoint::GetReactionTorque()'],['../classb2_rope_joint.html#abb7baf596f13ff5a76ff657ad6d3232c',1,'b2RopeJoint::GetReactionTorque()'],['../classb2_weld_joint.html#a7199b5cce47b29624b4b231d78af71a3',1,'b2WeldJoint::GetReactionTorque()'],['../classb2_wheel_joint.html#ae88eeec295a19f216acab9b23d9c704b',1,'b2WheelJoint::GetReactionTorque()']]], - ['getreferenceangle',['GetReferenceAngle',['../classb2_prismatic_joint.html#ae9e0a48367f191b2dd6a5bc05364a372',1,'b2PrismaticJoint::GetReferenceAngle()'],['../classb2_revolute_joint.html#acfe881247b1f1f8f12aefd3a8f0cfd00',1,'b2RevoluteJoint::GetReferenceAngle()'],['../classb2_weld_joint.html#a0d347bf22be13aa8a96f615e230b095a',1,'b2WeldJoint::GetReferenceAngle()']]], - ['getrestitution',['GetRestitution',['../classb2_fixture.html#a6ce4d949ffff6201a117f1e3833953f8',1,'b2Fixture::GetRestitution()'],['../classb2_contact.html#aed12746a2855277479802144b699326b',1,'b2Contact::GetRestitution()']]], - ['getshape',['GetShape',['../classb2_fixture.html#aaa2b73fa212fa53b1c800cccd7a1d31e',1,'b2Fixture']]], - ['getsupport',['GetSupport',['../structb2_distance_proxy.html#ad763543846db0c220e6b0a29275d723e',1,'b2DistanceProxy::GetSupport()'],['../classb2_circle_shape.html#a8644ce19547e5efaf43bd8ec543e284e',1,'b2CircleShape::GetSupport()']]], - ['getsupportvertex',['GetSupportVertex',['../structb2_distance_proxy.html#ad98a909b9aee9e42ba184b1e6bd526ba',1,'b2DistanceProxy::GetSupportVertex()'],['../classb2_circle_shape.html#aa23975b480495bf8bc70073d4f135fd2',1,'b2CircleShape::GetSupportVertex()']]], - ['getsyminverse33',['GetSymInverse33',['../structb2_mat33.html#a501f85edde8f080e4e9ecff0ec2ee27e',1,'b2Mat33']]], - ['gettangentspeed',['GetTangentSpeed',['../classb2_contact.html#a961417ed0d43706ee8a39c396d5e6002',1,'b2Contact']]], - ['gettransform',['GetTransform',['../structb2_sweep.html#a81947646092468290d15005928e12fcd',1,'b2Sweep::GetTransform()'],['../classb2_body.html#adaaebca750d0bda56a543884adc5f519',1,'b2Body::GetTransform()']]], - ['gettreebalance',['GetTreeBalance',['../classb2_broad_phase.html#a1189e783d39bfd69b314284ce52ea3c3',1,'b2BroadPhase::GetTreeBalance()'],['../classb2_world.html#a9fb7c28d042b600ba1155e3d38f1c5f9',1,'b2World::GetTreeBalance()']]], - ['gettreeheight',['GetTreeHeight',['../classb2_broad_phase.html#aeb9f94f44840c5bd766031d78f63ca08',1,'b2BroadPhase::GetTreeHeight()'],['../classb2_world.html#a48f90a31dc2ad30dbc50cac5111400d7',1,'b2World::GetTreeHeight()']]], - ['gettreequality',['GetTreeQuality',['../classb2_broad_phase.html#abe02c30ca1b3b9c9b84a571a2f8cef92',1,'b2BroadPhase::GetTreeQuality()'],['../classb2_world.html#a0e9dceab7052fd6e0d73d6024cca1bcb',1,'b2World::GetTreeQuality()']]], - ['gettype',['GetType',['../classb2_shape.html#a3b6093f16c18f8a877519a29674abca0',1,'b2Shape::GetType()'],['../classb2_body.html#aa0d5acad4f0104e709e34e29a4a0c1a4',1,'b2Body::GetType()'],['../classb2_fixture.html#ab0e1d6bc1c42e6f779e77db408ab2d24',1,'b2Fixture::GetType()'],['../classb2_joint.html#a37a2ca3f0d41c6903d2cc73757f02be2',1,'b2Joint::GetType()']]], - ['getupperlimit',['GetUpperLimit',['../classb2_prismatic_joint.html#ac72bdcf5108d474d3f11e86773a9a471',1,'b2PrismaticJoint::GetUpperLimit()'],['../classb2_revolute_joint.html#a9bb683118879611e84e4cb26bdc8d39f',1,'b2RevoluteJoint::GetUpperLimit()']]], - ['getuserdata',['GetUserData',['../classb2_broad_phase.html#a89c099e95237d68577376d8f9a4ed013',1,'b2BroadPhase::GetUserData()'],['../classb2_dynamic_tree.html#a44ab57dce3c42b0a5847a64e489a71ce',1,'b2DynamicTree::GetUserData()'],['../classb2_body.html#a6833f7e2ef1b6ac82641bb6b07ec50d1',1,'b2Body::GetUserData()'],['../classb2_fixture.html#a57247425e7c859d7653eec417ec83cdc',1,'b2Fixture::GetUserData()'],['../classb2_joint.html#a505ab02c234f1cc20aa3375f3ab7b587',1,'b2Joint::GetUserData()']]], - ['getvertex',['GetVertex',['../structb2_distance_proxy.html#ac5ecae62c2a96afdf220074118c71a92',1,'b2DistanceProxy::GetVertex()'],['../classb2_circle_shape.html#a029e555a3ea76b00479b051f1b813c3a',1,'b2CircleShape::GetVertex()'],['../classb2_polygon_shape.html#a88cdb687ec7dc0cbcf4bd25fd37f4da1',1,'b2PolygonShape::GetVertex()']]], - ['getvertexcount',['GetVertexCount',['../structb2_distance_proxy.html#a43c51168f2829c55dacc8b9adbd90206',1,'b2DistanceProxy::GetVertexCount()'],['../classb2_circle_shape.html#a477a087b143147223e4b9fbb6581acf1',1,'b2CircleShape::GetVertexCount()'],['../classb2_polygon_shape.html#ae220f24c42eff4aef4cd452676ca2ced',1,'b2PolygonShape::GetVertexCount()']]], - ['getworld',['GetWorld',['../classb2_body.html#abfd9466763b20977f9122d0e162dfeb9',1,'b2Body']]], - ['getworldcenter',['GetWorldCenter',['../classb2_body.html#a04db0c7b12b315802e58b33884f4f63c',1,'b2Body']]], - ['getworldmanifold',['GetWorldManifold',['../classb2_contact.html#a6a30a44a28b44754cb61bba65cb5b728',1,'b2Contact']]], - ['getworldpoint',['GetWorldPoint',['../classb2_body.html#a8055b90bccb51383caa8c42fbc96c9c3',1,'b2Body']]], - ['getworldvector',['GetWorldVector',['../classb2_body.html#afd44622669b5e45202c23e4a212895fc',1,'b2Body']]], - ['getxaxis',['GetXAxis',['../structb2_rot.html#ac4ab7f262adb99f161775314852723d8',1,'b2Rot']]], - ['getyaxis',['GetYAxis',['../structb2_rot.html#ae731c7434fe1754114ee70149df36c7f',1,'b2Rot']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_69.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_69.html deleted file mode 100644 index 954ac84..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_69.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_69.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_69.js deleted file mode 100644 index fef478a..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_69.js +++ /dev/null @@ -1,16 +0,0 @@ -var searchData= -[ - ['initialize',['Initialize',['../structb2_world_manifold.html#a896dd7e7d4d6f6a5bc69e19fbd6871bd',1,'b2WorldManifold::Initialize()'],['../structb2_distance_joint_def.html#a99788a534638cc28cd1e44e0036503f0',1,'b2DistanceJointDef::Initialize()'],['../structb2_friction_joint_def.html#aee104f2aeb34dec4e17e3c52a98f7915',1,'b2FrictionJointDef::Initialize()'],['../structb2_motor_joint_def.html#a90eb924b6e04da8d75d9cefad0655960',1,'b2MotorJointDef::Initialize()'],['../structb2_prismatic_joint_def.html#ae60043bc22b077e8c59ab248dc34652f',1,'b2PrismaticJointDef::Initialize()'],['../structb2_pulley_joint_def.html#abef614a93562b82aa3b5f8cac17d1ce8',1,'b2PulleyJointDef::Initialize()'],['../structb2_revolute_joint_def.html#a6401b2a663533415d032a525e4fa2806',1,'b2RevoluteJointDef::Initialize()'],['../structb2_weld_joint_def.html#a9f6592c2a7eba6ce6e07e40c4e82aab5',1,'b2WeldJointDef::Initialize()'],['../structb2_wheel_joint_def.html#af26887092d36c3cd03898401a38783e2',1,'b2WheelJointDef::Initialize()']]], - ['isactive',['IsActive',['../classb2_body.html#ae69b9cb7461ee165b6459ce43d648479',1,'b2Body::IsActive()'],['../classb2_joint.html#a825d3a6abb32014f31fd622f2bfc0363',1,'b2Joint::IsActive()']]], - ['isawake',['IsAwake',['../classb2_body.html#aa28fdb95dffac89d20b04bd1a038b4ea',1,'b2Body']]], - ['isbullet',['IsBullet',['../classb2_body.html#af48509b43c9474b394cf76d733b56882',1,'b2Body']]], - ['isenabled',['IsEnabled',['../classb2_contact.html#ae7bd71ee1b0bb352bec6eeaab4f91c6a',1,'b2Contact']]], - ['isfixedrotation',['IsFixedRotation',['../classb2_body.html#a6bef51a11a1fec3fddad273b11c14214',1,'b2Body']]], - ['islimitenabled',['IsLimitEnabled',['../classb2_prismatic_joint.html#afb109fd7f3efbf44eae4b7961169bf9f',1,'b2PrismaticJoint::IsLimitEnabled()'],['../classb2_revolute_joint.html#a7711afbfbdba4451d2dbfa8e55b9ded8',1,'b2RevoluteJoint::IsLimitEnabled()']]], - ['islocked',['IsLocked',['../classb2_world.html#ae50c318304546c9cc066ee382668c4a1',1,'b2World']]], - ['ismotorenabled',['IsMotorEnabled',['../classb2_prismatic_joint.html#a236650664554a4d81f8644e9a9d19c65',1,'b2PrismaticJoint::IsMotorEnabled()'],['../classb2_revolute_joint.html#a9477b305db080e17dce8f2c6da0babb0',1,'b2RevoluteJoint::IsMotorEnabled()'],['../classb2_wheel_joint.html#a419bc80e17cc4c1062a692ea79396d19',1,'b2WheelJoint::IsMotorEnabled()']]], - ['issensor',['IsSensor',['../classb2_fixture.html#a91758c9dca818ca45f3f6427c7e3fc19',1,'b2Fixture']]], - ['issleepingallowed',['IsSleepingAllowed',['../classb2_body.html#ac0b0c558008bda8cf7984dbaf2ee3aea',1,'b2Body']]], - ['istouching',['IsTouching',['../classb2_contact.html#a367dc9a563ad7db5547f4247777a33c9',1,'b2Contact']]], - ['isvalid',['IsValid',['../structb2_a_a_b_b.html#a8d170a2de7a267c3e19f5365685b713d',1,'b2AABB::IsValid()'],['../structb2_vec2.html#aafb971cf7cc726f91fc3a8215fb0aa17',1,'b2Vec2::IsValid()']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_6c.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_6c.html deleted file mode 100644 index 903fb01..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_6c.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_6c.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_6c.js deleted file mode 100644 index 5013c50..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_6c.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['length',['Length',['../structb2_vec2.html#afb1c498214b88874fcb07eb6322374da',1,'b2Vec2']]], - ['lengthsquared',['LengthSquared',['../structb2_vec2.html#af66641b887488490e2168bfafc5a7e36',1,'b2Vec2']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_6d.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_6d.html deleted file mode 100644 index f721e11..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_6d.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_6d.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_6d.js deleted file mode 100644 index ead294f..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_6d.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['moveproxy',['MoveProxy',['../classb2_broad_phase.html#a01dc18a19c2b5d0cc1d9cd8c8554234c',1,'b2BroadPhase::MoveProxy()'],['../classb2_dynamic_tree.html#a7748252811f3c575015931399cbe4daa',1,'b2DynamicTree::MoveProxy()']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_6e.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_6e.html deleted file mode 100644 index 2838a65..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_6e.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_6e.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_6e.js deleted file mode 100644 index 8a44dfb..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_6e.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['normalize',['Normalize',['../structb2_vec2.html#adda78c92f318fe53d8a53f9b5cfd8e41',1,'b2Vec2::Normalize()'],['../structb2_sweep.html#ad66a3086bc7656df9cf7454013a2f61b',1,'b2Sweep::Normalize()']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_6f.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_6f.html deleted file mode 100644 index f233220..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_6f.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_6f.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_6f.js deleted file mode 100644 index 325d2a9..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_6f.js +++ /dev/null @@ -1,8 +0,0 @@ -var searchData= -[ - ['operator_28_29',['operator()',['../structb2_vec2.html#a9cb67b5f755b82d40673337a3652d81f',1,'b2Vec2::operator()(int32 i) const '],['../structb2_vec2.html#a50b39580d9f479e17b23ce3cb8efbac6',1,'b2Vec2::operator()(int32 i)']]], - ['operator_2a_3d',['operator*=',['../structb2_vec2.html#a7097696dce578322928f4535b34f1c6b',1,'b2Vec2::operator*=()'],['../structb2_vec3.html#aaa9aa20195cd0ee53c7176a9a9b02389',1,'b2Vec3::operator*=()']]], - ['operator_2b_3d',['operator+=',['../structb2_vec2.html#a590789342e22ac1e7f9c1a63a2778b6d',1,'b2Vec2::operator+=()'],['../structb2_vec3.html#a2aaeed3f5308aad85d19c5f0efc72641',1,'b2Vec3::operator+=()']]], - ['operator_2d',['operator-',['../structb2_vec2.html#ab1f648091d3cba00b4c132758fcf4450',1,'b2Vec2::operator-()'],['../structb2_vec3.html#a246cb7ed59d3e758989939ed4e30e5ec',1,'b2Vec3::operator-()']]], - ['operator_2d_3d',['operator-=',['../structb2_vec2.html#a6b48cab4695a979ae40b7613aedc8b17',1,'b2Vec2::operator-=()'],['../structb2_vec3.html#a9e5b535548e1c5dfc0dc258d08f5ca32',1,'b2Vec3::operator-=()']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_70.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_70.html deleted file mode 100644 index c7cadcf..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_70.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_70.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_70.js deleted file mode 100644 index d751e06..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_70.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['postsolve',['PostSolve',['../classb2_contact_listener.html#acd58ec96f7569b95eec65b8ca3f8013d',1,'b2ContactListener']]], - ['presolve',['PreSolve',['../classb2_contact_listener.html#a416f85eb45a1099053402b15a19a7de0',1,'b2ContactListener']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_71.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_71.html deleted file mode 100644 index 3d711da..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_71.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_71.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_71.js deleted file mode 100644 index bb03989..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_71.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['query',['Query',['../classb2_broad_phase.html#aea5732362c8bb3959c6b24f967654d93',1,'b2BroadPhase::Query()'],['../classb2_dynamic_tree.html#adf70aee89b4692fc79d65b1f54308585',1,'b2DynamicTree::Query()']]], - ['queryaabb',['QueryAABB',['../classb2_world.html#a711e55d2c6e68400f93472f807c3775b',1,'b2World']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_72.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_72.html deleted file mode 100644 index de10844..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_72.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_72.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_72.js deleted file mode 100644 index 95ef9c7..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_72.js +++ /dev/null @@ -1,11 +0,0 @@ -var searchData= -[ - ['raycast',['RayCast',['../classb2_broad_phase.html#aebcb837120ce45bbb82b4b61db533026',1,'b2BroadPhase::RayCast()'],['../classb2_dynamic_tree.html#abd7a5c6a5bc109dbbdb0ec3aae039648',1,'b2DynamicTree::RayCast()'],['../classb2_chain_shape.html#a85c7a17a15581e0e258c7af561cf5403',1,'b2ChainShape::RayCast()'],['../classb2_circle_shape.html#a76175079381193917026fdf3702190fa',1,'b2CircleShape::RayCast()'],['../classb2_edge_shape.html#aefbae6b3840f486b22ffecee7d0d15fd',1,'b2EdgeShape::RayCast()'],['../classb2_polygon_shape.html#ac13bded10d09c341f64aaa2750dda6b5',1,'b2PolygonShape::RayCast()'],['../classb2_shape.html#aee53a926f4fe64cd03693f6211ef6335',1,'b2Shape::RayCast()'],['../classb2_fixture.html#a614e84f47e8b32b503fa719099ecba79',1,'b2Fixture::RayCast()'],['../classb2_world.html#ad902548be84df9cc36eced0f4c89ab0a',1,'b2World::RayCast()']]], - ['rebuildbottomup',['RebuildBottomUp',['../classb2_dynamic_tree.html#abd146017cfec1cf5ea7b87331f30a3ff',1,'b2DynamicTree']]], - ['refilter',['Refilter',['../classb2_fixture.html#a45d3320f94811d67383c48466165fa26',1,'b2Fixture']]], - ['reportfixture',['ReportFixture',['../classb2_query_callback.html#a187dd04dd0f5164fb05c2ce2cbfd9ee5',1,'b2QueryCallback::ReportFixture()'],['../classb2_ray_cast_callback.html#a658d5c8e89e0c73230cc8bddade4f3a4',1,'b2RayCastCallback::ReportFixture()']]], - ['reset',['Reset',['../classb2_timer.html#a367388794588e9283600437be82f2889',1,'b2Timer']]], - ['resetfriction',['ResetFriction',['../classb2_contact.html#ad66d9290da187cef4c9f48c5766d4460',1,'b2Contact']]], - ['resetmassdata',['ResetMassData',['../classb2_body.html#a109d8567c6ae84c61fce2919fb209c63',1,'b2Body']]], - ['resetrestitution',['ResetRestitution',['../classb2_contact.html#a243501bc5c146e9eb1296162d328aef1',1,'b2Contact']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_73.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_73.html deleted file mode 100644 index a895245..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_73.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_73.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_73.js deleted file mode 100644 index f9702c5..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_73.js +++ /dev/null @@ -1,66 +0,0 @@ -var searchData= -[ - ['saygoodbye',['SayGoodbye',['../classb2_destruction_listener.html#a6cd15baa6e5c33118cf7173ab5bf6d58',1,'b2DestructionListener::SayGoodbye(b2Joint *joint)=0'],['../classb2_destruction_listener.html#ab327c0073d162112c38d2fe8f8b9fce3',1,'b2DestructionListener::SayGoodbye(b2Fixture *fixture)=0']]], - ['set',['Set',['../structb2_distance_proxy.html#a80a59a9c9e952482a8fc6db4b883365d',1,'b2DistanceProxy::Set()'],['../classb2_edge_shape.html#a67dd3b17630a600033cb4380697a4e9d',1,'b2EdgeShape::Set()'],['../classb2_polygon_shape.html#a4d7b35550509f570814b97325a68966b',1,'b2PolygonShape::Set()'],['../structb2_vec2.html#a4d61640a645e470a50b451307d8e94c3',1,'b2Vec2::Set()'],['../structb2_vec3.html#a12a1bc14bbe722dfb175a492d2d00a79',1,'b2Vec3::Set()'],['../structb2_mat22.html#aed3bee1de38a0b3f36e21c90faa24112',1,'b2Mat22::Set()'],['../structb2_rot.html#acde9186de0a4a7397bf8ef714408ad60',1,'b2Rot::Set()'],['../structb2_transform.html#a4db696a0b3fada95f95cde3e7e85ced9',1,'b2Transform::Set()']]], - ['setactive',['SetActive',['../classb2_body.html#ab8059b7b3e3b64aee17b54f68f7dde80',1,'b2Body']]], - ['setallowsleeping',['SetAllowSleeping',['../classb2_world.html#a6755872564fc3db70c69d2b9d349fa33',1,'b2World']]], - ['setangulardamping',['SetAngularDamping',['../classb2_body.html#a73a79541b18394fa224d2eae8ad493e8',1,'b2Body']]], - ['setangularoffset',['SetAngularOffset',['../classb2_motor_joint.html#a14d7dca1767548ddffe293e39cafc3c7',1,'b2MotorJoint']]], - ['setangularvelocity',['SetAngularVelocity',['../classb2_body.html#a37adc4160b84f73e8552a91cbde3f578',1,'b2Body']]], - ['setasbox',['SetAsBox',['../classb2_polygon_shape.html#a6bb90df8b4a40d1c53b64cc352a855dd',1,'b2PolygonShape::SetAsBox(float32 hx, float32 hy)'],['../classb2_polygon_shape.html#a890690250115483da6c7d69829be087e',1,'b2PolygonShape::SetAsBox(float32 hx, float32 hy, const b2Vec2 &center, float32 angle)']]], - ['setautoclearforces',['SetAutoClearForces',['../classb2_world.html#aa2bced28ddef5bbb00ed5666e5e9f620',1,'b2World']]], - ['setawake',['SetAwake',['../classb2_body.html#ac72ed3df52a26c33db82252ab57399af',1,'b2Body']]], - ['setbullet',['SetBullet',['../classb2_body.html#a3253af3725b8d6d63d8223bcd2ddab5c',1,'b2Body']]], - ['setcontactfilter',['SetContactFilter',['../classb2_world.html#a85e6e1e911c7d6366f8c7d57a12b72ff',1,'b2World']]], - ['setcontactlistener',['SetContactListener',['../classb2_world.html#a614549967fb8a1584b61c11e2d553d42',1,'b2World']]], - ['setcontinuousphysics',['SetContinuousPhysics',['../classb2_world.html#a536dd9181c2e20096073e3cfe2c8530a',1,'b2World']]], - ['setcorrectionfactor',['SetCorrectionFactor',['../classb2_motor_joint.html#ae59e624b8a7b6f869ab5e6148352cb52',1,'b2MotorJoint']]], - ['setdampingratio',['SetDampingRatio',['../classb2_distance_joint.html#a58da61301a1f1398a715107b76649923',1,'b2DistanceJoint::SetDampingRatio()'],['../classb2_mouse_joint.html#a648c8f3ecb82f4887c0eefcfe48cbd37',1,'b2MouseJoint::SetDampingRatio()'],['../classb2_weld_joint.html#aea79865e590edba09eff9d2243689967',1,'b2WeldJoint::SetDampingRatio()']]], - ['setdebugdraw',['SetDebugDraw',['../classb2_world.html#a6976d2c67400df03c0d44174ffcfb7ee',1,'b2World']]], - ['setdensity',['SetDensity',['../classb2_fixture.html#ad4e1d9323103975c8931d022b952d04a',1,'b2Fixture']]], - ['setdestructionlistener',['SetDestructionListener',['../classb2_world.html#ae377f2dd5512ada7d27f4ad3541c75bf',1,'b2World']]], - ['setenabled',['SetEnabled',['../classb2_contact.html#a6edf582f8c161d6632854cddefe55a0c',1,'b2Contact']]], - ['setfilterdata',['SetFilterData',['../classb2_fixture.html#a2c5e0d12c174927a4ad550459be334ad',1,'b2Fixture']]], - ['setfixedrotation',['SetFixedRotation',['../classb2_body.html#aff35078e2a221d2d05409674936cb8d2',1,'b2Body']]], - ['setflags',['SetFlags',['../classb2_draw.html#ac2bbe31595478690e44de4ff1e7f347e',1,'b2Draw']]], - ['setfrequency',['SetFrequency',['../classb2_distance_joint.html#a1a12446f8926a1324edd481d9cd28c8a',1,'b2DistanceJoint::SetFrequency()'],['../classb2_mouse_joint.html#a8b37706535923637ca280c5a0467b14d',1,'b2MouseJoint::SetFrequency()'],['../classb2_weld_joint.html#a0796404379b7562f1af557729085c447',1,'b2WeldJoint::SetFrequency()']]], - ['setfriction',['SetFriction',['../classb2_fixture.html#ad0cd91eef5858c8ef1d6b62cc2a34ea2',1,'b2Fixture::SetFriction()'],['../classb2_contact.html#a5e8fbb6bb2966ac84272bb0ea9d2e4c7',1,'b2Contact::SetFriction()']]], - ['setgravity',['SetGravity',['../classb2_world.html#aeafa43d6580e1dddb0675e672ca2375c',1,'b2World']]], - ['setgravityscale',['SetGravityScale',['../classb2_body.html#a8e66a570c2aeee93b29d84cae861a612',1,'b2Body']]], - ['setidentity',['SetIdentity',['../structb2_mat22.html#a7192f063b771ac9ded060e41df890509',1,'b2Mat22::SetIdentity()'],['../structb2_rot.html#a7f534cb7ece8d325662d7d0e27d4f617',1,'b2Rot::SetIdentity()'],['../structb2_transform.html#af92af4ec6833552b1b22a6ca6d4f5644',1,'b2Transform::SetIdentity()']]], - ['setlength',['SetLength',['../classb2_distance_joint.html#a950a0f187ef691208e50de40ed9223fe',1,'b2DistanceJoint']]], - ['setlimits',['SetLimits',['../classb2_prismatic_joint.html#a82a220e6d5a212c1924882e0855b0bef',1,'b2PrismaticJoint::SetLimits()'],['../classb2_revolute_joint.html#a32f9393d8a6b993fd523f0f643c28107',1,'b2RevoluteJoint::SetLimits()']]], - ['setlineardamping',['SetLinearDamping',['../classb2_body.html#a909f9753ad700f70282a56e00bc182a5',1,'b2Body']]], - ['setlinearoffset',['SetLinearOffset',['../classb2_motor_joint.html#a99254b5fc9ed9f2d0fdccada513000c3',1,'b2MotorJoint']]], - ['setlinearvelocity',['SetLinearVelocity',['../classb2_body.html#a832f3989a44f0d4782c80456832197ad',1,'b2Body']]], - ['setmassdata',['SetMassData',['../classb2_body.html#a58a641fedf8a81e1e26d09ec00a22fe2',1,'b2Body']]], - ['setmaxforce',['SetMaxForce',['../classb2_friction_joint.html#a7936d852b5ad71dc92efc397865dda41',1,'b2FrictionJoint::SetMaxForce()'],['../classb2_motor_joint.html#a62f95f23d60123cebe14f2fcec155801',1,'b2MotorJoint::SetMaxForce()'],['../classb2_mouse_joint.html#a4beba6ea0827960fac2474563591c03a',1,'b2MouseJoint::SetMaxForce()']]], - ['setmaxlength',['SetMaxLength',['../classb2_rope_joint.html#a92cea201d21acd2f2a7cc9b00e165848',1,'b2RopeJoint']]], - ['setmaxmotorforce',['SetMaxMotorForce',['../classb2_prismatic_joint.html#aa7817474aef15ca4815341479ac590e2',1,'b2PrismaticJoint']]], - ['setmaxmotortorque',['SetMaxMotorTorque',['../classb2_revolute_joint.html#a41779d7ec05be33e6368ef00123a3581',1,'b2RevoluteJoint::SetMaxMotorTorque()'],['../classb2_wheel_joint.html#a8aae3cd624ec9d48fc86c325c4595edc',1,'b2WheelJoint::SetMaxMotorTorque()']]], - ['setmaxtorque',['SetMaxTorque',['../classb2_friction_joint.html#a9e3aaf485dc86a378bb62ee78cea43aa',1,'b2FrictionJoint::SetMaxTorque()'],['../classb2_motor_joint.html#a3e9a259d36c36e0dc078282e6799d625',1,'b2MotorJoint::SetMaxTorque()']]], - ['setmotorspeed',['SetMotorSpeed',['../classb2_prismatic_joint.html#a602ef7a6ca4fca55d011f1b38ab5a6c3',1,'b2PrismaticJoint::SetMotorSpeed()'],['../classb2_revolute_joint.html#a56f60bb1ea69048c8a455da49d62bf65',1,'b2RevoluteJoint::SetMotorSpeed()'],['../classb2_wheel_joint.html#a6e3255fcf5c82b979ad7e3dc1c089c0b',1,'b2WheelJoint::SetMotorSpeed()']]], - ['setnextvertex',['SetNextVertex',['../classb2_chain_shape.html#a15c7c2821a52266ef57621ac7d34a95f',1,'b2ChainShape']]], - ['setprevvertex',['SetPrevVertex',['../classb2_chain_shape.html#aeb2ddbe0c52a98885e91b7c8f597315b',1,'b2ChainShape']]], - ['setratio',['SetRatio',['../classb2_gear_joint.html#a21c867bdc00c15ade2f399d370f92636',1,'b2GearJoint']]], - ['setrestitution',['SetRestitution',['../classb2_fixture.html#a19c507332e4f7bd04a05f00426f11ee4',1,'b2Fixture::SetRestitution()'],['../classb2_contact.html#a24ca342c2bb766c53ef5ad04f5268fc1',1,'b2Contact::SetRestitution()']]], - ['setsensor',['SetSensor',['../classb2_fixture.html#a6198a81dcee0fe814d730383ebfa7038',1,'b2Fixture']]], - ['setsleepingallowed',['SetSleepingAllowed',['../classb2_body.html#a229a6de228416203fecbf7a7544c33bb',1,'b2Body']]], - ['setspringdampingratio',['SetSpringDampingRatio',['../classb2_wheel_joint.html#a39b123ac045c8ec93faa65746e6655dc',1,'b2WheelJoint']]], - ['setspringfrequencyhz',['SetSpringFrequencyHz',['../classb2_wheel_joint.html#af9f8fada5cb30f83aa2fbf486e9d347b',1,'b2WheelJoint']]], - ['setsubstepping',['SetSubStepping',['../classb2_world.html#ae8aacc78ea4753075067daff51b61778',1,'b2World']]], - ['settangentspeed',['SetTangentSpeed',['../classb2_contact.html#a32033914a6c7f35b469e8fddbc17c566',1,'b2Contact']]], - ['settarget',['SetTarget',['../classb2_mouse_joint.html#a96f34c1c990407eddbadf07ae359b1f3',1,'b2MouseJoint']]], - ['settransform',['SetTransform',['../classb2_body.html#a4686f32bbce5723761e9719c706eca11',1,'b2Body']]], - ['settype',['SetType',['../classb2_body.html#a34ff1c84b10b74eb990749a025a1b1ad',1,'b2Body']]], - ['setuserdata',['SetUserData',['../classb2_body.html#a5553a5ecdfd2d7200ba2405ce6043f52',1,'b2Body::SetUserData()'],['../classb2_fixture.html#a3db7f89ef4493247d922fe3d96351ad9',1,'b2Fixture::SetUserData()'],['../classb2_joint.html#a492f2d02496437572aaec6013ebdc1c8',1,'b2Joint::SetUserData()']]], - ['setwarmstarting',['SetWarmStarting',['../classb2_world.html#a8e8c12142e8c4884a18787926a261359',1,'b2World']]], - ['setzero',['SetZero',['../structb2_vec2.html#a5c6cbe27cfb29c6dbb29b9a3285b88d0',1,'b2Vec2::SetZero()'],['../structb2_vec3.html#a5a459ed49f1910a347ca247f848a2dd8',1,'b2Vec3::SetZero()'],['../structb2_mat22.html#aaeae95f61cf3171ffb94703980e3594b',1,'b2Mat22::SetZero()'],['../structb2_mat33.html#a42fc6953b025e1c8b59717d0ee7accde',1,'b2Mat33::SetZero()']]], - ['shiftorigin',['ShiftOrigin',['../classb2_broad_phase.html#a410e6115e3d1b4fca61cfbf397767772',1,'b2BroadPhase::ShiftOrigin()'],['../classb2_dynamic_tree.html#af37ddfed6a5da97d5a78b09918d19ceb',1,'b2DynamicTree::ShiftOrigin()'],['../classb2_world.html#afc33e20e64252c5be115216051408047',1,'b2World::ShiftOrigin()'],['../classb2_joint.html#a7804f649e993dc0fd9ae47fde5601f90',1,'b2Joint::ShiftOrigin()'],['../classb2_mouse_joint.html#aa3c46b204aea79822dd6c6843c361801',1,'b2MouseJoint::ShiftOrigin()'],['../classb2_pulley_joint.html#a5b88d498ce306c4ff5ce99dec4811825',1,'b2PulleyJoint::ShiftOrigin()']]], - ['shouldcollide',['ShouldCollide',['../classb2_contact_filter.html#aac8f6155d1f577d125db587f5269289b',1,'b2ContactFilter']]], - ['skew',['Skew',['../structb2_vec2.html#a8f2c6e60cb5898bc239801bd19e2d619',1,'b2Vec2']]], - ['solve',['Solve',['../structb2_mat22.html#ab511ad33f5abf87351581842628a9dc3',1,'b2Mat22']]], - ['solve22',['Solve22',['../structb2_mat33.html#a2580ac2afadc48028a63ed4c8a1f16bc',1,'b2Mat33']]], - ['solve33',['Solve33',['../structb2_mat33.html#a478872c7b6a3bedd13fbedd3ec7a2edb',1,'b2Mat33']]], - ['step',['Step',['../classb2_world.html#a7a8eff61af98461f978fe43f3af7be90',1,'b2World']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_74.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_74.html deleted file mode 100644 index 8b138f0..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_74.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_74.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_74.js deleted file mode 100644 index c2e785a..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_74.js +++ /dev/null @@ -1,6 +0,0 @@ -var searchData= -[ - ['testoverlap',['TestOverlap',['../classb2_broad_phase.html#a1785eb29d14997d81bd537f064d22aba',1,'b2BroadPhase']]], - ['testpoint',['TestPoint',['../classb2_chain_shape.html#a4fc27b41ecc556985efacf8e0f91c39f',1,'b2ChainShape::TestPoint()'],['../classb2_circle_shape.html#a77171941cd1633c337fed1efb366bebb',1,'b2CircleShape::TestPoint()'],['../classb2_edge_shape.html#a28a977f82e4bc1cf60a3143ba5636c22',1,'b2EdgeShape::TestPoint()'],['../classb2_polygon_shape.html#a69ccc2f671394b3cc1a00a16ef36b12b',1,'b2PolygonShape::TestPoint()'],['../classb2_shape.html#a6ac968e403e2d93e8ae46d728a2e50fa',1,'b2Shape::TestPoint()'],['../classb2_fixture.html#ab875147c7a9df4ff94d224f6aa81a7a9',1,'b2Fixture::TestPoint()']]], - ['touchproxy',['TouchProxy',['../classb2_broad_phase.html#a67b296431ebbc7b44037f21d645d9166',1,'b2BroadPhase']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_75.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_75.html deleted file mode 100644 index db02642..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_75.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_75.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_75.js deleted file mode 100644 index fd6392c..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_75.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['updatepairs',['UpdatePairs',['../classb2_broad_phase.html#a0a1acd693466b997700242ae00784c20',1,'b2BroadPhase']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_76.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_76.html deleted file mode 100644 index 916b423..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_76.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_76.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_76.js deleted file mode 100644 index 73a97a9..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_76.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['validate',['Validate',['../classb2_dynamic_tree.html#abfac96c615b08406cba3e53b39800f1c',1,'b2DynamicTree::Validate()'],['../classb2_polygon_shape.html#afa9fe13cd6963e2317be35071ac69959',1,'b2PolygonShape::Validate()']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_7e.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_7e.html deleted file mode 100644 index 6a4931a..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_7e.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_7e.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_7e.js deleted file mode 100644 index 0fdde5b..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/functions_7e.js +++ /dev/null @@ -1,6 +0,0 @@ -var searchData= -[ - ['_7eb2chainshape',['~b2ChainShape',['../classb2_chain_shape.html#a8c032394f5a85e7fc425a437e7689a18',1,'b2ChainShape']]], - ['_7eb2dynamictree',['~b2DynamicTree',['../classb2_dynamic_tree.html#a9060565fc63b4dd87d9560775c076786',1,'b2DynamicTree']]], - ['_7eb2world',['~b2World',['../classb2_world.html#a5250ae4487475c33ccefdead07c768c8',1,'b2World']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/mag_sel.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/mag_sel.png deleted file mode 100644 index 81f6040..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/mag_sel.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/nomatches.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/nomatches.html deleted file mode 100644 index b1ded27..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/nomatches.html +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - -
    -
    No Matches
    -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/pages_62.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/pages_62.html deleted file mode 100644 index ff65401..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/pages_62.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/pages_62.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/pages_62.js deleted file mode 100644 index 545ad16..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/pages_62.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['box2d_20api_20documentation',['Box2D API Documentation',['../index.html',1,'']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/search.css b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/search.css deleted file mode 100644 index 4d7612f..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/search.css +++ /dev/null @@ -1,271 +0,0 @@ -/*---------------- Search Box */ - -#FSearchBox { - float: left; -} - -#MSearchBox { - white-space : nowrap; - position: absolute; - float: none; - display: inline; - margin-top: 8px; - right: 0px; - width: 170px; - z-index: 102; - background-color: white; -} - -#MSearchBox .left -{ - display:block; - position:absolute; - left:10px; - width:20px; - height:19px; - background:url('search_l.png') no-repeat; - background-position:right; -} - -#MSearchSelect { - display:block; - position:absolute; - width:20px; - height:19px; -} - -.left #MSearchSelect { - left:4px; -} - -.right #MSearchSelect { - right:5px; -} - -#MSearchField { - display:block; - position:absolute; - height:19px; - background:url('search_m.png') repeat-x; - border:none; - width:111px; - margin-left:20px; - padding-left:4px; - color: #909090; - outline: none; - font: 9pt Arial, Verdana, sans-serif; -} - -#FSearchBox #MSearchField { - margin-left:15px; -} - -#MSearchBox .right { - display:block; - position:absolute; - right:10px; - top:0px; - width:20px; - height:19px; - background:url('search_r.png') no-repeat; - background-position:left; -} - -#MSearchClose { - display: none; - position: absolute; - top: 4px; - background : none; - border: none; - margin: 0px 4px 0px 0px; - padding: 0px 0px; - outline: none; -} - -.left #MSearchClose { - left: 6px; -} - -.right #MSearchClose { - right: 2px; -} - -.MSearchBoxActive #MSearchField { - color: #000000; -} - -/*---------------- Search filter selection */ - -#MSearchSelectWindow { - display: none; - position: absolute; - left: 0; top: 0; - border: 1px solid #90A5CE; - background-color: #F9FAFC; - z-index: 1; - padding-top: 4px; - padding-bottom: 4px; - -moz-border-radius: 4px; - -webkit-border-top-left-radius: 4px; - -webkit-border-top-right-radius: 4px; - -webkit-border-bottom-left-radius: 4px; - -webkit-border-bottom-right-radius: 4px; - -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); -} - -.SelectItem { - font: 8pt Arial, Verdana, sans-serif; - padding-left: 2px; - padding-right: 12px; - border: 0px; -} - -span.SelectionMark { - margin-right: 4px; - font-family: monospace; - outline-style: none; - text-decoration: none; -} - -a.SelectItem { - display: block; - outline-style: none; - color: #000000; - text-decoration: none; - padding-left: 6px; - padding-right: 12px; -} - -a.SelectItem:focus, -a.SelectItem:active { - color: #000000; - outline-style: none; - text-decoration: none; -} - -a.SelectItem:hover { - color: #FFFFFF; - background-color: #3D578C; - outline-style: none; - text-decoration: none; - cursor: pointer; - display: block; -} - -/*---------------- Search results window */ - -iframe#MSearchResults { - width: 60ex; - height: 15em; -} - -#MSearchResultsWindow { - display: none; - position: absolute; - left: 0; top: 0; - border: 1px solid #000; - background-color: #EEF1F7; -} - -/* ----------------------------------- */ - - -#SRIndex { - clear:both; - padding-bottom: 15px; -} - -.SREntry { - font-size: 10pt; - padding-left: 1ex; -} - -.SRPage .SREntry { - font-size: 8pt; - padding: 1px 5px; -} - -body.SRPage { - margin: 5px 2px; -} - -.SRChildren { - padding-left: 3ex; padding-bottom: .5em -} - -.SRPage .SRChildren { - display: none; -} - -.SRSymbol { - font-weight: bold; - color: #425E97; - font-family: Arial, Verdana, sans-serif; - text-decoration: none; - outline: none; -} - -a.SRScope { - display: block; - color: #425E97; - font-family: Arial, Verdana, sans-serif; - text-decoration: none; - outline: none; -} - -a.SRSymbol:focus, a.SRSymbol:active, -a.SRScope:focus, a.SRScope:active { - text-decoration: underline; -} - -span.SRScope { - padding-left: 4px; -} - -.SRPage .SRStatus { - padding: 2px 5px; - font-size: 8pt; - font-style: italic; -} - -.SRResult { - display: none; -} - -DIV.searchresults { - margin-left: 10px; - margin-right: 10px; -} - -/*---------------- External search page results */ - -.searchresult { - background-color: #F0F3F8; -} - -.pages b { - color: white; - padding: 5px 5px 3px 5px; - background-image: url("../tab_a.png"); - background-repeat: repeat-x; - text-shadow: 0 1px 1px #000000; -} - -.pages { - line-height: 17px; - margin-left: 4px; - text-decoration: none; -} - -.hl { - font-weight: bold; -} - -#searchresults { - margin-bottom: 20px; -} - -.searchpages { - margin-top: 10px; -} - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/search.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/search.js deleted file mode 100644 index 2d1055c..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/search.js +++ /dev/null @@ -1,811 +0,0 @@ -// Search script generated by doxygen -// Copyright (C) 2009 by Dimitri van Heesch. - -// The code in this file is loosly based on main.js, part of Natural Docs, -// which is Copyright (C) 2003-2008 Greg Valure -// Natural Docs is licensed under the GPL. - -var indexSectionsWithContent = -{ - 0: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111111101111111111111100000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - 1: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - 2: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - 3: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111111101001111111111100000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - 4: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111111101111111101111000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - 5: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - 6: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - 7: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - 8: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" -}; - -var indexSectionNames = -{ - 0: "all", - 1: "classes", - 2: "files", - 3: "functions", - 4: "variables", - 5: "enums", - 6: "enumvalues", - 7: "defines", - 8: "pages" -}; - -function convertToId(search) -{ - var result = ''; - for (i=0;i do a search - { - this.Search(); - } - } - - this.OnSearchSelectKey = function(evt) - { - var e = (evt) ? evt : window.event; // for IE - if (e.keyCode==40 && this.searchIndex0) // Up - { - this.searchIndex--; - this.OnSelectItem(this.searchIndex); - } - else if (e.keyCode==13 || e.keyCode==27) - { - this.OnSelectItem(this.searchIndex); - this.CloseSelectionWindow(); - this.DOMSearchField().focus(); - } - return false; - } - - // --------- Actions - - // Closes the results window. - this.CloseResultsWindow = function() - { - this.DOMPopupSearchResultsWindow().style.display = 'none'; - this.DOMSearchClose().style.display = 'none'; - this.Activate(false); - } - - this.CloseSelectionWindow = function() - { - this.DOMSearchSelectWindow().style.display = 'none'; - } - - // Performs a search. - this.Search = function() - { - this.keyTimeout = 0; - - // strip leading whitespace - var searchValue = this.DOMSearchField().value.replace(/^ +/, ""); - - var code = searchValue.toLowerCase().charCodeAt(0); - var hexCode; - if (code<16) - { - hexCode="0"+code.toString(16); - } - else - { - hexCode=code.toString(16); - } - - var resultsPage; - var resultsPageWithSearch; - var hasResultsPage; - - if (indexSectionsWithContent[this.searchIndex].charAt(code) == '1') - { - resultsPage = this.resultsPath + '/' + indexSectionNames[this.searchIndex] + '_' + hexCode + '.html'; - resultsPageWithSearch = resultsPage+'?'+escape(searchValue); - hasResultsPage = true; - } - else // nothing available for this search term - { - resultsPage = this.resultsPath + '/nomatches.html'; - resultsPageWithSearch = resultsPage; - hasResultsPage = false; - } - - window.frames.MSearchResults.location = resultsPageWithSearch; - var domPopupSearchResultsWindow = this.DOMPopupSearchResultsWindow(); - - if (domPopupSearchResultsWindow.style.display!='block') - { - var domSearchBox = this.DOMSearchBox(); - this.DOMSearchClose().style.display = 'inline'; - if (this.insideFrame) - { - var domPopupSearchResults = this.DOMPopupSearchResults(); - domPopupSearchResultsWindow.style.position = 'relative'; - domPopupSearchResultsWindow.style.display = 'block'; - var width = document.body.clientWidth - 8; // the -8 is for IE :-( - domPopupSearchResultsWindow.style.width = width + 'px'; - domPopupSearchResults.style.width = width + 'px'; - } - else - { - var domPopupSearchResults = this.DOMPopupSearchResults(); - var left = getXPos(domSearchBox) + 150; // domSearchBox.offsetWidth; - var top = getYPos(domSearchBox) + 20; // domSearchBox.offsetHeight + 1; - domPopupSearchResultsWindow.style.display = 'block'; - left -= domPopupSearchResults.offsetWidth; - domPopupSearchResultsWindow.style.top = top + 'px'; - domPopupSearchResultsWindow.style.left = left + 'px'; - } - } - - this.lastSearchValue = searchValue; - this.lastResultsPage = resultsPage; - } - - // -------- Activation Functions - - // Activates or deactivates the search panel, resetting things to - // their default values if necessary. - this.Activate = function(isActive) - { - if (isActive || // open it - this.DOMPopupSearchResultsWindow().style.display == 'block' - ) - { - this.DOMSearchBox().className = 'MSearchBoxActive'; - - var searchField = this.DOMSearchField(); - - if (searchField.value == this.searchLabel) // clear "Search" term upon entry - { - searchField.value = ''; - this.searchActive = true; - } - } - else if (!isActive) // directly remove the panel - { - this.DOMSearchBox().className = 'MSearchBoxInactive'; - this.DOMSearchField().value = this.searchLabel; - this.searchActive = false; - this.lastSearchValue = '' - this.lastResultsPage = ''; - } - } -} - -// ----------------------------------------------------------------------- - -// The class that handles everything on the search results page. -function SearchResults(name) -{ - // The number of matches from the last run of . - this.lastMatchCount = 0; - this.lastKey = 0; - this.repeatOn = false; - - // Toggles the visibility of the passed element ID. - this.FindChildElement = function(id) - { - var parentElement = document.getElementById(id); - var element = parentElement.firstChild; - - while (element && element!=parentElement) - { - if (element.nodeName == 'DIV' && element.className == 'SRChildren') - { - return element; - } - - if (element.nodeName == 'DIV' && element.hasChildNodes()) - { - element = element.firstChild; - } - else if (element.nextSibling) - { - element = element.nextSibling; - } - else - { - do - { - element = element.parentNode; - } - while (element && element!=parentElement && !element.nextSibling); - - if (element && element!=parentElement) - { - element = element.nextSibling; - } - } - } - } - - this.Toggle = function(id) - { - var element = this.FindChildElement(id); - if (element) - { - if (element.style.display == 'block') - { - element.style.display = 'none'; - } - else - { - element.style.display = 'block'; - } - } - } - - // Searches for the passed string. If there is no parameter, - // it takes it from the URL query. - // - // Always returns true, since other documents may try to call it - // and that may or may not be possible. - this.Search = function(search) - { - if (!search) // get search word from URL - { - search = window.location.search; - search = search.substring(1); // Remove the leading '?' - search = unescape(search); - } - - search = search.replace(/^ +/, ""); // strip leading spaces - search = search.replace(/ +$/, ""); // strip trailing spaces - search = search.toLowerCase(); - search = convertToId(search); - - var resultRows = document.getElementsByTagName("div"); - var matches = 0; - - var i = 0; - while (i < resultRows.length) - { - var row = resultRows.item(i); - if (row.className == "SRResult") - { - var rowMatchName = row.id.toLowerCase(); - rowMatchName = rowMatchName.replace(/^sr\d*_/, ''); // strip 'sr123_' - - if (search.length<=rowMatchName.length && - rowMatchName.substr(0, search.length)==search) - { - row.style.display = 'block'; - matches++; - } - else - { - row.style.display = 'none'; - } - } - i++; - } - document.getElementById("Searching").style.display='none'; - if (matches == 0) // no results - { - document.getElementById("NoMatches").style.display='block'; - } - else // at least one result - { - document.getElementById("NoMatches").style.display='none'; - } - this.lastMatchCount = matches; - return true; - } - - // return the first item with index index or higher that is visible - this.NavNext = function(index) - { - var focusItem; - while (1) - { - var focusName = 'Item'+index; - focusItem = document.getElementById(focusName); - if (focusItem && focusItem.parentNode.parentNode.style.display=='block') - { - break; - } - else if (!focusItem) // last element - { - break; - } - focusItem=null; - index++; - } - return focusItem; - } - - this.NavPrev = function(index) - { - var focusItem; - while (1) - { - var focusName = 'Item'+index; - focusItem = document.getElementById(focusName); - if (focusItem && focusItem.parentNode.parentNode.style.display=='block') - { - break; - } - else if (!focusItem) // last element - { - break; - } - focusItem=null; - index--; - } - return focusItem; - } - - this.ProcessKeys = function(e) - { - if (e.type == "keydown") - { - this.repeatOn = false; - this.lastKey = e.keyCode; - } - else if (e.type == "keypress") - { - if (!this.repeatOn) - { - if (this.lastKey) this.repeatOn = true; - return false; // ignore first keypress after keydown - } - } - else if (e.type == "keyup") - { - this.lastKey = 0; - this.repeatOn = false; - } - return this.lastKey!=0; - } - - this.Nav = function(evt,itemIndex) - { - var e = (evt) ? evt : window.event; // for IE - if (e.keyCode==13) return true; - if (!this.ProcessKeys(e)) return false; - - if (this.lastKey==38) // Up - { - var newIndex = itemIndex-1; - var focusItem = this.NavPrev(newIndex); - if (focusItem) - { - var child = this.FindChildElement(focusItem.parentNode.parentNode.id); - if (child && child.style.display == 'block') // children visible - { - var n=0; - var tmpElem; - while (1) // search for last child - { - tmpElem = document.getElementById('Item'+newIndex+'_c'+n); - if (tmpElem) - { - focusItem = tmpElem; - } - else // found it! - { - break; - } - n++; - } - } - } - if (focusItem) - { - focusItem.focus(); - } - else // return focus to search field - { - parent.document.getElementById("MSearchField").focus(); - } - } - else if (this.lastKey==40) // Down - { - var newIndex = itemIndex+1; - var focusItem; - var item = document.getElementById('Item'+itemIndex); - var elem = this.FindChildElement(item.parentNode.parentNode.id); - if (elem && elem.style.display == 'block') // children visible - { - focusItem = document.getElementById('Item'+itemIndex+'_c0'); - } - if (!focusItem) focusItem = this.NavNext(newIndex); - if (focusItem) focusItem.focus(); - } - else if (this.lastKey==39) // Right - { - var item = document.getElementById('Item'+itemIndex); - var elem = this.FindChildElement(item.parentNode.parentNode.id); - if (elem) elem.style.display = 'block'; - } - else if (this.lastKey==37) // Left - { - var item = document.getElementById('Item'+itemIndex); - var elem = this.FindChildElement(item.parentNode.parentNode.id); - if (elem) elem.style.display = 'none'; - } - else if (this.lastKey==27) // Escape - { - parent.searchBox.CloseResultsWindow(); - parent.document.getElementById("MSearchField").focus(); - } - else if (this.lastKey==13) // Enter - { - return true; - } - return false; - } - - this.NavChild = function(evt,itemIndex,childIndex) - { - var e = (evt) ? evt : window.event; // for IE - if (e.keyCode==13) return true; - if (!this.ProcessKeys(e)) return false; - - if (this.lastKey==38) // Up - { - if (childIndex>0) - { - var newIndex = childIndex-1; - document.getElementById('Item'+itemIndex+'_c'+newIndex).focus(); - } - else // already at first child, jump to parent - { - document.getElementById('Item'+itemIndex).focus(); - } - } - else if (this.lastKey==40) // Down - { - var newIndex = childIndex+1; - var elem = document.getElementById('Item'+itemIndex+'_c'+newIndex); - if (!elem) // last child, jump to parent next parent - { - elem = this.NavNext(itemIndex+1); - } - if (elem) - { - elem.focus(); - } - } - else if (this.lastKey==27) // Escape - { - parent.searchBox.CloseResultsWindow(); - parent.document.getElementById("MSearchField").focus(); - } - else if (this.lastKey==13) // Enter - { - return true; - } - return false; - } -} - -function setKeyActions(elem,action) -{ - elem.setAttribute('onkeydown',action); - elem.setAttribute('onkeypress',action); - elem.setAttribute('onkeyup',action); -} - -function setClassAttr(elem,attr) -{ - elem.setAttribute('class',attr); - elem.setAttribute('className',attr); -} - -function createResults() -{ - var results = document.getElementById("SRResults"); - for (var e=0; e - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_61.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_61.js deleted file mode 100644 index a920481..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_61.js +++ /dev/null @@ -1,13 +0,0 @@ -var searchData= -[ - ['a',['a',['../structb2_sweep.html#afa96bacc91dd3c92ae716a45512332d6',1,'b2Sweep']]], - ['aabb',['aabb',['../structb2_tree_node.html#a798f1a594b33c713be45e76e79912239',1,'b2TreeNode']]], - ['active',['active',['../structb2_body_def.html#adf6f3e9a9e124e080c68bc0edeb170df',1,'b2BodyDef']]], - ['allowsleep',['allowSleep',['../structb2_body_def.html#a0765068172e521ed63cb34084c59c003',1,'b2BodyDef']]], - ['alpha0',['alpha0',['../structb2_sweep.html#aa5f8ab90178b58bc0777096cbc6b91cf',1,'b2Sweep']]], - ['angle',['angle',['../structb2_body_def.html#a564b16f4f8e9fcb5dda397e64aa9be6f',1,'b2BodyDef']]], - ['angulardamping',['angularDamping',['../structb2_body_def.html#a01b8dc8ad9f0962efef9e4a8e836feb6',1,'b2BodyDef']]], - ['angularoffset',['angularOffset',['../structb2_motor_joint_def.html#abdb42eff4aeff1d48038e084c57e1cb0',1,'b2MotorJointDef']]], - ['angularvelocity',['angularVelocity',['../structb2_body_def.html#add7809f7a29656b8c4b643ad8c2f34a9',1,'b2BodyDef']]], - ['awake',['awake',['../structb2_body_def.html#a17a8102638aac41e7ab94278651a45bd',1,'b2BodyDef']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_62.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_62.html deleted file mode 100644 index d4af55e..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_62.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_62.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_62.js deleted file mode 100644 index 80c467d..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_62.js +++ /dev/null @@ -1,7 +0,0 @@ -var searchData= -[ - ['b2_5fversion',['b2_version',['../b2_settings_8h.html#a3a20e3b6a8b05633d911fea031f7a44f',1,'b2Settings.cpp']]], - ['bodya',['bodyA',['../structb2_joint_def.html#a8cd54c93da396be75a9788f2c6897f05',1,'b2JointDef']]], - ['bodyb',['bodyB',['../structb2_joint_def.html#aa4f4dee2fbcd12187b19506b60e68e3d',1,'b2JointDef']]], - ['bullet',['bullet',['../structb2_body_def.html#a7c0047c9a98a1d20614eeddcdbce7586',1,'b2BodyDef']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_63.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_63.html deleted file mode 100644 index 7575dc9..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_63.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_63.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_63.js deleted file mode 100644 index 89f4bcb..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_63.js +++ /dev/null @@ -1,9 +0,0 @@ -var searchData= -[ - ['c',['c',['../structb2_sweep.html#a1b5402e01b92cc82473389fc6f0375c3',1,'b2Sweep']]], - ['categorybits',['categoryBits',['../structb2_filter.html#a368907397168d39af8b4fc5201d50bba',1,'b2Filter']]], - ['center',['center',['../structb2_mass_data.html#a1d59bebc7030c4dded0c2febc57ebdd7',1,'b2MassData']]], - ['collideconnected',['collideConnected',['../structb2_joint_def.html#aef099a1f89b64e230173b6016848ea9b',1,'b2JointDef']]], - ['contact',['contact',['../structb2_contact_edge.html#a2fbfaffa0dfdf715fd1a709cff939dee',1,'b2ContactEdge']]], - ['correctionfactor',['correctionFactor',['../structb2_motor_joint_def.html#ab282afdb92d07ead23530f57fd0eb9ea',1,'b2MotorJointDef']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_64.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_64.html deleted file mode 100644 index 89296ec..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_64.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_64.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_64.js deleted file mode 100644 index 63c103c..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_64.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['dampingratio',['dampingRatio',['../structb2_distance_joint_def.html#ad009b24ff211158eb4e1db4815a63b94',1,'b2DistanceJointDef::dampingRatio()'],['../structb2_mouse_joint_def.html#aee42888dab204a5c5745ba61acbfb7d6',1,'b2MouseJointDef::dampingRatio()'],['../structb2_weld_joint_def.html#ace1f0131610f14558f3dbaaed7b10e24',1,'b2WeldJointDef::dampingRatio()'],['../structb2_wheel_joint_def.html#a9976584bfee18b46dec355764797ce54',1,'b2WheelJointDef::dampingRatio()']]], - ['density',['density',['../structb2_fixture_def.html#a6e27d733789a35aa689af2b30a1de0ff',1,'b2FixtureDef']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_65.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_65.html deleted file mode 100644 index 4ccb91b..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_65.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_65.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_65.js deleted file mode 100644 index 10e7ed8..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_65.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['enablelimit',['enableLimit',['../structb2_prismatic_joint_def.html#aa61a03b68caac62a5cf66354f6756eae',1,'b2PrismaticJointDef::enableLimit()'],['../structb2_revolute_joint_def.html#a2eaefc5fc5caf879cfd59ebcd852b756',1,'b2RevoluteJointDef::enableLimit()']]], - ['enablemotor',['enableMotor',['../structb2_prismatic_joint_def.html#a58ac79a54a8110d3a745e1d6d36990dc',1,'b2PrismaticJointDef::enableMotor()'],['../structb2_revolute_joint_def.html#aa94d9e66be9f03818d0cfbd9c70b2996',1,'b2RevoluteJointDef::enableMotor()'],['../structb2_wheel_joint_def.html#a8e7193d6c34c784ffd71e79d3a70acc6',1,'b2WheelJointDef::enableMotor()']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_66.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_66.html deleted file mode 100644 index 802fdbc..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_66.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_66.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_66.js deleted file mode 100644 index 96f51f2..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_66.js +++ /dev/null @@ -1,7 +0,0 @@ -var searchData= -[ - ['filter',['filter',['../structb2_fixture_def.html#a4c3e493a13d11ab27fcc2eee9f52fd61',1,'b2FixtureDef']]], - ['fixedrotation',['fixedRotation',['../structb2_body_def.html#a273a51c57440a8884de5939d76b6e3ea',1,'b2BodyDef']]], - ['frequencyhz',['frequencyHz',['../structb2_distance_joint_def.html#a35e2362bcb6c58734f95d0ac045863ea',1,'b2DistanceJointDef::frequencyHz()'],['../structb2_mouse_joint_def.html#a61e9017eb928608f75edddb6e0ca7f63',1,'b2MouseJointDef::frequencyHz()'],['../structb2_weld_joint_def.html#abf42ce852914af845e9203b341f55c87',1,'b2WeldJointDef::frequencyHz()'],['../structb2_wheel_joint_def.html#acf3540f46eaf3bc91426386939bd37b1',1,'b2WheelJointDef::frequencyHz()']]], - ['friction',['friction',['../structb2_fixture_def.html#a66081c8d0e12d4bdb0b341fb97b46eb6',1,'b2FixtureDef']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_67.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_67.html deleted file mode 100644 index be8e8e6..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_67.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_67.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_67.js deleted file mode 100644 index e9c2893..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_67.js +++ /dev/null @@ -1,7 +0,0 @@ -var searchData= -[ - ['gravityscale',['gravityScale',['../structb2_body_def.html#aadea3fa173ed1014739ec8b023de4336',1,'b2BodyDef']]], - ['groundanchora',['groundAnchorA',['../structb2_pulley_joint_def.html#aae77c020ce4629ab9e03560e28aa853d',1,'b2PulleyJointDef']]], - ['groundanchorb',['groundAnchorB',['../structb2_pulley_joint_def.html#aa412b9f3bffd1fb69ace14f9b3e03b82',1,'b2PulleyJointDef']]], - ['groupindex',['groupIndex',['../structb2_filter.html#a572a8f4a1672f6d5d71123a35e872950',1,'b2Filter']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_69.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_69.html deleted file mode 100644 index 442bf33..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_69.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_69.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_69.js deleted file mode 100644 index 8ab449c..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_69.js +++ /dev/null @@ -1,9 +0,0 @@ -var searchData= -[ - ['i',['I',['../structb2_mass_data.html#ad2d06e96e2d79d895df16ae0e5fe0376',1,'b2MassData']]], - ['id',['id',['../structb2_manifold_point.html#afa7ec272b2b27abe129540f8fbe57fc5',1,'b2ManifoldPoint']]], - ['indexa',['indexA',['../structb2_contact_feature.html#a833bc746e7cb5e3cd458f1c0809101d0',1,'b2ContactFeature::indexA()'],['../structb2_simplex_cache.html#ab574159e69dda7e14ead8de848ca6b67',1,'b2SimplexCache::indexA()']]], - ['indexb',['indexB',['../structb2_contact_feature.html#ad96712b6a0cc1f4b22b85b5948eab81d',1,'b2ContactFeature::indexB()'],['../structb2_simplex_cache.html#ab7586465ee2c5f7c3bdd8f80d5e256a7',1,'b2SimplexCache::indexB()']]], - ['issensor',['isSensor',['../structb2_fixture_def.html#ac8cfcc6208663c92861eaab3b3fdc57e',1,'b2FixtureDef']]], - ['iterations',['iterations',['../structb2_distance_output.html#ae2d4c84dd3d05ea4f4d20c91099ec8d5',1,'b2DistanceOutput']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_6a.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_6a.html deleted file mode 100644 index 03afb70..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_6a.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_6a.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_6a.js deleted file mode 100644 index f1869a3..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_6a.js +++ /dev/null @@ -1,6 +0,0 @@ -var searchData= -[ - ['joint',['joint',['../structb2_joint_edge.html#ab5bac5d495af1280c50271f56a221503',1,'b2JointEdge']]], - ['joint1',['joint1',['../structb2_gear_joint_def.html#ae42d33b54291a9e256f3810926883473',1,'b2GearJointDef']]], - ['joint2',['joint2',['../structb2_gear_joint_def.html#a73cf056fe40e63355073a01b097f4c82',1,'b2GearJointDef']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_6b.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_6b.html deleted file mode 100644 index ea100a7..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_6b.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_6b.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_6b.js deleted file mode 100644 index aab8e5c..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_6b.js +++ /dev/null @@ -1,6 +0,0 @@ -var searchData= -[ - ['k2',['k2',['../structb2_rope_def.html#a89de5d2c15afacd41722c76523e33826',1,'b2RopeDef']]], - ['k3',['k3',['../structb2_rope_def.html#a3f4749e0a309b53daf804c75adfb4ba8',1,'b2RopeDef']]], - ['key',['key',['../unionb2_contact_i_d.html#a04c04f8fdcb799b33552d01b3aa3f245',1,'b2ContactID']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_6c.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_6c.html deleted file mode 100644 index c136114..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_6c.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_6c.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_6c.js deleted file mode 100644 index 0d981e1..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_6c.js +++ /dev/null @@ -1,18 +0,0 @@ -var searchData= -[ - ['length',['length',['../structb2_distance_joint_def.html#ac2c48ad52de91c804c386c12c5bf3714',1,'b2DistanceJointDef']]], - ['lengtha',['lengthA',['../structb2_pulley_joint_def.html#a51d945882c1d7a78af2b0e9ffb31a33b',1,'b2PulleyJointDef']]], - ['lengthb',['lengthB',['../structb2_pulley_joint_def.html#a5857d5b5b9880b6c8201ce3ee8c3eef0',1,'b2PulleyJointDef']]], - ['lineardamping',['linearDamping',['../structb2_body_def.html#a728f6df3be7dedb331455105e3659d46',1,'b2BodyDef']]], - ['linearoffset',['linearOffset',['../structb2_motor_joint_def.html#a2c957cffc2af66c6c8077c069b906bc4',1,'b2MotorJointDef']]], - ['linearvelocity',['linearVelocity',['../structb2_body_def.html#a25fa5aa78d93159c344241af95bec2bf',1,'b2BodyDef']]], - ['localanchora',['localAnchorA',['../structb2_distance_joint_def.html#a15c7a75fa277e2056bf1b44198658518',1,'b2DistanceJointDef::localAnchorA()'],['../structb2_friction_joint_def.html#a00b246e60ae282a956a42b662993e92a',1,'b2FrictionJointDef::localAnchorA()'],['../structb2_prismatic_joint_def.html#abb51df8daff7a55f47adc83e4f7fa5b9',1,'b2PrismaticJointDef::localAnchorA()'],['../structb2_pulley_joint_def.html#ad7677a4ad02a6e7cb8699fc5012eac3e',1,'b2PulleyJointDef::localAnchorA()'],['../structb2_revolute_joint_def.html#a76337d07aa63232a7b20d50decc862ae',1,'b2RevoluteJointDef::localAnchorA()'],['../structb2_rope_joint_def.html#ab680fcc3cd44741a7a824ddff86ff01e',1,'b2RopeJointDef::localAnchorA()'],['../structb2_weld_joint_def.html#a3b04af6164bb32efc3f5cf3e8d2b7109',1,'b2WeldJointDef::localAnchorA()'],['../structb2_wheel_joint_def.html#a9429d2273bfdd8bdc0db416e73b89ae4',1,'b2WheelJointDef::localAnchorA()']]], - ['localanchorb',['localAnchorB',['../structb2_distance_joint_def.html#a3c8995be726238eee084af750442255c',1,'b2DistanceJointDef::localAnchorB()'],['../structb2_friction_joint_def.html#ad6d5a5614a7ac77b13e53fda3e32ed05',1,'b2FrictionJointDef::localAnchorB()'],['../structb2_prismatic_joint_def.html#a5acc1f2f14d1b659fc9d804ab1baf4a3',1,'b2PrismaticJointDef::localAnchorB()'],['../structb2_pulley_joint_def.html#aed3f9c9f5f4145ceb32e7e164de73144',1,'b2PulleyJointDef::localAnchorB()'],['../structb2_revolute_joint_def.html#a3f33bc1d9f6c22043a5ff2f1d89f04e0',1,'b2RevoluteJointDef::localAnchorB()'],['../structb2_rope_joint_def.html#a3271da0e4027e25546aa6a81e8fbe4e2',1,'b2RopeJointDef::localAnchorB()'],['../structb2_weld_joint_def.html#a528262b92dac10de37411ad8c5637149',1,'b2WeldJointDef::localAnchorB()'],['../structb2_wheel_joint_def.html#a88ba0f7108076b9d7ced68425be95c27',1,'b2WheelJointDef::localAnchorB()']]], - ['localaxisa',['localAxisA',['../structb2_prismatic_joint_def.html#af36fdbcedca5a392a2649cd235c42676',1,'b2PrismaticJointDef::localAxisA()'],['../structb2_wheel_joint_def.html#ad635ee7b77b50037dc0e021a0f5c93a6',1,'b2WheelJointDef::localAxisA()']]], - ['localcenter',['localCenter',['../structb2_sweep.html#a4bcc302cf78771896d6256fc53f2f8be',1,'b2Sweep']]], - ['localnormal',['localNormal',['../structb2_manifold.html#a3604e9fef2a03347c5649c71a9fd4c79',1,'b2Manifold']]], - ['localpoint',['localPoint',['../structb2_manifold_point.html#ab3616990e7d1644deeeb691246094bfa',1,'b2ManifoldPoint::localPoint()'],['../structb2_manifold.html#a8825cea31b27dbbaf22c13c3070870d5',1,'b2Manifold::localPoint()']]], - ['lowerangle',['lowerAngle',['../structb2_revolute_joint_def.html#a24d0b2638a01405c77bd1c0de3e53de8',1,'b2RevoluteJointDef']]], - ['lowerbound',['lowerBound',['../structb2_a_a_b_b.html#ab94b68fbad8348b22b0522469b11bdb5',1,'b2AABB']]], - ['lowertranslation',['lowerTranslation',['../structb2_prismatic_joint_def.html#ac0a0e2a669d640ebea354895fe6a9fb6',1,'b2PrismaticJointDef']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_6d.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_6d.html deleted file mode 100644 index 32612b6..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_6d.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_6d.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_6d.js deleted file mode 100644 index b17db2e..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_6d.js +++ /dev/null @@ -1,19 +0,0 @@ -var searchData= -[ - ['m_5fcount',['m_count',['../classb2_chain_shape.html#ab2ad711781e6ac81179074e90e0e058b',1,'b2ChainShape']]], - ['m_5fp',['m_p',['../classb2_circle_shape.html#a190705618b2e65f636f1dc03c63640ff',1,'b2CircleShape']]], - ['m_5fvertex0',['m_vertex0',['../classb2_edge_shape.html#a907c9829484cc1ba7527ab368e9fdf93',1,'b2EdgeShape']]], - ['m_5fvertex1',['m_vertex1',['../classb2_edge_shape.html#a916cf02a752ff1a70db35b2edaf19bb4',1,'b2EdgeShape']]], - ['m_5fvertices',['m_vertices',['../classb2_chain_shape.html#a481116a6886fb3880b13e55c966579da',1,'b2ChainShape']]], - ['major',['major',['../structb2_version.html#a720da8e346364d1cb34d176125380b44',1,'b2Version']]], - ['maskbits',['maskBits',['../structb2_filter.html#a533cccf85e3ba3d9e3700d73b819f6e2',1,'b2Filter']]], - ['mass',['mass',['../structb2_mass_data.html#aea85d9595a38d2eed05b8d2ea80d97b1',1,'b2MassData']]], - ['maxforce',['maxForce',['../structb2_friction_joint_def.html#ad30e97a80790d4ca64bac7a1fa7d1b35',1,'b2FrictionJointDef::maxForce()'],['../structb2_motor_joint_def.html#a2f66d1b99c654e112dc68e15375d5ee7',1,'b2MotorJointDef::maxForce()'],['../structb2_mouse_joint_def.html#ae9c52b3afda8ed006eb62fad163cdc3b',1,'b2MouseJointDef::maxForce()']]], - ['maxlength',['maxLength',['../structb2_rope_joint_def.html#a6efdcae22e2bdcfc3aae62da1a5f0d69',1,'b2RopeJointDef']]], - ['maxmotorforce',['maxMotorForce',['../structb2_prismatic_joint_def.html#aabeec48af1e49c7f9fed5e0bc8270a1b',1,'b2PrismaticJointDef']]], - ['maxmotortorque',['maxMotorTorque',['../structb2_revolute_joint_def.html#a9fc1b67fe6d1bc31f88cc2cfd681fe30',1,'b2RevoluteJointDef::maxMotorTorque()'],['../structb2_wheel_joint_def.html#ab658ce0fae40c6de09133659f7ffb829',1,'b2WheelJointDef::maxMotorTorque()']]], - ['maxtorque',['maxTorque',['../structb2_friction_joint_def.html#a61adfb0ee7c0ed4cb8feee8304c16ef6',1,'b2FrictionJointDef::maxTorque()'],['../structb2_motor_joint_def.html#afcf5dd58166917a4574d1f28f6bb3660',1,'b2MotorJointDef::maxTorque()']]], - ['metric',['metric',['../structb2_simplex_cache.html#a018e0a500b417d79bfed3f21310b15a2',1,'b2SimplexCache']]], - ['minor',['minor',['../structb2_version.html#a115b8797a6e0b8e53f54502bd20d89da',1,'b2Version']]], - ['motorspeed',['motorSpeed',['../structb2_prismatic_joint_def.html#ac4bdaea15653657e724a04fc60f3f235',1,'b2PrismaticJointDef::motorSpeed()'],['../structb2_revolute_joint_def.html#aced7cf768f4dcc3561576a39c7b92ec4',1,'b2RevoluteJointDef::motorSpeed()'],['../structb2_wheel_joint_def.html#a7248e25f2ca6b6c2a5f7079ce16e7748',1,'b2WheelJointDef::motorSpeed()']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_6e.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_6e.html deleted file mode 100644 index ca7052c..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_6e.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_6e.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_6e.js deleted file mode 100644 index 18d7c72..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_6e.js +++ /dev/null @@ -1,6 +0,0 @@ -var searchData= -[ - ['next',['next',['../structb2_contact_edge.html#a9af32b3cfadf35a927f4dffcf6338a6d',1,'b2ContactEdge::next()'],['../structb2_joint_edge.html#a3d17286bc697bb620ee151e4cd07438c',1,'b2JointEdge::next()']]], - ['normal',['normal',['../structb2_world_manifold.html#acf8de61b73d9784d16f7d0e824ce44bf',1,'b2WorldManifold']]], - ['normalimpulse',['normalImpulse',['../structb2_manifold_point.html#af4218c2359cb7762cd4e9d8ecefab173',1,'b2ManifoldPoint']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_6f.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_6f.html deleted file mode 100644 index 5671b03..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_6f.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_6f.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_6f.js deleted file mode 100644 index 0c07bcf..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_6f.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['other',['other',['../structb2_contact_edge.html#a69015fc22e064eac04ed74f27a13ae78',1,'b2ContactEdge::other()'],['../structb2_joint_edge.html#a64aef21fb91211871de8796baecccb95',1,'b2JointEdge::other()']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_70.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_70.html deleted file mode 100644 index e36abe9..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_70.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_70.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_70.js deleted file mode 100644 index 0c32109..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_70.js +++ /dev/null @@ -1,9 +0,0 @@ -var searchData= -[ - ['pointa',['pointA',['../structb2_distance_output.html#a7e0f1f44a64e596dc7d37570c69eefce',1,'b2DistanceOutput']]], - ['pointb',['pointB',['../structb2_distance_output.html#aa85beca17337a506cd4a924d0c6f92cc',1,'b2DistanceOutput']]], - ['pointcount',['pointCount',['../structb2_manifold.html#abf59ff6fa36bed34b0242ad54951a696',1,'b2Manifold']]], - ['points',['points',['../structb2_manifold.html#ab8021128e9792cc7391a8804ea02173d',1,'b2Manifold::points()'],['../structb2_world_manifold.html#af15e84b90f102c0ac433be2d63604021',1,'b2WorldManifold::points()']]], - ['position',['position',['../structb2_body_def.html#a680cadc09ad6cf4b3366cbf0914c648b',1,'b2BodyDef']]], - ['prev',['prev',['../structb2_contact_edge.html#a606dfacb78dc5c51672e4d7449006b8c',1,'b2ContactEdge::prev()'],['../structb2_joint_edge.html#acc3621e38d9664db2805e0fc29d71335',1,'b2JointEdge::prev()']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_72.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_72.html deleted file mode 100644 index 0bf4f34..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_72.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_72.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_72.js deleted file mode 100644 index 88cee7f..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_72.js +++ /dev/null @@ -1,7 +0,0 @@ -var searchData= -[ - ['ratio',['ratio',['../structb2_gear_joint_def.html#a57e9f4b6ce1ddc8b89b8455515f69323',1,'b2GearJointDef::ratio()'],['../structb2_pulley_joint_def.html#af35074246aeacbf239c11682642b31f5',1,'b2PulleyJointDef::ratio()']]], - ['referenceangle',['referenceAngle',['../structb2_prismatic_joint_def.html#aa84b43d08e6e11b4daa0c86f46094463',1,'b2PrismaticJointDef::referenceAngle()'],['../structb2_revolute_joint_def.html#a1858d897d5fea04c5e606a1ff73f64f8',1,'b2RevoluteJointDef::referenceAngle()'],['../structb2_weld_joint_def.html#a31aeb208f15842091c55e3f1bab6d8f1',1,'b2WeldJointDef::referenceAngle()']]], - ['restitution',['restitution',['../structb2_fixture_def.html#ad7ee26656e4749f7b548d2cc0cf9f168',1,'b2FixtureDef']]], - ['revision',['revision',['../structb2_version.html#a395cfe1434e348115d2ead3d72b88847',1,'b2Version']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_73.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_73.html deleted file mode 100644 index 234c326..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_73.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_73.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_73.js deleted file mode 100644 index eacfae0..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_73.js +++ /dev/null @@ -1,6 +0,0 @@ -var searchData= -[ - ['s',['s',['../structb2_rot.html#a15725ce0a89cc735ad90687b4c0f4dce',1,'b2Rot']]], - ['separations',['separations',['../structb2_world_manifold.html#ac545e60a52d219d53ef1de3e0cad2d84',1,'b2WorldManifold']]], - ['shape',['shape',['../structb2_fixture_def.html#a1e41753d89abf3443e7897e2498a3240',1,'b2FixtureDef']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_74.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_74.html deleted file mode 100644 index 0a56aa4..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_74.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_74.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_74.js deleted file mode 100644 index ad86561..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_74.js +++ /dev/null @@ -1,8 +0,0 @@ -var searchData= -[ - ['tangentimpulse',['tangentImpulse',['../structb2_manifold_point.html#a0ac5375b1fc4675a0073129f56aa62c9',1,'b2ManifoldPoint']]], - ['target',['target',['../structb2_mouse_joint_def.html#aa1b76f72df9aca8d42bdc3e9922e310a',1,'b2MouseJointDef']]], - ['type',['type',['../structb2_body_def.html#a89cc3ad1873908042b002147b3861381',1,'b2BodyDef::type()'],['../structb2_joint_def.html#a470f2879b24adb05facbd49f338856fb',1,'b2JointDef::type()']]], - ['typea',['typeA',['../structb2_contact_feature.html#a3361b651f0a88fb60ec6aba9f4921cc2',1,'b2ContactFeature']]], - ['typeb',['typeB',['../structb2_contact_feature.html#abb74afd6ee5b60834a3f8e2616182bdf',1,'b2ContactFeature']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_75.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_75.html deleted file mode 100644 index fa1b2e6..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_75.html +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_75.js b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_75.js deleted file mode 100644 index 79e4fc5..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/search/variables_75.js +++ /dev/null @@ -1,7 +0,0 @@ -var searchData= -[ - ['upperangle',['upperAngle',['../structb2_revolute_joint_def.html#a692cfe333ad12afd5753a6ec54e39a66',1,'b2RevoluteJointDef']]], - ['upperbound',['upperBound',['../structb2_a_a_b_b.html#ad4a8ec483ba13a2c02918b01d058a18f',1,'b2AABB']]], - ['uppertranslation',['upperTranslation',['../structb2_prismatic_joint_def.html#ae3eac123c7fe543071bdfcd1a6942350',1,'b2PrismaticJointDef']]], - ['userdata',['userData',['../structb2_body_def.html#ae457dd1d39be09945eace6061121be29',1,'b2BodyDef::userData()'],['../structb2_fixture_def.html#a4f77ef2b2585a40899b61faf53db1093',1,'b2FixtureDef::userData()'],['../structb2_joint_def.html#a07eb150daaaa52fc09c3bcf402b295fe',1,'b2JointDef::userData()']]] -]; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_a_a_b_b-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_a_a_b_b-members.html deleted file mode 100644 index ad1a87d..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_a_a_b_b-members.html +++ /dev/null @@ -1,111 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    -
    - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    - - - - - - - - - - -
    - -
    - - -
    -
    -
    b2AABB Member List
    -
    -
    - -

    This is the complete list of members for b2AABB, including all inherited members.

    - - - - - - - - - - - -
    Combine(const b2AABB &aabb)b2AABBinline
    Combine(const b2AABB &aabb1, const b2AABB &aabb2)b2AABBinline
    Contains(const b2AABB &aabb) const b2AABBinline
    GetCenter() const b2AABBinline
    GetExtents() const b2AABBinline
    GetPerimeter() const b2AABBinline
    IsValid() const b2AABBinline
    lowerBoundb2AABB
    RayCast(b2RayCastOutput *output, const b2RayCastInput &input) const (defined in b2AABB)b2AABB
    upperBoundb2AABB
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_a_a_b_b.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_a_a_b_b.html deleted file mode 100644 index 087dda0..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_a_a_b_b.html +++ /dev/null @@ -1,159 +0,0 @@ - - - - - - -Box2D: b2AABB Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2AABB Struct Reference
    -
    -
    - -

    An axis aligned bounding box. - More...

    - -

    #include <b2Collision.h>

    - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Member Functions

    -bool IsValid () const
     Verify that the bounds are sorted.
     
    -b2Vec2 GetCenter () const
     Get the center of the AABB.
     
    -b2Vec2 GetExtents () const
     Get the extents of the AABB (half-widths).
     
    -float32 GetPerimeter () const
     Get the perimeter length.
     
    -void Combine (const b2AABB &aabb)
     Combine an AABB into this one.
     
    -void Combine (const b2AABB &aabb1, const b2AABB &aabb2)
     Combine two AABBs into this one.
     
    -bool Contains (const b2AABB &aabb) const
     Does this aabb contain the provided AABB.
     
    -bool RayCast (b2RayCastOutput *output, const b2RayCastInput &input) const
     
    - - - - - - - -

    -Public Attributes

    -b2Vec2 lowerBound
     the lower vertex
     
    -b2Vec2 upperBound
     the upper vertex
     
    -

    Detailed Description

    -

    An axis aligned bounding box.

    -

    The documentation for this struct was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_block-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_block-members.html deleted file mode 100644 index b9836fe..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_block-members.html +++ /dev/null @@ -1,102 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2Block Member List
    -
    -
    - -

    This is the complete list of members for b2Block, including all inherited members.

    - - -
    next (defined in b2Block)b2Block
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_block.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_block.html deleted file mode 100644 index 4e99ebc..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_block.html +++ /dev/null @@ -1,111 +0,0 @@ - - - - - - -Box2D: b2Block Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2Block Struct Reference
    -
    -
    - - - - -

    -Public Attributes

    -b2Blocknext
     
    -
    The documentation for this struct was generated from the following file:
      -
    • b2BlockAllocator.cpp
    • -
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_body_def-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_body_def-members.html deleted file mode 100644 index 207c429..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_body_def-members.html +++ /dev/null @@ -1,116 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2BodyDef Member List
    -
    - - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_body_def.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_body_def.html deleted file mode 100644 index a49fcbc..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_body_def.html +++ /dev/null @@ -1,244 +0,0 @@ - - - - - - -Box2D: b2BodyDef Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2BodyDef Struct Reference
    -
    -
    - -

    #include <b2Body.h>

    - - - - - -

    -Public Member Functions

    b2BodyDef ()
     This constructor sets the body definition default values.
     
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Attributes

    b2BodyType type
     
    b2Vec2 position
     
    -float32 angle
     The world angle of the body in radians.
     
    -b2Vec2 linearVelocity
     The linear velocity of the body's origin in world co-ordinates.
     
    -float32 angularVelocity
     The angular velocity of the body.
     
    float32 linearDamping
     
    float32 angularDamping
     
    bool allowSleep
     
    -bool awake
     Is this body initially awake or sleeping?
     
    -bool fixedRotation
     Should this body be prevented from rotating? Useful for characters.
     
    bool bullet
     
    -bool active
     Does this body start out active?
     
    -void * userData
     Use this to store application specific body data.
     
    -float32 gravityScale
     Scale the gravity applied to this body.
     
    -

    Detailed Description

    -

    A body definition holds all the data needed to construct a rigid body. You can safely re-use body definitions. Shapes are added to a body after construction.

    -

    Member Data Documentation

    - -
    -
    - - - - -
    bool b2BodyDef::allowSleep
    -
    -

    Set this flag to false if this body should never fall asleep. Note that this increases CPU usage.

    - -
    -
    - -
    -
    - - - - -
    float32 b2BodyDef::angularDamping
    -
    -

    Angular damping is use to reduce the angular velocity. The damping parameter can be larger than 1.0f but the damping effect becomes sensitive to the time step when the damping parameter is large.

    - -
    -
    - -
    -
    - - - - -
    bool b2BodyDef::bullet
    -
    -

    Is this a fast moving body that should be prevented from tunneling through other moving bodies? Note that all bodies are prevented from tunneling through kinematic and static bodies. This setting is only considered on dynamic bodies.

    -
    Warning
    You should use this flag sparingly since it increases processing time.
    - -
    -
    - -
    -
    - - - - -
    float32 b2BodyDef::linearDamping
    -
    -

    Linear damping is use to reduce the linear velocity. The damping parameter can be larger than 1.0f but the damping effect becomes sensitive to the time step when the damping parameter is large.

    - -
    -
    - -
    -
    - - - - -
    b2Vec2 b2BodyDef::position
    -
    -

    The world position of the body. Avoid creating bodies at the origin since this can lead to many overlapping shapes.

    - -
    -
    - -
    -
    - - - - -
    b2BodyType b2BodyDef::type
    -
    -

    The body type: static, kinematic, or dynamic. Note: if a dynamic body would have zero mass, the mass is set to one.

    - -
    -
    -
    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_chunk-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_chunk-members.html deleted file mode 100644 index c83a3bb..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_chunk-members.html +++ /dev/null @@ -1,103 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2Chunk Member List
    -
    -
    - -

    This is the complete list of members for b2Chunk, including all inherited members.

    - - - -
    blocks (defined in b2Chunk)b2Chunk
    blockSize (defined in b2Chunk)b2Chunk
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_chunk.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_chunk.html deleted file mode 100644 index aaf2fa5..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_chunk.html +++ /dev/null @@ -1,114 +0,0 @@ - - - - - - -Box2D: b2Chunk Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2Chunk Struct Reference
    -
    -
    - - - - - - -

    -Public Attributes

    -int32 blockSize
     
    -b2Blockblocks
     
    -
    The documentation for this struct was generated from the following file:
      -
    • b2BlockAllocator.cpp
    • -
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_clip_vertex-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_clip_vertex-members.html deleted file mode 100644 index 4217f4c..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_clip_vertex-members.html +++ /dev/null @@ -1,103 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2ClipVertex Member List
    -
    -
    - -

    This is the complete list of members for b2ClipVertex, including all inherited members.

    - - - -
    id (defined in b2ClipVertex)b2ClipVertex
    v (defined in b2ClipVertex)b2ClipVertex
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_clip_vertex.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_clip_vertex.html deleted file mode 100644 index 81e793a..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_clip_vertex.html +++ /dev/null @@ -1,121 +0,0 @@ - - - - - - -Box2D: b2ClipVertex Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2ClipVertex Struct Reference
    -
    -
    - -

    Used for computing contact manifolds. - More...

    - -

    #include <b2Collision.h>

    - - - - - - -

    -Public Attributes

    -b2Vec2 v
     
    -b2ContactID id
     
    -

    Detailed Description

    -

    Used for computing contact manifolds.

    -

    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_color-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_color-members.html deleted file mode 100644 index 9e9fed8..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_color-members.html +++ /dev/null @@ -1,107 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2Color Member List
    -
    -
    - -

    This is the complete list of members for b2Color, including all inherited members.

    - - - - - - - -
    b (defined in b2Color)b2Color
    b2Color() (defined in b2Color)b2Colorinline
    b2Color(float32 r, float32 g, float32 b) (defined in b2Color)b2Colorinline
    g (defined in b2Color)b2Color
    r (defined in b2Color)b2Color
    Set(float32 ri, float32 gi, float32 bi) (defined in b2Color)b2Colorinline
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_color.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_color.html deleted file mode 100644 index e8781b7..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_color.html +++ /dev/null @@ -1,134 +0,0 @@ - - - - - - -Box2D: b2Color Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2Color Struct Reference
    -
    -
    - -

    Color for debug drawing. Each value has the range [0,1]. - More...

    - -

    #include <b2Draw.h>

    - - - - - - -

    -Public Member Functions

    b2Color (float32 r, float32 g, float32 b)
     
    -void Set (float32 ri, float32 gi, float32 bi)
     
    - - - - - - - -

    -Public Attributes

    -float32 r
     
    -float32 g
     
    -float32 b
     
    -

    Detailed Description

    -

    Color for debug drawing. Each value has the range [0,1].

    -

    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_contact_edge-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_contact_edge-members.html deleted file mode 100644 index cb4b434..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_contact_edge-members.html +++ /dev/null @@ -1,105 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2ContactEdge Member List
    -
    -
    - -

    This is the complete list of members for b2ContactEdge, including all inherited members.

    - - - - - -
    contactb2ContactEdge
    nextb2ContactEdge
    otherb2ContactEdge
    prevb2ContactEdge
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_contact_edge.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_contact_edge.html deleted file mode 100644 index 20eb6ca..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_contact_edge.html +++ /dev/null @@ -1,128 +0,0 @@ - - - - - - -Box2D: b2ContactEdge Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2ContactEdge Struct Reference
    -
    -
    - -

    #include <b2Contact.h>

    - - - - - - - - - - - - - - -

    -Public Attributes

    -b2Bodyother
     provides quick access to the other body attached.
     
    -b2Contactcontact
     the contact
     
    -b2ContactEdgeprev
     the previous contact edge in the body's contact list
     
    -b2ContactEdgenext
     the next contact edge in the body's contact list
     
    -

    Detailed Description

    -

    A contact edge is used to connect bodies and contacts together in a contact graph where each body is a node and each contact is an edge. A contact edge belongs to a doubly linked list maintained in each attached body. Each contact has two contact nodes, one for each attached body.

    -

    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_contact_feature-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_contact_feature-members.html deleted file mode 100644 index 8885fe6..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_contact_feature-members.html +++ /dev/null @@ -1,108 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2ContactFeature Member List
    -
    -
    - -

    This is the complete list of members for b2ContactFeature, including all inherited members.

    - - - - - - - - -
    e_face enum value (defined in b2ContactFeature)b2ContactFeature
    e_vertex enum value (defined in b2ContactFeature)b2ContactFeature
    indexAb2ContactFeature
    indexBb2ContactFeature
    Type enum name (defined in b2ContactFeature)b2ContactFeature
    typeAb2ContactFeature
    typeBb2ContactFeature
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_contact_feature.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_contact_feature.html deleted file mode 100644 index ecacde6..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_contact_feature.html +++ /dev/null @@ -1,136 +0,0 @@ - - - - - - -Box2D: b2ContactFeature Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2ContactFeature Struct Reference
    -
    -
    - -

    #include <b2Collision.h>

    - - - - -

    -Public Types

    enum  Type { e_vertex = 0, -e_face = 1 - }
     
    - - - - - - - - - - - - - -

    -Public Attributes

    -uint8 indexA
     Feature index on shapeA.
     
    -uint8 indexB
     Feature index on shapeB.
     
    -uint8 typeA
     The feature type on shapeA.
     
    -uint8 typeB
     The feature type on shapeB.
     
    -

    Detailed Description

    -

    The features that intersect to form the contact point This must be 4 bytes or less.

    -

    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_contact_impulse-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_contact_impulse-members.html deleted file mode 100644 index 00e72df..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_contact_impulse-members.html +++ /dev/null @@ -1,104 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2ContactImpulse Member List
    -
    -
    - -

    This is the complete list of members for b2ContactImpulse, including all inherited members.

    - - - - -
    count (defined in b2ContactImpulse)b2ContactImpulse
    normalImpulses (defined in b2ContactImpulse)b2ContactImpulse
    tangentImpulses (defined in b2ContactImpulse)b2ContactImpulse
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_contact_impulse.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_contact_impulse.html deleted file mode 100644 index 4eff2ca..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_contact_impulse.html +++ /dev/null @@ -1,121 +0,0 @@ - - - - - - -Box2D: b2ContactImpulse Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2ContactImpulse Struct Reference
    -
    -
    - -

    #include <b2WorldCallbacks.h>

    - - - - - - - - -

    -Public Attributes

    -float32 normalImpulses [b2_maxManifoldPoints]
     
    -float32 tangentImpulses [b2_maxManifoldPoints]
     
    -int32 count
     
    -

    Detailed Description

    -

    Contact impulses for reporting. Impulses are used instead of forces because sub-step forces may approach infinity for rigid body collisions. These match up one-to-one with the contact points in b2Manifold.

    -

    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_contact_position_constraint-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_contact_position_constraint-members.html deleted file mode 100644 index 372b30a..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_contact_position_constraint-members.html +++ /dev/null @@ -1,116 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2ContactPositionConstraint Member List
    -
    - - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_contact_position_constraint.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_contact_position_constraint.html deleted file mode 100644 index f795032..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_contact_position_constraint.html +++ /dev/null @@ -1,153 +0,0 @@ - - - - - - -Box2D: b2ContactPositionConstraint Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2ContactPositionConstraint Struct Reference
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Attributes

    -b2Vec2 localPoints [b2_maxManifoldPoints]
     
    -b2Vec2 localNormal
     
    -b2Vec2 localPoint
     
    -int32 indexA
     
    -int32 indexB
     
    -float32 invMassA
     
    -float32 invMassB
     
    -b2Vec2 localCenterA
     
    -b2Vec2 localCenterB
     
    -float32 invIA
     
    -float32 invIB
     
    -b2Manifold::Type type
     
    -float32 radiusA
     
    -float32 radiusB
     
    -int32 pointCount
     
    -
    The documentation for this struct was generated from the following file:
      -
    • b2ContactSolver.cpp
    • -
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_contact_register-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_contact_register-members.html deleted file mode 100644 index f39a55b..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_contact_register-members.html +++ /dev/null @@ -1,104 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2ContactRegister Member List
    -
    -
    - -

    This is the complete list of members for b2ContactRegister, including all inherited members.

    - - - - -
    createFcn (defined in b2ContactRegister)b2ContactRegister
    destroyFcn (defined in b2ContactRegister)b2ContactRegister
    primary (defined in b2ContactRegister)b2ContactRegister
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_contact_register.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_contact_register.html deleted file mode 100644 index 0002a76..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_contact_register.html +++ /dev/null @@ -1,117 +0,0 @@ - - - - - - -Box2D: b2ContactRegister Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2ContactRegister Struct Reference
    -
    -
    - - - - - - - - -

    -Public Attributes

    -b2ContactCreateFcn * createFcn
     
    -b2ContactDestroyFcn * destroyFcn
     
    -bool primary
     
    -
    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_contact_solver_def-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_contact_solver_def-members.html deleted file mode 100644 index 5ee069b..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_contact_solver_def-members.html +++ /dev/null @@ -1,107 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2ContactSolverDef Member List
    -
    -
    - -

    This is the complete list of members for b2ContactSolverDef, including all inherited members.

    - - - - - - - -
    allocator (defined in b2ContactSolverDef)b2ContactSolverDef
    contacts (defined in b2ContactSolverDef)b2ContactSolverDef
    count (defined in b2ContactSolverDef)b2ContactSolverDef
    positions (defined in b2ContactSolverDef)b2ContactSolverDef
    step (defined in b2ContactSolverDef)b2ContactSolverDef
    velocities (defined in b2ContactSolverDef)b2ContactSolverDef
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_contact_solver_def.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_contact_solver_def.html deleted file mode 100644 index 8212d8c..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_contact_solver_def.html +++ /dev/null @@ -1,126 +0,0 @@ - - - - - - -Box2D: b2ContactSolverDef Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2ContactSolverDef Struct Reference
    -
    -
    - - - - - - - - - - - - - - -

    -Public Attributes

    -b2TimeStep step
     
    -b2Contact ** contacts
     
    -int32 count
     
    -b2Positionpositions
     
    -b2Velocityvelocities
     
    -b2StackAllocatorallocator
     
    -
    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_contact_velocity_constraint-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_contact_velocity_constraint-members.html deleted file mode 100644 index f068a14..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_contact_velocity_constraint-members.html +++ /dev/null @@ -1,116 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2ContactVelocityConstraint Member List
    -
    - - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_contact_velocity_constraint.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_contact_velocity_constraint.html deleted file mode 100644 index 1603399..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_contact_velocity_constraint.html +++ /dev/null @@ -1,153 +0,0 @@ - - - - - - -Box2D: b2ContactVelocityConstraint Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2ContactVelocityConstraint Struct Reference
    -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Attributes

    -b2VelocityConstraintPoint points [b2_maxManifoldPoints]
     
    -b2Vec2 normal
     
    -b2Mat22 normalMass
     
    -b2Mat22 K
     
    -int32 indexA
     
    -int32 indexB
     
    -float32 invMassA
     
    -float32 invMassB
     
    -float32 invIA
     
    -float32 invIB
     
    -float32 friction
     
    -float32 restitution
     
    -float32 tangentSpeed
     
    -int32 pointCount
     
    -int32 contactIndex
     
    -
    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_distance_input-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_distance_input-members.html deleted file mode 100644 index bdf6a90..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_distance_input-members.html +++ /dev/null @@ -1,106 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2DistanceInput Member List
    -
    -
    - -

    This is the complete list of members for b2DistanceInput, including all inherited members.

    - - - - - - -
    proxyA (defined in b2DistanceInput)b2DistanceInput
    proxyB (defined in b2DistanceInput)b2DistanceInput
    transformA (defined in b2DistanceInput)b2DistanceInput
    transformB (defined in b2DistanceInput)b2DistanceInput
    useRadii (defined in b2DistanceInput)b2DistanceInput
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_distance_input.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_distance_input.html deleted file mode 100644 index bf93e81..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_distance_input.html +++ /dev/null @@ -1,127 +0,0 @@ - - - - - - -Box2D: b2DistanceInput Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2DistanceInput Struct Reference
    -
    -
    - -

    #include <b2Distance.h>

    - - - - - - - - - - - - -

    -Public Attributes

    -b2DistanceProxy proxyA
     
    -b2DistanceProxy proxyB
     
    -b2Transform transformA
     
    -b2Transform transformB
     
    -bool useRadii
     
    -

    Detailed Description

    -

    Input for b2Distance. You have to option to use the shape radii in the computation. Even

    -

    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_distance_joint_def-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_distance_joint_def-members.html deleted file mode 100644 index 6c258b2..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_distance_joint_def-members.html +++ /dev/null @@ -1,114 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2DistanceJointDef Member List
    -
    -
    - -

    This is the complete list of members for b2DistanceJointDef, including all inherited members.

    - - - - - - - - - - - - - - -
    b2DistanceJointDef() (defined in b2DistanceJointDef)b2DistanceJointDefinline
    b2JointDef() (defined in b2JointDef)b2JointDefinline
    bodyAb2JointDef
    bodyBb2JointDef
    collideConnectedb2JointDef
    dampingRatiob2DistanceJointDef
    frequencyHzb2DistanceJointDef
    Initialize(b2Body *bodyA, b2Body *bodyB, const b2Vec2 &anchorA, const b2Vec2 &anchorB)b2DistanceJointDef
    lengthb2DistanceJointDef
    localAnchorAb2DistanceJointDef
    localAnchorBb2DistanceJointDef
    typeb2JointDef
    userDatab2JointDef
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_distance_joint_def.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_distance_joint_def.html deleted file mode 100644 index d261b40..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_distance_joint_def.html +++ /dev/null @@ -1,222 +0,0 @@ - - - - - - -Box2D: b2DistanceJointDef Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2DistanceJointDef Struct Reference
    -
    -
    - -

    #include <b2DistanceJoint.h>

    -
    -Inheritance diagram for b2DistanceJointDef:
    -
    -
    - - -b2JointDef - -
    - - - - -

    -Public Member Functions

    void Initialize (b2Body *bodyA, b2Body *bodyB, const b2Vec2 &anchorA, const b2Vec2 &anchorB)
     
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Attributes

    -b2Vec2 localAnchorA
     The local anchor point relative to bodyA's origin.
     
    -b2Vec2 localAnchorB
     The local anchor point relative to bodyB's origin.
     
    -float32 length
     The natural length between the anchor points.
     
    float32 frequencyHz
     
    -float32 dampingRatio
     The damping ratio. 0 = no damping, 1 = critical damping.
     
    - Public Attributes inherited from b2JointDef
    -b2JointType type
     The joint type is set automatically for concrete joint types.
     
    -void * userData
     Use this to attach application specific data to your joints.
     
    -b2BodybodyA
     The first attached body.
     
    -b2BodybodyB
     The second attached body.
     
    -bool collideConnected
     Set this flag to true if the attached bodies should collide.
     
    -

    Detailed Description

    -

    Distance joint definition. This requires defining an anchor point on both bodies and the non-zero length of the distance joint. The definition uses local anchor points so that the initial configuration can violate the constraint slightly. This helps when saving and loading a game.

    -
    Warning
    Do not use a zero or short length.
    -

    Member Function Documentation

    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    void b2DistanceJointDef::Initialize (b2BodybodyA,
    b2BodybodyB,
    const b2Vec2anchorA,
    const b2Vec2anchorB 
    )
    -
    -

    Initialize the bodies, anchors, and length using the world anchors.

    - -
    -
    -

    Member Data Documentation

    - -
    -
    - - - - -
    float32 b2DistanceJointDef::frequencyHz
    -
    -

    The mass-spring-damper frequency in Hertz. A value of 0 disables softness.

    - -
    -
    -
    The documentation for this struct was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_distance_joint_def.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_distance_joint_def.png deleted file mode 100644 index 5503b1f..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_distance_joint_def.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_distance_output-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_distance_output-members.html deleted file mode 100644 index 1a4c03e..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_distance_output-members.html +++ /dev/null @@ -1,105 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2DistanceOutput Member List
    -
    -
    - -

    This is the complete list of members for b2DistanceOutput, including all inherited members.

    - - - - - -
    distance (defined in b2DistanceOutput)b2DistanceOutput
    iterationsb2DistanceOutput
    pointAb2DistanceOutput
    pointBb2DistanceOutput
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_distance_output.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_distance_output.html deleted file mode 100644 index 7ffca1a..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_distance_output.html +++ /dev/null @@ -1,130 +0,0 @@ - - - - - - -Box2D: b2DistanceOutput Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2DistanceOutput Struct Reference
    -
    -
    - -

    Output for b2Distance. - More...

    - -

    #include <b2Distance.h>

    - - - - - - - - - - - - - -

    -Public Attributes

    -b2Vec2 pointA
     closest point on shapeA
     
    -b2Vec2 pointB
     closest point on shapeB
     
    -float32 distance
     
    -int32 iterations
     number of GJK iterations used
     
    -

    Detailed Description

    -

    Output for b2Distance.

    -

    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_distance_proxy-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_distance_proxy-members.html deleted file mode 100644 index 82391e5..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_distance_proxy-members.html +++ /dev/null @@ -1,111 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2DistanceProxy Member List
    -
    -
    - -

    This is the complete list of members for b2DistanceProxy, including all inherited members.

    - - - - - - - - - - - -
    b2DistanceProxy() (defined in b2DistanceProxy)b2DistanceProxyinline
    GetSupport(const b2Vec2 &d) const b2DistanceProxyinline
    GetSupportVertex(const b2Vec2 &d) const b2DistanceProxyinline
    GetVertex(int32 index) const b2DistanceProxyinline
    GetVertexCount() const b2DistanceProxyinline
    m_buffer (defined in b2DistanceProxy)b2DistanceProxy
    m_count (defined in b2DistanceProxy)b2DistanceProxy
    m_radius (defined in b2DistanceProxy)b2DistanceProxy
    m_vertices (defined in b2DistanceProxy)b2DistanceProxy
    Set(const b2Shape *shape, int32 index)b2DistanceProxy
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_distance_proxy.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_distance_proxy.html deleted file mode 100644 index f090409..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_distance_proxy.html +++ /dev/null @@ -1,175 +0,0 @@ - - - - - - -Box2D: b2DistanceProxy Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2DistanceProxy Struct Reference
    -
    -
    - -

    #include <b2Distance.h>

    - - - - - - - - - - - - - - - - -

    -Public Member Functions

    void Set (const b2Shape *shape, int32 index)
     
    -int32 GetSupport (const b2Vec2 &d) const
     Get the supporting vertex index in the given direction.
     
    -const b2Vec2GetSupportVertex (const b2Vec2 &d) const
     Get the supporting vertex in the given direction.
     
    -int32 GetVertexCount () const
     Get the vertex count.
     
    -const b2Vec2GetVertex (int32 index) const
     Get a vertex by index. Used by b2Distance.
     
    - - - - - - - - - -

    -Public Attributes

    -b2Vec2 m_buffer [2]
     
    -const b2Vec2m_vertices
     
    -int32 m_count
     
    -float32 m_radius
     
    -

    Detailed Description

    -

    A distance proxy is used by the GJK algorithm. It encapsulates any shape.

    -

    Member Function Documentation

    - -
    -
    - - - - - - - - - - - - - - - - - - -
    void b2DistanceProxy::Set (const b2Shapeshape,
    int32 index 
    )
    -
    -

    Initialize the proxy using the given shape. The shape must remain in scope while the proxy is in use.

    - -
    -
    -
    The documentation for this struct was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_e_p_axis-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_e_p_axis-members.html deleted file mode 100644 index 22cbaa0..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_e_p_axis-members.html +++ /dev/null @@ -1,108 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2EPAxis Member List
    -
    -
    - -

    This is the complete list of members for b2EPAxis, including all inherited members.

    - - - - - - - - -
    e_edgeA enum value (defined in b2EPAxis)b2EPAxis
    e_edgeB enum value (defined in b2EPAxis)b2EPAxis
    e_unknown enum value (defined in b2EPAxis)b2EPAxis
    index (defined in b2EPAxis)b2EPAxis
    separation (defined in b2EPAxis)b2EPAxis
    Type enum name (defined in b2EPAxis)b2EPAxis
    type (defined in b2EPAxis)b2EPAxis
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_e_p_axis.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_e_p_axis.html deleted file mode 100644 index bfff204..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_e_p_axis.html +++ /dev/null @@ -1,126 +0,0 @@ - - - - - - -Box2D: b2EPAxis Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2EPAxis Struct Reference
    -
    -
    - - - - -

    -Public Types

    enum  Type { e_unknown, -e_edgeA, -e_edgeB - }
     
    - - - - - - - -

    -Public Attributes

    -Type type
     
    -int32 index
     
    -float32 separation
     
    -
    The documentation for this struct was generated from the following file:
      -
    • b2CollideEdge.cpp
    • -
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_e_p_collider-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_e_p_collider-members.html deleted file mode 100644 index de92c8e..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_e_p_collider-members.html +++ /dev/null @@ -1,125 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2EPCollider Member List
    -
    -
    - -

    This is the complete list of members for b2EPCollider, including all inherited members.

    - - - - - - - - - - - - - - - - - - - - - - - - - -
    Collide(b2Manifold *manifold, const b2EdgeShape *edgeA, const b2Transform &xfA, const b2PolygonShape *polygonB, const b2Transform &xfB) (defined in b2EPCollider)b2EPCollider
    ComputeEdgeSeparation() (defined in b2EPCollider)b2EPCollider
    ComputePolygonSeparation() (defined in b2EPCollider)b2EPCollider
    e_concave enum value (defined in b2EPCollider)b2EPCollider
    e_convex enum value (defined in b2EPCollider)b2EPCollider
    e_isolated enum value (defined in b2EPCollider)b2EPCollider
    m_centroidB (defined in b2EPCollider)b2EPCollider
    m_front (defined in b2EPCollider)b2EPCollider
    m_lowerLimit (defined in b2EPCollider)b2EPCollider
    m_normal (defined in b2EPCollider)b2EPCollider
    m_normal0 (defined in b2EPCollider)b2EPCollider
    m_normal1 (defined in b2EPCollider)b2EPCollider
    m_normal2 (defined in b2EPCollider)b2EPCollider
    m_polygonB (defined in b2EPCollider)b2EPCollider
    m_radius (defined in b2EPCollider)b2EPCollider
    m_type1 (defined in b2EPCollider)b2EPCollider
    m_type2 (defined in b2EPCollider)b2EPCollider
    m_upperLimit (defined in b2EPCollider)b2EPCollider
    m_v0 (defined in b2EPCollider)b2EPCollider
    m_v1 (defined in b2EPCollider)b2EPCollider
    m_v2 (defined in b2EPCollider)b2EPCollider
    m_v3 (defined in b2EPCollider)b2EPCollider
    m_xf (defined in b2EPCollider)b2EPCollider
    VertexType enum name (defined in b2EPCollider)b2EPCollider
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_e_p_collider.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_e_p_collider.html deleted file mode 100644 index 292882e..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_e_p_collider.html +++ /dev/null @@ -1,181 +0,0 @@ - - - - - - -Box2D: b2EPCollider Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2EPCollider Struct Reference
    -
    -
    - - - - -

    -Public Types

    enum  VertexType { e_isolated, -e_concave, -e_convex - }
     
    - - - - - - - -

    -Public Member Functions

    -void Collide (b2Manifold *manifold, const b2EdgeShape *edgeA, const b2Transform &xfA, const b2PolygonShape *polygonB, const b2Transform &xfB)
     
    -b2EPAxis ComputeEdgeSeparation ()
     
    -b2EPAxis ComputePolygonSeparation ()
     
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Attributes

    -b2TempPolygon m_polygonB
     
    -b2Transform m_xf
     
    -b2Vec2 m_centroidB
     
    -b2Vec2 m_v0
     
    -b2Vec2 m_v1
     
    -b2Vec2 m_v2
     
    -b2Vec2 m_v3
     
    -b2Vec2 m_normal0
     
    -b2Vec2 m_normal1
     
    -b2Vec2 m_normal2
     
    -b2Vec2 m_normal
     
    -VertexType m_type1
     
    -VertexType m_type2
     
    -b2Vec2 m_lowerLimit
     
    -b2Vec2 m_upperLimit
     
    -float32 m_radius
     
    -bool m_front
     
    -
    The documentation for this struct was generated from the following file:
      -
    • b2CollideEdge.cpp
    • -
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_filter-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_filter-members.html deleted file mode 100644 index b7b5851..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_filter-members.html +++ /dev/null @@ -1,105 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2Filter Member List
    -
    -
    - -

    This is the complete list of members for b2Filter, including all inherited members.

    - - - - - -
    b2Filter() (defined in b2Filter)b2Filterinline
    categoryBitsb2Filter
    groupIndexb2Filter
    maskBitsb2Filter
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_filter.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_filter.html deleted file mode 100644 index 067d827..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_filter.html +++ /dev/null @@ -1,150 +0,0 @@ - - - - - - -Box2D: b2Filter Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2Filter Struct Reference
    -
    -
    - -

    This holds contact filtering data. - More...

    - -

    #include <b2Fixture.h>

    - - - - - - - - - -

    -Public Attributes

    -uint16 categoryBits
     The collision category bits. Normally you would just set one bit.
     
    uint16 maskBits
     
    int16 groupIndex
     
    -

    Detailed Description

    -

    This holds contact filtering data.

    -

    Member Data Documentation

    - -
    -
    - - - - -
    int16 b2Filter::groupIndex
    -
    -

    Collision groups allow a certain group of objects to never collide (negative) or always collide (positive). Zero means no collision group. Non-zero group filtering always wins against the mask bits.

    - -
    -
    - -
    -
    - - - - -
    uint16 b2Filter::maskBits
    -
    -

    The collision mask bits. This states the categories that this shape would accept for collision.

    - -
    -
    -
    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_fixture_def-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_fixture_def-members.html deleted file mode 100644 index 54eab16..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_fixture_def-members.html +++ /dev/null @@ -1,109 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2FixtureDef Member List
    -
    - - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_fixture_def.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_fixture_def.html deleted file mode 100644 index 7a31045..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_fixture_def.html +++ /dev/null @@ -1,171 +0,0 @@ - - - - - - -Box2D: b2FixtureDef Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2FixtureDef Struct Reference
    -
    -
    - -

    #include <b2Fixture.h>

    - - - - - -

    -Public Member Functions

    b2FixtureDef ()
     The constructor sets the default fixture definition values.
     
    - - - - - - - - - - - - - - - - - - - - -

    -Public Attributes

    const b2Shapeshape
     
    -void * userData
     Use this to store application specific fixture data.
     
    -float32 friction
     The friction coefficient, usually in the range [0,1].
     
    -float32 restitution
     The restitution (elasticity) usually in the range [0,1].
     
    -float32 density
     The density, usually in kg/m^2.
     
    bool isSensor
     
    -b2Filter filter
     Contact filtering data.
     
    -

    Detailed Description

    -

    A fixture definition is used to create a fixture. This class defines an abstract fixture definition. You can reuse fixture definitions safely.

    -

    Member Data Documentation

    - -
    -
    - - - - -
    bool b2FixtureDef::isSensor
    -
    -

    A sensor shape collects contact information but never generates a collision response.

    - -
    -
    - -
    -
    - - - - -
    const b2Shape* b2FixtureDef::shape
    -
    -

    The shape, this must be set. The shape will be cloned, so you can create the shape on the stack.

    - -
    -
    -
    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_fixture_proxy-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_fixture_proxy-members.html deleted file mode 100644 index b1ffbd3..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_fixture_proxy-members.html +++ /dev/null @@ -1,105 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2FixtureProxy Member List
    -
    -
    - -

    This is the complete list of members for b2FixtureProxy, including all inherited members.

    - - - - - -
    aabb (defined in b2FixtureProxy)b2FixtureProxy
    childIndex (defined in b2FixtureProxy)b2FixtureProxy
    fixture (defined in b2FixtureProxy)b2FixtureProxy
    proxyId (defined in b2FixtureProxy)b2FixtureProxy
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_fixture_proxy.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_fixture_proxy.html deleted file mode 100644 index 7391f2b..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_fixture_proxy.html +++ /dev/null @@ -1,127 +0,0 @@ - - - - - - -Box2D: b2FixtureProxy Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2FixtureProxy Struct Reference
    -
    -
    - -

    This proxy is used internally to connect fixtures to the broad-phase. - More...

    - -

    #include <b2Fixture.h>

    - - - - - - - - - - -

    -Public Attributes

    -b2AABB aabb
     
    -b2Fixturefixture
     
    -int32 childIndex
     
    -int32 proxyId
     
    -

    Detailed Description

    -

    This proxy is used internally to connect fixtures to the broad-phase.

    -

    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_friction_joint_def-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_friction_joint_def-members.html deleted file mode 100644 index 42352ff..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_friction_joint_def-members.html +++ /dev/null @@ -1,113 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2FrictionJointDef Member List
    -
    -
    - -

    This is the complete list of members for b2FrictionJointDef, including all inherited members.

    - - - - - - - - - - - - - -
    b2FrictionJointDef() (defined in b2FrictionJointDef)b2FrictionJointDefinline
    b2JointDef() (defined in b2JointDef)b2JointDefinline
    bodyAb2JointDef
    bodyBb2JointDef
    collideConnectedb2JointDef
    Initialize(b2Body *bodyA, b2Body *bodyB, const b2Vec2 &anchor)b2FrictionJointDef
    localAnchorAb2FrictionJointDef
    localAnchorBb2FrictionJointDef
    maxForceb2FrictionJointDef
    maxTorqueb2FrictionJointDef
    typeb2JointDef
    userDatab2JointDef
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_friction_joint_def.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_friction_joint_def.html deleted file mode 100644 index 1323ee5..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_friction_joint_def.html +++ /dev/null @@ -1,202 +0,0 @@ - - - - - - -Box2D: b2FrictionJointDef Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2FrictionJointDef Struct Reference
    -
    -
    - -

    Friction joint definition. - More...

    - -

    #include <b2FrictionJoint.h>

    -
    -Inheritance diagram for b2FrictionJointDef:
    -
    -
    - - -b2JointDef - -
    - - - - -

    -Public Member Functions

    void Initialize (b2Body *bodyA, b2Body *bodyB, const b2Vec2 &anchor)
     
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Attributes

    -b2Vec2 localAnchorA
     The local anchor point relative to bodyA's origin.
     
    -b2Vec2 localAnchorB
     The local anchor point relative to bodyB's origin.
     
    -float32 maxForce
     The maximum friction force in N.
     
    -float32 maxTorque
     The maximum friction torque in N-m.
     
    - Public Attributes inherited from b2JointDef
    -b2JointType type
     The joint type is set automatically for concrete joint types.
     
    -void * userData
     Use this to attach application specific data to your joints.
     
    -b2BodybodyA
     The first attached body.
     
    -b2BodybodyB
     The second attached body.
     
    -bool collideConnected
     Set this flag to true if the attached bodies should collide.
     
    -

    Detailed Description

    -

    Friction joint definition.

    -

    Member Function Documentation

    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    void b2FrictionJointDef::Initialize (b2BodybodyA,
    b2BodybodyB,
    const b2Vec2anchor 
    )
    -
    -

    Initialize the bodies, anchors, axis, and reference angle using the world anchor and world axis.

    - -
    -
    -
    The documentation for this struct was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_friction_joint_def.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_friction_joint_def.png deleted file mode 100644 index f29c54c..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_friction_joint_def.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_gear_joint_def-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_gear_joint_def-members.html deleted file mode 100644 index 44550b1..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_gear_joint_def-members.html +++ /dev/null @@ -1,111 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2GearJointDef Member List
    -
    -
    - -

    This is the complete list of members for b2GearJointDef, including all inherited members.

    - - - - - - - - - - - -
    b2GearJointDef() (defined in b2GearJointDef)b2GearJointDefinline
    b2JointDef() (defined in b2JointDef)b2JointDefinline
    bodyAb2JointDef
    bodyBb2JointDef
    collideConnectedb2JointDef
    joint1b2GearJointDef
    joint2b2GearJointDef
    ratiob2GearJointDef
    typeb2JointDef
    userDatab2JointDef
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_gear_joint_def.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_gear_joint_def.html deleted file mode 100644 index ce16360..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_gear_joint_def.html +++ /dev/null @@ -1,167 +0,0 @@ - - - - - - -Box2D: b2GearJointDef Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2GearJointDef Struct Reference
    -
    -
    - -

    #include <b2GearJoint.h>

    -
    -Inheritance diagram for b2GearJointDef:
    -
    -
    - - -b2JointDef - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Attributes

    -b2Jointjoint1
     The first revolute/prismatic joint attached to the gear joint.
     
    -b2Jointjoint2
     The second revolute/prismatic joint attached to the gear joint.
     
    float32 ratio
     
    - Public Attributes inherited from b2JointDef
    -b2JointType type
     The joint type is set automatically for concrete joint types.
     
    -void * userData
     Use this to attach application specific data to your joints.
     
    -b2BodybodyA
     The first attached body.
     
    -b2BodybodyB
     The second attached body.
     
    -bool collideConnected
     Set this flag to true if the attached bodies should collide.
     
    -

    Detailed Description

    -

    Gear joint definition. This definition requires two existing revolute or prismatic joints (any combination will work).

    -

    Member Data Documentation

    - -
    -
    - - - - -
    float32 b2GearJointDef::ratio
    -
    -

    The gear ratio.

    -
    See Also
    b2GearJoint for explanation.
    - -
    -
    -
    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_gear_joint_def.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_gear_joint_def.png deleted file mode 100644 index dab484a..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_gear_joint_def.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_jacobian-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_jacobian-members.html deleted file mode 100644 index 17068d2..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_jacobian-members.html +++ /dev/null @@ -1,104 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2Jacobian Member List
    -
    -
    - -

    This is the complete list of members for b2Jacobian, including all inherited members.

    - - - - -
    angularA (defined in b2Jacobian)b2Jacobian
    angularB (defined in b2Jacobian)b2Jacobian
    linear (defined in b2Jacobian)b2Jacobian
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_jacobian.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_jacobian.html deleted file mode 100644 index eefcd86..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_jacobian.html +++ /dev/null @@ -1,117 +0,0 @@ - - - - - - -Box2D: b2Jacobian Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2Jacobian Struct Reference
    -
    -
    - - - - - - - - -

    -Public Attributes

    -b2Vec2 linear
     
    -float32 angularA
     
    -float32 angularB
     
    -
    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_joint_def-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_joint_def-members.html deleted file mode 100644 index 17c9554..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_joint_def-members.html +++ /dev/null @@ -1,107 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2JointDef Member List
    -
    -
    - -

    This is the complete list of members for b2JointDef, including all inherited members.

    - - - - - - - -
    b2JointDef() (defined in b2JointDef)b2JointDefinline
    bodyAb2JointDef
    bodyBb2JointDef
    collideConnectedb2JointDef
    typeb2JointDef
    userDatab2JointDef
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_joint_def.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_joint_def.html deleted file mode 100644 index 6834fda..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_joint_def.html +++ /dev/null @@ -1,154 +0,0 @@ - - - - - - -Box2D: b2JointDef Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2JointDef Struct Reference
    -
    -
    - -

    Joint definitions are used to construct joints. - More...

    - -

    #include <b2Joint.h>

    -
    -Inheritance diagram for b2JointDef:
    -
    -
    - - -b2DistanceJointDef -b2FrictionJointDef -b2GearJointDef -b2MotorJointDef -b2MouseJointDef -b2PrismaticJointDef -b2PulleyJointDef -b2RevoluteJointDef -b2RopeJointDef -b2WeldJointDef -b2WheelJointDef - -
    - - - - - - - - - - - - - - - - - -

    -Public Attributes

    -b2JointType type
     The joint type is set automatically for concrete joint types.
     
    -void * userData
     Use this to attach application specific data to your joints.
     
    -b2BodybodyA
     The first attached body.
     
    -b2BodybodyB
     The second attached body.
     
    -bool collideConnected
     Set this flag to true if the attached bodies should collide.
     
    -

    Detailed Description

    -

    Joint definitions are used to construct joints.

    -

    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_joint_def.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_joint_def.png deleted file mode 100644 index 2063afa..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_joint_def.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_joint_edge-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_joint_edge-members.html deleted file mode 100644 index f88b6dc..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_joint_edge-members.html +++ /dev/null @@ -1,105 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2JointEdge Member List
    -
    -
    - -

    This is the complete list of members for b2JointEdge, including all inherited members.

    - - - - - -
    jointb2JointEdge
    nextb2JointEdge
    otherb2JointEdge
    prevb2JointEdge
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_joint_edge.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_joint_edge.html deleted file mode 100644 index 0dda18d..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_joint_edge.html +++ /dev/null @@ -1,128 +0,0 @@ - - - - - - -Box2D: b2JointEdge Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2JointEdge Struct Reference
    -
    -
    - -

    #include <b2Joint.h>

    - - - - - - - - - - - - - - -

    -Public Attributes

    -b2Bodyother
     provides quick access to the other body attached.
     
    -b2Jointjoint
     the joint
     
    -b2JointEdgeprev
     the previous joint edge in the body's joint list
     
    -b2JointEdgenext
     the next joint edge in the body's joint list
     
    -

    Detailed Description

    -

    A joint edge is used to connect bodies and joints together in a joint graph where each body is a node and each joint is an edge. A joint edge belongs to a doubly linked list maintained in each attached body. Each joint has two joint nodes, one for each attached body.

    -

    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_manifold-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_manifold-members.html deleted file mode 100644 index e3d065f..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_manifold-members.html +++ /dev/null @@ -1,110 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2Manifold Member List
    -
    -
    - -

    This is the complete list of members for b2Manifold, including all inherited members.

    - - - - - - - - - - -
    e_circles enum value (defined in b2Manifold)b2Manifold
    e_faceA enum value (defined in b2Manifold)b2Manifold
    e_faceB enum value (defined in b2Manifold)b2Manifold
    localNormalb2Manifold
    localPointb2Manifold
    pointCountb2Manifold
    pointsb2Manifold
    type (defined in b2Manifold)b2Manifold
    Type enum name (defined in b2Manifold)b2Manifold
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_manifold.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_manifold.html deleted file mode 100644 index 371d01a..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_manifold.html +++ /dev/null @@ -1,144 +0,0 @@ - - - - - - -Box2D: b2Manifold Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2Manifold Struct Reference
    -
    -
    - -

    #include <b2Collision.h>

    - - - - -

    -Public Types

    enum  Type { e_circles, -e_faceA, -e_faceB - }
     
    - - - - - - - - - - - - - - - -

    -Public Attributes

    -b2ManifoldPoint points [b2_maxManifoldPoints]
     the points of contact
     
    -b2Vec2 localNormal
     not use for Type::e_points
     
    -b2Vec2 localPoint
     usage depends on manifold type
     
    -Type type
     
    -int32 pointCount
     the number of manifold points
     
    -

    Detailed Description

    -

    A manifold for two touching convex shapes. Box2D supports multiple types of contact:

    -
      -
    • clip point versus plane with radius
    • -
    • point versus point with radius (circles) The local point usage depends on the manifold type: -e_circles: the local center of circleA -e_faceA: the center of faceA -e_faceB: the center of faceB Similarly the local normal usage: -e_circles: not used -e_faceA: the normal on polygonA -e_faceB: the normal on polygonB We store contacts in this way so that position correction can account for movement, which is critical for continuous physics. All contact scenarios must be expressed in one of these types. This structure is stored across time steps, so we keep it small.
    • -
    -

    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_manifold_point-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_manifold_point-members.html deleted file mode 100644 index a450ae1..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_manifold_point-members.html +++ /dev/null @@ -1,105 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2ManifoldPoint Member List
    -
    -
    - -

    This is the complete list of members for b2ManifoldPoint, including all inherited members.

    - - - - - -
    idb2ManifoldPoint
    localPointb2ManifoldPoint
    normalImpulseb2ManifoldPoint
    tangentImpulseb2ManifoldPoint
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_manifold_point.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_manifold_point.html deleted file mode 100644 index 0f0fbd1..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_manifold_point.html +++ /dev/null @@ -1,128 +0,0 @@ - - - - - - -Box2D: b2ManifoldPoint Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2ManifoldPoint Struct Reference
    -
    -
    - -

    #include <b2Collision.h>

    - - - - - - - - - - - - - - -

    -Public Attributes

    -b2Vec2 localPoint
     usage depends on manifold type
     
    -float32 normalImpulse
     the non-penetration impulse
     
    -float32 tangentImpulse
     the friction impulse
     
    -b2ContactID id
     uniquely identifies a contact point between two shapes
     
    -

    Detailed Description

    -

    A manifold point is a contact point belonging to a contact manifold. It holds details related to the geometry and dynamics of the contact points. The local point usage depends on the manifold type: -e_circles: the local center of circleB -e_faceA: the local center of cirlceB or the clip point of polygonB -e_faceB: the clip point of polygonA This structure is stored across time steps, so we keep it small. Note: the impulses are used for internal caching and may not provide reliable contact forces, especially for high speed collisions.

    -

    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_mass_data-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_mass_data-members.html deleted file mode 100644 index 8a362a6..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_mass_data-members.html +++ /dev/null @@ -1,104 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2MassData Member List
    -
    -
    - -

    This is the complete list of members for b2MassData, including all inherited members.

    - - - - -
    centerb2MassData
    Ib2MassData
    massb2MassData
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_mass_data.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_mass_data.html deleted file mode 100644 index d4adcda..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_mass_data.html +++ /dev/null @@ -1,127 +0,0 @@ - - - - - - -Box2D: b2MassData Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2MassData Struct Reference
    -
    -
    - -

    This holds the mass data computed for a shape. - More...

    - -

    #include <b2Shape.h>

    - - - - - - - - - - - -

    -Public Attributes

    -float32 mass
     The mass of the shape, usually in kilograms.
     
    -b2Vec2 center
     The position of the shape's centroid relative to the shape's origin.
     
    -float32 I
     The rotational inertia of the shape about the local origin.
     
    -

    Detailed Description

    -

    This holds the mass data computed for a shape.

    -

    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_mat22-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_mat22-members.html deleted file mode 100644 index 49f638a..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_mat22-members.html +++ /dev/null @@ -1,111 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2Mat22 Member List
    -
    -
    - -

    This is the complete list of members for b2Mat22, including all inherited members.

    - - - - - - - - - - - -
    b2Mat22()b2Mat22inline
    b2Mat22(const b2Vec2 &c1, const b2Vec2 &c2)b2Mat22inline
    b2Mat22(float32 a11, float32 a12, float32 a21, float32 a22)b2Mat22inline
    ex (defined in b2Mat22)b2Mat22
    ey (defined in b2Mat22)b2Mat22
    GetInverse() const (defined in b2Mat22)b2Mat22inline
    Set(const b2Vec2 &c1, const b2Vec2 &c2)b2Mat22inline
    SetIdentity()b2Mat22inline
    SetZero()b2Mat22inline
    Solve(const b2Vec2 &b) const b2Mat22inline
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_mat22.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_mat22.html deleted file mode 100644 index 51a4908..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_mat22.html +++ /dev/null @@ -1,180 +0,0 @@ - - - - - - -Box2D: b2Mat22 Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2Mat22 Struct Reference
    -
    -
    - -

    A 2-by-2 matrix. Stored in column-major order. - More...

    - -

    #include <b2Math.h>

    - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Member Functions

    b2Mat22 ()
     The default constructor does nothing (for performance).
     
    b2Mat22 (const b2Vec2 &c1, const b2Vec2 &c2)
     Construct this matrix using columns.
     
    b2Mat22 (float32 a11, float32 a12, float32 a21, float32 a22)
     Construct this matrix using scalars.
     
    -void Set (const b2Vec2 &c1, const b2Vec2 &c2)
     Initialize this matrix using columns.
     
    -void SetIdentity ()
     Set this to the identity matrix.
     
    -void SetZero ()
     Set this matrix to all zeros.
     
    -b2Mat22 GetInverse () const
     
    b2Vec2 Solve (const b2Vec2 &b) const
     
    - - - - - -

    -Public Attributes

    -b2Vec2 ex
     
    -b2Vec2 ey
     
    -

    Detailed Description

    -

    A 2-by-2 matrix. Stored in column-major order.

    -

    Member Function Documentation

    - -
    -
    - - - - - -
    - - - - - - - - -
    b2Vec2 b2Mat22::Solve (const b2Vec2b) const
    -
    -inline
    -
    -

    Solve A * x = b, where b is a column vector. This is more efficient than computing the inverse in one-shot cases.

    - -
    -
    -
    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_mat33-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_mat33-members.html deleted file mode 100644 index 46af0eb..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_mat33-members.html +++ /dev/null @@ -1,111 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2Mat33 Member List
    -
    -
    - -

    This is the complete list of members for b2Mat33, including all inherited members.

    - - - - - - - - - - - -
    b2Mat33()b2Mat33inline
    b2Mat33(const b2Vec3 &c1, const b2Vec3 &c2, const b2Vec3 &c3)b2Mat33inline
    ex (defined in b2Mat33)b2Mat33
    ey (defined in b2Mat33)b2Mat33
    ez (defined in b2Mat33)b2Mat33
    GetInverse22(b2Mat33 *M) const b2Mat33
    GetSymInverse33(b2Mat33 *M) const b2Mat33
    SetZero()b2Mat33inline
    Solve22(const b2Vec2 &b) const b2Mat33
    Solve33(const b2Vec3 &b) const b2Mat33
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_mat33.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_mat33.html deleted file mode 100644 index affa148..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_mat33.html +++ /dev/null @@ -1,222 +0,0 @@ - - - - - - -Box2D: b2Mat33 Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2Mat33 Struct Reference
    -
    -
    - -

    A 3-by-3 matrix. Stored in column-major order. - More...

    - -

    #include <b2Math.h>

    - - - - - - - - - - - - - - - - - - - - -

    -Public Member Functions

    b2Mat33 ()
     The default constructor does nothing (for performance).
     
    b2Mat33 (const b2Vec3 &c1, const b2Vec3 &c2, const b2Vec3 &c3)
     Construct this matrix using columns.
     
    -void SetZero ()
     Set this matrix to all zeros.
     
    b2Vec3 Solve33 (const b2Vec3 &b) const
     
    b2Vec2 Solve22 (const b2Vec2 &b) const
     
    void GetInverse22 (b2Mat33 *M) const
     
    void GetSymInverse33 (b2Mat33 *M) const
     Returns the zero matrix if singular. More...
     
    - - - - - - - -

    -Public Attributes

    -b2Vec3 ex
     
    -b2Vec3 ey
     
    -b2Vec3 ez
     
    -

    Detailed Description

    -

    A 3-by-3 matrix. Stored in column-major order.

    -

    Member Function Documentation

    - -
    -
    - - - - - - - - -
    void b2Mat33::GetInverse22 (b2Mat33M) const
    -
    -

    Get the inverse of this matrix as a 2-by-2. Returns the zero matrix if singular.

    - -
    -
    - -
    -
    - - - - - - - - -
    void b2Mat33::GetSymInverse33 (b2Mat33M) const
    -
    - -

    Returns the zero matrix if singular.

    -

    Get the symmetric inverse of this matrix as a 3-by-3. Returns the zero matrix if singular.

    - -
    -
    - -
    -
    - - - - - - - - -
    b2Vec2 b2Mat33::Solve22 (const b2Vec2b) const
    -
    -

    Solve A * x = b, where b is a column vector. This is more efficient than computing the inverse in one-shot cases. Solve only the upper 2-by-2 matrix equation.

    -

    Solve A * x = b, where b is a column vector. This is more efficient than computing the inverse in one-shot cases.

    - -
    -
    - -
    -
    - - - - - - - - -
    b2Vec3 b2Mat33::Solve33 (const b2Vec3b) const
    -
    -

    Solve A * x = b, where b is a column vector. This is more efficient than computing the inverse in one-shot cases.

    - -
    -
    -
    The documentation for this struct was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_motor_joint_def-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_motor_joint_def-members.html deleted file mode 100644 index 30ea939..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_motor_joint_def-members.html +++ /dev/null @@ -1,114 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2MotorJointDef Member List
    -
    -
    - -

    This is the complete list of members for b2MotorJointDef, including all inherited members.

    - - - - - - - - - - - - - - -
    angularOffsetb2MotorJointDef
    b2JointDef() (defined in b2JointDef)b2JointDefinline
    b2MotorJointDef() (defined in b2MotorJointDef)b2MotorJointDefinline
    bodyAb2JointDef
    bodyBb2JointDef
    collideConnectedb2JointDef
    correctionFactorb2MotorJointDef
    Initialize(b2Body *bodyA, b2Body *bodyB)b2MotorJointDef
    linearOffsetb2MotorJointDef
    maxForceb2MotorJointDef
    maxTorqueb2MotorJointDef
    typeb2JointDef
    userDatab2JointDef
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_motor_joint_def.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_motor_joint_def.html deleted file mode 100644 index 56d4b04..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_motor_joint_def.html +++ /dev/null @@ -1,174 +0,0 @@ - - - - - - -Box2D: b2MotorJointDef Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2MotorJointDef Struct Reference
    -
    -
    - -

    Motor joint definition. - More...

    - -

    #include <b2MotorJoint.h>

    -
    -Inheritance diagram for b2MotorJointDef:
    -
    -
    - - -b2JointDef - -
    - - - - - -

    -Public Member Functions

    -void Initialize (b2Body *bodyA, b2Body *bodyB)
     Initialize the bodies and offsets using the current transforms.
     
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Attributes

    -b2Vec2 linearOffset
     Position of bodyB minus the position of bodyA, in bodyA's frame, in meters.
     
    -float32 angularOffset
     The bodyB angle minus bodyA angle in radians.
     
    -float32 maxForce
     The maximum motor force in N.
     
    -float32 maxTorque
     The maximum motor torque in N-m.
     
    -float32 correctionFactor
     Position correction factor in the range [0,1].
     
    - Public Attributes inherited from b2JointDef
    -b2JointType type
     The joint type is set automatically for concrete joint types.
     
    -void * userData
     Use this to attach application specific data to your joints.
     
    -b2BodybodyA
     The first attached body.
     
    -b2BodybodyB
     The second attached body.
     
    -bool collideConnected
     Set this flag to true if the attached bodies should collide.
     
    -

    Detailed Description

    -

    Motor joint definition.

    -

    The documentation for this struct was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_motor_joint_def.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_motor_joint_def.png deleted file mode 100644 index a039449..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_motor_joint_def.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_mouse_joint_def-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_mouse_joint_def-members.html deleted file mode 100644 index 746d504..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_mouse_joint_def-members.html +++ /dev/null @@ -1,112 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2MouseJointDef Member List
    -
    -
    - -

    This is the complete list of members for b2MouseJointDef, including all inherited members.

    - - - - - - - - - - - - -
    b2JointDef() (defined in b2JointDef)b2JointDefinline
    b2MouseJointDef() (defined in b2MouseJointDef)b2MouseJointDefinline
    bodyAb2JointDef
    bodyBb2JointDef
    collideConnectedb2JointDef
    dampingRatiob2MouseJointDef
    frequencyHzb2MouseJointDef
    maxForceb2MouseJointDef
    targetb2MouseJointDef
    typeb2JointDef
    userDatab2JointDef
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_mouse_joint_def.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_mouse_joint_def.html deleted file mode 100644 index fee37fb..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_mouse_joint_def.html +++ /dev/null @@ -1,181 +0,0 @@ - - - - - - -Box2D: b2MouseJointDef Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2MouseJointDef Struct Reference
    -
    -
    - -

    #include <b2MouseJoint.h>

    -
    -Inheritance diagram for b2MouseJointDef:
    -
    -
    - - -b2JointDef - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Attributes

    b2Vec2 target
     
    float32 maxForce
     
    -float32 frequencyHz
     The response speed.
     
    -float32 dampingRatio
     The damping ratio. 0 = no damping, 1 = critical damping.
     
    - Public Attributes inherited from b2JointDef
    -b2JointType type
     The joint type is set automatically for concrete joint types.
     
    -void * userData
     Use this to attach application specific data to your joints.
     
    -b2BodybodyA
     The first attached body.
     
    -b2BodybodyB
     The second attached body.
     
    -bool collideConnected
     Set this flag to true if the attached bodies should collide.
     
    -

    Detailed Description

    -

    Mouse joint definition. This requires a world target point, tuning parameters, and the time step.

    -

    Member Data Documentation

    - -
    -
    - - - - -
    float32 b2MouseJointDef::maxForce
    -
    -

    The maximum constraint force that can be exerted to move the candidate body. Usually you will express as some multiple of the weight (multiplier * mass * gravity).

    - -
    -
    - -
    -
    - - - - -
    b2Vec2 b2MouseJointDef::target
    -
    -

    The initial world target point. This is assumed to coincide with the body anchor initially.

    - -
    -
    -
    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_mouse_joint_def.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_mouse_joint_def.png deleted file mode 100644 index fed572b..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_mouse_joint_def.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_pair-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_pair-members.html deleted file mode 100644 index 63942f6..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_pair-members.html +++ /dev/null @@ -1,103 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2Pair Member List
    -
    -
    - -

    This is the complete list of members for b2Pair, including all inherited members.

    - - - -
    proxyIdA (defined in b2Pair)b2Pair
    proxyIdB (defined in b2Pair)b2Pair
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_pair.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_pair.html deleted file mode 100644 index b8de7ab..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_pair.html +++ /dev/null @@ -1,114 +0,0 @@ - - - - - - -Box2D: b2Pair Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2Pair Struct Reference
    -
    -
    - - - - - - -

    -Public Attributes

    -int32 proxyIdA
     
    -int32 proxyIdB
     
    -
    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_position-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_position-members.html deleted file mode 100644 index 6a28385..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_position-members.html +++ /dev/null @@ -1,103 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2Position Member List
    -
    -
    - -

    This is the complete list of members for b2Position, including all inherited members.

    - - - -
    a (defined in b2Position)b2Position
    c (defined in b2Position)b2Position
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_position.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_position.html deleted file mode 100644 index 1df794a..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_position.html +++ /dev/null @@ -1,121 +0,0 @@ - - - - - - -Box2D: b2Position Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2Position Struct Reference
    -
    -
    - -

    This is an internal structure. - More...

    - -

    #include <b2TimeStep.h>

    - - - - - - -

    -Public Attributes

    -b2Vec2 c
     
    -float32 a
     
    -

    Detailed Description

    -

    This is an internal structure.

    -

    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_position_solver_manifold-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_position_solver_manifold-members.html deleted file mode 100644 index c99c9fc..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_position_solver_manifold-members.html +++ /dev/null @@ -1,105 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2PositionSolverManifold Member List
    -
    -
    - -

    This is the complete list of members for b2PositionSolverManifold, including all inherited members.

    - - - - - -
    Initialize(b2ContactPositionConstraint *pc, const b2Transform &xfA, const b2Transform &xfB, int32 index) (defined in b2PositionSolverManifold)b2PositionSolverManifoldinline
    normal (defined in b2PositionSolverManifold)b2PositionSolverManifold
    point (defined in b2PositionSolverManifold)b2PositionSolverManifold
    separation (defined in b2PositionSolverManifold)b2PositionSolverManifold
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_position_solver_manifold.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_position_solver_manifold.html deleted file mode 100644 index ba66139..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_position_solver_manifold.html +++ /dev/null @@ -1,124 +0,0 @@ - - - - - - -Box2D: b2PositionSolverManifold Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2PositionSolverManifold Struct Reference
    -
    -
    - - - - -

    -Public Member Functions

    -void Initialize (b2ContactPositionConstraint *pc, const b2Transform &xfA, const b2Transform &xfB, int32 index)
     
    - - - - - - - -

    -Public Attributes

    -b2Vec2 normal
     
    -b2Vec2 point
     
    -float32 separation
     
    -
    The documentation for this struct was generated from the following file:
      -
    • b2ContactSolver.cpp
    • -
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_prismatic_joint_def-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_prismatic_joint_def-members.html deleted file mode 100644 index dc61b17..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_prismatic_joint_def-members.html +++ /dev/null @@ -1,119 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2PrismaticJointDef Member List
    -
    - - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_prismatic_joint_def.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_prismatic_joint_def.html deleted file mode 100644 index 5efa347..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_prismatic_joint_def.html +++ /dev/null @@ -1,229 +0,0 @@ - - - - - - -Box2D: b2PrismaticJointDef Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2PrismaticJointDef Struct Reference
    -
    -
    - -

    #include <b2PrismaticJoint.h>

    -
    -Inheritance diagram for b2PrismaticJointDef:
    -
    -
    - - -b2JointDef - -
    - - - - -

    -Public Member Functions

    void Initialize (b2Body *bodyA, b2Body *bodyB, const b2Vec2 &anchor, const b2Vec2 &axis)
     
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Attributes

    -b2Vec2 localAnchorA
     The local anchor point relative to bodyA's origin.
     
    -b2Vec2 localAnchorB
     The local anchor point relative to bodyB's origin.
     
    -b2Vec2 localAxisA
     The local translation unit axis in bodyA.
     
    -float32 referenceAngle
     The constrained angle between the bodies: bodyB_angle - bodyA_angle.
     
    -bool enableLimit
     Enable/disable the joint limit.
     
    -float32 lowerTranslation
     The lower translation limit, usually in meters.
     
    -float32 upperTranslation
     The upper translation limit, usually in meters.
     
    -bool enableMotor
     Enable/disable the joint motor.
     
    -float32 maxMotorForce
     The maximum motor torque, usually in N-m.
     
    -float32 motorSpeed
     The desired motor speed in radians per second.
     
    - Public Attributes inherited from b2JointDef
    -b2JointType type
     The joint type is set automatically for concrete joint types.
     
    -void * userData
     Use this to attach application specific data to your joints.
     
    -b2BodybodyA
     The first attached body.
     
    -b2BodybodyB
     The second attached body.
     
    -bool collideConnected
     Set this flag to true if the attached bodies should collide.
     
    -

    Detailed Description

    -

    Prismatic joint definition. This requires defining a line of motion using an axis and an anchor point. The definition uses local anchor points and a local axis so that the initial configuration can violate the constraint slightly. The joint translation is zero when the local anchor points coincide in world space. Using local anchors and a local axis helps when saving and loading a game.

    -

    Member Function Documentation

    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    void b2PrismaticJointDef::Initialize (b2BodybodyA,
    b2BodybodyB,
    const b2Vec2anchor,
    const b2Vec2axis 
    )
    -
    -

    Initialize the bodies, anchors, axis, and reference angle using the world anchor and unit world axis.

    - -
    -
    -
    The documentation for this struct was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_prismatic_joint_def.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_prismatic_joint_def.png deleted file mode 100644 index 10f9ce1..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_prismatic_joint_def.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_profile-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_profile-members.html deleted file mode 100644 index 18144b1..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_profile-members.html +++ /dev/null @@ -1,109 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2Profile Member List
    -
    -
    - -

    This is the complete list of members for b2Profile, including all inherited members.

    - - - - - - - - - -
    broadphase (defined in b2Profile)b2Profile
    collide (defined in b2Profile)b2Profile
    solve (defined in b2Profile)b2Profile
    solveInit (defined in b2Profile)b2Profile
    solvePosition (defined in b2Profile)b2Profile
    solveTOI (defined in b2Profile)b2Profile
    solveVelocity (defined in b2Profile)b2Profile
    step (defined in b2Profile)b2Profile
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_profile.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_profile.html deleted file mode 100644 index 51645c1..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_profile.html +++ /dev/null @@ -1,139 +0,0 @@ - - - - - - -Box2D: b2Profile Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2Profile Struct Reference
    -
    -
    - -

    Profiling data. Times are in milliseconds. - More...

    - -

    #include <b2TimeStep.h>

    - - - - - - - - - - - - - - - - - - -

    -Public Attributes

    -float32 step
     
    -float32 collide
     
    -float32 solve
     
    -float32 solveInit
     
    -float32 solveVelocity
     
    -float32 solvePosition
     
    -float32 broadphase
     
    -float32 solveTOI
     
    -

    Detailed Description

    -

    Profiling data. Times are in milliseconds.

    -

    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_pulley_joint_def-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_pulley_joint_def-members.html deleted file mode 100644 index 697fe0b..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_pulley_joint_def-members.html +++ /dev/null @@ -1,116 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2PulleyJointDef Member List
    -
    -
    - -

    This is the complete list of members for b2PulleyJointDef, including all inherited members.

    - - - - - - - - - - - - - - - - -
    b2JointDef() (defined in b2JointDef)b2JointDefinline
    b2PulleyJointDef() (defined in b2PulleyJointDef)b2PulleyJointDefinline
    bodyAb2JointDef
    bodyBb2JointDef
    collideConnectedb2JointDef
    groundAnchorAb2PulleyJointDef
    groundAnchorBb2PulleyJointDef
    Initialize(b2Body *bodyA, b2Body *bodyB, const b2Vec2 &groundAnchorA, const b2Vec2 &groundAnchorB, const b2Vec2 &anchorA, const b2Vec2 &anchorB, float32 ratio)b2PulleyJointDef
    lengthAb2PulleyJointDef
    lengthBb2PulleyJointDef
    localAnchorAb2PulleyJointDef
    localAnchorBb2PulleyJointDef
    ratiob2PulleyJointDef
    typeb2JointDef
    userDatab2JointDef
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_pulley_joint_def.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_pulley_joint_def.html deleted file mode 100644 index 9caf7cb..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_pulley_joint_def.html +++ /dev/null @@ -1,179 +0,0 @@ - - - - - - -Box2D: b2PulleyJointDef Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2PulleyJointDef Struct Reference
    -
    -
    - -

    #include <b2PulleyJoint.h>

    -
    -Inheritance diagram for b2PulleyJointDef:
    -
    -
    - - -b2JointDef - -
    - - - - - -

    -Public Member Functions

    -void Initialize (b2Body *bodyA, b2Body *bodyB, const b2Vec2 &groundAnchorA, const b2Vec2 &groundAnchorB, const b2Vec2 &anchorA, const b2Vec2 &anchorB, float32 ratio)
     Initialize the bodies, anchors, lengths, max lengths, and ratio using the world anchors.
     
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Attributes

    -b2Vec2 groundAnchorA
     The first ground anchor in world coordinates. This point never moves.
     
    -b2Vec2 groundAnchorB
     The second ground anchor in world coordinates. This point never moves.
     
    -b2Vec2 localAnchorA
     The local anchor point relative to bodyA's origin.
     
    -b2Vec2 localAnchorB
     The local anchor point relative to bodyB's origin.
     
    -float32 lengthA
     The a reference length for the segment attached to bodyA.
     
    -float32 lengthB
     The a reference length for the segment attached to bodyB.
     
    -float32 ratio
     The pulley ratio, used to simulate a block-and-tackle.
     
    - Public Attributes inherited from b2JointDef
    -b2JointType type
     The joint type is set automatically for concrete joint types.
     
    -void * userData
     Use this to attach application specific data to your joints.
     
    -b2BodybodyA
     The first attached body.
     
    -b2BodybodyB
     The second attached body.
     
    -bool collideConnected
     Set this flag to true if the attached bodies should collide.
     
    -

    Detailed Description

    -

    Pulley joint definition. This requires two ground anchors, two dynamic body anchor points, and a pulley ratio.

    -

    The documentation for this struct was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_pulley_joint_def.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_pulley_joint_def.png deleted file mode 100644 index 681e731..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_pulley_joint_def.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_ray_cast_input-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_ray_cast_input-members.html deleted file mode 100644 index 6494939..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_ray_cast_input-members.html +++ /dev/null @@ -1,104 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2RayCastInput Member List
    -
    -
    - -

    This is the complete list of members for b2RayCastInput, including all inherited members.

    - - - - -
    maxFraction (defined in b2RayCastInput)b2RayCastInput
    p1 (defined in b2RayCastInput)b2RayCastInput
    p2 (defined in b2RayCastInput)b2RayCastInput
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_ray_cast_input.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_ray_cast_input.html deleted file mode 100644 index eac22a7..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_ray_cast_input.html +++ /dev/null @@ -1,124 +0,0 @@ - - - - - - -Box2D: b2RayCastInput Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2RayCastInput Struct Reference
    -
    -
    - -

    Ray-cast input data. The ray extends from p1 to p1 + maxFraction * (p2 - p1). - More...

    - -

    #include <b2Collision.h>

    - - - - - - - - -

    -Public Attributes

    -b2Vec2 p1
     
    -b2Vec2 p2
     
    -float32 maxFraction
     
    -

    Detailed Description

    -

    Ray-cast input data. The ray extends from p1 to p1 + maxFraction * (p2 - p1).

    -

    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_ray_cast_output-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_ray_cast_output-members.html deleted file mode 100644 index 9d05be4..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_ray_cast_output-members.html +++ /dev/null @@ -1,103 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2RayCastOutput Member List
    -
    -
    - -

    This is the complete list of members for b2RayCastOutput, including all inherited members.

    - - - -
    fraction (defined in b2RayCastOutput)b2RayCastOutput
    normal (defined in b2RayCastOutput)b2RayCastOutput
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_ray_cast_output.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_ray_cast_output.html deleted file mode 100644 index e137f90..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_ray_cast_output.html +++ /dev/null @@ -1,118 +0,0 @@ - - - - - - -Box2D: b2RayCastOutput Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2RayCastOutput Struct Reference
    -
    -
    - -

    #include <b2Collision.h>

    - - - - - - -

    -Public Attributes

    -b2Vec2 normal
     
    -float32 fraction
     
    -

    Detailed Description

    -

    Ray-cast output data. The ray hits at p1 + fraction * (p2 - p1), where p1 and p2 come from b2RayCastInput.

    -

    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_reference_face-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_reference_face-members.html deleted file mode 100644 index fe5e20b..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_reference_face-members.html +++ /dev/null @@ -1,110 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2ReferenceFace Member List
    -
    -
    - -

    This is the complete list of members for b2ReferenceFace, including all inherited members.

    - - - - - - - - - - -
    i1 (defined in b2ReferenceFace)b2ReferenceFace
    i2 (defined in b2ReferenceFace)b2ReferenceFace
    normal (defined in b2ReferenceFace)b2ReferenceFace
    sideNormal1 (defined in b2ReferenceFace)b2ReferenceFace
    sideNormal2 (defined in b2ReferenceFace)b2ReferenceFace
    sideOffset1 (defined in b2ReferenceFace)b2ReferenceFace
    sideOffset2 (defined in b2ReferenceFace)b2ReferenceFace
    v1 (defined in b2ReferenceFace)b2ReferenceFace
    v2 (defined in b2ReferenceFace)b2ReferenceFace
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_reference_face.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_reference_face.html deleted file mode 100644 index a8d63f8..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_reference_face.html +++ /dev/null @@ -1,135 +0,0 @@ - - - - - - -Box2D: b2ReferenceFace Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2ReferenceFace Struct Reference
    -
    -
    - - - - - - - - - - - - - - - - - - - - -

    -Public Attributes

    -int32 i1
     
    -int32 i2
     
    -b2Vec2 v1
     
    -b2Vec2 v2
     
    -b2Vec2 normal
     
    -b2Vec2 sideNormal1
     
    -float32 sideOffset1
     
    -b2Vec2 sideNormal2
     
    -float32 sideOffset2
     
    -
    The documentation for this struct was generated from the following file:
      -
    • b2CollideEdge.cpp
    • -
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_revolute_joint_def-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_revolute_joint_def-members.html deleted file mode 100644 index b0aeac7..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_revolute_joint_def-members.html +++ /dev/null @@ -1,118 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2RevoluteJointDef Member List
    -
    - - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_revolute_joint_def.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_revolute_joint_def.html deleted file mode 100644 index 97be75b..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_revolute_joint_def.html +++ /dev/null @@ -1,235 +0,0 @@ - - - - - - -Box2D: b2RevoluteJointDef Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2RevoluteJointDef Struct Reference
    -
    -
    - -

    #include <b2RevoluteJoint.h>

    -
    -Inheritance diagram for b2RevoluteJointDef:
    -
    -
    - - -b2JointDef - -
    - - - - -

    -Public Member Functions

    void Initialize (b2Body *bodyA, b2Body *bodyB, const b2Vec2 &anchor)
     
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Attributes

    -b2Vec2 localAnchorA
     The local anchor point relative to bodyA's origin.
     
    -b2Vec2 localAnchorB
     The local anchor point relative to bodyB's origin.
     
    -float32 referenceAngle
     The bodyB angle minus bodyA angle in the reference state (radians).
     
    -bool enableLimit
     A flag to enable joint limits.
     
    -float32 lowerAngle
     The lower angle for the joint limit (radians).
     
    -float32 upperAngle
     The upper angle for the joint limit (radians).
     
    -bool enableMotor
     A flag to enable the joint motor.
     
    -float32 motorSpeed
     The desired motor speed. Usually in radians per second.
     
    float32 maxMotorTorque
     
    - Public Attributes inherited from b2JointDef
    -b2JointType type
     The joint type is set automatically for concrete joint types.
     
    -void * userData
     Use this to attach application specific data to your joints.
     
    -b2BodybodyA
     The first attached body.
     
    -b2BodybodyB
     The second attached body.
     
    -bool collideConnected
     Set this flag to true if the attached bodies should collide.
     
    -

    Detailed Description

    -

    Revolute joint definition. This requires defining an anchor point where the bodies are joined. The definition uses local anchor points so that the initial configuration can violate the constraint slightly. You also need to specify the initial relative angle for joint limits. This helps when saving and loading a game. The local anchor points are measured from the body's origin rather than the center of mass because:

    -
      -
    1. you might not know where the center of mass will be.
    2. -
    3. if you add/remove shapes from a body and recompute the mass, the joints will be broken.
    4. -
    -

    Member Function Documentation

    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    void b2RevoluteJointDef::Initialize (b2BodybodyA,
    b2BodybodyB,
    const b2Vec2anchor 
    )
    -
    -

    Initialize the bodies, anchors, and reference angle using a world anchor point.

    - -
    -
    -

    Member Data Documentation

    - -
    -
    - - - - -
    float32 b2RevoluteJointDef::maxMotorTorque
    -
    -

    The maximum motor torque used to achieve the desired motor speed. Usually in N-m.

    - -
    -
    -
    The documentation for this struct was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_revolute_joint_def.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_revolute_joint_def.png deleted file mode 100644 index 5b945fe..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_revolute_joint_def.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_rope_def-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_rope_def-members.html deleted file mode 100644 index 6ab90f0..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_rope_def-members.html +++ /dev/null @@ -1,109 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2RopeDef Member List
    -
    -
    - -

    This is the complete list of members for b2RopeDef, including all inherited members.

    - - - - - - - - - -
    b2RopeDef() (defined in b2RopeDef)b2RopeDefinline
    count (defined in b2RopeDef)b2RopeDef
    damping (defined in b2RopeDef)b2RopeDef
    gravity (defined in b2RopeDef)b2RopeDef
    k2b2RopeDef
    k3b2RopeDef
    masses (defined in b2RopeDef)b2RopeDef
    vertices (defined in b2RopeDef)b2RopeDef
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_rope_def.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_rope_def.html deleted file mode 100644 index 38b0418..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_rope_def.html +++ /dev/null @@ -1,131 +0,0 @@ - - - - - - -Box2D: b2RopeDef Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2RopeDef Struct Reference
    -
    -
    - - - - - - - - - - - - - - - - - - -

    -Public Attributes

    -b2Vec2vertices
     
    -int32 count
     
    -float32 * masses
     
    -b2Vec2 gravity
     
    -float32 damping
     
    -float32 k2
     Stretching stiffness.
     
    -float32 k3
     Bending stiffness. Values above 0.5 can make the simulation blow up.
     
    -
    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_rope_joint_def-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_rope_joint_def-members.html deleted file mode 100644 index 3d01b92..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_rope_joint_def-members.html +++ /dev/null @@ -1,111 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2RopeJointDef Member List
    -
    -
    - -

    This is the complete list of members for b2RopeJointDef, including all inherited members.

    - - - - - - - - - - - -
    b2JointDef() (defined in b2JointDef)b2JointDefinline
    b2RopeJointDef() (defined in b2RopeJointDef)b2RopeJointDefinline
    bodyAb2JointDef
    bodyBb2JointDef
    collideConnectedb2JointDef
    localAnchorAb2RopeJointDef
    localAnchorBb2RopeJointDef
    maxLengthb2RopeJointDef
    typeb2JointDef
    userDatab2JointDef
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_rope_joint_def.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_rope_joint_def.html deleted file mode 100644 index 29655ee..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_rope_joint_def.html +++ /dev/null @@ -1,166 +0,0 @@ - - - - - - -Box2D: b2RopeJointDef Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2RopeJointDef Struct Reference
    -
    -
    - -

    #include <b2RopeJoint.h>

    -
    -Inheritance diagram for b2RopeJointDef:
    -
    -
    - - -b2JointDef - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Attributes

    -b2Vec2 localAnchorA
     The local anchor point relative to bodyA's origin.
     
    -b2Vec2 localAnchorB
     The local anchor point relative to bodyB's origin.
     
    float32 maxLength
     
    - Public Attributes inherited from b2JointDef
    -b2JointType type
     The joint type is set automatically for concrete joint types.
     
    -void * userData
     Use this to attach application specific data to your joints.
     
    -b2BodybodyA
     The first attached body.
     
    -b2BodybodyB
     The second attached body.
     
    -bool collideConnected
     Set this flag to true if the attached bodies should collide.
     
    -

    Detailed Description

    -

    Rope joint definition. This requires two body anchor points and a maximum lengths. Note: by default the connected objects will not collide. see collideConnected in b2JointDef.

    -

    Member Data Documentation

    - -
    -
    - - - - -
    float32 b2RopeJointDef::maxLength
    -
    -

    The maximum length of the rope. Warning: this must be larger than b2_linearSlop or the joint will have no effect.

    - -
    -
    -
    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_rope_joint_def.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_rope_joint_def.png deleted file mode 100644 index 1b3a235..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_rope_joint_def.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_rot-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_rot-members.html deleted file mode 100644 index ecff702..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_rot-members.html +++ /dev/null @@ -1,110 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2Rot Member List
    -
    -
    - -

    This is the complete list of members for b2Rot, including all inherited members.

    - - - - - - - - - - -
    b2Rot() (defined in b2Rot)b2Rotinline
    b2Rot(float32 angle)b2Rotinlineexplicit
    c (defined in b2Rot)b2Rot
    GetAngle() const b2Rotinline
    GetXAxis() const b2Rotinline
    GetYAxis() const b2Rotinline
    sb2Rot
    Set(float32 angle)b2Rotinline
    SetIdentity()b2Rotinline
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_rot.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_rot.html deleted file mode 100644 index 4ee1ee6..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_rot.html +++ /dev/null @@ -1,204 +0,0 @@ - - - - - - -Box2D: b2Rot Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2Rot Struct Reference
    -
    -
    - -

    Rotation. - More...

    - -

    #include <b2Math.h>

    - - - - - - - - - - - - - - - - - - - - -

    -Public Member Functions

     b2Rot (float32 angle)
     Initialize from an angle in radians. More...
     
    void Set (float32 angle)
     Set using an angle in radians. More...
     
    -void SetIdentity ()
     Set to the identity rotation.
     
    -float32 GetAngle () const
     Get the angle in radians.
     
    -b2Vec2 GetXAxis () const
     Get the x-axis.
     
    -b2Vec2 GetYAxis () const
     Get the u-axis.
     
    - - - - - - -

    -Public Attributes

    -float32 s
     Sine and cosine.
     
    -float32 c
     
    -

    Detailed Description

    -

    Rotation.

    -

    Constructor & Destructor Documentation

    - -
    -
    - - - - - -
    - - - - - - - - -
    b2Rot::b2Rot (float32 angle)
    -
    -inlineexplicit
    -
    - -

    Initialize from an angle in radians.

    -

    TODO_ERIN optimize

    - -
    -
    -

    Member Function Documentation

    - -
    -
    - - - - - -
    - - - - - - - - -
    void b2Rot::Set (float32 angle)
    -
    -inline
    -
    - -

    Set using an angle in radians.

    -

    TODO_ERIN optimize

    - -
    -
    -
    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_separation_function-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_separation_function-members.html deleted file mode 100644 index c1462e4..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_separation_function-members.html +++ /dev/null @@ -1,115 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2SeparationFunction Member List
    -
    -
    - -

    This is the complete list of members for b2SeparationFunction, including all inherited members.

    - - - - - - - - - - - - - - - -
    e_faceA enum value (defined in b2SeparationFunction)b2SeparationFunction
    e_faceB enum value (defined in b2SeparationFunction)b2SeparationFunction
    e_points enum value (defined in b2SeparationFunction)b2SeparationFunction
    Evaluate(int32 indexA, int32 indexB, float32 t) const (defined in b2SeparationFunction)b2SeparationFunctioninline
    FindMinSeparation(int32 *indexA, int32 *indexB, float32 t) const (defined in b2SeparationFunction)b2SeparationFunctioninline
    Initialize(const b2SimplexCache *cache, const b2DistanceProxy *proxyA, const b2Sweep &sweepA, const b2DistanceProxy *proxyB, const b2Sweep &sweepB, float32 t1) (defined in b2SeparationFunction)b2SeparationFunctioninline
    m_axis (defined in b2SeparationFunction)b2SeparationFunction
    m_localPoint (defined in b2SeparationFunction)b2SeparationFunction
    m_proxyA (defined in b2SeparationFunction)b2SeparationFunction
    m_proxyB (defined in b2SeparationFunction)b2SeparationFunction
    m_sweepA (defined in b2SeparationFunction)b2SeparationFunction
    m_sweepB (defined in b2SeparationFunction)b2SeparationFunction
    m_type (defined in b2SeparationFunction)b2SeparationFunction
    Type enum name (defined in b2SeparationFunction)b2SeparationFunction
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_separation_function.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_separation_function.html deleted file mode 100644 index e40a3cf..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_separation_function.html +++ /dev/null @@ -1,151 +0,0 @@ - - - - - - -Box2D: b2SeparationFunction Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2SeparationFunction Struct Reference
    -
    -
    - - - - -

    -Public Types

    enum  Type { e_points, -e_faceA, -e_faceB - }
     
    - - - - - - - -

    -Public Member Functions

    -float32 Initialize (const b2SimplexCache *cache, const b2DistanceProxy *proxyA, const b2Sweep &sweepA, const b2DistanceProxy *proxyB, const b2Sweep &sweepB, float32 t1)
     
    -float32 FindMinSeparation (int32 *indexA, int32 *indexB, float32 t) const
     
    -float32 Evaluate (int32 indexA, int32 indexB, float32 t) const
     
    - - - - - - - - - - - - - - - -

    -Public Attributes

    -const b2DistanceProxym_proxyA
     
    -const b2DistanceProxym_proxyB
     
    -b2Sweep m_sweepA
     
    -b2Sweep m_sweepB
     
    -Type m_type
     
    -b2Vec2 m_localPoint
     
    -b2Vec2 m_axis
     
    -
    The documentation for this struct was generated from the following file:
      -
    • b2TimeOfImpact.cpp
    • -
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_simplex-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_simplex-members.html deleted file mode 100644 index 15b0035..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_simplex-members.html +++ /dev/null @@ -1,113 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2Simplex Member List
    -
    -
    - -

    This is the complete list of members for b2Simplex, including all inherited members.

    - - - - - - - - - - - - - -
    GetClosestPoint() const (defined in b2Simplex)b2Simplexinline
    GetMetric() const (defined in b2Simplex)b2Simplexinline
    GetSearchDirection() const (defined in b2Simplex)b2Simplexinline
    GetWitnessPoints(b2Vec2 *pA, b2Vec2 *pB) const (defined in b2Simplex)b2Simplexinline
    m_count (defined in b2Simplex)b2Simplex
    m_v1 (defined in b2Simplex)b2Simplex
    m_v2 (defined in b2Simplex)b2Simplex
    m_v3 (defined in b2Simplex)b2Simplex
    ReadCache(const b2SimplexCache *cache, const b2DistanceProxy *proxyA, const b2Transform &transformA, const b2DistanceProxy *proxyB, const b2Transform &transformB) (defined in b2Simplex)b2Simplexinline
    Solve2() (defined in b2Simplex)b2Simplex
    Solve3() (defined in b2Simplex)b2Simplex
    WriteCache(b2SimplexCache *cache) const (defined in b2Simplex)b2Simplexinline
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_simplex.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_simplex.html deleted file mode 100644 index c778240..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_simplex.html +++ /dev/null @@ -1,148 +0,0 @@ - - - - - - -Box2D: b2Simplex Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2Simplex Struct Reference
    -
    -
    - - - - - - - - - - - - - - - - - - -

    -Public Member Functions

    -void ReadCache (const b2SimplexCache *cache, const b2DistanceProxy *proxyA, const b2Transform &transformA, const b2DistanceProxy *proxyB, const b2Transform &transformB)
     
    -void WriteCache (b2SimplexCache *cache) const
     
    -b2Vec2 GetSearchDirection () const
     
    -b2Vec2 GetClosestPoint () const
     
    -void GetWitnessPoints (b2Vec2 *pA, b2Vec2 *pB) const
     
    -float32 GetMetric () const
     
    -void Solve2 ()
     
    -void Solve3 ()
     
    - - - - - - - - - -

    -Public Attributes

    -b2SimplexVertex m_v1
     
    -b2SimplexVertex m_v2
     
    -b2SimplexVertex m_v3
     
    -int32 m_count
     
    -
    The documentation for this struct was generated from the following file:
      -
    • b2Distance.cpp
    • -
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_simplex_cache-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_simplex_cache-members.html deleted file mode 100644 index 6992678..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_simplex_cache-members.html +++ /dev/null @@ -1,105 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2SimplexCache Member List
    -
    -
    - -

    This is the complete list of members for b2SimplexCache, including all inherited members.

    - - - - - -
    count (defined in b2SimplexCache)b2SimplexCache
    indexAb2SimplexCache
    indexBb2SimplexCache
    metricb2SimplexCache
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_simplex_cache.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_simplex_cache.html deleted file mode 100644 index 03c0a9a..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_simplex_cache.html +++ /dev/null @@ -1,127 +0,0 @@ - - - - - - -Box2D: b2SimplexCache Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2SimplexCache Struct Reference
    -
    -
    - -

    #include <b2Distance.h>

    - - - - - - - - - - - - - -

    -Public Attributes

    -float32 metric
     length or area
     
    -uint16 count
     
    -uint8 indexA [3]
     vertices on shape A
     
    -uint8 indexB [3]
     vertices on shape B
     
    -

    Detailed Description

    -

    Used to warm start b2Distance. Set count to zero on first call.

    -

    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_simplex_vertex-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_simplex_vertex-members.html deleted file mode 100644 index d9b2381..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_simplex_vertex-members.html +++ /dev/null @@ -1,107 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2SimplexVertex Member List
    -
    -
    - -

    This is the complete list of members for b2SimplexVertex, including all inherited members.

    - - - - - - - -
    a (defined in b2SimplexVertex)b2SimplexVertex
    indexA (defined in b2SimplexVertex)b2SimplexVertex
    indexB (defined in b2SimplexVertex)b2SimplexVertex
    w (defined in b2SimplexVertex)b2SimplexVertex
    wA (defined in b2SimplexVertex)b2SimplexVertex
    wB (defined in b2SimplexVertex)b2SimplexVertex
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_simplex_vertex.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_simplex_vertex.html deleted file mode 100644 index f0b4168..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_simplex_vertex.html +++ /dev/null @@ -1,126 +0,0 @@ - - - - - - -Box2D: b2SimplexVertex Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2SimplexVertex Struct Reference
    -
    -
    - - - - - - - - - - - - - - -

    -Public Attributes

    -b2Vec2 wA
     
    -b2Vec2 wB
     
    -b2Vec2 w
     
    -float32 a
     
    -int32 indexA
     
    -int32 indexB
     
    -
    The documentation for this struct was generated from the following file:
      -
    • b2Distance.cpp
    • -
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_solver_data-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_solver_data-members.html deleted file mode 100644 index cc2c01f..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_solver_data-members.html +++ /dev/null @@ -1,104 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2SolverData Member List
    -
    -
    - -

    This is the complete list of members for b2SolverData, including all inherited members.

    - - - - -
    positions (defined in b2SolverData)b2SolverData
    step (defined in b2SolverData)b2SolverData
    velocities (defined in b2SolverData)b2SolverData
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_solver_data.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_solver_data.html deleted file mode 100644 index 17de444..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_solver_data.html +++ /dev/null @@ -1,124 +0,0 @@ - - - - - - -Box2D: b2SolverData Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2SolverData Struct Reference
    -
    -
    - -

    Solver Data. - More...

    - -

    #include <b2TimeStep.h>

    - - - - - - - - -

    -Public Attributes

    -b2TimeStep step
     
    -b2Positionpositions
     
    -b2Velocityvelocities
     
    -

    Detailed Description

    -

    Solver Data.

    -

    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_stack_entry-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_stack_entry-members.html deleted file mode 100644 index 6e1f73d..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_stack_entry-members.html +++ /dev/null @@ -1,104 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2StackEntry Member List
    -
    -
    - -

    This is the complete list of members for b2StackEntry, including all inherited members.

    - - - - -
    data (defined in b2StackEntry)b2StackEntry
    size (defined in b2StackEntry)b2StackEntry
    usedMalloc (defined in b2StackEntry)b2StackEntry
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_stack_entry.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_stack_entry.html deleted file mode 100644 index 8fcb989..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_stack_entry.html +++ /dev/null @@ -1,117 +0,0 @@ - - - - - - -Box2D: b2StackEntry Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2StackEntry Struct Reference
    -
    -
    - - - - - - - - -

    -Public Attributes

    -char * data
     
    -int32 size
     
    -bool usedMalloc
     
    -
    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_sweep-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_sweep-members.html deleted file mode 100644 index 395a43d..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_sweep-members.html +++ /dev/null @@ -1,110 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2Sweep Member List
    -
    -
    - -

    This is the complete list of members for b2Sweep, including all inherited members.

    - - - - - - - - - - -
    ab2Sweep
    a0 (defined in b2Sweep)b2Sweep
    Advance(float32 alpha)b2Sweepinline
    alpha0b2Sweep
    cb2Sweep
    c0 (defined in b2Sweep)b2Sweep
    GetTransform(b2Transform *xfb, float32 beta) const b2Sweepinline
    localCenterb2Sweep
    Normalize()b2Sweepinline
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_sweep.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_sweep.html deleted file mode 100644 index 1f31e50..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_sweep.html +++ /dev/null @@ -1,256 +0,0 @@ - - - - - - -Box2D: b2Sweep Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2Sweep Struct Reference
    -
    -
    - -

    #include <b2Math.h>

    - - - - - - - - - -

    -Public Member Functions

    void GetTransform (b2Transform *xfb, float32 beta) const
     
    void Advance (float32 alpha)
     
    void Normalize ()
     Normalize the angles. More...
     
    - - - - - - - - - - - - - - - - -

    -Public Attributes

    -b2Vec2 localCenter
     local center of mass position
     
    -b2Vec2 c0
     
    -b2Vec2 c
     center world positions
     
    -float32 a0
     
    -float32 a
     world angles
     
    float32 alpha0
     
    -

    Detailed Description

    -

    This describes the motion of a body/shape for TOI computation. Shapes are defined with respect to the body origin, which may no coincide with the center of mass. However, to support dynamics we must interpolate the center of mass position.

    -

    Member Function Documentation

    - -
    -
    - - - - - -
    - - - - - - - - -
    void b2Sweep::Advance (float32 alpha)
    -
    -inline
    -
    -

    Advance the sweep forward, yielding a new initial state.

    -
    Parameters
    - - -
    alphathe new initial time.
    -
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - - - - - - - - - - - - -
    void b2Sweep::GetTransform (b2Transformxfb,
    float32 beta 
    ) const
    -
    -inline
    -
    -

    Get the interpolated transform at a specific time.

    -
    Parameters
    - - -
    betais a factor in [0,1], where 0 indicates alpha0.
    -
    -
    - -
    -
    - -
    -
    - - - - - -
    - - - - - - - -
    void b2Sweep::Normalize ()
    -
    -inline
    -
    - -

    Normalize the angles.

    -

    Normalize an angle in radians to be between -pi and pi.

    - -
    -
    -

    Member Data Documentation

    - -
    -
    - - - - -
    float32 b2Sweep::alpha0
    -
    -

    Fraction of the current time step in the range [0,1] c0 and a0 are the positions at alpha0.

    - -
    -
    -
    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_t_o_i_input-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_t_o_i_input-members.html deleted file mode 100644 index e91f34a..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_t_o_i_input-members.html +++ /dev/null @@ -1,106 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2TOIInput Member List
    -
    -
    - -

    This is the complete list of members for b2TOIInput, including all inherited members.

    - - - - - - -
    proxyA (defined in b2TOIInput)b2TOIInput
    proxyB (defined in b2TOIInput)b2TOIInput
    sweepA (defined in b2TOIInput)b2TOIInput
    sweepB (defined in b2TOIInput)b2TOIInput
    tMax (defined in b2TOIInput)b2TOIInput
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_t_o_i_input.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_t_o_i_input.html deleted file mode 100644 index d13807b..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_t_o_i_input.html +++ /dev/null @@ -1,130 +0,0 @@ - - - - - - -Box2D: b2TOIInput Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2TOIInput Struct Reference
    -
    -
    - -

    Input parameters for b2TimeOfImpact. - More...

    - -

    #include <b2TimeOfImpact.h>

    - - - - - - - - - - - - -

    -Public Attributes

    -b2DistanceProxy proxyA
     
    -b2DistanceProxy proxyB
     
    -b2Sweep sweepA
     
    -b2Sweep sweepB
     
    -float32 tMax
     
    -

    Detailed Description

    -

    Input parameters for b2TimeOfImpact.

    -

    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_t_o_i_output-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_t_o_i_output-members.html deleted file mode 100644 index a300b80..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_t_o_i_output-members.html +++ /dev/null @@ -1,109 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2TOIOutput Member List
    -
    -
    - -

    This is the complete list of members for b2TOIOutput, including all inherited members.

    - - - - - - - - - -
    e_failed enum value (defined in b2TOIOutput)b2TOIOutput
    e_overlapped enum value (defined in b2TOIOutput)b2TOIOutput
    e_separated enum value (defined in b2TOIOutput)b2TOIOutput
    e_touching enum value (defined in b2TOIOutput)b2TOIOutput
    e_unknown enum value (defined in b2TOIOutput)b2TOIOutput
    state (defined in b2TOIOutput)b2TOIOutput
    State enum name (defined in b2TOIOutput)b2TOIOutput
    t (defined in b2TOIOutput)b2TOIOutput
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_t_o_i_output.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_t_o_i_output.html deleted file mode 100644 index 0752e8e..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_t_o_i_output.html +++ /dev/null @@ -1,128 +0,0 @@ - - - - - - -Box2D: b2TOIOutput Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2TOIOutput Struct Reference
    -
    -
    - - - - -

    -Public Types

    enum  State {
    -  e_unknown, -e_failed, -e_overlapped, -e_touching, -
    -  e_separated -
    - }
     
    - - - - - -

    -Public Attributes

    -State state
     
    -float32 t
     
    -
    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_temp_polygon-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_temp_polygon-members.html deleted file mode 100644 index 25efabe..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_temp_polygon-members.html +++ /dev/null @@ -1,104 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2TempPolygon Member List
    -
    -
    - -

    This is the complete list of members for b2TempPolygon, including all inherited members.

    - - - - -
    count (defined in b2TempPolygon)b2TempPolygon
    normals (defined in b2TempPolygon)b2TempPolygon
    vertices (defined in b2TempPolygon)b2TempPolygon
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_temp_polygon.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_temp_polygon.html deleted file mode 100644 index 55f52c8..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_temp_polygon.html +++ /dev/null @@ -1,117 +0,0 @@ - - - - - - -Box2D: b2TempPolygon Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2TempPolygon Struct Reference
    -
    -
    - - - - - - - - -

    -Public Attributes

    -b2Vec2 vertices [b2_maxPolygonVertices]
     
    -b2Vec2 normals [b2_maxPolygonVertices]
     
    -int32 count
     
    -
    The documentation for this struct was generated from the following file:
      -
    • b2CollideEdge.cpp
    • -
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_time_step-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_time_step-members.html deleted file mode 100644 index b702b97..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_time_step-members.html +++ /dev/null @@ -1,107 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2TimeStep Member List
    -
    -
    - -

    This is the complete list of members for b2TimeStep, including all inherited members.

    - - - - - - - -
    dt (defined in b2TimeStep)b2TimeStep
    dtRatio (defined in b2TimeStep)b2TimeStep
    inv_dt (defined in b2TimeStep)b2TimeStep
    positionIterations (defined in b2TimeStep)b2TimeStep
    velocityIterations (defined in b2TimeStep)b2TimeStep
    warmStarting (defined in b2TimeStep)b2TimeStep
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_time_step.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_time_step.html deleted file mode 100644 index fd67bee..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_time_step.html +++ /dev/null @@ -1,133 +0,0 @@ - - - - - - -Box2D: b2TimeStep Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2TimeStep Struct Reference
    -
    -
    - -

    This is an internal structure. - More...

    - -

    #include <b2TimeStep.h>

    - - - - - - - - - - - - - - -

    -Public Attributes

    -float32 dt
     
    -float32 inv_dt
     
    -float32 dtRatio
     
    -int32 velocityIterations
     
    -int32 positionIterations
     
    -bool warmStarting
     
    -

    Detailed Description

    -

    This is an internal structure.

    -

    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_transform-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_transform-members.html deleted file mode 100644 index e56a2aa..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_transform-members.html +++ /dev/null @@ -1,107 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2Transform Member List
    -
    -
    - -

    This is the complete list of members for b2Transform, including all inherited members.

    - - - - - - - -
    b2Transform()b2Transforminline
    b2Transform(const b2Vec2 &position, const b2Rot &rotation)b2Transforminline
    p (defined in b2Transform)b2Transform
    q (defined in b2Transform)b2Transform
    Set(const b2Vec2 &position, float32 angle)b2Transforminline
    SetIdentity()b2Transforminline
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_transform.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_transform.html deleted file mode 100644 index 4206f2b..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_transform.html +++ /dev/null @@ -1,138 +0,0 @@ - - - - - - -Box2D: b2Transform Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2Transform Struct Reference
    -
    -
    - -

    #include <b2Math.h>

    - - - - - - - - - - - - - - -

    -Public Member Functions

    b2Transform ()
     The default constructor does nothing.
     
    b2Transform (const b2Vec2 &position, const b2Rot &rotation)
     Initialize using a position vector and a rotation.
     
    -void SetIdentity ()
     Set this to the identity transform.
     
    -void Set (const b2Vec2 &position, float32 angle)
     Set this based on the position and angle.
     
    - - - - - -

    -Public Attributes

    -b2Vec2 p
     
    -b2Rot q
     
    -

    Detailed Description

    -

    A transform contains translation and rotation. It is used to represent the position and orientation of rigid frames.

    -

    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_tree_node-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_tree_node-members.html deleted file mode 100644 index 9d171c7..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_tree_node-members.html +++ /dev/null @@ -1,109 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2TreeNode Member List
    -
    -
    - -

    This is the complete list of members for b2TreeNode, including all inherited members.

    - - - - - - - - - -
    aabbb2TreeNode
    child1 (defined in b2TreeNode)b2TreeNode
    child2 (defined in b2TreeNode)b2TreeNode
    height (defined in b2TreeNode)b2TreeNode
    IsLeaf() const (defined in b2TreeNode)b2TreeNodeinline
    next (defined in b2TreeNode)b2TreeNode
    parent (defined in b2TreeNode)b2TreeNode
    userData (defined in b2TreeNode)b2TreeNode
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_tree_node.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_tree_node.html deleted file mode 100644 index 5e828a0..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_tree_node.html +++ /dev/null @@ -1,146 +0,0 @@ - - - - - - -Box2D: b2TreeNode Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2TreeNode Struct Reference
    -
    -
    - -

    A node in the dynamic tree. The client does not interact with this directly. - More...

    - -

    #include <b2DynamicTree.h>

    - - - - -

    -Public Member Functions

    -bool IsLeaf () const
     
    - - - - - - - - - - - - - - - - - - - -

    -Public Attributes

    -b2AABB aabb
     Enlarged AABB.
     
    -void * userData
     
    -union {
       int32   parent
     
       int32   next
     
    }; 
     
    -int32 child1
     
    -int32 child2
     
    -int32 height
     
    -

    Detailed Description

    -

    A node in the dynamic tree. The client does not interact with this directly.

    -

    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_vec2-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_vec2-members.html deleted file mode 100644 index 6d49108..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_vec2-members.html +++ /dev/null @@ -1,118 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2Vec2 Member List
    -
    -
    - -

    This is the complete list of members for b2Vec2, including all inherited members.

    - - - - - - - - - - - - - - - - - - -
    b2Vec2()b2Vec2inline
    b2Vec2(float32 x, float32 y)b2Vec2inline
    IsValid() const b2Vec2inline
    Length() const b2Vec2inline
    LengthSquared() const b2Vec2inline
    Normalize()b2Vec2inline
    operator()(int32 i) const b2Vec2inline
    operator()(int32 i)b2Vec2inline
    operator*=(float32 a)b2Vec2inline
    operator+=(const b2Vec2 &v)b2Vec2inline
    operator-() const b2Vec2inline
    operator-=(const b2Vec2 &v)b2Vec2inline
    Set(float32 x_, float32 y_)b2Vec2inline
    SetZero()b2Vec2inline
    Skew() const b2Vec2inline
    x (defined in b2Vec2)b2Vec2
    y (defined in b2Vec2)b2Vec2
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_vec2.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_vec2.html deleted file mode 100644 index b5ca58e..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_vec2.html +++ /dev/null @@ -1,208 +0,0 @@ - - - - - - -Box2D: b2Vec2 Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2Vec2 Struct Reference
    -
    -
    - -

    A 2D column vector. - More...

    - -

    #include <b2Math.h>

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Member Functions

    b2Vec2 ()
     Default constructor does nothing (for performance).
     
    b2Vec2 (float32 x, float32 y)
     Construct using coordinates.
     
    -void SetZero ()
     Set this vector to all zeros.
     
    -void Set (float32 x_, float32 y_)
     Set this vector to some specified coordinates.
     
    -b2Vec2 operator- () const
     Negate this vector.
     
    -float32 operator() (int32 i) const
     Read from and indexed element.
     
    -float32 & operator() (int32 i)
     Write to an indexed element.
     
    -void operator+= (const b2Vec2 &v)
     Add a vector to this vector.
     
    -void operator-= (const b2Vec2 &v)
     Subtract a vector from this vector.
     
    -void operator*= (float32 a)
     Multiply this vector by a scalar.
     
    -float32 Length () const
     Get the length of this vector (the norm).
     
    float32 LengthSquared () const
     
    -float32 Normalize ()
     Convert this vector into a unit vector. Returns the length.
     
    -bool IsValid () const
     Does this vector contain finite coordinates?
     
    -b2Vec2 Skew () const
     Get the skew vector such that dot(skew_vec, other) == cross(vec, other)
     
    - - - - - -

    -Public Attributes

    -float32 x
     
    -float32 y
     
    -

    Detailed Description

    -

    A 2D column vector.

    -

    Member Function Documentation

    - -
    -
    - - - - - -
    - - - - - - - -
    float32 b2Vec2::LengthSquared () const
    -
    -inline
    -
    -

    Get the length squared. For performance, use this instead of b2Vec2::Length (if possible).

    - -
    -
    -
    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_vec3-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_vec3-members.html deleted file mode 100644 index 691f1d5..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_vec3-members.html +++ /dev/null @@ -1,112 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2Vec3 Member List
    -
    -
    - -

    This is the complete list of members for b2Vec3, including all inherited members.

    - - - - - - - - - - - - -
    b2Vec3()b2Vec3inline
    b2Vec3(float32 x, float32 y, float32 z)b2Vec3inline
    operator*=(float32 s)b2Vec3inline
    operator+=(const b2Vec3 &v)b2Vec3inline
    operator-() const b2Vec3inline
    operator-=(const b2Vec3 &v)b2Vec3inline
    Set(float32 x_, float32 y_, float32 z_)b2Vec3inline
    SetZero()b2Vec3inline
    x (defined in b2Vec3)b2Vec3
    y (defined in b2Vec3)b2Vec3
    z (defined in b2Vec3)b2Vec3
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_vec3.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_vec3.html deleted file mode 100644 index f9019c1..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_vec3.html +++ /dev/null @@ -1,160 +0,0 @@ - - - - - - -Box2D: b2Vec3 Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2Vec3 Struct Reference
    -
    -
    - -

    A 2D column vector with 3 elements. - More...

    - -

    #include <b2Math.h>

    - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Member Functions

    b2Vec3 ()
     Default constructor does nothing (for performance).
     
    b2Vec3 (float32 x, float32 y, float32 z)
     Construct using coordinates.
     
    -void SetZero ()
     Set this vector to all zeros.
     
    -void Set (float32 x_, float32 y_, float32 z_)
     Set this vector to some specified coordinates.
     
    -b2Vec3 operator- () const
     Negate this vector.
     
    -void operator+= (const b2Vec3 &v)
     Add a vector to this vector.
     
    -void operator-= (const b2Vec3 &v)
     Subtract a vector from this vector.
     
    -void operator*= (float32 s)
     Multiply this vector by a scalar.
     
    - - - - - - - -

    -Public Attributes

    -float32 x
     
    -float32 y
     
    -float32 z
     
    -

    Detailed Description

    -

    A 2D column vector with 3 elements.

    -

    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_velocity-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_velocity-members.html deleted file mode 100644 index 49a7737..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_velocity-members.html +++ /dev/null @@ -1,103 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2Velocity Member List
    -
    -
    - -

    This is the complete list of members for b2Velocity, including all inherited members.

    - - - -
    v (defined in b2Velocity)b2Velocity
    w (defined in b2Velocity)b2Velocity
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_velocity.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_velocity.html deleted file mode 100644 index bec853b..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_velocity.html +++ /dev/null @@ -1,121 +0,0 @@ - - - - - - -Box2D: b2Velocity Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2Velocity Struct Reference
    -
    -
    - -

    This is an internal structure. - More...

    - -

    #include <b2TimeStep.h>

    - - - - - - -

    -Public Attributes

    -b2Vec2 v
     
    -float32 w
     
    -

    Detailed Description

    -

    This is an internal structure.

    -

    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_velocity_constraint_point-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_velocity_constraint_point-members.html deleted file mode 100644 index 7b73d01..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_velocity_constraint_point-members.html +++ /dev/null @@ -1,108 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2VelocityConstraintPoint Member List
    -
    -
    - -

    This is the complete list of members for b2VelocityConstraintPoint, including all inherited members.

    - - - - - - - - -
    normalImpulse (defined in b2VelocityConstraintPoint)b2VelocityConstraintPoint
    normalMass (defined in b2VelocityConstraintPoint)b2VelocityConstraintPoint
    rA (defined in b2VelocityConstraintPoint)b2VelocityConstraintPoint
    rB (defined in b2VelocityConstraintPoint)b2VelocityConstraintPoint
    tangentImpulse (defined in b2VelocityConstraintPoint)b2VelocityConstraintPoint
    tangentMass (defined in b2VelocityConstraintPoint)b2VelocityConstraintPoint
    velocityBias (defined in b2VelocityConstraintPoint)b2VelocityConstraintPoint
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_velocity_constraint_point.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_velocity_constraint_point.html deleted file mode 100644 index 1b613bc..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_velocity_constraint_point.html +++ /dev/null @@ -1,129 +0,0 @@ - - - - - - -Box2D: b2VelocityConstraintPoint Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2VelocityConstraintPoint Struct Reference
    -
    -
    - - - - - - - - - - - - - - - - -

    -Public Attributes

    -b2Vec2 rA
     
    -b2Vec2 rB
     
    -float32 normalImpulse
     
    -float32 tangentImpulse
     
    -float32 normalMass
     
    -float32 tangentMass
     
    -float32 velocityBias
     
    -
    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_version-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_version-members.html deleted file mode 100644 index 6e1f7f3..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_version-members.html +++ /dev/null @@ -1,104 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2Version Member List
    -
    -
    - -

    This is the complete list of members for b2Version, including all inherited members.

    - - - - -
    majorb2Version
    minorb2Version
    revisionb2Version
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_version.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_version.html deleted file mode 100644 index 1982539..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_version.html +++ /dev/null @@ -1,124 +0,0 @@ - - - - - - -Box2D: b2Version Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2Version Struct Reference
    -
    -
    - -

    #include <b2Settings.h>

    - - - - - - - - - - - -

    -Public Attributes

    -int32 major
     significant changes
     
    -int32 minor
     incremental changes
     
    -int32 revision
     bug fixes
     
    -

    Detailed Description

    -

    Version numbering scheme. See http://en.wikipedia.org/wiki/Software_versioning

    -

    The documentation for this struct was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_weld_joint_def-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_weld_joint_def-members.html deleted file mode 100644 index e906c2c..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_weld_joint_def-members.html +++ /dev/null @@ -1,114 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2WeldJointDef Member List
    -
    -
    - -

    This is the complete list of members for b2WeldJointDef, including all inherited members.

    - - - - - - - - - - - - - - -
    b2JointDef() (defined in b2JointDef)b2JointDefinline
    b2WeldJointDef() (defined in b2WeldJointDef)b2WeldJointDefinline
    bodyAb2JointDef
    bodyBb2JointDef
    collideConnectedb2JointDef
    dampingRatiob2WeldJointDef
    frequencyHzb2WeldJointDef
    Initialize(b2Body *bodyA, b2Body *bodyB, const b2Vec2 &anchor)b2WeldJointDef
    localAnchorAb2WeldJointDef
    localAnchorBb2WeldJointDef
    referenceAngleb2WeldJointDef
    typeb2JointDef
    userDatab2JointDef
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_weld_joint_def.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_weld_joint_def.html deleted file mode 100644 index 563cc9b..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_weld_joint_def.html +++ /dev/null @@ -1,215 +0,0 @@ - - - - - - -Box2D: b2WeldJointDef Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2WeldJointDef Struct Reference
    -
    -
    - -

    #include <b2WeldJoint.h>

    -
    -Inheritance diagram for b2WeldJointDef:
    -
    -
    - - -b2JointDef - -
    - - - - -

    -Public Member Functions

    void Initialize (b2Body *bodyA, b2Body *bodyB, const b2Vec2 &anchor)
     
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Attributes

    -b2Vec2 localAnchorA
     The local anchor point relative to bodyA's origin.
     
    -b2Vec2 localAnchorB
     The local anchor point relative to bodyB's origin.
     
    -float32 referenceAngle
     The bodyB angle minus bodyA angle in the reference state (radians).
     
    float32 frequencyHz
     
    -float32 dampingRatio
     The damping ratio. 0 = no damping, 1 = critical damping.
     
    - Public Attributes inherited from b2JointDef
    -b2JointType type
     The joint type is set automatically for concrete joint types.
     
    -void * userData
     Use this to attach application specific data to your joints.
     
    -b2BodybodyA
     The first attached body.
     
    -b2BodybodyB
     The second attached body.
     
    -bool collideConnected
     Set this flag to true if the attached bodies should collide.
     
    -

    Detailed Description

    -

    Weld joint definition. You need to specify local anchor points where they are attached and the relative body angle. The position of the anchor points is important for computing the reaction torque.

    -

    Member Function Documentation

    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    void b2WeldJointDef::Initialize (b2BodybodyA,
    b2BodybodyB,
    const b2Vec2anchor 
    )
    -
    -

    Initialize the bodies, anchors, and reference angle using a world anchor point.

    - -
    -
    -

    Member Data Documentation

    - -
    -
    - - - - -
    float32 b2WeldJointDef::frequencyHz
    -
    -

    The mass-spring-damper frequency in Hertz. Rotation only. Disable softness with a value of 0.

    - -
    -
    -
    The documentation for this struct was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_weld_joint_def.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_weld_joint_def.png deleted file mode 100644 index 2631a58..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_weld_joint_def.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_wheel_joint_def-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_wheel_joint_def-members.html deleted file mode 100644 index d2d19d2..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_wheel_joint_def-members.html +++ /dev/null @@ -1,117 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2WheelJointDef Member List
    -
    - - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_wheel_joint_def.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_wheel_joint_def.html deleted file mode 100644 index 5749bdc..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_wheel_joint_def.html +++ /dev/null @@ -1,221 +0,0 @@ - - - - - - -Box2D: b2WheelJointDef Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2WheelJointDef Struct Reference
    -
    -
    - -

    #include <b2WheelJoint.h>

    -
    -Inheritance diagram for b2WheelJointDef:
    -
    -
    - - -b2JointDef - -
    - - - - -

    -Public Member Functions

    void Initialize (b2Body *bodyA, b2Body *bodyB, const b2Vec2 &anchor, const b2Vec2 &axis)
     
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Public Attributes

    -b2Vec2 localAnchorA
     The local anchor point relative to bodyA's origin.
     
    -b2Vec2 localAnchorB
     The local anchor point relative to bodyB's origin.
     
    -b2Vec2 localAxisA
     The local translation axis in bodyA.
     
    -bool enableMotor
     Enable/disable the joint motor.
     
    -float32 maxMotorTorque
     The maximum motor torque, usually in N-m.
     
    -float32 motorSpeed
     The desired motor speed in radians per second.
     
    -float32 frequencyHz
     Suspension frequency, zero indicates no suspension.
     
    -float32 dampingRatio
     Suspension damping ratio, one indicates critical damping.
     
    - Public Attributes inherited from b2JointDef
    -b2JointType type
     The joint type is set automatically for concrete joint types.
     
    -void * userData
     Use this to attach application specific data to your joints.
     
    -b2BodybodyA
     The first attached body.
     
    -b2BodybodyB
     The second attached body.
     
    -bool collideConnected
     Set this flag to true if the attached bodies should collide.
     
    -

    Detailed Description

    -

    Wheel joint definition. This requires defining a line of motion using an axis and an anchor point. The definition uses local anchor points and a local axis so that the initial configuration can violate the constraint slightly. The joint translation is zero when the local anchor points coincide in world space. Using local anchors and a local axis helps when saving and loading a game.

    -

    Member Function Documentation

    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    void b2WheelJointDef::Initialize (b2BodybodyA,
    b2BodybodyB,
    const b2Vec2anchor,
    const b2Vec2axis 
    )
    -
    -

    Initialize the bodies, anchors, axis, and reference angle using the world anchor and world axis.

    - -
    -
    -
    The documentation for this struct was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_wheel_joint_def.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_wheel_joint_def.png deleted file mode 100644 index 2eb7921..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_wheel_joint_def.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_world_manifold-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_world_manifold-members.html deleted file mode 100644 index 316380a..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_world_manifold-members.html +++ /dev/null @@ -1,105 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2WorldManifold Member List
    -
    -
    - -

    This is the complete list of members for b2WorldManifold, including all inherited members.

    - - - - - -
    Initialize(const b2Manifold *manifold, const b2Transform &xfA, float32 radiusA, const b2Transform &xfB, float32 radiusB)b2WorldManifold
    normalb2WorldManifold
    pointsb2WorldManifold
    separationsb2WorldManifold
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_world_manifold.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_world_manifold.html deleted file mode 100644 index 665c117..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_world_manifold.html +++ /dev/null @@ -1,180 +0,0 @@ - - - - - - -Box2D: b2WorldManifold Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2WorldManifold Struct Reference
    -
    -
    - -

    This is used to compute the current state of a contact manifold. - More...

    - -

    #include <b2Collision.h>

    - - - - -

    -Public Member Functions

    void Initialize (const b2Manifold *manifold, const b2Transform &xfA, float32 radiusA, const b2Transform &xfB, float32 radiusB)
     
    - - - - - - - - - - -

    -Public Attributes

    -b2Vec2 normal
     world vector pointing from A to B
     
    -b2Vec2 points [b2_maxManifoldPoints]
     world contact point (point of intersection)
     
    -float32 separations [b2_maxManifoldPoints]
     a negative value indicates overlap, in meters
     
    -

    Detailed Description

    -

    This is used to compute the current state of a contact manifold.

    -

    Member Function Documentation

    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    void b2WorldManifold::Initialize (const b2Manifoldmanifold,
    const b2TransformxfA,
    float32 radiusA,
    const b2TransformxfB,
    float32 radiusB 
    )
    -
    -

    Evaluate the manifold with supplied transforms. This assumes modest motion from the original state. This does not change the point count, impulses, etc. The radii must come from the shapes that generated the manifold.

    - -
    -
    -
    The documentation for this struct was generated from the following files: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_world_query_wrapper-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_world_query_wrapper-members.html deleted file mode 100644 index 0d2a11c..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_world_query_wrapper-members.html +++ /dev/null @@ -1,104 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2WorldQueryWrapper Member List
    -
    -
    - -

    This is the complete list of members for b2WorldQueryWrapper, including all inherited members.

    - - - - -
    broadPhase (defined in b2WorldQueryWrapper)b2WorldQueryWrapper
    callback (defined in b2WorldQueryWrapper)b2WorldQueryWrapper
    QueryCallback(int32 proxyId) (defined in b2WorldQueryWrapper)b2WorldQueryWrapperinline
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_world_query_wrapper.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_world_query_wrapper.html deleted file mode 100644 index 4c1f260..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_world_query_wrapper.html +++ /dev/null @@ -1,121 +0,0 @@ - - - - - - -Box2D: b2WorldQueryWrapper Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2WorldQueryWrapper Struct Reference
    -
    -
    - - - - -

    -Public Member Functions

    -bool QueryCallback (int32 proxyId)
     
    - - - - - -

    -Public Attributes

    -const b2BroadPhasebroadPhase
     
    -b2QueryCallbackcallback
     
    -
    The documentation for this struct was generated from the following file:
      -
    • b2World.cpp
    • -
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_world_ray_cast_wrapper-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_world_ray_cast_wrapper-members.html deleted file mode 100644 index 99cd719..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_world_ray_cast_wrapper-members.html +++ /dev/null @@ -1,104 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2WorldRayCastWrapper Member List
    -
    -
    - -

    This is the complete list of members for b2WorldRayCastWrapper, including all inherited members.

    - - - - -
    broadPhase (defined in b2WorldRayCastWrapper)b2WorldRayCastWrapper
    callback (defined in b2WorldRayCastWrapper)b2WorldRayCastWrapper
    RayCastCallback(const b2RayCastInput &input, int32 proxyId) (defined in b2WorldRayCastWrapper)b2WorldRayCastWrapperinline
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_world_ray_cast_wrapper.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_world_ray_cast_wrapper.html deleted file mode 100644 index f3ee3a3..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/structb2_world_ray_cast_wrapper.html +++ /dev/null @@ -1,121 +0,0 @@ - - - - - - -Box2D: b2WorldRayCastWrapper Struct Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2WorldRayCastWrapper Struct Reference
    -
    -
    - - - - -

    -Public Member Functions

    -float32 RayCastCallback (const b2RayCastInput &input, int32 proxyId)
     
    - - - - - -

    -Public Attributes

    -const b2BroadPhasebroadPhase
     
    -b2RayCastCallbackcallback
     
    -
    The documentation for this struct was generated from the following file:
      -
    • b2World.cpp
    • -
    -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/sync_off.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/sync_off.png deleted file mode 100644 index 3b443fc..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/sync_off.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/sync_on.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/sync_on.png deleted file mode 100644 index e08320f..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/sync_on.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/tab_a.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/tab_a.png deleted file mode 100644 index 3b725c4..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/tab_a.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/tab_b.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/tab_b.png deleted file mode 100644 index e2b4a86..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/tab_b.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/tab_h.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/tab_h.png deleted file mode 100644 index fd5cb70..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/tab_h.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/tab_s.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/tab_s.png deleted file mode 100644 index ab478c9..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/tab_s.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/tabs.css b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/tabs.css deleted file mode 100644 index 9cf578f..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/tabs.css +++ /dev/null @@ -1,60 +0,0 @@ -.tabs, .tabs2, .tabs3 { - background-image: url('tab_b.png'); - width: 100%; - z-index: 101; - font-size: 13px; - font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; -} - -.tabs2 { - font-size: 10px; -} -.tabs3 { - font-size: 9px; -} - -.tablist { - margin: 0; - padding: 0; - display: table; -} - -.tablist li { - float: left; - display: table-cell; - background-image: url('tab_b.png'); - line-height: 36px; - list-style: none; -} - -.tablist a { - display: block; - padding: 0 20px; - font-weight: bold; - background-image:url('tab_s.png'); - background-repeat:no-repeat; - background-position:right; - color: #283A5D; - text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); - text-decoration: none; - outline: none; -} - -.tabs3 .tablist a { - padding: 0 10px; -} - -.tablist a:hover { - background-image: url('tab_h.png'); - background-repeat:repeat-x; - color: #fff; - text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); - text-decoration: none; -} - -.tablist li.current a { - background-image: url('tab_a.png'); - background-repeat:repeat-x; - color: #fff; - text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/unionb2_contact_i_d-members.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/unionb2_contact_i_d-members.html deleted file mode 100644 index d607396..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/unionb2_contact_i_d-members.html +++ /dev/null @@ -1,103 +0,0 @@ - - - - - - -Box2D: Member List - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    -
    -
    b2ContactID Member List
    -
    -
    - -

    This is the complete list of members for b2ContactID, including all inherited members.

    - - - -
    cf (defined in b2ContactID)b2ContactID
    keyb2ContactID
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/unionb2_contact_i_d.html b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/unionb2_contact_i_d.html deleted file mode 100644 index a98f29e..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/API/html/unionb2_contact_i_d.html +++ /dev/null @@ -1,122 +0,0 @@ - - - - - - -Box2D: b2ContactID Union Reference - - - - - - - - - -
    -
    - - - - - - -
    -
    Box2D -  2.3.0 -
    -
    A 2D Physics Engine for Games
    -
    -
    - - - - - - - - - -
    - -
    - -
    -
    - -
    -
    b2ContactID Union Reference
    -
    -
    - -

    Contact ids to facilitate warm starting. - More...

    - -

    #include <b2Collision.h>

    - - - - - - - -

    -Public Attributes

    -b2ContactFeature cf
     
    -uint32 key
     Used to quickly compare contact ids.
     
    -

    Detailed Description

    -

    Contact ids to facilitate warm starting.

    -

    The documentation for this union was generated from the following file: -
    - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/Doxyfile b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/Doxyfile deleted file mode 100644 index 8c38da1..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/Doxyfile +++ /dev/null @@ -1,1789 +0,0 @@ -# Doxyfile 1.7.5.1 - -# This file describes the settings to be used by the documentation system -# doxygen (www.doxygen.org) for a project -# -# All text after a hash (#) is considered a comment and will be ignored -# The format is: -# TAG = value [value, ...] -# For lists items can also be appended using: -# TAG += value [value, ...] -# Values that contain spaces should be placed between quotes (" ") - -#--------------------------------------------------------------------------- -# Project related configuration options -#--------------------------------------------------------------------------- - -# This tag specifies the encoding used for all characters in the config file -# that follow. The default is UTF-8 which is also the encoding used for all -# text before the first occurrence of this tag. Doxygen uses libiconv (or the -# iconv built into libc) for the transcoding. See -# http://www.gnu.org/software/libiconv for the list of possible encodings. - -DOXYFILE_ENCODING = UTF-8 - -# The PROJECT_NAME tag is a single word (or sequence of words) that should -# identify the project. Note that if you do not use Doxywizard you need -# to put quotes around the project name if it contains spaces. - -PROJECT_NAME = Box2D - -# The PROJECT_NUMBER tag can be used to enter a project or revision number. -# This could be handy for archiving the generated documentation or -# if some version control system is used. - -PROJECT_NUMBER = 2.3.0 - -# Using the PROJECT_BRIEF tag one can provide an optional one line description -# for a project that appears at the top of each page and should give viewer -# a quick idea about the purpose of the project. Keep the description short. - -PROJECT_BRIEF = "A 2D Physics Engine for Games" - -# With the PROJECT_LOGO tag one can specify an logo or icon that is -# included in the documentation. The maximum height of the logo should not -# exceed 55 pixels and the maximum width should not exceed 200 pixels. -# Doxygen will copy the logo to the output directory. - -PROJECT_LOGO = images/icon.gif - -# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) -# base path where the generated documentation will be put. -# If a relative path is entered, it will be relative to the location -# where doxygen was started. If left blank the current directory will be used. - -OUTPUT_DIRECTORY = API - -# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create -# 4096 sub-directories (in 2 levels) under the output directory of each output -# format and will distribute the generated files over these directories. -# Enabling this option can be useful when feeding doxygen a huge amount of -# source files, where putting all generated files in the same directory would -# otherwise cause performance problems for the file system. - -CREATE_SUBDIRS = NO - -# The OUTPUT_LANGUAGE tag is used to specify the language in which all -# documentation generated by doxygen is written. Doxygen will use this -# information to generate all constant output in the proper language. -# The default language is English, other supported languages are: -# Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-Traditional, -# Croatian, Czech, Danish, Dutch, Esperanto, Farsi, Finnish, French, German, -# Greek, Hungarian, Italian, Japanese, Japanese-en (Japanese with English -# messages), Korean, Korean-en, Lithuanian, Norwegian, Macedonian, Persian, -# Polish, Portuguese, Romanian, Russian, Serbian, Serbian-Cyrillic, Slovak, -# Slovene, Spanish, Swedish, Ukrainian, and Vietnamese. - -OUTPUT_LANGUAGE = English - -# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will -# include brief member descriptions after the members that are listed in -# the file and class documentation (similar to JavaDoc). -# Set to NO to disable this. - -BRIEF_MEMBER_DESC = YES - -# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend -# the brief description of a member or function before the detailed description. -# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the -# brief descriptions will be completely suppressed. - -REPEAT_BRIEF = YES - -# This tag implements a quasi-intelligent brief description abbreviator -# that is used to form the text in various listings. Each string -# in this list, if found as the leading text of the brief description, will be -# stripped from the text and the result after processing the whole list, is -# used as the annotated text. Otherwise, the brief description is used as-is. -# If left blank, the following values are used ("$name" is automatically -# replaced with the name of the entity): "The $name class" "The $name widget" -# "The $name file" "is" "provides" "specifies" "contains" -# "represents" "a" "an" "the" - -ABBREVIATE_BRIEF = "The $name class" \ - "The $name widget" \ - "The $name file" \ - is \ - provides \ - specifies \ - contains \ - represents \ - a \ - an \ - the - -# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then -# Doxygen will generate a detailed section even if there is only a brief -# description. - -ALWAYS_DETAILED_SEC = NO - -# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all -# inherited members of a class in the documentation of that class as if those -# members were ordinary class members. Constructors, destructors and assignment -# operators of the base classes will not be shown. - -INLINE_INHERITED_MEMB = NO - -# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full -# path before files name in the file list and in the header files. If set -# to NO the shortest path that makes the file name unique will be used. - -FULL_PATH_NAMES = NO - -# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag -# can be used to strip a user-defined part of the path. Stripping is -# only done if one of the specified strings matches the left-hand part of -# the path. The tag can be used to show relative paths in the file list. -# If left blank the directory from which doxygen is run is used as the -# path to strip. - -STRIP_FROM_PATH = - -# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of -# the path mentioned in the documentation of a class, which tells -# the reader which header file to include in order to use a class. -# If left blank only the name of the header file containing the class -# definition is used. Otherwise one should specify the include paths that -# are normally passed to the compiler using the -I flag. - -STRIP_FROM_INC_PATH = - -# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter -# (but less readable) file names. This can be useful if your file system -# doesn't support long names like on DOS, Mac, or CD-ROM. - -SHORT_NAMES = NO - -# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen -# will interpret the first line (until the first dot) of a JavaDoc-style -# comment as the brief description. If set to NO, the JavaDoc -# comments will behave just like regular Qt-style comments -# (thus requiring an explicit @brief command for a brief description.) - -JAVADOC_AUTOBRIEF = NO - -# If the QT_AUTOBRIEF tag is set to YES then Doxygen will -# interpret the first line (until the first dot) of a Qt-style -# comment as the brief description. If set to NO, the comments -# will behave just like regular Qt-style comments (thus requiring -# an explicit \brief command for a brief description.) - -QT_AUTOBRIEF = NO - -# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen -# treat a multi-line C++ special comment block (i.e. a block of //! or /// -# comments) as a brief description. This used to be the default behaviour. -# The new default is to treat a multi-line C++ comment block as a detailed -# description. Set this tag to YES if you prefer the old behaviour instead. - -MULTILINE_CPP_IS_BRIEF = NO - -# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented -# member inherits the documentation from any documented member that it -# re-implements. - -INHERIT_DOCS = YES - -# If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce -# a new page for each member. If set to NO, the documentation of a member will -# be part of the file/class/namespace that contains it. - -SEPARATE_MEMBER_PAGES = NO - -# The TAB_SIZE tag can be used to set the number of spaces in a tab. -# Doxygen uses this value to replace tabs by spaces in code fragments. - -TAB_SIZE = 4 - -# This tag can be used to specify a number of aliases that acts -# as commands in the documentation. An alias has the form "name=value". -# For example adding "sideeffect=\par Side Effects:\n" will allow you to -# put the command \sideeffect (or @sideeffect) in the documentation, which -# will result in a user-defined paragraph with heading "Side Effects:". -# You can put \n's in the value part of an alias to insert newlines. - -ALIASES = - -# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C -# sources only. Doxygen will then generate output that is more tailored for C. -# For instance, some of the names that are used will be different. The list -# of all members will be omitted, etc. - -OPTIMIZE_OUTPUT_FOR_C = NO - -# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java -# sources only. Doxygen will then generate output that is more tailored for -# Java. For instance, namespaces will be presented as packages, qualified -# scopes will look different, etc. - -OPTIMIZE_OUTPUT_JAVA = NO - -# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran -# sources only. Doxygen will then generate output that is more tailored for -# Fortran. - -OPTIMIZE_FOR_FORTRAN = NO - -# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL -# sources. Doxygen will then generate output that is tailored for -# VHDL. - -OPTIMIZE_OUTPUT_VHDL = NO - -# Doxygen selects the parser to use depending on the extension of the files it -# parses. With this tag you can assign which parser to use for a given extension. -# Doxygen has a built-in mapping, but you can override or extend it using this -# tag. The format is ext=language, where ext is a file extension, and language -# is one of the parsers supported by doxygen: IDL, Java, Javascript, CSharp, C, -# C++, D, PHP, Objective-C, Python, Fortran, VHDL, C, C++. For instance to make -# doxygen treat .inc files as Fortran files (default is PHP), and .f files as C -# (default is Fortran), use: inc=Fortran f=C. Note that for custom extensions -# you also need to set FILE_PATTERNS otherwise the files are not read by doxygen. - -EXTENSION_MAPPING = - -# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want -# to include (a tag file for) the STL sources as input, then you should -# set this tag to YES in order to let doxygen match functions declarations and -# definitions whose arguments contain STL classes (e.g. func(std::string); v.s. -# func(std::string) {}). This also makes the inheritance and collaboration -# diagrams that involve STL classes more complete and accurate. - -BUILTIN_STL_SUPPORT = NO - -# If you use Microsoft's C++/CLI language, you should set this option to YES to -# enable parsing support. - -CPP_CLI_SUPPORT = NO - -# Set the SIP_SUPPORT tag to YES if your project consists of sip sources only. -# Doxygen will parse them like normal C++ but will assume all classes use public -# instead of private inheritance when no explicit protection keyword is present. - -SIP_SUPPORT = NO - -# For Microsoft's IDL there are propget and propput attributes to indicate getter -# and setter methods for a property. Setting this option to YES (the default) -# will make doxygen replace the get and set methods by a property in the -# documentation. This will only work if the methods are indeed getting or -# setting a simple type. If this is not the case, or you want to show the -# methods anyway, you should set this option to NO. - -IDL_PROPERTY_SUPPORT = YES - -# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC -# tag is set to YES, then doxygen will reuse the documentation of the first -# member in the group (if any) for the other members of the group. By default -# all members of a group must be documented explicitly. - -DISTRIBUTE_GROUP_DOC = NO - -# Set the SUBGROUPING tag to YES (the default) to allow class member groups of -# the same type (for instance a group of public functions) to be put as a -# subgroup of that type (e.g. under the Public Functions section). Set it to -# NO to prevent subgrouping. Alternatively, this can be done per class using -# the \nosubgrouping command. - -SUBGROUPING = YES - -# When the INLINE_GROUPED_CLASSES tag is set to YES, classes, structs and -# unions are shown inside the group in which they are included (e.g. using -# @ingroup) instead of on a separate page (for HTML and Man pages) or -# section (for LaTeX and RTF). - -INLINE_GROUPED_CLASSES = NO - -# When the INLINE_SIMPLE_STRUCTS tag is set to YES, structs, classes, and -# unions with only public data fields will be shown inline in the documentation -# of the scope in which they are defined (i.e. file, namespace, or group -# documentation), provided this scope is documented. If set to NO (the default), -# structs, classes, and unions are shown on a separate page (for HTML and Man -# pages) or section (for LaTeX and RTF). - -INLINE_SIMPLE_STRUCTS = NO - -# When TYPEDEF_HIDES_STRUCT is enabled, a typedef of a struct, union, or enum -# is documented as struct, union, or enum with the name of the typedef. So -# typedef struct TypeS {} TypeT, will appear in the documentation as a struct -# with name TypeT. When disabled the typedef will appear as a member of a file, -# namespace, or class. And the struct will be named TypeS. This can typically -# be useful for C code in case the coding convention dictates that all compound -# types are typedef'ed and only the typedef is referenced, never the tag name. - -TYPEDEF_HIDES_STRUCT = NO - -# The SYMBOL_CACHE_SIZE determines the size of the internal cache use to -# determine which symbols to keep in memory and which to flush to disk. -# When the cache is full, less often used symbols will be written to disk. -# For small to medium size projects (<1000 input files) the default value is -# probably good enough. For larger projects a too small cache size can cause -# doxygen to be busy swapping symbols to and from disk most of the time -# causing a significant performance penalty. -# If the system has enough physical memory increasing the cache will improve the -# performance by keeping more symbols in memory. Note that the value works on -# a logarithmic scale so increasing the size by one will roughly double the -# memory usage. The cache size is given by this formula: -# 2^(16+SYMBOL_CACHE_SIZE). The valid range is 0..9, the default is 0, -# corresponding to a cache size of 2^16 = 65536 symbols - -SYMBOL_CACHE_SIZE = 0 - -#--------------------------------------------------------------------------- -# Build related configuration options -#--------------------------------------------------------------------------- - -# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in -# documentation are documented, even if no documentation was available. -# Private class members and static file members will be hidden unless -# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES - -EXTRACT_ALL = NO - -# If the EXTRACT_PRIVATE tag is set to YES all private members of a class -# will be included in the documentation. - -EXTRACT_PRIVATE = NO - -# If the EXTRACT_STATIC tag is set to YES all static members of a file -# will be included in the documentation. - -EXTRACT_STATIC = NO - -# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs) -# defined locally in source files will be included in the documentation. -# If set to NO only classes defined in header files are included. - -EXTRACT_LOCAL_CLASSES = YES - -# This flag is only useful for Objective-C code. When set to YES local -# methods, which are defined in the implementation section but not in -# the interface are included in the documentation. -# If set to NO (the default) only methods in the interface are included. - -EXTRACT_LOCAL_METHODS = NO - -# If this flag is set to YES, the members of anonymous namespaces will be -# extracted and appear in the documentation as a namespace called -# 'anonymous_namespace{file}', where file will be replaced with the base -# name of the file that contains the anonymous namespace. By default -# anonymous namespaces are hidden. - -EXTRACT_ANON_NSPACES = NO - -# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all -# undocumented members of documented classes, files or namespaces. -# If set to NO (the default) these members will be included in the -# various overviews, but no documentation section is generated. -# This option has no effect if EXTRACT_ALL is enabled. - -HIDE_UNDOC_MEMBERS = NO - -# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all -# undocumented classes that are normally visible in the class hierarchy. -# If set to NO (the default) these classes will be included in the various -# overviews. This option has no effect if EXTRACT_ALL is enabled. - -HIDE_UNDOC_CLASSES = NO - -# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all -# friend (class|struct|union) declarations. -# If set to NO (the default) these declarations will be included in the -# documentation. - -HIDE_FRIEND_COMPOUNDS = NO - -# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any -# documentation blocks found inside the body of a function. -# If set to NO (the default) these blocks will be appended to the -# function's detailed documentation block. - -HIDE_IN_BODY_DOCS = NO - -# The INTERNAL_DOCS tag determines if documentation -# that is typed after a \internal command is included. If the tag is set -# to NO (the default) then the documentation will be excluded. -# Set it to YES to include the internal documentation. - -INTERNAL_DOCS = NO - -# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate -# file names in lower-case letters. If set to YES upper-case letters are also -# allowed. This is useful if you have classes or files whose names only differ -# in case and if your file system supports case sensitive file names. Windows -# and Mac users are advised to set this option to NO. - -CASE_SENSE_NAMES = NO - -# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen -# will show members with their full class and namespace scopes in the -# documentation. If set to YES the scope will be hidden. - -HIDE_SCOPE_NAMES = NO - -# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen -# will put a list of the files that are included by a file in the documentation -# of that file. - -SHOW_INCLUDE_FILES = YES - -# If the FORCE_LOCAL_INCLUDES tag is set to YES then Doxygen -# will list include files with double quotes in the documentation -# rather than with sharp brackets. - -FORCE_LOCAL_INCLUDES = NO - -# If the INLINE_INFO tag is set to YES (the default) then a tag [inline] -# is inserted in the documentation for inline members. - -INLINE_INFO = YES - -# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen -# will sort the (detailed) documentation of file and class members -# alphabetically by member name. If set to NO the members will appear in -# declaration order. - -SORT_MEMBER_DOCS = YES - -# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the -# brief documentation of file, namespace and class members alphabetically -# by member name. If set to NO (the default) the members will appear in -# declaration order. - -SORT_BRIEF_DOCS = NO - -# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen -# will sort the (brief and detailed) documentation of class members so that -# constructors and destructors are listed first. If set to NO (the default) -# the constructors will appear in the respective orders defined by -# SORT_MEMBER_DOCS and SORT_BRIEF_DOCS. -# This tag will be ignored for brief docs if SORT_BRIEF_DOCS is set to NO -# and ignored for detailed docs if SORT_MEMBER_DOCS is set to NO. - -SORT_MEMBERS_CTORS_1ST = NO - -# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the -# hierarchy of group names into alphabetical order. If set to NO (the default) -# the group names will appear in their defined order. - -SORT_GROUP_NAMES = NO - -# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be -# sorted by fully-qualified names, including namespaces. If set to -# NO (the default), the class list will be sorted only by class name, -# not including the namespace part. -# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES. -# Note: This option applies only to the class list, not to the -# alphabetical list. - -SORT_BY_SCOPE_NAME = NO - -# If the STRICT_PROTO_MATCHING option is enabled and doxygen fails to -# do proper type resolution of all parameters of a function it will reject a -# match between the prototype and the implementation of a member function even -# if there is only one candidate or it is obvious which candidate to choose -# by doing a simple string match. By disabling STRICT_PROTO_MATCHING doxygen -# will still accept a match between prototype and implementation in such cases. - -STRICT_PROTO_MATCHING = NO - -# The GENERATE_TODOLIST tag can be used to enable (YES) or -# disable (NO) the todo list. This list is created by putting \todo -# commands in the documentation. - -GENERATE_TODOLIST = YES - -# The GENERATE_TESTLIST tag can be used to enable (YES) or -# disable (NO) the test list. This list is created by putting \test -# commands in the documentation. - -GENERATE_TESTLIST = YES - -# The GENERATE_BUGLIST tag can be used to enable (YES) or -# disable (NO) the bug list. This list is created by putting \bug -# commands in the documentation. - -GENERATE_BUGLIST = YES - -# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or -# disable (NO) the deprecated list. This list is created by putting -# \deprecated commands in the documentation. - -GENERATE_DEPRECATEDLIST= YES - -# The ENABLED_SECTIONS tag can be used to enable conditional -# documentation sections, marked by \if sectionname ... \endif. - -ENABLED_SECTIONS = - -# The MAX_INITIALIZER_LINES tag determines the maximum number of lines -# the initial value of a variable or macro consists of for it to appear in -# the documentation. If the initializer consists of more lines than specified -# here it will be hidden. Use a value of 0 to hide initializers completely. -# The appearance of the initializer of individual variables and macros in the -# documentation can be controlled using \showinitializer or \hideinitializer -# command in the documentation regardless of this setting. - -MAX_INITIALIZER_LINES = 30 - -# Set the SHOW_USED_FILES tag to NO to disable the list of files generated -# at the bottom of the documentation of classes and structs. If set to YES the -# list will mention the files that were used to generate the documentation. - -SHOW_USED_FILES = YES - -# If the sources in your project are distributed over multiple directories -# then setting the SHOW_DIRECTORIES tag to YES will show the directory hierarchy -# in the documentation. The default is NO. - -SHOW_DIRECTORIES = NO - -# Set the SHOW_FILES tag to NO to disable the generation of the Files page. -# This will remove the Files entry from the Quick Index and from the -# Folder Tree View (if specified). The default is YES. - -SHOW_FILES = YES - -# Set the SHOW_NAMESPACES tag to NO to disable the generation of the -# Namespaces page. This will remove the Namespaces entry from the Quick Index -# and from the Folder Tree View (if specified). The default is YES. - -SHOW_NAMESPACES = YES - -# The FILE_VERSION_FILTER tag can be used to specify a program or script that -# doxygen should invoke to get the current version for each file (typically from -# the version control system). Doxygen will invoke the program by executing (via -# popen()) the command , where is the value of -# the FILE_VERSION_FILTER tag, and is the name of an input file -# provided by doxygen. Whatever the program writes to standard output -# is used as the file version. See the manual for examples. - -FILE_VERSION_FILTER = - -# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed -# by doxygen. The layout file controls the global structure of the generated -# output files in an output format independent way. The create the layout file -# that represents doxygen's defaults, run doxygen with the -l option. -# You can optionally specify a file name after the option, if omitted -# DoxygenLayout.xml will be used as the name of the layout file. - -LAYOUT_FILE = - -# The CITE_BIB_FILES tag can be used to specify one or more bib files -# containing the references data. This must be a list of .bib files. The -# .bib extension is automatically appended if omitted. Using this command -# requires the bibtex tool to be installed. See also -# http://en.wikipedia.org/wiki/BibTeX for more info. For LaTeX the style -# of the bibliography can be controlled using LATEX_BIB_STYLE. - -CITE_BIB_FILES = - -#--------------------------------------------------------------------------- -# configuration options related to warning and progress messages -#--------------------------------------------------------------------------- - -# The QUIET tag can be used to turn on/off the messages that are generated -# by doxygen. Possible values are YES and NO. If left blank NO is used. - -QUIET = NO - -# The WARNINGS tag can be used to turn on/off the warning messages that are -# generated by doxygen. Possible values are YES and NO. If left blank -# NO is used. - -WARNINGS = YES - -# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings -# for undocumented members. If EXTRACT_ALL is set to YES then this flag will -# automatically be disabled. - -WARN_IF_UNDOCUMENTED = YES - -# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for -# potential errors in the documentation, such as not documenting some -# parameters in a documented function, or documenting parameters that -# don't exist or using markup commands wrongly. - -WARN_IF_DOC_ERROR = YES - -# The WARN_NO_PARAMDOC option can be enabled to get warnings for -# functions that are documented, but have no documentation for their parameters -# or return value. If set to NO (the default) doxygen will only warn about -# wrong or incomplete parameter documentation, but not about the absence of -# documentation. - -WARN_NO_PARAMDOC = NO - -# The WARN_FORMAT tag determines the format of the warning messages that -# doxygen can produce. The string should contain the $file, $line, and $text -# tags, which will be replaced by the file and line number from which the -# warning originated and the warning text. Optionally the format may contain -# $version, which will be replaced by the version of the file (if it could -# be obtained via FILE_VERSION_FILTER) - -WARN_FORMAT = "$file:$line: $text" - -# The WARN_LOGFILE tag can be used to specify a file to which warning -# and error messages should be written. If left blank the output is written -# to stderr. - -WARN_LOGFILE = - -#--------------------------------------------------------------------------- -# configuration options related to the input files -#--------------------------------------------------------------------------- - -# The INPUT tag can be used to specify the files and/or directories that contain -# documented source files. You may enter file names like "myfile.cpp" or -# directories like "/usr/src/myproject". Separate the files or directories -# with spaces. - -INPUT = ../Box2D - -# This tag can be used to specify the character encoding of the source files -# that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is -# also the default input encoding. Doxygen uses libiconv (or the iconv built -# into libc) for the transcoding. See http://www.gnu.org/software/libiconv for -# the list of possible encodings. - -INPUT_ENCODING = UTF-8 - -# If the value of the INPUT tag contains directories, you can use the -# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp -# and *.h) to filter out the source-files in the directories. If left -# blank the following patterns are tested: -# *.c *.cc *.cxx *.cpp *.c++ *.d *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh -# *.hxx *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.dox *.py -# *.f90 *.f *.for *.vhd *.vhdl - -FILE_PATTERNS = *.c \ - *.cc \ - *.cxx \ - *.cpp \ - *.c++ \ - *.d \ - *.java \ - *.ii \ - *.ixx \ - *.ipp \ - *.i++ \ - *.inl \ - *.h \ - *.hh \ - *.hxx \ - *.hpp \ - *.h++ \ - *.idl \ - *.odl \ - *.cs \ - *.php \ - *.php3 \ - *.inc \ - *.m \ - *.mm \ - *.dox \ - *.py \ - *.f90 \ - *.f \ - *.for \ - *.vhd \ - *.vhdl - -# The RECURSIVE tag can be used to turn specify whether or not subdirectories -# should be searched for input files as well. Possible values are YES and NO. -# If left blank NO is used. - -RECURSIVE = YES - -# The EXCLUDE tag can be used to specify files and/or directories that should -# excluded from the INPUT source files. This way you can easily exclude a -# subdirectory from a directory tree whose root is specified with the INPUT tag. -# Note that relative paths are relative to directory from which doxygen is run. - -EXCLUDE = - -# The EXCLUDE_SYMLINKS tag can be used select whether or not files or -# directories that are symbolic links (a Unix file system feature) are excluded -# from the input. - -EXCLUDE_SYMLINKS = NO - -# If the value of the INPUT tag contains directories, you can use the -# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude -# certain files from those directories. Note that the wildcards are matched -# against the file with absolute path, so to exclude all test directories -# for example use the pattern */test/* - -EXCLUDE_PATTERNS = - -# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names -# (namespaces, classes, functions, etc.) that should be excluded from the -# output. The symbol name can be a fully qualified name, a word, or if the -# wildcard * is used, a substring. Examples: ANamespace, AClass, -# AClass::ANamespace, ANamespace::*Test - -EXCLUDE_SYMBOLS = - -# The EXAMPLE_PATH tag can be used to specify one or more files or -# directories that contain example code fragments that are included (see -# the \include command). - -EXAMPLE_PATH = - -# If the value of the EXAMPLE_PATH tag contains directories, you can use the -# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp -# and *.h) to filter out the source-files in the directories. If left -# blank all files are included. - -EXAMPLE_PATTERNS = * - -# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be -# searched for input files to be used with the \include or \dontinclude -# commands irrespective of the value of the RECURSIVE tag. -# Possible values are YES and NO. If left blank NO is used. - -EXAMPLE_RECURSIVE = NO - -# The IMAGE_PATH tag can be used to specify one or more files or -# directories that contain image that are included in the documentation (see -# the \image command). - -IMAGE_PATH = - -# The INPUT_FILTER tag can be used to specify a program that doxygen should -# invoke to filter for each input file. Doxygen will invoke the filter program -# by executing (via popen()) the command , where -# is the value of the INPUT_FILTER tag, and is the name of an -# input file. Doxygen will then use the output that the filter program writes -# to standard output. If FILTER_PATTERNS is specified, this tag will be -# ignored. - -INPUT_FILTER = - -# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern -# basis. Doxygen will compare the file name with each pattern and apply the -# filter if there is a match. The filters are a list of the form: -# pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further -# info on how filters are used. If FILTER_PATTERNS is empty or if -# non of the patterns match the file name, INPUT_FILTER is applied. - -FILTER_PATTERNS = - -# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using -# INPUT_FILTER) will be used to filter the input files when producing source -# files to browse (i.e. when SOURCE_BROWSER is set to YES). - -FILTER_SOURCE_FILES = NO - -# The FILTER_SOURCE_PATTERNS tag can be used to specify source filters per file -# pattern. A pattern will override the setting for FILTER_PATTERN (if any) -# and it is also possible to disable source filtering for a specific pattern -# using *.ext= (so without naming a filter). This option only has effect when -# FILTER_SOURCE_FILES is enabled. - -FILTER_SOURCE_PATTERNS = - -#--------------------------------------------------------------------------- -# configuration options related to source browsing -#--------------------------------------------------------------------------- - -# If the SOURCE_BROWSER tag is set to YES then a list of source files will -# be generated. Documented entities will be cross-referenced with these sources. -# Note: To get rid of all source code in the generated output, make sure also -# VERBATIM_HEADERS is set to NO. - -SOURCE_BROWSER = NO - -# Setting the INLINE_SOURCES tag to YES will include the body -# of functions and classes directly in the documentation. - -INLINE_SOURCES = NO - -# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct -# doxygen to hide any special comment blocks from generated source code -# fragments. Normal C and C++ comments will always remain visible. - -STRIP_CODE_COMMENTS = YES - -# If the REFERENCED_BY_RELATION tag is set to YES -# then for each documented function all documented -# functions referencing it will be listed. - -REFERENCED_BY_RELATION = NO - -# If the REFERENCES_RELATION tag is set to YES -# then for each documented function all documented entities -# called/used by that function will be listed. - -REFERENCES_RELATION = NO - -# If the REFERENCES_LINK_SOURCE tag is set to YES (the default) -# and SOURCE_BROWSER tag is set to YES, then the hyperlinks from -# functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will -# link to the source code. Otherwise they will link to the documentation. - -REFERENCES_LINK_SOURCE = YES - -# If the USE_HTAGS tag is set to YES then the references to source code -# will point to the HTML generated by the htags(1) tool instead of doxygen -# built-in source browser. The htags tool is part of GNU's global source -# tagging system (see http://www.gnu.org/software/global/global.html). You -# will need version 4.8.6 or higher. - -USE_HTAGS = NO - -# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen -# will generate a verbatim copy of the header file for each class for -# which an include is specified. Set to NO to disable this. - -VERBATIM_HEADERS = YES - -#--------------------------------------------------------------------------- -# configuration options related to the alphabetical class index -#--------------------------------------------------------------------------- - -# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index -# of all compounds will be generated. Enable this if the project -# contains a lot of classes, structs, unions or interfaces. - -ALPHABETICAL_INDEX = YES - -# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then -# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns -# in which this list will be split (can be a number in the range [1..20]) - -COLS_IN_ALPHA_INDEX = 5 - -# In case all classes in a project start with a common prefix, all -# classes will be put under the same header in the alphabetical index. -# The IGNORE_PREFIX tag can be used to specify one or more prefixes that -# should be ignored while generating the index headers. - -IGNORE_PREFIX = - -#--------------------------------------------------------------------------- -# configuration options related to the HTML output -#--------------------------------------------------------------------------- - -# If the GENERATE_HTML tag is set to YES (the default) Doxygen will -# generate HTML output. - -GENERATE_HTML = YES - -# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. -# If a relative path is entered the value of OUTPUT_DIRECTORY will be -# put in front of it. If left blank `html' will be used as the default path. - -HTML_OUTPUT = html - -# The HTML_FILE_EXTENSION tag can be used to specify the file extension for -# each generated HTML page (for example: .htm,.php,.asp). If it is left blank -# doxygen will generate files with .html extension. - -HTML_FILE_EXTENSION = .html - -# The HTML_HEADER tag can be used to specify a personal HTML header for -# each generated HTML page. If it is left blank doxygen will generate a -# standard header. Note that when using a custom header you are responsible -# for the proper inclusion of any scripts and style sheets that doxygen -# needs, which is dependent on the configuration options used. -# It is adviced to generate a default header using "doxygen -w html -# header.html footer.html stylesheet.css YourConfigFile" and then modify -# that header. Note that the header is subject to change so you typically -# have to redo this when upgrading to a newer version of doxygen or when -# changing the value of configuration settings such as GENERATE_TREEVIEW! - -HTML_HEADER = - -# The HTML_FOOTER tag can be used to specify a personal HTML footer for -# each generated HTML page. If it is left blank doxygen will generate a -# standard footer. - -HTML_FOOTER = - -# The HTML_STYLESHEET tag can be used to specify a user-defined cascading -# style sheet that is used by each HTML page. It can be used to -# fine-tune the look of the HTML output. If the tag is left blank doxygen -# will generate a default style sheet. Note that doxygen will try to copy -# the style sheet file to the HTML output directory, so don't put your own -# stylesheet in the HTML output directory as well, or it will be erased! - -HTML_STYLESHEET = - -# The HTML_EXTRA_FILES tag can be used to specify one or more extra images or -# other source files which should be copied to the HTML output directory. Note -# that these files will be copied to the base HTML output directory. Use the -# $relpath$ marker in the HTML_HEADER and/or HTML_FOOTER files to load these -# files. In the HTML_STYLESHEET file, use the file name only. Also note that -# the files will be copied as-is; there are no commands or markers available. - -HTML_EXTRA_FILES = - -# The HTML_COLORSTYLE_HUE tag controls the color of the HTML output. -# Doxygen will adjust the colors in the stylesheet and background images -# according to this color. Hue is specified as an angle on a colorwheel, -# see http://en.wikipedia.org/wiki/Hue for more information. -# For instance the value 0 represents red, 60 is yellow, 120 is green, -# 180 is cyan, 240 is blue, 300 purple, and 360 is red again. -# The allowed range is 0 to 359. - -HTML_COLORSTYLE_HUE = 220 - -# The HTML_COLORSTYLE_SAT tag controls the purity (or saturation) of -# the colors in the HTML output. For a value of 0 the output will use -# grayscales only. A value of 255 will produce the most vivid colors. - -HTML_COLORSTYLE_SAT = 100 - -# The HTML_COLORSTYLE_GAMMA tag controls the gamma correction applied to -# the luminance component of the colors in the HTML output. Values below -# 100 gradually make the output lighter, whereas values above 100 make -# the output darker. The value divided by 100 is the actual gamma applied, -# so 80 represents a gamma of 0.8, The value 220 represents a gamma of 2.2, -# and 100 does not change the gamma. - -HTML_COLORSTYLE_GAMMA = 80 - -# If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML -# page will contain the date and time when the page was generated. Setting -# this to NO can help when comparing the output of multiple runs. - -HTML_TIMESTAMP = YES - -# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes, -# files or namespaces will be aligned in HTML using tables. If set to -# NO a bullet list will be used. - -HTML_ALIGN_MEMBERS = YES - -# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML -# documentation will contain sections that can be hidden and shown after the -# page has loaded. For this to work a browser that supports -# JavaScript and DHTML is required (for instance Mozilla 1.0+, Firefox -# Netscape 6.0+, Internet explorer 5.0+, Konqueror, or Safari). - -HTML_DYNAMIC_SECTIONS = NO - -# If the GENERATE_DOCSET tag is set to YES, additional index files -# will be generated that can be used as input for Apple's Xcode 3 -# integrated development environment, introduced with OSX 10.5 (Leopard). -# To create a documentation set, doxygen will generate a Makefile in the -# HTML output directory. Running make will produce the docset in that -# directory and running "make install" will install the docset in -# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find -# it at startup. -# See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html -# for more information. - -GENERATE_DOCSET = NO - -# When GENERATE_DOCSET tag is set to YES, this tag determines the name of the -# feed. A documentation feed provides an umbrella under which multiple -# documentation sets from a single provider (such as a company or product suite) -# can be grouped. - -DOCSET_FEEDNAME = "Doxygen generated docs" - -# When GENERATE_DOCSET tag is set to YES, this tag specifies a string that -# should uniquely identify the documentation set bundle. This should be a -# reverse domain-name style string, e.g. com.mycompany.MyDocSet. Doxygen -# will append .docset to the name. - -DOCSET_BUNDLE_ID = org.doxygen.Project - -# When GENERATE_PUBLISHER_ID tag specifies a string that should uniquely identify -# the documentation publisher. This should be a reverse domain-name style -# string, e.g. com.mycompany.MyDocSet.documentation. - -DOCSET_PUBLISHER_ID = org.doxygen.Publisher - -# The GENERATE_PUBLISHER_NAME tag identifies the documentation publisher. - -DOCSET_PUBLISHER_NAME = Publisher - -# If the GENERATE_HTMLHELP tag is set to YES, additional index files -# will be generated that can be used as input for tools like the -# Microsoft HTML help workshop to generate a compiled HTML help file (.chm) -# of the generated HTML documentation. - -GENERATE_HTMLHELP = NO - -# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can -# be used to specify the file name of the resulting .chm file. You -# can add a path in front of the file if the result should not be -# written to the html output directory. - -CHM_FILE = - -# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can -# be used to specify the location (absolute path including file name) of -# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run -# the HTML help compiler on the generated index.hhp. - -HHC_LOCATION = - -# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag -# controls if a separate .chi index file is generated (YES) or that -# it should be included in the master .chm file (NO). - -GENERATE_CHI = NO - -# If the GENERATE_HTMLHELP tag is set to YES, the CHM_INDEX_ENCODING -# is used to encode HtmlHelp index (hhk), content (hhc) and project file -# content. - -CHM_INDEX_ENCODING = - -# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag -# controls whether a binary table of contents is generated (YES) or a -# normal table of contents (NO) in the .chm file. - -BINARY_TOC = NO - -# The TOC_EXPAND flag can be set to YES to add extra items for group members -# to the contents of the HTML help documentation and to the tree view. - -TOC_EXPAND = NO - -# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and -# QHP_VIRTUAL_FOLDER are set, an additional index file will be generated -# that can be used as input for Qt's qhelpgenerator to generate a -# Qt Compressed Help (.qch) of the generated HTML documentation. - -GENERATE_QHP = NO - -# If the QHG_LOCATION tag is specified, the QCH_FILE tag can -# be used to specify the file name of the resulting .qch file. -# The path specified is relative to the HTML output folder. - -QCH_FILE = - -# The QHP_NAMESPACE tag specifies the namespace to use when generating -# Qt Help Project output. For more information please see -# http://doc.trolltech.com/qthelpproject.html#namespace - -QHP_NAMESPACE = org.doxygen.Project - -# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating -# Qt Help Project output. For more information please see -# http://doc.trolltech.com/qthelpproject.html#virtual-folders - -QHP_VIRTUAL_FOLDER = doc - -# If QHP_CUST_FILTER_NAME is set, it specifies the name of a custom filter to -# add. For more information please see -# http://doc.trolltech.com/qthelpproject.html#custom-filters - -QHP_CUST_FILTER_NAME = - -# The QHP_CUST_FILT_ATTRS tag specifies the list of the attributes of the -# custom filter to add. For more information please see -# -# Qt Help Project / Custom Filters. - -QHP_CUST_FILTER_ATTRS = - -# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this -# project's -# filter section matches. -# -# Qt Help Project / Filter Attributes. - -QHP_SECT_FILTER_ATTRS = - -# If the GENERATE_QHP tag is set to YES, the QHG_LOCATION tag can -# be used to specify the location of Qt's qhelpgenerator. -# If non-empty doxygen will try to run qhelpgenerator on the generated -# .qhp file. - -QHG_LOCATION = - -# If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files -# will be generated, which together with the HTML files, form an Eclipse help -# plugin. To install this plugin and make it available under the help contents -# menu in Eclipse, the contents of the directory containing the HTML and XML -# files needs to be copied into the plugins directory of eclipse. The name of -# the directory within the plugins directory should be the same as -# the ECLIPSE_DOC_ID value. After copying Eclipse needs to be restarted before -# the help appears. - -GENERATE_ECLIPSEHELP = NO - -# A unique identifier for the eclipse help plugin. When installing the plugin -# the directory name containing the HTML and XML files should also have -# this name. - -ECLIPSE_DOC_ID = org.doxygen.Project - -# The DISABLE_INDEX tag can be used to turn on/off the condensed index at -# top of each HTML page. The value NO (the default) enables the index and -# the value YES disables it. - -DISABLE_INDEX = NO - -# The ENUM_VALUES_PER_LINE tag can be used to set the number of enum values -# (range [0,1..20]) that doxygen will group on one line in the generated HTML -# documentation. Note that a value of 0 will completely suppress the enum -# values from appearing in the overview section. - -ENUM_VALUES_PER_LINE = 4 - -# The GENERATE_TREEVIEW tag is used to specify whether a tree-like index -# structure should be generated to display hierarchical information. -# If the tag value is set to YES, a side panel will be generated -# containing a tree-like index structure (just like the one that -# is generated for HTML Help). For this to work a browser that supports -# JavaScript, DHTML, CSS and frames is required (i.e. any modern browser). -# Windows users are probably better off using the HTML help feature. - -GENERATE_TREEVIEW = NO - -# By enabling USE_INLINE_TREES, doxygen will generate the Groups, Directories, -# and Class Hierarchy pages using a tree view instead of an ordered list. - -USE_INLINE_TREES = NO - -# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be -# used to set the initial width (in pixels) of the frame in which the tree -# is shown. - -TREEVIEW_WIDTH = 250 - -# When the EXT_LINKS_IN_WINDOW option is set to YES doxygen will open -# links to external symbols imported via tag files in a separate window. - -EXT_LINKS_IN_WINDOW = NO - -# Use this tag to change the font size of Latex formulas included -# as images in the HTML documentation. The default is 10. Note that -# when you change the font size after a successful doxygen run you need -# to manually remove any form_*.png images from the HTML output directory -# to force them to be regenerated. - -FORMULA_FONTSIZE = 10 - -# Use the FORMULA_TRANPARENT tag to determine whether or not the images -# generated for formulas are transparent PNGs. Transparent PNGs are -# not supported properly for IE 6.0, but are supported on all modern browsers. -# Note that when changing this option you need to delete any form_*.png files -# in the HTML output before the changes have effect. - -FORMULA_TRANSPARENT = YES - -# Enable the USE_MATHJAX option to render LaTeX formulas using MathJax -# (see http://www.mathjax.org) which uses client side Javascript for the -# rendering instead of using prerendered bitmaps. Use this if you do not -# have LaTeX installed or if you want to formulas look prettier in the HTML -# output. When enabled you also need to install MathJax separately and -# configure the path to it using the MATHJAX_RELPATH option. - -USE_MATHJAX = NO - -# When MathJax is enabled you need to specify the location relative to the -# HTML output directory using the MATHJAX_RELPATH option. The destination -# directory should contain the MathJax.js script. For instance, if the mathjax -# directory is located at the same level as the HTML output directory, then -# MATHJAX_RELPATH should be ../mathjax. The default value points to the -# mathjax.org site, so you can quickly see the result without installing -# MathJax, but it is strongly recommended to install a local copy of MathJax -# before deployment. - -MATHJAX_RELPATH = http://www.mathjax.org/mathjax - -# The MATHJAX_EXTENSIONS tag can be used to specify one or MathJax extension -# names that should be enabled during MathJax rendering. - -MATHJAX_EXTENSIONS = - -# When the SEARCHENGINE tag is enabled doxygen will generate a search box -# for the HTML output. The underlying search engine uses javascript -# and DHTML and should work on any modern browser. Note that when using -# HTML help (GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets -# (GENERATE_DOCSET) there is already a search function so this one should -# typically be disabled. For large projects the javascript based search engine -# can be slow, then enabling SERVER_BASED_SEARCH may provide a better solution. - -SEARCHENGINE = YES - -# When the SERVER_BASED_SEARCH tag is enabled the search engine will be -# implemented using a PHP enabled web server instead of at the web client -# using Javascript. Doxygen will generate the search PHP script and index -# file to put on the web server. The advantage of the server -# based approach is that it scales better to large projects and allows -# full text search. The disadvantages are that it is more difficult to setup -# and does not have live searching capabilities. - -SERVER_BASED_SEARCH = NO - -#--------------------------------------------------------------------------- -# configuration options related to the LaTeX output -#--------------------------------------------------------------------------- - -# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will -# generate Latex output. - -GENERATE_LATEX = NO - -# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. -# If a relative path is entered the value of OUTPUT_DIRECTORY will be -# put in front of it. If left blank `latex' will be used as the default path. - -LATEX_OUTPUT = latex - -# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be -# invoked. If left blank `latex' will be used as the default command name. -# Note that when enabling USE_PDFLATEX this option is only used for -# generating bitmaps for formulas in the HTML output, but not in the -# Makefile that is written to the output directory. - -LATEX_CMD_NAME = latex - -# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to -# generate index for LaTeX. If left blank `makeindex' will be used as the -# default command name. - -MAKEINDEX_CMD_NAME = makeindex - -# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact -# LaTeX documents. This may be useful for small projects and may help to -# save some trees in general. - -COMPACT_LATEX = NO - -# The PAPER_TYPE tag can be used to set the paper type that is used -# by the printer. Possible values are: a4, letter, legal and -# executive. If left blank a4wide will be used. - -PAPER_TYPE = a4 - -# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX -# packages that should be included in the LaTeX output. - -EXTRA_PACKAGES = - -# The LATEX_HEADER tag can be used to specify a personal LaTeX header for -# the generated latex document. The header should contain everything until -# the first chapter. If it is left blank doxygen will generate a -# standard header. Notice: only use this tag if you know what you are doing! - -LATEX_HEADER = - -# The LATEX_FOOTER tag can be used to specify a personal LaTeX footer for -# the generated latex document. The footer should contain everything after -# the last chapter. If it is left blank doxygen will generate a -# standard footer. Notice: only use this tag if you know what you are doing! - -LATEX_FOOTER = - -# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated -# is prepared for conversion to pdf (using ps2pdf). The pdf file will -# contain links (just like the HTML output) instead of page references -# This makes the output suitable for online browsing using a pdf viewer. - -PDF_HYPERLINKS = YES - -# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of -# plain latex in the generated Makefile. Set this option to YES to get a -# higher quality PDF documentation. - -USE_PDFLATEX = YES - -# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode. -# command to the generated LaTeX files. This will instruct LaTeX to keep -# running if errors occur, instead of asking the user for help. -# This option is also used when generating formulas in HTML. - -LATEX_BATCHMODE = NO - -# If LATEX_HIDE_INDICES is set to YES then doxygen will not -# include the index chapters (such as File Index, Compound Index, etc.) -# in the output. - -LATEX_HIDE_INDICES = NO - -# If LATEX_SOURCE_CODE is set to YES then doxygen will include -# source code with syntax highlighting in the LaTeX output. -# Note that which sources are shown also depends on other settings -# such as SOURCE_BROWSER. - -LATEX_SOURCE_CODE = NO - -# The LATEX_BIB_STYLE tag can be used to specify the style to use for the -# bibliography, e.g. plainnat, or ieeetr. The default style is "plain". See -# http://en.wikipedia.org/wiki/BibTeX for more info. - -LATEX_BIB_STYLE = plain - -#--------------------------------------------------------------------------- -# configuration options related to the RTF output -#--------------------------------------------------------------------------- - -# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output -# The RTF output is optimized for Word 97 and may not look very pretty with -# other RTF readers or editors. - -GENERATE_RTF = NO - -# The RTF_OUTPUT tag is used to specify where the RTF docs will be put. -# If a relative path is entered the value of OUTPUT_DIRECTORY will be -# put in front of it. If left blank `rtf' will be used as the default path. - -RTF_OUTPUT = rtf - -# If the COMPACT_RTF tag is set to YES Doxygen generates more compact -# RTF documents. This may be useful for small projects and may help to -# save some trees in general. - -COMPACT_RTF = NO - -# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated -# will contain hyperlink fields. The RTF file will -# contain links (just like the HTML output) instead of page references. -# This makes the output suitable for online browsing using WORD or other -# programs which support those fields. -# Note: wordpad (write) and others do not support links. - -RTF_HYPERLINKS = NO - -# Load stylesheet definitions from file. Syntax is similar to doxygen's -# config file, i.e. a series of assignments. You only have to provide -# replacements, missing definitions are set to their default value. - -RTF_STYLESHEET_FILE = - -# Set optional variables used in the generation of an rtf document. -# Syntax is similar to doxygen's config file. - -RTF_EXTENSIONS_FILE = - -#--------------------------------------------------------------------------- -# configuration options related to the man page output -#--------------------------------------------------------------------------- - -# If the GENERATE_MAN tag is set to YES (the default) Doxygen will -# generate man pages - -GENERATE_MAN = NO - -# The MAN_OUTPUT tag is used to specify where the man pages will be put. -# If a relative path is entered the value of OUTPUT_DIRECTORY will be -# put in front of it. If left blank `man' will be used as the default path. - -MAN_OUTPUT = man - -# The MAN_EXTENSION tag determines the extension that is added to -# the generated man pages (default is the subroutine's section .3) - -MAN_EXTENSION = .3 - -# If the MAN_LINKS tag is set to YES and Doxygen generates man output, -# then it will generate one additional man file for each entity -# documented in the real man page(s). These additional files -# only source the real man page, but without them the man command -# would be unable to find the correct page. The default is NO. - -MAN_LINKS = NO - -#--------------------------------------------------------------------------- -# configuration options related to the XML output -#--------------------------------------------------------------------------- - -# If the GENERATE_XML tag is set to YES Doxygen will -# generate an XML file that captures the structure of -# the code including all documentation. - -GENERATE_XML = NO - -# The XML_OUTPUT tag is used to specify where the XML pages will be put. -# If a relative path is entered the value of OUTPUT_DIRECTORY will be -# put in front of it. If left blank `xml' will be used as the default path. - -XML_OUTPUT = xml - -# The XML_SCHEMA tag can be used to specify an XML schema, -# which can be used by a validating XML parser to check the -# syntax of the XML files. - -XML_SCHEMA = - -# The XML_DTD tag can be used to specify an XML DTD, -# which can be used by a validating XML parser to check the -# syntax of the XML files. - -XML_DTD = - -# If the XML_PROGRAMLISTING tag is set to YES Doxygen will -# dump the program listings (including syntax highlighting -# and cross-referencing information) to the XML output. Note that -# enabling this will significantly increase the size of the XML output. - -XML_PROGRAMLISTING = YES - -#--------------------------------------------------------------------------- -# configuration options for the AutoGen Definitions output -#--------------------------------------------------------------------------- - -# If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will -# generate an AutoGen Definitions (see autogen.sf.net) file -# that captures the structure of the code including all -# documentation. Note that this feature is still experimental -# and incomplete at the moment. - -GENERATE_AUTOGEN_DEF = NO - -#--------------------------------------------------------------------------- -# configuration options related to the Perl module output -#--------------------------------------------------------------------------- - -# If the GENERATE_PERLMOD tag is set to YES Doxygen will -# generate a Perl module file that captures the structure of -# the code including all documentation. Note that this -# feature is still experimental and incomplete at the -# moment. - -GENERATE_PERLMOD = NO - -# If the PERLMOD_LATEX tag is set to YES Doxygen will generate -# the necessary Makefile rules, Perl scripts and LaTeX code to be able -# to generate PDF and DVI output from the Perl module output. - -PERLMOD_LATEX = NO - -# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be -# nicely formatted so it can be parsed by a human reader. This is useful -# if you want to understand what is going on. On the other hand, if this -# tag is set to NO the size of the Perl module output will be much smaller -# and Perl will parse it just the same. - -PERLMOD_PRETTY = YES - -# The names of the make variables in the generated doxyrules.make file -# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX. -# This is useful so different doxyrules.make files included by the same -# Makefile don't overwrite each other's variables. - -PERLMOD_MAKEVAR_PREFIX = - -#--------------------------------------------------------------------------- -# Configuration options related to the preprocessor -#--------------------------------------------------------------------------- - -# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will -# evaluate all C-preprocessor directives found in the sources and include -# files. - -ENABLE_PREPROCESSING = YES - -# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro -# names in the source code. If set to NO (the default) only conditional -# compilation will be performed. Macro expansion can be done in a controlled -# way by setting EXPAND_ONLY_PREDEF to YES. - -MACRO_EXPANSION = NO - -# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES -# then the macro expansion is limited to the macros specified with the -# PREDEFINED and EXPAND_AS_DEFINED tags. - -EXPAND_ONLY_PREDEF = NO - -# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files -# pointed to by INCLUDE_PATH will be searched when a #include is found. - -SEARCH_INCLUDES = YES - -# The INCLUDE_PATH tag can be used to specify one or more directories that -# contain include files that are not input files but should be processed by -# the preprocessor. - -INCLUDE_PATH = - -# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard -# patterns (like *.h and *.hpp) to filter out the header-files in the -# directories. If left blank, the patterns specified with FILE_PATTERNS will -# be used. - -INCLUDE_FILE_PATTERNS = - -# The PREDEFINED tag can be used to specify one or more macro names that -# are defined before the preprocessor is started (similar to the -D option of -# gcc). The argument of the tag is a list of macros of the form: name -# or name=definition (no spaces). If the definition and the = are -# omitted =1 is assumed. To prevent a macro definition from being -# undefined via #undef or recursively expanded use the := operator -# instead of the = operator. - -PREDEFINED = - -# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then -# this tag can be used to specify a list of macro names that should be expanded. -# The macro definition that is found in the sources will be used. -# Use the PREDEFINED tag if you want to use a different macro definition that -# overrules the definition found in the source code. - -EXPAND_AS_DEFINED = - -# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then -# doxygen's preprocessor will remove all references to function-like macros -# that are alone on a line, have an all uppercase name, and do not end with a -# semicolon, because these will confuse the parser if not removed. - -SKIP_FUNCTION_MACROS = YES - -#--------------------------------------------------------------------------- -# Configuration::additions related to external references -#--------------------------------------------------------------------------- - -# The TAGFILES option can be used to specify one or more tagfiles. -# Optionally an initial location of the external documentation -# can be added for each tagfile. The format of a tag file without -# this location is as follows: -# TAGFILES = file1 file2 ... -# Adding location for the tag files is done as follows: -# TAGFILES = file1=loc1 "file2 = loc2" ... -# where "loc1" and "loc2" can be relative or absolute paths or -# URLs. If a location is present for each tag, the installdox tool -# does not have to be run to correct the links. -# Note that each tag file must have a unique name -# (where the name does NOT include the path) -# If a tag file is not located in the directory in which doxygen -# is run, you must also specify the path to the tagfile here. - -TAGFILES = - -# When a file name is specified after GENERATE_TAGFILE, doxygen will create -# a tag file that is based on the input files it reads. - -GENERATE_TAGFILE = - -# If the ALLEXTERNALS tag is set to YES all external classes will be listed -# in the class index. If set to NO only the inherited external classes -# will be listed. - -ALLEXTERNALS = NO - -# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed -# in the modules index. If set to NO, only the current project's groups will -# be listed. - -EXTERNAL_GROUPS = YES - -# The PERL_PATH should be the absolute path and name of the perl script -# interpreter (i.e. the result of `which perl'). - -PERL_PATH = /usr/bin/perl - -#--------------------------------------------------------------------------- -# Configuration options related to the dot tool -#--------------------------------------------------------------------------- - -# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will -# generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base -# or super classes. Setting the tag to NO turns the diagrams off. Note that -# this option also works with HAVE_DOT disabled, but it is recommended to -# install and use dot, since it yields more powerful graphs. - -CLASS_DIAGRAMS = YES - -# You can define message sequence charts within doxygen comments using the \msc -# command. Doxygen will then run the mscgen tool (see -# http://www.mcternan.me.uk/mscgen/) to produce the chart and insert it in the -# documentation. The MSCGEN_PATH tag allows you to specify the directory where -# the mscgen tool resides. If left empty the tool is assumed to be found in the -# default search path. - -MSCGEN_PATH = - -# If set to YES, the inheritance and collaboration graphs will hide -# inheritance and usage relations if the target is undocumented -# or is not a class. - -HIDE_UNDOC_RELATIONS = YES - -# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is -# available from the path. This tool is part of Graphviz, a graph visualization -# toolkit from AT&T and Lucent Bell Labs. The other options in this section -# have no effect if this option is set to NO (the default) - -HAVE_DOT = NO - -# The DOT_NUM_THREADS specifies the number of dot invocations doxygen is -# allowed to run in parallel. When set to 0 (the default) doxygen will -# base this on the number of processors available in the system. You can set it -# explicitly to a value larger than 0 to get control over the balance -# between CPU load and processing speed. - -DOT_NUM_THREADS = 0 - -# By default doxygen will use the Helvetica font for all dot files that -# doxygen generates. When you want a differently looking font you can specify -# the font name using DOT_FONTNAME. You need to make sure dot is able to find -# the font, which can be done by putting it in a standard location or by setting -# the DOTFONTPATH environment variable or by setting DOT_FONTPATH to the -# directory containing the font. - -DOT_FONTNAME = Helvetica - -# The DOT_FONTSIZE tag can be used to set the size of the font of dot graphs. -# The default size is 10pt. - -DOT_FONTSIZE = 10 - -# By default doxygen will tell dot to use the Helvetica font. -# If you specify a different font using DOT_FONTNAME you can use DOT_FONTPATH to -# set the path where dot can find it. - -DOT_FONTPATH = - -# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen -# will generate a graph for each documented class showing the direct and -# indirect inheritance relations. Setting this tag to YES will force the -# the CLASS_DIAGRAMS tag to NO. - -CLASS_GRAPH = YES - -# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen -# will generate a graph for each documented class showing the direct and -# indirect implementation dependencies (inheritance, containment, and -# class references variables) of the class with other documented classes. - -COLLABORATION_GRAPH = YES - -# If the GROUP_GRAPHS and HAVE_DOT tags are set to YES then doxygen -# will generate a graph for groups, showing the direct groups dependencies - -GROUP_GRAPHS = YES - -# If the UML_LOOK tag is set to YES doxygen will generate inheritance and -# collaboration diagrams in a style similar to the OMG's Unified Modeling -# Language. - -UML_LOOK = NO - -# If set to YES, the inheritance and collaboration graphs will show the -# relations between templates and their instances. - -TEMPLATE_RELATIONS = NO - -# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT -# tags are set to YES then doxygen will generate a graph for each documented -# file showing the direct and indirect include dependencies of the file with -# other documented files. - -INCLUDE_GRAPH = YES - -# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and -# HAVE_DOT tags are set to YES then doxygen will generate a graph for each -# documented header file showing the documented files that directly or -# indirectly include this file. - -INCLUDED_BY_GRAPH = YES - -# If the CALL_GRAPH and HAVE_DOT options are set to YES then -# doxygen will generate a call dependency graph for every global function -# or class method. Note that enabling this option will significantly increase -# the time of a run. So in most cases it will be better to enable call graphs -# for selected functions only using the \callgraph command. - -CALL_GRAPH = NO - -# If the CALLER_GRAPH and HAVE_DOT tags are set to YES then -# doxygen will generate a caller dependency graph for every global function -# or class method. Note that enabling this option will significantly increase -# the time of a run. So in most cases it will be better to enable caller -# graphs for selected functions only using the \callergraph command. - -CALLER_GRAPH = NO - -# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen -# will generate a graphical hierarchy of all classes instead of a textual one. - -GRAPHICAL_HIERARCHY = YES - -# If the DIRECTORY_GRAPH, SHOW_DIRECTORIES and HAVE_DOT tags are set to YES -# then doxygen will show the dependencies a directory has on other directories -# in a graphical way. The dependency relations are determined by the #include -# relations between the files in the directories. - -DIRECTORY_GRAPH = YES - -# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images -# generated by dot. Possible values are svg, png, jpg, or gif. -# If left blank png will be used. If you choose svg you need to set -# HTML_FILE_EXTENSION to xhtml in order to make the SVG files -# visible in IE 9+ (other browsers do not have this requirement). - -DOT_IMAGE_FORMAT = png - -# If DOT_IMAGE_FORMAT is set to svg, then this option can be set to YES to -# enable generation of interactive SVG images that allow zooming and panning. -# Note that this requires a modern browser other than Internet Explorer. -# Tested and working are Firefox, Chrome, Safari, and Opera. For IE 9+ you -# need to set HTML_FILE_EXTENSION to xhtml in order to make the SVG files -# visible. Older versions of IE do not have SVG support. - -INTERACTIVE_SVG = NO - -# The tag DOT_PATH can be used to specify the path where the dot tool can be -# found. If left blank, it is assumed the dot tool can be found in the path. - -DOT_PATH = - -# The DOTFILE_DIRS tag can be used to specify one or more directories that -# contain dot files that are included in the documentation (see the -# \dotfile command). - -DOTFILE_DIRS = - -# The MSCFILE_DIRS tag can be used to specify one or more directories that -# contain msc files that are included in the documentation (see the -# \mscfile command). - -MSCFILE_DIRS = - -# The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of -# nodes that will be shown in the graph. If the number of nodes in a graph -# becomes larger than this value, doxygen will truncate the graph, which is -# visualized by representing a node as a red box. Note that doxygen if the -# number of direct children of the root node in a graph is already larger than -# DOT_GRAPH_MAX_NODES then the graph will not be shown at all. Also note -# that the size of a graph can be further restricted by MAX_DOT_GRAPH_DEPTH. - -DOT_GRAPH_MAX_NODES = 50 - -# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the -# graphs generated by dot. A depth value of 3 means that only nodes reachable -# from the root by following a path via at most 3 edges will be shown. Nodes -# that lay further from the root node will be omitted. Note that setting this -# option to 1 or 2 may greatly reduce the computation time needed for large -# code bases. Also note that the size of a graph can be further restricted by -# DOT_GRAPH_MAX_NODES. Using a depth of 0 means no depth restriction. - -MAX_DOT_GRAPH_DEPTH = 0 - -# Set the DOT_TRANSPARENT tag to YES to generate images with a transparent -# background. This is disabled by default, because dot on Windows does not -# seem to support this out of the box. Warning: Depending on the platform used, -# enabling this option may lead to badly anti-aliased labels on the edges of -# a graph (i.e. they become hard to read). - -DOT_TRANSPARENT = NO - -# Set the DOT_MULTI_TARGETS tag to YES allow dot to generate multiple output -# files in one run (i.e. multiple -o and -T options on the command line). This -# makes dot run faster, but since only newer versions of dot (>1.8.10) -# support this, this feature is disabled by default. - -DOT_MULTI_TARGETS = NO - -# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will -# generate a legend page explaining the meaning of the various boxes and -# arrows in the dot generated graphs. - -GENERATE_LEGEND = YES - -# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will -# remove the intermediate dot files that are used to generate -# the various graphs. - -DOT_CLEANUP = YES diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/Chain1.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/Chain1.png deleted file mode 100644 index 794a044..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/Chain1.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/Chain1.svg b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/Chain1.svg deleted file mode 100644 index eebd1d8..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/Chain1.svg +++ /dev/null @@ -1,220 +0,0 @@ - - - - - - - - - - - - - - image/svg+xml - - - - - - - - A chain shape - - - - - - - - - isolated - isolated - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/DebugDraw.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/DebugDraw.png deleted file mode 100644 index 8b4d56f..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/DebugDraw.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/GhostCollision.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/GhostCollision.png deleted file mode 100644 index c151e56..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/GhostCollision.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/GhostCollision.svg b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/GhostCollision.svg deleted file mode 100644 index 496665f..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/GhostCollision.svg +++ /dev/null @@ -1,255 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - image/svg+xml - - - - - - - - - - - - - - ghost collision - box motion - internal normal - edge1 - edge2 - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/GhostVertices.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/GhostVertices.png deleted file mode 100644 index 5d54d92..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/GhostVertices.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/GhostVertices.svg b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/GhostVertices.svg deleted file mode 100644 index 5aa96c6..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/GhostVertices.svg +++ /dev/null @@ -1,254 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - image/svg+xml - - - - - - - - - - - - - - v0 - v1 - v2 - v3 - v0 and v3 are ghost vertices - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/SelfIntersect.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/SelfIntersect.png deleted file mode 100644 index 80e9c75..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/SelfIntersect.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/SelfIntersect.svg b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/SelfIntersect.svg deleted file mode 100644 index fb1c1af..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/SelfIntersect.svg +++ /dev/null @@ -1,179 +0,0 @@ - - - - - - - - - - - - - - image/svg+xml - - - - - - - - Self intersection is NOT SUPPORTED - - - - - - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/SkinCollision.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/SkinCollision.png deleted file mode 100644 index 43b95f8..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/SkinCollision.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/SkinCollision.svg b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/SkinCollision.svg deleted file mode 100644 index 8da3784..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/SkinCollision.svg +++ /dev/null @@ -1,134 +0,0 @@ - - - - - - - - - - image/svg+xml - - - - - - - - - - - - - Polygons collidewith their skin - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/SkinnedPolygon.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/SkinnedPolygon.png deleted file mode 100644 index ccb3b14..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/SkinnedPolygon.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/SkinnedPolygon.svg b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/SkinnedPolygon.svg deleted file mode 100644 index 0a815fd..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/SkinnedPolygon.svg +++ /dev/null @@ -1,198 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - image/svg+xml - - - - - - - - - - - polygon skin - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/Tunnel1.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/Tunnel1.png deleted file mode 100644 index 4943c53..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/Tunnel1.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/Tunnel1.svg b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/Tunnel1.svg deleted file mode 100644 index 9e71d7d..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/Tunnel1.svg +++ /dev/null @@ -1,183 +0,0 @@ - - - - - - - - - - - - - - image/svg+xml - - - - - - - - - - - time0 - time1 - Tunneling Effect - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/WheelJoint.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/WheelJoint.png deleted file mode 100644 index 7a1f4b4..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/WheelJoint.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/WheelJoint.svg b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/WheelJoint.svg deleted file mode 100644 index ea5725d..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/WheelJoint.svg +++ /dev/null @@ -1,203 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - image/svg+xml - - - - - - - - Wheel Joint - - - - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/bodyOrigin.gif b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/bodyOrigin.gif deleted file mode 100644 index cef1707..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/bodyOrigin.gif and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/captured.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/captured.png deleted file mode 100644 index d85aa23..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/captured.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/captured.svg b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/captured.svg deleted file mode 100644 index b9566d8..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/captured.svg +++ /dev/null @@ -1,128 +0,0 @@ - - - - - - - - - - - - image/svg+xml - - - - - - - - - - t=0 - t=1 - captured collision - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/convex_concave.gif b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/convex_concave.gif deleted file mode 100644 index feefdf0..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/convex_concave.gif and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/distance.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/distance.png deleted file mode 100644 index 526c9d4..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/distance.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/distance.svg b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/distance.svg deleted file mode 100644 index db3ddf7..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/distance.svg +++ /dev/null @@ -1,178 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - image/svg+xml - - - - - - - - - - - - distance and closest points - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/distanceJoint.gif b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/distanceJoint.gif deleted file mode 100644 index 3fd44a4..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/distanceJoint.gif and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/gearJoint.gif b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/gearJoint.gif deleted file mode 100644 index 9737d7d..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/gearJoint.gif and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/manifolds.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/manifolds.png deleted file mode 100644 index a8c3b89..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/manifolds.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/manifolds.svg b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/manifolds.svg deleted file mode 100644 index a3f4c30..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/manifolds.svg +++ /dev/null @@ -1,246 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - image/svg+xml - - - - - - - - - - - - - - - - two points, one normal - one point, one normal - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/missed.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/missed.png deleted file mode 100644 index 9e310d2..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/missed.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/missed.svg b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/missed.svg deleted file mode 100644 index 4c4e4e0..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/missed.svg +++ /dev/null @@ -1,157 +0,0 @@ - - - - - - - - - - - - - - - image/svg+xml - - - - - - - - - - - t=0 - t=1 - missed collision - - separating axis - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/modules.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/modules.png deleted file mode 100644 index 771d6cf..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/modules.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/modules.svg b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/modules.svg deleted file mode 100644 index ae231dd..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/modules.svg +++ /dev/null @@ -1,213 +0,0 @@ - - - - - - - - - - - - - - - - - - - - image/svg+xml - - - - - - - - - Common - Collision - - Dynamics - - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/prismaticJoint.gif b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/prismaticJoint.gif deleted file mode 100644 index ac2037f..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/prismaticJoint.gif and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/pulleyJoint.gif b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/pulleyJoint.gif deleted file mode 100644 index ad8d4fb..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/pulleyJoint.gif and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/raycast.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/raycast.png deleted file mode 100644 index c637686..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/raycast.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/raycast.svg b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/raycast.svg deleted file mode 100644 index 72a405e..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/raycast.svg +++ /dev/null @@ -1,154 +0,0 @@ - - - - - - - - - - - - - - - image/svg+xml - - - - - - - - - - - - - - - - - ray cast - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/regionquery.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/regionquery.png deleted file mode 100644 index 201edad..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/regionquery.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/regionquery.svg b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/regionquery.svg deleted file mode 100644 index dfadc6e..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/regionquery.svg +++ /dev/null @@ -1,151 +0,0 @@ - - - - - - - - - - - - - - - image/svg+xml - - - - - - - - - - - - - - - region query - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/revoluteJoint.gif b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/revoluteJoint.gif deleted file mode 100644 index 39b74e2..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/revoluteJoint.gif and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/testbed.gif b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/testbed.gif deleted file mode 100644 index 4ba75d8..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/testbed.gif and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/tunneling.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/tunneling.png deleted file mode 100644 index 7446270..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/tunneling.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/tunneling.svg b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/tunneling.svg deleted file mode 100644 index f3f9321..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/tunneling.svg +++ /dev/null @@ -1,148 +0,0 @@ - - - - - - - - - - - - - - - - image/svg+xml - - - - - - - - - - - t=0 - t=1 - tunneling - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/winding.png b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/winding.png deleted file mode 100644 index d03344a..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/winding.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/winding.svg b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/winding.svg deleted file mode 100644 index dbcca27..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/images/winding.svg +++ /dev/null @@ -1,236 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - image/svg+xml - - - - - - - - x - - y - - CCW winding - - - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/manual.docx b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/manual.docx deleted file mode 100644 index 96a5bf4..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/manual.docx and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/manual.pdf b/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/manual.pdf deleted file mode 100644 index 9b64d96..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Documentation/manual.pdf and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/CMakeFiles/CMakeDirectoryInformation.cmake b/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/CMakeFiles/CMakeDirectoryInformation.cmake deleted file mode 100644 index 21c61ba..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/CMakeFiles/CMakeDirectoryInformation.cmake +++ /dev/null @@ -1,16 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 2.8 - -# Relative path conversion top directories. -SET(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D") -SET(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D") - -# Force unix paths in dependencies. -SET(CMAKE_FORCE_UNIX_PATHS 1) - - -# The C and CXX include file regular expressions for this directory. -SET(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$") -SET(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$") -SET(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN}) -SET(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN}) diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/CMakeFiles/HelloWorld.dir/CXX.includecache b/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/CMakeFiles/HelloWorld.dir/CXX.includecache deleted file mode 100644 index 19a2e49..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/CMakeFiles/HelloWorld.dir/CXX.includecache +++ /dev/null @@ -1,264 +0,0 @@ -#IncludeRegexLine: ^[ ]*#[ ]*(include|import)[ ]*[<"]([^">]+)([">]) - -#IncludeRegexScan: ^.*$ - -#IncludeRegexComplain: ^$ - -#IncludeRegexTransform: - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/HelloWorld.cpp -Box2D/Box2D.h -- -stdio.h -- - -Box2D/Box2D.h -Box2D/Common/b2Settings.h -- -Box2D/Common/b2Draw.h -- -Box2D/Common/b2Timer.h -- -Box2D/Collision/Shapes/b2CircleShape.h -- -Box2D/Collision/Shapes/b2EdgeShape.h -- -Box2D/Collision/Shapes/b2ChainShape.h -- -Box2D/Collision/Shapes/b2PolygonShape.h -- -Box2D/Collision/b2BroadPhase.h -- -Box2D/Collision/b2Distance.h -- -Box2D/Collision/b2DynamicTree.h -- -Box2D/Collision/b2TimeOfImpact.h -- -Box2D/Dynamics/b2Body.h -- -Box2D/Dynamics/b2Fixture.h -- -Box2D/Dynamics/b2WorldCallbacks.h -- -Box2D/Dynamics/b2TimeStep.h -- -Box2D/Dynamics/b2World.h -- -Box2D/Dynamics/Contacts/b2Contact.h -- -Box2D/Dynamics/Joints/b2DistanceJoint.h -- -Box2D/Dynamics/Joints/b2FrictionJoint.h -- -Box2D/Dynamics/Joints/b2GearJoint.h -- -Box2D/Dynamics/Joints/b2MotorJoint.h -- -Box2D/Dynamics/Joints/b2MouseJoint.h -- -Box2D/Dynamics/Joints/b2PrismaticJoint.h -- -Box2D/Dynamics/Joints/b2PulleyJoint.h -- -Box2D/Dynamics/Joints/b2RevoluteJoint.h -- -Box2D/Dynamics/Joints/b2RopeJoint.h -- -Box2D/Dynamics/Joints/b2WeldJoint.h -- -Box2D/Dynamics/Joints/b2WheelJoint.h -- - -Box2D/Collision/Shapes/b2ChainShape.h -Box2D/Collision/Shapes/b2Shape.h -- - -Box2D/Collision/Shapes/b2CircleShape.h -Box2D/Collision/Shapes/b2Shape.h -- - -Box2D/Collision/Shapes/b2EdgeShape.h -Box2D/Collision/Shapes/b2Shape.h -- - -Box2D/Collision/Shapes/b2PolygonShape.h -Box2D/Collision/Shapes/b2Shape.h -- - -Box2D/Collision/Shapes/b2Shape.h -Box2D/Common/b2BlockAllocator.h -- -Box2D/Common/b2Math.h -- -Box2D/Collision/b2Collision.h -- - -Box2D/Collision/b2BroadPhase.h -Box2D/Common/b2Settings.h -- -Box2D/Collision/b2Collision.h -- -Box2D/Collision/b2DynamicTree.h -- -algorithm -- - -Box2D/Collision/b2Collision.h -Box2D/Common/b2Math.h -- -limits.h -- - -Box2D/Collision/b2Distance.h -Box2D/Common/b2Math.h -- - -Box2D/Collision/b2DynamicTree.h -Box2D/Collision/b2Collision.h -- -Box2D/Common/b2GrowableStack.h -- - -Box2D/Collision/b2TimeOfImpact.h -Box2D/Common/b2Math.h -- -Box2D/Collision/b2Distance.h -- - -Box2D/Common/b2BlockAllocator.h -Box2D/Common/b2Settings.h -- - -Box2D/Common/b2Draw.h -Box2D/Common/b2Math.h -- - -Box2D/Common/b2GrowableStack.h -Box2D/Common/b2Settings.h -- -memory.h -- - -Box2D/Common/b2Math.h -Box2D/Common/b2Settings.h -- -math.h -- - -Box2D/Common/b2Settings.h -stddef.h -- -assert.h -- -float.h -- - -Box2D/Common/b2StackAllocator.h -Box2D/Common/b2Settings.h -- - -Box2D/Common/b2Timer.h -Box2D/Common/b2Settings.h -- - -Box2D/Dynamics/Contacts/b2Contact.h -Box2D/Common/b2Math.h -- -Box2D/Collision/b2Collision.h -- -Box2D/Collision/Shapes/b2Shape.h -- -Box2D/Dynamics/b2Fixture.h -- - -Box2D/Dynamics/Joints/b2DistanceJoint.h -Box2D/Dynamics/Joints/b2Joint.h -- - -Box2D/Dynamics/Joints/b2FrictionJoint.h -Box2D/Dynamics/Joints/b2Joint.h -- - -Box2D/Dynamics/Joints/b2GearJoint.h -Box2D/Dynamics/Joints/b2Joint.h -- - -Box2D/Dynamics/Joints/b2Joint.h -Box2D/Common/b2Math.h -- - -Box2D/Dynamics/Joints/b2MotorJoint.h -Box2D/Dynamics/Joints/b2Joint.h -- - -Box2D/Dynamics/Joints/b2MouseJoint.h -Box2D/Dynamics/Joints/b2Joint.h -- - -Box2D/Dynamics/Joints/b2PrismaticJoint.h -Box2D/Dynamics/Joints/b2Joint.h -- - -Box2D/Dynamics/Joints/b2PulleyJoint.h -Box2D/Dynamics/Joints/b2Joint.h -- - -Box2D/Dynamics/Joints/b2RevoluteJoint.h -Box2D/Dynamics/Joints/b2Joint.h -- - -Box2D/Dynamics/Joints/b2RopeJoint.h -Box2D/Dynamics/Joints/b2Joint.h -- - -Box2D/Dynamics/Joints/b2WeldJoint.h -Box2D/Dynamics/Joints/b2Joint.h -- - -Box2D/Dynamics/Joints/b2WheelJoint.h -Box2D/Dynamics/Joints/b2Joint.h -- - -Box2D/Dynamics/b2Body.h -Box2D/Common/b2Math.h -- -Box2D/Collision/Shapes/b2Shape.h -- -memory -- - -Box2D/Dynamics/b2ContactManager.h -Box2D/Collision/b2BroadPhase.h -- - -Box2D/Dynamics/b2Fixture.h -Box2D/Dynamics/b2Body.h -- -Box2D/Collision/b2Collision.h -- -Box2D/Collision/Shapes/b2Shape.h -- - -Box2D/Dynamics/b2TimeStep.h -Box2D/Common/b2Math.h -- - -Box2D/Dynamics/b2World.h -Box2D/Common/b2Math.h -- -Box2D/Common/b2BlockAllocator.h -- -Box2D/Common/b2StackAllocator.h -- -Box2D/Dynamics/b2ContactManager.h -- -Box2D/Dynamics/b2WorldCallbacks.h -- -Box2D/Dynamics/b2TimeStep.h -- - -Box2D/Dynamics/b2WorldCallbacks.h -Box2D/Common/b2Settings.h -- - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/CMakeFiles/HelloWorld.dir/DependInfo.cmake b/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/CMakeFiles/HelloWorld.dir/DependInfo.cmake deleted file mode 100644 index 91ff945..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/CMakeFiles/HelloWorld.dir/DependInfo.cmake +++ /dev/null @@ -1,22 +0,0 @@ -# The set of languages for which implicit dependencies are needed: -SET(CMAKE_DEPENDS_LANGUAGES - "CXX" - ) -# The set of files for implicit dependencies of each language: -SET(CMAKE_DEPENDS_CHECK_CXX - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/HelloWorld.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o" - ) -SET(CMAKE_CXX_COMPILER_ID "GNU") - -# Targets to which this target links. -SET(CMAKE_TARGET_LINKED_INFO_FILES - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/DependInfo.cmake" - ) - -# The include file search paths: -SET(CMAKE_C_TARGET_INCLUDE_PATH - "." - ) -SET(CMAKE_CXX_TARGET_INCLUDE_PATH ${CMAKE_C_TARGET_INCLUDE_PATH}) -SET(CMAKE_Fortran_TARGET_INCLUDE_PATH ${CMAKE_C_TARGET_INCLUDE_PATH}) -SET(CMAKE_ASM_TARGET_INCLUDE_PATH ${CMAKE_C_TARGET_INCLUDE_PATH}) diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o deleted file mode 100644 index a16b46a..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/CMakeFiles/HelloWorld.dir/build.make b/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/CMakeFiles/HelloWorld.dir/build.make deleted file mode 100644 index 60a0a91..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/CMakeFiles/HelloWorld.dir/build.make +++ /dev/null @@ -1,103 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 2.8 - -#============================================================================= -# Special targets provided by cmake. - -# Disable implicit rules so canonical targets will work. -.SUFFIXES: - -# Remove some rules from gmake that .SUFFIXES does not remove. -SUFFIXES = - -.SUFFIXES: .hpux_make_needs_suffix_list - -# Suppress display of executed commands. -$(VERBOSE).SILENT: - -# A target that is always out of date. -cmake_force: -.PHONY : cmake_force - -#============================================================================= -# Set environment variables for the build. - -# The shell in which to execute make rules. -SHELL = /bin/sh - -# The CMake executable. -CMAKE_COMMAND = /usr/bin/cmake - -# The command to remove a file. -RM = /usr/bin/cmake -E remove -f - -# Escaping for special characters. -EQUALS = = - -# The top-level source directory on which CMake was run. -CMAKE_SOURCE_DIR = /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D - -# The top-level build directory on which CMake was run. -CMAKE_BINARY_DIR = /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D - -# Include any dependencies generated for this target. -include HelloWorld/CMakeFiles/HelloWorld.dir/depend.make - -# Include the progress variables for this target. -include HelloWorld/CMakeFiles/HelloWorld.dir/progress.make - -# Include the compile flags for this target's objects. -include HelloWorld/CMakeFiles/HelloWorld.dir/flags.make - -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o: HelloWorld/CMakeFiles/HelloWorld.dir/flags.make -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o: HelloWorld/HelloWorld.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_1) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/HelloWorld.cpp - -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/HelloWorld.dir/HelloWorld.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/HelloWorld.cpp > CMakeFiles/HelloWorld.dir/HelloWorld.cpp.i - -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/HelloWorld.dir/HelloWorld.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/HelloWorld.cpp -o CMakeFiles/HelloWorld.dir/HelloWorld.cpp.s - -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o.requires: -.PHONY : HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o.requires - -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o.provides: HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o.requires - $(MAKE) -f HelloWorld/CMakeFiles/HelloWorld.dir/build.make HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o.provides.build -.PHONY : HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o.provides - -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o.provides.build: HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o - -# Object files for target HelloWorld -HelloWorld_OBJECTS = \ -"CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o" - -# External object files for target HelloWorld -HelloWorld_EXTERNAL_OBJECTS = - -HelloWorld/HelloWorld: HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o -HelloWorld/HelloWorld: HelloWorld/CMakeFiles/HelloWorld.dir/build.make -HelloWorld/HelloWorld: Box2D/libBox2D.a -HelloWorld/HelloWorld: HelloWorld/CMakeFiles/HelloWorld.dir/link.txt - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --red --bold "Linking CXX executable HelloWorld" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/HelloWorld.dir/link.txt --verbose=$(VERBOSE) - -# Rule to build all files generated by this target. -HelloWorld/CMakeFiles/HelloWorld.dir/build: HelloWorld/HelloWorld -.PHONY : HelloWorld/CMakeFiles/HelloWorld.dir/build - -HelloWorld/CMakeFiles/HelloWorld.dir/requires: HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o.requires -.PHONY : HelloWorld/CMakeFiles/HelloWorld.dir/requires - -HelloWorld/CMakeFiles/HelloWorld.dir/clean: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld && $(CMAKE_COMMAND) -P CMakeFiles/HelloWorld.dir/cmake_clean.cmake -.PHONY : HelloWorld/CMakeFiles/HelloWorld.dir/clean - -HelloWorld/CMakeFiles/HelloWorld.dir/depend: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/CMakeFiles/HelloWorld.dir/DependInfo.cmake --color=$(COLOR) -.PHONY : HelloWorld/CMakeFiles/HelloWorld.dir/depend - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/CMakeFiles/HelloWorld.dir/cmake_clean.cmake b/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/CMakeFiles/HelloWorld.dir/cmake_clean.cmake deleted file mode 100644 index d9eead1..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/CMakeFiles/HelloWorld.dir/cmake_clean.cmake +++ /dev/null @@ -1,10 +0,0 @@ -FILE(REMOVE_RECURSE - "CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o" - "HelloWorld.pdb" - "HelloWorld" -) - -# Per-language clean rules from dependency scanning. -FOREACH(lang CXX) - INCLUDE(CMakeFiles/HelloWorld.dir/cmake_clean_${lang}.cmake OPTIONAL) -ENDFOREACH(lang) diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/CMakeFiles/HelloWorld.dir/depend.internal b/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/CMakeFiles/HelloWorld.dir/depend.internal deleted file mode 100644 index d1f0324..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/CMakeFiles/HelloWorld.dir/depend.internal +++ /dev/null @@ -1,42 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 2.8 - -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/HelloWorld.cpp - Box2D/Box2D.h - Box2D/Collision/Shapes/b2ChainShape.h - Box2D/Collision/Shapes/b2CircleShape.h - Box2D/Collision/Shapes/b2EdgeShape.h - Box2D/Collision/Shapes/b2PolygonShape.h - Box2D/Collision/Shapes/b2Shape.h - Box2D/Collision/b2BroadPhase.h - Box2D/Collision/b2Collision.h - Box2D/Collision/b2Distance.h - Box2D/Collision/b2DynamicTree.h - Box2D/Collision/b2TimeOfImpact.h - Box2D/Common/b2BlockAllocator.h - Box2D/Common/b2Draw.h - Box2D/Common/b2GrowableStack.h - Box2D/Common/b2Math.h - Box2D/Common/b2Settings.h - Box2D/Common/b2StackAllocator.h - Box2D/Common/b2Timer.h - Box2D/Dynamics/Contacts/b2Contact.h - Box2D/Dynamics/Joints/b2DistanceJoint.h - Box2D/Dynamics/Joints/b2FrictionJoint.h - Box2D/Dynamics/Joints/b2GearJoint.h - Box2D/Dynamics/Joints/b2Joint.h - Box2D/Dynamics/Joints/b2MotorJoint.h - Box2D/Dynamics/Joints/b2MouseJoint.h - Box2D/Dynamics/Joints/b2PrismaticJoint.h - Box2D/Dynamics/Joints/b2PulleyJoint.h - Box2D/Dynamics/Joints/b2RevoluteJoint.h - Box2D/Dynamics/Joints/b2RopeJoint.h - Box2D/Dynamics/Joints/b2WeldJoint.h - Box2D/Dynamics/Joints/b2WheelJoint.h - Box2D/Dynamics/b2Body.h - Box2D/Dynamics/b2ContactManager.h - Box2D/Dynamics/b2Fixture.h - Box2D/Dynamics/b2TimeStep.h - Box2D/Dynamics/b2World.h - Box2D/Dynamics/b2WorldCallbacks.h diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/CMakeFiles/HelloWorld.dir/depend.make b/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/CMakeFiles/HelloWorld.dir/depend.make deleted file mode 100644 index e0c9ecc..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/CMakeFiles/HelloWorld.dir/depend.make +++ /dev/null @@ -1,42 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 2.8 - -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o: HelloWorld/HelloWorld.cpp -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o: Box2D/Box2D.h -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o: Box2D/Collision/Shapes/b2ChainShape.h -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o: Box2D/Collision/Shapes/b2CircleShape.h -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o: Box2D/Collision/Shapes/b2EdgeShape.h -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o: Box2D/Collision/Shapes/b2PolygonShape.h -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o: Box2D/Collision/Shapes/b2Shape.h -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o: Box2D/Collision/b2BroadPhase.h -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o: Box2D/Collision/b2Collision.h -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o: Box2D/Collision/b2Distance.h -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o: Box2D/Collision/b2DynamicTree.h -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o: Box2D/Collision/b2TimeOfImpact.h -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o: Box2D/Common/b2BlockAllocator.h -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o: Box2D/Common/b2Draw.h -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o: Box2D/Common/b2GrowableStack.h -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o: Box2D/Common/b2Math.h -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o: Box2D/Common/b2Settings.h -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o: Box2D/Common/b2StackAllocator.h -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o: Box2D/Common/b2Timer.h -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o: Box2D/Dynamics/Contacts/b2Contact.h -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o: Box2D/Dynamics/Joints/b2DistanceJoint.h -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o: Box2D/Dynamics/Joints/b2FrictionJoint.h -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o: Box2D/Dynamics/Joints/b2GearJoint.h -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o: Box2D/Dynamics/Joints/b2Joint.h -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o: Box2D/Dynamics/Joints/b2MotorJoint.h -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o: Box2D/Dynamics/Joints/b2MouseJoint.h -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o: Box2D/Dynamics/Joints/b2PrismaticJoint.h -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o: Box2D/Dynamics/Joints/b2PulleyJoint.h -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o: Box2D/Dynamics/Joints/b2RevoluteJoint.h -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o: Box2D/Dynamics/Joints/b2RopeJoint.h -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o: Box2D/Dynamics/Joints/b2WeldJoint.h -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o: Box2D/Dynamics/Joints/b2WheelJoint.h -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o: Box2D/Dynamics/b2Body.h -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o: Box2D/Dynamics/b2ContactManager.h -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o: Box2D/Dynamics/b2Fixture.h -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o: Box2D/Dynamics/b2TimeStep.h -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o: Box2D/Dynamics/b2World.h -HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o: Box2D/Dynamics/b2WorldCallbacks.h - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/CMakeFiles/HelloWorld.dir/flags.make b/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/CMakeFiles/HelloWorld.dir/flags.make deleted file mode 100644 index b8d10a6..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/CMakeFiles/HelloWorld.dir/flags.make +++ /dev/null @@ -1,8 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 2.8 - -# compile CXX with /usr/bin/c++ -CXX_FLAGS = -I/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D - -CXX_DEFINES = - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/CMakeFiles/HelloWorld.dir/link.txt b/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/CMakeFiles/HelloWorld.dir/link.txt deleted file mode 100644 index 3a26c53..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/CMakeFiles/HelloWorld.dir/link.txt +++ /dev/null @@ -1 +0,0 @@ -/usr/bin/c++ CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o -o HelloWorld -rdynamic ../Box2D/libBox2D.a diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/CMakeFiles/HelloWorld.dir/progress.make b/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/CMakeFiles/HelloWorld.dir/progress.make deleted file mode 100644 index 109d64a..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/CMakeFiles/HelloWorld.dir/progress.make +++ /dev/null @@ -1,2 +0,0 @@ -CMAKE_PROGRESS_1 = 43 - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/CMakeFiles/progress.marks b/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/CMakeFiles/progress.marks deleted file mode 100644 index 920a139..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/CMakeFiles/progress.marks +++ /dev/null @@ -1 +0,0 @@ -43 diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/CMakeLists.txt b/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/CMakeLists.txt deleted file mode 100644 index c6ae2b2..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/CMakeLists.txt +++ /dev/null @@ -1,4 +0,0 @@ -# Hello World examples -include_directories (${Box2D_SOURCE_DIR}) -add_executable(HelloWorld HelloWorld.cpp) -target_link_libraries (HelloWorld Box2D) diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/HelloWorld b/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/HelloWorld deleted file mode 100755 index 12b590c..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/HelloWorld and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/HelloWorld.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/HelloWorld.cpp deleted file mode 100644 index d01e880..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/HelloWorld.cpp +++ /dev/null @@ -1,105 +0,0 @@ -/* -* Copyright (c) 2006-2007 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include - -#include - -// This is a simple example of building and running a simulation -// using Box2D. Here we create a large ground box and a small dynamic -// box. -// There are no graphics for this example. Box2D is meant to be used -// with your rendering engine in your game engine. -int main(int argc, char** argv) -{ - B2_NOT_USED(argc); - B2_NOT_USED(argv); - - // Define the gravity vector. - b2Vec2 gravity(0.0f, -10.0f); - - // Construct a world object, which will hold and simulate the rigid bodies. - b2World world(gravity); - - // Define the ground body. - b2BodyDef groundBodyDef; - groundBodyDef.position.Set(0.0f, -10.0f); - - // Call the body factory which allocates memory for the ground body - // from a pool and creates the ground box shape (also from a pool). - // The body is also added to the world. - b2Body* groundBody = world.CreateBody(&groundBodyDef); - - // Define the ground box shape. - b2PolygonShape groundBox; - - // The extents are the half-widths of the box. - groundBox.SetAsBox(50.0f, 10.0f); - - // Add the ground fixture to the ground body. - groundBody->CreateFixture(&groundBox, 0.0f); - - // Define the dynamic body. We set its position and call the body factory. - b2BodyDef bodyDef; - bodyDef.type = b2_dynamicBody; - bodyDef.position.Set(0.0f, 4.0f); - b2Body* body = world.CreateBody(&bodyDef); - - // Define another box shape for our dynamic body. - b2PolygonShape dynamicBox; - dynamicBox.SetAsBox(1.0f, 1.0f); - - // Define the dynamic body fixture. - b2FixtureDef fixtureDef; - fixtureDef.shape = &dynamicBox; - - // Set the box density to be non-zero, so it will be dynamic. - fixtureDef.density = 1.0f; - - // Override the default friction. - fixtureDef.friction = 0.3f; - - // Add the shape to the body. - body->CreateFixture(&fixtureDef); - - // Prepare for simulation. Typically we use a time step of 1/60 of a - // second (60Hz) and 10 iterations. This provides a high quality simulation - // in most game scenarios. - float32 timeStep = 1.0f / 60.0f; - int32 velocityIterations = 6; - int32 positionIterations = 2; - - // This is our little game loop. - for (int32 i = 0; i < 60; ++i) - { - // Instruct the world to perform a single step of simulation. - // It is generally best to keep the time step and iterations fixed. - world.Step(timeStep, velocityIterations, positionIterations); - - // Now print the position and angle of the body. - b2Vec2 position = body->GetPosition(); - float32 angle = body->GetAngle(); - - printf("%4.2f %4.2f %4.2f\n", position.x, position.y, angle); - } - - // When the world destructor is called, all bodies and joints are freed. This can - // create orphaned pointers, so be careful about your world management. - - return 0; -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/Makefile b/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/Makefile deleted file mode 100644 index 0d1b110..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/Makefile +++ /dev/null @@ -1,209 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 2.8 - -# Default target executed when no arguments are given to make. -default_target: all -.PHONY : default_target - -#============================================================================= -# Special targets provided by cmake. - -# Disable implicit rules so canonical targets will work. -.SUFFIXES: - -# Remove some rules from gmake that .SUFFIXES does not remove. -SUFFIXES = - -.SUFFIXES: .hpux_make_needs_suffix_list - -# Suppress display of executed commands. -$(VERBOSE).SILENT: - -# A target that is always out of date. -cmake_force: -.PHONY : cmake_force - -#============================================================================= -# Set environment variables for the build. - -# The shell in which to execute make rules. -SHELL = /bin/sh - -# The CMake executable. -CMAKE_COMMAND = /usr/bin/cmake - -# The command to remove a file. -RM = /usr/bin/cmake -E remove -f - -# Escaping for special characters. -EQUALS = = - -# The top-level source directory on which CMake was run. -CMAKE_SOURCE_DIR = /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D - -# The top-level build directory on which CMake was run. -CMAKE_BINARY_DIR = /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D - -#============================================================================= -# Targets provided globally by CMake. - -# Special rule for the target edit_cache -edit_cache: - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running interactive CMake command-line interface..." - /usr/bin/cmake -i . -.PHONY : edit_cache - -# Special rule for the target edit_cache -edit_cache/fast: edit_cache -.PHONY : edit_cache/fast - -# Special rule for the target install -install: preinstall - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..." - /usr/bin/cmake -P cmake_install.cmake -.PHONY : install - -# Special rule for the target install -install/fast: preinstall/fast - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..." - /usr/bin/cmake -P cmake_install.cmake -.PHONY : install/fast - -# Special rule for the target install/local -install/local: preinstall - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..." - /usr/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake -.PHONY : install/local - -# Special rule for the target install/local -install/local/fast: install/local -.PHONY : install/local/fast - -# Special rule for the target install/strip -install/strip: preinstall - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..." - /usr/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake -.PHONY : install/strip - -# Special rule for the target install/strip -install/strip/fast: install/strip -.PHONY : install/strip/fast - -# Special rule for the target list_install_components -list_install_components: - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Available install components are: \"Unspecified\"" -.PHONY : list_install_components - -# Special rule for the target list_install_components -list_install_components/fast: list_install_components -.PHONY : list_install_components/fast - -# Special rule for the target rebuild_cache -rebuild_cache: - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..." - /usr/bin/cmake -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) -.PHONY : rebuild_cache - -# Special rule for the target rebuild_cache -rebuild_cache/fast: rebuild_cache -.PHONY : rebuild_cache/fast - -# The main all target -all: cmake_check_build_system - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(CMAKE_COMMAND) -E cmake_progress_start /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/CMakeFiles/progress.marks - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f CMakeFiles/Makefile2 HelloWorld/all - $(CMAKE_COMMAND) -E cmake_progress_start /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles 0 -.PHONY : all - -# The main clean target -clean: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f CMakeFiles/Makefile2 HelloWorld/clean -.PHONY : clean - -# The main clean target -clean/fast: clean -.PHONY : clean/fast - -# Prepare targets for installation. -preinstall: all - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f CMakeFiles/Makefile2 HelloWorld/preinstall -.PHONY : preinstall - -# Prepare targets for installation. -preinstall/fast: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f CMakeFiles/Makefile2 HelloWorld/preinstall -.PHONY : preinstall/fast - -# clear depends -depend: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1 -.PHONY : depend - -# Convenience name for target. -HelloWorld/CMakeFiles/HelloWorld.dir/rule: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f CMakeFiles/Makefile2 HelloWorld/CMakeFiles/HelloWorld.dir/rule -.PHONY : HelloWorld/CMakeFiles/HelloWorld.dir/rule - -# Convenience name for target. -HelloWorld: HelloWorld/CMakeFiles/HelloWorld.dir/rule -.PHONY : HelloWorld - -# fast build rule for target. -HelloWorld/fast: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f HelloWorld/CMakeFiles/HelloWorld.dir/build.make HelloWorld/CMakeFiles/HelloWorld.dir/build -.PHONY : HelloWorld/fast - -HelloWorld.o: HelloWorld.cpp.o -.PHONY : HelloWorld.o - -# target to build an object file -HelloWorld.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f HelloWorld/CMakeFiles/HelloWorld.dir/build.make HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.o -.PHONY : HelloWorld.cpp.o - -HelloWorld.i: HelloWorld.cpp.i -.PHONY : HelloWorld.i - -# target to preprocess a source file -HelloWorld.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f HelloWorld/CMakeFiles/HelloWorld.dir/build.make HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.i -.PHONY : HelloWorld.cpp.i - -HelloWorld.s: HelloWorld.cpp.s -.PHONY : HelloWorld.s - -# target to generate assembly for a file -HelloWorld.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f HelloWorld/CMakeFiles/HelloWorld.dir/build.make HelloWorld/CMakeFiles/HelloWorld.dir/HelloWorld.cpp.s -.PHONY : HelloWorld.cpp.s - -# Help Target -help: - @echo "The following are some of the valid targets for this Makefile:" - @echo "... all (the default if no target is provided)" - @echo "... clean" - @echo "... depend" - @echo "... HelloWorld" - @echo "... edit_cache" - @echo "... install" - @echo "... install/local" - @echo "... install/strip" - @echo "... list_install_components" - @echo "... rebuild_cache" - @echo "... HelloWorld.o" - @echo "... HelloWorld.i" - @echo "... HelloWorld.s" -.PHONY : help - - - -#============================================================================= -# Special targets to cleanup operation of make. - -# Special rule to run CMake to check the build system integrity. -# No rule that depends on this can have commands that come from listfiles -# because they might be regenerated. -cmake_check_build_system: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 -.PHONY : cmake_check_build_system - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/cmake_install.cmake b/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/cmake_install.cmake deleted file mode 100644 index c4a42e5..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/cmake_install.cmake +++ /dev/null @@ -1,34 +0,0 @@ -# Install script for directory: /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld - -# Set the install prefix -IF(NOT DEFINED CMAKE_INSTALL_PREFIX) - SET(CMAKE_INSTALL_PREFIX "/usr/local") -ENDIF(NOT DEFINED CMAKE_INSTALL_PREFIX) -STRING(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") - -# Set the install configuration name. -IF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) - IF(BUILD_TYPE) - STRING(REGEX REPLACE "^[^A-Za-z0-9_]+" "" - CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") - ELSE(BUILD_TYPE) - SET(CMAKE_INSTALL_CONFIG_NAME "") - ENDIF(BUILD_TYPE) - MESSAGE(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") -ENDIF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) - -# Set the component getting installed. -IF(NOT CMAKE_INSTALL_COMPONENT) - IF(COMPONENT) - MESSAGE(STATUS "Install component: \"${COMPONENT}\"") - SET(CMAKE_INSTALL_COMPONENT "${COMPONENT}") - ELSE(COMPONENT) - SET(CMAKE_INSTALL_COMPONENT) - ENDIF(COMPONENT) -ENDIF(NOT CMAKE_INSTALL_COMPONENT) - -# Install shared libraries without execute permission? -IF(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE) - SET(CMAKE_INSTALL_SO_NO_EXE "1") -ENDIF(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE) - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/License.txt b/src/dependencies/Box2D_v2.3.0/Box2D/License.txt deleted file mode 100644 index e99b703..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/License.txt +++ /dev/null @@ -1,18 +0,0 @@ -Copyright (c) 2006-2013 Erin Catto http://www.gphysics.com - -This software is provided 'as-is', without any express or implied -warranty. In no event will the authors be held liable for any damages -arising from the use of this software. - -Permission is granted to anyone to use this software for any purpose, -including commercial applications, and to alter it and redistribute it -freely, subject to the following restrictions: - -1. The origin of this software must not be misrepresented; you must not -claim that you wrote the original software. If you use this software -in a product, an acknowledgment in the product documentation would be -appreciated but is not required. -2. Altered source versions must be plainly marked as such, and must not be -misrepresented as being the original software. -3. This notice may not be removed or altered from any source distribution. - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Makefile b/src/dependencies/Box2D_v2.3.0/Box2D/Makefile deleted file mode 100644 index 34a74c2..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Makefile +++ /dev/null @@ -1,237 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 2.8 - -# Default target executed when no arguments are given to make. -default_target: all -.PHONY : default_target - -#============================================================================= -# Special targets provided by cmake. - -# Disable implicit rules so canonical targets will work. -.SUFFIXES: - -# Remove some rules from gmake that .SUFFIXES does not remove. -SUFFIXES = - -.SUFFIXES: .hpux_make_needs_suffix_list - -# Suppress display of executed commands. -$(VERBOSE).SILENT: - -# A target that is always out of date. -cmake_force: -.PHONY : cmake_force - -#============================================================================= -# Set environment variables for the build. - -# The shell in which to execute make rules. -SHELL = /bin/sh - -# The CMake executable. -CMAKE_COMMAND = /usr/bin/cmake - -# The command to remove a file. -RM = /usr/bin/cmake -E remove -f - -# Escaping for special characters. -EQUALS = = - -# The top-level source directory on which CMake was run. -CMAKE_SOURCE_DIR = /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D - -# The top-level build directory on which CMake was run. -CMAKE_BINARY_DIR = /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D - -#============================================================================= -# Targets provided globally by CMake. - -# Special rule for the target edit_cache -edit_cache: - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running interactive CMake command-line interface..." - /usr/bin/cmake -i . -.PHONY : edit_cache - -# Special rule for the target edit_cache -edit_cache/fast: edit_cache -.PHONY : edit_cache/fast - -# Special rule for the target install -install: preinstall - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..." - /usr/bin/cmake -P cmake_install.cmake -.PHONY : install - -# Special rule for the target install -install/fast: preinstall/fast - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..." - /usr/bin/cmake -P cmake_install.cmake -.PHONY : install/fast - -# Special rule for the target install/local -install/local: preinstall - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..." - /usr/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake -.PHONY : install/local - -# Special rule for the target install/local -install/local/fast: install/local -.PHONY : install/local/fast - -# Special rule for the target install/strip -install/strip: preinstall - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..." - /usr/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake -.PHONY : install/strip - -# Special rule for the target install/strip -install/strip/fast: install/strip -.PHONY : install/strip/fast - -# Special rule for the target list_install_components -list_install_components: - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Available install components are: \"Unspecified\"" -.PHONY : list_install_components - -# Special rule for the target list_install_components -list_install_components/fast: list_install_components -.PHONY : list_install_components/fast - -# Special rule for the target rebuild_cache -rebuild_cache: - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..." - /usr/bin/cmake -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) -.PHONY : rebuild_cache - -# Special rule for the target rebuild_cache -rebuild_cache/fast: rebuild_cache -.PHONY : rebuild_cache/fast - -# The main all target -all: cmake_check_build_system - $(CMAKE_COMMAND) -E cmake_progress_start /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles/progress.marks - $(MAKE) -f CMakeFiles/Makefile2 all - $(CMAKE_COMMAND) -E cmake_progress_start /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles 0 -.PHONY : all - -# The main clean target -clean: - $(MAKE) -f CMakeFiles/Makefile2 clean -.PHONY : clean - -# The main clean target -clean/fast: clean -.PHONY : clean/fast - -# Prepare targets for installation. -preinstall: all - $(MAKE) -f CMakeFiles/Makefile2 preinstall -.PHONY : preinstall - -# Prepare targets for installation. -preinstall/fast: - $(MAKE) -f CMakeFiles/Makefile2 preinstall -.PHONY : preinstall/fast - -# clear depends -depend: - $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1 -.PHONY : depend - -#============================================================================= -# Target rules for targets named Box2D - -# Build rule for target. -Box2D: cmake_check_build_system - $(MAKE) -f CMakeFiles/Makefile2 Box2D -.PHONY : Box2D - -# fast build rule for target. -Box2D/fast: - $(MAKE) -f Box2D/CMakeFiles/Box2D.dir/build.make Box2D/CMakeFiles/Box2D.dir/build -.PHONY : Box2D/fast - -#============================================================================= -# Target rules for targets named HelloWorld - -# Build rule for target. -HelloWorld: cmake_check_build_system - $(MAKE) -f CMakeFiles/Makefile2 HelloWorld -.PHONY : HelloWorld - -# fast build rule for target. -HelloWorld/fast: - $(MAKE) -f HelloWorld/CMakeFiles/HelloWorld.dir/build.make HelloWorld/CMakeFiles/HelloWorld.dir/build -.PHONY : HelloWorld/fast - -#============================================================================= -# Target rules for targets named freeglut_static - -# Build rule for target. -freeglut_static: cmake_check_build_system - $(MAKE) -f CMakeFiles/Makefile2 freeglut_static -.PHONY : freeglut_static - -# fast build rule for target. -freeglut_static/fast: - $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/build -.PHONY : freeglut_static/fast - -#============================================================================= -# Target rules for targets named glui - -# Build rule for target. -glui: cmake_check_build_system - $(MAKE) -f CMakeFiles/Makefile2 glui -.PHONY : glui - -# fast build rule for target. -glui/fast: - $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/build -.PHONY : glui/fast - -#============================================================================= -# Target rules for targets named Testbed - -# Build rule for target. -Testbed: cmake_check_build_system - $(MAKE) -f CMakeFiles/Makefile2 Testbed -.PHONY : Testbed - -# fast build rule for target. -Testbed/fast: - $(MAKE) -f Testbed/CMakeFiles/Testbed.dir/build.make Testbed/CMakeFiles/Testbed.dir/build -.PHONY : Testbed/fast - -# Help Target -help: - @echo "The following are some of the valid targets for this Makefile:" - @echo "... all (the default if no target is provided)" - @echo "... clean" - @echo "... depend" - @echo "... edit_cache" - @echo "... install" - @echo "... install/local" - @echo "... install/strip" - @echo "... list_install_components" - @echo "... rebuild_cache" - @echo "... Box2D" - @echo "... HelloWorld" - @echo "... freeglut_static" - @echo "... glui" - @echo "... Testbed" -.PHONY : help - - - -#============================================================================= -# Special targets to cleanup operation of make. - -# Special rule to run CMake to check the build system integrity. -# No rule that depends on this can have commands that come from listfiles -# because they might be regenerated. -cmake_check_build_system: - $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 -.PHONY : cmake_check_build_system - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Readme.txt b/src/dependencies/Box2D_v2.3.0/Box2D/Readme.txt deleted file mode 100644 index 12453d4..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Readme.txt +++ /dev/null @@ -1,17 +0,0 @@ -Welcome to Box2D! - -Box2D is a 2D physics engine for games. - -For help with Box2D, please visit http://www.box2d.org. There is a forum there where you may post your questions. - -Please see Building.txt to learn how to build Box2D and run the testbed. - -To run the demos, set "Testbed" as your startup project and press F5. Some test bed commands are: -- 'r' to reset the current test -- SPACE to launch a bomb -- arrow keys to pan -- 'x' and 'z' to zoom in/out -- use the mouse to click and drag objects - -Erin Catto -http://www.box2d.org diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/CMakeDirectoryInformation.cmake b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/CMakeDirectoryInformation.cmake deleted file mode 100644 index 21c61ba..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/CMakeDirectoryInformation.cmake +++ /dev/null @@ -1,16 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 2.8 - -# Relative path conversion top directories. -SET(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D") -SET(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D") - -# Force unix paths in dependencies. -SET(CMAKE_FORCE_UNIX_PATHS 1) - - -# The C and CXX include file regular expressions for this directory. -SET(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$") -SET(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$") -SET(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN}) -SET(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN}) diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir/CXX.includecache b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir/CXX.includecache deleted file mode 100644 index e55c32b..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir/CXX.includecache +++ /dev/null @@ -1,540 +0,0 @@ -#IncludeRegexLine: ^[ ]*#[ ]*(include|import)[ ]*[<"]([^">]+)([">]) - -#IncludeRegexScan: ^.*$ - -#IncludeRegexComplain: ^$ - -#IncludeRegexTransform: - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Main.cpp -Render.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Render.h -Test.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Test.h -glui/glui.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/glui/glui.h -stdio.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Render.cpp -Render.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Render.h -GLUT/glut.h -- -freeglut/freeglut.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/freeglut/freeglut.h -stdio.h -- -stdarg.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Render.h -Box2D/Box2D.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Test.cpp -Test.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Test.h -stdio.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Test.h -Box2D/Box2D.h -- -Render.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Render.h -stdlib.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/AddPair.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/ApplyForce.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/BodyTypes.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Breakable.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Bridge.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/BulletTest.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Cantilever.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Car.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Chain.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/CharacterCollision.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/CollisionFiltering.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/CollisionProcessing.h -algorithm -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/CompoundShapes.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Confined.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/ContinuousTest.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/ConvexHull.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/ConveyorBelt.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/DistanceTest.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Dominos.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/DumpShell.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/DynamicTreeTest.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/EdgeShapes.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/EdgeTest.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Gears.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Mobile.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/MobileBalanced.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/MotorJoint.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/OneSidedPlatform.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Pinball.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/PolyCollision.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/PolyShapes.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Prismatic.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Pulleys.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Pyramid.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/RayCast.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Revolute.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/RopeJoint.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/SensorTest.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/ShapeEditing.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/SliderCrank.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/SphereStack.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/TestEntries.cpp -../Framework/Test.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Test.h -../Framework/Render.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Render.h -GLUT/glut.h -- -freeglut/freeglut.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/freeglut/freeglut.h -AddPair.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/AddPair.h -ApplyForce.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/ApplyForce.h -BodyTypes.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/BodyTypes.h -Breakable.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Breakable.h -Bridge.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Bridge.h -BulletTest.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/BulletTest.h -Cantilever.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Cantilever.h -Car.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Car.h -ContinuousTest.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/ContinuousTest.h -Chain.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Chain.h -CharacterCollision.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/CharacterCollision.h -CollisionFiltering.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/CollisionFiltering.h -CollisionProcessing.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/CollisionProcessing.h -CompoundShapes.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/CompoundShapes.h -Confined.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Confined.h -ConvexHull.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/ConvexHull.h -ConveyorBelt.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/ConveyorBelt.h -DistanceTest.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/DistanceTest.h -Dominos.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Dominos.h -DumpShell.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/DumpShell.h -DynamicTreeTest.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/DynamicTreeTest.h -EdgeShapes.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/EdgeShapes.h -EdgeTest.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/EdgeTest.h -Gears.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Gears.h -Mobile.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Mobile.h -MobileBalanced.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/MobileBalanced.h -MotorJoint.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/MotorJoint.h -OneSidedPlatform.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/OneSidedPlatform.h -Pinball.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Pinball.h -PolyCollision.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/PolyCollision.h -PolyShapes.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/PolyShapes.h -Prismatic.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Prismatic.h -Pulleys.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Pulleys.h -Pyramid.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Pyramid.h -RayCast.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/RayCast.h -Revolute.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Revolute.h -RopeJoint.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/RopeJoint.h -SensorTest.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/SensorTest.h -ShapeEditing.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/ShapeEditing.h -SliderCrank.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/SliderCrank.h -SphereStack.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/SphereStack.h -TheoJansen.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/TheoJansen.h -Tiles.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Tiles.h -TimeOfImpact.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/TimeOfImpact.h -Tumbler.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Tumbler.h -VaryingFriction.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/VaryingFriction.h -VaryingRestitution.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/VaryingRestitution.h -VerticalStack.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/VerticalStack.h -Web.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Web.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/TheoJansen.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Tiles.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/TimeOfImpact.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Tumbler.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/VaryingFriction.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/VaryingRestitution.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/VerticalStack.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Web.h - -Box2D/Box2D.h -Box2D/Common/b2Settings.h -- -Box2D/Common/b2Draw.h -- -Box2D/Common/b2Timer.h -- -Box2D/Collision/Shapes/b2CircleShape.h -- -Box2D/Collision/Shapes/b2EdgeShape.h -- -Box2D/Collision/Shapes/b2ChainShape.h -- -Box2D/Collision/Shapes/b2PolygonShape.h -- -Box2D/Collision/b2BroadPhase.h -- -Box2D/Collision/b2Distance.h -- -Box2D/Collision/b2DynamicTree.h -- -Box2D/Collision/b2TimeOfImpact.h -- -Box2D/Dynamics/b2Body.h -- -Box2D/Dynamics/b2Fixture.h -- -Box2D/Dynamics/b2WorldCallbacks.h -- -Box2D/Dynamics/b2TimeStep.h -- -Box2D/Dynamics/b2World.h -- -Box2D/Dynamics/Contacts/b2Contact.h -- -Box2D/Dynamics/Joints/b2DistanceJoint.h -- -Box2D/Dynamics/Joints/b2FrictionJoint.h -- -Box2D/Dynamics/Joints/b2GearJoint.h -- -Box2D/Dynamics/Joints/b2MotorJoint.h -- -Box2D/Dynamics/Joints/b2MouseJoint.h -- -Box2D/Dynamics/Joints/b2PrismaticJoint.h -- -Box2D/Dynamics/Joints/b2PulleyJoint.h -- -Box2D/Dynamics/Joints/b2RevoluteJoint.h -- -Box2D/Dynamics/Joints/b2RopeJoint.h -- -Box2D/Dynamics/Joints/b2WeldJoint.h -- -Box2D/Dynamics/Joints/b2WheelJoint.h -- - -Box2D/Collision/Shapes/b2ChainShape.h -Box2D/Collision/Shapes/b2Shape.h -- - -Box2D/Collision/Shapes/b2CircleShape.h -Box2D/Collision/Shapes/b2Shape.h -- - -Box2D/Collision/Shapes/b2EdgeShape.h -Box2D/Collision/Shapes/b2Shape.h -- - -Box2D/Collision/Shapes/b2PolygonShape.h -Box2D/Collision/Shapes/b2Shape.h -- - -Box2D/Collision/Shapes/b2Shape.h -Box2D/Common/b2BlockAllocator.h -- -Box2D/Common/b2Math.h -- -Box2D/Collision/b2Collision.h -- - -Box2D/Collision/b2BroadPhase.h -Box2D/Common/b2Settings.h -- -Box2D/Collision/b2Collision.h -- -Box2D/Collision/b2DynamicTree.h -- -algorithm -- - -Box2D/Collision/b2Collision.h -Box2D/Common/b2Math.h -- -limits.h -- - -Box2D/Collision/b2Distance.h -Box2D/Common/b2Math.h -- - -Box2D/Collision/b2DynamicTree.h -Box2D/Collision/b2Collision.h -- -Box2D/Common/b2GrowableStack.h -- - -Box2D/Collision/b2TimeOfImpact.h -Box2D/Common/b2Math.h -- -Box2D/Collision/b2Distance.h -- - -Box2D/Common/b2BlockAllocator.h -Box2D/Common/b2Settings.h -- - -Box2D/Common/b2Draw.h -Box2D/Common/b2Math.h -- - -Box2D/Common/b2GrowableStack.h -Box2D/Common/b2Settings.h -- -memory.h -- - -Box2D/Common/b2Math.h -Box2D/Common/b2Settings.h -- -math.h -- - -Box2D/Common/b2Settings.h -stddef.h -- -assert.h -- -float.h -- - -Box2D/Common/b2StackAllocator.h -Box2D/Common/b2Settings.h -- - -Box2D/Common/b2Timer.h -Box2D/Common/b2Settings.h -- - -Box2D/Dynamics/Contacts/b2Contact.h -Box2D/Common/b2Math.h -- -Box2D/Collision/b2Collision.h -- -Box2D/Collision/Shapes/b2Shape.h -- -Box2D/Dynamics/b2Fixture.h -- - -Box2D/Dynamics/Joints/b2DistanceJoint.h -Box2D/Dynamics/Joints/b2Joint.h -- - -Box2D/Dynamics/Joints/b2FrictionJoint.h -Box2D/Dynamics/Joints/b2Joint.h -- - -Box2D/Dynamics/Joints/b2GearJoint.h -Box2D/Dynamics/Joints/b2Joint.h -- - -Box2D/Dynamics/Joints/b2Joint.h -Box2D/Common/b2Math.h -- - -Box2D/Dynamics/Joints/b2MotorJoint.h -Box2D/Dynamics/Joints/b2Joint.h -- - -Box2D/Dynamics/Joints/b2MouseJoint.h -Box2D/Dynamics/Joints/b2Joint.h -- - -Box2D/Dynamics/Joints/b2PrismaticJoint.h -Box2D/Dynamics/Joints/b2Joint.h -- - -Box2D/Dynamics/Joints/b2PulleyJoint.h -Box2D/Dynamics/Joints/b2Joint.h -- - -Box2D/Dynamics/Joints/b2RevoluteJoint.h -Box2D/Dynamics/Joints/b2Joint.h -- - -Box2D/Dynamics/Joints/b2RopeJoint.h -Box2D/Dynamics/Joints/b2Joint.h -- - -Box2D/Dynamics/Joints/b2WeldJoint.h -Box2D/Dynamics/Joints/b2Joint.h -- - -Box2D/Dynamics/Joints/b2WheelJoint.h -Box2D/Dynamics/Joints/b2Joint.h -- - -Box2D/Dynamics/b2Body.h -Box2D/Common/b2Math.h -- -Box2D/Collision/Shapes/b2Shape.h -- -memory -- - -Box2D/Dynamics/b2ContactManager.h -Box2D/Collision/b2BroadPhase.h -- - -Box2D/Dynamics/b2Fixture.h -Box2D/Dynamics/b2Body.h -- -Box2D/Collision/b2Collision.h -- -Box2D/Collision/Shapes/b2Shape.h -- - -Box2D/Dynamics/b2TimeStep.h -Box2D/Common/b2Math.h -- - -Box2D/Dynamics/b2World.h -Box2D/Common/b2Math.h -- -Box2D/Common/b2BlockAllocator.h -- -Box2D/Common/b2StackAllocator.h -- -Box2D/Dynamics/b2ContactManager.h -- -Box2D/Dynamics/b2WorldCallbacks.h -- -Box2D/Dynamics/b2TimeStep.h -- - -Box2D/Dynamics/b2WorldCallbacks.h -Box2D/Common/b2Settings.h -- - -freeglut/freeglut.h -freeglut_std.h -freeglut/freeglut_std.h -freeglut_ext.h -freeglut/freeglut_ext.h - -freeglut/freeglut_ext.h - -freeglut/freeglut_std.h -windows.h -- -GL/gl.h -- -GL/glu.h -- -stdlib.h -- - -glui/glui.h -GLUT/glut.h -- -freeglut/freeglut.h -glui/freeglut/freeglut.h -cstdlib -- -cstdio -- -cstring -- -string -- -vector -- - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir/DependInfo.cmake b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir/DependInfo.cmake deleted file mode 100644 index 969a843..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir/DependInfo.cmake +++ /dev/null @@ -1,34 +0,0 @@ -# The set of languages for which implicit dependencies are needed: -SET(CMAKE_DEPENDS_LANGUAGES - "CXX" - ) -# The set of files for implicit dependencies of each language: -SET(CMAKE_DEPENDS_CHECK_CXX - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Main.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Render.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Test.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/TestEntries.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o" - ) -SET(CMAKE_CXX_COMPILER_ID "GNU") - -# Preprocessor definitions for this target. -SET(CMAKE_TARGET_DEFINITIONS - "FREEGLUT_EXPORTS" - "FREEGLUT_STATIC" - "_CRT_SECURE_NO_WARNINGS" - ) - -# Targets to which this target links. -SET(CMAKE_TARGET_LINKED_INFO_FILES - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/CMakeFiles/Box2D.dir/DependInfo.cmake" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/DependInfo.cmake" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/DependInfo.cmake" - ) - -# The include file search paths: -SET(CMAKE_C_TARGET_INCLUDE_PATH - "." - ) -SET(CMAKE_CXX_TARGET_INCLUDE_PATH ${CMAKE_C_TARGET_INCLUDE_PATH}) -SET(CMAKE_Fortran_TARGET_INCLUDE_PATH ${CMAKE_C_TARGET_INCLUDE_PATH}) -SET(CMAKE_ASM_TARGET_INCLUDE_PATH ${CMAKE_C_TARGET_INCLUDE_PATH}) diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o deleted file mode 100644 index 84777e3..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o deleted file mode 100644 index f9d86ee..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o deleted file mode 100644 index 9aa18fe..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o deleted file mode 100644 index 7c4c1c4..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir/build.make b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir/build.make deleted file mode 100644 index 90b0946..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir/build.make +++ /dev/null @@ -1,189 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 2.8 - -#============================================================================= -# Special targets provided by cmake. - -# Disable implicit rules so canonical targets will work. -.SUFFIXES: - -# Remove some rules from gmake that .SUFFIXES does not remove. -SUFFIXES = - -.SUFFIXES: .hpux_make_needs_suffix_list - -# Suppress display of executed commands. -$(VERBOSE).SILENT: - -# A target that is always out of date. -cmake_force: -.PHONY : cmake_force - -#============================================================================= -# Set environment variables for the build. - -# The shell in which to execute make rules. -SHELL = /bin/sh - -# The CMake executable. -CMAKE_COMMAND = /usr/bin/cmake - -# The command to remove a file. -RM = /usr/bin/cmake -E remove -f - -# Escaping for special characters. -EQUALS = = - -# The top-level source directory on which CMake was run. -CMAKE_SOURCE_DIR = /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D - -# The top-level build directory on which CMake was run. -CMAKE_BINARY_DIR = /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D - -# Include any dependencies generated for this target. -include Testbed/CMakeFiles/Testbed.dir/depend.make - -# Include the progress variables for this target. -include Testbed/CMakeFiles/Testbed.dir/progress.make - -# Include the compile flags for this target's objects. -include Testbed/CMakeFiles/Testbed.dir/flags.make - -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: Testbed/CMakeFiles/Testbed.dir/flags.make -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: Testbed/Framework/Main.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_1) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Testbed.dir/Framework/Main.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Main.cpp - -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Testbed.dir/Framework/Main.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Main.cpp > CMakeFiles/Testbed.dir/Framework/Main.cpp.i - -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Testbed.dir/Framework/Main.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Main.cpp -o CMakeFiles/Testbed.dir/Framework/Main.cpp.s - -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o.requires: -.PHONY : Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o.requires - -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o.provides: Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o.requires - $(MAKE) -f Testbed/CMakeFiles/Testbed.dir/build.make Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o.provides.build -.PHONY : Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o.provides - -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o.provides.build: Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o - -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o: Testbed/CMakeFiles/Testbed.dir/flags.make -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o: Testbed/Framework/Render.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_2) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Testbed.dir/Framework/Render.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Render.cpp - -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Testbed.dir/Framework/Render.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Render.cpp > CMakeFiles/Testbed.dir/Framework/Render.cpp.i - -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Testbed.dir/Framework/Render.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Render.cpp -o CMakeFiles/Testbed.dir/Framework/Render.cpp.s - -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o.requires: -.PHONY : Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o.requires - -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o.provides: Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o.requires - $(MAKE) -f Testbed/CMakeFiles/Testbed.dir/build.make Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o.provides.build -.PHONY : Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o.provides - -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o.provides.build: Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o - -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o: Testbed/CMakeFiles/Testbed.dir/flags.make -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o: Testbed/Framework/Test.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_3) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Testbed.dir/Framework/Test.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Test.cpp - -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Testbed.dir/Framework/Test.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Test.cpp > CMakeFiles/Testbed.dir/Framework/Test.cpp.i - -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Testbed.dir/Framework/Test.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Test.cpp -o CMakeFiles/Testbed.dir/Framework/Test.cpp.s - -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o.requires: -.PHONY : Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o.requires - -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o.provides: Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o.requires - $(MAKE) -f Testbed/CMakeFiles/Testbed.dir/build.make Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o.provides.build -.PHONY : Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o.provides - -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o.provides.build: Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o - -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/CMakeFiles/Testbed.dir/flags.make -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/TestEntries.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_4) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/TestEntries.cpp - -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/TestEntries.cpp > CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.i - -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/TestEntries.cpp -o CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.s - -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o.requires: -.PHONY : Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o.requires - -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o.provides: Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o.requires - $(MAKE) -f Testbed/CMakeFiles/Testbed.dir/build.make Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o.provides.build -.PHONY : Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o.provides - -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o.provides.build: Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o - -# Object files for target Testbed -Testbed_OBJECTS = \ -"CMakeFiles/Testbed.dir/Framework/Main.cpp.o" \ -"CMakeFiles/Testbed.dir/Framework/Render.cpp.o" \ -"CMakeFiles/Testbed.dir/Framework/Test.cpp.o" \ -"CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o" - -# External object files for target Testbed -Testbed_EXTERNAL_OBJECTS = - -Testbed/Testbed: Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o -Testbed/Testbed: Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o -Testbed/Testbed: Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o -Testbed/Testbed: Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o -Testbed/Testbed: Testbed/CMakeFiles/Testbed.dir/build.make -Testbed/Testbed: Box2D/libBox2D.a -Testbed/Testbed: freeglut/libfreeglut_static.a -Testbed/Testbed: glui/libglui.a -Testbed/Testbed: /usr/lib/x86_64-linux-gnu/libGLU.so -Testbed/Testbed: /usr/lib/x86_64-linux-gnu/libGL.so -Testbed/Testbed: /usr/lib/x86_64-linux-gnu/libSM.so -Testbed/Testbed: /usr/lib/x86_64-linux-gnu/libICE.so -Testbed/Testbed: /usr/lib/x86_64-linux-gnu/libX11.so -Testbed/Testbed: /usr/lib/x86_64-linux-gnu/libXext.so -Testbed/Testbed: Testbed/CMakeFiles/Testbed.dir/link.txt - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --red --bold "Linking CXX executable Testbed" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/Testbed.dir/link.txt --verbose=$(VERBOSE) - -# Rule to build all files generated by this target. -Testbed/CMakeFiles/Testbed.dir/build: Testbed/Testbed -.PHONY : Testbed/CMakeFiles/Testbed.dir/build - -Testbed/CMakeFiles/Testbed.dir/requires: Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o.requires -Testbed/CMakeFiles/Testbed.dir/requires: Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o.requires -Testbed/CMakeFiles/Testbed.dir/requires: Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o.requires -Testbed/CMakeFiles/Testbed.dir/requires: Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o.requires -.PHONY : Testbed/CMakeFiles/Testbed.dir/requires - -Testbed/CMakeFiles/Testbed.dir/clean: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed && $(CMAKE_COMMAND) -P CMakeFiles/Testbed.dir/cmake_clean.cmake -.PHONY : Testbed/CMakeFiles/Testbed.dir/clean - -Testbed/CMakeFiles/Testbed.dir/depend: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir/DependInfo.cmake --color=$(COLOR) -.PHONY : Testbed/CMakeFiles/Testbed.dir/depend - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir/cmake_clean.cmake b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir/cmake_clean.cmake deleted file mode 100644 index 1910ba1..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir/cmake_clean.cmake +++ /dev/null @@ -1,13 +0,0 @@ -FILE(REMOVE_RECURSE - "CMakeFiles/Testbed.dir/Framework/Main.cpp.o" - "CMakeFiles/Testbed.dir/Framework/Render.cpp.o" - "CMakeFiles/Testbed.dir/Framework/Test.cpp.o" - "CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o" - "Testbed.pdb" - "Testbed" -) - -# Per-language clean rules from dependency scanning. -FOREACH(lang CXX) - INCLUDE(CMakeFiles/Testbed.dir/cmake_clean_${lang}.cmake OPTIONAL) -ENDFOREACH(lang) diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir/depend.internal b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir/depend.internal deleted file mode 100644 index b0b2905..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir/depend.internal +++ /dev/null @@ -1,225 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 2.8 - -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Main.cpp - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Render.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Test.h - Box2D/Box2D.h - Box2D/Collision/Shapes/b2ChainShape.h - Box2D/Collision/Shapes/b2CircleShape.h - Box2D/Collision/Shapes/b2EdgeShape.h - Box2D/Collision/Shapes/b2PolygonShape.h - Box2D/Collision/Shapes/b2Shape.h - Box2D/Collision/b2BroadPhase.h - Box2D/Collision/b2Collision.h - Box2D/Collision/b2Distance.h - Box2D/Collision/b2DynamicTree.h - Box2D/Collision/b2TimeOfImpact.h - Box2D/Common/b2BlockAllocator.h - Box2D/Common/b2Draw.h - Box2D/Common/b2GrowableStack.h - Box2D/Common/b2Math.h - Box2D/Common/b2Settings.h - Box2D/Common/b2StackAllocator.h - Box2D/Common/b2Timer.h - Box2D/Dynamics/Contacts/b2Contact.h - Box2D/Dynamics/Joints/b2DistanceJoint.h - Box2D/Dynamics/Joints/b2FrictionJoint.h - Box2D/Dynamics/Joints/b2GearJoint.h - Box2D/Dynamics/Joints/b2Joint.h - Box2D/Dynamics/Joints/b2MotorJoint.h - Box2D/Dynamics/Joints/b2MouseJoint.h - Box2D/Dynamics/Joints/b2PrismaticJoint.h - Box2D/Dynamics/Joints/b2PulleyJoint.h - Box2D/Dynamics/Joints/b2RevoluteJoint.h - Box2D/Dynamics/Joints/b2RopeJoint.h - Box2D/Dynamics/Joints/b2WeldJoint.h - Box2D/Dynamics/Joints/b2WheelJoint.h - Box2D/Dynamics/b2Body.h - Box2D/Dynamics/b2ContactManager.h - Box2D/Dynamics/b2Fixture.h - Box2D/Dynamics/b2TimeStep.h - Box2D/Dynamics/b2World.h - Box2D/Dynamics/b2WorldCallbacks.h - freeglut/freeglut.h - freeglut/freeglut_ext.h - freeglut/freeglut_std.h - glui/glui.h -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Render.cpp - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Render.h - Box2D/Box2D.h - Box2D/Collision/Shapes/b2ChainShape.h - Box2D/Collision/Shapes/b2CircleShape.h - Box2D/Collision/Shapes/b2EdgeShape.h - Box2D/Collision/Shapes/b2PolygonShape.h - Box2D/Collision/Shapes/b2Shape.h - Box2D/Collision/b2BroadPhase.h - Box2D/Collision/b2Collision.h - Box2D/Collision/b2Distance.h - Box2D/Collision/b2DynamicTree.h - Box2D/Collision/b2TimeOfImpact.h - Box2D/Common/b2BlockAllocator.h - Box2D/Common/b2Draw.h - Box2D/Common/b2GrowableStack.h - Box2D/Common/b2Math.h - Box2D/Common/b2Settings.h - Box2D/Common/b2StackAllocator.h - Box2D/Common/b2Timer.h - Box2D/Dynamics/Contacts/b2Contact.h - Box2D/Dynamics/Joints/b2DistanceJoint.h - Box2D/Dynamics/Joints/b2FrictionJoint.h - Box2D/Dynamics/Joints/b2GearJoint.h - Box2D/Dynamics/Joints/b2Joint.h - Box2D/Dynamics/Joints/b2MotorJoint.h - Box2D/Dynamics/Joints/b2MouseJoint.h - Box2D/Dynamics/Joints/b2PrismaticJoint.h - Box2D/Dynamics/Joints/b2PulleyJoint.h - Box2D/Dynamics/Joints/b2RevoluteJoint.h - Box2D/Dynamics/Joints/b2RopeJoint.h - Box2D/Dynamics/Joints/b2WeldJoint.h - Box2D/Dynamics/Joints/b2WheelJoint.h - Box2D/Dynamics/b2Body.h - Box2D/Dynamics/b2ContactManager.h - Box2D/Dynamics/b2Fixture.h - Box2D/Dynamics/b2TimeStep.h - Box2D/Dynamics/b2World.h - Box2D/Dynamics/b2WorldCallbacks.h - freeglut/freeglut.h - freeglut/freeglut_ext.h - freeglut/freeglut_std.h -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Render.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Test.cpp - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Test.h - Box2D/Box2D.h - Box2D/Collision/Shapes/b2ChainShape.h - Box2D/Collision/Shapes/b2CircleShape.h - Box2D/Collision/Shapes/b2EdgeShape.h - Box2D/Collision/Shapes/b2PolygonShape.h - Box2D/Collision/Shapes/b2Shape.h - Box2D/Collision/b2BroadPhase.h - Box2D/Collision/b2Collision.h - Box2D/Collision/b2Distance.h - Box2D/Collision/b2DynamicTree.h - Box2D/Collision/b2TimeOfImpact.h - Box2D/Common/b2BlockAllocator.h - Box2D/Common/b2Draw.h - Box2D/Common/b2GrowableStack.h - Box2D/Common/b2Math.h - Box2D/Common/b2Settings.h - Box2D/Common/b2StackAllocator.h - Box2D/Common/b2Timer.h - Box2D/Dynamics/Contacts/b2Contact.h - Box2D/Dynamics/Joints/b2DistanceJoint.h - Box2D/Dynamics/Joints/b2FrictionJoint.h - Box2D/Dynamics/Joints/b2GearJoint.h - Box2D/Dynamics/Joints/b2Joint.h - Box2D/Dynamics/Joints/b2MotorJoint.h - Box2D/Dynamics/Joints/b2MouseJoint.h - Box2D/Dynamics/Joints/b2PrismaticJoint.h - Box2D/Dynamics/Joints/b2PulleyJoint.h - Box2D/Dynamics/Joints/b2RevoluteJoint.h - Box2D/Dynamics/Joints/b2RopeJoint.h - Box2D/Dynamics/Joints/b2WeldJoint.h - Box2D/Dynamics/Joints/b2WheelJoint.h - Box2D/Dynamics/b2Body.h - Box2D/Dynamics/b2ContactManager.h - Box2D/Dynamics/b2Fixture.h - Box2D/Dynamics/b2TimeStep.h - Box2D/Dynamics/b2World.h - Box2D/Dynamics/b2WorldCallbacks.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Render.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Test.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/AddPair.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/ApplyForce.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/BodyTypes.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Breakable.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Bridge.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/BulletTest.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Cantilever.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Car.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Chain.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/CharacterCollision.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/CollisionFiltering.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/CollisionProcessing.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/CompoundShapes.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Confined.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/ContinuousTest.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/ConvexHull.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/ConveyorBelt.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/DistanceTest.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Dominos.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/DumpShell.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/DynamicTreeTest.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/EdgeShapes.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/EdgeTest.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Gears.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Mobile.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/MobileBalanced.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/MotorJoint.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/OneSidedPlatform.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Pinball.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/PolyCollision.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/PolyShapes.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Prismatic.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Pulleys.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Pyramid.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/RayCast.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Revolute.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/RopeJoint.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/SensorTest.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/ShapeEditing.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/SliderCrank.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/SphereStack.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/TestEntries.cpp - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/TheoJansen.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Tiles.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/TimeOfImpact.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Tumbler.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/VaryingFriction.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/VaryingRestitution.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/VerticalStack.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Web.h - Box2D/Box2D.h - Box2D/Collision/Shapes/b2ChainShape.h - Box2D/Collision/Shapes/b2CircleShape.h - Box2D/Collision/Shapes/b2EdgeShape.h - Box2D/Collision/Shapes/b2PolygonShape.h - Box2D/Collision/Shapes/b2Shape.h - Box2D/Collision/b2BroadPhase.h - Box2D/Collision/b2Collision.h - Box2D/Collision/b2Distance.h - Box2D/Collision/b2DynamicTree.h - Box2D/Collision/b2TimeOfImpact.h - Box2D/Common/b2BlockAllocator.h - Box2D/Common/b2Draw.h - Box2D/Common/b2GrowableStack.h - Box2D/Common/b2Math.h - Box2D/Common/b2Settings.h - Box2D/Common/b2StackAllocator.h - Box2D/Common/b2Timer.h - Box2D/Dynamics/Contacts/b2Contact.h - Box2D/Dynamics/Joints/b2DistanceJoint.h - Box2D/Dynamics/Joints/b2FrictionJoint.h - Box2D/Dynamics/Joints/b2GearJoint.h - Box2D/Dynamics/Joints/b2Joint.h - Box2D/Dynamics/Joints/b2MotorJoint.h - Box2D/Dynamics/Joints/b2MouseJoint.h - Box2D/Dynamics/Joints/b2PrismaticJoint.h - Box2D/Dynamics/Joints/b2PulleyJoint.h - Box2D/Dynamics/Joints/b2RevoluteJoint.h - Box2D/Dynamics/Joints/b2RopeJoint.h - Box2D/Dynamics/Joints/b2WeldJoint.h - Box2D/Dynamics/Joints/b2WheelJoint.h - Box2D/Dynamics/b2Body.h - Box2D/Dynamics/b2ContactManager.h - Box2D/Dynamics/b2Fixture.h - Box2D/Dynamics/b2TimeStep.h - Box2D/Dynamics/b2World.h - Box2D/Dynamics/b2WorldCallbacks.h - freeglut/freeglut.h - freeglut/freeglut_ext.h - freeglut/freeglut_std.h diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir/depend.make b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir/depend.make deleted file mode 100644 index a417bd5..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir/depend.make +++ /dev/null @@ -1,225 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 2.8 - -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: Testbed/Framework/Main.cpp -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: Testbed/Framework/Render.h -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: Testbed/Framework/Test.h -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: Box2D/Box2D.h -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: Box2D/Collision/Shapes/b2ChainShape.h -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: Box2D/Collision/Shapes/b2CircleShape.h -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: Box2D/Collision/Shapes/b2EdgeShape.h -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: Box2D/Collision/Shapes/b2PolygonShape.h -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: Box2D/Collision/Shapes/b2Shape.h -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: Box2D/Collision/b2BroadPhase.h -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: Box2D/Collision/b2Collision.h -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: Box2D/Collision/b2Distance.h -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: Box2D/Collision/b2DynamicTree.h -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: Box2D/Collision/b2TimeOfImpact.h -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: Box2D/Common/b2BlockAllocator.h -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: Box2D/Common/b2Draw.h -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: Box2D/Common/b2GrowableStack.h -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: Box2D/Common/b2Math.h -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: Box2D/Common/b2Settings.h -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: Box2D/Common/b2StackAllocator.h -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: Box2D/Common/b2Timer.h -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: Box2D/Dynamics/Contacts/b2Contact.h -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: Box2D/Dynamics/Joints/b2DistanceJoint.h -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: Box2D/Dynamics/Joints/b2FrictionJoint.h -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: Box2D/Dynamics/Joints/b2GearJoint.h -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: Box2D/Dynamics/Joints/b2Joint.h -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: Box2D/Dynamics/Joints/b2MotorJoint.h -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: Box2D/Dynamics/Joints/b2MouseJoint.h -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: Box2D/Dynamics/Joints/b2PrismaticJoint.h -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: Box2D/Dynamics/Joints/b2PulleyJoint.h -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: Box2D/Dynamics/Joints/b2RevoluteJoint.h -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: Box2D/Dynamics/Joints/b2RopeJoint.h -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: Box2D/Dynamics/Joints/b2WeldJoint.h -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: Box2D/Dynamics/Joints/b2WheelJoint.h -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: Box2D/Dynamics/b2Body.h -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: Box2D/Dynamics/b2ContactManager.h -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: Box2D/Dynamics/b2Fixture.h -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: Box2D/Dynamics/b2TimeStep.h -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: Box2D/Dynamics/b2World.h -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: Box2D/Dynamics/b2WorldCallbacks.h -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: freeglut/freeglut.h -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: freeglut/freeglut_ext.h -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: freeglut/freeglut_std.h -Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o: glui/glui.h - -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o: Testbed/Framework/Render.cpp -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o: Testbed/Framework/Render.h -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o: Box2D/Box2D.h -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o: Box2D/Collision/Shapes/b2ChainShape.h -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o: Box2D/Collision/Shapes/b2CircleShape.h -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o: Box2D/Collision/Shapes/b2EdgeShape.h -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o: Box2D/Collision/Shapes/b2PolygonShape.h -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o: Box2D/Collision/Shapes/b2Shape.h -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o: Box2D/Collision/b2BroadPhase.h -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o: Box2D/Collision/b2Collision.h -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o: Box2D/Collision/b2Distance.h -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o: Box2D/Collision/b2DynamicTree.h -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o: Box2D/Collision/b2TimeOfImpact.h -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o: Box2D/Common/b2BlockAllocator.h -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o: Box2D/Common/b2Draw.h -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o: Box2D/Common/b2GrowableStack.h -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o: Box2D/Common/b2Math.h -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o: Box2D/Common/b2Settings.h -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o: Box2D/Common/b2StackAllocator.h -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o: Box2D/Common/b2Timer.h -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o: Box2D/Dynamics/Contacts/b2Contact.h -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o: Box2D/Dynamics/Joints/b2DistanceJoint.h -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o: Box2D/Dynamics/Joints/b2FrictionJoint.h -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o: Box2D/Dynamics/Joints/b2GearJoint.h -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o: Box2D/Dynamics/Joints/b2Joint.h -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o: Box2D/Dynamics/Joints/b2MotorJoint.h -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o: Box2D/Dynamics/Joints/b2MouseJoint.h -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o: Box2D/Dynamics/Joints/b2PrismaticJoint.h -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o: Box2D/Dynamics/Joints/b2PulleyJoint.h -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o: Box2D/Dynamics/Joints/b2RevoluteJoint.h -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o: Box2D/Dynamics/Joints/b2RopeJoint.h -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o: Box2D/Dynamics/Joints/b2WeldJoint.h -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o: Box2D/Dynamics/Joints/b2WheelJoint.h -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o: Box2D/Dynamics/b2Body.h -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o: Box2D/Dynamics/b2ContactManager.h -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o: Box2D/Dynamics/b2Fixture.h -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o: Box2D/Dynamics/b2TimeStep.h -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o: Box2D/Dynamics/b2World.h -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o: Box2D/Dynamics/b2WorldCallbacks.h -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o: freeglut/freeglut.h -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o: freeglut/freeglut_ext.h -Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o: freeglut/freeglut_std.h - -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o: Testbed/Framework/Render.h -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o: Testbed/Framework/Test.cpp -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o: Testbed/Framework/Test.h -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o: Box2D/Box2D.h -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o: Box2D/Collision/Shapes/b2ChainShape.h -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o: Box2D/Collision/Shapes/b2CircleShape.h -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o: Box2D/Collision/Shapes/b2EdgeShape.h -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o: Box2D/Collision/Shapes/b2PolygonShape.h -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o: Box2D/Collision/Shapes/b2Shape.h -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o: Box2D/Collision/b2BroadPhase.h -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o: Box2D/Collision/b2Collision.h -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o: Box2D/Collision/b2Distance.h -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o: Box2D/Collision/b2DynamicTree.h -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o: Box2D/Collision/b2TimeOfImpact.h -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o: Box2D/Common/b2BlockAllocator.h -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o: Box2D/Common/b2Draw.h -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o: Box2D/Common/b2GrowableStack.h -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o: Box2D/Common/b2Math.h -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o: Box2D/Common/b2Settings.h -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o: Box2D/Common/b2StackAllocator.h -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o: Box2D/Common/b2Timer.h -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o: Box2D/Dynamics/Contacts/b2Contact.h -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o: Box2D/Dynamics/Joints/b2DistanceJoint.h -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o: Box2D/Dynamics/Joints/b2FrictionJoint.h -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o: Box2D/Dynamics/Joints/b2GearJoint.h -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o: Box2D/Dynamics/Joints/b2Joint.h -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o: Box2D/Dynamics/Joints/b2MotorJoint.h -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o: Box2D/Dynamics/Joints/b2MouseJoint.h -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o: Box2D/Dynamics/Joints/b2PrismaticJoint.h -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o: Box2D/Dynamics/Joints/b2PulleyJoint.h -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o: Box2D/Dynamics/Joints/b2RevoluteJoint.h -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o: Box2D/Dynamics/Joints/b2RopeJoint.h -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o: Box2D/Dynamics/Joints/b2WeldJoint.h -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o: Box2D/Dynamics/Joints/b2WheelJoint.h -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o: Box2D/Dynamics/b2Body.h -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o: Box2D/Dynamics/b2ContactManager.h -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o: Box2D/Dynamics/b2Fixture.h -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o: Box2D/Dynamics/b2TimeStep.h -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o: Box2D/Dynamics/b2World.h -Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o: Box2D/Dynamics/b2WorldCallbacks.h - -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Framework/Render.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Framework/Test.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/AddPair.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/ApplyForce.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/BodyTypes.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/Breakable.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/Bridge.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/BulletTest.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/Cantilever.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/Car.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/Chain.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/CharacterCollision.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/CollisionFiltering.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/CollisionProcessing.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/CompoundShapes.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/Confined.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/ContinuousTest.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/ConvexHull.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/ConveyorBelt.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/DistanceTest.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/Dominos.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/DumpShell.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/DynamicTreeTest.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/EdgeShapes.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/EdgeTest.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/Gears.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/Mobile.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/MobileBalanced.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/MotorJoint.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/OneSidedPlatform.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/Pinball.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/PolyCollision.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/PolyShapes.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/Prismatic.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/Pulleys.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/Pyramid.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/RayCast.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/Revolute.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/RopeJoint.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/SensorTest.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/ShapeEditing.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/SliderCrank.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/SphereStack.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/TestEntries.cpp -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/TheoJansen.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/Tiles.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/TimeOfImpact.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/Tumbler.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/VaryingFriction.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/VaryingRestitution.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/VerticalStack.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Testbed/Tests/Web.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Box2D/Box2D.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Box2D/Collision/Shapes/b2ChainShape.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Box2D/Collision/Shapes/b2CircleShape.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Box2D/Collision/Shapes/b2EdgeShape.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Box2D/Collision/Shapes/b2PolygonShape.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Box2D/Collision/Shapes/b2Shape.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Box2D/Collision/b2BroadPhase.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Box2D/Collision/b2Collision.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Box2D/Collision/b2Distance.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Box2D/Collision/b2DynamicTree.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Box2D/Collision/b2TimeOfImpact.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Box2D/Common/b2BlockAllocator.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Box2D/Common/b2Draw.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Box2D/Common/b2GrowableStack.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Box2D/Common/b2Math.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Box2D/Common/b2Settings.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Box2D/Common/b2StackAllocator.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Box2D/Common/b2Timer.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Box2D/Dynamics/Contacts/b2Contact.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Box2D/Dynamics/Joints/b2DistanceJoint.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Box2D/Dynamics/Joints/b2FrictionJoint.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Box2D/Dynamics/Joints/b2GearJoint.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Box2D/Dynamics/Joints/b2Joint.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Box2D/Dynamics/Joints/b2MotorJoint.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Box2D/Dynamics/Joints/b2MouseJoint.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Box2D/Dynamics/Joints/b2PrismaticJoint.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Box2D/Dynamics/Joints/b2PulleyJoint.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Box2D/Dynamics/Joints/b2RevoluteJoint.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Box2D/Dynamics/Joints/b2RopeJoint.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Box2D/Dynamics/Joints/b2WeldJoint.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Box2D/Dynamics/Joints/b2WheelJoint.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Box2D/Dynamics/b2Body.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Box2D/Dynamics/b2ContactManager.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Box2D/Dynamics/b2Fixture.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Box2D/Dynamics/b2TimeStep.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Box2D/Dynamics/b2World.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: Box2D/Dynamics/b2WorldCallbacks.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: freeglut/freeglut.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: freeglut/freeglut_ext.h -Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o: freeglut/freeglut_std.h - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir/flags.make b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir/flags.make deleted file mode 100644 index 4c04cee..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir/flags.make +++ /dev/null @@ -1,8 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 2.8 - -# compile CXX with /usr/bin/c++ -CXX_FLAGS = -I/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D - -CXX_DEFINES = -DFREEGLUT_EXPORTS -DFREEGLUT_STATIC -D_CRT_SECURE_NO_WARNINGS - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir/link.txt b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir/link.txt deleted file mode 100644 index 22081a4..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir/link.txt +++ /dev/null @@ -1 +0,0 @@ -/usr/bin/c++ CMakeFiles/Testbed.dir/Framework/Main.cpp.o CMakeFiles/Testbed.dir/Framework/Render.cpp.o CMakeFiles/Testbed.dir/Framework/Test.cpp.o CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o -o Testbed -rdynamic ../Box2D/libBox2D.a ../freeglut/libfreeglut_static.a ../glui/libglui.a -lGLU -lGL -lSM -lICE -lX11 -lXext diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir/progress.make b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir/progress.make deleted file mode 100644 index 451fb99..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/Testbed.dir/progress.make +++ /dev/null @@ -1,5 +0,0 @@ -CMAKE_PROGRESS_1 = 44 -CMAKE_PROGRESS_2 = 45 -CMAKE_PROGRESS_3 = 46 -CMAKE_PROGRESS_4 = 47 - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/progress.marks b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/progress.marks deleted file mode 100644 index 3ad5abd..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/progress.marks +++ /dev/null @@ -1 +0,0 @@ -99 diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeLists.txt b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeLists.txt deleted file mode 100644 index b030a48..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeLists.txt +++ /dev/null @@ -1,92 +0,0 @@ -# Some flags for Freeglut and GLUI. -add_definitions( -DFREEGLUT_EXPORTS -DFREEGLUT_STATIC -D_CRT_SECURE_NO_WARNINGS ) - -# Define the framework files. -set(Testbed_Framework_SRCS - Framework/Main.cpp - Framework/Render.cpp - Framework/Render.h - Framework/Test.cpp - Framework/Test.h -) - -#define the test files. -set(Testbed_Tests_SRCS - Tests/TestEntries.cpp - Tests/AddPair.h - Tests/ApplyForce.h - Tests/BodyTypes.h - Tests/Breakable.h - Tests/Bridge.h - Tests/BulletTest.h - Tests/Cantilever.h - Tests/Car.h - Tests/Chain.h - Tests/CharacterCollision.h - Tests/CollisionFiltering.h - Tests/CollisionProcessing.h - Tests/CompoundShapes.h - Tests/Confined.h - Tests/ContinuousTest.h - Tests/DistanceTest.h - Tests/Dominos.h - Tests/DumpShell.h - Tests/DynamicTreeTest.h - Tests/EdgeShapes.h - Tests/EdgeTest.h - Tests/Gears.h - Tests/OneSidedPlatform.h - Tests/Pinball.h - Tests/PolyCollision.h - Tests/PolyShapes.h - Tests/Prismatic.h - Tests/Pulleys.h - Tests/Pyramid.h - Tests/RayCast.h - Tests/Revolute.h - Tests/Rope.h - Tests/RopeJoint.h - Tests/SensorTest.h - Tests/ShapeEditing.h - Tests/SliderCrank.h - Tests/SphereStack.h - Tests/TheoJansen.h - Tests/Tiles.h - Tests/TimeOfImpact.h - Tests/VaryingFriction.h - Tests/VaryingRestitution.h - Tests/VerticalStack.h - Tests/Web.h -) - -# These are used to create visual studio folders. -source_group(Framework FILES ${Testbed_Framework_SRCS}) -source_group(Tests FILES ${Testbed_Tests_SRCS}) - -include_directories ( - ${OPENGL_INCLUDE_DIR} - ${Box2D_SOURCE_DIR} -) - -if(APPLE) - # We are not using the Apple's framework version, but X11's - include_directories( /usr/X11/include ) - link_directories( /usr/X11/lib ) - set (OPENGL_LIBRARIES GL GLU GLUT X11) -elseif(WIN32) - set (ADDITIONAL_LIBRARIES winmm) -endif(APPLE) - -add_executable(Testbed - ${Testbed_Framework_SRCS} - ${Testbed_Tests_SRCS} -) - -target_link_libraries ( - Testbed - Box2D - freeglut_static - glui - ${ADDITIONAL_LIBRARIES} - ${OPENGL_LIBRARIES} -) diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Main.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Main.cpp deleted file mode 100644 index 89d7f7d..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Main.cpp +++ /dev/null @@ -1,480 +0,0 @@ -/* -* Copyright (c) 2006-2007 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include "Render.h" -#include "Test.h" -#include "glui/glui.h" - -#include - -namespace -{ - int32 testIndex = 0; - int32 testSelection = 0; - int32 testCount = 0; - TestEntry* entry; - Test* test; - Settings settings; - int32 width = 640; - int32 height = 480; - int32 framePeriod = 16; - int32 mainWindow; - float settingsHz = 60.0; - GLUI *glui; - float32 viewZoom = 1.0f; - int tx, ty, tw, th; - bool rMouseDown; - b2Vec2 lastp; -} - -static void Resize(int32 w, int32 h) -{ - width = w; - height = h; - - GLUI_Master.get_viewport_area(&tx, &ty, &tw, &th); - glViewport(tx, ty, tw, th); - - glMatrixMode(GL_PROJECTION); - glLoadIdentity(); - float32 ratio = float32(tw) / float32(th); - - b2Vec2 extents(ratio * 25.0f, 25.0f); - extents *= viewZoom; - - b2Vec2 lower = settings.viewCenter - extents; - b2Vec2 upper = settings.viewCenter + extents; - - // L/R/B/T - gluOrtho2D(lower.x, upper.x, lower.y, upper.y); -} - -static b2Vec2 ConvertScreenToWorld(int32 x, int32 y) -{ - float32 u = x / float32(tw); - float32 v = (th - y) / float32(th); - - float32 ratio = float32(tw) / float32(th); - b2Vec2 extents(ratio * 25.0f, 25.0f); - extents *= viewZoom; - - b2Vec2 lower = settings.viewCenter - extents; - b2Vec2 upper = settings.viewCenter + extents; - - b2Vec2 p; - p.x = (1.0f - u) * lower.x + u * upper.x; - p.y = (1.0f - v) * lower.y + v * upper.y; - return p; -} - -// This is used to control the frame rate (60Hz). -static void Timer(int) -{ - glutSetWindow(mainWindow); - glutPostRedisplay(); - glutTimerFunc(framePeriod, Timer, 0); -} - -static void SimulationLoop() -{ - glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); - - glMatrixMode(GL_MODELVIEW); - glLoadIdentity(); - - b2Vec2 oldCenter = settings.viewCenter; - settings.hz = settingsHz; - test->Step(&settings); - if (oldCenter.x != settings.viewCenter.x || oldCenter.y != settings.viewCenter.y) - { - Resize(width, height); - } - - test->DrawTitle(entry->name); - - glutSwapBuffers(); - - if (testSelection != testIndex) - { - testIndex = testSelection; - delete test; - entry = g_testEntries + testIndex; - test = entry->createFcn(); - viewZoom = 1.0f; - settings.viewCenter.Set(0.0f, 20.0f); - Resize(width, height); - } -} - -static void Keyboard(unsigned char key, int x, int y) -{ - B2_NOT_USED(x); - B2_NOT_USED(y); - - switch (key) - { - case 27: -#ifndef __APPLE__ - // freeglut specific function - glutLeaveMainLoop(); -#endif - exit(0); - break; - - // Press 'z' to zoom out. - case 'z': - viewZoom = b2Min(1.1f * viewZoom, 20.0f); - Resize(width, height); - break; - - // Press 'x' to zoom in. - case 'x': - viewZoom = b2Max(0.9f * viewZoom, 0.02f); - Resize(width, height); - break; - - // Press 'r' to reset. - case 'r': - delete test; - test = entry->createFcn(); - break; - - // Press space to launch a bomb. - case ' ': - if (test) - { - test->LaunchBomb(); - } - break; - - case 'p': - settings.pause = !settings.pause; - break; - - // Press [ to prev test. - case '[': - --testSelection; - if (testSelection < 0) - { - testSelection = testCount - 1; - } - glui->sync_live(); - break; - - // Press ] to next test. - case ']': - ++testSelection; - if (testSelection == testCount) - { - testSelection = 0; - } - glui->sync_live(); - break; - - default: - if (test) - { - test->Keyboard(key); - } - } -} - -static void KeyboardSpecial(int key, int x, int y) -{ - B2_NOT_USED(x); - B2_NOT_USED(y); - - int mod = glutGetModifiers(); - - switch (key) - { - // Press left to pan left. - case GLUT_KEY_LEFT: - if (mod == GLUT_ACTIVE_CTRL) - { - b2Vec2 newOrigin(2.0f, 0.0f); - test->ShiftOrigin(newOrigin); - } - else - { - settings.viewCenter.x -= 0.5f; - Resize(width, height); - } - break; - - // Press right to pan right. - case GLUT_KEY_RIGHT: - if (mod == GLUT_ACTIVE_CTRL) - { - b2Vec2 newOrigin(-2.0f, 0.0f); - test->ShiftOrigin(newOrigin); - } - else - { - settings.viewCenter.x += 0.5f; - Resize(width, height); - } - break; - - // Press down to pan down. - case GLUT_KEY_DOWN: - if (mod == GLUT_ACTIVE_CTRL) - { - b2Vec2 newOrigin(0.0f, 2.0f); - test->ShiftOrigin(newOrigin); - } - else - { - settings.viewCenter.y -= 0.5f; - Resize(width, height); - } - break; - - // Press up to pan up. - case GLUT_KEY_UP: - if (mod == GLUT_ACTIVE_CTRL) - { - b2Vec2 newOrigin(0.0f, -2.0f); - test->ShiftOrigin(newOrigin); - } - else - { - settings.viewCenter.y += 0.5f; - Resize(width, height); - } - break; - - // Press home to reset the view. - case GLUT_KEY_HOME: - viewZoom = 1.0f; - settings.viewCenter.Set(0.0f, 20.0f); - Resize(width, height); - break; - } -} - -static void KeyboardUp(unsigned char key, int x, int y) -{ - B2_NOT_USED(x); - B2_NOT_USED(y); - - if (test) - { - test->KeyboardUp(key); - } -} - -static void Mouse(int32 button, int32 state, int32 x, int32 y) -{ - // Use the mouse to move things around. - if (button == GLUT_LEFT_BUTTON) - { - int mod = glutGetModifiers(); - b2Vec2 p = ConvertScreenToWorld(x, y); - if (state == GLUT_DOWN) - { - b2Vec2 p = ConvertScreenToWorld(x, y); - if (mod == GLUT_ACTIVE_SHIFT) - { - test->ShiftMouseDown(p); - } - else - { - test->MouseDown(p); - } - } - - if (state == GLUT_UP) - { - test->MouseUp(p); - } - } - else if (button == GLUT_RIGHT_BUTTON) - { - if (state == GLUT_DOWN) - { - lastp = ConvertScreenToWorld(x, y); - rMouseDown = true; - } - - if (state == GLUT_UP) - { - rMouseDown = false; - } - } -} - -static void MouseMotion(int32 x, int32 y) -{ - b2Vec2 p = ConvertScreenToWorld(x, y); - test->MouseMove(p); - - if (rMouseDown) - { - b2Vec2 diff = p - lastp; - settings.viewCenter.x -= diff.x; - settings.viewCenter.y -= diff.y; - Resize(width, height); - lastp = ConvertScreenToWorld(x, y); - } -} - -#ifdef FREEGLUT -static void MouseWheel(int wheel, int direction, int x, int y) -{ - B2_NOT_USED(wheel); - B2_NOT_USED(x); - B2_NOT_USED(y); - if (direction > 0) - { - viewZoom /= 1.1f; - } - else - { - viewZoom *= 1.1f; - } - Resize(width, height); -} -#endif - -static void Restart(int) -{ - delete test; - entry = g_testEntries + testIndex; - test = entry->createFcn(); - Resize(width, height); -} - -static void Pause(int) -{ - settings.pause = !settings.pause; -} - -static void Exit(int code) -{ - // TODO: freeglut is not building on OSX -#ifdef FREEGLUT - glutLeaveMainLoop(); -#endif - exit(code); -} - -static void SingleStep(int) -{ - settings.pause = 1; - settings.singleStep = 1; -} - -int main(int argc, char** argv) -{ - testCount = 0; - while (g_testEntries[testCount].createFcn != NULL) - { - ++testCount; - } - - testIndex = b2Clamp(testIndex, 0, testCount-1); - testSelection = testIndex; - - entry = g_testEntries + testIndex; - test = entry->createFcn(); - - glutInit(&argc, argv); - glutInitDisplayMode(GLUT_RGBA | GLUT_DOUBLE); - glutInitWindowSize(width, height); - char title[32]; - sprintf(title, "Box2D Version %d.%d.%d", b2_version.major, b2_version.minor, b2_version.revision); - mainWindow = glutCreateWindow(title); - //glutSetOption (GLUT_ACTION_ON_WINDOW_CLOSE, GLUT_ACTION_GLUTMAINLOOP_RETURNS); - - glutDisplayFunc(SimulationLoop); - GLUI_Master.set_glutReshapeFunc(Resize); - GLUI_Master.set_glutKeyboardFunc(Keyboard); - GLUI_Master.set_glutSpecialFunc(KeyboardSpecial); - GLUI_Master.set_glutMouseFunc(Mouse); -#ifdef FREEGLUT - glutMouseWheelFunc(MouseWheel); -#endif - glutMotionFunc(MouseMotion); - - glutKeyboardUpFunc(KeyboardUp); - - glui = GLUI_Master.create_glui_subwindow( mainWindow, - GLUI_SUBWINDOW_RIGHT ); - - glui->add_statictext("Tests"); - GLUI_Listbox* testList = - glui->add_listbox("", &testSelection); - - glui->add_separator(); - - GLUI_Spinner* velocityIterationSpinner = - glui->add_spinner("Vel Iters", GLUI_SPINNER_INT, &settings.velocityIterations); - velocityIterationSpinner->set_int_limits(1, 500); - - GLUI_Spinner* positionIterationSpinner = - glui->add_spinner("Pos Iters", GLUI_SPINNER_INT, &settings.positionIterations); - positionIterationSpinner->set_int_limits(0, 100); - - GLUI_Spinner* hertzSpinner = - glui->add_spinner("Hertz", GLUI_SPINNER_FLOAT, &settingsHz); - - hertzSpinner->set_float_limits(5.0f, 200.0f); - - glui->add_checkbox("Sleep", &settings.enableSleep); - glui->add_checkbox("Warm Starting", &settings.enableWarmStarting); - glui->add_checkbox("Time of Impact", &settings.enableContinuous); - glui->add_checkbox("Sub-Stepping", &settings.enableSubStepping); - - //glui->add_separator(); - - GLUI_Panel* drawPanel = glui->add_panel("Draw"); - glui->add_checkbox_to_panel(drawPanel, "Shapes", &settings.drawShapes); - glui->add_checkbox_to_panel(drawPanel, "Joints", &settings.drawJoints); - glui->add_checkbox_to_panel(drawPanel, "AABBs", &settings.drawAABBs); - glui->add_checkbox_to_panel(drawPanel, "Contact Points", &settings.drawContactPoints); - glui->add_checkbox_to_panel(drawPanel, "Contact Normals", &settings.drawContactNormals); - glui->add_checkbox_to_panel(drawPanel, "Contact Impulses", &settings.drawContactImpulse); - glui->add_checkbox_to_panel(drawPanel, "Friction Impulses", &settings.drawFrictionImpulse); - glui->add_checkbox_to_panel(drawPanel, "Center of Masses", &settings.drawCOMs); - glui->add_checkbox_to_panel(drawPanel, "Statistics", &settings.drawStats); - glui->add_checkbox_to_panel(drawPanel, "Profile", &settings.drawProfile); - - int32 testCount = 0; - TestEntry* e = g_testEntries; - while (e->createFcn) - { - testList->add_item(testCount, e->name); - ++testCount; - ++e; - } - - glui->add_button("Pause", 0, Pause); - glui->add_button("Single Step", 0, SingleStep); - glui->add_button("Restart", 0, Restart); - - glui->add_button("Quit", 0,(GLUI_Update_CB)Exit); - glui->set_main_gfx_window( mainWindow ); - - // Use a timer to control the frame rate. - glutTimerFunc(framePeriod, Timer, 0); - - glutMainLoop(); - - return 0; -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Render.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Render.cpp deleted file mode 100644 index 8fbdebd..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Render.cpp +++ /dev/null @@ -1,217 +0,0 @@ -/* -* Copyright (c) 2006-2007 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include "Render.h" - -#ifdef __APPLE__ - #include -#else - #include "freeglut/freeglut.h" -#endif - -#include -#include - -void DebugDraw::DrawPolygon(const b2Vec2* vertices, int32 vertexCount, const b2Color& color) -{ - glColor3f(color.r, color.g, color.b); - glBegin(GL_LINE_LOOP); - for (int32 i = 0; i < vertexCount; ++i) - { - glVertex2f(vertices[i].x, vertices[i].y); - } - glEnd(); -} - -void DebugDraw::DrawSolidPolygon(const b2Vec2* vertices, int32 vertexCount, const b2Color& color) -{ - glEnable(GL_BLEND); - glBlendFunc (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); - glColor4f(0.5f * color.r, 0.5f * color.g, 0.5f * color.b, 0.5f); - glBegin(GL_TRIANGLE_FAN); - for (int32 i = 0; i < vertexCount; ++i) - { - glVertex2f(vertices[i].x, vertices[i].y); - } - glEnd(); - glDisable(GL_BLEND); - - glColor4f(color.r, color.g, color.b, 1.0f); - glBegin(GL_LINE_LOOP); - for (int32 i = 0; i < vertexCount; ++i) - { - glVertex2f(vertices[i].x, vertices[i].y); - } - glEnd(); -} - -void DebugDraw::DrawCircle(const b2Vec2& center, float32 radius, const b2Color& color) -{ - const float32 k_segments = 16.0f; - const float32 k_increment = 2.0f * b2_pi / k_segments; - float32 theta = 0.0f; - glColor3f(color.r, color.g, color.b); - glBegin(GL_LINE_LOOP); - for (int32 i = 0; i < k_segments; ++i) - { - b2Vec2 v = center + radius * b2Vec2(cosf(theta), sinf(theta)); - glVertex2f(v.x, v.y); - theta += k_increment; - } - glEnd(); -} - -void DebugDraw::DrawSolidCircle(const b2Vec2& center, float32 radius, const b2Vec2& axis, const b2Color& color) -{ - const float32 k_segments = 16.0f; - const float32 k_increment = 2.0f * b2_pi / k_segments; - float32 theta = 0.0f; - glEnable(GL_BLEND); - glBlendFunc (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); - glColor4f(0.5f * color.r, 0.5f * color.g, 0.5f * color.b, 0.5f); - glBegin(GL_TRIANGLE_FAN); - for (int32 i = 0; i < k_segments; ++i) - { - b2Vec2 v = center + radius * b2Vec2(cosf(theta), sinf(theta)); - glVertex2f(v.x, v.y); - theta += k_increment; - } - glEnd(); - glDisable(GL_BLEND); - - theta = 0.0f; - glColor4f(color.r, color.g, color.b, 1.0f); - glBegin(GL_LINE_LOOP); - for (int32 i = 0; i < k_segments; ++i) - { - b2Vec2 v = center + radius * b2Vec2(cosf(theta), sinf(theta)); - glVertex2f(v.x, v.y); - theta += k_increment; - } - glEnd(); - - b2Vec2 p = center + radius * axis; - glBegin(GL_LINES); - glVertex2f(center.x, center.y); - glVertex2f(p.x, p.y); - glEnd(); -} - -void DebugDraw::DrawSegment(const b2Vec2& p1, const b2Vec2& p2, const b2Color& color) -{ - glColor3f(color.r, color.g, color.b); - glBegin(GL_LINES); - glVertex2f(p1.x, p1.y); - glVertex2f(p2.x, p2.y); - glEnd(); -} - -void DebugDraw::DrawTransform(const b2Transform& xf) -{ - b2Vec2 p1 = xf.p, p2; - const float32 k_axisScale = 0.4f; - glBegin(GL_LINES); - - glColor3f(1.0f, 0.0f, 0.0f); - glVertex2f(p1.x, p1.y); - p2 = p1 + k_axisScale * xf.q.GetXAxis(); - glVertex2f(p2.x, p2.y); - - glColor3f(0.0f, 1.0f, 0.0f); - glVertex2f(p1.x, p1.y); - p2 = p1 + k_axisScale * xf.q.GetYAxis(); - glVertex2f(p2.x, p2.y); - - glEnd(); -} - -void DebugDraw::DrawPoint(const b2Vec2& p, float32 size, const b2Color& color) -{ - glPointSize(size); - glBegin(GL_POINTS); - glColor3f(color.r, color.g, color.b); - glVertex2f(p.x, p.y); - glEnd(); - glPointSize(1.0f); -} - -void DebugDraw::DrawString(int x, int y, const char *string, ...) -{ - char buffer[128]; - - va_list arg; - va_start(arg, string); - vsprintf(buffer, string, arg); - va_end(arg); - - glMatrixMode(GL_PROJECTION); - glPushMatrix(); - glLoadIdentity(); - int w = glutGet(GLUT_WINDOW_WIDTH); - int h = glutGet(GLUT_WINDOW_HEIGHT); - gluOrtho2D(0, w, h, 0); - glMatrixMode(GL_MODELVIEW); - glPushMatrix(); - glLoadIdentity(); - - glColor3f(0.9f, 0.6f, 0.6f); - glRasterPos2i(x, y); - int32 length = (int32)strlen(buffer); - for (int32 i = 0; i < length; ++i) - { - glutBitmapCharacter(GLUT_BITMAP_HELVETICA_18, buffer[i]); - //glutBitmapCharacter(GLUT_BITMAP_9_BY_15, buffer[i]); - } - - glPopMatrix(); - glMatrixMode(GL_PROJECTION); - glPopMatrix(); - glMatrixMode(GL_MODELVIEW); -} - -void DebugDraw::DrawString(const b2Vec2& p, const char *string, ...) -{ - char buffer[128]; - - va_list arg; - va_start(arg, string); - vsprintf(buffer, string, arg); - va_end(arg); - - glColor3f(0.5f, 0.9f, 0.5f); - glRasterPos2f(p.x, p.y); - - int32 length = (int32)strlen(buffer); - for (int32 i = 0; i < length; ++i) - { - glutBitmapCharacter(GLUT_BITMAP_8_BY_13, buffer[i]); - } - - glPopMatrix(); -} - -void DebugDraw::DrawAABB(b2AABB* aabb, const b2Color& c) -{ - glColor3f(c.r, c.g, c.b); - glBegin(GL_LINE_LOOP); - glVertex2f(aabb->lowerBound.x, aabb->lowerBound.y); - glVertex2f(aabb->upperBound.x, aabb->lowerBound.y); - glVertex2f(aabb->upperBound.x, aabb->upperBound.y); - glVertex2f(aabb->lowerBound.x, aabb->upperBound.y); - glEnd(); -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Render.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Render.h deleted file mode 100644 index 2908d3e..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Render.h +++ /dev/null @@ -1,53 +0,0 @@ -/* -* Copyright (c) 2006-2007 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef RENDER_H -#define RENDER_H - -#include - -struct b2AABB; - -// This class implements debug drawing callbacks that are invoked -// inside b2World::Step. -class DebugDraw : public b2Draw -{ -public: - void DrawPolygon(const b2Vec2* vertices, int32 vertexCount, const b2Color& color); - - void DrawSolidPolygon(const b2Vec2* vertices, int32 vertexCount, const b2Color& color); - - void DrawCircle(const b2Vec2& center, float32 radius, const b2Color& color); - - void DrawSolidCircle(const b2Vec2& center, float32 radius, const b2Vec2& axis, const b2Color& color); - - void DrawSegment(const b2Vec2& p1, const b2Vec2& p2, const b2Color& color); - - void DrawTransform(const b2Transform& xf); - - void DrawPoint(const b2Vec2& p, float32 size, const b2Color& color); - - void DrawString(int x, int y, const char* string, ...); - - void DrawString(const b2Vec2& p, const char* string, ...); - - void DrawAABB(b2AABB* aabb, const b2Color& color); -}; - - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Test.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Test.cpp deleted file mode 100644 index f284de5..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Test.cpp +++ /dev/null @@ -1,455 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include "Test.h" -#include - -void DestructionListener::SayGoodbye(b2Joint* joint) -{ - if (test->m_mouseJoint == joint) - { - test->m_mouseJoint = NULL; - } - else - { - test->JointDestroyed(joint); - } -} - -Test::Test() -{ - b2Vec2 gravity; - gravity.Set(0.0f, -10.0f); - m_world = new b2World(gravity); - m_bomb = NULL; - m_textLine = 30; - m_mouseJoint = NULL; - m_pointCount = 0; - - m_destructionListener.test = this; - m_world->SetDestructionListener(&m_destructionListener); - m_world->SetContactListener(this); - m_world->SetDebugDraw(&m_debugDraw); - - m_bombSpawning = false; - - m_stepCount = 0; - - b2BodyDef bodyDef; - m_groundBody = m_world->CreateBody(&bodyDef); - - memset(&m_maxProfile, 0, sizeof(b2Profile)); - memset(&m_totalProfile, 0, sizeof(b2Profile)); -} - -Test::~Test() -{ - // By deleting the world, we delete the bomb, mouse joint, etc. - delete m_world; - m_world = NULL; -} - -void Test::PreSolve(b2Contact* contact, const b2Manifold* oldManifold) -{ - const b2Manifold* manifold = contact->GetManifold(); - - if (manifold->pointCount == 0) - { - return; - } - - b2Fixture* fixtureA = contact->GetFixtureA(); - b2Fixture* fixtureB = contact->GetFixtureB(); - - b2PointState state1[b2_maxManifoldPoints], state2[b2_maxManifoldPoints]; - b2GetPointStates(state1, state2, oldManifold, manifold); - - b2WorldManifold worldManifold; - contact->GetWorldManifold(&worldManifold); - - for (int32 i = 0; i < manifold->pointCount && m_pointCount < k_maxContactPoints; ++i) - { - ContactPoint* cp = m_points + m_pointCount; - cp->fixtureA = fixtureA; - cp->fixtureB = fixtureB; - cp->position = worldManifold.points[i]; - cp->normal = worldManifold.normal; - cp->state = state2[i]; - cp->normalImpulse = manifold->points[i].normalImpulse; - cp->tangentImpulse = manifold->points[i].tangentImpulse; - cp->separation = worldManifold.separations[i]; - ++m_pointCount; - } -} - -void Test::DrawTitle(const char *string) -{ - m_debugDraw.DrawString(5, DRAW_STRING_NEW_LINE, string); - m_textLine = 2 * DRAW_STRING_NEW_LINE; -} - -class QueryCallback : public b2QueryCallback -{ -public: - QueryCallback(const b2Vec2& point) - { - m_point = point; - m_fixture = NULL; - } - - bool ReportFixture(b2Fixture* fixture) - { - b2Body* body = fixture->GetBody(); - if (body->GetType() == b2_dynamicBody) - { - bool inside = fixture->TestPoint(m_point); - if (inside) - { - m_fixture = fixture; - - // We are done, terminate the query. - return false; - } - } - - // Continue the query. - return true; - } - - b2Vec2 m_point; - b2Fixture* m_fixture; -}; - -void Test::MouseDown(const b2Vec2& p) -{ - m_mouseWorld = p; - - if (m_mouseJoint != NULL) - { - return; - } - - // Make a small box. - b2AABB aabb; - b2Vec2 d; - d.Set(0.001f, 0.001f); - aabb.lowerBound = p - d; - aabb.upperBound = p + d; - - // Query the world for overlapping shapes. - QueryCallback callback(p); - m_world->QueryAABB(&callback, aabb); - - if (callback.m_fixture) - { - b2Body* body = callback.m_fixture->GetBody(); - b2MouseJointDef md; - md.bodyA = m_groundBody; - md.bodyB = body; - md.target = p; - md.maxForce = 1000.0f * body->GetMass(); - m_mouseJoint = (b2MouseJoint*)m_world->CreateJoint(&md); - body->SetAwake(true); - } -} - -void Test::SpawnBomb(const b2Vec2& worldPt) -{ - m_bombSpawnPoint = worldPt; - m_bombSpawning = true; -} - -void Test::CompleteBombSpawn(const b2Vec2& p) -{ - if (m_bombSpawning == false) - { - return; - } - - const float multiplier = 30.0f; - b2Vec2 vel = m_bombSpawnPoint - p; - vel *= multiplier; - LaunchBomb(m_bombSpawnPoint,vel); - m_bombSpawning = false; -} - -void Test::ShiftMouseDown(const b2Vec2& p) -{ - m_mouseWorld = p; - - if (m_mouseJoint != NULL) - { - return; - } - - SpawnBomb(p); -} - -void Test::MouseUp(const b2Vec2& p) -{ - if (m_mouseJoint) - { - m_world->DestroyJoint(m_mouseJoint); - m_mouseJoint = NULL; - } - - if (m_bombSpawning) - { - CompleteBombSpawn(p); - } -} - -void Test::MouseMove(const b2Vec2& p) -{ - m_mouseWorld = p; - - if (m_mouseJoint) - { - m_mouseJoint->SetTarget(p); - } -} - -void Test::LaunchBomb() -{ - b2Vec2 p(RandomFloat(-15.0f, 15.0f), 30.0f); - b2Vec2 v = -5.0f * p; - LaunchBomb(p, v); -} - -void Test::LaunchBomb(const b2Vec2& position, const b2Vec2& velocity) -{ - if (m_bomb) - { - m_world->DestroyBody(m_bomb); - m_bomb = NULL; - } - - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position = position; - bd.bullet = true; - m_bomb = m_world->CreateBody(&bd); - m_bomb->SetLinearVelocity(velocity); - - b2CircleShape circle; - circle.m_radius = 0.3f; - - b2FixtureDef fd; - fd.shape = &circle; - fd.density = 20.0f; - fd.restitution = 0.0f; - - b2Vec2 minV = position - b2Vec2(0.3f,0.3f); - b2Vec2 maxV = position + b2Vec2(0.3f,0.3f); - - b2AABB aabb; - aabb.lowerBound = minV; - aabb.upperBound = maxV; - - m_bomb->CreateFixture(&fd); -} - -void Test::Step(Settings* settings) -{ - float32 timeStep = settings->hz > 0.0f ? 1.0f / settings->hz : float32(0.0f); - - if (settings->pause) - { - if (settings->singleStep) - { - settings->singleStep = 0; - } - else - { - timeStep = 0.0f; - } - - m_debugDraw.DrawString(5, m_textLine, "****PAUSED****"); - m_textLine += DRAW_STRING_NEW_LINE; - } - - uint32 flags = 0; - flags += settings->drawShapes * b2Draw::e_shapeBit; - flags += settings->drawJoints * b2Draw::e_jointBit; - flags += settings->drawAABBs * b2Draw::e_aabbBit; - flags += settings->drawCOMs * b2Draw::e_centerOfMassBit; - m_debugDraw.SetFlags(flags); - - m_world->SetAllowSleeping(settings->enableSleep > 0); - m_world->SetWarmStarting(settings->enableWarmStarting > 0); - m_world->SetContinuousPhysics(settings->enableContinuous > 0); - m_world->SetSubStepping(settings->enableSubStepping > 0); - - m_pointCount = 0; - - m_world->Step(timeStep, settings->velocityIterations, settings->positionIterations); - - m_world->DrawDebugData(); - - if (timeStep > 0.0f) - { - ++m_stepCount; - } - - if (settings->drawStats) - { - int32 bodyCount = m_world->GetBodyCount(); - int32 contactCount = m_world->GetContactCount(); - int32 jointCount = m_world->GetJointCount(); - m_debugDraw.DrawString(5, m_textLine, "bodies/contacts/joints = %d/%d/%d", bodyCount, contactCount, jointCount); - m_textLine += DRAW_STRING_NEW_LINE; - - int32 proxyCount = m_world->GetProxyCount(); - int32 height = m_world->GetTreeHeight(); - int32 balance = m_world->GetTreeBalance(); - float32 quality = m_world->GetTreeQuality(); - m_debugDraw.DrawString(5, m_textLine, "proxies/height/balance/quality = %d/%d/%d/%g", proxyCount, height, balance, quality); - m_textLine += DRAW_STRING_NEW_LINE; - } - - // Track maximum profile times - { - const b2Profile& p = m_world->GetProfile(); - m_maxProfile.step = b2Max(m_maxProfile.step, p.step); - m_maxProfile.collide = b2Max(m_maxProfile.collide, p.collide); - m_maxProfile.solve = b2Max(m_maxProfile.solve, p.solve); - m_maxProfile.solveInit = b2Max(m_maxProfile.solveInit, p.solveInit); - m_maxProfile.solveVelocity = b2Max(m_maxProfile.solveVelocity, p.solveVelocity); - m_maxProfile.solvePosition = b2Max(m_maxProfile.solvePosition, p.solvePosition); - m_maxProfile.solveTOI = b2Max(m_maxProfile.solveTOI, p.solveTOI); - m_maxProfile.broadphase = b2Max(m_maxProfile.broadphase, p.broadphase); - - m_totalProfile.step += p.step; - m_totalProfile.collide += p.collide; - m_totalProfile.solve += p.solve; - m_totalProfile.solveInit += p.solveInit; - m_totalProfile.solveVelocity += p.solveVelocity; - m_totalProfile.solvePosition += p.solvePosition; - m_totalProfile.solveTOI += p.solveTOI; - m_totalProfile.broadphase += p.broadphase; - } - - if (settings->drawProfile) - { - const b2Profile& p = m_world->GetProfile(); - - b2Profile aveProfile; - memset(&aveProfile, 0, sizeof(b2Profile)); - if (m_stepCount > 0) - { - float32 scale = 1.0f / m_stepCount; - aveProfile.step = scale * m_totalProfile.step; - aveProfile.collide = scale * m_totalProfile.collide; - aveProfile.solve = scale * m_totalProfile.solve; - aveProfile.solveInit = scale * m_totalProfile.solveInit; - aveProfile.solveVelocity = scale * m_totalProfile.solveVelocity; - aveProfile.solvePosition = scale * m_totalProfile.solvePosition; - aveProfile.solveTOI = scale * m_totalProfile.solveTOI; - aveProfile.broadphase = scale * m_totalProfile.broadphase; - } - - m_debugDraw.DrawString(5, m_textLine, "step [ave] (max) = %5.2f [%6.2f] (%6.2f)", p.step, aveProfile.step, m_maxProfile.step); - m_textLine += DRAW_STRING_NEW_LINE; - m_debugDraw.DrawString(5, m_textLine, "collide [ave] (max) = %5.2f [%6.2f] (%6.2f)", p.collide, aveProfile.collide, m_maxProfile.collide); - m_textLine += DRAW_STRING_NEW_LINE; - m_debugDraw.DrawString(5, m_textLine, "solve [ave] (max) = %5.2f [%6.2f] (%6.2f)", p.solve, aveProfile.solve, m_maxProfile.solve); - m_textLine += DRAW_STRING_NEW_LINE; - m_debugDraw.DrawString(5, m_textLine, "solve init [ave] (max) = %5.2f [%6.2f] (%6.2f)", p.solveInit, aveProfile.solveInit, m_maxProfile.solveInit); - m_textLine += DRAW_STRING_NEW_LINE; - m_debugDraw.DrawString(5, m_textLine, "solve velocity [ave] (max) = %5.2f [%6.2f] (%6.2f)", p.solveVelocity, aveProfile.solveVelocity, m_maxProfile.solveVelocity); - m_textLine += DRAW_STRING_NEW_LINE; - m_debugDraw.DrawString(5, m_textLine, "solve position [ave] (max) = %5.2f [%6.2f] (%6.2f)", p.solvePosition, aveProfile.solvePosition, m_maxProfile.solvePosition); - m_textLine += DRAW_STRING_NEW_LINE; - m_debugDraw.DrawString(5, m_textLine, "solveTOI [ave] (max) = %5.2f [%6.2f] (%6.2f)", p.solveTOI, aveProfile.solveTOI, m_maxProfile.solveTOI); - m_textLine += DRAW_STRING_NEW_LINE; - m_debugDraw.DrawString(5, m_textLine, "broad-phase [ave] (max) = %5.2f [%6.2f] (%6.2f)", p.broadphase, aveProfile.broadphase, m_maxProfile.broadphase); - m_textLine += DRAW_STRING_NEW_LINE; - } - - if (m_mouseJoint) - { - b2Vec2 p1 = m_mouseJoint->GetAnchorB(); - b2Vec2 p2 = m_mouseJoint->GetTarget(); - - b2Color c; - c.Set(0.0f, 1.0f, 0.0f); - m_debugDraw.DrawPoint(p1, 4.0f, c); - m_debugDraw.DrawPoint(p2, 4.0f, c); - - c.Set(0.8f, 0.8f, 0.8f); - m_debugDraw.DrawSegment(p1, p2, c); - } - - if (m_bombSpawning) - { - b2Color c; - c.Set(0.0f, 0.0f, 1.0f); - m_debugDraw.DrawPoint(m_bombSpawnPoint, 4.0f, c); - - c.Set(0.8f, 0.8f, 0.8f); - m_debugDraw.DrawSegment(m_mouseWorld, m_bombSpawnPoint, c); - } - - if (settings->drawContactPoints) - { - const float32 k_impulseScale = 0.1f; - const float32 k_axisScale = 0.3f; - - for (int32 i = 0; i < m_pointCount; ++i) - { - ContactPoint* point = m_points + i; - - if (point->state == b2_addState) - { - // Add - m_debugDraw.DrawPoint(point->position, 10.0f, b2Color(0.3f, 0.95f, 0.3f)); - } - else if (point->state == b2_persistState) - { - // Persist - m_debugDraw.DrawPoint(point->position, 5.0f, b2Color(0.3f, 0.3f, 0.95f)); - } - - if (settings->drawContactNormals == 1) - { - b2Vec2 p1 = point->position; - b2Vec2 p2 = p1 + k_axisScale * point->normal; - m_debugDraw.DrawSegment(p1, p2, b2Color(0.9f, 0.9f, 0.9f)); - } - else if (settings->drawContactImpulse == 1) - { - b2Vec2 p1 = point->position; - b2Vec2 p2 = p1 + k_impulseScale * point->normalImpulse * point->normal; - m_debugDraw.DrawSegment(p1, p2, b2Color(0.9f, 0.9f, 0.3f)); - } - - if (settings->drawFrictionImpulse == 1) - { - b2Vec2 tangent = b2Cross(point->normal, 1.0f); - b2Vec2 p1 = point->position; - b2Vec2 p2 = p1 + k_impulseScale * point->tangentImpulse * tangent; - m_debugDraw.DrawSegment(p1, p2, b2Color(0.9f, 0.9f, 0.3f)); - } - } - } -} - -void Test::ShiftOrigin(const b2Vec2& newOrigin) -{ - m_world->ShiftOrigin(newOrigin); -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Test.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Test.h deleted file mode 100644 index 83644d3..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Framework/Test.h +++ /dev/null @@ -1,195 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef TEST_H -#define TEST_H - -#include -#include "Render.h" - -#include - -class Test; -struct Settings; - -typedef Test* TestCreateFcn(); - -#define RAND_LIMIT 32767 -#define DRAW_STRING_NEW_LINE 25 - -/// Random number in range [-1,1] -inline float32 RandomFloat() -{ - float32 r = (float32)(std::rand() & (RAND_LIMIT)); - r /= RAND_LIMIT; - r = 2.0f * r - 1.0f; - return r; -} - -/// Random floating point number in range [lo, hi] -inline float32 RandomFloat(float32 lo, float32 hi) -{ - float32 r = (float32)(std::rand() & (RAND_LIMIT)); - r /= RAND_LIMIT; - r = (hi - lo) * r + lo; - return r; -} - -/// Test settings. Some can be controlled in the GUI. -struct Settings -{ - Settings() - { - viewCenter.Set(0.0f, 20.0f); - hz = 60.0f; - velocityIterations = 8; - positionIterations = 3; - drawShapes = 1; - drawJoints = 1; - drawAABBs = 0; - drawContactPoints = 0; - drawContactNormals = 0; - drawContactImpulse = 0; - drawFrictionImpulse = 0; - drawCOMs = 0; - drawStats = 0; - drawProfile = 0; - enableWarmStarting = 1; - enableContinuous = 1; - enableSubStepping = 0; - enableSleep = 1; - pause = 0; - singleStep = 0; - } - - b2Vec2 viewCenter; - float32 hz; - int32 velocityIterations; - int32 positionIterations; - int32 drawShapes; - int32 drawJoints; - int32 drawAABBs; - int32 drawContactPoints; - int32 drawContactNormals; - int32 drawContactImpulse; - int32 drawFrictionImpulse; - int32 drawCOMs; - int32 drawStats; - int32 drawProfile; - int32 enableWarmStarting; - int32 enableContinuous; - int32 enableSubStepping; - int32 enableSleep; - int32 pause; - int32 singleStep; -}; - -struct TestEntry -{ - const char *name; - TestCreateFcn *createFcn; -}; - -extern TestEntry g_testEntries[]; -// This is called when a joint in the world is implicitly destroyed -// because an attached body is destroyed. This gives us a chance to -// nullify the mouse joint. -class DestructionListener : public b2DestructionListener -{ -public: - void SayGoodbye(b2Fixture* fixture) { B2_NOT_USED(fixture); } - void SayGoodbye(b2Joint* joint); - - Test* test; -}; - -const int32 k_maxContactPoints = 2048; - -struct ContactPoint -{ - b2Fixture* fixtureA; - b2Fixture* fixtureB; - b2Vec2 normal; - b2Vec2 position; - b2PointState state; - float32 normalImpulse; - float32 tangentImpulse; - float32 separation; -}; - -class Test : public b2ContactListener -{ -public: - - Test(); - virtual ~Test(); - - void DrawTitle(const char *string); - virtual void Step(Settings* settings); - virtual void Keyboard(unsigned char key) { B2_NOT_USED(key); } - virtual void KeyboardUp(unsigned char key) { B2_NOT_USED(key); } - void ShiftMouseDown(const b2Vec2& p); - virtual void MouseDown(const b2Vec2& p); - virtual void MouseUp(const b2Vec2& p); - void MouseMove(const b2Vec2& p); - void LaunchBomb(); - void LaunchBomb(const b2Vec2& position, const b2Vec2& velocity); - - void SpawnBomb(const b2Vec2& worldPt); - void CompleteBombSpawn(const b2Vec2& p); - - // Let derived tests know that a joint was destroyed. - virtual void JointDestroyed(b2Joint* joint) { B2_NOT_USED(joint); } - - // Callbacks for derived classes. - virtual void BeginContact(b2Contact* contact) { B2_NOT_USED(contact); } - virtual void EndContact(b2Contact* contact) { B2_NOT_USED(contact); } - virtual void PreSolve(b2Contact* contact, const b2Manifold* oldManifold); - virtual void PostSolve(b2Contact* contact, const b2ContactImpulse* impulse) - { - B2_NOT_USED(contact); - B2_NOT_USED(impulse); - } - - void ShiftOrigin(const b2Vec2& newOrigin); - -protected: - friend class DestructionListener; - friend class BoundaryListener; - friend class ContactListener; - - b2Body* m_groundBody; - b2AABB m_worldAABB; - ContactPoint m_points[k_maxContactPoints]; - int32 m_pointCount; - DestructionListener m_destructionListener; - DebugDraw m_debugDraw; - int32 m_textLine; - b2World* m_world; - b2Body* m_bomb; - b2MouseJoint* m_mouseJoint; - b2Vec2 m_bombSpawnPoint; - bool m_bombSpawning; - b2Vec2 m_mouseWorld; - int32 m_stepCount; - - b2Profile m_maxProfile; - b2Profile m_totalProfile; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Makefile b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Makefile deleted file mode 100644 index a1e4abf..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Makefile +++ /dev/null @@ -1,290 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 2.8 - -# Default target executed when no arguments are given to make. -default_target: all -.PHONY : default_target - -#============================================================================= -# Special targets provided by cmake. - -# Disable implicit rules so canonical targets will work. -.SUFFIXES: - -# Remove some rules from gmake that .SUFFIXES does not remove. -SUFFIXES = - -.SUFFIXES: .hpux_make_needs_suffix_list - -# Suppress display of executed commands. -$(VERBOSE).SILENT: - -# A target that is always out of date. -cmake_force: -.PHONY : cmake_force - -#============================================================================= -# Set environment variables for the build. - -# The shell in which to execute make rules. -SHELL = /bin/sh - -# The CMake executable. -CMAKE_COMMAND = /usr/bin/cmake - -# The command to remove a file. -RM = /usr/bin/cmake -E remove -f - -# Escaping for special characters. -EQUALS = = - -# The top-level source directory on which CMake was run. -CMAKE_SOURCE_DIR = /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D - -# The top-level build directory on which CMake was run. -CMAKE_BINARY_DIR = /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D - -#============================================================================= -# Targets provided globally by CMake. - -# Special rule for the target edit_cache -edit_cache: - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running interactive CMake command-line interface..." - /usr/bin/cmake -i . -.PHONY : edit_cache - -# Special rule for the target edit_cache -edit_cache/fast: edit_cache -.PHONY : edit_cache/fast - -# Special rule for the target install -install: preinstall - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..." - /usr/bin/cmake -P cmake_install.cmake -.PHONY : install - -# Special rule for the target install -install/fast: preinstall/fast - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..." - /usr/bin/cmake -P cmake_install.cmake -.PHONY : install/fast - -# Special rule for the target install/local -install/local: preinstall - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..." - /usr/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake -.PHONY : install/local - -# Special rule for the target install/local -install/local/fast: install/local -.PHONY : install/local/fast - -# Special rule for the target install/strip -install/strip: preinstall - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..." - /usr/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake -.PHONY : install/strip - -# Special rule for the target install/strip -install/strip/fast: install/strip -.PHONY : install/strip/fast - -# Special rule for the target list_install_components -list_install_components: - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Available install components are: \"Unspecified\"" -.PHONY : list_install_components - -# Special rule for the target list_install_components -list_install_components/fast: list_install_components -.PHONY : list_install_components/fast - -# Special rule for the target rebuild_cache -rebuild_cache: - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..." - /usr/bin/cmake -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) -.PHONY : rebuild_cache - -# Special rule for the target rebuild_cache -rebuild_cache/fast: rebuild_cache -.PHONY : rebuild_cache/fast - -# The main all target -all: cmake_check_build_system - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(CMAKE_COMMAND) -E cmake_progress_start /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/CMakeFiles/progress.marks - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f CMakeFiles/Makefile2 Testbed/all - $(CMAKE_COMMAND) -E cmake_progress_start /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles 0 -.PHONY : all - -# The main clean target -clean: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f CMakeFiles/Makefile2 Testbed/clean -.PHONY : clean - -# The main clean target -clean/fast: clean -.PHONY : clean/fast - -# Prepare targets for installation. -preinstall: all - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f CMakeFiles/Makefile2 Testbed/preinstall -.PHONY : preinstall - -# Prepare targets for installation. -preinstall/fast: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f CMakeFiles/Makefile2 Testbed/preinstall -.PHONY : preinstall/fast - -# clear depends -depend: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1 -.PHONY : depend - -# Convenience name for target. -Testbed/CMakeFiles/Testbed.dir/rule: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f CMakeFiles/Makefile2 Testbed/CMakeFiles/Testbed.dir/rule -.PHONY : Testbed/CMakeFiles/Testbed.dir/rule - -# Convenience name for target. -Testbed: Testbed/CMakeFiles/Testbed.dir/rule -.PHONY : Testbed - -# fast build rule for target. -Testbed/fast: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Testbed/CMakeFiles/Testbed.dir/build.make Testbed/CMakeFiles/Testbed.dir/build -.PHONY : Testbed/fast - -Framework/Main.o: Framework/Main.cpp.o -.PHONY : Framework/Main.o - -# target to build an object file -Framework/Main.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Testbed/CMakeFiles/Testbed.dir/build.make Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.o -.PHONY : Framework/Main.cpp.o - -Framework/Main.i: Framework/Main.cpp.i -.PHONY : Framework/Main.i - -# target to preprocess a source file -Framework/Main.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Testbed/CMakeFiles/Testbed.dir/build.make Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.i -.PHONY : Framework/Main.cpp.i - -Framework/Main.s: Framework/Main.cpp.s -.PHONY : Framework/Main.s - -# target to generate assembly for a file -Framework/Main.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Testbed/CMakeFiles/Testbed.dir/build.make Testbed/CMakeFiles/Testbed.dir/Framework/Main.cpp.s -.PHONY : Framework/Main.cpp.s - -Framework/Render.o: Framework/Render.cpp.o -.PHONY : Framework/Render.o - -# target to build an object file -Framework/Render.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Testbed/CMakeFiles/Testbed.dir/build.make Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.o -.PHONY : Framework/Render.cpp.o - -Framework/Render.i: Framework/Render.cpp.i -.PHONY : Framework/Render.i - -# target to preprocess a source file -Framework/Render.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Testbed/CMakeFiles/Testbed.dir/build.make Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.i -.PHONY : Framework/Render.cpp.i - -Framework/Render.s: Framework/Render.cpp.s -.PHONY : Framework/Render.s - -# target to generate assembly for a file -Framework/Render.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Testbed/CMakeFiles/Testbed.dir/build.make Testbed/CMakeFiles/Testbed.dir/Framework/Render.cpp.s -.PHONY : Framework/Render.cpp.s - -Framework/Test.o: Framework/Test.cpp.o -.PHONY : Framework/Test.o - -# target to build an object file -Framework/Test.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Testbed/CMakeFiles/Testbed.dir/build.make Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.o -.PHONY : Framework/Test.cpp.o - -Framework/Test.i: Framework/Test.cpp.i -.PHONY : Framework/Test.i - -# target to preprocess a source file -Framework/Test.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Testbed/CMakeFiles/Testbed.dir/build.make Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.i -.PHONY : Framework/Test.cpp.i - -Framework/Test.s: Framework/Test.cpp.s -.PHONY : Framework/Test.s - -# target to generate assembly for a file -Framework/Test.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Testbed/CMakeFiles/Testbed.dir/build.make Testbed/CMakeFiles/Testbed.dir/Framework/Test.cpp.s -.PHONY : Framework/Test.cpp.s - -Tests/TestEntries.o: Tests/TestEntries.cpp.o -.PHONY : Tests/TestEntries.o - -# target to build an object file -Tests/TestEntries.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Testbed/CMakeFiles/Testbed.dir/build.make Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.o -.PHONY : Tests/TestEntries.cpp.o - -Tests/TestEntries.i: Tests/TestEntries.cpp.i -.PHONY : Tests/TestEntries.i - -# target to preprocess a source file -Tests/TestEntries.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Testbed/CMakeFiles/Testbed.dir/build.make Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.i -.PHONY : Tests/TestEntries.cpp.i - -Tests/TestEntries.s: Tests/TestEntries.cpp.s -.PHONY : Tests/TestEntries.s - -# target to generate assembly for a file -Tests/TestEntries.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f Testbed/CMakeFiles/Testbed.dir/build.make Testbed/CMakeFiles/Testbed.dir/Tests/TestEntries.cpp.s -.PHONY : Tests/TestEntries.cpp.s - -# Help Target -help: - @echo "The following are some of the valid targets for this Makefile:" - @echo "... all (the default if no target is provided)" - @echo "... clean" - @echo "... depend" - @echo "... Testbed" - @echo "... edit_cache" - @echo "... install" - @echo "... install/local" - @echo "... install/strip" - @echo "... list_install_components" - @echo "... rebuild_cache" - @echo "... Framework/Main.o" - @echo "... Framework/Main.i" - @echo "... Framework/Main.s" - @echo "... Framework/Render.o" - @echo "... Framework/Render.i" - @echo "... Framework/Render.s" - @echo "... Framework/Test.o" - @echo "... Framework/Test.i" - @echo "... Framework/Test.s" - @echo "... Tests/TestEntries.o" - @echo "... Tests/TestEntries.i" - @echo "... Tests/TestEntries.s" -.PHONY : help - - - -#============================================================================= -# Special targets to cleanup operation of make. - -# Special rule to run CMake to check the build system integrity. -# No rule that depends on this can have commands that come from listfiles -# because they might be regenerated. -cmake_check_build_system: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 -.PHONY : cmake_check_build_system - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Testbed b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Testbed deleted file mode 100755 index 4e156e4..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Testbed and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/AddPair.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/AddPair.h deleted file mode 100644 index 2f11c4f..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/AddPair.h +++ /dev/null @@ -1,68 +0,0 @@ -/* -* Copyright (c) 2006-2012 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef AddPair_H -#define AddPair_H - -class AddPair : public Test -{ -public: - - AddPair() - { - m_world->SetGravity(b2Vec2(0.0f,0.0f)); - { - b2CircleShape shape; - shape.m_p.SetZero(); - shape.m_radius = 0.1f; - - float minX = -6.0f; - float maxX = 0.0f; - float minY = 4.0f; - float maxY = 6.0f; - - for (int32 i = 0; i < 400; ++i) - { - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position = b2Vec2(RandomFloat(minX,maxX),RandomFloat(minY,maxY)); - b2Body* body = m_world->CreateBody(&bd); - body->CreateFixture(&shape, 0.01f); - } - } - - { - b2PolygonShape shape; - shape.SetAsBox(1.5f, 1.5f); - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(-40.0f,5.0f); - bd.bullet = true; - b2Body* body = m_world->CreateBody(&bd); - body->CreateFixture(&shape, 1.0f); - body->SetLinearVelocity(b2Vec2(150.0f, 0.0f)); - } - } - - static Test* Create() - { - return new AddPair; - } -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/ApplyForce.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/ApplyForce.h deleted file mode 100644 index d491ca8..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/ApplyForce.h +++ /dev/null @@ -1,180 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef APPLY_FORCE_H -#define APPLY_FORCE_H - -class ApplyForce : public Test -{ -public: - ApplyForce() - { - m_world->SetGravity(b2Vec2(0.0f, 0.0f)); - - const float32 k_restitution = 0.4f; - - b2Body* ground; - { - b2BodyDef bd; - bd.position.Set(0.0f, 20.0f); - ground = m_world->CreateBody(&bd); - - b2EdgeShape shape; - - b2FixtureDef sd; - sd.shape = &shape; - sd.density = 0.0f; - sd.restitution = k_restitution; - - // Left vertical - shape.Set(b2Vec2(-20.0f, -20.0f), b2Vec2(-20.0f, 20.0f)); - ground->CreateFixture(&sd); - - // Right vertical - shape.Set(b2Vec2(20.0f, -20.0f), b2Vec2(20.0f, 20.0f)); - ground->CreateFixture(&sd); - - // Top horizontal - shape.Set(b2Vec2(-20.0f, 20.0f), b2Vec2(20.0f, 20.0f)); - ground->CreateFixture(&sd); - - // Bottom horizontal - shape.Set(b2Vec2(-20.0f, -20.0f), b2Vec2(20.0f, -20.0f)); - ground->CreateFixture(&sd); - } - - { - b2Transform xf1; - xf1.q.Set(0.3524f * b2_pi); - xf1.p = xf1.q.GetXAxis(); - - b2Vec2 vertices[3]; - vertices[0] = b2Mul(xf1, b2Vec2(-1.0f, 0.0f)); - vertices[1] = b2Mul(xf1, b2Vec2(1.0f, 0.0f)); - vertices[2] = b2Mul(xf1, b2Vec2(0.0f, 0.5f)); - - b2PolygonShape poly1; - poly1.Set(vertices, 3); - - b2FixtureDef sd1; - sd1.shape = &poly1; - sd1.density = 4.0f; - - b2Transform xf2; - xf2.q.Set(-0.3524f * b2_pi); - xf2.p = -xf2.q.GetXAxis(); - - vertices[0] = b2Mul(xf2, b2Vec2(-1.0f, 0.0f)); - vertices[1] = b2Mul(xf2, b2Vec2(1.0f, 0.0f)); - vertices[2] = b2Mul(xf2, b2Vec2(0.0f, 0.5f)); - - b2PolygonShape poly2; - poly2.Set(vertices, 3); - - b2FixtureDef sd2; - sd2.shape = &poly2; - sd2.density = 2.0f; - - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.angularDamping = 2.0f; - bd.linearDamping = 0.5f; - - bd.position.Set(0.0f, 2.0); - bd.angle = b2_pi; - bd.allowSleep = false; - m_body = m_world->CreateBody(&bd); - m_body->CreateFixture(&sd1); - m_body->CreateFixture(&sd2); - } - - { - b2PolygonShape shape; - shape.SetAsBox(0.5f, 0.5f); - - b2FixtureDef fd; - fd.shape = &shape; - fd.density = 1.0f; - fd.friction = 0.3f; - - for (int i = 0; i < 10; ++i) - { - b2BodyDef bd; - bd.type = b2_dynamicBody; - - bd.position.Set(0.0f, 5.0f + 1.54f * i); - b2Body* body = m_world->CreateBody(&bd); - - body->CreateFixture(&fd); - - float32 gravity = 10.0f; - float32 I = body->GetInertia(); - float32 mass = body->GetMass(); - - // For a circle: I = 0.5 * m * r * r ==> r = sqrt(2 * I / m) - float32 radius = b2Sqrt(2.0f * I / mass); - - b2FrictionJointDef jd; - jd.localAnchorA.SetZero(); - jd.localAnchorB.SetZero(); - jd.bodyA = ground; - jd.bodyB = body; - jd.collideConnected = true; - jd.maxForce = mass * gravity; - jd.maxTorque = mass * radius * gravity; - - m_world->CreateJoint(&jd); - } - } - } - - void Keyboard(unsigned char key) - { - switch (key) - { - case 'w': - { - b2Vec2 f = m_body->GetWorldVector(b2Vec2(0.0f, -200.0f)); - b2Vec2 p = m_body->GetWorldPoint(b2Vec2(0.0f, 2.0f)); - m_body->ApplyForce(f, p, true); - } - break; - - case 'a': - { - m_body->ApplyTorque(50.0f, true); - } - break; - - case 'd': - { - m_body->ApplyTorque(-50.0f, true); - } - break; - } - } - - static Test* Create() - { - return new ApplyForce; - } - - b2Body* m_body; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/BodyTypes.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/BodyTypes.h deleted file mode 100644 index 3f23fc8..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/BodyTypes.h +++ /dev/null @@ -1,159 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef BODY_TYPES_H -#define BODY_TYPES_H - -class BodyTypes : public Test -{ -public: - BodyTypes() - { - b2Body* ground = NULL; - { - b2BodyDef bd; - ground = m_world->CreateBody(&bd); - - b2EdgeShape shape; - shape.Set(b2Vec2(-20.0f, 0.0f), b2Vec2(20.0f, 0.0f)); - - b2FixtureDef fd; - fd.shape = &shape; - - ground->CreateFixture(&fd); - } - - // Define attachment - { - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(0.0f, 3.0f); - m_attachment = m_world->CreateBody(&bd); - - b2PolygonShape shape; - shape.SetAsBox(0.5f, 2.0f); - m_attachment->CreateFixture(&shape, 2.0f); - } - - // Define platform - { - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(-4.0f, 5.0f); - m_platform = m_world->CreateBody(&bd); - - b2PolygonShape shape; - shape.SetAsBox(0.5f, 4.0f, b2Vec2(4.0f, 0.0f), 0.5f * b2_pi); - - b2FixtureDef fd; - fd.shape = &shape; - fd.friction = 0.6f; - fd.density = 2.0f; - m_platform->CreateFixture(&fd); - - b2RevoluteJointDef rjd; - rjd.Initialize(m_attachment, m_platform, b2Vec2(0.0f, 5.0f)); - rjd.maxMotorTorque = 50.0f; - rjd.enableMotor = true; - m_world->CreateJoint(&rjd); - - b2PrismaticJointDef pjd; - pjd.Initialize(ground, m_platform, b2Vec2(0.0f, 5.0f), b2Vec2(1.0f, 0.0f)); - - pjd.maxMotorForce = 1000.0f; - pjd.enableMotor = true; - pjd.lowerTranslation = -10.0f; - pjd.upperTranslation = 10.0f; - pjd.enableLimit = true; - - m_world->CreateJoint(&pjd); - - m_speed = 3.0f; - } - - // Create a payload - { - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(0.0f, 8.0f); - b2Body* body = m_world->CreateBody(&bd); - - b2PolygonShape shape; - shape.SetAsBox(0.75f, 0.75f); - - b2FixtureDef fd; - fd.shape = &shape; - fd.friction = 0.6f; - fd.density = 2.0f; - - body->CreateFixture(&fd); - } - } - - void Keyboard(unsigned char key) - { - switch (key) - { - case 'd': - m_platform->SetType(b2_dynamicBody); - break; - - case 's': - m_platform->SetType(b2_staticBody); - break; - - case 'k': - m_platform->SetType(b2_kinematicBody); - m_platform->SetLinearVelocity(b2Vec2(-m_speed, 0.0f)); - m_platform->SetAngularVelocity(0.0f); - break; - } - } - - void Step(Settings* settings) - { - // Drive the kinematic body. - if (m_platform->GetType() == b2_kinematicBody) - { - b2Vec2 p = m_platform->GetTransform().p; - b2Vec2 v = m_platform->GetLinearVelocity(); - - if ((p.x < -10.0f && v.x < 0.0f) || - (p.x > 10.0f && v.x > 0.0f)) - { - v.x = -v.x; - m_platform->SetLinearVelocity(v); - } - } - - Test::Step(settings); - m_debugDraw.DrawString(5, m_textLine, "Keys: (d) dynamic, (s) static, (k) kinematic"); - m_textLine += DRAW_STRING_NEW_LINE; - } - - static Test* Create() - { - return new BodyTypes; - } - - b2Body* m_attachment; - b2Body* m_platform; - float32 m_speed; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Breakable.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Breakable.h deleted file mode 100644 index 3fbdd47..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Breakable.h +++ /dev/null @@ -1,155 +0,0 @@ -/* -* Copyright (c) 2008-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef BREAKABLE_TEST_H -#define BREAKABLE_TEST_H - -// This is used to test sensor shapes. -class Breakable : public Test -{ -public: - - enum - { - e_count = 7 - }; - - Breakable() - { - // Ground body - { - b2BodyDef bd; - b2Body* ground = m_world->CreateBody(&bd); - - b2EdgeShape shape; - shape.Set(b2Vec2(-40.0f, 0.0f), b2Vec2(40.0f, 0.0f)); - ground->CreateFixture(&shape, 0.0f); - } - - // Breakable dynamic body - { - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(0.0f, 40.0f); - bd.angle = 0.25f * b2_pi; - m_body1 = m_world->CreateBody(&bd); - - m_shape1.SetAsBox(0.5f, 0.5f, b2Vec2(-0.5f, 0.0f), 0.0f); - m_piece1 = m_body1->CreateFixture(&m_shape1, 1.0f); - - m_shape2.SetAsBox(0.5f, 0.5f, b2Vec2(0.5f, 0.0f), 0.0f); - m_piece2 = m_body1->CreateFixture(&m_shape2, 1.0f); - } - - m_break = false; - m_broke = false; - } - - void PostSolve(b2Contact* contact, const b2ContactImpulse* impulse) - { - if (m_broke) - { - // The body already broke. - return; - } - - // Should the body break? - int32 count = contact->GetManifold()->pointCount; - - float32 maxImpulse = 0.0f; - for (int32 i = 0; i < count; ++i) - { - maxImpulse = b2Max(maxImpulse, impulse->normalImpulses[i]); - } - - if (maxImpulse > 40.0f) - { - // Flag the body for breaking. - m_break = true; - } - } - - void Break() - { - // Create two bodies from one. - b2Body* body1 = m_piece1->GetBody(); - b2Vec2 center = body1->GetWorldCenter(); - - body1->DestroyFixture(m_piece2); - m_piece2 = NULL; - - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position = body1->GetPosition(); - bd.angle = body1->GetAngle(); - - b2Body* body2 = m_world->CreateBody(&bd); - m_piece2 = body2->CreateFixture(&m_shape2, 1.0f); - - // Compute consistent velocities for new bodies based on - // cached velocity. - b2Vec2 center1 = body1->GetWorldCenter(); - b2Vec2 center2 = body2->GetWorldCenter(); - - b2Vec2 velocity1 = m_velocity + b2Cross(m_angularVelocity, center1 - center); - b2Vec2 velocity2 = m_velocity + b2Cross(m_angularVelocity, center2 - center); - - body1->SetAngularVelocity(m_angularVelocity); - body1->SetLinearVelocity(velocity1); - - body2->SetAngularVelocity(m_angularVelocity); - body2->SetLinearVelocity(velocity2); - } - - void Step(Settings* settings) - { - if (m_break) - { - Break(); - m_broke = true; - m_break = false; - } - - // Cache velocities to improve movement on breakage. - if (m_broke == false) - { - m_velocity = m_body1->GetLinearVelocity(); - m_angularVelocity = m_body1->GetAngularVelocity(); - } - - Test::Step(settings); - } - - static Test* Create() - { - return new Breakable; - } - - b2Body* m_body1; - b2Vec2 m_velocity; - float32 m_angularVelocity; - b2PolygonShape m_shape1; - b2PolygonShape m_shape2; - b2Fixture* m_piece1; - b2Fixture* m_piece2; - - bool m_broke; - bool m_break; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Bridge.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Bridge.h deleted file mode 100644 index ef83649..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Bridge.h +++ /dev/null @@ -1,125 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef BRIDGE_H -#define BRIDGE_H - -class Bridge : public Test -{ -public: - - enum - { - e_count = 30 - }; - - Bridge() - { - b2Body* ground = NULL; - { - b2BodyDef bd; - ground = m_world->CreateBody(&bd); - - b2EdgeShape shape; - shape.Set(b2Vec2(-40.0f, 0.0f), b2Vec2(40.0f, 0.0f)); - ground->CreateFixture(&shape, 0.0f); - } - - { - b2PolygonShape shape; - shape.SetAsBox(0.5f, 0.125f); - - b2FixtureDef fd; - fd.shape = &shape; - fd.density = 20.0f; - fd.friction = 0.2f; - - b2RevoluteJointDef jd; - - b2Body* prevBody = ground; - for (int32 i = 0; i < e_count; ++i) - { - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(-14.5f + 1.0f * i, 5.0f); - b2Body* body = m_world->CreateBody(&bd); - body->CreateFixture(&fd); - - b2Vec2 anchor(-15.0f + 1.0f * i, 5.0f); - jd.Initialize(prevBody, body, anchor); - m_world->CreateJoint(&jd); - - if (i == (e_count >> 1)) - { - m_middle = body; - } - prevBody = body; - } - - b2Vec2 anchor(-15.0f + 1.0f * e_count, 5.0f); - jd.Initialize(prevBody, ground, anchor); - m_world->CreateJoint(&jd); - } - - for (int32 i = 0; i < 2; ++i) - { - b2Vec2 vertices[3]; - vertices[0].Set(-0.5f, 0.0f); - vertices[1].Set(0.5f, 0.0f); - vertices[2].Set(0.0f, 1.5f); - - b2PolygonShape shape; - shape.Set(vertices, 3); - - b2FixtureDef fd; - fd.shape = &shape; - fd.density = 1.0f; - - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(-8.0f + 8.0f * i, 12.0f); - b2Body* body = m_world->CreateBody(&bd); - body->CreateFixture(&fd); - } - - for (int32 i = 0; i < 3; ++i) - { - b2CircleShape shape; - shape.m_radius = 0.5f; - - b2FixtureDef fd; - fd.shape = &shape; - fd.density = 1.0f; - - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(-6.0f + 6.0f * i, 10.0f); - b2Body* body = m_world->CreateBody(&bd); - body->CreateFixture(&fd); - } - } - - static Test* Create() - { - return new Bridge; - } - - b2Body* m_middle; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/BulletTest.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/BulletTest.h deleted file mode 100644 index 4b84f78..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/BulletTest.h +++ /dev/null @@ -1,136 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef BULLET_TEST_H -#define BULLET_TEST_H - -class BulletTest : public Test -{ -public: - - BulletTest() - { - { - b2BodyDef bd; - bd.position.Set(0.0f, 0.0f); - b2Body* body = m_world->CreateBody(&bd); - - b2EdgeShape edge; - - edge.Set(b2Vec2(-10.0f, 0.0f), b2Vec2(10.0f, 0.0f)); - body->CreateFixture(&edge, 0.0f); - - b2PolygonShape shape; - shape.SetAsBox(0.2f, 1.0f, b2Vec2(0.5f, 1.0f), 0.0f); - body->CreateFixture(&shape, 0.0f); - } - - { - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(0.0f, 4.0f); - - b2PolygonShape box; - box.SetAsBox(2.0f, 0.1f); - - m_body = m_world->CreateBody(&bd); - m_body->CreateFixture(&box, 1.0f); - - box.SetAsBox(0.25f, 0.25f); - - //m_x = RandomFloat(-1.0f, 1.0f); - m_x = 0.20352793f; - bd.position.Set(m_x, 10.0f); - bd.bullet = true; - - m_bullet = m_world->CreateBody(&bd); - m_bullet->CreateFixture(&box, 100.0f); - - m_bullet->SetLinearVelocity(b2Vec2(0.0f, -50.0f)); - } - } - - void Launch() - { - m_body->SetTransform(b2Vec2(0.0f, 4.0f), 0.0f); - m_body->SetLinearVelocity(b2Vec2_zero); - m_body->SetAngularVelocity(0.0f); - - m_x = RandomFloat(-1.0f, 1.0f); - m_bullet->SetTransform(b2Vec2(m_x, 10.0f), 0.0f); - m_bullet->SetLinearVelocity(b2Vec2(0.0f, -50.0f)); - m_bullet->SetAngularVelocity(0.0f); - - extern int32 b2_gjkCalls, b2_gjkIters, b2_gjkMaxIters; - extern int32 b2_toiCalls, b2_toiIters, b2_toiMaxIters; - extern int32 b2_toiRootIters, b2_toiMaxRootIters; - - b2_gjkCalls = 0; - b2_gjkIters = 0; - b2_gjkMaxIters = 0; - - b2_toiCalls = 0; - b2_toiIters = 0; - b2_toiMaxIters = 0; - b2_toiRootIters = 0; - b2_toiMaxRootIters = 0; - } - - void Step(Settings* settings) - { - Test::Step(settings); - - extern int32 b2_gjkCalls, b2_gjkIters, b2_gjkMaxIters; - extern int32 b2_toiCalls, b2_toiIters; - extern int32 b2_toiRootIters, b2_toiMaxRootIters; - - if (b2_gjkCalls > 0) - { - m_debugDraw.DrawString(5, m_textLine, "gjk calls = %d, ave gjk iters = %3.1f, max gjk iters = %d", - b2_gjkCalls, b2_gjkIters / float32(b2_gjkCalls), b2_gjkMaxIters); - m_textLine += DRAW_STRING_NEW_LINE; - } - - if (b2_toiCalls > 0) - { - m_debugDraw.DrawString(5, m_textLine, "toi calls = %d, ave toi iters = %3.1f, max toi iters = %d", - b2_toiCalls, b2_toiIters / float32(b2_toiCalls), b2_toiMaxRootIters); - m_textLine += DRAW_STRING_NEW_LINE; - - m_debugDraw.DrawString(5, m_textLine, "ave toi root iters = %3.1f, max toi root iters = %d", - b2_toiRootIters / float32(b2_toiCalls), b2_toiMaxRootIters); - m_textLine += DRAW_STRING_NEW_LINE; - } - - if (m_stepCount % 60 == 0) - { - Launch(); - } - } - - static Test* Create() - { - return new BulletTest; - } - - b2Body* m_body; - b2Body* m_bullet; - float32 m_x; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Cantilever.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Cantilever.h deleted file mode 100644 index 26994d6..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Cantilever.h +++ /dev/null @@ -1,211 +0,0 @@ -/* -* Copyright (c) 2006-2011 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef CANTILEVER_H -#define CANTILEVER_H - -// It is difficult to make a cantilever made of links completely rigid with weld joints. -// You will have to use a high number of iterations to make them stiff. -// So why not go ahead and use soft weld joints? They behave like a revolute -// joint with a rotational spring. -class Cantilever : public Test -{ -public: - - enum - { - e_count = 8 - }; - - Cantilever() - { - b2Body* ground = NULL; - { - b2BodyDef bd; - ground = m_world->CreateBody(&bd); - - b2EdgeShape shape; - shape.Set(b2Vec2(-40.0f, 0.0f), b2Vec2(40.0f, 0.0f)); - ground->CreateFixture(&shape, 0.0f); - } - - { - b2PolygonShape shape; - shape.SetAsBox(0.5f, 0.125f); - - b2FixtureDef fd; - fd.shape = &shape; - fd.density = 20.0f; - - b2WeldJointDef jd; - - b2Body* prevBody = ground; - for (int32 i = 0; i < e_count; ++i) - { - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(-14.5f + 1.0f * i, 5.0f); - b2Body* body = m_world->CreateBody(&bd); - body->CreateFixture(&fd); - - b2Vec2 anchor(-15.0f + 1.0f * i, 5.0f); - jd.Initialize(prevBody, body, anchor); - m_world->CreateJoint(&jd); - - prevBody = body; - } - } - - { - b2PolygonShape shape; - shape.SetAsBox(1.0f, 0.125f); - - b2FixtureDef fd; - fd.shape = &shape; - fd.density = 20.0f; - - b2WeldJointDef jd; - jd.frequencyHz = 5.0f; - jd.dampingRatio = 0.7f; - - b2Body* prevBody = ground; - for (int32 i = 0; i < 3; ++i) - { - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(-14.0f + 2.0f * i, 15.0f); - b2Body* body = m_world->CreateBody(&bd); - body->CreateFixture(&fd); - - b2Vec2 anchor(-15.0f + 2.0f * i, 15.0f); - jd.Initialize(prevBody, body, anchor); - m_world->CreateJoint(&jd); - - prevBody = body; - } - } - - { - b2PolygonShape shape; - shape.SetAsBox(0.5f, 0.125f); - - b2FixtureDef fd; - fd.shape = &shape; - fd.density = 20.0f; - - b2WeldJointDef jd; - - b2Body* prevBody = ground; - for (int32 i = 0; i < e_count; ++i) - { - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(-4.5f + 1.0f * i, 5.0f); - b2Body* body = m_world->CreateBody(&bd); - body->CreateFixture(&fd); - - if (i > 0) - { - b2Vec2 anchor(-5.0f + 1.0f * i, 5.0f); - jd.Initialize(prevBody, body, anchor); - m_world->CreateJoint(&jd); - } - - prevBody = body; - } - } - - { - b2PolygonShape shape; - shape.SetAsBox(0.5f, 0.125f); - - b2FixtureDef fd; - fd.shape = &shape; - fd.density = 20.0f; - - b2WeldJointDef jd; - jd.frequencyHz = 8.0f; - jd.dampingRatio = 0.7f; - - b2Body* prevBody = ground; - for (int32 i = 0; i < e_count; ++i) - { - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(5.5f + 1.0f * i, 10.0f); - b2Body* body = m_world->CreateBody(&bd); - body->CreateFixture(&fd); - - if (i > 0) - { - b2Vec2 anchor(5.0f + 1.0f * i, 10.0f); - jd.Initialize(prevBody, body, anchor); - m_world->CreateJoint(&jd); - } - - prevBody = body; - } - } - - for (int32 i = 0; i < 2; ++i) - { - b2Vec2 vertices[3]; - vertices[0].Set(-0.5f, 0.0f); - vertices[1].Set(0.5f, 0.0f); - vertices[2].Set(0.0f, 1.5f); - - b2PolygonShape shape; - shape.Set(vertices, 3); - - b2FixtureDef fd; - fd.shape = &shape; - fd.density = 1.0f; - - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(-8.0f + 8.0f * i, 12.0f); - b2Body* body = m_world->CreateBody(&bd); - body->CreateFixture(&fd); - } - - for (int32 i = 0; i < 2; ++i) - { - b2CircleShape shape; - shape.m_radius = 0.5f; - - b2FixtureDef fd; - fd.shape = &shape; - fd.density = 1.0f; - - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(-6.0f + 6.0f * i, 10.0f); - b2Body* body = m_world->CreateBody(&bd); - body->CreateFixture(&fd); - } - } - - static Test* Create() - { - return new Cantilever; - } - - b2Body* m_middle; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Car.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Car.h deleted file mode 100644 index 117cf7e..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Car.h +++ /dev/null @@ -1,286 +0,0 @@ -/* -* Copyright (c) 2006-2011 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef CAR_H -#define CAR_H - -// This is a fun demo that shows off the wheel joint -class Car : public Test -{ -public: - Car() - { - m_hz = 4.0f; - m_zeta = 0.7f; - m_speed = 50.0f; - - b2Body* ground = NULL; - { - b2BodyDef bd; - ground = m_world->CreateBody(&bd); - - b2EdgeShape shape; - - b2FixtureDef fd; - fd.shape = &shape; - fd.density = 0.0f; - fd.friction = 0.6f; - - shape.Set(b2Vec2(-20.0f, 0.0f), b2Vec2(20.0f, 0.0f)); - ground->CreateFixture(&fd); - - float32 hs[10] = {0.25f, 1.0f, 4.0f, 0.0f, 0.0f, -1.0f, -2.0f, -2.0f, -1.25f, 0.0f}; - - float32 x = 20.0f, y1 = 0.0f, dx = 5.0f; - - for (int32 i = 0; i < 10; ++i) - { - float32 y2 = hs[i]; - shape.Set(b2Vec2(x, y1), b2Vec2(x + dx, y2)); - ground->CreateFixture(&fd); - y1 = y2; - x += dx; - } - - for (int32 i = 0; i < 10; ++i) - { - float32 y2 = hs[i]; - shape.Set(b2Vec2(x, y1), b2Vec2(x + dx, y2)); - ground->CreateFixture(&fd); - y1 = y2; - x += dx; - } - - shape.Set(b2Vec2(x, 0.0f), b2Vec2(x + 40.0f, 0.0f)); - ground->CreateFixture(&fd); - - x += 80.0f; - shape.Set(b2Vec2(x, 0.0f), b2Vec2(x + 40.0f, 0.0f)); - ground->CreateFixture(&fd); - - x += 40.0f; - shape.Set(b2Vec2(x, 0.0f), b2Vec2(x + 10.0f, 5.0f)); - ground->CreateFixture(&fd); - - x += 20.0f; - shape.Set(b2Vec2(x, 0.0f), b2Vec2(x + 40.0f, 0.0f)); - ground->CreateFixture(&fd); - - x += 40.0f; - shape.Set(b2Vec2(x, 0.0f), b2Vec2(x, 20.0f)); - ground->CreateFixture(&fd); - } - - // Teeter - { - b2BodyDef bd; - bd.position.Set(140.0f, 1.0f); - bd.type = b2_dynamicBody; - b2Body* body = m_world->CreateBody(&bd); - - b2PolygonShape box; - box.SetAsBox(10.0f, 0.25f); - body->CreateFixture(&box, 1.0f); - - b2RevoluteJointDef jd; - jd.Initialize(ground, body, body->GetPosition()); - jd.lowerAngle = -8.0f * b2_pi / 180.0f; - jd.upperAngle = 8.0f * b2_pi / 180.0f; - jd.enableLimit = true; - m_world->CreateJoint(&jd); - - body->ApplyAngularImpulse(100.0f, true); - } - - // Bridge - { - int32 N = 20; - b2PolygonShape shape; - shape.SetAsBox(1.0f, 0.125f); - - b2FixtureDef fd; - fd.shape = &shape; - fd.density = 1.0f; - fd.friction = 0.6f; - - b2RevoluteJointDef jd; - - b2Body* prevBody = ground; - for (int32 i = 0; i < N; ++i) - { - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(161.0f + 2.0f * i, -0.125f); - b2Body* body = m_world->CreateBody(&bd); - body->CreateFixture(&fd); - - b2Vec2 anchor(160.0f + 2.0f * i, -0.125f); - jd.Initialize(prevBody, body, anchor); - m_world->CreateJoint(&jd); - - prevBody = body; - } - - b2Vec2 anchor(160.0f + 2.0f * N, -0.125f); - jd.Initialize(prevBody, ground, anchor); - m_world->CreateJoint(&jd); - } - - // Boxes - { - b2PolygonShape box; - box.SetAsBox(0.5f, 0.5f); - - b2Body* body = NULL; - b2BodyDef bd; - bd.type = b2_dynamicBody; - - bd.position.Set(230.0f, 0.5f); - body = m_world->CreateBody(&bd); - body->CreateFixture(&box, 0.5f); - - bd.position.Set(230.0f, 1.5f); - body = m_world->CreateBody(&bd); - body->CreateFixture(&box, 0.5f); - - bd.position.Set(230.0f, 2.5f); - body = m_world->CreateBody(&bd); - body->CreateFixture(&box, 0.5f); - - bd.position.Set(230.0f, 3.5f); - body = m_world->CreateBody(&bd); - body->CreateFixture(&box, 0.5f); - - bd.position.Set(230.0f, 4.5f); - body = m_world->CreateBody(&bd); - body->CreateFixture(&box, 0.5f); - } - - // Car - { - b2PolygonShape chassis; - b2Vec2 vertices[8]; - vertices[0].Set(-1.5f, -0.5f); - vertices[1].Set(1.5f, -0.5f); - vertices[2].Set(1.5f, 0.0f); - vertices[3].Set(0.0f, 0.9f); - vertices[4].Set(-1.15f, 0.9f); - vertices[5].Set(-1.5f, 0.2f); - chassis.Set(vertices, 6); - - b2CircleShape circle; - circle.m_radius = 0.4f; - - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(0.0f, 1.0f); - m_car = m_world->CreateBody(&bd); - m_car->CreateFixture(&chassis, 1.0f); - - b2FixtureDef fd; - fd.shape = &circle; - fd.density = 1.0f; - fd.friction = 0.9f; - - bd.position.Set(-1.0f, 0.35f); - m_wheel1 = m_world->CreateBody(&bd); - m_wheel1->CreateFixture(&fd); - - bd.position.Set(1.0f, 0.4f); - m_wheel2 = m_world->CreateBody(&bd); - m_wheel2->CreateFixture(&fd); - - b2WheelJointDef jd; - b2Vec2 axis(0.0f, 1.0f); - - jd.Initialize(m_car, m_wheel1, m_wheel1->GetPosition(), axis); - jd.motorSpeed = 0.0f; - jd.maxMotorTorque = 20.0f; - jd.enableMotor = true; - jd.frequencyHz = m_hz; - jd.dampingRatio = m_zeta; - m_spring1 = (b2WheelJoint*)m_world->CreateJoint(&jd); - - jd.Initialize(m_car, m_wheel2, m_wheel2->GetPosition(), axis); - jd.motorSpeed = 0.0f; - jd.maxMotorTorque = 10.0f; - jd.enableMotor = false; - jd.frequencyHz = m_hz; - jd.dampingRatio = m_zeta; - m_spring2 = (b2WheelJoint*)m_world->CreateJoint(&jd); - } - } - - void Keyboard(unsigned char key) - { - switch (key) - { - case 'a': - m_spring1->SetMotorSpeed(m_speed); - break; - - case 's': - m_spring1->SetMotorSpeed(0.0f); - break; - - case 'd': - m_spring1->SetMotorSpeed(-m_speed); - break; - - case 'q': - m_hz = b2Max(0.0f, m_hz - 1.0f); - m_spring1->SetSpringFrequencyHz(m_hz); - m_spring2->SetSpringFrequencyHz(m_hz); - break; - - case 'e': - m_hz += 1.0f; - m_spring1->SetSpringFrequencyHz(m_hz); - m_spring2->SetSpringFrequencyHz(m_hz); - break; - } - } - - void Step(Settings* settings) - { - m_debugDraw.DrawString(5, m_textLine, "Keys: left = a, brake = s, right = d, hz down = q, hz up = e"); - m_textLine += DRAW_STRING_NEW_LINE; - m_debugDraw.DrawString(5, m_textLine, "frequency = %g hz, damping ratio = %g", m_hz, m_zeta); - m_textLine += DRAW_STRING_NEW_LINE; - - settings->viewCenter.x = m_car->GetPosition().x; - Test::Step(settings); - } - - static Test* Create() - { - return new Car; - } - - b2Body* m_car; - b2Body* m_wheel1; - b2Body* m_wheel2; - - float32 m_hz; - float32 m_zeta; - float32 m_speed; - b2WheelJoint* m_spring1; - b2WheelJoint* m_spring2; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Chain.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Chain.h deleted file mode 100644 index 33b8de9..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Chain.h +++ /dev/null @@ -1,74 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef CHAIN_H -#define CHAIN_H - -class Chain : public Test -{ -public: - Chain() - { - b2Body* ground = NULL; - { - b2BodyDef bd; - ground = m_world->CreateBody(&bd); - - b2EdgeShape shape; - shape.Set(b2Vec2(-40.0f, 0.0f), b2Vec2(40.0f, 0.0f)); - ground->CreateFixture(&shape, 0.0f); - } - - { - b2PolygonShape shape; - shape.SetAsBox(0.6f, 0.125f); - - b2FixtureDef fd; - fd.shape = &shape; - fd.density = 20.0f; - fd.friction = 0.2f; - - b2RevoluteJointDef jd; - jd.collideConnected = false; - - const float32 y = 25.0f; - b2Body* prevBody = ground; - for (int32 i = 0; i < 30; ++i) - { - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(0.5f + i, y); - b2Body* body = m_world->CreateBody(&bd); - body->CreateFixture(&fd); - - b2Vec2 anchor(float32(i), y); - jd.Initialize(prevBody, body, anchor); - m_world->CreateJoint(&jd); - - prevBody = body; - } - } - } - - static Test* Create() - { - return new Chain; - } -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/CharacterCollision.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/CharacterCollision.h deleted file mode 100644 index c4e664c..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/CharacterCollision.h +++ /dev/null @@ -1,253 +0,0 @@ -/* -* Copyright (c) 2006-2010 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef CHARACTER_COLLISION_H -#define CHARACTER_COLLISION_H - -/// This is a test of typical character collision scenarios. This does not -/// show how you should implement a character in your application. -/// Instead this is used to test smooth collision on edge chains. -class CharacterCollision : public Test -{ -public: - CharacterCollision() - { - // Ground body - { - b2BodyDef bd; - b2Body* ground = m_world->CreateBody(&bd); - - b2EdgeShape shape; - shape.Set(b2Vec2(-20.0f, 0.0f), b2Vec2(20.0f, 0.0f)); - ground->CreateFixture(&shape, 0.0f); - } - - // Collinear edges with no adjacency information. - // This shows the problematic case where a box shape can hit - // an internal vertex. - { - b2BodyDef bd; - b2Body* ground = m_world->CreateBody(&bd); - - b2EdgeShape shape; - shape.Set(b2Vec2(-8.0f, 1.0f), b2Vec2(-6.0f, 1.0f)); - ground->CreateFixture(&shape, 0.0f); - shape.Set(b2Vec2(-6.0f, 1.0f), b2Vec2(-4.0f, 1.0f)); - ground->CreateFixture(&shape, 0.0f); - shape.Set(b2Vec2(-4.0f, 1.0f), b2Vec2(-2.0f, 1.0f)); - ground->CreateFixture(&shape, 0.0f); - } - - // Chain shape - { - b2BodyDef bd; - bd.angle = 0.25f * b2_pi; - b2Body* ground = m_world->CreateBody(&bd); - - b2Vec2 vs[4]; - vs[0].Set(5.0f, 7.0f); - vs[1].Set(6.0f, 8.0f); - vs[2].Set(7.0f, 8.0f); - vs[3].Set(8.0f, 7.0f); - b2ChainShape shape; - shape.CreateChain(vs, 4); - ground->CreateFixture(&shape, 0.0f); - } - - // Square tiles. This shows that adjacency shapes may - // have non-smooth collision. There is no solution - // to this problem. - { - b2BodyDef bd; - b2Body* ground = m_world->CreateBody(&bd); - - b2PolygonShape shape; - shape.SetAsBox(1.0f, 1.0f, b2Vec2(4.0f, 3.0f), 0.0f); - ground->CreateFixture(&shape, 0.0f); - shape.SetAsBox(1.0f, 1.0f, b2Vec2(6.0f, 3.0f), 0.0f); - ground->CreateFixture(&shape, 0.0f); - shape.SetAsBox(1.0f, 1.0f, b2Vec2(8.0f, 3.0f), 0.0f); - ground->CreateFixture(&shape, 0.0f); - } - - // Square made from an edge loop. Collision should be smooth. - { - b2BodyDef bd; - b2Body* ground = m_world->CreateBody(&bd); - - b2Vec2 vs[4]; - vs[0].Set(-1.0f, 3.0f); - vs[1].Set(1.0f, 3.0f); - vs[2].Set(1.0f, 5.0f); - vs[3].Set(-1.0f, 5.0f); - b2ChainShape shape; - shape.CreateLoop(vs, 4); - ground->CreateFixture(&shape, 0.0f); - } - - // Edge loop. Collision should be smooth. - { - b2BodyDef bd; - bd.position.Set(-10.0f, 4.0f); - b2Body* ground = m_world->CreateBody(&bd); - - b2Vec2 vs[10]; - vs[0].Set(0.0f, 0.0f); - vs[1].Set(6.0f, 0.0f); - vs[2].Set(6.0f, 2.0f); - vs[3].Set(4.0f, 1.0f); - vs[4].Set(2.0f, 2.0f); - vs[5].Set(0.0f, 2.0f); - vs[6].Set(-2.0f, 2.0f); - vs[7].Set(-4.0f, 3.0f); - vs[8].Set(-6.0f, 2.0f); - vs[9].Set(-6.0f, 0.0f); - b2ChainShape shape; - shape.CreateLoop(vs, 10); - ground->CreateFixture(&shape, 0.0f); - } - - // Square character 1 - { - b2BodyDef bd; - bd.position.Set(-3.0f, 8.0f); - bd.type = b2_dynamicBody; - bd.fixedRotation = true; - bd.allowSleep = false; - - b2Body* body = m_world->CreateBody(&bd); - - b2PolygonShape shape; - shape.SetAsBox(0.5f, 0.5f); - - b2FixtureDef fd; - fd.shape = &shape; - fd.density = 20.0f; - body->CreateFixture(&fd); - } - - // Square character 2 - { - b2BodyDef bd; - bd.position.Set(-5.0f, 5.0f); - bd.type = b2_dynamicBody; - bd.fixedRotation = true; - bd.allowSleep = false; - - b2Body* body = m_world->CreateBody(&bd); - - b2PolygonShape shape; - shape.SetAsBox(0.25f, 0.25f); - - b2FixtureDef fd; - fd.shape = &shape; - fd.density = 20.0f; - body->CreateFixture(&fd); - } - - // Hexagon character - { - b2BodyDef bd; - bd.position.Set(-5.0f, 8.0f); - bd.type = b2_dynamicBody; - bd.fixedRotation = true; - bd.allowSleep = false; - - b2Body* body = m_world->CreateBody(&bd); - - float32 angle = 0.0f; - float32 delta = b2_pi / 3.0f; - b2Vec2 vertices[6]; - for (int32 i = 0; i < 6; ++i) - { - vertices[i].Set(0.5f * cosf(angle), 0.5f * sinf(angle)); - angle += delta; - } - - b2PolygonShape shape; - shape.Set(vertices, 6); - - b2FixtureDef fd; - fd.shape = &shape; - fd.density = 20.0f; - body->CreateFixture(&fd); - } - - // Circle character - { - b2BodyDef bd; - bd.position.Set(3.0f, 5.0f); - bd.type = b2_dynamicBody; - bd.fixedRotation = true; - bd.allowSleep = false; - - b2Body* body = m_world->CreateBody(&bd); - - b2CircleShape shape; - shape.m_radius = 0.5f; - - b2FixtureDef fd; - fd.shape = &shape; - fd.density = 20.0f; - body->CreateFixture(&fd); - } - - // Circle character - { - b2BodyDef bd; - bd.position.Set(-7.0f, 6.0f); - bd.type = b2_dynamicBody; - bd.allowSleep = false; - - m_character = m_world->CreateBody(&bd); - - b2CircleShape shape; - shape.m_radius = 0.25f; - - b2FixtureDef fd; - fd.shape = &shape; - fd.density = 20.0f; - fd.friction = 1.0f; - m_character->CreateFixture(&fd); - } - } - - void Step(Settings* settings) - { - b2Vec2 v = m_character->GetLinearVelocity(); - v.x = -5.0f; - m_character->SetLinearVelocity(v); - - Test::Step(settings); - m_debugDraw.DrawString(5, m_textLine, "This tests various character collision shapes."); - m_textLine += DRAW_STRING_NEW_LINE; - m_debugDraw.DrawString(5, m_textLine, "Limitation: square and hexagon can snag on aligned boxes."); - m_textLine += DRAW_STRING_NEW_LINE; - m_debugDraw.DrawString(5, m_textLine, "Feature: edge chains have smooth collision inside and out."); - m_textLine += DRAW_STRING_NEW_LINE; - } - - static Test* Create() - { - return new CharacterCollision; - } - - b2Body* m_character; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/CollisionFiltering.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/CollisionFiltering.h deleted file mode 100644 index e129539..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/CollisionFiltering.h +++ /dev/null @@ -1,177 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef COLLISION_FILTERING_H -#define COLLISION_FILTERING_H - -// This is a test of collision filtering. -// There is a triangle, a box, and a circle. -// There are 6 shapes. 3 large and 3 small. -// The 3 small ones always collide. -// The 3 large ones never collide. -// The boxes don't collide with triangles (except if both are small). -const int16 k_smallGroup = 1; -const int16 k_largeGroup = -1; - -const uint16 k_defaultCategory = 0x0001; -const uint16 k_triangleCategory = 0x0002; -const uint16 k_boxCategory = 0x0004; -const uint16 k_circleCategory = 0x0008; - -const uint16 k_triangleMask = 0xFFFF; -const uint16 k_boxMask = 0xFFFF ^ k_triangleCategory; -const uint16 k_circleMask = 0xFFFF; - -class CollisionFiltering : public Test -{ -public: - CollisionFiltering() - { - // Ground body - { - b2EdgeShape shape; - shape.Set(b2Vec2(-40.0f, 0.0f), b2Vec2(40.0f, 0.0f)); - - b2FixtureDef sd; - sd.shape = &shape; - sd.friction = 0.3f; - - b2BodyDef bd; - b2Body* ground = m_world->CreateBody(&bd); - ground->CreateFixture(&sd); - } - - // Small triangle - b2Vec2 vertices[3]; - vertices[0].Set(-1.0f, 0.0f); - vertices[1].Set(1.0f, 0.0f); - vertices[2].Set(0.0f, 2.0f); - b2PolygonShape polygon; - polygon.Set(vertices, 3); - - b2FixtureDef triangleShapeDef; - triangleShapeDef.shape = &polygon; - triangleShapeDef.density = 1.0f; - - triangleShapeDef.filter.groupIndex = k_smallGroup; - triangleShapeDef.filter.categoryBits = k_triangleCategory; - triangleShapeDef.filter.maskBits = k_triangleMask; - - b2BodyDef triangleBodyDef; - triangleBodyDef.type = b2_dynamicBody; - triangleBodyDef.position.Set(-5.0f, 2.0f); - - b2Body* body1 = m_world->CreateBody(&triangleBodyDef); - body1->CreateFixture(&triangleShapeDef); - - // Large triangle (recycle definitions) - vertices[0] *= 2.0f; - vertices[1] *= 2.0f; - vertices[2] *= 2.0f; - polygon.Set(vertices, 3); - triangleShapeDef.filter.groupIndex = k_largeGroup; - triangleBodyDef.position.Set(-5.0f, 6.0f); - triangleBodyDef.fixedRotation = true; // look at me! - - b2Body* body2 = m_world->CreateBody(&triangleBodyDef); - body2->CreateFixture(&triangleShapeDef); - - { - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(-5.0f, 10.0f); - b2Body* body = m_world->CreateBody(&bd); - - b2PolygonShape p; - p.SetAsBox(0.5f, 1.0f); - body->CreateFixture(&p, 1.0f); - - b2PrismaticJointDef jd; - jd.bodyA = body2; - jd.bodyB = body; - jd.enableLimit = true; - jd.localAnchorA.Set(0.0f, 4.0f); - jd.localAnchorB.SetZero(); - jd.localAxisA.Set(0.0f, 1.0f); - jd.lowerTranslation = -1.0f; - jd.upperTranslation = 1.0f; - - m_world->CreateJoint(&jd); - } - - // Small box - polygon.SetAsBox(1.0f, 0.5f); - b2FixtureDef boxShapeDef; - boxShapeDef.shape = &polygon; - boxShapeDef.density = 1.0f; - boxShapeDef.restitution = 0.1f; - - boxShapeDef.filter.groupIndex = k_smallGroup; - boxShapeDef.filter.categoryBits = k_boxCategory; - boxShapeDef.filter.maskBits = k_boxMask; - - b2BodyDef boxBodyDef; - boxBodyDef.type = b2_dynamicBody; - boxBodyDef.position.Set(0.0f, 2.0f); - - b2Body* body3 = m_world->CreateBody(&boxBodyDef); - body3->CreateFixture(&boxShapeDef); - - // Large box (recycle definitions) - polygon.SetAsBox(2.0f, 1.0f); - boxShapeDef.filter.groupIndex = k_largeGroup; - boxBodyDef.position.Set(0.0f, 6.0f); - - b2Body* body4 = m_world->CreateBody(&boxBodyDef); - body4->CreateFixture(&boxShapeDef); - - // Small circle - b2CircleShape circle; - circle.m_radius = 1.0f; - - b2FixtureDef circleShapeDef; - circleShapeDef.shape = &circle; - circleShapeDef.density = 1.0f; - - circleShapeDef.filter.groupIndex = k_smallGroup; - circleShapeDef.filter.categoryBits = k_circleCategory; - circleShapeDef.filter.maskBits = k_circleMask; - - b2BodyDef circleBodyDef; - circleBodyDef.type = b2_dynamicBody; - circleBodyDef.position.Set(5.0f, 2.0f); - - b2Body* body5 = m_world->CreateBody(&circleBodyDef); - body5->CreateFixture(&circleShapeDef); - - // Large circle - circle.m_radius *= 2.0f; - circleShapeDef.filter.groupIndex = k_largeGroup; - circleBodyDef.position.Set(5.0f, 6.0f); - - b2Body* body6 = m_world->CreateBody(&circleBodyDef); - body6->CreateFixture(&circleShapeDef); - } - - static Test* Create() - { - return new CollisionFiltering; - } -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/CollisionProcessing.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/CollisionProcessing.h deleted file mode 100644 index c8cc328..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/CollisionProcessing.h +++ /dev/null @@ -1,188 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef COLLISION_PROCESSING_H -#define COLLISION_PROCESSING_H - -#include - -// This test shows collision processing and tests -// deferred body destruction. -class CollisionProcessing : public Test -{ -public: - CollisionProcessing() - { - // Ground body - { - b2EdgeShape shape; - shape.Set(b2Vec2(-50.0f, 0.0f), b2Vec2(50.0f, 0.0f)); - - b2FixtureDef sd; - sd.shape = &shape;; - - b2BodyDef bd; - b2Body* ground = m_world->CreateBody(&bd); - ground->CreateFixture(&sd); - } - - float32 xLo = -5.0f, xHi = 5.0f; - float32 yLo = 2.0f, yHi = 35.0f; - - // Small triangle - b2Vec2 vertices[3]; - vertices[0].Set(-1.0f, 0.0f); - vertices[1].Set(1.0f, 0.0f); - vertices[2].Set(0.0f, 2.0f); - - b2PolygonShape polygon; - polygon.Set(vertices, 3); - - b2FixtureDef triangleShapeDef; - triangleShapeDef.shape = &polygon; - triangleShapeDef.density = 1.0f; - - b2BodyDef triangleBodyDef; - triangleBodyDef.type = b2_dynamicBody; - triangleBodyDef.position.Set(RandomFloat(xLo, xHi), RandomFloat(yLo, yHi)); - - b2Body* body1 = m_world->CreateBody(&triangleBodyDef); - body1->CreateFixture(&triangleShapeDef); - - // Large triangle (recycle definitions) - vertices[0] *= 2.0f; - vertices[1] *= 2.0f; - vertices[2] *= 2.0f; - polygon.Set(vertices, 3); - - triangleBodyDef.position.Set(RandomFloat(xLo, xHi), RandomFloat(yLo, yHi)); - - b2Body* body2 = m_world->CreateBody(&triangleBodyDef); - body2->CreateFixture(&triangleShapeDef); - - // Small box - polygon.SetAsBox(1.0f, 0.5f); - - b2FixtureDef boxShapeDef; - boxShapeDef.shape = &polygon; - boxShapeDef.density = 1.0f; - - b2BodyDef boxBodyDef; - boxBodyDef.type = b2_dynamicBody; - boxBodyDef.position.Set(RandomFloat(xLo, xHi), RandomFloat(yLo, yHi)); - - b2Body* body3 = m_world->CreateBody(&boxBodyDef); - body3->CreateFixture(&boxShapeDef); - - // Large box (recycle definitions) - polygon.SetAsBox(2.0f, 1.0f); - boxBodyDef.position.Set(RandomFloat(xLo, xHi), RandomFloat(yLo, yHi)); - - b2Body* body4 = m_world->CreateBody(&boxBodyDef); - body4->CreateFixture(&boxShapeDef); - - // Small circle - b2CircleShape circle; - circle.m_radius = 1.0f; - - b2FixtureDef circleShapeDef; - circleShapeDef.shape = &circle; - circleShapeDef.density = 1.0f; - - b2BodyDef circleBodyDef; - circleBodyDef.type = b2_dynamicBody; - circleBodyDef.position.Set(RandomFloat(xLo, xHi), RandomFloat(yLo, yHi)); - - b2Body* body5 = m_world->CreateBody(&circleBodyDef); - body5->CreateFixture(&circleShapeDef); - - // Large circle - circle.m_radius *= 2.0f; - circleBodyDef.position.Set(RandomFloat(xLo, xHi), RandomFloat(yLo, yHi)); - - b2Body* body6 = m_world->CreateBody(&circleBodyDef); - body6->CreateFixture(&circleShapeDef); - } - - void Step(Settings* settings) - { - Test::Step(settings); - - // We are going to destroy some bodies according to contact - // points. We must buffer the bodies that should be destroyed - // because they may belong to multiple contact points. - const int32 k_maxNuke = 6; - b2Body* nuke[k_maxNuke]; - int32 nukeCount = 0; - - // Traverse the contact results. Destroy bodies that - // are touching heavier bodies. - for (int32 i = 0; i < m_pointCount; ++i) - { - ContactPoint* point = m_points + i; - - b2Body* body1 = point->fixtureA->GetBody(); - b2Body* body2 = point->fixtureB->GetBody(); - float32 mass1 = body1->GetMass(); - float32 mass2 = body2->GetMass(); - - if (mass1 > 0.0f && mass2 > 0.0f) - { - if (mass2 > mass1) - { - nuke[nukeCount++] = body1; - } - else - { - nuke[nukeCount++] = body2; - } - - if (nukeCount == k_maxNuke) - { - break; - } - } - } - - // Sort the nuke array to group duplicates. - std::sort(nuke, nuke + nukeCount); - - // Destroy the bodies, skipping duplicates. - int32 i = 0; - while (i < nukeCount) - { - b2Body* b = nuke[i++]; - while (i < nukeCount && nuke[i] == b) - { - ++i; - } - - if (b != m_bomb) - { - m_world->DestroyBody(b); - } - } - } - - static Test* Create() - { - return new CollisionProcessing; - } -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/CompoundShapes.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/CompoundShapes.h deleted file mode 100644 index bc14e88..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/CompoundShapes.h +++ /dev/null @@ -1,143 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef COMPOUND_SHAPES_H -#define COMPOUND_SHAPES_H - -// TODO_ERIN test joints on compounds. -class CompoundShapes : public Test -{ -public: - CompoundShapes() - { - { - b2BodyDef bd; - bd.position.Set(0.0f, 0.0f); - b2Body* body = m_world->CreateBody(&bd); - - b2EdgeShape shape; - shape.Set(b2Vec2(50.0f, 0.0f), b2Vec2(-50.0f, 0.0f)); - - body->CreateFixture(&shape, 0.0f); - } - - { - b2CircleShape circle1; - circle1.m_radius = 0.5f; - circle1.m_p.Set(-0.5f, 0.5f); - - b2CircleShape circle2; - circle2.m_radius = 0.5f; - circle2.m_p.Set(0.5f, 0.5f); - - for (int i = 0; i < 10; ++i) - { - float32 x = RandomFloat(-0.1f, 0.1f); - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(x + 5.0f, 1.05f + 2.5f * i); - bd.angle = RandomFloat(-b2_pi, b2_pi); - b2Body* body = m_world->CreateBody(&bd); - body->CreateFixture(&circle1, 2.0f); - body->CreateFixture(&circle2, 0.0f); - } - } - - { - b2PolygonShape polygon1; - polygon1.SetAsBox(0.25f, 0.5f); - - b2PolygonShape polygon2; - polygon2.SetAsBox(0.25f, 0.5f, b2Vec2(0.0f, -0.5f), 0.5f * b2_pi); - - for (int i = 0; i < 10; ++i) - { - float32 x = RandomFloat(-0.1f, 0.1f); - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(x - 5.0f, 1.05f + 2.5f * i); - bd.angle = RandomFloat(-b2_pi, b2_pi); - b2Body* body = m_world->CreateBody(&bd); - body->CreateFixture(&polygon1, 2.0f); - body->CreateFixture(&polygon2, 2.0f); - } - } - - { - b2Transform xf1; - xf1.q.Set(0.3524f * b2_pi); - xf1.p = xf1.q.GetXAxis(); - - b2Vec2 vertices[3]; - - b2PolygonShape triangle1; - vertices[0] = b2Mul(xf1, b2Vec2(-1.0f, 0.0f)); - vertices[1] = b2Mul(xf1, b2Vec2(1.0f, 0.0f)); - vertices[2] = b2Mul(xf1, b2Vec2(0.0f, 0.5f)); - triangle1.Set(vertices, 3); - - b2Transform xf2; - xf2.q.Set(-0.3524f * b2_pi); - xf2.p = -xf2.q.GetXAxis(); - - b2PolygonShape triangle2; - vertices[0] = b2Mul(xf2, b2Vec2(-1.0f, 0.0f)); - vertices[1] = b2Mul(xf2, b2Vec2(1.0f, 0.0f)); - vertices[2] = b2Mul(xf2, b2Vec2(0.0f, 0.5f)); - triangle2.Set(vertices, 3); - - for (int32 i = 0; i < 10; ++i) - { - float32 x = RandomFloat(-0.1f, 0.1f); - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(x, 2.05f + 2.5f * i); - bd.angle = 0.0f; - b2Body* body = m_world->CreateBody(&bd); - body->CreateFixture(&triangle1, 2.0f); - body->CreateFixture(&triangle2, 2.0f); - } - } - - { - b2PolygonShape bottom; - bottom.SetAsBox( 1.5f, 0.15f ); - - b2PolygonShape left; - left.SetAsBox(0.15f, 2.7f, b2Vec2(-1.45f, 2.35f), 0.2f); - - b2PolygonShape right; - right.SetAsBox(0.15f, 2.7f, b2Vec2(1.45f, 2.35f), -0.2f); - - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set( 0.0f, 2.0f ); - b2Body* body = m_world->CreateBody(&bd); - body->CreateFixture(&bottom, 4.0f); - body->CreateFixture(&left, 4.0f); - body->CreateFixture(&right, 4.0f); - } - } - - static Test* Create() - { - return new CompoundShapes; - } -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Confined.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Confined.h deleted file mode 100644 index 22b25a6..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Confined.h +++ /dev/null @@ -1,167 +0,0 @@ -/* -* Copyright (c) 2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef CONFINED_H -#define CONFINED_H - -class Confined : public Test -{ -public: - - enum - { - e_columnCount = 0, - e_rowCount = 0 - }; - - Confined() - { - { - b2BodyDef bd; - b2Body* ground = m_world->CreateBody(&bd); - - b2EdgeShape shape; - - // Floor - shape.Set(b2Vec2(-10.0f, 0.0f), b2Vec2(10.0f, 0.0f)); - ground->CreateFixture(&shape, 0.0f); - - // Left wall - shape.Set(b2Vec2(-10.0f, 0.0f), b2Vec2(-10.0f, 20.0f)); - ground->CreateFixture(&shape, 0.0f); - - // Right wall - shape.Set(b2Vec2(10.0f, 0.0f), b2Vec2(10.0f, 20.0f)); - ground->CreateFixture(&shape, 0.0f); - - // Roof - shape.Set(b2Vec2(-10.0f, 20.0f), b2Vec2(10.0f, 20.0f)); - ground->CreateFixture(&shape, 0.0f); - } - - float32 radius = 0.5f; - b2CircleShape shape; - shape.m_p.SetZero(); - shape.m_radius = radius; - - b2FixtureDef fd; - fd.shape = &shape; - fd.density = 1.0f; - fd.friction = 0.1f; - - for (int32 j = 0; j < e_columnCount; ++j) - { - for (int i = 0; i < e_rowCount; ++i) - { - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(-10.0f + (2.1f * j + 1.0f + 0.01f * i) * radius, (2.0f * i + 1.0f) * radius); - b2Body* body = m_world->CreateBody(&bd); - - body->CreateFixture(&fd); - } - } - - m_world->SetGravity(b2Vec2(0.0f, 0.0f)); - } - - void CreateCircle() - { - float32 radius = 2.0f; - b2CircleShape shape; - shape.m_p.SetZero(); - shape.m_radius = radius; - - b2FixtureDef fd; - fd.shape = &shape; - fd.density = 1.0f; - fd.friction = 0.0f; - - b2Vec2 p(RandomFloat(), 3.0f + RandomFloat()); - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position = p; - //bd.allowSleep = false; - b2Body* body = m_world->CreateBody(&bd); - - body->CreateFixture(&fd); - } - - void Keyboard(unsigned char key) - { - switch (key) - { - case 'c': - CreateCircle(); - break; - } - } - - void Step(Settings* settings) - { - bool sleeping = true; - for (b2Body* b = m_world->GetBodyList(); b; b = b->GetNext()) - { - if (b->GetType() != b2_dynamicBody) - { - continue; - } - - if (b->IsAwake()) - { - sleeping = false; - } - } - - if (m_stepCount == 180) - { - m_stepCount += 0; - } - - //if (sleeping) - //{ - // CreateCircle(); - //} - - Test::Step(settings); - - for (b2Body* b = m_world->GetBodyList(); b; b = b->GetNext()) - { - if (b->GetType() != b2_dynamicBody) - { - continue; - } - - b2Vec2 p = b->GetPosition(); - if (p.x <= -10.0f || 10.0f <= p.x || p.y <= 0.0f || 20.0f <= p.y) - { - p.x += 0.0f; - } - } - - m_debugDraw.DrawString(5, m_textLine, "Press 'c' to create a circle."); - m_textLine += DRAW_STRING_NEW_LINE; - } - - static Test* Create() - { - return new Confined; - } -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/ContinuousTest.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/ContinuousTest.h deleted file mode 100644 index 46b7a49..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/ContinuousTest.h +++ /dev/null @@ -1,157 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef CONTINUOUS_TEST_H -#define CONTINUOUS_TEST_H - -class ContinuousTest : public Test -{ -public: - - ContinuousTest() - { - { - b2BodyDef bd; - bd.position.Set(0.0f, 0.0f); - b2Body* body = m_world->CreateBody(&bd); - - b2EdgeShape edge; - - edge.Set(b2Vec2(-10.0f, 0.0f), b2Vec2(10.0f, 0.0f)); - body->CreateFixture(&edge, 0.0f); - - b2PolygonShape shape; - shape.SetAsBox(0.2f, 1.0f, b2Vec2(0.5f, 1.0f), 0.0f); - body->CreateFixture(&shape, 0.0f); - } - -#if 1 - { - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(0.0f, 20.0f); - //bd.angle = 0.1f; - - b2PolygonShape shape; - shape.SetAsBox(2.0f, 0.1f); - - m_body = m_world->CreateBody(&bd); - m_body->CreateFixture(&shape, 1.0f); - - m_angularVelocity = RandomFloat(-50.0f, 50.0f); - //m_angularVelocity = 46.661274f; - m_body->SetLinearVelocity(b2Vec2(0.0f, -100.0f)); - m_body->SetAngularVelocity(m_angularVelocity); - } -#else - { - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(0.0f, 2.0f); - b2Body* body = m_world->CreateBody(&bd); - - b2CircleShape shape; - shape.m_p.SetZero(); - shape.m_radius = 0.5f; - body->CreateFixture(&shape, 1.0f); - - bd.bullet = true; - bd.position.Set(0.0f, 10.0f); - body = m_world->CreateBody(&bd); - body->CreateFixture(&shape, 1.0f); - body->SetLinearVelocity(b2Vec2(0.0f, -100.0f)); - } -#endif - - extern int32 b2_gjkCalls, b2_gjkIters, b2_gjkMaxIters; - extern int32 b2_toiCalls, b2_toiIters; - extern int32 b2_toiRootIters, b2_toiMaxRootIters; - extern float32 b2_toiTime, b2_toiMaxTime; - - b2_gjkCalls = 0; b2_gjkIters = 0; b2_gjkMaxIters = 0; - b2_toiCalls = 0; b2_toiIters = 0; - b2_toiRootIters = 0; b2_toiMaxRootIters = 0; - b2_toiTime = 0.0f; b2_toiMaxTime = 0.0f; - } - - void Launch() - { - extern int32 b2_gjkCalls, b2_gjkIters, b2_gjkMaxIters; - extern int32 b2_toiCalls, b2_toiIters; - extern int32 b2_toiRootIters, b2_toiMaxRootIters; - extern float32 b2_toiTime, b2_toiMaxTime; - - b2_gjkCalls = 0; b2_gjkIters = 0; b2_gjkMaxIters = 0; - b2_toiCalls = 0; b2_toiIters = 0; - b2_toiRootIters = 0; b2_toiMaxRootIters = 0; - b2_toiTime = 0.0f; b2_toiMaxTime = 0.0f; - - m_body->SetTransform(b2Vec2(0.0f, 20.0f), 0.0f); - m_angularVelocity = RandomFloat(-50.0f, 50.0f); - m_body->SetLinearVelocity(b2Vec2(0.0f, -100.0f)); - m_body->SetAngularVelocity(m_angularVelocity); - } - - void Step(Settings* settings) - { - Test::Step(settings); - - extern int32 b2_gjkCalls, b2_gjkIters, b2_gjkMaxIters; - - if (b2_gjkCalls > 0) - { - m_debugDraw.DrawString(5, m_textLine, "gjk calls = %d, ave gjk iters = %3.1f, max gjk iters = %d", - b2_gjkCalls, b2_gjkIters / float32(b2_gjkCalls), b2_gjkMaxIters); - m_textLine += DRAW_STRING_NEW_LINE; - } - - extern int32 b2_toiCalls, b2_toiIters; - extern int32 b2_toiRootIters, b2_toiMaxRootIters; - extern float32 b2_toiTime, b2_toiMaxTime; - - if (b2_toiCalls > 0) - { - m_debugDraw.DrawString(5, m_textLine, "toi calls = %d, ave [max] toi iters = %3.1f [%d]", - b2_toiCalls, b2_toiIters / float32(b2_toiCalls), b2_toiMaxRootIters); - m_textLine += DRAW_STRING_NEW_LINE; - - m_debugDraw.DrawString(5, m_textLine, "ave [max] toi root iters = %3.1f [%d]", - b2_toiRootIters / float32(b2_toiCalls), b2_toiMaxRootIters); - m_textLine += DRAW_STRING_NEW_LINE; - - m_debugDraw.DrawString(5, m_textLine, "ave [max] toi time = %.1f [%.1f] (microseconds)", - 1000.0f * b2_toiTime / float32(b2_toiCalls), 1000.0f * b2_toiMaxTime); - m_textLine += DRAW_STRING_NEW_LINE; - } - - if (m_stepCount % 60 == 0) - { - //Launch(); - } - } - - static Test* Create() - { - return new ContinuousTest; - } - - b2Body* m_body; - float32 m_angularVelocity; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/ConvexHull.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/ConvexHull.h deleted file mode 100644 index 0f0ae23..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/ConvexHull.h +++ /dev/null @@ -1,116 +0,0 @@ -/* -* Copyright (c) 2011 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef CONVEX_HULL_H -#define CONVEX_HULL_H - -class ConvexHull : public Test -{ -public: - enum - { - e_count = b2_maxPolygonVertices - }; - - ConvexHull() - { - Generate(); - m_auto = false; - } - - void Generate() - { - b2Vec2 lowerBound(-8.0f, -8.0f); - b2Vec2 upperBound(8.0f, 8.0f); - - for (int32 i = 0; i < e_count; ++i) - { - float32 x = 10.0f * RandomFloat(); - float32 y = 10.0f * RandomFloat(); - - // Clamp onto a square to help create collinearities. - // This will stress the convex hull algorithm. - b2Vec2 v(x, y); - v = b2Clamp(v, lowerBound, upperBound); - m_points[i] = v; - } - - m_count = e_count; - - m_points[0].Set( -1.70082211f, -1.43221712f ); - m_points[1].Set( 0.5f, -0.5f ); - m_points[2].Set( 0.104992867f, 0.97400856f ); - m_points[3].Set( -0.658002853f, 0.926608086f ); - m_points[4].Set( -0.994554818f, 0.165337861f ); - m_count = 5; - } - - static Test* Create() - { - return new ConvexHull; - } - - void Keyboard(unsigned char key) - { - switch (key) - { - case 'a': - m_auto = !m_auto; - break; - - case 'g': - Generate(); - break; - } - } - - void Step(Settings* settings) - { - Test::Step(settings); - - b2PolygonShape shape; - shape.Set(m_points, m_count); - - m_debugDraw.DrawString(5, m_textLine, "Press g to generate a new random convex hull"); - m_textLine += DRAW_STRING_NEW_LINE; - - m_debugDraw.DrawPolygon(shape.m_vertices, shape.m_count, b2Color(0.9f, 0.9f, 0.9f)); - - for (int32 i = 0; i < m_count; ++i) - { - m_debugDraw.DrawPoint(m_points[i], 2.0f, b2Color(0.9f, 0.5f, 0.5f)); - m_debugDraw.DrawString(m_points[i] + b2Vec2(0.05f, 0.05f), "%d", i); - } - - if (shape.Validate() == false) - { - m_textLine += 0; - } - - if (m_auto) - { - Generate(); - } - } - - b2Vec2 m_points[b2_maxPolygonVertices]; - int32 m_count; - bool m_auto; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/ConveyorBelt.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/ConveyorBelt.h deleted file mode 100644 index 1cacc08..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/ConveyorBelt.h +++ /dev/null @@ -1,98 +0,0 @@ -/* -* Copyright (c) 2011 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef CONVEYOR_BELT_H -#define CONVEYOR_BELT_H - -class ConveyorBelt : public Test -{ -public: - - ConveyorBelt() - { - // Ground - { - b2BodyDef bd; - b2Body* ground = m_world->CreateBody(&bd); - - b2EdgeShape shape; - shape.Set(b2Vec2(-20.0f, 0.0f), b2Vec2(20.0f, 0.0f)); - ground->CreateFixture(&shape, 0.0f); - } - - // Platform - { - b2BodyDef bd; - bd.position.Set(-5.0f, 5.0f); - b2Body* body = m_world->CreateBody(&bd); - - b2PolygonShape shape; - shape.SetAsBox(10.0f, 0.5f); - - b2FixtureDef fd; - fd.shape = &shape; - fd.friction = 0.8f; - m_platform = body->CreateFixture(&fd); - } - - // Boxes - for (int32 i = 0; i < 5; ++i) - { - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(-10.0f + 2.0f * i, 7.0f); - b2Body* body = m_world->CreateBody(&bd); - - b2PolygonShape shape; - shape.SetAsBox(0.5f, 0.5f); - body->CreateFixture(&shape, 20.0f); - } - } - - void PreSolve(b2Contact* contact, const b2Manifold* oldManifold) - { - Test::PreSolve(contact, oldManifold); - - b2Fixture* fixtureA = contact->GetFixtureA(); - b2Fixture* fixtureB = contact->GetFixtureB(); - - if (fixtureA == m_platform) - { - contact->SetTangentSpeed(5.0f); - } - - if (fixtureB == m_platform) - { - contact->SetTangentSpeed(-5.0f); - } - } - - void Step(Settings* settings) - { - Test::Step(settings); - } - - static Test* Create() - { - return new ConveyorBelt; - } - - b2Fixture* m_platform; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/DistanceTest.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/DistanceTest.h deleted file mode 100644 index de8c720..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/DistanceTest.h +++ /dev/null @@ -1,135 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef DISTANCE_TEST_H -#define DISTANCE_TEST_H - -class DistanceTest : public Test -{ -public: - DistanceTest() - { - { - m_transformA.SetIdentity(); - m_transformA.p.Set(0.0f, -0.2f); - m_polygonA.SetAsBox(10.0f, 0.2f); - } - - { - m_positionB.Set(12.017401f, 0.13678508f); - m_angleB = -0.0109265f; - m_transformB.Set(m_positionB, m_angleB); - - m_polygonB.SetAsBox(2.0f, 0.1f); - } - } - - static Test* Create() - { - return new DistanceTest; - } - - void Step(Settings* settings) - { - Test::Step(settings); - - b2DistanceInput input; - input.proxyA.Set(&m_polygonA, 0); - input.proxyB.Set(&m_polygonB, 0); - input.transformA = m_transformA; - input.transformB = m_transformB; - input.useRadii = true; - b2SimplexCache cache; - cache.count = 0; - b2DistanceOutput output; - b2Distance(&output, &cache, &input); - - m_debugDraw.DrawString(5, m_textLine, "distance = %g", output.distance); - m_textLine += DRAW_STRING_NEW_LINE; - - m_debugDraw.DrawString(5, m_textLine, "iterations = %d", output.iterations); - m_textLine += DRAW_STRING_NEW_LINE; - - { - b2Color color(0.9f, 0.9f, 0.9f); - b2Vec2 v[b2_maxPolygonVertices]; - for (int32 i = 0; i < m_polygonA.m_count; ++i) - { - v[i] = b2Mul(m_transformA, m_polygonA.m_vertices[i]); - } - m_debugDraw.DrawPolygon(v, m_polygonA.m_count, color); - - for (int32 i = 0; i < m_polygonB.m_count; ++i) - { - v[i] = b2Mul(m_transformB, m_polygonB.m_vertices[i]); - } - m_debugDraw.DrawPolygon(v, m_polygonB.m_count, color); - } - - b2Vec2 x1 = output.pointA; - b2Vec2 x2 = output.pointB; - - b2Color c1(1.0f, 0.0f, 0.0f); - m_debugDraw.DrawPoint(x1, 4.0f, c1); - - b2Color c2(1.0f, 1.0f, 0.0f); - m_debugDraw.DrawPoint(x2, 4.0f, c2); - } - - void Keyboard(unsigned char key) - { - switch (key) - { - case 'a': - m_positionB.x -= 0.1f; - break; - - case 'd': - m_positionB.x += 0.1f; - break; - - case 's': - m_positionB.y -= 0.1f; - break; - - case 'w': - m_positionB.y += 0.1f; - break; - - case 'q': - m_angleB += 0.1f * b2_pi; - break; - - case 'e': - m_angleB -= 0.1f * b2_pi; - break; - } - - m_transformB.Set(m_positionB, m_angleB); - } - - b2Vec2 m_positionB; - float32 m_angleB; - - b2Transform m_transformA; - b2Transform m_transformB; - b2PolygonShape m_polygonA; - b2PolygonShape m_polygonB; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Dominos.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Dominos.h deleted file mode 100644 index 01e8bbd..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Dominos.h +++ /dev/null @@ -1,215 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef DOMINOS_H -#define DOMINOS_H - -class Dominos : public Test -{ -public: - - Dominos() - { - b2Body* b1; - { - b2EdgeShape shape; - shape.Set(b2Vec2(-40.0f, 0.0f), b2Vec2(40.0f, 0.0f)); - - b2BodyDef bd; - b1 = m_world->CreateBody(&bd); - b1->CreateFixture(&shape, 0.0f); - } - - { - b2PolygonShape shape; - shape.SetAsBox(6.0f, 0.25f); - - b2BodyDef bd; - bd.position.Set(-1.5f, 10.0f); - b2Body* ground = m_world->CreateBody(&bd); - ground->CreateFixture(&shape, 0.0f); - } - - { - b2PolygonShape shape; - shape.SetAsBox(0.1f, 1.0f); - - b2FixtureDef fd; - fd.shape = &shape; - fd.density = 20.0f; - fd.friction = 0.1f; - - for (int i = 0; i < 10; ++i) - { - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(-6.0f + 1.0f * i, 11.25f); - b2Body* body = m_world->CreateBody(&bd); - body->CreateFixture(&fd); - } - } - - { - b2PolygonShape shape; - shape.SetAsBox(7.0f, 0.25f, b2Vec2_zero, 0.3f); - - b2BodyDef bd; - bd.position.Set(1.0f, 6.0f); - b2Body* ground = m_world->CreateBody(&bd); - ground->CreateFixture(&shape, 0.0f); - } - - b2Body* b2; - { - b2PolygonShape shape; - shape.SetAsBox(0.25f, 1.5f); - - b2BodyDef bd; - bd.position.Set(-7.0f, 4.0f); - b2 = m_world->CreateBody(&bd); - b2->CreateFixture(&shape, 0.0f); - } - - b2Body* b3; - { - b2PolygonShape shape; - shape.SetAsBox(6.0f, 0.125f); - - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(-0.9f, 1.0f); - bd.angle = -0.15f; - - b3 = m_world->CreateBody(&bd); - b3->CreateFixture(&shape, 10.0f); - } - - b2RevoluteJointDef jd; - b2Vec2 anchor; - - anchor.Set(-2.0f, 1.0f); - jd.Initialize(b1, b3, anchor); - jd.collideConnected = true; - m_world->CreateJoint(&jd); - - b2Body* b4; - { - b2PolygonShape shape; - shape.SetAsBox(0.25f, 0.25f); - - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(-10.0f, 15.0f); - b4 = m_world->CreateBody(&bd); - b4->CreateFixture(&shape, 10.0f); - } - - anchor.Set(-7.0f, 15.0f); - jd.Initialize(b2, b4, anchor); - m_world->CreateJoint(&jd); - - b2Body* b5; - { - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(6.5f, 3.0f); - b5 = m_world->CreateBody(&bd); - - b2PolygonShape shape; - b2FixtureDef fd; - - fd.shape = &shape; - fd.density = 10.0f; - fd.friction = 0.1f; - - shape.SetAsBox(1.0f, 0.1f, b2Vec2(0.0f, -0.9f), 0.0f); - b5->CreateFixture(&fd); - - shape.SetAsBox(0.1f, 1.0f, b2Vec2(-0.9f, 0.0f), 0.0f); - b5->CreateFixture(&fd); - - shape.SetAsBox(0.1f, 1.0f, b2Vec2(0.9f, 0.0f), 0.0f); - b5->CreateFixture(&fd); - } - - anchor.Set(6.0f, 2.0f); - jd.Initialize(b1, b5, anchor); - m_world->CreateJoint(&jd); - - b2Body* b6; - { - b2PolygonShape shape; - shape.SetAsBox(1.0f, 0.1f); - - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(6.5f, 4.1f); - b6 = m_world->CreateBody(&bd); - b6->CreateFixture(&shape, 30.0f); - } - - anchor.Set(7.5f, 4.0f); - jd.Initialize(b5, b6, anchor); - m_world->CreateJoint(&jd); - - b2Body* b7; - { - b2PolygonShape shape; - shape.SetAsBox(0.1f, 1.0f); - - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(7.4f, 1.0f); - - b7 = m_world->CreateBody(&bd); - b7->CreateFixture(&shape, 10.0f); - } - - b2DistanceJointDef djd; - djd.bodyA = b3; - djd.bodyB = b7; - djd.localAnchorA.Set(6.0f, 0.0f); - djd.localAnchorB.Set(0.0f, -1.0f); - b2Vec2 d = djd.bodyB->GetWorldPoint(djd.localAnchorB) - djd.bodyA->GetWorldPoint(djd.localAnchorA); - djd.length = d.Length(); - m_world->CreateJoint(&djd); - - { - float32 radius = 0.2f; - - b2CircleShape shape; - shape.m_radius = radius; - - for (int32 i = 0; i < 4; ++i) - { - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(5.9f + 2.0f * radius * i, 2.4f); - b2Body* body = m_world->CreateBody(&bd); - body->CreateFixture(&shape, 10.0f); - } - } - } - - static Test* Create() - { - return new Dominos; - } -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/DumpShell.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/DumpShell.h deleted file mode 100644 index 32adee3..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/DumpShell.h +++ /dev/null @@ -1,175 +0,0 @@ -/* -* Copyright (c) 2011 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef DUMP_SHELL_H -#define DUMP_SHELL_H - -// This test holds worlds dumped using b2World::Dump. -class DumpShell : public Test -{ -public: - - DumpShell() - { - //Source code dump of Box2D scene: issue304-minimal-case.rube - // - // Created by R.U.B.E 1.3.0 - // Using Box2D version 2.3.0 - // Wed April 3 2013 04:33:28 - // - // This code is originally intended for use in the Box2D testbed, - // but you can easily use it in other applications by providing - // a b2World for use as the 'm_world' variable in the code below. - - b2Vec2 g(0.000000000000000e+00f, -1.000000000000000e+01f); - m_world->SetGravity(g); - b2Body** bodies = (b2Body**)b2Alloc(3 * sizeof(b2Body*)); - b2Joint** joints = (b2Joint**)b2Alloc(0 * sizeof(b2Joint*)); - { - b2BodyDef bd; - bd.type = b2BodyType(0); - bd.position.Set(2.587699890136719e-02f, 5.515012264251709e+00f); - bd.angle = 0.000000000000000e+00f; - bd.linearVelocity.Set(0.000000000000000e+00f, 0.000000000000000e+00f); - bd.angularVelocity = 0.000000000000000e+00f; - bd.linearDamping = 0.000000000000000e+00f; - bd.angularDamping = 0.000000000000000e+00f; - bd.allowSleep = bool(4); - bd.awake = bool(2); - bd.fixedRotation = bool(0); - bd.bullet = bool(0); - bd.active = bool(32); - bd.gravityScale = 1.000000000000000e+00f; - bodies[0] = m_world->CreateBody(&bd); - - { - b2FixtureDef fd; - fd.friction = 2.000000029802322e-01f; - fd.restitution = 0.000000000000000e+00f; - fd.density = 1.000000000000000e+00f; - fd.isSensor = bool(0); - fd.filter.categoryBits = uint16(1); - fd.filter.maskBits = uint16(65535); - fd.filter.groupIndex = int16(0); - b2PolygonShape shape; - b2Vec2 vs[8]; - vs[0].Set(7.733039855957031e-01f, -1.497260034084320e-01f); - vs[1].Set(-4.487270116806030e-01f, 1.138330027461052e-01f); - vs[2].Set(-1.880589962005615e+00f, -1.365900039672852e-01f); - vs[3].Set(3.972740173339844e-01f, -3.897832870483398e+00f); - shape.Set(vs, 4); - - fd.shape = &shape; - - bodies[0]->CreateFixture(&fd); - } - } - { - b2BodyDef bd; - bd.type = b2BodyType(2); - bd.position.Set(-3.122138977050781e-02f, 7.535382270812988e+00f); - bd.angle = -1.313644275069237e-02f; - bd.linearVelocity.Set(8.230687379837036e-01f, 7.775862514972687e-02f); - bd.angularVelocity = 3.705333173274994e-02f; - bd.linearDamping = 0.000000000000000e+00f; - bd.angularDamping = 0.000000000000000e+00f; - bd.allowSleep = bool(4); - bd.awake = bool(2); - bd.fixedRotation = bool(0); - bd.bullet = bool(0); - bd.active = bool(32); - bd.gravityScale = 1.000000000000000e+00f; - bodies[1] = m_world->CreateBody(&bd); - - { - b2FixtureDef fd; - fd.friction = 5.000000000000000e-01f; - fd.restitution = 0.000000000000000e+00f; - fd.density = 5.000000000000000e+00f; - fd.isSensor = bool(0); - fd.filter.categoryBits = uint16(1); - fd.filter.maskBits = uint16(65535); - fd.filter.groupIndex = int16(0); - b2PolygonShape shape; - b2Vec2 vs[8]; - vs[0].Set(3.473900079727173e+00f, -2.009889930486679e-01f); - vs[1].Set(3.457079887390137e+00f, 3.694039955735207e-02f); - vs[2].Set(-3.116359949111938e+00f, 2.348500071093440e-03f); - vs[3].Set(-3.109960079193115e+00f, -3.581250011920929e-01f); - vs[4].Set(-2.590820074081421e+00f, -5.472509860992432e-01f); - vs[5].Set(2.819370031356812e+00f, -5.402340292930603e-01f); - shape.Set(vs, 6); - - fd.shape = &shape; - - bodies[1]->CreateFixture(&fd); - } - } - { - b2BodyDef bd; - bd.type = b2BodyType(2); - bd.position.Set(-7.438077926635742e-01f, 6.626811981201172e+00f); - bd.angle = -1.884713363647461e+01f; - bd.linearVelocity.Set(1.785794943571091e-01f, 3.799796104431152e-07f); - bd.angularVelocity = -5.908820639888290e-06f; - bd.linearDamping = 0.000000000000000e+00f; - bd.angularDamping = 0.000000000000000e+00f; - bd.allowSleep = bool(4); - bd.awake = bool(2); - bd.fixedRotation = bool(0); - bd.bullet = bool(0); - bd.active = bool(32); - bd.gravityScale = 1.000000000000000e+00f; - bodies[2] = m_world->CreateBody(&bd); - - { - b2FixtureDef fd; - fd.friction = 9.499999880790710e-01f; - fd.restitution = 0.000000000000000e+00f; - fd.density = 1.000000000000000e+01f; - fd.isSensor = bool(0); - fd.filter.categoryBits = uint16(1); - fd.filter.maskBits = uint16(65535); - fd.filter.groupIndex = int16(-3); - b2PolygonShape shape; - b2Vec2 vs[8]; - vs[0].Set(1.639146506786346e-01f, 4.428443685173988e-02f); - vs[1].Set(-1.639146655797958e-01f, 4.428443685173988e-02f); - vs[2].Set(-1.639146655797958e-01f, -4.428443312644958e-02f); - vs[3].Set(1.639146357774734e-01f, -4.428444057703018e-02f); - shape.Set(vs, 4); - - fd.shape = &shape; - - bodies[2]->CreateFixture(&fd); - } - } - b2Free(joints); - b2Free(bodies); - joints = NULL; - bodies = NULL; - - } - - static Test* Create() - { - return new DumpShell; - } -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/DynamicTreeTest.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/DynamicTreeTest.h deleted file mode 100644 index 7816316..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/DynamicTreeTest.h +++ /dev/null @@ -1,357 +0,0 @@ -/* -* Copyright (c) 2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef DYNAMIC_TREE_TEST_H -#define DYNAMIC_TREE_TEST_H - -class DynamicTreeTest : public Test -{ -public: - - enum - { - e_actorCount = 128 - }; - - DynamicTreeTest() - { - m_worldExtent = 15.0f; - m_proxyExtent = 0.5f; - - srand(888); - - for (int32 i = 0; i < e_actorCount; ++i) - { - Actor* actor = m_actors + i; - GetRandomAABB(&actor->aabb); - actor->proxyId = m_tree.CreateProxy(actor->aabb, actor); - } - - m_stepCount = 0; - - float32 h = m_worldExtent; - m_queryAABB.lowerBound.Set(-3.0f, -4.0f + h); - m_queryAABB.upperBound.Set(5.0f, 6.0f + h); - - m_rayCastInput.p1.Set(-5.0, 5.0f + h); - m_rayCastInput.p2.Set(7.0f, -4.0f + h); - //m_rayCastInput.p1.Set(0.0f, 2.0f + h); - //m_rayCastInput.p2.Set(0.0f, -2.0f + h); - m_rayCastInput.maxFraction = 1.0f; - - m_automated = false; - } - - static Test* Create() - { - return new DynamicTreeTest; - } - - void Step(Settings* settings) - { - B2_NOT_USED(settings); - - m_rayActor = NULL; - for (int32 i = 0; i < e_actorCount; ++i) - { - m_actors[i].fraction = 1.0f; - m_actors[i].overlap = false; - } - - if (m_automated == true) - { - int32 actionCount = b2Max(1, e_actorCount >> 2); - - for (int32 i = 0; i < actionCount; ++i) - { - Action(); - } - } - - Query(); - RayCast(); - - for (int32 i = 0; i < e_actorCount; ++i) - { - Actor* actor = m_actors + i; - if (actor->proxyId == b2_nullNode) - continue; - - b2Color c(0.9f, 0.9f, 0.9f); - if (actor == m_rayActor && actor->overlap) - { - c.Set(0.9f, 0.6f, 0.6f); - } - else if (actor == m_rayActor) - { - c.Set(0.6f, 0.9f, 0.6f); - } - else if (actor->overlap) - { - c.Set(0.6f, 0.6f, 0.9f); - } - - m_debugDraw.DrawAABB(&actor->aabb, c); - } - - b2Color c(0.7f, 0.7f, 0.7f); - m_debugDraw.DrawAABB(&m_queryAABB, c); - - m_debugDraw.DrawSegment(m_rayCastInput.p1, m_rayCastInput.p2, c); - - b2Color c1(0.2f, 0.9f, 0.2f); - b2Color c2(0.9f, 0.2f, 0.2f); - m_debugDraw.DrawPoint(m_rayCastInput.p1, 6.0f, c1); - m_debugDraw.DrawPoint(m_rayCastInput.p2, 6.0f, c2); - - if (m_rayActor) - { - b2Color cr(0.2f, 0.2f, 0.9f); - b2Vec2 p = m_rayCastInput.p1 + m_rayActor->fraction * (m_rayCastInput.p2 - m_rayCastInput.p1); - m_debugDraw.DrawPoint(p, 6.0f, cr); - } - - { - int32 height = m_tree.GetHeight(); - m_debugDraw.DrawString(5, m_textLine, "dynamic tree height = %d", height); - m_textLine += DRAW_STRING_NEW_LINE; - } - - ++m_stepCount; - } - - void Keyboard(unsigned char key) - { - switch (key) - { - case 'a': - m_automated = !m_automated; - break; - - case 'c': - CreateProxy(); - break; - - case 'd': - DestroyProxy(); - break; - - case 'm': - MoveProxy(); - break; - } - } - - bool QueryCallback(int32 proxyId) - { - Actor* actor = (Actor*)m_tree.GetUserData(proxyId); - actor->overlap = b2TestOverlap(m_queryAABB, actor->aabb); - return true; - } - - float32 RayCastCallback(const b2RayCastInput& input, int32 proxyId) - { - Actor* actor = (Actor*)m_tree.GetUserData(proxyId); - - b2RayCastOutput output; - bool hit = actor->aabb.RayCast(&output, input); - - if (hit) - { - m_rayCastOutput = output; - m_rayActor = actor; - m_rayActor->fraction = output.fraction; - return output.fraction; - } - - return input.maxFraction; - } - -private: - - struct Actor - { - b2AABB aabb; - float32 fraction; - bool overlap; - int32 proxyId; - }; - - void GetRandomAABB(b2AABB* aabb) - { - b2Vec2 w; w.Set(2.0f * m_proxyExtent, 2.0f * m_proxyExtent); - //aabb->lowerBound.x = -m_proxyExtent; - //aabb->lowerBound.y = -m_proxyExtent + m_worldExtent; - aabb->lowerBound.x = RandomFloat(-m_worldExtent, m_worldExtent); - aabb->lowerBound.y = RandomFloat(0.0f, 2.0f * m_worldExtent); - aabb->upperBound = aabb->lowerBound + w; - } - - void MoveAABB(b2AABB* aabb) - { - b2Vec2 d; - d.x = RandomFloat(-0.5f, 0.5f); - d.y = RandomFloat(-0.5f, 0.5f); - //d.x = 2.0f; - //d.y = 0.0f; - aabb->lowerBound += d; - aabb->upperBound += d; - - b2Vec2 c0 = 0.5f * (aabb->lowerBound + aabb->upperBound); - b2Vec2 min; min.Set(-m_worldExtent, 0.0f); - b2Vec2 max; max.Set(m_worldExtent, 2.0f * m_worldExtent); - b2Vec2 c = b2Clamp(c0, min, max); - - aabb->lowerBound += c - c0; - aabb->upperBound += c - c0; - } - - void CreateProxy() - { - for (int32 i = 0; i < e_actorCount; ++i) - { - int32 j = rand() % e_actorCount; - Actor* actor = m_actors + j; - if (actor->proxyId == b2_nullNode) - { - GetRandomAABB(&actor->aabb); - actor->proxyId = m_tree.CreateProxy(actor->aabb, actor); - return; - } - } - } - - void DestroyProxy() - { - for (int32 i = 0; i < e_actorCount; ++i) - { - int32 j = rand() % e_actorCount; - Actor* actor = m_actors + j; - if (actor->proxyId != b2_nullNode) - { - m_tree.DestroyProxy(actor->proxyId); - actor->proxyId = b2_nullNode; - return; - } - } - } - - void MoveProxy() - { - for (int32 i = 0; i < e_actorCount; ++i) - { - int32 j = rand() % e_actorCount; - Actor* actor = m_actors + j; - if (actor->proxyId == b2_nullNode) - { - continue; - } - - b2AABB aabb0 = actor->aabb; - MoveAABB(&actor->aabb); - b2Vec2 displacement = actor->aabb.GetCenter() - aabb0.GetCenter(); - m_tree.MoveProxy(actor->proxyId, actor->aabb, displacement); - return; - } - } - - void Action() - { - int32 choice = rand() % 20; - - switch (choice) - { - case 0: - CreateProxy(); - break; - - case 1: - DestroyProxy(); - break; - - default: - MoveProxy(); - } - } - - void Query() - { - m_tree.Query(this, m_queryAABB); - - for (int32 i = 0; i < e_actorCount; ++i) - { - if (m_actors[i].proxyId == b2_nullNode) - { - continue; - } - - bool overlap = b2TestOverlap(m_queryAABB, m_actors[i].aabb); - B2_NOT_USED(overlap); - b2Assert(overlap == m_actors[i].overlap); - } - } - - void RayCast() - { - m_rayActor = NULL; - - b2RayCastInput input = m_rayCastInput; - - // Ray cast against the dynamic tree. - m_tree.RayCast(this, input); - - // Brute force ray cast. - Actor* bruteActor = NULL; - b2RayCastOutput bruteOutput; - for (int32 i = 0; i < e_actorCount; ++i) - { - if (m_actors[i].proxyId == b2_nullNode) - { - continue; - } - - b2RayCastOutput output; - bool hit = m_actors[i].aabb.RayCast(&output, input); - if (hit) - { - bruteActor = m_actors + i; - bruteOutput = output; - input.maxFraction = output.fraction; - } - } - - if (bruteActor != NULL) - { - b2Assert(bruteOutput.fraction == m_rayCastOutput.fraction); - } - } - - float32 m_worldExtent; - float32 m_proxyExtent; - - b2DynamicTree m_tree; - b2AABB m_queryAABB; - b2RayCastInput m_rayCastInput; - b2RayCastOutput m_rayCastOutput; - Actor* m_rayActor; - Actor m_actors[e_actorCount]; - int32 m_stepCount; - bool m_automated; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/EdgeShapes.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/EdgeShapes.h deleted file mode 100644 index f5e5612..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/EdgeShapes.h +++ /dev/null @@ -1,249 +0,0 @@ -/* -* Copyright (c) 2006-2010 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef EDGE_SHAPES_H -#define EDGE_SHAPES_H - -class EdgeShapesCallback : public b2RayCastCallback -{ -public: - EdgeShapesCallback() - { - m_fixture = NULL; - } - - float32 ReportFixture( b2Fixture* fixture, const b2Vec2& point, - const b2Vec2& normal, float32 fraction) - { - m_fixture = fixture; - m_point = point; - m_normal = normal; - - return fraction; - } - - b2Fixture* m_fixture; - b2Vec2 m_point; - b2Vec2 m_normal; -}; - -class EdgeShapes : public Test -{ -public: - - enum - { - e_maxBodies = 256 - }; - - EdgeShapes() - { - // Ground body - { - b2BodyDef bd; - b2Body* ground = m_world->CreateBody(&bd); - - float32 x1 = -20.0f; - float32 y1 = 2.0f * cosf(x1 / 10.0f * b2_pi); - for (int32 i = 0; i < 80; ++i) - { - float32 x2 = x1 + 0.5f; - float32 y2 = 2.0f * cosf(x2 / 10.0f * b2_pi); - - b2EdgeShape shape; - shape.Set(b2Vec2(x1, y1), b2Vec2(x2, y2)); - ground->CreateFixture(&shape, 0.0f); - - x1 = x2; - y1 = y2; - } - } - - { - b2Vec2 vertices[3]; - vertices[0].Set(-0.5f, 0.0f); - vertices[1].Set(0.5f, 0.0f); - vertices[2].Set(0.0f, 1.5f); - m_polygons[0].Set(vertices, 3); - } - - { - b2Vec2 vertices[3]; - vertices[0].Set(-0.1f, 0.0f); - vertices[1].Set(0.1f, 0.0f); - vertices[2].Set(0.0f, 1.5f); - m_polygons[1].Set(vertices, 3); - } - - { - float32 w = 1.0f; - float32 b = w / (2.0f + b2Sqrt(2.0f)); - float32 s = b2Sqrt(2.0f) * b; - - b2Vec2 vertices[8]; - vertices[0].Set(0.5f * s, 0.0f); - vertices[1].Set(0.5f * w, b); - vertices[2].Set(0.5f * w, b + s); - vertices[3].Set(0.5f * s, w); - vertices[4].Set(-0.5f * s, w); - vertices[5].Set(-0.5f * w, b + s); - vertices[6].Set(-0.5f * w, b); - vertices[7].Set(-0.5f * s, 0.0f); - - m_polygons[2].Set(vertices, 8); - } - - { - m_polygons[3].SetAsBox(0.5f, 0.5f); - } - - { - m_circle.m_radius = 0.5f; - } - - m_bodyIndex = 0; - memset(m_bodies, 0, sizeof(m_bodies)); - - m_angle = 0.0f; - } - - void Create(int32 index) - { - if (m_bodies[m_bodyIndex] != NULL) - { - m_world->DestroyBody(m_bodies[m_bodyIndex]); - m_bodies[m_bodyIndex] = NULL; - } - - b2BodyDef bd; - - float32 x = RandomFloat(-10.0f, 10.0f); - float32 y = RandomFloat(10.0f, 20.0f); - bd.position.Set(x, y); - bd.angle = RandomFloat(-b2_pi, b2_pi); - bd.type = b2_dynamicBody; - - if (index == 4) - { - bd.angularDamping = 0.02f; - } - - m_bodies[m_bodyIndex] = m_world->CreateBody(&bd); - - if (index < 4) - { - b2FixtureDef fd; - fd.shape = m_polygons + index; - fd.friction = 0.3f; - fd.density = 20.0f; - m_bodies[m_bodyIndex]->CreateFixture(&fd); - } - else - { - b2FixtureDef fd; - fd.shape = &m_circle; - fd.friction = 0.3f; - fd.density = 20.0f; - m_bodies[m_bodyIndex]->CreateFixture(&fd); - } - - m_bodyIndex = (m_bodyIndex + 1) % e_maxBodies; - } - - void DestroyBody() - { - for (int32 i = 0; i < e_maxBodies; ++i) - { - if (m_bodies[i] != NULL) - { - m_world->DestroyBody(m_bodies[i]); - m_bodies[i] = NULL; - return; - } - } - } - - void Keyboard(unsigned char key) - { - switch (key) - { - case '1': - case '2': - case '3': - case '4': - case '5': - Create(key - '1'); - break; - - case 'd': - DestroyBody(); - break; - } - } - - void Step(Settings* settings) - { - bool advanceRay = settings->pause == 0 || settings->singleStep; - - Test::Step(settings); - m_debugDraw.DrawString(5, m_textLine, "Press 1-5 to drop stuff"); - m_textLine += DRAW_STRING_NEW_LINE; - - float32 L = 25.0f; - b2Vec2 point1(0.0f, 10.0f); - b2Vec2 d(L * cosf(m_angle), -L * b2Abs(sinf(m_angle))); - b2Vec2 point2 = point1 + d; - - EdgeShapesCallback callback; - - m_world->RayCast(&callback, point1, point2); - - if (callback.m_fixture) - { - m_debugDraw.DrawPoint(callback.m_point, 5.0f, b2Color(0.4f, 0.9f, 0.4f)); - - m_debugDraw.DrawSegment(point1, callback.m_point, b2Color(0.8f, 0.8f, 0.8f)); - - b2Vec2 head = callback.m_point + 0.5f * callback.m_normal; - m_debugDraw.DrawSegment(callback.m_point, head, b2Color(0.9f, 0.9f, 0.4f)); - } - else - { - m_debugDraw.DrawSegment(point1, point2, b2Color(0.8f, 0.8f, 0.8f)); - } - - if (advanceRay) - { - m_angle += 0.25f * b2_pi / 180.0f; - } - } - - static Test* Create() - { - return new EdgeShapes; - } - - int32 m_bodyIndex; - b2Body* m_bodies[e_maxBodies]; - b2PolygonShape m_polygons[4]; - b2CircleShape m_circle; - - float32 m_angle; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/EdgeTest.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/EdgeTest.h deleted file mode 100644 index 2cabf2e..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/EdgeTest.h +++ /dev/null @@ -1,109 +0,0 @@ -/* -* Copyright (c) 2006-2010 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef EDGE_TEST_H -#define EDGE_TEST_H - -class EdgeTest : public Test -{ -public: - - EdgeTest() - { - { - b2BodyDef bd; - b2Body* ground = m_world->CreateBody(&bd); - - b2Vec2 v1(-10.0f, 0.0f), v2(-7.0f, -2.0f), v3(-4.0f, 0.0f); - b2Vec2 v4(0.0f, 0.0f), v5(4.0f, 0.0f), v6(7.0f, 2.0f), v7(10.0f, 0.0f); - - b2EdgeShape shape; - - shape.Set(v1, v2); - shape.m_hasVertex3 = true; - shape.m_vertex3 = v3; - ground->CreateFixture(&shape, 0.0f); - - shape.Set(v2, v3); - shape.m_hasVertex0 = true; - shape.m_hasVertex3 = true; - shape.m_vertex0 = v1; - shape.m_vertex3 = v4; - ground->CreateFixture(&shape, 0.0f); - - shape.Set(v3, v4); - shape.m_hasVertex0 = true; - shape.m_hasVertex3 = true; - shape.m_vertex0 = v2; - shape.m_vertex3 = v5; - ground->CreateFixture(&shape, 0.0f); - - shape.Set(v4, v5); - shape.m_hasVertex0 = true; - shape.m_hasVertex3 = true; - shape.m_vertex0 = v3; - shape.m_vertex3 = v6; - ground->CreateFixture(&shape, 0.0f); - - shape.Set(v5, v6); - shape.m_hasVertex0 = true; - shape.m_hasVertex3 = true; - shape.m_vertex0 = v4; - shape.m_vertex3 = v7; - ground->CreateFixture(&shape, 0.0f); - - shape.Set(v6, v7); - shape.m_hasVertex0 = true; - shape.m_vertex0 = v5; - ground->CreateFixture(&shape, 0.0f); - } - - { - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(-0.5f, 0.6f); - bd.allowSleep = false; - b2Body* body = m_world->CreateBody(&bd); - - b2CircleShape shape; - shape.m_radius = 0.5f; - - body->CreateFixture(&shape, 1.0f); - } - - { - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(1.0f, 0.6f); - bd.allowSleep = false; - b2Body* body = m_world->CreateBody(&bd); - - b2PolygonShape shape; - shape.SetAsBox(0.5f, 0.5f); - - body->CreateFixture(&shape, 1.0f); - } - } - - static Test* Create() - { - return new EdgeTest; - } -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Gears.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Gears.h deleted file mode 100644 index 93cb582..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Gears.h +++ /dev/null @@ -1,186 +0,0 @@ -/* -* Copyright (c) 2007-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef GEARS_H -#define GEARS_H - -class Gears : public Test -{ -public: - Gears() - { - b2Body* ground = NULL; - { - b2BodyDef bd; - ground = m_world->CreateBody(&bd); - - b2EdgeShape shape; - shape.Set(b2Vec2(50.0f, 0.0f), b2Vec2(-50.0f, 0.0f)); - ground->CreateFixture(&shape, 0.0f); - } - - { - b2CircleShape circle1; - circle1.m_radius = 1.0f; - - b2PolygonShape box; - box.SetAsBox(0.5f, 5.0f); - - b2CircleShape circle2; - circle2.m_radius = 2.0f; - - b2BodyDef bd1; - bd1.type = b2_staticBody; - bd1.position.Set(10.0f, 9.0f); - b2Body* body1 = m_world->CreateBody(&bd1); - body1->CreateFixture(&circle1, 5.0f); - - b2BodyDef bd2; - bd2.type = b2_dynamicBody; - bd2.position.Set(10.0f, 8.0f); - b2Body* body2 = m_world->CreateBody(&bd2); - body2->CreateFixture(&box, 5.0f); - - b2BodyDef bd3; - bd3.type = b2_dynamicBody; - bd3.position.Set(10.0f, 6.0f); - b2Body* body3 = m_world->CreateBody(&bd3); - body3->CreateFixture(&circle2, 5.0f); - - b2RevoluteJointDef jd1; - jd1.Initialize(body2, body1, bd1.position); - b2Joint* joint1 = m_world->CreateJoint(&jd1); - - b2RevoluteJointDef jd2; - jd2.Initialize(body2, body3, bd3.position); - b2Joint* joint2 = m_world->CreateJoint(&jd2); - - b2GearJointDef jd4; - jd4.bodyA = body1; - jd4.bodyB = body3; - jd4.joint1 = joint1; - jd4.joint2 = joint2; - jd4.ratio = circle2.m_radius / circle1.m_radius; - m_world->CreateJoint(&jd4); - } - - { - b2CircleShape circle1; - circle1.m_radius = 1.0f; - - b2CircleShape circle2; - circle2.m_radius = 2.0f; - - b2PolygonShape box; - box.SetAsBox(0.5f, 5.0f); - - b2BodyDef bd1; - bd1.type = b2_dynamicBody; - bd1.position.Set(-3.0f, 12.0f); - b2Body* body1 = m_world->CreateBody(&bd1); - body1->CreateFixture(&circle1, 5.0f); - - b2RevoluteJointDef jd1; - jd1.bodyA = ground; - jd1.bodyB = body1; - jd1.localAnchorA = ground->GetLocalPoint(bd1.position); - jd1.localAnchorB = body1->GetLocalPoint(bd1.position); - jd1.referenceAngle = body1->GetAngle() - ground->GetAngle(); - m_joint1 = (b2RevoluteJoint*)m_world->CreateJoint(&jd1); - - b2BodyDef bd2; - bd2.type = b2_dynamicBody; - bd2.position.Set(0.0f, 12.0f); - b2Body* body2 = m_world->CreateBody(&bd2); - body2->CreateFixture(&circle2, 5.0f); - - b2RevoluteJointDef jd2; - jd2.Initialize(ground, body2, bd2.position); - m_joint2 = (b2RevoluteJoint*)m_world->CreateJoint(&jd2); - - b2BodyDef bd3; - bd3.type = b2_dynamicBody; - bd3.position.Set(2.5f, 12.0f); - b2Body* body3 = m_world->CreateBody(&bd3); - body3->CreateFixture(&box, 5.0f); - - b2PrismaticJointDef jd3; - jd3.Initialize(ground, body3, bd3.position, b2Vec2(0.0f, 1.0f)); - jd3.lowerTranslation = -5.0f; - jd3.upperTranslation = 5.0f; - jd3.enableLimit = true; - - m_joint3 = (b2PrismaticJoint*)m_world->CreateJoint(&jd3); - - b2GearJointDef jd4; - jd4.bodyA = body1; - jd4.bodyB = body2; - jd4.joint1 = m_joint1; - jd4.joint2 = m_joint2; - jd4.ratio = circle2.m_radius / circle1.m_radius; - m_joint4 = (b2GearJoint*)m_world->CreateJoint(&jd4); - - b2GearJointDef jd5; - jd5.bodyA = body2; - jd5.bodyB = body3; - jd5.joint1 = m_joint2; - jd5.joint2 = m_joint3; - jd5.ratio = -1.0f / circle2.m_radius; - m_joint5 = (b2GearJoint*)m_world->CreateJoint(&jd5); - } - } - - void Keyboard(unsigned char key) - { - switch (key) - { - case 0: - break; - } - } - - void Step(Settings* settings) - { - Test::Step(settings); - - float32 ratio, value; - - ratio = m_joint4->GetRatio(); - value = m_joint1->GetJointAngle() + ratio * m_joint2->GetJointAngle(); - m_debugDraw.DrawString(5, m_textLine, "theta1 + %4.2f * theta2 = %4.2f", (float) ratio, (float) value); - m_textLine += DRAW_STRING_NEW_LINE; - - ratio = m_joint5->GetRatio(); - value = m_joint2->GetJointAngle() + ratio * m_joint3->GetJointTranslation(); - m_debugDraw.DrawString(5, m_textLine, "theta2 + %4.2f * delta = %4.2f", (float) ratio, (float) value); - m_textLine += DRAW_STRING_NEW_LINE; - } - - static Test* Create() - { - return new Gears; - } - - b2RevoluteJoint* m_joint1; - b2RevoluteJoint* m_joint2; - b2PrismaticJoint* m_joint3; - b2GearJoint* m_joint4; - b2GearJoint* m_joint5; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Mobile.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Mobile.h deleted file mode 100644 index d0a2862..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Mobile.h +++ /dev/null @@ -1,102 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef MOBILE_H -#define MOBILE_H - -class Mobile : public Test -{ -public: - - enum - { - e_depth = 4 - }; - - Mobile() - { - b2Body* ground; - - // Create ground body. - { - b2BodyDef bodyDef; - bodyDef.position.Set(0.0f, 20.0f); - ground = m_world->CreateBody(&bodyDef); - } - - float32 a = 0.5f; - b2Vec2 h(0.0f, a); - - b2Body* root = AddNode(ground, b2Vec2_zero, 0, 3.0f, a); - - b2RevoluteJointDef jointDef; - jointDef.bodyA = ground; - jointDef.bodyB = root; - jointDef.localAnchorA.SetZero(); - jointDef.localAnchorB = h; - m_world->CreateJoint(&jointDef); - } - - b2Body* AddNode(b2Body* parent, const b2Vec2& localAnchor, int32 depth, float32 offset, float32 a) - { - float32 density = 20.0f; - b2Vec2 h(0.0f, a); - - b2Vec2 p = parent->GetPosition() + localAnchor - h; - - b2BodyDef bodyDef; - bodyDef.type = b2_dynamicBody; - bodyDef.position = p; - b2Body* body = m_world->CreateBody(&bodyDef); - - b2PolygonShape shape; - shape.SetAsBox(0.25f * a, a); - body->CreateFixture(&shape, density); - - if (depth == e_depth) - { - return body; - } - - b2Vec2 a1 = b2Vec2(offset, -a); - b2Vec2 a2 = b2Vec2(-offset, -a); - b2Body* body1 = AddNode(body, a1, depth + 1, 0.5f * offset, a); - b2Body* body2 = AddNode(body, a2, depth + 1, 0.5f * offset, a); - - b2RevoluteJointDef jointDef; - jointDef.bodyA = body; - jointDef.localAnchorB = h; - - jointDef.localAnchorA = a1; - jointDef.bodyB = body1; - m_world->CreateJoint(&jointDef); - - jointDef.localAnchorA = a2; - jointDef.bodyB = body2; - m_world->CreateJoint(&jointDef); - - return body; - } - - static Test* Create() - { - return new Mobile; - } -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/MobileBalanced.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/MobileBalanced.h deleted file mode 100644 index 2e6ad21..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/MobileBalanced.h +++ /dev/null @@ -1,105 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef MOBILE_BALANCED_H -#define MOBILE_BALANCED_H - -class MobileBalanced : public Test -{ -public: - - enum - { - e_depth = 4 - }; - - MobileBalanced() - { - b2Body* ground; - - // Create ground body. - { - b2BodyDef bodyDef; - bodyDef.position.Set(0.0f, 20.0f); - ground = m_world->CreateBody(&bodyDef); - } - - float32 a = 0.5f; - b2Vec2 h(0.0f, a); - - b2Body* root = AddNode(ground, b2Vec2_zero, 0, 3.0f, a); - - b2RevoluteJointDef jointDef; - jointDef.bodyA = ground; - jointDef.bodyB = root; - jointDef.localAnchorA.SetZero(); - jointDef.localAnchorB = h; - m_world->CreateJoint(&jointDef); - } - - b2Body* AddNode(b2Body* parent, const b2Vec2& localAnchor, int32 depth, float32 offset, float32 a) - { - float32 density = 20.0f; - b2Vec2 h(0.0f, a); - - b2Vec2 p = parent->GetPosition() + localAnchor - h; - - b2BodyDef bodyDef; - bodyDef.type = b2_dynamicBody; - bodyDef.position = p; - b2Body* body = m_world->CreateBody(&bodyDef); - - b2PolygonShape shape; - shape.SetAsBox(0.25f * a, a); - body->CreateFixture(&shape, density); - - if (depth == e_depth) - { - return body; - } - - shape.SetAsBox(offset, 0.25f * a, b2Vec2(0, -a), 0.0f); - body->CreateFixture(&shape, density); - - b2Vec2 a1 = b2Vec2(offset, -a); - b2Vec2 a2 = b2Vec2(-offset, -a); - b2Body* body1 = AddNode(body, a1, depth + 1, 0.5f * offset, a); - b2Body* body2 = AddNode(body, a2, depth + 1, 0.5f * offset, a); - - b2RevoluteJointDef jointDef; - jointDef.bodyA = body; - jointDef.localAnchorB = h; - - jointDef.localAnchorA = a1; - jointDef.bodyB = body1; - m_world->CreateJoint(&jointDef); - - jointDef.localAnchorA = a2; - jointDef.bodyB = body2; - m_world->CreateJoint(&jointDef); - - return body; - } - - static Test* Create() - { - return new MobileBalanced; - } -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/MotorJoint.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/MotorJoint.h deleted file mode 100644 index 71dec79..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/MotorJoint.h +++ /dev/null @@ -1,114 +0,0 @@ -/* -* Copyright (c) 2006-2012 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef MOTOR_JOINT_H -#define MOTOR_JOINT_H - -/// This test shows how to use a motor joint. A motor joint -/// can be used to animate a dynamic body. With finite motor forces -/// the body can be blocked by collision with other bodies. -class MotorJoint : public Test -{ -public: - MotorJoint() - { - b2Body* ground = NULL; - { - b2BodyDef bd; - ground = m_world->CreateBody(&bd); - - b2EdgeShape shape; - shape.Set(b2Vec2(-20.0f, 0.0f), b2Vec2(20.0f, 0.0f)); - - b2FixtureDef fd; - fd.shape = &shape; - - ground->CreateFixture(&fd); - } - - // Define motorized body - { - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(0.0f, 8.0f); - b2Body* body = m_world->CreateBody(&bd); - - b2PolygonShape shape; - shape.SetAsBox(2.0f, 0.5f); - - b2FixtureDef fd; - fd.shape = &shape; - fd.friction = 0.6f; - fd.density = 2.0f; - body->CreateFixture(&fd); - - b2MotorJointDef mjd; - mjd.Initialize(ground, body); - mjd.maxForce = 1000.0f; - mjd.maxTorque = 1000.0f; - m_joint = (b2MotorJoint*)m_world->CreateJoint(&mjd); - } - - m_go = false; - m_time = 0.0f; - } - - void Keyboard(unsigned char key) - { - switch (key) - { - case 's': - m_go = !m_go; - break; - } - } - - void Step(Settings* settings) - { - if (m_go && settings->hz > 0.0f) - { - m_time += 1.0f / settings->hz; - } - - b2Vec2 linearOffset; - linearOffset.x = 6.0f * sinf(2.0f * m_time); - linearOffset.y = 8.0f + 4.0f * sinf(1.0f * m_time); - - float32 angularOffset = 4.0f * m_time; - - m_joint->SetLinearOffset(linearOffset); - m_joint->SetAngularOffset(angularOffset); - - m_debugDraw.DrawPoint(linearOffset, 4.0f, b2Color(0.9f, 0.9f, 0.9f)); - - Test::Step(settings); - m_debugDraw.DrawString(5, m_textLine, "Keys: (s) pause"); - m_textLine += 15; - } - - static Test* Create() - { - return new MotorJoint; - } - - b2MotorJoint* m_joint; - float32 m_time; - bool m_go; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/OneSidedPlatform.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/OneSidedPlatform.h deleted file mode 100644 index 383df09..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/OneSidedPlatform.h +++ /dev/null @@ -1,132 +0,0 @@ -/* -* Copyright (c) 2008-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef ONE_SIDED_PLATFORM_H -#define ONE_SIDED_PLATFORM_H - -class OneSidedPlatform : public Test -{ -public: - - enum State - { - e_unknown, - e_above, - e_below - }; - - OneSidedPlatform() - { - // Ground - { - b2BodyDef bd; - b2Body* ground = m_world->CreateBody(&bd); - - b2EdgeShape shape; - shape.Set(b2Vec2(-20.0f, 0.0f), b2Vec2(20.0f, 0.0f)); - ground->CreateFixture(&shape, 0.0f); - } - - // Platform - { - b2BodyDef bd; - bd.position.Set(0.0f, 10.0f); - b2Body* body = m_world->CreateBody(&bd); - - b2PolygonShape shape; - shape.SetAsBox(3.0f, 0.5f); - m_platform = body->CreateFixture(&shape, 0.0f); - - m_bottom = 10.0f - 0.5f; - m_top = 10.0f + 0.5f; - } - - // Actor - { - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(0.0f, 12.0f); - b2Body* body = m_world->CreateBody(&bd); - - m_radius = 0.5f; - b2CircleShape shape; - shape.m_radius = m_radius; - m_character = body->CreateFixture(&shape, 20.0f); - - body->SetLinearVelocity(b2Vec2(0.0f, -50.0f)); - - m_state = e_unknown; - } - } - - void PreSolve(b2Contact* contact, const b2Manifold* oldManifold) - { - Test::PreSolve(contact, oldManifold); - - b2Fixture* fixtureA = contact->GetFixtureA(); - b2Fixture* fixtureB = contact->GetFixtureB(); - - if (fixtureA != m_platform && fixtureA != m_character) - { - return; - } - - if (fixtureB != m_platform && fixtureB != m_character) - { - return; - } - -#if 1 - b2Vec2 position = m_character->GetBody()->GetPosition(); - - if (position.y < m_top + m_radius - 3.0f * b2_linearSlop) - { - contact->SetEnabled(false); - } -#else - b2Vec2 v = m_character->GetBody()->GetLinearVelocity(); - if (v.y > 0.0f) - { - contact->SetEnabled(false); - } -#endif - } - - void Step(Settings* settings) - { - Test::Step(settings); - m_debugDraw.DrawString(5, m_textLine, "Press: (c) create a shape, (d) destroy a shape."); - m_textLine += DRAW_STRING_NEW_LINE; - - b2Vec2 v = m_character->GetBody()->GetLinearVelocity(); - m_debugDraw.DrawString(5, m_textLine, "Character Linear Velocity: %f", v.y); - m_textLine += DRAW_STRING_NEW_LINE; - } - - static Test* Create() - { - return new OneSidedPlatform; - } - - float32 m_radius, m_top, m_bottom; - State m_state; - b2Fixture* m_platform; - b2Fixture* m_character; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Pinball.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Pinball.h deleted file mode 100644 index 1ccd991..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Pinball.h +++ /dev/null @@ -1,169 +0,0 @@ -/* -* Copyright (c) 2006-2010 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef PINBALL_H -#define PINBALL_H - -/// This tests bullet collision and provides an example of a gameplay scenario. -/// This also uses a loop shape. -class Pinball : public Test -{ -public: - Pinball() - { - // Ground body - b2Body* ground = NULL; - { - b2BodyDef bd; - ground = m_world->CreateBody(&bd); - - b2Vec2 vs[5]; - vs[0].Set(0.0f, -2.0f); - vs[1].Set(8.0f, 6.0f); - vs[2].Set(8.0f, 20.0f); - vs[3].Set(-8.0f, 20.0f); - vs[4].Set(-8.0f, 6.0f); - - b2ChainShape loop; - loop.CreateLoop(vs, 5); - b2FixtureDef fd; - fd.shape = &loop; - fd.density = 0.0f; - ground->CreateFixture(&fd); - } - - // Flippers - { - b2Vec2 p1(-2.0f, 0.0f), p2(2.0f, 0.0f); - - b2BodyDef bd; - bd.type = b2_dynamicBody; - - bd.position = p1; - b2Body* leftFlipper = m_world->CreateBody(&bd); - - bd.position = p2; - b2Body* rightFlipper = m_world->CreateBody(&bd); - - b2PolygonShape box; - box.SetAsBox(1.75f, 0.1f); - - b2FixtureDef fd; - fd.shape = &box; - fd.density = 1.0f; - - leftFlipper->CreateFixture(&fd); - rightFlipper->CreateFixture(&fd); - - b2RevoluteJointDef jd; - jd.bodyA = ground; - jd.localAnchorB.SetZero(); - jd.enableMotor = true; - jd.maxMotorTorque = 1000.0f; - jd.enableLimit = true; - - jd.motorSpeed = 0.0f; - jd.localAnchorA = p1; - jd.bodyB = leftFlipper; - jd.lowerAngle = -30.0f * b2_pi / 180.0f; - jd.upperAngle = 5.0f * b2_pi / 180.0f; - m_leftJoint = (b2RevoluteJoint*)m_world->CreateJoint(&jd); - - jd.motorSpeed = 0.0f; - jd.localAnchorA = p2; - jd.bodyB = rightFlipper; - jd.lowerAngle = -5.0f * b2_pi / 180.0f; - jd.upperAngle = 30.0f * b2_pi / 180.0f; - m_rightJoint = (b2RevoluteJoint*)m_world->CreateJoint(&jd); - } - - // Circle character - { - b2BodyDef bd; - bd.position.Set(1.0f, 15.0f); - bd.type = b2_dynamicBody; - bd.bullet = true; - - m_ball = m_world->CreateBody(&bd); - - b2CircleShape shape; - shape.m_radius = 0.2f; - - b2FixtureDef fd; - fd.shape = &shape; - fd.density = 1.0f; - m_ball->CreateFixture(&fd); - } - - m_button = false; - } - - void Step(Settings* settings) - { - if (m_button) - { - m_leftJoint->SetMotorSpeed(20.0f); - m_rightJoint->SetMotorSpeed(-20.0f); - } - else - { - m_leftJoint->SetMotorSpeed(-10.0f); - m_rightJoint->SetMotorSpeed(10.0f); - } - - Test::Step(settings); - - m_debugDraw.DrawString(5, m_textLine, "Press 'a' to control the flippers"); - m_textLine += DRAW_STRING_NEW_LINE; - - } - - void Keyboard(unsigned char key) - { - switch (key) - { - case 'a': - case 'A': - m_button = true; - break; - } - } - - void KeyboardUp(unsigned char key) - { - switch (key) - { - case 'a': - case 'A': - m_button = false; - break; - } - } - - static Test* Create() - { - return new Pinball; - } - - b2RevoluteJoint* m_leftJoint; - b2RevoluteJoint* m_rightJoint; - b2Body* m_ball; - bool m_button; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/PolyCollision.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/PolyCollision.h deleted file mode 100644 index 1bb8435..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/PolyCollision.h +++ /dev/null @@ -1,122 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef POLYCOLLISION_H -#define POLYCOLLISION_H - -class PolyCollision : public Test -{ -public: - PolyCollision() - { - { - m_polygonA.SetAsBox(0.2f, 0.4f); - m_transformA.Set(b2Vec2(0.0f, 0.0f), 0.0f); - } - - { - m_polygonB.SetAsBox(0.5f, 0.5f); - m_positionB.Set(19.345284f, 1.5632932f); - m_angleB = 1.9160721f; - m_transformB.Set(m_positionB, m_angleB); - } - } - - static Test* Create() - { - return new PolyCollision; - } - - void Step(Settings* settings) - { - B2_NOT_USED(settings); - - b2Manifold manifold; - b2CollidePolygons(&manifold, &m_polygonA, m_transformA, &m_polygonB, m_transformB); - - b2WorldManifold worldManifold; - worldManifold.Initialize(&manifold, m_transformA, m_polygonA.m_radius, m_transformB, m_polygonB.m_radius); - - m_debugDraw.DrawString(5, m_textLine, "point count = %d", manifold.pointCount); - m_textLine += DRAW_STRING_NEW_LINE; - - { - b2Color color(0.9f, 0.9f, 0.9f); - b2Vec2 v[b2_maxPolygonVertices]; - for (int32 i = 0; i < m_polygonA.m_count; ++i) - { - v[i] = b2Mul(m_transformA, m_polygonA.m_vertices[i]); - } - m_debugDraw.DrawPolygon(v, m_polygonA.m_count, color); - - for (int32 i = 0; i < m_polygonB.m_count; ++i) - { - v[i] = b2Mul(m_transformB, m_polygonB.m_vertices[i]); - } - m_debugDraw.DrawPolygon(v, m_polygonB.m_count, color); - } - - for (int32 i = 0; i < manifold.pointCount; ++i) - { - m_debugDraw.DrawPoint(worldManifold.points[i], 4.0f, b2Color(0.9f, 0.3f, 0.3f)); - } - } - - void Keyboard(unsigned char key) - { - switch (key) - { - case 'a': - m_positionB.x -= 0.1f; - break; - - case 'd': - m_positionB.x += 0.1f; - break; - - case 's': - m_positionB.y -= 0.1f; - break; - - case 'w': - m_positionB.y += 0.1f; - break; - - case 'q': - m_angleB += 0.1f * b2_pi; - break; - - case 'e': - m_angleB -= 0.1f * b2_pi; - break; - } - - m_transformB.Set(m_positionB, m_angleB); - } - - b2PolygonShape m_polygonA; - b2PolygonShape m_polygonB; - - b2Transform m_transformA; - b2Transform m_transformB; - - b2Vec2 m_positionB; - float32 m_angleB; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/PolyShapes.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/PolyShapes.h deleted file mode 100644 index 17b99dd..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/PolyShapes.h +++ /dev/null @@ -1,299 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef POLY_SHAPES_H -#define POLY_SHAPES_H - -/// This tests stacking. It also shows how to use b2World::Query -/// and b2TestOverlap. - -/// This callback is called by b2World::QueryAABB. We find all the fixtures -/// that overlap an AABB. Of those, we use b2TestOverlap to determine which fixtures -/// overlap a circle. Up to 4 overlapped fixtures will be highlighted with a yellow border. -class PolyShapesCallback : public b2QueryCallback -{ -public: - - enum - { - e_maxCount = 4 - }; - - PolyShapesCallback() - { - m_count = 0; - } - - void DrawFixture(b2Fixture* fixture) - { - b2Color color(0.95f, 0.95f, 0.6f); - const b2Transform& xf = fixture->GetBody()->GetTransform(); - - switch (fixture->GetType()) - { - case b2Shape::e_circle: - { - b2CircleShape* circle = (b2CircleShape*)fixture->GetShape(); - - b2Vec2 center = b2Mul(xf, circle->m_p); - float32 radius = circle->m_radius; - - m_debugDraw->DrawCircle(center, radius, color); - } - break; - - case b2Shape::e_polygon: - { - b2PolygonShape* poly = (b2PolygonShape*)fixture->GetShape(); - int32 vertexCount = poly->m_count; - b2Assert(vertexCount <= b2_maxPolygonVertices); - b2Vec2 vertices[b2_maxPolygonVertices]; - - for (int32 i = 0; i < vertexCount; ++i) - { - vertices[i] = b2Mul(xf, poly->m_vertices[i]); - } - - m_debugDraw->DrawPolygon(vertices, vertexCount, color); - } - break; - - default: - break; - } - } - - /// Called for each fixture found in the query AABB. - /// @return false to terminate the query. - bool ReportFixture(b2Fixture* fixture) - { - if (m_count == e_maxCount) - { - return false; - } - - b2Body* body = fixture->GetBody(); - b2Shape* shape = fixture->GetShape(); - - bool overlap = b2TestOverlap(shape, 0, &m_circle, 0, body->GetTransform(), m_transform); - - if (overlap) - { - DrawFixture(fixture); - ++m_count; - } - - return true; - } - - b2CircleShape m_circle; - b2Transform m_transform; - b2Draw* m_debugDraw; - int32 m_count; -}; - -class PolyShapes : public Test -{ -public: - - enum - { - e_maxBodies = 256 - }; - - PolyShapes() - { - // Ground body - { - b2BodyDef bd; - b2Body* ground = m_world->CreateBody(&bd); - - b2EdgeShape shape; - shape.Set(b2Vec2(-40.0f, 0.0f), b2Vec2(40.0f, 0.0f)); - ground->CreateFixture(&shape, 0.0f); - } - - { - b2Vec2 vertices[3]; - vertices[0].Set(-0.5f, 0.0f); - vertices[1].Set(0.5f, 0.0f); - vertices[2].Set(0.0f, 1.5f); - m_polygons[0].Set(vertices, 3); - } - - { - b2Vec2 vertices[3]; - vertices[0].Set(-0.1f, 0.0f); - vertices[1].Set(0.1f, 0.0f); - vertices[2].Set(0.0f, 1.5f); - m_polygons[1].Set(vertices, 3); - } - - { - float32 w = 1.0f; - float32 b = w / (2.0f + b2Sqrt(2.0f)); - float32 s = b2Sqrt(2.0f) * b; - - b2Vec2 vertices[8]; - vertices[0].Set(0.5f * s, 0.0f); - vertices[1].Set(0.5f * w, b); - vertices[2].Set(0.5f * w, b + s); - vertices[3].Set(0.5f * s, w); - vertices[4].Set(-0.5f * s, w); - vertices[5].Set(-0.5f * w, b + s); - vertices[6].Set(-0.5f * w, b); - vertices[7].Set(-0.5f * s, 0.0f); - - m_polygons[2].Set(vertices, 8); - } - - { - m_polygons[3].SetAsBox(0.5f, 0.5f); - } - - { - m_circle.m_radius = 0.5f; - } - - m_bodyIndex = 0; - memset(m_bodies, 0, sizeof(m_bodies)); - } - - void Create(int32 index) - { - if (m_bodies[m_bodyIndex] != NULL) - { - m_world->DestroyBody(m_bodies[m_bodyIndex]); - m_bodies[m_bodyIndex] = NULL; - } - - b2BodyDef bd; - bd.type = b2_dynamicBody; - - float32 x = RandomFloat(-2.0f, 2.0f); - bd.position.Set(x, 10.0f); - bd.angle = RandomFloat(-b2_pi, b2_pi); - - if (index == 4) - { - bd.angularDamping = 0.02f; - } - - m_bodies[m_bodyIndex] = m_world->CreateBody(&bd); - - if (index < 4) - { - b2FixtureDef fd; - fd.shape = m_polygons + index; - fd.density = 1.0f; - fd.friction = 0.3f; - m_bodies[m_bodyIndex]->CreateFixture(&fd); - } - else - { - b2FixtureDef fd; - fd.shape = &m_circle; - fd.density = 1.0f; - fd.friction = 0.3f; - - m_bodies[m_bodyIndex]->CreateFixture(&fd); - } - - m_bodyIndex = (m_bodyIndex + 1) % e_maxBodies; - } - - void DestroyBody() - { - for (int32 i = 0; i < e_maxBodies; ++i) - { - if (m_bodies[i] != NULL) - { - m_world->DestroyBody(m_bodies[i]); - m_bodies[i] = NULL; - return; - } - } - } - - void Keyboard(unsigned char key) - { - switch (key) - { - case '1': - case '2': - case '3': - case '4': - case '5': - Create(key - '1'); - break; - - case 'a': - for (int32 i = 0; i < e_maxBodies; i += 2) - { - if (m_bodies[i]) - { - bool active = m_bodies[i]->IsActive(); - m_bodies[i]->SetActive(!active); - } - } - break; - - case 'd': - DestroyBody(); - break; - } - } - - void Step(Settings* settings) - { - Test::Step(settings); - - PolyShapesCallback callback; - callback.m_circle.m_radius = 2.0f; - callback.m_circle.m_p.Set(0.0f, 1.1f); - callback.m_transform.SetIdentity(); - callback.m_debugDraw = &m_debugDraw; - - b2AABB aabb; - callback.m_circle.ComputeAABB(&aabb, callback.m_transform, 0); - - m_world->QueryAABB(&callback, aabb); - - b2Color color(0.4f, 0.7f, 0.8f); - m_debugDraw.DrawCircle(callback.m_circle.m_p, callback.m_circle.m_radius, color); - - m_debugDraw.DrawString(5, m_textLine, "Press 1-5 to drop stuff"); - m_textLine += DRAW_STRING_NEW_LINE; - m_debugDraw.DrawString(5, m_textLine, "Press 'a' to (de)activate some bodies"); - m_textLine += DRAW_STRING_NEW_LINE; - m_debugDraw.DrawString(5, m_textLine, "Press 'd' to destroy a body"); - m_textLine += DRAW_STRING_NEW_LINE; - } - - static Test* Create() - { - return new PolyShapes; - } - - int32 m_bodyIndex; - b2Body* m_bodies[e_maxBodies]; - b2PolygonShape m_polygons[4]; - b2CircleShape m_circle; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Prismatic.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Prismatic.h deleted file mode 100644 index 61b00d1..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Prismatic.h +++ /dev/null @@ -1,107 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef PRISMATIC_H -#define PRISMATIC_H - -// The motor in this test gets smoother with higher velocity iterations. -class Prismatic : public Test -{ -public: - Prismatic() - { - b2Body* ground = NULL; - { - b2BodyDef bd; - ground = m_world->CreateBody(&bd); - - b2EdgeShape shape; - shape.Set(b2Vec2(-40.0f, 0.0f), b2Vec2(40.0f, 0.0f)); - ground->CreateFixture(&shape, 0.0f); - } - - { - b2PolygonShape shape; - shape.SetAsBox(2.0f, 0.5f); - - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(-10.0f, 10.0f); - bd.angle = 0.5f * b2_pi; - bd.allowSleep = false; - b2Body* body = m_world->CreateBody(&bd); - body->CreateFixture(&shape, 5.0f); - - b2PrismaticJointDef pjd; - - // Bouncy limit - b2Vec2 axis(2.0f, 1.0f); - axis.Normalize(); - pjd.Initialize(ground, body, b2Vec2(0.0f, 0.0f), axis); - - // Non-bouncy limit - //pjd.Initialize(ground, body, b2Vec2(-10.0f, 10.0f), b2Vec2(1.0f, 0.0f)); - - pjd.motorSpeed = 10.0f; - pjd.maxMotorForce = 10000.0f; - pjd.enableMotor = true; - pjd.lowerTranslation = 0.0f; - pjd.upperTranslation = 20.0f; - pjd.enableLimit = true; - - m_joint = (b2PrismaticJoint*)m_world->CreateJoint(&pjd); - } - } - - void Keyboard(unsigned char key) - { - switch (key) - { - case 'l': - m_joint->EnableLimit(!m_joint->IsLimitEnabled()); - break; - - case 'm': - m_joint->EnableMotor(!m_joint->IsMotorEnabled()); - break; - - case 's': - m_joint->SetMotorSpeed(-m_joint->GetMotorSpeed()); - break; - } - } - - void Step(Settings* settings) - { - Test::Step(settings); - m_debugDraw.DrawString(5, m_textLine, "Keys: (l) limits, (m) motors, (s) speed"); - m_textLine += DRAW_STRING_NEW_LINE; - float32 force = m_joint->GetMotorForce(settings->hz); - m_debugDraw.DrawString(5, m_textLine, "Motor Force = %4.0f", (float) force); - m_textLine += DRAW_STRING_NEW_LINE; - } - - static Test* Create() - { - return new Prismatic; - } - - b2PrismaticJoint* m_joint; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Pulleys.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Pulleys.h deleted file mode 100644 index 97061fa..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Pulleys.h +++ /dev/null @@ -1,106 +0,0 @@ -/* -* Copyright (c) 2007-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef PULLEYS_H -#define PULLEYS_H - -class Pulleys : public Test -{ -public: - Pulleys() - { - float32 y = 16.0f; - float32 L = 12.0f; - float32 a = 1.0f; - float32 b = 2.0f; - - b2Body* ground = NULL; - { - b2BodyDef bd; - ground = m_world->CreateBody(&bd); - - b2EdgeShape edge; - edge.Set(b2Vec2(-40.0f, 0.0f), b2Vec2(40.0f, 0.0f)); - //ground->CreateFixture(&shape, 0.0f); - - b2CircleShape circle; - circle.m_radius = 2.0f; - - circle.m_p.Set(-10.0f, y + b + L); - ground->CreateFixture(&circle, 0.0f); - - circle.m_p.Set(10.0f, y + b + L); - ground->CreateFixture(&circle, 0.0f); - } - - { - - b2PolygonShape shape; - shape.SetAsBox(a, b); - - b2BodyDef bd; - bd.type = b2_dynamicBody; - - //bd.fixedRotation = true; - bd.position.Set(-10.0f, y); - b2Body* body1 = m_world->CreateBody(&bd); - body1->CreateFixture(&shape, 5.0f); - - bd.position.Set(10.0f, y); - b2Body* body2 = m_world->CreateBody(&bd); - body2->CreateFixture(&shape, 5.0f); - - b2PulleyJointDef pulleyDef; - b2Vec2 anchor1(-10.0f, y + b); - b2Vec2 anchor2(10.0f, y + b); - b2Vec2 groundAnchor1(-10.0f, y + b + L); - b2Vec2 groundAnchor2(10.0f, y + b + L); - pulleyDef.Initialize(body1, body2, groundAnchor1, groundAnchor2, anchor1, anchor2, 1.5f); - - m_joint1 = (b2PulleyJoint*)m_world->CreateJoint(&pulleyDef); - } - } - - void Keyboard(unsigned char key) - { - switch (key) - { - case 0: - break; - } - } - - void Step(Settings* settings) - { - Test::Step(settings); - - float32 ratio = m_joint1->GetRatio(); - float32 L = m_joint1->GetCurrentLengthA() + ratio * m_joint1->GetCurrentLengthB(); - m_debugDraw.DrawString(5, m_textLine, "L1 + %4.2f * L2 = %4.2f", (float) ratio, (float) L); - m_textLine += DRAW_STRING_NEW_LINE; - } - - static Test* Create() - { - return new Pulleys; - } - - b2PulleyJoint* m_joint1; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Pyramid.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Pyramid.h deleted file mode 100644 index ac3cd46..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Pyramid.h +++ /dev/null @@ -1,89 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef PYRAMID_H -#define PYRAMID_H - -class Pyramid : public Test -{ -public: - enum - { - e_count = 20 - }; - - Pyramid() - { - { - b2BodyDef bd; - b2Body* ground = m_world->CreateBody(&bd); - - b2EdgeShape shape; - shape.Set(b2Vec2(-40.0f, 0.0f), b2Vec2(40.0f, 0.0f)); - ground->CreateFixture(&shape, 0.0f); - } - - { - float32 a = 0.5f; - b2PolygonShape shape; - shape.SetAsBox(a, a); - - b2Vec2 x(-7.0f, 0.75f); - b2Vec2 y; - b2Vec2 deltaX(0.5625f, 1.25f); - b2Vec2 deltaY(1.125f, 0.0f); - - for (int32 i = 0; i < e_count; ++i) - { - y = x; - - for (int32 j = i; j < e_count; ++j) - { - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position = y; - b2Body* body = m_world->CreateBody(&bd); - body->CreateFixture(&shape, 5.0f); - - y += deltaY; - } - - x += deltaX; - } - } - } - - void Step(Settings* settings) - { - Test::Step(settings); - - //b2DynamicTree* tree = &m_world->m_contactManager.m_broadPhase.m_tree; - - //if (m_stepCount == 400) - //{ - // tree->RebuildBottomUp(); - //} - } - - static Test* Create() - { - return new Pyramid; - } -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/RayCast.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/RayCast.h deleted file mode 100644 index 10b47c9..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/RayCast.h +++ /dev/null @@ -1,481 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef RAY_CAST_H -#define RAY_CAST_H - -// This test demonstrates how to use the world ray-cast feature. -// NOTE: we are intentionally filtering one of the polygons, therefore -// the ray will always miss one type of polygon. - -// This callback finds the closest hit. Polygon 0 is filtered. -class RayCastClosestCallback : public b2RayCastCallback -{ -public: - RayCastClosestCallback() - { - m_hit = false; - } - - float32 ReportFixture(b2Fixture* fixture, const b2Vec2& point, const b2Vec2& normal, float32 fraction) - { - b2Body* body = fixture->GetBody(); - void* userData = body->GetUserData(); - if (userData) - { - int32 index = *(int32*)userData; - if (index == 0) - { - // By returning -1, we instruct the calling code to ignore this fixture and - // continue the ray-cast to the next fixture. - return -1.0f; - } - } - - m_hit = true; - m_point = point; - m_normal = normal; - - // By returning the current fraction, we instruct the calling code to clip the ray and - // continue the ray-cast to the next fixture. WARNING: do not assume that fixtures - // are reported in order. However, by clipping, we can always get the closest fixture. - return fraction; - } - - bool m_hit; - b2Vec2 m_point; - b2Vec2 m_normal; -}; - -// This callback finds any hit. Polygon 0 is filtered. For this type of query we are usually -// just checking for obstruction, so the actual fixture and hit point are irrelevant. -class RayCastAnyCallback : public b2RayCastCallback -{ -public: - RayCastAnyCallback() - { - m_hit = false; - } - - float32 ReportFixture(b2Fixture* fixture, const b2Vec2& point, const b2Vec2& normal, float32 fraction) - { - b2Body* body = fixture->GetBody(); - void* userData = body->GetUserData(); - if (userData) - { - int32 index = *(int32*)userData; - if (index == 0) - { - // By returning -1, we instruct the calling code to ignore this fixture - // and continue the ray-cast to the next fixture. - return -1.0f; - } - } - - m_hit = true; - m_point = point; - m_normal = normal; - - // At this point we have a hit, so we know the ray is obstructed. - // By returning 0, we instruct the calling code to terminate the ray-cast. - return 0.0f; - } - - bool m_hit; - b2Vec2 m_point; - b2Vec2 m_normal; -}; - -// This ray cast collects multiple hits along the ray. Polygon 0 is filtered. -// The fixtures are not necessary reported in order, so we might not capture -// the closest fixture. -class RayCastMultipleCallback : public b2RayCastCallback -{ -public: - enum - { - e_maxCount = 3 - }; - - RayCastMultipleCallback() - { - m_count = 0; - } - - float32 ReportFixture(b2Fixture* fixture, const b2Vec2& point, const b2Vec2& normal, float32 fraction) - { - b2Body* body = fixture->GetBody(); - void* userData = body->GetUserData(); - if (userData) - { - int32 index = *(int32*)userData; - if (index == 0) - { - // By returning -1, we instruct the calling code to ignore this fixture - // and continue the ray-cast to the next fixture. - return -1.0f; - } - } - - b2Assert(m_count < e_maxCount); - - m_points[m_count] = point; - m_normals[m_count] = normal; - ++m_count; - - if (m_count == e_maxCount) - { - // At this point the buffer is full. - // By returning 0, we instruct the calling code to terminate the ray-cast. - return 0.0f; - } - - // By returning 1, we instruct the caller to continue without clipping the ray. - return 1.0f; - } - - b2Vec2 m_points[e_maxCount]; - b2Vec2 m_normals[e_maxCount]; - int32 m_count; -}; - - -class RayCast : public Test -{ -public: - - enum - { - e_maxBodies = 256 - }; - - enum Mode - { - e_closest, - e_any, - e_multiple - }; - - RayCast() - { - // Ground body - { - b2BodyDef bd; - b2Body* ground = m_world->CreateBody(&bd); - - b2EdgeShape shape; - shape.Set(b2Vec2(-40.0f, 0.0f), b2Vec2(40.0f, 0.0f)); - ground->CreateFixture(&shape, 0.0f); - } - - { - b2Vec2 vertices[3]; - vertices[0].Set(-0.5f, 0.0f); - vertices[1].Set(0.5f, 0.0f); - vertices[2].Set(0.0f, 1.5f); - m_polygons[0].Set(vertices, 3); - } - - { - b2Vec2 vertices[3]; - vertices[0].Set(-0.1f, 0.0f); - vertices[1].Set(0.1f, 0.0f); - vertices[2].Set(0.0f, 1.5f); - m_polygons[1].Set(vertices, 3); - } - - { - float32 w = 1.0f; - float32 b = w / (2.0f + b2Sqrt(2.0f)); - float32 s = b2Sqrt(2.0f) * b; - - b2Vec2 vertices[8]; - vertices[0].Set(0.5f * s, 0.0f); - vertices[1].Set(0.5f * w, b); - vertices[2].Set(0.5f * w, b + s); - vertices[3].Set(0.5f * s, w); - vertices[4].Set(-0.5f * s, w); - vertices[5].Set(-0.5f * w, b + s); - vertices[6].Set(-0.5f * w, b); - vertices[7].Set(-0.5f * s, 0.0f); - - m_polygons[2].Set(vertices, 8); - } - - { - m_polygons[3].SetAsBox(0.5f, 0.5f); - } - - { - m_circle.m_radius = 0.5f; - } - - { - m_edge.Set(b2Vec2(-1.0f, 0.0f), b2Vec2(1.0f, 0.0f)); - } - - m_bodyIndex = 0; - memset(m_bodies, 0, sizeof(m_bodies)); - - m_angle = 0.0f; - - m_mode = e_closest; - } - - void Create(int32 index) - { - if (m_bodies[m_bodyIndex] != NULL) - { - m_world->DestroyBody(m_bodies[m_bodyIndex]); - m_bodies[m_bodyIndex] = NULL; - } - - b2BodyDef bd; - - float32 x = RandomFloat(-10.0f, 10.0f); - float32 y = RandomFloat(0.0f, 20.0f); - bd.position.Set(x, y); - bd.angle = RandomFloat(-b2_pi, b2_pi); - - m_userData[m_bodyIndex] = index; - bd.userData = m_userData + m_bodyIndex; - - if (index == 4) - { - bd.angularDamping = 0.02f; - } - - m_bodies[m_bodyIndex] = m_world->CreateBody(&bd); - - if (index < 4) - { - b2FixtureDef fd; - fd.shape = m_polygons + index; - fd.friction = 0.3f; - m_bodies[m_bodyIndex]->CreateFixture(&fd); - } - else if (index < 5) - { - b2FixtureDef fd; - fd.shape = &m_circle; - fd.friction = 0.3f; - - m_bodies[m_bodyIndex]->CreateFixture(&fd); - } - else - { - b2FixtureDef fd; - fd.shape = &m_edge; - fd.friction = 0.3f; - - m_bodies[m_bodyIndex]->CreateFixture(&fd); - } - - m_bodyIndex = (m_bodyIndex + 1) % e_maxBodies; - } - - void DestroyBody() - { - for (int32 i = 0; i < e_maxBodies; ++i) - { - if (m_bodies[i] != NULL) - { - m_world->DestroyBody(m_bodies[i]); - m_bodies[i] = NULL; - return; - } - } - } - - void Keyboard(unsigned char key) - { - switch (key) - { - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - Create(key - '1'); - break; - - case 'd': - DestroyBody(); - break; - - case 'm': - if (m_mode == e_closest) - { - m_mode = e_any; - } - else if (m_mode == e_any) - { - m_mode = e_multiple; - } - else if (m_mode == e_multiple) - { - m_mode = e_closest; - } - } - } - - void Step(Settings* settings) - { - bool advanceRay = settings->pause == 0 || settings->singleStep; - - Test::Step(settings); - m_debugDraw.DrawString(5, m_textLine, "Press 1-6 to drop stuff, m to change the mode"); - m_textLine += DRAW_STRING_NEW_LINE; - switch (m_mode) - { - case e_closest: - m_debugDraw.DrawString(5, m_textLine, "Ray-cast mode: closest - find closest fixture along the ray"); - break; - - case e_any: - m_debugDraw.DrawString(5, m_textLine, "Ray-cast mode: any - check for obstruction"); - break; - - case e_multiple: - m_debugDraw.DrawString(5, m_textLine, "Ray-cast mode: multiple - gather multiple fixtures"); - break; - } - - m_textLine += DRAW_STRING_NEW_LINE; - - float32 L = 11.0f; - b2Vec2 point1(0.0f, 10.0f); - b2Vec2 d(L * cosf(m_angle), L * sinf(m_angle)); - b2Vec2 point2 = point1 + d; - - if (m_mode == e_closest) - { - RayCastClosestCallback callback; - m_world->RayCast(&callback, point1, point2); - - if (callback.m_hit) - { - m_debugDraw.DrawPoint(callback.m_point, 5.0f, b2Color(0.4f, 0.9f, 0.4f)); - m_debugDraw.DrawSegment(point1, callback.m_point, b2Color(0.8f, 0.8f, 0.8f)); - b2Vec2 head = callback.m_point + 0.5f * callback.m_normal; - m_debugDraw.DrawSegment(callback.m_point, head, b2Color(0.9f, 0.9f, 0.4f)); - } - else - { - m_debugDraw.DrawSegment(point1, point2, b2Color(0.8f, 0.8f, 0.8f)); - } - } - else if (m_mode == e_any) - { - RayCastAnyCallback callback; - m_world->RayCast(&callback, point1, point2); - - if (callback.m_hit) - { - m_debugDraw.DrawPoint(callback.m_point, 5.0f, b2Color(0.4f, 0.9f, 0.4f)); - m_debugDraw.DrawSegment(point1, callback.m_point, b2Color(0.8f, 0.8f, 0.8f)); - b2Vec2 head = callback.m_point + 0.5f * callback.m_normal; - m_debugDraw.DrawSegment(callback.m_point, head, b2Color(0.9f, 0.9f, 0.4f)); - } - else - { - m_debugDraw.DrawSegment(point1, point2, b2Color(0.8f, 0.8f, 0.8f)); - } - } - else if (m_mode == e_multiple) - { - RayCastMultipleCallback callback; - m_world->RayCast(&callback, point1, point2); - m_debugDraw.DrawSegment(point1, point2, b2Color(0.8f, 0.8f, 0.8f)); - - for (int32 i = 0; i < callback.m_count; ++i) - { - b2Vec2 p = callback.m_points[i]; - b2Vec2 n = callback.m_normals[i]; - m_debugDraw.DrawPoint(p, 5.0f, b2Color(0.4f, 0.9f, 0.4f)); - m_debugDraw.DrawSegment(point1, p, b2Color(0.8f, 0.8f, 0.8f)); - b2Vec2 head = p + 0.5f * n; - m_debugDraw.DrawSegment(p, head, b2Color(0.9f, 0.9f, 0.4f)); - } - } - - if (advanceRay) - { - m_angle += 0.25f * b2_pi / 180.0f; - } - -#if 0 - // This case was failing. - { - b2Vec2 vertices[4]; - //vertices[0].Set(-22.875f, -3.0f); - //vertices[1].Set(22.875f, -3.0f); - //vertices[2].Set(22.875f, 3.0f); - //vertices[3].Set(-22.875f, 3.0f); - - b2PolygonShape shape; - //shape.Set(vertices, 4); - shape.SetAsBox(22.875f, 3.0f); - - b2RayCastInput input; - input.p1.Set(10.2725f,1.71372f); - input.p2.Set(10.2353f,2.21807f); - //input.maxFraction = 0.567623f; - input.maxFraction = 0.56762173f; - - b2Transform xf; - xf.SetIdentity(); - xf.position.Set(23.0f, 5.0f); - - b2RayCastOutput output; - bool hit; - hit = shape.RayCast(&output, input, xf); - hit = false; - - b2Color color(1.0f, 1.0f, 1.0f); - b2Vec2 vs[4]; - for (int32 i = 0; i < 4; ++i) - { - vs[i] = b2Mul(xf, shape.m_vertices[i]); - } - - m_debugDraw.DrawPolygon(vs, 4, color); - m_debugDraw.DrawSegment(input.p1, input.p2, color); - } -#endif - } - - static Test* Create() - { - return new RayCast; - } - - int32 m_bodyIndex; - b2Body* m_bodies[e_maxBodies]; - int32 m_userData[e_maxBodies]; - b2PolygonShape m_polygons[4]; - b2CircleShape m_circle; - b2EdgeShape m_edge; - - float32 m_angle; - - Mode m_mode; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Revolute.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Revolute.h deleted file mode 100644 index 27cc8c5..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Revolute.h +++ /dev/null @@ -1,166 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef REVOLUTE_H -#define REVOLUTE_H - -class Revolute : public Test -{ -public: - Revolute() - { - b2Body* ground = NULL; - { - b2BodyDef bd; - ground = m_world->CreateBody(&bd); - - b2EdgeShape shape; - shape.Set(b2Vec2(-40.0f, 0.0f), b2Vec2(40.0f, 0.0f)); - - b2FixtureDef fd; - fd.shape = &shape; - //fd.filter.categoryBits = 2; - - ground->CreateFixture(&fd); - } - - { - b2CircleShape shape; - shape.m_radius = 0.5f; - - b2BodyDef bd; - bd.type = b2_dynamicBody; - - b2RevoluteJointDef rjd; - - bd.position.Set(-10.0f, 20.0f); - b2Body* body = m_world->CreateBody(&bd); - body->CreateFixture(&shape, 5.0f); - - float32 w = 100.0f; - body->SetAngularVelocity(w); - body->SetLinearVelocity(b2Vec2(-8.0f * w, 0.0f)); - - rjd.Initialize(ground, body, b2Vec2(-10.0f, 12.0f)); - rjd.motorSpeed = 1.0f * b2_pi; - rjd.maxMotorTorque = 10000.0f; - rjd.enableMotor = false; - rjd.lowerAngle = -0.25f * b2_pi; - rjd.upperAngle = 0.5f * b2_pi; - rjd.enableLimit = true; - rjd.collideConnected = true; - - m_joint = (b2RevoluteJoint*)m_world->CreateJoint(&rjd); - } - - { - b2CircleShape circle_shape; - circle_shape.m_radius = 3.0f; - - b2BodyDef circle_bd; - circle_bd.type = b2_dynamicBody; - circle_bd.position.Set(5.0f, 30.0f); - - b2FixtureDef fd; - fd.density = 5.0f; - fd.filter.maskBits = 1; - fd.shape = &circle_shape; - - m_ball = m_world->CreateBody(&circle_bd); - m_ball->CreateFixture(&fd); - - b2PolygonShape polygon_shape; - polygon_shape.SetAsBox(10.0f, 0.2f, b2Vec2 (-10.0f, 0.0f), 0.0f); - - b2BodyDef polygon_bd; - polygon_bd.position.Set(20.0f, 10.0f); - polygon_bd.type = b2_dynamicBody; - polygon_bd.bullet = true; - b2Body* polygon_body = m_world->CreateBody(&polygon_bd); - polygon_body->CreateFixture(&polygon_shape, 2.0f); - - b2RevoluteJointDef rjd; - rjd.Initialize(ground, polygon_body, b2Vec2(20.0f, 10.0f)); - rjd.lowerAngle = -0.25f * b2_pi; - rjd.upperAngle = 0.0f * b2_pi; - rjd.enableLimit = true; - m_world->CreateJoint(&rjd); - } - - // Tests mass computation of a small object far from the origin - { - b2BodyDef bodyDef; - bodyDef.type = b2_dynamicBody; - b2Body* body = m_world->CreateBody(&bodyDef); - - b2PolygonShape polyShape; - b2Vec2 verts[3]; - verts[0].Set( 17.63f, 36.31f ); - verts[1].Set( 17.52f, 36.69f ); - verts[2].Set( 17.19f, 36.36f ); - polyShape.Set(verts, 3); - - b2FixtureDef polyFixtureDef; - polyFixtureDef.shape = &polyShape; - polyFixtureDef.density = 1; - - body->CreateFixture(&polyFixtureDef); //assertion hits inside here - } - - } - - void Keyboard(unsigned char key) - { - switch (key) - { - case 'l': - m_joint->EnableLimit(!m_joint->IsLimitEnabled()); - break; - - case 'm': - m_joint->EnableMotor(!m_joint->IsMotorEnabled()); - break; - } - } - - void Step(Settings* settings) - { - Test::Step(settings); - m_debugDraw.DrawString(5, m_textLine, "Keys: (l) limits, (m) motor"); - m_textLine += DRAW_STRING_NEW_LINE; - - //if (m_stepCount == 360) - //{ - // m_ball->SetTransform(b2Vec2(0.0f, 0.5f), 0.0f); - //} - - //float32 torque1 = m_joint1->GetMotorTorque(); - //m_debugDraw.DrawString(5, m_textLine, "Motor Torque = %4.0f, %4.0f : Motor Force = %4.0f", (float) torque1, (float) torque2, (float) force3); - //m_textLine += DRAW_STRING_NEW_LINE; - } - - static Test* Create() - { - return new Revolute; - } - - b2Body* m_ball; - b2RevoluteJoint* m_joint; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Rope.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Rope.h deleted file mode 100644 index 2e09d5f..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Rope.h +++ /dev/null @@ -1,101 +0,0 @@ -/* -* Copyright (c) 2011 Erin Catto http://box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef ROPE_H -#define ROPE_H - -/// -class Rope : public Test -{ -public: - Rope() - { - const int32 N = 40; - b2Vec2 vertices[N]; - float32 masses[N]; - - for (int32 i = 0; i < N; ++i) - { - vertices[i].Set(0.0f, 20.0f - 0.25f * i); - masses[i] = 1.0f; - } - masses[0] = 0.0f; - masses[1] = 0.0f; - - b2RopeDef def; - def.vertices = vertices; - def.count = N; - def.gravity.Set(0.0f, -10.0f); - def.masses = masses; - def.damping = 0.1f; - def.k2 = 1.0f; - def.k3 = 0.5f; - - m_rope.Initialize(&def); - - m_angle = 0.0f; - m_rope.SetAngle(m_angle); - } - - void Keyboard(unsigned char key) - { - switch (key) - { - case 'q': - m_angle = b2Max(-b2_pi, m_angle - 0.05f * b2_pi); - m_rope.SetAngle(m_angle); - break; - - case 'e': - m_angle = b2Min(b2_pi, m_angle + 0.05f * b2_pi); - m_rope.SetAngle(m_angle); - break; - } - } - - void Step(Settings* settings) - { - float32 dt = settings->hz > 0.0f ? 1.0f / settings->hz : 0.0f; - - if (settings->pause == 1 && settings->singleStep == 0) - { - dt = 0.0f; - } - - m_rope.Step(dt, 1); - - Test::Step(settings); - - m_rope.Draw(&m_debugDraw); - - m_debugDraw.DrawString(5, m_textLine, "Press (q,e) to adjust target angle"); - m_textLine += DRAW_STRING_NEW_LINE; - m_debugDraw.DrawString(5, m_textLine, "Target angle = %g degrees", m_angle * 180.0f / b2_pi); - m_textLine += DRAW_STRING_NEW_LINE; - } - - static Test* Create() - { - return new Rope; - } - - b2Rope m_rope; - float32 m_angle; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/RopeJoint.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/RopeJoint.h deleted file mode 100644 index 6672cbf..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/RopeJoint.h +++ /dev/null @@ -1,145 +0,0 @@ -/* -* Copyright (c) 2006-2010 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef ROPE_JOINT_H -#define ROPE_JOINT_H - -/// This test shows how a rope joint can be used to stabilize a chain of -/// bodies with a heavy payload. Notice that the rope joint just prevents -/// excessive stretching and has no other effect. -/// By disabling the rope joint you can see that the Box2D solver has trouble -/// supporting heavy bodies with light bodies. Try playing around with the -/// densities, time step, and iterations to see how they affect stability. -/// This test also shows how to use contact filtering. Filtering is configured -/// so that the payload does not collide with the chain. -class RopeJoint : public Test -{ -public: - RopeJoint() - { - b2Body* ground = NULL; - { - b2BodyDef bd; - ground = m_world->CreateBody(&bd); - - b2EdgeShape shape; - shape.Set(b2Vec2(-40.0f, 0.0f), b2Vec2(40.0f, 0.0f)); - ground->CreateFixture(&shape, 0.0f); - } - - { - b2PolygonShape shape; - shape.SetAsBox(0.5f, 0.125f); - - b2FixtureDef fd; - fd.shape = &shape; - fd.density = 20.0f; - fd.friction = 0.2f; - fd.filter.categoryBits = 0x0001; - fd.filter.maskBits = 0xFFFF & ~0x0002; - - b2RevoluteJointDef jd; - jd.collideConnected = false; - - const int32 N = 10; - const float32 y = 15.0f; - m_ropeDef.localAnchorA.Set(0.0f, y); - - b2Body* prevBody = ground; - for (int32 i = 0; i < N; ++i) - { - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(0.5f + 1.0f * i, y); - if (i == N - 1) - { - shape.SetAsBox(1.5f, 1.5f); - fd.density = 100.0f; - fd.filter.categoryBits = 0x0002; - bd.position.Set(1.0f * i, y); - bd.angularDamping = 0.4f; - } - - b2Body* body = m_world->CreateBody(&bd); - - body->CreateFixture(&fd); - - b2Vec2 anchor(float32(i), y); - jd.Initialize(prevBody, body, anchor); - m_world->CreateJoint(&jd); - - prevBody = body; - } - - m_ropeDef.localAnchorB.SetZero(); - - float32 extraLength = 0.01f; - m_ropeDef.maxLength = N - 1.0f + extraLength; - m_ropeDef.bodyB = prevBody; - } - - { - m_ropeDef.bodyA = ground; - m_rope = m_world->CreateJoint(&m_ropeDef); - } - } - - void Keyboard(unsigned char key) - { - switch (key) - { - case 'j': - if (m_rope) - { - m_world->DestroyJoint(m_rope); - m_rope = NULL; - } - else - { - m_rope = m_world->CreateJoint(&m_ropeDef); - } - break; - } - } - - void Step(Settings* settings) - { - Test::Step(settings); - m_debugDraw.DrawString(5, m_textLine, "Press (j) to toggle the rope joint."); - m_textLine += DRAW_STRING_NEW_LINE; - if (m_rope) - { - m_debugDraw.DrawString(5, m_textLine, "Rope ON"); - } - else - { - m_debugDraw.DrawString(5, m_textLine, "Rope OFF"); - } - m_textLine += DRAW_STRING_NEW_LINE; - } - - static Test* Create() - { - return new RopeJoint; - } - - b2RopeJointDef m_ropeDef; - b2Joint* m_rope; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/SensorTest.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/SensorTest.h deleted file mode 100644 index 295eee3..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/SensorTest.h +++ /dev/null @@ -1,181 +0,0 @@ -/* -* Copyright (c) 2008-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef SENSOR_TEST_H -#define SENSOR_TEST_H - -// This is used to test sensor shapes. -class SensorTest : public Test -{ -public: - - enum - { - e_count = 7 - }; - - SensorTest() - { - { - b2BodyDef bd; - b2Body* ground = m_world->CreateBody(&bd); - - { - b2EdgeShape shape; - shape.Set(b2Vec2(-40.0f, 0.0f), b2Vec2(40.0f, 0.0f)); - ground->CreateFixture(&shape, 0.0f); - } - -#if 0 - { - b2FixtureDef sd; - sd.SetAsBox(10.0f, 2.0f, b2Vec2(0.0f, 20.0f), 0.0f); - sd.isSensor = true; - m_sensor = ground->CreateFixture(&sd); - } -#else - { - b2CircleShape shape; - shape.m_radius = 5.0f; - shape.m_p.Set(0.0f, 10.0f); - - b2FixtureDef fd; - fd.shape = &shape; - fd.isSensor = true; - m_sensor = ground->CreateFixture(&fd); - } -#endif - } - - { - b2CircleShape shape; - shape.m_radius = 1.0f; - - for (int32 i = 0; i < e_count; ++i) - { - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(-10.0f + 3.0f * i, 20.0f); - bd.userData = m_touching + i; - - m_touching[i] = false; - m_bodies[i] = m_world->CreateBody(&bd); - - m_bodies[i]->CreateFixture(&shape, 1.0f); - } - } - } - - // Implement contact listener. - void BeginContact(b2Contact* contact) - { - b2Fixture* fixtureA = contact->GetFixtureA(); - b2Fixture* fixtureB = contact->GetFixtureB(); - - if (fixtureA == m_sensor) - { - void* userData = fixtureB->GetBody()->GetUserData(); - if (userData) - { - bool* touching = (bool*)userData; - *touching = true; - } - } - - if (fixtureB == m_sensor) - { - void* userData = fixtureA->GetBody()->GetUserData(); - if (userData) - { - bool* touching = (bool*)userData; - *touching = true; - } - } - } - - // Implement contact listener. - void EndContact(b2Contact* contact) - { - b2Fixture* fixtureA = contact->GetFixtureA(); - b2Fixture* fixtureB = contact->GetFixtureB(); - - if (fixtureA == m_sensor) - { - void* userData = fixtureB->GetBody()->GetUserData(); - if (userData) - { - bool* touching = (bool*)userData; - *touching = false; - } - } - - if (fixtureB == m_sensor) - { - void* userData = fixtureA->GetBody()->GetUserData(); - if (userData) - { - bool* touching = (bool*)userData; - *touching = false; - } - } - } - - void Step(Settings* settings) - { - Test::Step(settings); - - // Traverse the contact results. Apply a force on shapes - // that overlap the sensor. - for (int32 i = 0; i < e_count; ++i) - { - if (m_touching[i] == false) - { - continue; - } - - b2Body* body = m_bodies[i]; - b2Body* ground = m_sensor->GetBody(); - - b2CircleShape* circle = (b2CircleShape*)m_sensor->GetShape(); - b2Vec2 center = ground->GetWorldPoint(circle->m_p); - - b2Vec2 position = body->GetPosition(); - - b2Vec2 d = center - position; - if (d.LengthSquared() < FLT_EPSILON * FLT_EPSILON) - { - continue; - } - - d.Normalize(); - b2Vec2 F = 100.0f * d; - body->ApplyForce(F, position, false); - } - } - - static Test* Create() - { - return new SensorTest; - } - - b2Fixture* m_sensor; - b2Body* m_bodies[e_count]; - bool m_touching[e_count]; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/ShapeEditing.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/ShapeEditing.h deleted file mode 100644 index 23040cb..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/ShapeEditing.h +++ /dev/null @@ -1,105 +0,0 @@ -/* -* Copyright (c) 2008-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef SHAPE_EDITING_H -#define SHAPE_EDITING_H - -class ShapeEditing : public Test -{ -public: - - ShapeEditing() - { - { - b2BodyDef bd; - b2Body* ground = m_world->CreateBody(&bd); - - b2EdgeShape shape; - shape.Set(b2Vec2(-40.0f, 0.0f), b2Vec2(40.0f, 0.0f)); - ground->CreateFixture(&shape, 0.0f); - } - - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(0.0f, 10.0f); - m_body = m_world->CreateBody(&bd); - - b2PolygonShape shape; - shape.SetAsBox(4.0f, 4.0f, b2Vec2(0.0f, 0.0f), 0.0f); - m_fixture1 = m_body->CreateFixture(&shape, 10.0f); - - m_fixture2 = NULL; - - m_sensor = false; - } - - void Keyboard(unsigned char key) - { - switch (key) - { - case 'c': - if (m_fixture2 == NULL) - { - b2CircleShape shape; - shape.m_radius = 3.0f; - shape.m_p.Set(0.5f, -4.0f); - m_fixture2 = m_body->CreateFixture(&shape, 10.0f); - m_body->SetAwake(true); - } - break; - - case 'd': - if (m_fixture2 != NULL) - { - m_body->DestroyFixture(m_fixture2); - m_fixture2 = NULL; - m_body->SetAwake(true); - } - break; - - case 's': - if (m_fixture2 != NULL) - { - m_sensor = !m_sensor; - m_fixture2->SetSensor(m_sensor); - } - break; - } - } - - void Step(Settings* settings) - { - Test::Step(settings); - m_debugDraw.DrawString(5, m_textLine, "Press: (c) create a shape, (d) destroy a shape."); - m_textLine += DRAW_STRING_NEW_LINE; - m_debugDraw.DrawString(5, m_textLine, "sensor = %d", m_sensor); - m_textLine += DRAW_STRING_NEW_LINE; - } - - static Test* Create() - { - return new ShapeEditing; - } - - b2Body* m_body; - b2Fixture* m_fixture1; - b2Fixture* m_fixture2; - bool m_sensor; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/SliderCrank.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/SliderCrank.h deleted file mode 100644 index 3660360..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/SliderCrank.h +++ /dev/null @@ -1,156 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef SLIDER_CRANK_H -#define SLIDER_CRANK_H - -// A motor driven slider crank with joint friction. - -class SliderCrank : public Test -{ -public: - SliderCrank() - { - b2Body* ground = NULL; - { - b2BodyDef bd; - ground = m_world->CreateBody(&bd); - - b2EdgeShape shape; - shape.Set(b2Vec2(-40.0f, 0.0f), b2Vec2(40.0f, 0.0f)); - ground->CreateFixture(&shape, 0.0f); - } - - { - b2Body* prevBody = ground; - - // Define crank. - { - b2PolygonShape shape; - shape.SetAsBox(0.5f, 2.0f); - - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(0.0f, 7.0f); - b2Body* body = m_world->CreateBody(&bd); - body->CreateFixture(&shape, 2.0f); - - b2RevoluteJointDef rjd; - rjd.Initialize(prevBody, body, b2Vec2(0.0f, 5.0f)); - rjd.motorSpeed = 1.0f * b2_pi; - rjd.maxMotorTorque = 10000.0f; - rjd.enableMotor = true; - m_joint1 = (b2RevoluteJoint*)m_world->CreateJoint(&rjd); - - prevBody = body; - } - - // Define follower. - { - b2PolygonShape shape; - shape.SetAsBox(0.5f, 4.0f); - - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(0.0f, 13.0f); - b2Body* body = m_world->CreateBody(&bd); - body->CreateFixture(&shape, 2.0f); - - b2RevoluteJointDef rjd; - rjd.Initialize(prevBody, body, b2Vec2(0.0f, 9.0f)); - rjd.enableMotor = false; - m_world->CreateJoint(&rjd); - - prevBody = body; - } - - // Define piston - { - b2PolygonShape shape; - shape.SetAsBox(1.5f, 1.5f); - - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.fixedRotation = true; - bd.position.Set(0.0f, 17.0f); - b2Body* body = m_world->CreateBody(&bd); - body->CreateFixture(&shape, 2.0f); - - b2RevoluteJointDef rjd; - rjd.Initialize(prevBody, body, b2Vec2(0.0f, 17.0f)); - m_world->CreateJoint(&rjd); - - b2PrismaticJointDef pjd; - pjd.Initialize(ground, body, b2Vec2(0.0f, 17.0f), b2Vec2(0.0f, 1.0f)); - - pjd.maxMotorForce = 1000.0f; - pjd.enableMotor = true; - - m_joint2 = (b2PrismaticJoint*)m_world->CreateJoint(&pjd); - } - - // Create a payload - { - b2PolygonShape shape; - shape.SetAsBox(1.5f, 1.5f); - - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(0.0f, 23.0f); - b2Body* body = m_world->CreateBody(&bd); - body->CreateFixture(&shape, 2.0f); - } - } - } - - void Keyboard(unsigned char key) - { - switch (key) - { - case 'f': - m_joint2->EnableMotor(!m_joint2->IsMotorEnabled()); - m_joint2->GetBodyB()->SetAwake(true); - break; - - case 'm': - m_joint1->EnableMotor(!m_joint1->IsMotorEnabled()); - m_joint1->GetBodyB()->SetAwake(true); - break; - } - } - - void Step(Settings* settings) - { - Test::Step(settings); - m_debugDraw.DrawString(5, m_textLine, "Keys: (f) toggle friction, (m) toggle motor"); - m_textLine += DRAW_STRING_NEW_LINE; - float32 torque = m_joint1->GetMotorTorque(settings->hz); - m_debugDraw.DrawString(5, m_textLine, "Motor Torque = %5.0f", (float) torque); - m_textLine += DRAW_STRING_NEW_LINE; - } - - static Test* Create() - { - return new SliderCrank; - } - - b2RevoluteJoint* m_joint1; - b2PrismaticJoint* m_joint2; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/SphereStack.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/SphereStack.h deleted file mode 100644 index 22485c6..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/SphereStack.h +++ /dev/null @@ -1,86 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef SPHERE_STACK_H -#define SPHERE_STACK_H - -class SphereStack : public Test -{ -public: - - enum - { - e_count = 10 - }; - - SphereStack() - { - { - b2BodyDef bd; - b2Body* ground = m_world->CreateBody(&bd); - - b2EdgeShape shape; - shape.Set(b2Vec2(-40.0f, 0.0f), b2Vec2(40.0f, 0.0f)); - ground->CreateFixture(&shape, 0.0f); - } - - { - b2CircleShape shape; - shape.m_radius = 1.0f; - - for (int32 i = 0; i < e_count; ++i) - { - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(0.0, 4.0f + 3.0f * i); - - m_bodies[i] = m_world->CreateBody(&bd); - - m_bodies[i]->CreateFixture(&shape, 1.0f); - - m_bodies[i]->SetLinearVelocity(b2Vec2(0.0f, -50.0f)); - } - } - } - - void Step(Settings* settings) - { - Test::Step(settings); - - //for (int32 i = 0; i < e_count; ++i) - //{ - // printf("%g ", m_bodies[i]->GetWorldCenter().y); - //} - - //for (int32 i = 0; i < e_count; ++i) - //{ - // printf("%g ", m_bodies[i]->GetLinearVelocity().y); - //} - - //printf("\n"); - } - - static Test* Create() - { - return new SphereStack; - } - - b2Body* m_bodies[e_count]; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/TestEntries.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/TestEntries.cpp deleted file mode 100644 index 6f535c9..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/TestEntries.cpp +++ /dev/null @@ -1,130 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include "../Framework/Test.h" -#include "../Framework/Render.h" - -#ifdef __APPLE__ - #include -#else - #include "freeglut/freeglut.h" -#endif - -#include "AddPair.h" -#include "ApplyForce.h" -#include "BodyTypes.h" -#include "Breakable.h" -#include "Bridge.h" -#include "BulletTest.h" -#include "Cantilever.h" -#include "Car.h" -#include "ContinuousTest.h" -#include "Chain.h" -#include "CharacterCollision.h" -#include "CollisionFiltering.h" -#include "CollisionProcessing.h" -#include "CompoundShapes.h" -#include "Confined.h" -#include "ConvexHull.h" -#include "ConveyorBelt.h" -#include "DistanceTest.h" -#include "Dominos.h" -#include "DumpShell.h" -#include "DynamicTreeTest.h" -#include "EdgeShapes.h" -#include "EdgeTest.h" -#include "Gears.h" -#include "Mobile.h" -#include "MobileBalanced.h" -#include "MotorJoint.h" -#include "OneSidedPlatform.h" -#include "Pinball.h" -#include "PolyCollision.h" -#include "PolyShapes.h" -#include "Prismatic.h" -#include "Pulleys.h" -#include "Pyramid.h" -#include "RayCast.h" -#include "Revolute.h" -#include "RopeJoint.h" -#include "SensorTest.h" -#include "ShapeEditing.h" -#include "SliderCrank.h" -#include "SphereStack.h" -#include "TheoJansen.h" -#include "Tiles.h" -#include "TimeOfImpact.h" -#include "Tumbler.h" -#include "VaryingFriction.h" -#include "VaryingRestitution.h" -#include "VerticalStack.h" -#include "Web.h" - -TestEntry g_testEntries[] = -{ - {"Ray-Cast", RayCast::Create}, - {"Dump Shell", DumpShell::Create}, - {"Convex Hull", ConvexHull::Create}, - {"Apply Force", ApplyForce::Create}, - {"Continuous Test", ContinuousTest::Create}, - {"Time of Impact", TimeOfImpact::Create}, - {"Motor Joint", MotorJoint::Create}, - {"One-Sided Platform", OneSidedPlatform::Create}, - {"Mobile", Mobile::Create}, - {"MobileBalanced", MobileBalanced::Create}, - {"Conveyor Belt", ConveyorBelt::Create}, - {"Gears", Gears::Create}, - {"Varying Restitution", VaryingRestitution::Create}, - {"Tumbler", Tumbler::Create}, - {"Tiles", Tiles::Create}, - {"Cantilever", Cantilever::Create}, - {"Character Collision", CharacterCollision::Create}, - {"Edge Test", EdgeTest::Create}, - {"Body Types", BodyTypes::Create}, - {"Shape Editing", ShapeEditing::Create}, - {"Car", Car::Create}, - {"Prismatic", Prismatic::Create}, - {"Vertical Stack", VerticalStack::Create}, - {"SphereStack", SphereStack::Create}, - {"Revolute", Revolute::Create}, - {"Pulleys", Pulleys::Create}, - {"Polygon Shapes", PolyShapes::Create}, - {"Web", Web::Create}, - {"RopeJoint", RopeJoint::Create}, - {"Pinball", Pinball::Create}, - {"Bullet Test", BulletTest::Create}, - {"Confined", Confined::Create}, - {"Pyramid", Pyramid::Create}, - {"Theo Jansen's Walker", TheoJansen::Create}, - {"Edge Shapes", EdgeShapes::Create}, - {"PolyCollision", PolyCollision::Create}, - {"Bridge", Bridge::Create}, - {"Breakable", Breakable::Create}, - {"Chain", Chain::Create}, - {"Collision Filtering", CollisionFiltering::Create}, - {"Collision Processing", CollisionProcessing::Create}, - {"Compound Shapes", CompoundShapes::Create}, - {"Distance Test", DistanceTest::Create}, - {"Dominos", Dominos::Create}, - {"Dynamic Tree", DynamicTreeTest::Create}, - {"Sensor Test", SensorTest::Create}, - {"Slider Crank", SliderCrank::Create}, - {"Varying Friction", VaryingFriction::Create}, - {"Add Pair Stress Test", AddPair::Create}, - {NULL, NULL} -}; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/TheoJansen.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/TheoJansen.h deleted file mode 100644 index d971da7..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/TheoJansen.h +++ /dev/null @@ -1,256 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -// Inspired by a contribution by roman_m -// Dimensions scooped from APE (http://www.cove.org/ape/index.htm) - -#ifndef THEO_JANSEN_H -#define THEO_JANSEN_H - -class TheoJansen : public Test -{ -public: - - void CreateLeg(float32 s, const b2Vec2& wheelAnchor) - { - b2Vec2 p1(5.4f * s, -6.1f); - b2Vec2 p2(7.2f * s, -1.2f); - b2Vec2 p3(4.3f * s, -1.9f); - b2Vec2 p4(3.1f * s, 0.8f); - b2Vec2 p5(6.0f * s, 1.5f); - b2Vec2 p6(2.5f * s, 3.7f); - - b2FixtureDef fd1, fd2; - fd1.filter.groupIndex = -1; - fd2.filter.groupIndex = -1; - fd1.density = 1.0f; - fd2.density = 1.0f; - - b2PolygonShape poly1, poly2; - - if (s > 0.0f) - { - b2Vec2 vertices[3]; - - vertices[0] = p1; - vertices[1] = p2; - vertices[2] = p3; - poly1.Set(vertices, 3); - - vertices[0] = b2Vec2_zero; - vertices[1] = p5 - p4; - vertices[2] = p6 - p4; - poly2.Set(vertices, 3); - } - else - { - b2Vec2 vertices[3]; - - vertices[0] = p1; - vertices[1] = p3; - vertices[2] = p2; - poly1.Set(vertices, 3); - - vertices[0] = b2Vec2_zero; - vertices[1] = p6 - p4; - vertices[2] = p5 - p4; - poly2.Set(vertices, 3); - } - - fd1.shape = &poly1; - fd2.shape = &poly2; - - b2BodyDef bd1, bd2; - bd1.type = b2_dynamicBody; - bd2.type = b2_dynamicBody; - bd1.position = m_offset; - bd2.position = p4 + m_offset; - - bd1.angularDamping = 10.0f; - bd2.angularDamping = 10.0f; - - b2Body* body1 = m_world->CreateBody(&bd1); - b2Body* body2 = m_world->CreateBody(&bd2); - - body1->CreateFixture(&fd1); - body2->CreateFixture(&fd2); - - b2DistanceJointDef djd; - - // Using a soft distance constraint can reduce some jitter. - // It also makes the structure seem a bit more fluid by - // acting like a suspension system. - djd.dampingRatio = 0.5f; - djd.frequencyHz = 10.0f; - - djd.Initialize(body1, body2, p2 + m_offset, p5 + m_offset); - m_world->CreateJoint(&djd); - - djd.Initialize(body1, body2, p3 + m_offset, p4 + m_offset); - m_world->CreateJoint(&djd); - - djd.Initialize(body1, m_wheel, p3 + m_offset, wheelAnchor + m_offset); - m_world->CreateJoint(&djd); - - djd.Initialize(body2, m_wheel, p6 + m_offset, wheelAnchor + m_offset); - m_world->CreateJoint(&djd); - - b2RevoluteJointDef rjd; - - rjd.Initialize(body2, m_chassis, p4 + m_offset); - m_world->CreateJoint(&rjd); - } - - TheoJansen() - { - m_offset.Set(0.0f, 8.0f); - m_motorSpeed = 2.0f; - m_motorOn = true; - b2Vec2 pivot(0.0f, 0.8f); - - // Ground - { - b2BodyDef bd; - b2Body* ground = m_world->CreateBody(&bd); - - b2EdgeShape shape; - shape.Set(b2Vec2(-50.0f, 0.0f), b2Vec2(50.0f, 0.0f)); - ground->CreateFixture(&shape, 0.0f); - - shape.Set(b2Vec2(-50.0f, 0.0f), b2Vec2(-50.0f, 10.0f)); - ground->CreateFixture(&shape, 0.0f); - - shape.Set(b2Vec2(50.0f, 0.0f), b2Vec2(50.0f, 10.0f)); - ground->CreateFixture(&shape, 0.0f); - } - - // Balls - for (int32 i = 0; i < 40; ++i) - { - b2CircleShape shape; - shape.m_radius = 0.25f; - - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(-40.0f + 2.0f * i, 0.5f); - - b2Body* body = m_world->CreateBody(&bd); - body->CreateFixture(&shape, 1.0f); - } - - // Chassis - { - b2PolygonShape shape; - shape.SetAsBox(2.5f, 1.0f); - - b2FixtureDef sd; - sd.density = 1.0f; - sd.shape = &shape; - sd.filter.groupIndex = -1; - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position = pivot + m_offset; - m_chassis = m_world->CreateBody(&bd); - m_chassis->CreateFixture(&sd); - } - - { - b2CircleShape shape; - shape.m_radius = 1.6f; - - b2FixtureDef sd; - sd.density = 1.0f; - sd.shape = &shape; - sd.filter.groupIndex = -1; - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position = pivot + m_offset; - m_wheel = m_world->CreateBody(&bd); - m_wheel->CreateFixture(&sd); - } - - { - b2RevoluteJointDef jd; - jd.Initialize(m_wheel, m_chassis, pivot + m_offset); - jd.collideConnected = false; - jd.motorSpeed = m_motorSpeed; - jd.maxMotorTorque = 400.0f; - jd.enableMotor = m_motorOn; - m_motorJoint = (b2RevoluteJoint*)m_world->CreateJoint(&jd); - } - - b2Vec2 wheelAnchor; - - wheelAnchor = pivot + b2Vec2(0.0f, -0.8f); - - CreateLeg(-1.0f, wheelAnchor); - CreateLeg(1.0f, wheelAnchor); - - m_wheel->SetTransform(m_wheel->GetPosition(), 120.0f * b2_pi / 180.0f); - CreateLeg(-1.0f, wheelAnchor); - CreateLeg(1.0f, wheelAnchor); - - m_wheel->SetTransform(m_wheel->GetPosition(), -120.0f * b2_pi / 180.0f); - CreateLeg(-1.0f, wheelAnchor); - CreateLeg(1.0f, wheelAnchor); - } - - void Step(Settings* settings) - { - m_debugDraw.DrawString(5, m_textLine, "Keys: left = a, brake = s, right = d, toggle motor = m"); - m_textLine += DRAW_STRING_NEW_LINE; - - Test::Step(settings); - } - - void Keyboard(unsigned char key) - { - switch (key) - { - case 'a': - m_motorJoint->SetMotorSpeed(-m_motorSpeed); - break; - - case 's': - m_motorJoint->SetMotorSpeed(0.0f); - break; - - case 'd': - m_motorJoint->SetMotorSpeed(m_motorSpeed); - break; - - case 'm': - m_motorJoint->EnableMotor(!m_motorJoint->IsMotorEnabled()); - break; - } - } - - static Test* Create() - { - return new TheoJansen; - } - - b2Vec2 m_offset; - b2Body* m_chassis; - b2Body* m_wheel; - b2RevoluteJoint* m_motorJoint; - bool m_motorOn; - float32 m_motorSpeed; -}; - -#endif // THEO_JANSEN_H diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Tiles.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Tiles.h deleted file mode 100644 index 3ec668a..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Tiles.h +++ /dev/null @@ -1,156 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef TILES_H -#define TILES_H - -/// This stress tests the dynamic tree broad-phase. This also shows that tile -/// based collision is _not_ smooth due to Box2D not knowing about adjacency. -class Tiles : public Test -{ -public: - enum - { - e_count = 20 - }; - - Tiles() - { - m_fixtureCount = 0; - b2Timer timer; - - { - float32 a = 0.5f; - b2BodyDef bd; - bd.position.y = -a; - b2Body* ground = m_world->CreateBody(&bd); - -#if 1 - int32 N = 200; - int32 M = 10; - b2Vec2 position; - position.y = 0.0f; - for (int32 j = 0; j < M; ++j) - { - position.x = -N * a; - for (int32 i = 0; i < N; ++i) - { - b2PolygonShape shape; - shape.SetAsBox(a, a, position, 0.0f); - ground->CreateFixture(&shape, 0.0f); - ++m_fixtureCount; - position.x += 2.0f * a; - } - position.y -= 2.0f * a; - } -#else - int32 N = 200; - int32 M = 10; - b2Vec2 position; - position.x = -N * a; - for (int32 i = 0; i < N; ++i) - { - position.y = 0.0f; - for (int32 j = 0; j < M; ++j) - { - b2PolygonShape shape; - shape.SetAsBox(a, a, position, 0.0f); - ground->CreateFixture(&shape, 0.0f); - position.y -= 2.0f * a; - } - position.x += 2.0f * a; - } -#endif - } - - { - float32 a = 0.5f; - b2PolygonShape shape; - shape.SetAsBox(a, a); - - b2Vec2 x(-7.0f, 0.75f); - b2Vec2 y; - b2Vec2 deltaX(0.5625f, 1.25f); - b2Vec2 deltaY(1.125f, 0.0f); - - for (int32 i = 0; i < e_count; ++i) - { - y = x; - - for (int32 j = i; j < e_count; ++j) - { - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position = y; - - //if (i == 0 && j == 0) - //{ - // bd.allowSleep = false; - //} - //else - //{ - // bd.allowSleep = true; - //} - - b2Body* body = m_world->CreateBody(&bd); - body->CreateFixture(&shape, 5.0f); - ++m_fixtureCount; - y += deltaY; - } - - x += deltaX; - } - } - - m_createTime = timer.GetMilliseconds(); - } - - void Step(Settings* settings) - { - const b2ContactManager& cm = m_world->GetContactManager(); - int32 height = cm.m_broadPhase.GetTreeHeight(); - int32 leafCount = cm.m_broadPhase.GetProxyCount(); - int32 minimumNodeCount = 2 * leafCount - 1; - float32 minimumHeight = ceilf(logf(float32(minimumNodeCount)) / logf(2.0f)); - m_debugDraw.DrawString(5, m_textLine, "dynamic tree height = %d, min = %d", height, int32(minimumHeight)); - m_textLine += DRAW_STRING_NEW_LINE; - - Test::Step(settings); - - m_debugDraw.DrawString(5, m_textLine, "create time = %6.2f ms, fixture count = %d", - m_createTime, m_fixtureCount); - m_textLine += DRAW_STRING_NEW_LINE; - - //b2DynamicTree* tree = &m_world->m_contactManager.m_broadPhase.m_tree; - - //if (m_stepCount == 400) - //{ - // tree->RebuildBottomUp(); - //} - } - - static Test* Create() - { - return new Tiles; - } - - int32 m_fixtureCount; - float32 m_createTime; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/TimeOfImpact.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/TimeOfImpact.h deleted file mode 100644 index c66cb16..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/TimeOfImpact.h +++ /dev/null @@ -1,127 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef TIME_OF_IMPACT_H -#define TIME_OF_IMPACT_H - -class TimeOfImpact : public Test -{ -public: - TimeOfImpact() - { - m_shapeA.SetAsBox(25.0f, 5.0f); - m_shapeB.SetAsBox(2.5f, 2.5f); - } - - static Test* Create() - { - return new TimeOfImpact; - } - - void Step(Settings* settings) - { - Test::Step(settings); - - b2Sweep sweepA; - sweepA.c0.Set(24.0f, -60.0f); - sweepA.a0 = 2.95f; - sweepA.c = sweepA.c0; - sweepA.a = sweepA.a0; - sweepA.localCenter.SetZero(); - - b2Sweep sweepB; - sweepB.c0.Set(53.474274f, -50.252514f); - sweepB.a0 = 513.36676f; // - 162.0f * b2_pi; - sweepB.c.Set(54.595478f, -51.083473f); - sweepB.a = 513.62781f; // - 162.0f * b2_pi; - sweepB.localCenter.SetZero(); - - //sweepB.a0 -= 300.0f * b2_pi; - //sweepB.a -= 300.0f * b2_pi; - - b2TOIInput input; - input.proxyA.Set(&m_shapeA, 0); - input.proxyB.Set(&m_shapeB, 0); - input.sweepA = sweepA; - input.sweepB = sweepB; - input.tMax = 1.0f; - - b2TOIOutput output; - - b2TimeOfImpact(&output, &input); - - m_debugDraw.DrawString(5, m_textLine, "toi = %g", output.t); - m_textLine += DRAW_STRING_NEW_LINE; - - extern int32 b2_toiMaxIters, b2_toiMaxRootIters; - m_debugDraw.DrawString(5, m_textLine, "max toi iters = %d, max root iters = %d", b2_toiMaxIters, b2_toiMaxRootIters); - m_textLine += DRAW_STRING_NEW_LINE; - - b2Vec2 vertices[b2_maxPolygonVertices]; - - b2Transform transformA; - sweepA.GetTransform(&transformA, 0.0f); - for (int32 i = 0; i < m_shapeA.m_count; ++i) - { - vertices[i] = b2Mul(transformA, m_shapeA.m_vertices[i]); - } - m_debugDraw.DrawPolygon(vertices, m_shapeA.m_count, b2Color(0.9f, 0.9f, 0.9f)); - - b2Transform transformB; - sweepB.GetTransform(&transformB, 0.0f); - - //b2Vec2 localPoint(2.0f, -0.1f); - - for (int32 i = 0; i < m_shapeB.m_count; ++i) - { - vertices[i] = b2Mul(transformB, m_shapeB.m_vertices[i]); - } - m_debugDraw.DrawPolygon(vertices, m_shapeB.m_count, b2Color(0.5f, 0.9f, 0.5f)); - - sweepB.GetTransform(&transformB, output.t); - for (int32 i = 0; i < m_shapeB.m_count; ++i) - { - vertices[i] = b2Mul(transformB, m_shapeB.m_vertices[i]); - } - m_debugDraw.DrawPolygon(vertices, m_shapeB.m_count, b2Color(0.5f, 0.7f, 0.9f)); - - sweepB.GetTransform(&transformB, 1.0f); - for (int32 i = 0; i < m_shapeB.m_count; ++i) - { - vertices[i] = b2Mul(transformB, m_shapeB.m_vertices[i]); - } - m_debugDraw.DrawPolygon(vertices, m_shapeB.m_count, b2Color(0.9f, 0.5f, 0.5f)); - -#if 0 - for (float32 t = 0.0f; t < 1.0f; t += 0.1f) - { - sweepB.GetTransform(&transformB, t); - for (int32 i = 0; i < m_shapeB.m_count; ++i) - { - vertices[i] = b2Mul(transformB, m_shapeB.m_vertices[i]); - } - m_debugDraw.DrawPolygon(vertices, m_shapeB.m_count, b2Color(0.9f, 0.5f, 0.5f)); - } -#endif - } - - b2PolygonShape m_shapeA; - b2PolygonShape m_shapeB; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Tumbler.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Tumbler.h deleted file mode 100644 index b654915..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Tumbler.h +++ /dev/null @@ -1,99 +0,0 @@ -/* -* Copyright (c) 2011 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef TUMBLER_H -#define TUMBLER_H - -class Tumbler : public Test -{ -public: - - enum - { - e_count = 800 - }; - - Tumbler() - { - b2Body* ground = NULL; - { - b2BodyDef bd; - ground = m_world->CreateBody(&bd); - } - - { - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.allowSleep = false; - bd.position.Set(0.0f, 10.0f); - b2Body* body = m_world->CreateBody(&bd); - - b2PolygonShape shape; - shape.SetAsBox(0.5f, 10.0f, b2Vec2( 10.0f, 0.0f), 0.0); - body->CreateFixture(&shape, 5.0f); - shape.SetAsBox(0.5f, 10.0f, b2Vec2(-10.0f, 0.0f), 0.0); - body->CreateFixture(&shape, 5.0f); - shape.SetAsBox(10.0f, 0.5f, b2Vec2(0.0f, 10.0f), 0.0); - body->CreateFixture(&shape, 5.0f); - shape.SetAsBox(10.0f, 0.5f, b2Vec2(0.0f, -10.0f), 0.0); - body->CreateFixture(&shape, 5.0f); - - b2RevoluteJointDef jd; - jd.bodyA = ground; - jd.bodyB = body; - jd.localAnchorA.Set(0.0f, 10.0f); - jd.localAnchorB.Set(0.0f, 0.0f); - jd.referenceAngle = 0.0f; - jd.motorSpeed = 0.05f * b2_pi; - jd.maxMotorTorque = 1e8f; - jd.enableMotor = true; - m_joint = (b2RevoluteJoint*)m_world->CreateJoint(&jd); - } - - m_count = 0; - } - - void Step(Settings* settings) - { - Test::Step(settings); - - if (m_count < e_count) - { - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(0.0f, 10.0f); - b2Body* body = m_world->CreateBody(&bd); - - b2PolygonShape shape; - shape.SetAsBox(0.125f, 0.125f); - body->CreateFixture(&shape, 1.0f); - - ++m_count; - } - } - - static Test* Create() - { - return new Tumbler; - } - - b2RevoluteJoint* m_joint; - int32 m_count; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/VaryingFriction.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/VaryingFriction.h deleted file mode 100644 index a28354a..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/VaryingFriction.h +++ /dev/null @@ -1,124 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef VARYING_FRICTION_H -#define VARYING_FRICTION_H - -class VaryingFriction : public Test -{ -public: - - VaryingFriction() - { - { - b2BodyDef bd; - b2Body* ground = m_world->CreateBody(&bd); - - b2EdgeShape shape; - shape.Set(b2Vec2(-40.0f, 0.0f), b2Vec2(40.0f, 0.0f)); - ground->CreateFixture(&shape, 0.0f); - } - - { - b2PolygonShape shape; - shape.SetAsBox(13.0f, 0.25f); - - b2BodyDef bd; - bd.position.Set(-4.0f, 22.0f); - bd.angle = -0.25f; - - b2Body* ground = m_world->CreateBody(&bd); - ground->CreateFixture(&shape, 0.0f); - } - - { - b2PolygonShape shape; - shape.SetAsBox(0.25f, 1.0f); - - b2BodyDef bd; - bd.position.Set(10.5f, 19.0f); - - b2Body* ground = m_world->CreateBody(&bd); - ground->CreateFixture(&shape, 0.0f); - } - - { - b2PolygonShape shape; - shape.SetAsBox(13.0f, 0.25f); - - b2BodyDef bd; - bd.position.Set(4.0f, 14.0f); - bd.angle = 0.25f; - - b2Body* ground = m_world->CreateBody(&bd); - ground->CreateFixture(&shape, 0.0f); - } - - { - b2PolygonShape shape; - shape.SetAsBox(0.25f, 1.0f); - - b2BodyDef bd; - bd.position.Set(-10.5f, 11.0f); - - b2Body* ground = m_world->CreateBody(&bd); - ground->CreateFixture(&shape, 0.0f); - } - - { - b2PolygonShape shape; - shape.SetAsBox(13.0f, 0.25f); - - b2BodyDef bd; - bd.position.Set(-4.0f, 6.0f); - bd.angle = -0.25f; - - b2Body* ground = m_world->CreateBody(&bd); - ground->CreateFixture(&shape, 0.0f); - } - - { - b2PolygonShape shape; - shape.SetAsBox(0.5f, 0.5f); - - b2FixtureDef fd; - fd.shape = &shape; - fd.density = 25.0f; - - float friction[5] = {0.75f, 0.5f, 0.35f, 0.1f, 0.0f}; - - for (int i = 0; i < 5; ++i) - { - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(-15.0f + 4.0f * i, 28.0f); - b2Body* body = m_world->CreateBody(&bd); - - fd.friction = friction[i]; - body->CreateFixture(&fd); - } - } - } - - static Test* Create() - { - return new VaryingFriction; - } -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/VaryingRestitution.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/VaryingRestitution.h deleted file mode 100644 index 8a1bed6..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/VaryingRestitution.h +++ /dev/null @@ -1,69 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef VARYING_RESTITUTION_H -#define VARYING_RESTITUTION_H - -// Note: even with a restitution of 1.0, there is some energy change -// due to position correction. -class VaryingRestitution : public Test -{ -public: - - VaryingRestitution() - { - { - b2BodyDef bd; - b2Body* ground = m_world->CreateBody(&bd); - - b2EdgeShape shape; - shape.Set(b2Vec2(-40.0f, 0.0f), b2Vec2(40.0f, 0.0f)); - ground->CreateFixture(&shape, 0.0f); - } - - { - b2CircleShape shape; - shape.m_radius = 1.0f; - - b2FixtureDef fd; - fd.shape = &shape; - fd.density = 1.0f; - - float32 restitution[7] = {0.0f, 0.1f, 0.3f, 0.5f, 0.75f, 0.9f, 1.0f}; - - for (int32 i = 0; i < 7; ++i) - { - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position.Set(-10.0f + 3.0f * i, 20.0f); - - b2Body* body = m_world->CreateBody(&bd); - - fd.restitution = restitution[i]; - body->CreateFixture(&fd); - } - } - } - - static Test* Create() - { - return new VaryingRestitution; - } -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/VerticalStack.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/VerticalStack.h deleted file mode 100644 index 0c242fd..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/VerticalStack.h +++ /dev/null @@ -1,165 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef VERTICAL_STACK_H -#define VERTICAL_STACK_H - -class VerticalStack : public Test -{ -public: - - enum - { - e_columnCount = 5, - e_rowCount = 16 - //e_columnCount = 1, - //e_rowCount = 1 - }; - - VerticalStack() - { - { - b2BodyDef bd; - b2Body* ground = m_world->CreateBody(&bd); - - b2EdgeShape shape; - shape.Set(b2Vec2(-40.0f, 0.0f), b2Vec2(40.0f, 0.0f)); - ground->CreateFixture(&shape, 0.0f); - - shape.Set(b2Vec2(20.0f, 0.0f), b2Vec2(20.0f, 20.0f)); - ground->CreateFixture(&shape, 0.0f); - } - - float32 xs[5] = {0.0f, -10.0f, -5.0f, 5.0f, 10.0f}; - - for (int32 j = 0; j < e_columnCount; ++j) - { - b2PolygonShape shape; - shape.SetAsBox(0.5f, 0.5f); - - b2FixtureDef fd; - fd.shape = &shape; - fd.density = 1.0f; - fd.friction = 0.3f; - - for (int i = 0; i < e_rowCount; ++i) - { - b2BodyDef bd; - bd.type = b2_dynamicBody; - - int32 n = j * e_rowCount + i; - b2Assert(n < e_rowCount * e_columnCount); - m_indices[n] = n; - bd.userData = m_indices + n; - - float32 x = 0.0f; - //float32 x = RandomFloat(-0.02f, 0.02f); - //float32 x = i % 2 == 0 ? -0.025f : 0.025f; - bd.position.Set(xs[j] + x, 0.752f + 1.54f * i); - b2Body* body = m_world->CreateBody(&bd); - - m_bodies[n] = body; - - body->CreateFixture(&fd); - } - } - - m_bullet = NULL; - } - - void Keyboard(unsigned char key) - { - switch (key) - { - case ',': - if (m_bullet != NULL) - { - m_world->DestroyBody(m_bullet); - m_bullet = NULL; - } - - { - b2CircleShape shape; - shape.m_radius = 0.25f; - - b2FixtureDef fd; - fd.shape = &shape; - fd.density = 20.0f; - fd.restitution = 0.05f; - - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.bullet = true; - bd.position.Set(-31.0f, 5.0f); - - m_bullet = m_world->CreateBody(&bd); - m_bullet->CreateFixture(&fd); - - m_bullet->SetLinearVelocity(b2Vec2(400.0f, 0.0f)); - } - break; - } - } - - void Step(Settings* settings) - { - Test::Step(settings); - m_debugDraw.DrawString(5, m_textLine, "Press: (,) to launch a bullet."); - m_textLine += DRAW_STRING_NEW_LINE; - - //if (m_stepCount == 300) - //{ - // if (m_bullet != NULL) - // { - // m_world->DestroyBody(m_bullet); - // m_bullet = NULL; - // } - - // { - // b2CircleShape shape; - // shape.m_radius = 0.25f; - - // b2FixtureDef fd; - // fd.shape = &shape; - // fd.density = 20.0f; - // fd.restitution = 0.05f; - - // b2BodyDef bd; - // bd.type = b2_dynamicBody; - // bd.bullet = true; - // bd.position.Set(-31.0f, 5.0f); - - // m_bullet = m_world->CreateBody(&bd); - // m_bullet->CreateFixture(&fd); - - // m_bullet->SetLinearVelocity(b2Vec2(400.0f, 0.0f)); - // } - //} - } - - static Test* Create() - { - return new VerticalStack; - } - - b2Body* m_bullet; - b2Body* m_bodies[e_rowCount * e_columnCount]; - int32 m_indices[e_rowCount * e_columnCount]; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Web.h b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Web.h deleted file mode 100644 index 56ab292..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/Tests/Web.h +++ /dev/null @@ -1,209 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef WEB_H -#define WEB_H - -// This tests distance joints, body destruction, and joint destruction. -class Web : public Test -{ -public: - Web() - { - b2Body* ground = NULL; - { - b2BodyDef bd; - ground = m_world->CreateBody(&bd); - - b2EdgeShape shape; - shape.Set(b2Vec2(-40.0f, 0.0f), b2Vec2(40.0f, 0.0f)); - ground->CreateFixture(&shape, 0.0f); - } - - { - b2PolygonShape shape; - shape.SetAsBox(0.5f, 0.5f); - - b2BodyDef bd; - bd.type = b2_dynamicBody; - - bd.position.Set(-5.0f, 5.0f); - m_bodies[0] = m_world->CreateBody(&bd); - m_bodies[0]->CreateFixture(&shape, 5.0f); - - bd.position.Set(5.0f, 5.0f); - m_bodies[1] = m_world->CreateBody(&bd); - m_bodies[1]->CreateFixture(&shape, 5.0f); - - bd.position.Set(5.0f, 15.0f); - m_bodies[2] = m_world->CreateBody(&bd); - m_bodies[2]->CreateFixture(&shape, 5.0f); - - bd.position.Set(-5.0f, 15.0f); - m_bodies[3] = m_world->CreateBody(&bd); - m_bodies[3]->CreateFixture(&shape, 5.0f); - - b2DistanceJointDef jd; - b2Vec2 p1, p2, d; - - jd.frequencyHz = 2.0f; - jd.dampingRatio = 0.0f; - - jd.bodyA = ground; - jd.bodyB = m_bodies[0]; - jd.localAnchorA.Set(-10.0f, 0.0f); - jd.localAnchorB.Set(-0.5f, -0.5f); - p1 = jd.bodyA->GetWorldPoint(jd.localAnchorA); - p2 = jd.bodyB->GetWorldPoint(jd.localAnchorB); - d = p2 - p1; - jd.length = d.Length(); - m_joints[0] = m_world->CreateJoint(&jd); - - jd.bodyA = ground; - jd.bodyB = m_bodies[1]; - jd.localAnchorA.Set(10.0f, 0.0f); - jd.localAnchorB.Set(0.5f, -0.5f); - p1 = jd.bodyA->GetWorldPoint(jd.localAnchorA); - p2 = jd.bodyB->GetWorldPoint(jd.localAnchorB); - d = p2 - p1; - jd.length = d.Length(); - m_joints[1] = m_world->CreateJoint(&jd); - - jd.bodyA = ground; - jd.bodyB = m_bodies[2]; - jd.localAnchorA.Set(10.0f, 20.0f); - jd.localAnchorB.Set(0.5f, 0.5f); - p1 = jd.bodyA->GetWorldPoint(jd.localAnchorA); - p2 = jd.bodyB->GetWorldPoint(jd.localAnchorB); - d = p2 - p1; - jd.length = d.Length(); - m_joints[2] = m_world->CreateJoint(&jd); - - jd.bodyA = ground; - jd.bodyB = m_bodies[3]; - jd.localAnchorA.Set(-10.0f, 20.0f); - jd.localAnchorB.Set(-0.5f, 0.5f); - p1 = jd.bodyA->GetWorldPoint(jd.localAnchorA); - p2 = jd.bodyB->GetWorldPoint(jd.localAnchorB); - d = p2 - p1; - jd.length = d.Length(); - m_joints[3] = m_world->CreateJoint(&jd); - - jd.bodyA = m_bodies[0]; - jd.bodyB = m_bodies[1]; - jd.localAnchorA.Set(0.5f, 0.0f); - jd.localAnchorB.Set(-0.5f, 0.0f);; - p1 = jd.bodyA->GetWorldPoint(jd.localAnchorA); - p2 = jd.bodyB->GetWorldPoint(jd.localAnchorB); - d = p2 - p1; - jd.length = d.Length(); - m_joints[4] = m_world->CreateJoint(&jd); - - jd.bodyA = m_bodies[1]; - jd.bodyB = m_bodies[2]; - jd.localAnchorA.Set(0.0f, 0.5f); - jd.localAnchorB.Set(0.0f, -0.5f); - p1 = jd.bodyA->GetWorldPoint(jd.localAnchorA); - p2 = jd.bodyB->GetWorldPoint(jd.localAnchorB); - d = p2 - p1; - jd.length = d.Length(); - m_joints[5] = m_world->CreateJoint(&jd); - - jd.bodyA = m_bodies[2]; - jd.bodyB = m_bodies[3]; - jd.localAnchorA.Set(-0.5f, 0.0f); - jd.localAnchorB.Set(0.5f, 0.0f); - p1 = jd.bodyA->GetWorldPoint(jd.localAnchorA); - p2 = jd.bodyB->GetWorldPoint(jd.localAnchorB); - d = p2 - p1; - jd.length = d.Length(); - m_joints[6] = m_world->CreateJoint(&jd); - - jd.bodyA = m_bodies[3]; - jd.bodyB = m_bodies[0]; - jd.localAnchorA.Set(0.0f, -0.5f); - jd.localAnchorB.Set(0.0f, 0.5f); - p1 = jd.bodyA->GetWorldPoint(jd.localAnchorA); - p2 = jd.bodyB->GetWorldPoint(jd.localAnchorB); - d = p2 - p1; - jd.length = d.Length(); - m_joints[7] = m_world->CreateJoint(&jd); - } - } - - void Keyboard(unsigned char key) - { - switch (key) - { - case 'b': - for (int32 i = 0; i < 4; ++i) - { - if (m_bodies[i]) - { - m_world->DestroyBody(m_bodies[i]); - m_bodies[i] = NULL; - break; - } - } - break; - - case 'j': - for (int32 i = 0; i < 8; ++i) - { - if (m_joints[i]) - { - m_world->DestroyJoint(m_joints[i]); - m_joints[i] = NULL; - break; - } - } - break; - } - } - - void Step(Settings* settings) - { - Test::Step(settings); - m_debugDraw.DrawString(5, m_textLine, "This demonstrates a soft distance joint."); - m_textLine += DRAW_STRING_NEW_LINE; - m_debugDraw.DrawString(5, m_textLine, "Press: (b) to delete a body, (j) to delete a joint"); - m_textLine += DRAW_STRING_NEW_LINE; - } - - void JointDestroyed(b2Joint* joint) - { - for (int32 i = 0; i < 8; ++i) - { - if (m_joints[i] == joint) - { - m_joints[i] = NULL; - break; - } - } - } - - static Test* Create() - { - return new Web; - } - - b2Body* m_bodies[4]; - b2Joint* m_joints[8]; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/cmake_install.cmake b/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/cmake_install.cmake deleted file mode 100644 index b31f2a2..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/cmake_install.cmake +++ /dev/null @@ -1,34 +0,0 @@ -# Install script for directory: /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed - -# Set the install prefix -IF(NOT DEFINED CMAKE_INSTALL_PREFIX) - SET(CMAKE_INSTALL_PREFIX "/usr/local") -ENDIF(NOT DEFINED CMAKE_INSTALL_PREFIX) -STRING(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") - -# Set the install configuration name. -IF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) - IF(BUILD_TYPE) - STRING(REGEX REPLACE "^[^A-Za-z0-9_]+" "" - CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") - ELSE(BUILD_TYPE) - SET(CMAKE_INSTALL_CONFIG_NAME "") - ENDIF(BUILD_TYPE) - MESSAGE(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") -ENDIF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) - -# Set the component getting installed. -IF(NOT CMAKE_INSTALL_COMPONENT) - IF(COMPONENT) - MESSAGE(STATUS "Install component: \"${COMPONENT}\"") - SET(CMAKE_INSTALL_COMPONENT "${COMPONENT}") - ELSE(COMPONENT) - SET(CMAKE_INSTALL_COMPONENT) - ENDIF(COMPONENT) -ENDIF(NOT CMAKE_INSTALL_COMPONENT) - -# Install shared libraries without execute permission? -IF(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE) - SET(CMAKE_INSTALL_SO_NO_EXE "1") -ENDIF(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE) - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/cmake_install.cmake b/src/dependencies/Box2D_v2.3.0/Box2D/cmake_install.cmake deleted file mode 100644 index d5bd53c..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/cmake_install.cmake +++ /dev/null @@ -1,54 +0,0 @@ -# Install script for directory: /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D - -# Set the install prefix -IF(NOT DEFINED CMAKE_INSTALL_PREFIX) - SET(CMAKE_INSTALL_PREFIX "/usr/local") -ENDIF(NOT DEFINED CMAKE_INSTALL_PREFIX) -STRING(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") - -# Set the install configuration name. -IF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) - IF(BUILD_TYPE) - STRING(REGEX REPLACE "^[^A-Za-z0-9_]+" "" - CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") - ELSE(BUILD_TYPE) - SET(CMAKE_INSTALL_CONFIG_NAME "") - ENDIF(BUILD_TYPE) - MESSAGE(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") -ENDIF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) - -# Set the component getting installed. -IF(NOT CMAKE_INSTALL_COMPONENT) - IF(COMPONENT) - MESSAGE(STATUS "Install component: \"${COMPONENT}\"") - SET(CMAKE_INSTALL_COMPONENT "${COMPONENT}") - ELSE(COMPONENT) - SET(CMAKE_INSTALL_COMPONENT) - ENDIF(COMPONENT) -ENDIF(NOT CMAKE_INSTALL_COMPONENT) - -# Install shared libraries without execute permission? -IF(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE) - SET(CMAKE_INSTALL_SO_NO_EXE "1") -ENDIF(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE) - -IF(NOT CMAKE_INSTALL_LOCAL_ONLY) - # Include the install script for each subdirectory. - INCLUDE("/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Box2D/cmake_install.cmake") - INCLUDE("/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/HelloWorld/cmake_install.cmake") - INCLUDE("/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/cmake_install.cmake") - INCLUDE("/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/cmake_install.cmake") - INCLUDE("/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/Testbed/cmake_install.cmake") - -ENDIF(NOT CMAKE_INSTALL_LOCAL_ONLY) - -IF(CMAKE_INSTALL_COMPONENT) - SET(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INSTALL_COMPONENT}.txt") -ELSE(CMAKE_INSTALL_COMPONENT) - SET(CMAKE_INSTALL_MANIFEST "install_manifest.txt") -ENDIF(CMAKE_INSTALL_COMPONENT) - -FILE(WRITE "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/${CMAKE_INSTALL_MANIFEST}" "") -FOREACH(file ${CMAKE_INSTALL_MANIFEST_FILES}) - FILE(APPEND "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/${CMAKE_INSTALL_MANIFEST}" "${file}\n") -ENDFOREACH(file) diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/CMakeDirectoryInformation.cmake b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/CMakeDirectoryInformation.cmake deleted file mode 100644 index 21c61ba..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/CMakeDirectoryInformation.cmake +++ /dev/null @@ -1,16 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 2.8 - -# Relative path conversion top directories. -SET(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D") -SET(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D") - -# Force unix paths in dependencies. -SET(CMAKE_FORCE_UNIX_PATHS 1) - - -# The C and CXX include file regular expressions for this directory. -SET(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$") -SET(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$") -SET(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN}) -SET(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN}) diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/C.includecache b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/C.includecache deleted file mode 100644 index edaaca5..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/C.includecache +++ /dev/null @@ -1,316 +0,0 @@ -#IncludeRegexLine: ^[ ]*#[ ]*(include|import)[ ]*[<"]([^">]+)([">]) - -#IncludeRegexScan: ^.*$ - -#IncludeRegexComplain: ^$ - -#IncludeRegexTransform: - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h -freeglut_std.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_std.h -freeglut_ext.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_ext.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_callbacks.c -freeglut.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h -freeglut_internal.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_cursor.c -freeglut.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h -freeglut_internal.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h -X11/cursorfont.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_display.c -freeglut.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h -freeglut_internal.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_ext.c -freeglut.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h -freeglut_internal.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_ext.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_font.c -freeglut.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h -freeglut_internal.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_font_data.c -freeglut.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h -freeglut_internal.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_gamemode.c -freeglut.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h -freeglut_internal.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_geometry.c -freeglut.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h -freeglut_internal.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_glutfont_definitions.c -freeglut_std.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_std.h -freeglut_internal.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_init.c -freeglut.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h -freeglut_internal.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h -limits.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_input_devices.c -config.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/config.h -freeglut.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h -freeglut_internal.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h -errno.h -- -sys/ioctl.h -- -sys/time.h -- -time.h -- -stdio.h -- -stdlib.h -- -unistd.h -- -string.h -- -termios.h -- -fcntl.h -- -sys/types.h -- -sys/types.h -- -winbase.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h -config.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/config.h -Windows.h -- -WindowsX.h -- -MMSystem.h -- -tchar.h -- -GL/glx.h -- -X11/Xlib.h -- -X11/Xatom.h -- -X11/keysym.h -- -X11/extensions/XInput.h -- -X11/extensions/xf86vmode.h -- -stdio.h -- -string.h -- -math.h -- -stdlib.h -- -sys/types.h -- -unistd.h -- -sys/time.h -- -time.h -- -sys/time.h -- -time.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_joystick.c -freeglut.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h -freeglut_internal.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h -sys/param.h -- -InputSprocket.h -- -mach/mach.h -- -IOKit/IOkitLib.h -- -IOKit/hid/IOHIDLib.h -- -windows.h -- -mmsystem.h -- -regstr.h -- -sys/ioctl.h -- -fcntl.h -- -errno.h -- -sys/joystick.h -- -machine/joystick.h -- -linux/joystick.h -- -usbhid.h -- -usb.h -- -libusbhid.h -- -usbhid.h -- -dev/usb/usb.h -- -dev/usb/usbhid.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_main.c -freeglut.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h -freeglut_internal.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h -errno.h -- -stdarg.h -- -gx.h -- -limits.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_menu.c -freeglut.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h -freeglut_internal.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_misc.c -freeglut.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h -freeglut_internal.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_overlay.c -freeglut.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h -freeglut_internal.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_spaceball.c -freeglut.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h -freeglut_internal.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h -X11/Xlib.h -- -stdio.h -- -stdlib.h -- -string.h -- -errno.h -- -X11/Xlib.h -- -X11/Xutil.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_state.c -freeglut.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h -freeglut_internal.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_std.h -windows.h -- -GL/gl.h -- -GL/glu.h -- -stdlib.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_stroke_mono_roman.c -freeglut.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h -freeglut_internal.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_stroke_roman.c -freeglut.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h -freeglut_internal.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_structure.c -freeglut.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h -freeglut_internal.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_teapot.c -freeglut.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h -freeglut_internal.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h -freeglut_teapot_data.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_teapot_data.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_teapot_data.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_videoresize.c -freeglut.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h -freeglut_internal.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_window.c -freeglut.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h -freeglut_internal.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h -limits.h -- -Aygshell.h -- - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/DependInfo.cmake b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/DependInfo.cmake deleted file mode 100644 index 07d2736..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/DependInfo.cmake +++ /dev/null @@ -1,54 +0,0 @@ -# The set of languages for which implicit dependencies are needed: -SET(CMAKE_DEPENDS_LANGUAGES - "C" - ) -# The set of files for implicit dependencies of each language: -SET(CMAKE_DEPENDS_CHECK_C - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_callbacks.c" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_callbacks.c.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_cursor.c" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_cursor.c.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_display.c" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_display.c.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_ext.c" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_ext.c.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_font.c" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_font.c.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_font_data.c" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_font_data.c.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_gamemode.c" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_gamemode.c.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_geometry.c" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_geometry.c.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_glutfont_definitions.c" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_glutfont_definitions.c.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_init.c" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_init.c.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_input_devices.c" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_input_devices.c.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_joystick.c" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_joystick.c.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_main.c" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_main.c.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_menu.c" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_menu.c.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_misc.c" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_misc.c.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_overlay.c" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_overlay.c.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_spaceball.c" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_spaceball.c.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_state.c" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_state.c.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_stroke_mono_roman.c" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_mono_roman.c.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_stroke_roman.c" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_roman.c.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_structure.c" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_structure.c.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_teapot.c" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_teapot.c.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_videoresize.c" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_videoresize.c.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_window.c" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_window.c.o" - ) -SET(CMAKE_C_COMPILER_ID "GNU") - -# Preprocessor definitions for this target. -SET(CMAKE_TARGET_DEFINITIONS - "FREEGLUT_EXPORTS" - "FREEGLUT_STATIC" - "HAVE_FCNTL_H" - "HAVE_GETTIMEOFDAY" - "_CRT_SECURE_NO_WARNINGS" - "__unix__" - ) - -# Targets to which this target links. -SET(CMAKE_TARGET_LINKED_INFO_FILES - ) - -# The include file search paths: -SET(CMAKE_C_TARGET_INCLUDE_PATH - "freeglut/." - ) -SET(CMAKE_CXX_TARGET_INCLUDE_PATH ${CMAKE_C_TARGET_INCLUDE_PATH}) -SET(CMAKE_Fortran_TARGET_INCLUDE_PATH ${CMAKE_C_TARGET_INCLUDE_PATH}) -SET(CMAKE_ASM_TARGET_INCLUDE_PATH ${CMAKE_C_TARGET_INCLUDE_PATH}) diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/build.make b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/build.make deleted file mode 100644 index 3b00a6d..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/build.make +++ /dev/null @@ -1,701 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 2.8 - -#============================================================================= -# Special targets provided by cmake. - -# Disable implicit rules so canonical targets will work. -.SUFFIXES: - -# Remove some rules from gmake that .SUFFIXES does not remove. -SUFFIXES = - -.SUFFIXES: .hpux_make_needs_suffix_list - -# Suppress display of executed commands. -$(VERBOSE).SILENT: - -# A target that is always out of date. -cmake_force: -.PHONY : cmake_force - -#============================================================================= -# Set environment variables for the build. - -# The shell in which to execute make rules. -SHELL = /bin/sh - -# The CMake executable. -CMAKE_COMMAND = /usr/bin/cmake - -# The command to remove a file. -RM = /usr/bin/cmake -E remove -f - -# Escaping for special characters. -EQUALS = = - -# The top-level source directory on which CMake was run. -CMAKE_SOURCE_DIR = /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D - -# The top-level build directory on which CMake was run. -CMAKE_BINARY_DIR = /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D - -# Include any dependencies generated for this target. -include freeglut/CMakeFiles/freeglut_static.dir/depend.make - -# Include the progress variables for this target. -include freeglut/CMakeFiles/freeglut_static.dir/progress.make - -# Include the compile flags for this target's objects. -include freeglut/CMakeFiles/freeglut_static.dir/flags.make - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_callbacks.c.o: freeglut/CMakeFiles/freeglut_static.dir/flags.make -freeglut/CMakeFiles/freeglut_static.dir/freeglut_callbacks.c.o: freeglut/freeglut_callbacks.c - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_1) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building C object freeglut/CMakeFiles/freeglut_static.dir/freeglut_callbacks.c.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -o CMakeFiles/freeglut_static.dir/freeglut_callbacks.c.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_callbacks.c - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_callbacks.c.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/freeglut_static.dir/freeglut_callbacks.c.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_callbacks.c > CMakeFiles/freeglut_static.dir/freeglut_callbacks.c.i - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_callbacks.c.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/freeglut_static.dir/freeglut_callbacks.c.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_callbacks.c -o CMakeFiles/freeglut_static.dir/freeglut_callbacks.c.s - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_callbacks.c.o.requires: -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_callbacks.c.o.requires - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_callbacks.c.o.provides: freeglut/CMakeFiles/freeglut_static.dir/freeglut_callbacks.c.o.requires - $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_callbacks.c.o.provides.build -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_callbacks.c.o.provides - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_callbacks.c.o.provides.build: freeglut/CMakeFiles/freeglut_static.dir/freeglut_callbacks.c.o - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_cursor.c.o: freeglut/CMakeFiles/freeglut_static.dir/flags.make -freeglut/CMakeFiles/freeglut_static.dir/freeglut_cursor.c.o: freeglut/freeglut_cursor.c - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_2) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building C object freeglut/CMakeFiles/freeglut_static.dir/freeglut_cursor.c.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -o CMakeFiles/freeglut_static.dir/freeglut_cursor.c.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_cursor.c - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_cursor.c.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/freeglut_static.dir/freeglut_cursor.c.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_cursor.c > CMakeFiles/freeglut_static.dir/freeglut_cursor.c.i - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_cursor.c.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/freeglut_static.dir/freeglut_cursor.c.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_cursor.c -o CMakeFiles/freeglut_static.dir/freeglut_cursor.c.s - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_cursor.c.o.requires: -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_cursor.c.o.requires - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_cursor.c.o.provides: freeglut/CMakeFiles/freeglut_static.dir/freeglut_cursor.c.o.requires - $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_cursor.c.o.provides.build -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_cursor.c.o.provides - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_cursor.c.o.provides.build: freeglut/CMakeFiles/freeglut_static.dir/freeglut_cursor.c.o - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_display.c.o: freeglut/CMakeFiles/freeglut_static.dir/flags.make -freeglut/CMakeFiles/freeglut_static.dir/freeglut_display.c.o: freeglut/freeglut_display.c - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_3) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building C object freeglut/CMakeFiles/freeglut_static.dir/freeglut_display.c.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -o CMakeFiles/freeglut_static.dir/freeglut_display.c.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_display.c - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_display.c.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/freeglut_static.dir/freeglut_display.c.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_display.c > CMakeFiles/freeglut_static.dir/freeglut_display.c.i - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_display.c.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/freeglut_static.dir/freeglut_display.c.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_display.c -o CMakeFiles/freeglut_static.dir/freeglut_display.c.s - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_display.c.o.requires: -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_display.c.o.requires - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_display.c.o.provides: freeglut/CMakeFiles/freeglut_static.dir/freeglut_display.c.o.requires - $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_display.c.o.provides.build -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_display.c.o.provides - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_display.c.o.provides.build: freeglut/CMakeFiles/freeglut_static.dir/freeglut_display.c.o - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_ext.c.o: freeglut/CMakeFiles/freeglut_static.dir/flags.make -freeglut/CMakeFiles/freeglut_static.dir/freeglut_ext.c.o: freeglut/freeglut_ext.c - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_4) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building C object freeglut/CMakeFiles/freeglut_static.dir/freeglut_ext.c.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -o CMakeFiles/freeglut_static.dir/freeglut_ext.c.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_ext.c - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_ext.c.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/freeglut_static.dir/freeglut_ext.c.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_ext.c > CMakeFiles/freeglut_static.dir/freeglut_ext.c.i - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_ext.c.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/freeglut_static.dir/freeglut_ext.c.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_ext.c -o CMakeFiles/freeglut_static.dir/freeglut_ext.c.s - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_ext.c.o.requires: -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_ext.c.o.requires - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_ext.c.o.provides: freeglut/CMakeFiles/freeglut_static.dir/freeglut_ext.c.o.requires - $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_ext.c.o.provides.build -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_ext.c.o.provides - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_ext.c.o.provides.build: freeglut/CMakeFiles/freeglut_static.dir/freeglut_ext.c.o - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_font_data.c.o: freeglut/CMakeFiles/freeglut_static.dir/flags.make -freeglut/CMakeFiles/freeglut_static.dir/freeglut_font_data.c.o: freeglut/freeglut_font_data.c - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_5) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building C object freeglut/CMakeFiles/freeglut_static.dir/freeglut_font_data.c.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -o CMakeFiles/freeglut_static.dir/freeglut_font_data.c.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_font_data.c - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_font_data.c.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/freeglut_static.dir/freeglut_font_data.c.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_font_data.c > CMakeFiles/freeglut_static.dir/freeglut_font_data.c.i - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_font_data.c.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/freeglut_static.dir/freeglut_font_data.c.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_font_data.c -o CMakeFiles/freeglut_static.dir/freeglut_font_data.c.s - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_font_data.c.o.requires: -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_font_data.c.o.requires - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_font_data.c.o.provides: freeglut/CMakeFiles/freeglut_static.dir/freeglut_font_data.c.o.requires - $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_font_data.c.o.provides.build -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_font_data.c.o.provides - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_font_data.c.o.provides.build: freeglut/CMakeFiles/freeglut_static.dir/freeglut_font_data.c.o - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_font.c.o: freeglut/CMakeFiles/freeglut_static.dir/flags.make -freeglut/CMakeFiles/freeglut_static.dir/freeglut_font.c.o: freeglut/freeglut_font.c - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_6) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building C object freeglut/CMakeFiles/freeglut_static.dir/freeglut_font.c.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -o CMakeFiles/freeglut_static.dir/freeglut_font.c.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_font.c - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_font.c.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/freeglut_static.dir/freeglut_font.c.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_font.c > CMakeFiles/freeglut_static.dir/freeglut_font.c.i - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_font.c.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/freeglut_static.dir/freeglut_font.c.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_font.c -o CMakeFiles/freeglut_static.dir/freeglut_font.c.s - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_font.c.o.requires: -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_font.c.o.requires - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_font.c.o.provides: freeglut/CMakeFiles/freeglut_static.dir/freeglut_font.c.o.requires - $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_font.c.o.provides.build -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_font.c.o.provides - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_font.c.o.provides.build: freeglut/CMakeFiles/freeglut_static.dir/freeglut_font.c.o - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_gamemode.c.o: freeglut/CMakeFiles/freeglut_static.dir/flags.make -freeglut/CMakeFiles/freeglut_static.dir/freeglut_gamemode.c.o: freeglut/freeglut_gamemode.c - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_7) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building C object freeglut/CMakeFiles/freeglut_static.dir/freeglut_gamemode.c.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -o CMakeFiles/freeglut_static.dir/freeglut_gamemode.c.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_gamemode.c - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_gamemode.c.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/freeglut_static.dir/freeglut_gamemode.c.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_gamemode.c > CMakeFiles/freeglut_static.dir/freeglut_gamemode.c.i - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_gamemode.c.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/freeglut_static.dir/freeglut_gamemode.c.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_gamemode.c -o CMakeFiles/freeglut_static.dir/freeglut_gamemode.c.s - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_gamemode.c.o.requires: -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_gamemode.c.o.requires - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_gamemode.c.o.provides: freeglut/CMakeFiles/freeglut_static.dir/freeglut_gamemode.c.o.requires - $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_gamemode.c.o.provides.build -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_gamemode.c.o.provides - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_gamemode.c.o.provides.build: freeglut/CMakeFiles/freeglut_static.dir/freeglut_gamemode.c.o - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_geometry.c.o: freeglut/CMakeFiles/freeglut_static.dir/flags.make -freeglut/CMakeFiles/freeglut_static.dir/freeglut_geometry.c.o: freeglut/freeglut_geometry.c - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_8) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building C object freeglut/CMakeFiles/freeglut_static.dir/freeglut_geometry.c.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -o CMakeFiles/freeglut_static.dir/freeglut_geometry.c.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_geometry.c - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_geometry.c.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/freeglut_static.dir/freeglut_geometry.c.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_geometry.c > CMakeFiles/freeglut_static.dir/freeglut_geometry.c.i - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_geometry.c.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/freeglut_static.dir/freeglut_geometry.c.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_geometry.c -o CMakeFiles/freeglut_static.dir/freeglut_geometry.c.s - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_geometry.c.o.requires: -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_geometry.c.o.requires - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_geometry.c.o.provides: freeglut/CMakeFiles/freeglut_static.dir/freeglut_geometry.c.o.requires - $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_geometry.c.o.provides.build -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_geometry.c.o.provides - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_geometry.c.o.provides.build: freeglut/CMakeFiles/freeglut_static.dir/freeglut_geometry.c.o - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_glutfont_definitions.c.o: freeglut/CMakeFiles/freeglut_static.dir/flags.make -freeglut/CMakeFiles/freeglut_static.dir/freeglut_glutfont_definitions.c.o: freeglut/freeglut_glutfont_definitions.c - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_9) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building C object freeglut/CMakeFiles/freeglut_static.dir/freeglut_glutfont_definitions.c.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -o CMakeFiles/freeglut_static.dir/freeglut_glutfont_definitions.c.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_glutfont_definitions.c - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_glutfont_definitions.c.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/freeglut_static.dir/freeglut_glutfont_definitions.c.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_glutfont_definitions.c > CMakeFiles/freeglut_static.dir/freeglut_glutfont_definitions.c.i - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_glutfont_definitions.c.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/freeglut_static.dir/freeglut_glutfont_definitions.c.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_glutfont_definitions.c -o CMakeFiles/freeglut_static.dir/freeglut_glutfont_definitions.c.s - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_glutfont_definitions.c.o.requires: -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_glutfont_definitions.c.o.requires - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_glutfont_definitions.c.o.provides: freeglut/CMakeFiles/freeglut_static.dir/freeglut_glutfont_definitions.c.o.requires - $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_glutfont_definitions.c.o.provides.build -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_glutfont_definitions.c.o.provides - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_glutfont_definitions.c.o.provides.build: freeglut/CMakeFiles/freeglut_static.dir/freeglut_glutfont_definitions.c.o - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_init.c.o: freeglut/CMakeFiles/freeglut_static.dir/flags.make -freeglut/CMakeFiles/freeglut_static.dir/freeglut_init.c.o: freeglut/freeglut_init.c - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_10) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building C object freeglut/CMakeFiles/freeglut_static.dir/freeglut_init.c.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -o CMakeFiles/freeglut_static.dir/freeglut_init.c.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_init.c - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_init.c.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/freeglut_static.dir/freeglut_init.c.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_init.c > CMakeFiles/freeglut_static.dir/freeglut_init.c.i - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_init.c.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/freeglut_static.dir/freeglut_init.c.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_init.c -o CMakeFiles/freeglut_static.dir/freeglut_init.c.s - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_init.c.o.requires: -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_init.c.o.requires - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_init.c.o.provides: freeglut/CMakeFiles/freeglut_static.dir/freeglut_init.c.o.requires - $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_init.c.o.provides.build -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_init.c.o.provides - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_init.c.o.provides.build: freeglut/CMakeFiles/freeglut_static.dir/freeglut_init.c.o - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_input_devices.c.o: freeglut/CMakeFiles/freeglut_static.dir/flags.make -freeglut/CMakeFiles/freeglut_static.dir/freeglut_input_devices.c.o: freeglut/freeglut_input_devices.c - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_11) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building C object freeglut/CMakeFiles/freeglut_static.dir/freeglut_input_devices.c.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -o CMakeFiles/freeglut_static.dir/freeglut_input_devices.c.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_input_devices.c - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_input_devices.c.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/freeglut_static.dir/freeglut_input_devices.c.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_input_devices.c > CMakeFiles/freeglut_static.dir/freeglut_input_devices.c.i - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_input_devices.c.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/freeglut_static.dir/freeglut_input_devices.c.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_input_devices.c -o CMakeFiles/freeglut_static.dir/freeglut_input_devices.c.s - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_input_devices.c.o.requires: -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_input_devices.c.o.requires - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_input_devices.c.o.provides: freeglut/CMakeFiles/freeglut_static.dir/freeglut_input_devices.c.o.requires - $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_input_devices.c.o.provides.build -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_input_devices.c.o.provides - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_input_devices.c.o.provides.build: freeglut/CMakeFiles/freeglut_static.dir/freeglut_input_devices.c.o - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_joystick.c.o: freeglut/CMakeFiles/freeglut_static.dir/flags.make -freeglut/CMakeFiles/freeglut_static.dir/freeglut_joystick.c.o: freeglut/freeglut_joystick.c - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_12) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building C object freeglut/CMakeFiles/freeglut_static.dir/freeglut_joystick.c.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -o CMakeFiles/freeglut_static.dir/freeglut_joystick.c.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_joystick.c - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_joystick.c.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/freeglut_static.dir/freeglut_joystick.c.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_joystick.c > CMakeFiles/freeglut_static.dir/freeglut_joystick.c.i - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_joystick.c.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/freeglut_static.dir/freeglut_joystick.c.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_joystick.c -o CMakeFiles/freeglut_static.dir/freeglut_joystick.c.s - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_joystick.c.o.requires: -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_joystick.c.o.requires - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_joystick.c.o.provides: freeglut/CMakeFiles/freeglut_static.dir/freeglut_joystick.c.o.requires - $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_joystick.c.o.provides.build -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_joystick.c.o.provides - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_joystick.c.o.provides.build: freeglut/CMakeFiles/freeglut_static.dir/freeglut_joystick.c.o - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_main.c.o: freeglut/CMakeFiles/freeglut_static.dir/flags.make -freeglut/CMakeFiles/freeglut_static.dir/freeglut_main.c.o: freeglut/freeglut_main.c - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_13) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building C object freeglut/CMakeFiles/freeglut_static.dir/freeglut_main.c.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -o CMakeFiles/freeglut_static.dir/freeglut_main.c.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_main.c - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_main.c.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/freeglut_static.dir/freeglut_main.c.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_main.c > CMakeFiles/freeglut_static.dir/freeglut_main.c.i - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_main.c.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/freeglut_static.dir/freeglut_main.c.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_main.c -o CMakeFiles/freeglut_static.dir/freeglut_main.c.s - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_main.c.o.requires: -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_main.c.o.requires - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_main.c.o.provides: freeglut/CMakeFiles/freeglut_static.dir/freeglut_main.c.o.requires - $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_main.c.o.provides.build -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_main.c.o.provides - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_main.c.o.provides.build: freeglut/CMakeFiles/freeglut_static.dir/freeglut_main.c.o - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_menu.c.o: freeglut/CMakeFiles/freeglut_static.dir/flags.make -freeglut/CMakeFiles/freeglut_static.dir/freeglut_menu.c.o: freeglut/freeglut_menu.c - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_14) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building C object freeglut/CMakeFiles/freeglut_static.dir/freeglut_menu.c.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -o CMakeFiles/freeglut_static.dir/freeglut_menu.c.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_menu.c - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_menu.c.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/freeglut_static.dir/freeglut_menu.c.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_menu.c > CMakeFiles/freeglut_static.dir/freeglut_menu.c.i - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_menu.c.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/freeglut_static.dir/freeglut_menu.c.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_menu.c -o CMakeFiles/freeglut_static.dir/freeglut_menu.c.s - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_menu.c.o.requires: -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_menu.c.o.requires - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_menu.c.o.provides: freeglut/CMakeFiles/freeglut_static.dir/freeglut_menu.c.o.requires - $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_menu.c.o.provides.build -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_menu.c.o.provides - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_menu.c.o.provides.build: freeglut/CMakeFiles/freeglut_static.dir/freeglut_menu.c.o - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_misc.c.o: freeglut/CMakeFiles/freeglut_static.dir/flags.make -freeglut/CMakeFiles/freeglut_static.dir/freeglut_misc.c.o: freeglut/freeglut_misc.c - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_15) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building C object freeglut/CMakeFiles/freeglut_static.dir/freeglut_misc.c.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -o CMakeFiles/freeglut_static.dir/freeglut_misc.c.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_misc.c - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_misc.c.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/freeglut_static.dir/freeglut_misc.c.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_misc.c > CMakeFiles/freeglut_static.dir/freeglut_misc.c.i - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_misc.c.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/freeglut_static.dir/freeglut_misc.c.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_misc.c -o CMakeFiles/freeglut_static.dir/freeglut_misc.c.s - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_misc.c.o.requires: -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_misc.c.o.requires - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_misc.c.o.provides: freeglut/CMakeFiles/freeglut_static.dir/freeglut_misc.c.o.requires - $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_misc.c.o.provides.build -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_misc.c.o.provides - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_misc.c.o.provides.build: freeglut/CMakeFiles/freeglut_static.dir/freeglut_misc.c.o - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_overlay.c.o: freeglut/CMakeFiles/freeglut_static.dir/flags.make -freeglut/CMakeFiles/freeglut_static.dir/freeglut_overlay.c.o: freeglut/freeglut_overlay.c - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_16) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building C object freeglut/CMakeFiles/freeglut_static.dir/freeglut_overlay.c.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -o CMakeFiles/freeglut_static.dir/freeglut_overlay.c.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_overlay.c - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_overlay.c.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/freeglut_static.dir/freeglut_overlay.c.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_overlay.c > CMakeFiles/freeglut_static.dir/freeglut_overlay.c.i - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_overlay.c.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/freeglut_static.dir/freeglut_overlay.c.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_overlay.c -o CMakeFiles/freeglut_static.dir/freeglut_overlay.c.s - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_overlay.c.o.requires: -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_overlay.c.o.requires - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_overlay.c.o.provides: freeglut/CMakeFiles/freeglut_static.dir/freeglut_overlay.c.o.requires - $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_overlay.c.o.provides.build -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_overlay.c.o.provides - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_overlay.c.o.provides.build: freeglut/CMakeFiles/freeglut_static.dir/freeglut_overlay.c.o - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_spaceball.c.o: freeglut/CMakeFiles/freeglut_static.dir/flags.make -freeglut/CMakeFiles/freeglut_static.dir/freeglut_spaceball.c.o: freeglut/freeglut_spaceball.c - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_17) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building C object freeglut/CMakeFiles/freeglut_static.dir/freeglut_spaceball.c.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -o CMakeFiles/freeglut_static.dir/freeglut_spaceball.c.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_spaceball.c - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_spaceball.c.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/freeglut_static.dir/freeglut_spaceball.c.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_spaceball.c > CMakeFiles/freeglut_static.dir/freeglut_spaceball.c.i - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_spaceball.c.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/freeglut_static.dir/freeglut_spaceball.c.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_spaceball.c -o CMakeFiles/freeglut_static.dir/freeglut_spaceball.c.s - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_spaceball.c.o.requires: -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_spaceball.c.o.requires - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_spaceball.c.o.provides: freeglut/CMakeFiles/freeglut_static.dir/freeglut_spaceball.c.o.requires - $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_spaceball.c.o.provides.build -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_spaceball.c.o.provides - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_spaceball.c.o.provides.build: freeglut/CMakeFiles/freeglut_static.dir/freeglut_spaceball.c.o - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_state.c.o: freeglut/CMakeFiles/freeglut_static.dir/flags.make -freeglut/CMakeFiles/freeglut_static.dir/freeglut_state.c.o: freeglut/freeglut_state.c - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_18) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building C object freeglut/CMakeFiles/freeglut_static.dir/freeglut_state.c.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -o CMakeFiles/freeglut_static.dir/freeglut_state.c.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_state.c - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_state.c.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/freeglut_static.dir/freeglut_state.c.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_state.c > CMakeFiles/freeglut_static.dir/freeglut_state.c.i - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_state.c.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/freeglut_static.dir/freeglut_state.c.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_state.c -o CMakeFiles/freeglut_static.dir/freeglut_state.c.s - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_state.c.o.requires: -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_state.c.o.requires - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_state.c.o.provides: freeglut/CMakeFiles/freeglut_static.dir/freeglut_state.c.o.requires - $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_state.c.o.provides.build -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_state.c.o.provides - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_state.c.o.provides.build: freeglut/CMakeFiles/freeglut_static.dir/freeglut_state.c.o - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_mono_roman.c.o: freeglut/CMakeFiles/freeglut_static.dir/flags.make -freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_mono_roman.c.o: freeglut/freeglut_stroke_mono_roman.c - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_19) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building C object freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_mono_roman.c.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -o CMakeFiles/freeglut_static.dir/freeglut_stroke_mono_roman.c.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_stroke_mono_roman.c - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_mono_roman.c.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/freeglut_static.dir/freeglut_stroke_mono_roman.c.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_stroke_mono_roman.c > CMakeFiles/freeglut_static.dir/freeglut_stroke_mono_roman.c.i - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_mono_roman.c.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/freeglut_static.dir/freeglut_stroke_mono_roman.c.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_stroke_mono_roman.c -o CMakeFiles/freeglut_static.dir/freeglut_stroke_mono_roman.c.s - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_mono_roman.c.o.requires: -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_mono_roman.c.o.requires - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_mono_roman.c.o.provides: freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_mono_roman.c.o.requires - $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_mono_roman.c.o.provides.build -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_mono_roman.c.o.provides - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_mono_roman.c.o.provides.build: freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_mono_roman.c.o - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_roman.c.o: freeglut/CMakeFiles/freeglut_static.dir/flags.make -freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_roman.c.o: freeglut/freeglut_stroke_roman.c - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_20) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building C object freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_roman.c.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -o CMakeFiles/freeglut_static.dir/freeglut_stroke_roman.c.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_stroke_roman.c - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_roman.c.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/freeglut_static.dir/freeglut_stroke_roman.c.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_stroke_roman.c > CMakeFiles/freeglut_static.dir/freeglut_stroke_roman.c.i - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_roman.c.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/freeglut_static.dir/freeglut_stroke_roman.c.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_stroke_roman.c -o CMakeFiles/freeglut_static.dir/freeglut_stroke_roman.c.s - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_roman.c.o.requires: -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_roman.c.o.requires - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_roman.c.o.provides: freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_roman.c.o.requires - $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_roman.c.o.provides.build -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_roman.c.o.provides - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_roman.c.o.provides.build: freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_roman.c.o - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_structure.c.o: freeglut/CMakeFiles/freeglut_static.dir/flags.make -freeglut/CMakeFiles/freeglut_static.dir/freeglut_structure.c.o: freeglut/freeglut_structure.c - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_21) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building C object freeglut/CMakeFiles/freeglut_static.dir/freeglut_structure.c.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -o CMakeFiles/freeglut_static.dir/freeglut_structure.c.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_structure.c - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_structure.c.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/freeglut_static.dir/freeglut_structure.c.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_structure.c > CMakeFiles/freeglut_static.dir/freeglut_structure.c.i - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_structure.c.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/freeglut_static.dir/freeglut_structure.c.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_structure.c -o CMakeFiles/freeglut_static.dir/freeglut_structure.c.s - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_structure.c.o.requires: -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_structure.c.o.requires - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_structure.c.o.provides: freeglut/CMakeFiles/freeglut_static.dir/freeglut_structure.c.o.requires - $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_structure.c.o.provides.build -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_structure.c.o.provides - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_structure.c.o.provides.build: freeglut/CMakeFiles/freeglut_static.dir/freeglut_structure.c.o - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_teapot.c.o: freeglut/CMakeFiles/freeglut_static.dir/flags.make -freeglut/CMakeFiles/freeglut_static.dir/freeglut_teapot.c.o: freeglut/freeglut_teapot.c - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_22) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building C object freeglut/CMakeFiles/freeglut_static.dir/freeglut_teapot.c.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -o CMakeFiles/freeglut_static.dir/freeglut_teapot.c.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_teapot.c - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_teapot.c.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/freeglut_static.dir/freeglut_teapot.c.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_teapot.c > CMakeFiles/freeglut_static.dir/freeglut_teapot.c.i - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_teapot.c.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/freeglut_static.dir/freeglut_teapot.c.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_teapot.c -o CMakeFiles/freeglut_static.dir/freeglut_teapot.c.s - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_teapot.c.o.requires: -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_teapot.c.o.requires - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_teapot.c.o.provides: freeglut/CMakeFiles/freeglut_static.dir/freeglut_teapot.c.o.requires - $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_teapot.c.o.provides.build -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_teapot.c.o.provides - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_teapot.c.o.provides.build: freeglut/CMakeFiles/freeglut_static.dir/freeglut_teapot.c.o - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_videoresize.c.o: freeglut/CMakeFiles/freeglut_static.dir/flags.make -freeglut/CMakeFiles/freeglut_static.dir/freeglut_videoresize.c.o: freeglut/freeglut_videoresize.c - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_23) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building C object freeglut/CMakeFiles/freeglut_static.dir/freeglut_videoresize.c.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -o CMakeFiles/freeglut_static.dir/freeglut_videoresize.c.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_videoresize.c - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_videoresize.c.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/freeglut_static.dir/freeglut_videoresize.c.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_videoresize.c > CMakeFiles/freeglut_static.dir/freeglut_videoresize.c.i - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_videoresize.c.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/freeglut_static.dir/freeglut_videoresize.c.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_videoresize.c -o CMakeFiles/freeglut_static.dir/freeglut_videoresize.c.s - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_videoresize.c.o.requires: -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_videoresize.c.o.requires - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_videoresize.c.o.provides: freeglut/CMakeFiles/freeglut_static.dir/freeglut_videoresize.c.o.requires - $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_videoresize.c.o.provides.build -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_videoresize.c.o.provides - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_videoresize.c.o.provides.build: freeglut/CMakeFiles/freeglut_static.dir/freeglut_videoresize.c.o - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_window.c.o: freeglut/CMakeFiles/freeglut_static.dir/flags.make -freeglut/CMakeFiles/freeglut_static.dir/freeglut_window.c.o: freeglut/freeglut_window.c - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_24) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building C object freeglut/CMakeFiles/freeglut_static.dir/freeglut_window.c.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -o CMakeFiles/freeglut_static.dir/freeglut_window.c.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_window.c - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_window.c.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing C source to CMakeFiles/freeglut_static.dir/freeglut_window.c.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_window.c > CMakeFiles/freeglut_static.dir/freeglut_window.c.i - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_window.c.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling C source to assembly CMakeFiles/freeglut_static.dir/freeglut_window.c.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && /usr/bin/cc $(C_DEFINES) $(C_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_window.c -o CMakeFiles/freeglut_static.dir/freeglut_window.c.s - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_window.c.o.requires: -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_window.c.o.requires - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_window.c.o.provides: freeglut/CMakeFiles/freeglut_static.dir/freeglut_window.c.o.requires - $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_window.c.o.provides.build -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/freeglut_window.c.o.provides - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_window.c.o.provides.build: freeglut/CMakeFiles/freeglut_static.dir/freeglut_window.c.o - -# Object files for target freeglut_static -freeglut_static_OBJECTS = \ -"CMakeFiles/freeglut_static.dir/freeglut_callbacks.c.o" \ -"CMakeFiles/freeglut_static.dir/freeglut_cursor.c.o" \ -"CMakeFiles/freeglut_static.dir/freeglut_display.c.o" \ -"CMakeFiles/freeglut_static.dir/freeglut_ext.c.o" \ -"CMakeFiles/freeglut_static.dir/freeglut_font_data.c.o" \ -"CMakeFiles/freeglut_static.dir/freeglut_font.c.o" \ -"CMakeFiles/freeglut_static.dir/freeglut_gamemode.c.o" \ -"CMakeFiles/freeglut_static.dir/freeglut_geometry.c.o" \ -"CMakeFiles/freeglut_static.dir/freeglut_glutfont_definitions.c.o" \ -"CMakeFiles/freeglut_static.dir/freeglut_init.c.o" \ -"CMakeFiles/freeglut_static.dir/freeglut_input_devices.c.o" \ -"CMakeFiles/freeglut_static.dir/freeglut_joystick.c.o" \ -"CMakeFiles/freeglut_static.dir/freeglut_main.c.o" \ -"CMakeFiles/freeglut_static.dir/freeglut_menu.c.o" \ -"CMakeFiles/freeglut_static.dir/freeglut_misc.c.o" \ -"CMakeFiles/freeglut_static.dir/freeglut_overlay.c.o" \ -"CMakeFiles/freeglut_static.dir/freeglut_spaceball.c.o" \ -"CMakeFiles/freeglut_static.dir/freeglut_state.c.o" \ -"CMakeFiles/freeglut_static.dir/freeglut_stroke_mono_roman.c.o" \ -"CMakeFiles/freeglut_static.dir/freeglut_stroke_roman.c.o" \ -"CMakeFiles/freeglut_static.dir/freeglut_structure.c.o" \ -"CMakeFiles/freeglut_static.dir/freeglut_teapot.c.o" \ -"CMakeFiles/freeglut_static.dir/freeglut_videoresize.c.o" \ -"CMakeFiles/freeglut_static.dir/freeglut_window.c.o" - -# External object files for target freeglut_static -freeglut_static_EXTERNAL_OBJECTS = - -freeglut/libfreeglut_static.a: freeglut/CMakeFiles/freeglut_static.dir/freeglut_callbacks.c.o -freeglut/libfreeglut_static.a: freeglut/CMakeFiles/freeglut_static.dir/freeglut_cursor.c.o -freeglut/libfreeglut_static.a: freeglut/CMakeFiles/freeglut_static.dir/freeglut_display.c.o -freeglut/libfreeglut_static.a: freeglut/CMakeFiles/freeglut_static.dir/freeglut_ext.c.o -freeglut/libfreeglut_static.a: freeglut/CMakeFiles/freeglut_static.dir/freeglut_font_data.c.o -freeglut/libfreeglut_static.a: freeglut/CMakeFiles/freeglut_static.dir/freeglut_font.c.o -freeglut/libfreeglut_static.a: freeglut/CMakeFiles/freeglut_static.dir/freeglut_gamemode.c.o -freeglut/libfreeglut_static.a: freeglut/CMakeFiles/freeglut_static.dir/freeglut_geometry.c.o -freeglut/libfreeglut_static.a: freeglut/CMakeFiles/freeglut_static.dir/freeglut_glutfont_definitions.c.o -freeglut/libfreeglut_static.a: freeglut/CMakeFiles/freeglut_static.dir/freeglut_init.c.o -freeglut/libfreeglut_static.a: freeglut/CMakeFiles/freeglut_static.dir/freeglut_input_devices.c.o -freeglut/libfreeglut_static.a: freeglut/CMakeFiles/freeglut_static.dir/freeglut_joystick.c.o -freeglut/libfreeglut_static.a: freeglut/CMakeFiles/freeglut_static.dir/freeglut_main.c.o -freeglut/libfreeglut_static.a: freeglut/CMakeFiles/freeglut_static.dir/freeglut_menu.c.o -freeglut/libfreeglut_static.a: freeglut/CMakeFiles/freeglut_static.dir/freeglut_misc.c.o -freeglut/libfreeglut_static.a: freeglut/CMakeFiles/freeglut_static.dir/freeglut_overlay.c.o -freeglut/libfreeglut_static.a: freeglut/CMakeFiles/freeglut_static.dir/freeglut_spaceball.c.o -freeglut/libfreeglut_static.a: freeglut/CMakeFiles/freeglut_static.dir/freeglut_state.c.o -freeglut/libfreeglut_static.a: freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_mono_roman.c.o -freeglut/libfreeglut_static.a: freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_roman.c.o -freeglut/libfreeglut_static.a: freeglut/CMakeFiles/freeglut_static.dir/freeglut_structure.c.o -freeglut/libfreeglut_static.a: freeglut/CMakeFiles/freeglut_static.dir/freeglut_teapot.c.o -freeglut/libfreeglut_static.a: freeglut/CMakeFiles/freeglut_static.dir/freeglut_videoresize.c.o -freeglut/libfreeglut_static.a: freeglut/CMakeFiles/freeglut_static.dir/freeglut_window.c.o -freeglut/libfreeglut_static.a: freeglut/CMakeFiles/freeglut_static.dir/build.make -freeglut/libfreeglut_static.a: freeglut/CMakeFiles/freeglut_static.dir/link.txt - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --red --bold "Linking C static library libfreeglut_static.a" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && $(CMAKE_COMMAND) -P CMakeFiles/freeglut_static.dir/cmake_clean_target.cmake - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/freeglut_static.dir/link.txt --verbose=$(VERBOSE) - -# Rule to build all files generated by this target. -freeglut/CMakeFiles/freeglut_static.dir/build: freeglut/libfreeglut_static.a -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/build - -freeglut/CMakeFiles/freeglut_static.dir/requires: freeglut/CMakeFiles/freeglut_static.dir/freeglut_callbacks.c.o.requires -freeglut/CMakeFiles/freeglut_static.dir/requires: freeglut/CMakeFiles/freeglut_static.dir/freeglut_cursor.c.o.requires -freeglut/CMakeFiles/freeglut_static.dir/requires: freeglut/CMakeFiles/freeglut_static.dir/freeglut_display.c.o.requires -freeglut/CMakeFiles/freeglut_static.dir/requires: freeglut/CMakeFiles/freeglut_static.dir/freeglut_ext.c.o.requires -freeglut/CMakeFiles/freeglut_static.dir/requires: freeglut/CMakeFiles/freeglut_static.dir/freeglut_font_data.c.o.requires -freeglut/CMakeFiles/freeglut_static.dir/requires: freeglut/CMakeFiles/freeglut_static.dir/freeglut_font.c.o.requires -freeglut/CMakeFiles/freeglut_static.dir/requires: freeglut/CMakeFiles/freeglut_static.dir/freeglut_gamemode.c.o.requires -freeglut/CMakeFiles/freeglut_static.dir/requires: freeglut/CMakeFiles/freeglut_static.dir/freeglut_geometry.c.o.requires -freeglut/CMakeFiles/freeglut_static.dir/requires: freeglut/CMakeFiles/freeglut_static.dir/freeglut_glutfont_definitions.c.o.requires -freeglut/CMakeFiles/freeglut_static.dir/requires: freeglut/CMakeFiles/freeglut_static.dir/freeglut_init.c.o.requires -freeglut/CMakeFiles/freeglut_static.dir/requires: freeglut/CMakeFiles/freeglut_static.dir/freeglut_input_devices.c.o.requires -freeglut/CMakeFiles/freeglut_static.dir/requires: freeglut/CMakeFiles/freeglut_static.dir/freeglut_joystick.c.o.requires -freeglut/CMakeFiles/freeglut_static.dir/requires: freeglut/CMakeFiles/freeglut_static.dir/freeglut_main.c.o.requires -freeglut/CMakeFiles/freeglut_static.dir/requires: freeglut/CMakeFiles/freeglut_static.dir/freeglut_menu.c.o.requires -freeglut/CMakeFiles/freeglut_static.dir/requires: freeglut/CMakeFiles/freeglut_static.dir/freeglut_misc.c.o.requires -freeglut/CMakeFiles/freeglut_static.dir/requires: freeglut/CMakeFiles/freeglut_static.dir/freeglut_overlay.c.o.requires -freeglut/CMakeFiles/freeglut_static.dir/requires: freeglut/CMakeFiles/freeglut_static.dir/freeglut_spaceball.c.o.requires -freeglut/CMakeFiles/freeglut_static.dir/requires: freeglut/CMakeFiles/freeglut_static.dir/freeglut_state.c.o.requires -freeglut/CMakeFiles/freeglut_static.dir/requires: freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_mono_roman.c.o.requires -freeglut/CMakeFiles/freeglut_static.dir/requires: freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_roman.c.o.requires -freeglut/CMakeFiles/freeglut_static.dir/requires: freeglut/CMakeFiles/freeglut_static.dir/freeglut_structure.c.o.requires -freeglut/CMakeFiles/freeglut_static.dir/requires: freeglut/CMakeFiles/freeglut_static.dir/freeglut_teapot.c.o.requires -freeglut/CMakeFiles/freeglut_static.dir/requires: freeglut/CMakeFiles/freeglut_static.dir/freeglut_videoresize.c.o.requires -freeglut/CMakeFiles/freeglut_static.dir/requires: freeglut/CMakeFiles/freeglut_static.dir/freeglut_window.c.o.requires -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/requires - -freeglut/CMakeFiles/freeglut_static.dir/clean: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut && $(CMAKE_COMMAND) -P CMakeFiles/freeglut_static.dir/cmake_clean.cmake -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/clean - -freeglut/CMakeFiles/freeglut_static.dir/depend: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/DependInfo.cmake --color=$(COLOR) -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/depend - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/cmake_clean.cmake b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/cmake_clean.cmake deleted file mode 100644 index d53b318..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/cmake_clean.cmake +++ /dev/null @@ -1,33 +0,0 @@ -FILE(REMOVE_RECURSE - "CMakeFiles/freeglut_static.dir/freeglut_callbacks.c.o" - "CMakeFiles/freeglut_static.dir/freeglut_cursor.c.o" - "CMakeFiles/freeglut_static.dir/freeglut_display.c.o" - "CMakeFiles/freeglut_static.dir/freeglut_ext.c.o" - "CMakeFiles/freeglut_static.dir/freeglut_font_data.c.o" - "CMakeFiles/freeglut_static.dir/freeglut_font.c.o" - "CMakeFiles/freeglut_static.dir/freeglut_gamemode.c.o" - "CMakeFiles/freeglut_static.dir/freeglut_geometry.c.o" - "CMakeFiles/freeglut_static.dir/freeglut_glutfont_definitions.c.o" - "CMakeFiles/freeglut_static.dir/freeglut_init.c.o" - "CMakeFiles/freeglut_static.dir/freeglut_input_devices.c.o" - "CMakeFiles/freeglut_static.dir/freeglut_joystick.c.o" - "CMakeFiles/freeglut_static.dir/freeglut_main.c.o" - "CMakeFiles/freeglut_static.dir/freeglut_menu.c.o" - "CMakeFiles/freeglut_static.dir/freeglut_misc.c.o" - "CMakeFiles/freeglut_static.dir/freeglut_overlay.c.o" - "CMakeFiles/freeglut_static.dir/freeglut_spaceball.c.o" - "CMakeFiles/freeglut_static.dir/freeglut_state.c.o" - "CMakeFiles/freeglut_static.dir/freeglut_stroke_mono_roman.c.o" - "CMakeFiles/freeglut_static.dir/freeglut_stroke_roman.c.o" - "CMakeFiles/freeglut_static.dir/freeglut_structure.c.o" - "CMakeFiles/freeglut_static.dir/freeglut_teapot.c.o" - "CMakeFiles/freeglut_static.dir/freeglut_videoresize.c.o" - "CMakeFiles/freeglut_static.dir/freeglut_window.c.o" - "libfreeglut_static.pdb" - "libfreeglut_static.a" -) - -# Per-language clean rules from dependency scanning. -FOREACH(lang C) - INCLUDE(CMakeFiles/freeglut_static.dir/cmake_clean_${lang}.cmake OPTIONAL) -ENDFOREACH(lang) diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/cmake_clean_target.cmake b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/cmake_clean_target.cmake deleted file mode 100644 index df489cd..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/cmake_clean_target.cmake +++ /dev/null @@ -1,3 +0,0 @@ -FILE(REMOVE_RECURSE - "libfreeglut_static.a" -) diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/depend.internal b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/depend.internal deleted file mode 100644 index 5746676..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/depend.internal +++ /dev/null @@ -1,146 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 2.8 - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_callbacks.c.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_callbacks.c - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_ext.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_std.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_cursor.c.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_cursor.c - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_ext.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_std.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_display.c.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_display.c - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_ext.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_std.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_ext.c.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_ext.c - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_ext.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_std.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_font.c.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_ext.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_font.c - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_std.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_font_data.c.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_ext.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_font_data.c - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_std.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_gamemode.c.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_ext.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_gamemode.c - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_std.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_geometry.c.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_ext.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_geometry.c - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_std.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_glutfont_definitions.c.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_glutfont_definitions.c - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_std.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_init.c.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_ext.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_init.c - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_std.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_input_devices.c.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_ext.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_input_devices.c - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_std.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_joystick.c.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_ext.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_joystick.c - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_std.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_main.c.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_ext.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_main.c - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_std.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_menu.c.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_ext.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_menu.c - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_std.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_misc.c.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_ext.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_misc.c - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_std.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_overlay.c.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_ext.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_overlay.c - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_std.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_spaceball.c.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_ext.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_spaceball.c - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_std.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_state.c.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_ext.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_state.c - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_std.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_mono_roman.c.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_ext.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_std.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_stroke_mono_roman.c -freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_roman.c.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_ext.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_std.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_stroke_roman.c -freeglut/CMakeFiles/freeglut_static.dir/freeglut_structure.c.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_ext.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_std.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_structure.c -freeglut/CMakeFiles/freeglut_static.dir/freeglut_teapot.c.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_ext.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_std.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_teapot.c - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_teapot_data.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_videoresize.c.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_ext.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_std.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_videoresize.c -freeglut/CMakeFiles/freeglut_static.dir/freeglut_window.c.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_ext.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_std.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_window.c diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/depend.make b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/depend.make deleted file mode 100644 index f28c65b..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/depend.make +++ /dev/null @@ -1,146 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 2.8 - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_callbacks.c.o: freeglut/freeglut.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_callbacks.c.o: freeglut/freeglut_callbacks.c -freeglut/CMakeFiles/freeglut_static.dir/freeglut_callbacks.c.o: freeglut/freeglut_ext.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_callbacks.c.o: freeglut/freeglut_internal.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_callbacks.c.o: freeglut/freeglut_std.h - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_cursor.c.o: freeglut/freeglut.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_cursor.c.o: freeglut/freeglut_cursor.c -freeglut/CMakeFiles/freeglut_static.dir/freeglut_cursor.c.o: freeglut/freeglut_ext.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_cursor.c.o: freeglut/freeglut_internal.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_cursor.c.o: freeglut/freeglut_std.h - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_display.c.o: freeglut/freeglut.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_display.c.o: freeglut/freeglut_display.c -freeglut/CMakeFiles/freeglut_static.dir/freeglut_display.c.o: freeglut/freeglut_ext.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_display.c.o: freeglut/freeglut_internal.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_display.c.o: freeglut/freeglut_std.h - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_ext.c.o: freeglut/freeglut.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_ext.c.o: freeglut/freeglut_ext.c -freeglut/CMakeFiles/freeglut_static.dir/freeglut_ext.c.o: freeglut/freeglut_ext.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_ext.c.o: freeglut/freeglut_internal.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_ext.c.o: freeglut/freeglut_std.h - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_font.c.o: freeglut/freeglut.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_font.c.o: freeglut/freeglut_ext.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_font.c.o: freeglut/freeglut_font.c -freeglut/CMakeFiles/freeglut_static.dir/freeglut_font.c.o: freeglut/freeglut_internal.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_font.c.o: freeglut/freeglut_std.h - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_font_data.c.o: freeglut/freeglut.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_font_data.c.o: freeglut/freeglut_ext.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_font_data.c.o: freeglut/freeglut_font_data.c -freeglut/CMakeFiles/freeglut_static.dir/freeglut_font_data.c.o: freeglut/freeglut_internal.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_font_data.c.o: freeglut/freeglut_std.h - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_gamemode.c.o: freeglut/freeglut.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_gamemode.c.o: freeglut/freeglut_ext.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_gamemode.c.o: freeglut/freeglut_gamemode.c -freeglut/CMakeFiles/freeglut_static.dir/freeglut_gamemode.c.o: freeglut/freeglut_internal.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_gamemode.c.o: freeglut/freeglut_std.h - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_geometry.c.o: freeglut/freeglut.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_geometry.c.o: freeglut/freeglut_ext.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_geometry.c.o: freeglut/freeglut_geometry.c -freeglut/CMakeFiles/freeglut_static.dir/freeglut_geometry.c.o: freeglut/freeglut_internal.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_geometry.c.o: freeglut/freeglut_std.h - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_glutfont_definitions.c.o: freeglut/freeglut_glutfont_definitions.c -freeglut/CMakeFiles/freeglut_static.dir/freeglut_glutfont_definitions.c.o: freeglut/freeglut_internal.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_glutfont_definitions.c.o: freeglut/freeglut_std.h - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_init.c.o: freeglut/freeglut.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_init.c.o: freeglut/freeglut_ext.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_init.c.o: freeglut/freeglut_init.c -freeglut/CMakeFiles/freeglut_static.dir/freeglut_init.c.o: freeglut/freeglut_internal.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_init.c.o: freeglut/freeglut_std.h - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_input_devices.c.o: freeglut/freeglut.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_input_devices.c.o: freeglut/freeglut_ext.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_input_devices.c.o: freeglut/freeglut_input_devices.c -freeglut/CMakeFiles/freeglut_static.dir/freeglut_input_devices.c.o: freeglut/freeglut_internal.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_input_devices.c.o: freeglut/freeglut_std.h - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_joystick.c.o: freeglut/freeglut.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_joystick.c.o: freeglut/freeglut_ext.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_joystick.c.o: freeglut/freeglut_internal.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_joystick.c.o: freeglut/freeglut_joystick.c -freeglut/CMakeFiles/freeglut_static.dir/freeglut_joystick.c.o: freeglut/freeglut_std.h - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_main.c.o: freeglut/freeglut.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_main.c.o: freeglut/freeglut_ext.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_main.c.o: freeglut/freeglut_internal.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_main.c.o: freeglut/freeglut_main.c -freeglut/CMakeFiles/freeglut_static.dir/freeglut_main.c.o: freeglut/freeglut_std.h - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_menu.c.o: freeglut/freeglut.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_menu.c.o: freeglut/freeglut_ext.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_menu.c.o: freeglut/freeglut_internal.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_menu.c.o: freeglut/freeglut_menu.c -freeglut/CMakeFiles/freeglut_static.dir/freeglut_menu.c.o: freeglut/freeglut_std.h - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_misc.c.o: freeglut/freeglut.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_misc.c.o: freeglut/freeglut_ext.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_misc.c.o: freeglut/freeglut_internal.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_misc.c.o: freeglut/freeglut_misc.c -freeglut/CMakeFiles/freeglut_static.dir/freeglut_misc.c.o: freeglut/freeglut_std.h - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_overlay.c.o: freeglut/freeglut.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_overlay.c.o: freeglut/freeglut_ext.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_overlay.c.o: freeglut/freeglut_internal.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_overlay.c.o: freeglut/freeglut_overlay.c -freeglut/CMakeFiles/freeglut_static.dir/freeglut_overlay.c.o: freeglut/freeglut_std.h - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_spaceball.c.o: freeglut/freeglut.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_spaceball.c.o: freeglut/freeglut_ext.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_spaceball.c.o: freeglut/freeglut_internal.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_spaceball.c.o: freeglut/freeglut_spaceball.c -freeglut/CMakeFiles/freeglut_static.dir/freeglut_spaceball.c.o: freeglut/freeglut_std.h - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_state.c.o: freeglut/freeglut.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_state.c.o: freeglut/freeglut_ext.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_state.c.o: freeglut/freeglut_internal.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_state.c.o: freeglut/freeglut_state.c -freeglut/CMakeFiles/freeglut_static.dir/freeglut_state.c.o: freeglut/freeglut_std.h - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_mono_roman.c.o: freeglut/freeglut.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_mono_roman.c.o: freeglut/freeglut_ext.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_mono_roman.c.o: freeglut/freeglut_internal.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_mono_roman.c.o: freeglut/freeglut_std.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_mono_roman.c.o: freeglut/freeglut_stroke_mono_roman.c - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_roman.c.o: freeglut/freeglut.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_roman.c.o: freeglut/freeglut_ext.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_roman.c.o: freeglut/freeglut_internal.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_roman.c.o: freeglut/freeglut_std.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_roman.c.o: freeglut/freeglut_stroke_roman.c - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_structure.c.o: freeglut/freeglut.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_structure.c.o: freeglut/freeglut_ext.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_structure.c.o: freeglut/freeglut_internal.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_structure.c.o: freeglut/freeglut_std.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_structure.c.o: freeglut/freeglut_structure.c - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_teapot.c.o: freeglut/freeglut.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_teapot.c.o: freeglut/freeglut_ext.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_teapot.c.o: freeglut/freeglut_internal.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_teapot.c.o: freeglut/freeglut_std.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_teapot.c.o: freeglut/freeglut_teapot.c -freeglut/CMakeFiles/freeglut_static.dir/freeglut_teapot.c.o: freeglut/freeglut_teapot_data.h - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_videoresize.c.o: freeglut/freeglut.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_videoresize.c.o: freeglut/freeglut_ext.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_videoresize.c.o: freeglut/freeglut_internal.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_videoresize.c.o: freeglut/freeglut_std.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_videoresize.c.o: freeglut/freeglut_videoresize.c - -freeglut/CMakeFiles/freeglut_static.dir/freeglut_window.c.o: freeglut/freeglut.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_window.c.o: freeglut/freeglut_ext.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_window.c.o: freeglut/freeglut_internal.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_window.c.o: freeglut/freeglut_std.h -freeglut/CMakeFiles/freeglut_static.dir/freeglut_window.c.o: freeglut/freeglut_window.c - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/flags.make b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/flags.make deleted file mode 100644 index 991b90e..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/flags.make +++ /dev/null @@ -1,8 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 2.8 - -# compile C with /usr/bin/cc -C_FLAGS = -I/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/. - -C_DEFINES = -DFREEGLUT_EXPORTS -DFREEGLUT_STATIC -DHAVE_FCNTL_H -DHAVE_GETTIMEOFDAY -D_CRT_SECURE_NO_WARNINGS -D__unix__ - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_callbacks.c.o b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_callbacks.c.o deleted file mode 100644 index c6839c9..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_callbacks.c.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_cursor.c.o b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_cursor.c.o deleted file mode 100644 index 7ec8cc3..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_cursor.c.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_display.c.o b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_display.c.o deleted file mode 100644 index 0552e28..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_display.c.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_ext.c.o b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_ext.c.o deleted file mode 100644 index 15d01e1..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_ext.c.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_font.c.o b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_font.c.o deleted file mode 100644 index a503c3d..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_font.c.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_font_data.c.o b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_font_data.c.o deleted file mode 100644 index ff6859c..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_font_data.c.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_gamemode.c.o b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_gamemode.c.o deleted file mode 100644 index 0edbe12..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_gamemode.c.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_geometry.c.o b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_geometry.c.o deleted file mode 100644 index 3dfb504..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_geometry.c.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_glutfont_definitions.c.o b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_glutfont_definitions.c.o deleted file mode 100644 index 9fd3895..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_glutfont_definitions.c.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_init.c.o b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_init.c.o deleted file mode 100644 index c761ee0..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_init.c.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_input_devices.c.o b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_input_devices.c.o deleted file mode 100644 index 949fe6a..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_input_devices.c.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_joystick.c.o b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_joystick.c.o deleted file mode 100644 index d44f3f3..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_joystick.c.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_main.c.o b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_main.c.o deleted file mode 100644 index a25f431..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_main.c.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_menu.c.o b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_menu.c.o deleted file mode 100644 index 37f418c..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_menu.c.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_misc.c.o b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_misc.c.o deleted file mode 100644 index 2cfba64..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_misc.c.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_overlay.c.o b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_overlay.c.o deleted file mode 100644 index 39b6f3e..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_overlay.c.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_spaceball.c.o b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_spaceball.c.o deleted file mode 100644 index 6c58a72..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_spaceball.c.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_state.c.o b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_state.c.o deleted file mode 100644 index 1e22a5c..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_state.c.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_mono_roman.c.o b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_mono_roman.c.o deleted file mode 100644 index 0912cce..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_mono_roman.c.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_roman.c.o b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_roman.c.o deleted file mode 100644 index 2470e66..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_roman.c.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_structure.c.o b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_structure.c.o deleted file mode 100644 index 2d0103c..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_structure.c.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_teapot.c.o b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_teapot.c.o deleted file mode 100644 index 689c381..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_teapot.c.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_videoresize.c.o b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_videoresize.c.o deleted file mode 100644 index ad01f70..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_videoresize.c.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_window.c.o b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_window.c.o deleted file mode 100644 index 07fdb93..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/freeglut_window.c.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/link.txt b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/link.txt deleted file mode 100644 index 26d6b5d..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/link.txt +++ /dev/null @@ -1,2 +0,0 @@ -/usr/bin/ar cr libfreeglut_static.a CMakeFiles/freeglut_static.dir/freeglut_callbacks.c.o CMakeFiles/freeglut_static.dir/freeglut_cursor.c.o CMakeFiles/freeglut_static.dir/freeglut_display.c.o CMakeFiles/freeglut_static.dir/freeglut_ext.c.o CMakeFiles/freeglut_static.dir/freeglut_font_data.c.o CMakeFiles/freeglut_static.dir/freeglut_font.c.o CMakeFiles/freeglut_static.dir/freeglut_gamemode.c.o CMakeFiles/freeglut_static.dir/freeglut_geometry.c.o CMakeFiles/freeglut_static.dir/freeglut_glutfont_definitions.c.o CMakeFiles/freeglut_static.dir/freeglut_init.c.o CMakeFiles/freeglut_static.dir/freeglut_input_devices.c.o CMakeFiles/freeglut_static.dir/freeglut_joystick.c.o CMakeFiles/freeglut_static.dir/freeglut_main.c.o CMakeFiles/freeglut_static.dir/freeglut_menu.c.o CMakeFiles/freeglut_static.dir/freeglut_misc.c.o CMakeFiles/freeglut_static.dir/freeglut_overlay.c.o CMakeFiles/freeglut_static.dir/freeglut_spaceball.c.o CMakeFiles/freeglut_static.dir/freeglut_state.c.o CMakeFiles/freeglut_static.dir/freeglut_stroke_mono_roman.c.o CMakeFiles/freeglut_static.dir/freeglut_stroke_roman.c.o CMakeFiles/freeglut_static.dir/freeglut_structure.c.o CMakeFiles/freeglut_static.dir/freeglut_teapot.c.o CMakeFiles/freeglut_static.dir/freeglut_videoresize.c.o CMakeFiles/freeglut_static.dir/freeglut_window.c.o -/usr/bin/ranlib libfreeglut_static.a diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/progress.make b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/progress.make deleted file mode 100644 index ee3de82..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/freeglut_static.dir/progress.make +++ /dev/null @@ -1,25 +0,0 @@ -CMAKE_PROGRESS_1 = 48 -CMAKE_PROGRESS_2 = 49 -CMAKE_PROGRESS_3 = 50 -CMAKE_PROGRESS_4 = 51 -CMAKE_PROGRESS_5 = 52 -CMAKE_PROGRESS_6 = 53 -CMAKE_PROGRESS_7 = 54 -CMAKE_PROGRESS_8 = 55 -CMAKE_PROGRESS_9 = 56 -CMAKE_PROGRESS_10 = 57 -CMAKE_PROGRESS_11 = -CMAKE_PROGRESS_12 = 58 -CMAKE_PROGRESS_13 = 59 -CMAKE_PROGRESS_14 = 60 -CMAKE_PROGRESS_15 = 61 -CMAKE_PROGRESS_16 = 62 -CMAKE_PROGRESS_17 = 63 -CMAKE_PROGRESS_18 = 64 -CMAKE_PROGRESS_19 = 65 -CMAKE_PROGRESS_20 = 66 -CMAKE_PROGRESS_21 = 67 -CMAKE_PROGRESS_22 = 68 -CMAKE_PROGRESS_23 = 69 -CMAKE_PROGRESS_24 = 70 - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/progress.marks b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/progress.marks deleted file mode 100644 index 4099407..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/progress.marks +++ /dev/null @@ -1 +0,0 @@ -23 diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeLists.txt b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeLists.txt deleted file mode 100644 index 8c97446..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeLists.txt +++ /dev/null @@ -1,51 +0,0 @@ -add_definitions( -DFREEGLUT_EXPORTS -DFREEGLUT_STATIC -D_CRT_SECURE_NO_WARNINGS ) - -if(APPLE) - include_directories( /usr/X11/include ) -endif(APPLE) - -if(UNIX) - add_definitions( -D__unix__ -DHAVE_FCNTL_H -DHAVE_GETTIMEOFDAY ) -endif(UNIX) - -set(freeglut_SRCS - freeglut_callbacks.c - freeglut_callbacks.c - freeglut_cursor.c - freeglut_display.c - freeglut_ext.c - freeglut_font_data.c - freeglut_font.c - freeglut_gamemode.c - freeglut_geometry.c - freeglut_glutfont_definitions.c - freeglut_init.c - freeglut_input_devices.c - freeglut_internal.h - freeglut_joystick.c - freeglut_main.c - freeglut_menu.c - freeglut_misc.c - freeglut_overlay.c - freeglut_spaceball.c - freeglut_state.c - freeglut_stroke_mono_roman.c - freeglut_stroke_roman.c - freeglut_structure.c - freeglut_teapot_data.h - freeglut_teapot.c - freeglut_videoresize.c - freeglut_window.c - freeglut.h - freeglut_ext.h - freeglut_std.h -) - -include_directories ( - ${OPENGL_INCLUDE_DIR} - . -) - -add_library(freeglut_static - ${freeglut_SRCS} -) diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/COPYING b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/COPYING deleted file mode 100644 index fc36ad9..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/COPYING +++ /dev/null @@ -1,27 +0,0 @@ - - Freeglut Copyright - ------------------ - - Freeglut code without an explicit copyright is covered by the following - copyright: - - Copyright (c) 1999-2000 Pawel W. Olszta. All Rights Reserved. - Permission is hereby granted, free of charge, to any person obtaining a copy - of this software and associated documentation files (the "Software"), to deal - in the Software without restriction, including without limitation the rights - to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - copies or substantial portions of the Software. - - The above copyright notice and this permission notice shall be included in - all copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - PAWEL W. OLSZTA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER - IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - - Except as contained in this notice, the name of Pawel W. Olszta shall not be - used in advertising or otherwise to promote the sale, use or other dealings - in this Software without prior written authorization from Pawel W. Olszta. diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/Makefile b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/Makefile deleted file mode 100644 index 432a40e..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/Makefile +++ /dev/null @@ -1,830 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 2.8 - -# Default target executed when no arguments are given to make. -default_target: all -.PHONY : default_target - -#============================================================================= -# Special targets provided by cmake. - -# Disable implicit rules so canonical targets will work. -.SUFFIXES: - -# Remove some rules from gmake that .SUFFIXES does not remove. -SUFFIXES = - -.SUFFIXES: .hpux_make_needs_suffix_list - -# Suppress display of executed commands. -$(VERBOSE).SILENT: - -# A target that is always out of date. -cmake_force: -.PHONY : cmake_force - -#============================================================================= -# Set environment variables for the build. - -# The shell in which to execute make rules. -SHELL = /bin/sh - -# The CMake executable. -CMAKE_COMMAND = /usr/bin/cmake - -# The command to remove a file. -RM = /usr/bin/cmake -E remove -f - -# Escaping for special characters. -EQUALS = = - -# The top-level source directory on which CMake was run. -CMAKE_SOURCE_DIR = /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D - -# The top-level build directory on which CMake was run. -CMAKE_BINARY_DIR = /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D - -#============================================================================= -# Targets provided globally by CMake. - -# Special rule for the target edit_cache -edit_cache: - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running interactive CMake command-line interface..." - /usr/bin/cmake -i . -.PHONY : edit_cache - -# Special rule for the target edit_cache -edit_cache/fast: edit_cache -.PHONY : edit_cache/fast - -# Special rule for the target install -install: preinstall - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..." - /usr/bin/cmake -P cmake_install.cmake -.PHONY : install - -# Special rule for the target install -install/fast: preinstall/fast - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..." - /usr/bin/cmake -P cmake_install.cmake -.PHONY : install/fast - -# Special rule for the target install/local -install/local: preinstall - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..." - /usr/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake -.PHONY : install/local - -# Special rule for the target install/local -install/local/fast: install/local -.PHONY : install/local/fast - -# Special rule for the target install/strip -install/strip: preinstall - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..." - /usr/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake -.PHONY : install/strip - -# Special rule for the target install/strip -install/strip/fast: install/strip -.PHONY : install/strip/fast - -# Special rule for the target list_install_components -list_install_components: - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Available install components are: \"Unspecified\"" -.PHONY : list_install_components - -# Special rule for the target list_install_components -list_install_components/fast: list_install_components -.PHONY : list_install_components/fast - -# Special rule for the target rebuild_cache -rebuild_cache: - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..." - /usr/bin/cmake -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) -.PHONY : rebuild_cache - -# Special rule for the target rebuild_cache -rebuild_cache/fast: rebuild_cache -.PHONY : rebuild_cache/fast - -# The main all target -all: cmake_check_build_system - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(CMAKE_COMMAND) -E cmake_progress_start /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/CMakeFiles/progress.marks - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f CMakeFiles/Makefile2 freeglut/all - $(CMAKE_COMMAND) -E cmake_progress_start /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles 0 -.PHONY : all - -# The main clean target -clean: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f CMakeFiles/Makefile2 freeglut/clean -.PHONY : clean - -# The main clean target -clean/fast: clean -.PHONY : clean/fast - -# Prepare targets for installation. -preinstall: all - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f CMakeFiles/Makefile2 freeglut/preinstall -.PHONY : preinstall - -# Prepare targets for installation. -preinstall/fast: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f CMakeFiles/Makefile2 freeglut/preinstall -.PHONY : preinstall/fast - -# clear depends -depend: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1 -.PHONY : depend - -# Convenience name for target. -freeglut/CMakeFiles/freeglut_static.dir/rule: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f CMakeFiles/Makefile2 freeglut/CMakeFiles/freeglut_static.dir/rule -.PHONY : freeglut/CMakeFiles/freeglut_static.dir/rule - -# Convenience name for target. -freeglut_static: freeglut/CMakeFiles/freeglut_static.dir/rule -.PHONY : freeglut_static - -# fast build rule for target. -freeglut_static/fast: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/build -.PHONY : freeglut_static/fast - -freeglut_callbacks.o: freeglut_callbacks.c.o -.PHONY : freeglut_callbacks.o - -# target to build an object file -freeglut_callbacks.c.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_callbacks.c.o -.PHONY : freeglut_callbacks.c.o - -freeglut_callbacks.i: freeglut_callbacks.c.i -.PHONY : freeglut_callbacks.i - -# target to preprocess a source file -freeglut_callbacks.c.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_callbacks.c.i -.PHONY : freeglut_callbacks.c.i - -freeglut_callbacks.s: freeglut_callbacks.c.s -.PHONY : freeglut_callbacks.s - -# target to generate assembly for a file -freeglut_callbacks.c.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_callbacks.c.s -.PHONY : freeglut_callbacks.c.s - -freeglut_cursor.o: freeglut_cursor.c.o -.PHONY : freeglut_cursor.o - -# target to build an object file -freeglut_cursor.c.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_cursor.c.o -.PHONY : freeglut_cursor.c.o - -freeglut_cursor.i: freeglut_cursor.c.i -.PHONY : freeglut_cursor.i - -# target to preprocess a source file -freeglut_cursor.c.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_cursor.c.i -.PHONY : freeglut_cursor.c.i - -freeglut_cursor.s: freeglut_cursor.c.s -.PHONY : freeglut_cursor.s - -# target to generate assembly for a file -freeglut_cursor.c.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_cursor.c.s -.PHONY : freeglut_cursor.c.s - -freeglut_display.o: freeglut_display.c.o -.PHONY : freeglut_display.o - -# target to build an object file -freeglut_display.c.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_display.c.o -.PHONY : freeglut_display.c.o - -freeglut_display.i: freeglut_display.c.i -.PHONY : freeglut_display.i - -# target to preprocess a source file -freeglut_display.c.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_display.c.i -.PHONY : freeglut_display.c.i - -freeglut_display.s: freeglut_display.c.s -.PHONY : freeglut_display.s - -# target to generate assembly for a file -freeglut_display.c.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_display.c.s -.PHONY : freeglut_display.c.s - -freeglut_ext.o: freeglut_ext.c.o -.PHONY : freeglut_ext.o - -# target to build an object file -freeglut_ext.c.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_ext.c.o -.PHONY : freeglut_ext.c.o - -freeglut_ext.i: freeglut_ext.c.i -.PHONY : freeglut_ext.i - -# target to preprocess a source file -freeglut_ext.c.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_ext.c.i -.PHONY : freeglut_ext.c.i - -freeglut_ext.s: freeglut_ext.c.s -.PHONY : freeglut_ext.s - -# target to generate assembly for a file -freeglut_ext.c.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_ext.c.s -.PHONY : freeglut_ext.c.s - -freeglut_font.o: freeglut_font.c.o -.PHONY : freeglut_font.o - -# target to build an object file -freeglut_font.c.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_font.c.o -.PHONY : freeglut_font.c.o - -freeglut_font.i: freeglut_font.c.i -.PHONY : freeglut_font.i - -# target to preprocess a source file -freeglut_font.c.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_font.c.i -.PHONY : freeglut_font.c.i - -freeglut_font.s: freeglut_font.c.s -.PHONY : freeglut_font.s - -# target to generate assembly for a file -freeglut_font.c.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_font.c.s -.PHONY : freeglut_font.c.s - -freeglut_font_data.o: freeglut_font_data.c.o -.PHONY : freeglut_font_data.o - -# target to build an object file -freeglut_font_data.c.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_font_data.c.o -.PHONY : freeglut_font_data.c.o - -freeglut_font_data.i: freeglut_font_data.c.i -.PHONY : freeglut_font_data.i - -# target to preprocess a source file -freeglut_font_data.c.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_font_data.c.i -.PHONY : freeglut_font_data.c.i - -freeglut_font_data.s: freeglut_font_data.c.s -.PHONY : freeglut_font_data.s - -# target to generate assembly for a file -freeglut_font_data.c.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_font_data.c.s -.PHONY : freeglut_font_data.c.s - -freeglut_gamemode.o: freeglut_gamemode.c.o -.PHONY : freeglut_gamemode.o - -# target to build an object file -freeglut_gamemode.c.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_gamemode.c.o -.PHONY : freeglut_gamemode.c.o - -freeglut_gamemode.i: freeglut_gamemode.c.i -.PHONY : freeglut_gamemode.i - -# target to preprocess a source file -freeglut_gamemode.c.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_gamemode.c.i -.PHONY : freeglut_gamemode.c.i - -freeglut_gamemode.s: freeglut_gamemode.c.s -.PHONY : freeglut_gamemode.s - -# target to generate assembly for a file -freeglut_gamemode.c.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_gamemode.c.s -.PHONY : freeglut_gamemode.c.s - -freeglut_geometry.o: freeglut_geometry.c.o -.PHONY : freeglut_geometry.o - -# target to build an object file -freeglut_geometry.c.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_geometry.c.o -.PHONY : freeglut_geometry.c.o - -freeglut_geometry.i: freeglut_geometry.c.i -.PHONY : freeglut_geometry.i - -# target to preprocess a source file -freeglut_geometry.c.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_geometry.c.i -.PHONY : freeglut_geometry.c.i - -freeglut_geometry.s: freeglut_geometry.c.s -.PHONY : freeglut_geometry.s - -# target to generate assembly for a file -freeglut_geometry.c.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_geometry.c.s -.PHONY : freeglut_geometry.c.s - -freeglut_glutfont_definitions.o: freeglut_glutfont_definitions.c.o -.PHONY : freeglut_glutfont_definitions.o - -# target to build an object file -freeglut_glutfont_definitions.c.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_glutfont_definitions.c.o -.PHONY : freeglut_glutfont_definitions.c.o - -freeglut_glutfont_definitions.i: freeglut_glutfont_definitions.c.i -.PHONY : freeglut_glutfont_definitions.i - -# target to preprocess a source file -freeglut_glutfont_definitions.c.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_glutfont_definitions.c.i -.PHONY : freeglut_glutfont_definitions.c.i - -freeglut_glutfont_definitions.s: freeglut_glutfont_definitions.c.s -.PHONY : freeglut_glutfont_definitions.s - -# target to generate assembly for a file -freeglut_glutfont_definitions.c.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_glutfont_definitions.c.s -.PHONY : freeglut_glutfont_definitions.c.s - -freeglut_init.o: freeglut_init.c.o -.PHONY : freeglut_init.o - -# target to build an object file -freeglut_init.c.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_init.c.o -.PHONY : freeglut_init.c.o - -freeglut_init.i: freeglut_init.c.i -.PHONY : freeglut_init.i - -# target to preprocess a source file -freeglut_init.c.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_init.c.i -.PHONY : freeglut_init.c.i - -freeglut_init.s: freeglut_init.c.s -.PHONY : freeglut_init.s - -# target to generate assembly for a file -freeglut_init.c.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_init.c.s -.PHONY : freeglut_init.c.s - -freeglut_input_devices.o: freeglut_input_devices.c.o -.PHONY : freeglut_input_devices.o - -# target to build an object file -freeglut_input_devices.c.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_input_devices.c.o -.PHONY : freeglut_input_devices.c.o - -freeglut_input_devices.i: freeglut_input_devices.c.i -.PHONY : freeglut_input_devices.i - -# target to preprocess a source file -freeglut_input_devices.c.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_input_devices.c.i -.PHONY : freeglut_input_devices.c.i - -freeglut_input_devices.s: freeglut_input_devices.c.s -.PHONY : freeglut_input_devices.s - -# target to generate assembly for a file -freeglut_input_devices.c.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_input_devices.c.s -.PHONY : freeglut_input_devices.c.s - -freeglut_joystick.o: freeglut_joystick.c.o -.PHONY : freeglut_joystick.o - -# target to build an object file -freeglut_joystick.c.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_joystick.c.o -.PHONY : freeglut_joystick.c.o - -freeglut_joystick.i: freeglut_joystick.c.i -.PHONY : freeglut_joystick.i - -# target to preprocess a source file -freeglut_joystick.c.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_joystick.c.i -.PHONY : freeglut_joystick.c.i - -freeglut_joystick.s: freeglut_joystick.c.s -.PHONY : freeglut_joystick.s - -# target to generate assembly for a file -freeglut_joystick.c.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_joystick.c.s -.PHONY : freeglut_joystick.c.s - -freeglut_main.o: freeglut_main.c.o -.PHONY : freeglut_main.o - -# target to build an object file -freeglut_main.c.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_main.c.o -.PHONY : freeglut_main.c.o - -freeglut_main.i: freeglut_main.c.i -.PHONY : freeglut_main.i - -# target to preprocess a source file -freeglut_main.c.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_main.c.i -.PHONY : freeglut_main.c.i - -freeglut_main.s: freeglut_main.c.s -.PHONY : freeglut_main.s - -# target to generate assembly for a file -freeglut_main.c.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_main.c.s -.PHONY : freeglut_main.c.s - -freeglut_menu.o: freeglut_menu.c.o -.PHONY : freeglut_menu.o - -# target to build an object file -freeglut_menu.c.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_menu.c.o -.PHONY : freeglut_menu.c.o - -freeglut_menu.i: freeglut_menu.c.i -.PHONY : freeglut_menu.i - -# target to preprocess a source file -freeglut_menu.c.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_menu.c.i -.PHONY : freeglut_menu.c.i - -freeglut_menu.s: freeglut_menu.c.s -.PHONY : freeglut_menu.s - -# target to generate assembly for a file -freeglut_menu.c.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_menu.c.s -.PHONY : freeglut_menu.c.s - -freeglut_misc.o: freeglut_misc.c.o -.PHONY : freeglut_misc.o - -# target to build an object file -freeglut_misc.c.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_misc.c.o -.PHONY : freeglut_misc.c.o - -freeglut_misc.i: freeglut_misc.c.i -.PHONY : freeglut_misc.i - -# target to preprocess a source file -freeglut_misc.c.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_misc.c.i -.PHONY : freeglut_misc.c.i - -freeglut_misc.s: freeglut_misc.c.s -.PHONY : freeglut_misc.s - -# target to generate assembly for a file -freeglut_misc.c.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_misc.c.s -.PHONY : freeglut_misc.c.s - -freeglut_overlay.o: freeglut_overlay.c.o -.PHONY : freeglut_overlay.o - -# target to build an object file -freeglut_overlay.c.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_overlay.c.o -.PHONY : freeglut_overlay.c.o - -freeglut_overlay.i: freeglut_overlay.c.i -.PHONY : freeglut_overlay.i - -# target to preprocess a source file -freeglut_overlay.c.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_overlay.c.i -.PHONY : freeglut_overlay.c.i - -freeglut_overlay.s: freeglut_overlay.c.s -.PHONY : freeglut_overlay.s - -# target to generate assembly for a file -freeglut_overlay.c.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_overlay.c.s -.PHONY : freeglut_overlay.c.s - -freeglut_spaceball.o: freeglut_spaceball.c.o -.PHONY : freeglut_spaceball.o - -# target to build an object file -freeglut_spaceball.c.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_spaceball.c.o -.PHONY : freeglut_spaceball.c.o - -freeglut_spaceball.i: freeglut_spaceball.c.i -.PHONY : freeglut_spaceball.i - -# target to preprocess a source file -freeglut_spaceball.c.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_spaceball.c.i -.PHONY : freeglut_spaceball.c.i - -freeglut_spaceball.s: freeglut_spaceball.c.s -.PHONY : freeglut_spaceball.s - -# target to generate assembly for a file -freeglut_spaceball.c.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_spaceball.c.s -.PHONY : freeglut_spaceball.c.s - -freeglut_state.o: freeglut_state.c.o -.PHONY : freeglut_state.o - -# target to build an object file -freeglut_state.c.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_state.c.o -.PHONY : freeglut_state.c.o - -freeglut_state.i: freeglut_state.c.i -.PHONY : freeglut_state.i - -# target to preprocess a source file -freeglut_state.c.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_state.c.i -.PHONY : freeglut_state.c.i - -freeglut_state.s: freeglut_state.c.s -.PHONY : freeglut_state.s - -# target to generate assembly for a file -freeglut_state.c.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_state.c.s -.PHONY : freeglut_state.c.s - -freeglut_stroke_mono_roman.o: freeglut_stroke_mono_roman.c.o -.PHONY : freeglut_stroke_mono_roman.o - -# target to build an object file -freeglut_stroke_mono_roman.c.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_mono_roman.c.o -.PHONY : freeglut_stroke_mono_roman.c.o - -freeglut_stroke_mono_roman.i: freeglut_stroke_mono_roman.c.i -.PHONY : freeglut_stroke_mono_roman.i - -# target to preprocess a source file -freeglut_stroke_mono_roman.c.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_mono_roman.c.i -.PHONY : freeglut_stroke_mono_roman.c.i - -freeglut_stroke_mono_roman.s: freeglut_stroke_mono_roman.c.s -.PHONY : freeglut_stroke_mono_roman.s - -# target to generate assembly for a file -freeglut_stroke_mono_roman.c.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_mono_roman.c.s -.PHONY : freeglut_stroke_mono_roman.c.s - -freeglut_stroke_roman.o: freeglut_stroke_roman.c.o -.PHONY : freeglut_stroke_roman.o - -# target to build an object file -freeglut_stroke_roman.c.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_roman.c.o -.PHONY : freeglut_stroke_roman.c.o - -freeglut_stroke_roman.i: freeglut_stroke_roman.c.i -.PHONY : freeglut_stroke_roman.i - -# target to preprocess a source file -freeglut_stroke_roman.c.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_roman.c.i -.PHONY : freeglut_stroke_roman.c.i - -freeglut_stroke_roman.s: freeglut_stroke_roman.c.s -.PHONY : freeglut_stroke_roman.s - -# target to generate assembly for a file -freeglut_stroke_roman.c.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_stroke_roman.c.s -.PHONY : freeglut_stroke_roman.c.s - -freeglut_structure.o: freeglut_structure.c.o -.PHONY : freeglut_structure.o - -# target to build an object file -freeglut_structure.c.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_structure.c.o -.PHONY : freeglut_structure.c.o - -freeglut_structure.i: freeglut_structure.c.i -.PHONY : freeglut_structure.i - -# target to preprocess a source file -freeglut_structure.c.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_structure.c.i -.PHONY : freeglut_structure.c.i - -freeglut_structure.s: freeglut_structure.c.s -.PHONY : freeglut_structure.s - -# target to generate assembly for a file -freeglut_structure.c.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_structure.c.s -.PHONY : freeglut_structure.c.s - -freeglut_teapot.o: freeglut_teapot.c.o -.PHONY : freeglut_teapot.o - -# target to build an object file -freeglut_teapot.c.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_teapot.c.o -.PHONY : freeglut_teapot.c.o - -freeglut_teapot.i: freeglut_teapot.c.i -.PHONY : freeglut_teapot.i - -# target to preprocess a source file -freeglut_teapot.c.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_teapot.c.i -.PHONY : freeglut_teapot.c.i - -freeglut_teapot.s: freeglut_teapot.c.s -.PHONY : freeglut_teapot.s - -# target to generate assembly for a file -freeglut_teapot.c.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_teapot.c.s -.PHONY : freeglut_teapot.c.s - -freeglut_videoresize.o: freeglut_videoresize.c.o -.PHONY : freeglut_videoresize.o - -# target to build an object file -freeglut_videoresize.c.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_videoresize.c.o -.PHONY : freeglut_videoresize.c.o - -freeglut_videoresize.i: freeglut_videoresize.c.i -.PHONY : freeglut_videoresize.i - -# target to preprocess a source file -freeglut_videoresize.c.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_videoresize.c.i -.PHONY : freeglut_videoresize.c.i - -freeglut_videoresize.s: freeglut_videoresize.c.s -.PHONY : freeglut_videoresize.s - -# target to generate assembly for a file -freeglut_videoresize.c.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_videoresize.c.s -.PHONY : freeglut_videoresize.c.s - -freeglut_window.o: freeglut_window.c.o -.PHONY : freeglut_window.o - -# target to build an object file -freeglut_window.c.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_window.c.o -.PHONY : freeglut_window.c.o - -freeglut_window.i: freeglut_window.c.i -.PHONY : freeglut_window.i - -# target to preprocess a source file -freeglut_window.c.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_window.c.i -.PHONY : freeglut_window.c.i - -freeglut_window.s: freeglut_window.c.s -.PHONY : freeglut_window.s - -# target to generate assembly for a file -freeglut_window.c.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f freeglut/CMakeFiles/freeglut_static.dir/build.make freeglut/CMakeFiles/freeglut_static.dir/freeglut_window.c.s -.PHONY : freeglut_window.c.s - -# Help Target -help: - @echo "The following are some of the valid targets for this Makefile:" - @echo "... all (the default if no target is provided)" - @echo "... clean" - @echo "... depend" - @echo "... edit_cache" - @echo "... freeglut_static" - @echo "... install" - @echo "... install/local" - @echo "... install/strip" - @echo "... list_install_components" - @echo "... rebuild_cache" - @echo "... freeglut_callbacks.o" - @echo "... freeglut_callbacks.i" - @echo "... freeglut_callbacks.s" - @echo "... freeglut_cursor.o" - @echo "... freeglut_cursor.i" - @echo "... freeglut_cursor.s" - @echo "... freeglut_display.o" - @echo "... freeglut_display.i" - @echo "... freeglut_display.s" - @echo "... freeglut_ext.o" - @echo "... freeglut_ext.i" - @echo "... freeglut_ext.s" - @echo "... freeglut_font.o" - @echo "... freeglut_font.i" - @echo "... freeglut_font.s" - @echo "... freeglut_font_data.o" - @echo "... freeglut_font_data.i" - @echo "... freeglut_font_data.s" - @echo "... freeglut_gamemode.o" - @echo "... freeglut_gamemode.i" - @echo "... freeglut_gamemode.s" - @echo "... freeglut_geometry.o" - @echo "... freeglut_geometry.i" - @echo "... freeglut_geometry.s" - @echo "... freeglut_glutfont_definitions.o" - @echo "... freeglut_glutfont_definitions.i" - @echo "... freeglut_glutfont_definitions.s" - @echo "... freeglut_init.o" - @echo "... freeglut_init.i" - @echo "... freeglut_init.s" - @echo "... freeglut_input_devices.o" - @echo "... freeglut_input_devices.i" - @echo "... freeglut_input_devices.s" - @echo "... freeglut_joystick.o" - @echo "... freeglut_joystick.i" - @echo "... freeglut_joystick.s" - @echo "... freeglut_main.o" - @echo "... freeglut_main.i" - @echo "... freeglut_main.s" - @echo "... freeglut_menu.o" - @echo "... freeglut_menu.i" - @echo "... freeglut_menu.s" - @echo "... freeglut_misc.o" - @echo "... freeglut_misc.i" - @echo "... freeglut_misc.s" - @echo "... freeglut_overlay.o" - @echo "... freeglut_overlay.i" - @echo "... freeglut_overlay.s" - @echo "... freeglut_spaceball.o" - @echo "... freeglut_spaceball.i" - @echo "... freeglut_spaceball.s" - @echo "... freeglut_state.o" - @echo "... freeglut_state.i" - @echo "... freeglut_state.s" - @echo "... freeglut_stroke_mono_roman.o" - @echo "... freeglut_stroke_mono_roman.i" - @echo "... freeglut_stroke_mono_roman.s" - @echo "... freeglut_stroke_roman.o" - @echo "... freeglut_stroke_roman.i" - @echo "... freeglut_stroke_roman.s" - @echo "... freeglut_structure.o" - @echo "... freeglut_structure.i" - @echo "... freeglut_structure.s" - @echo "... freeglut_teapot.o" - @echo "... freeglut_teapot.i" - @echo "... freeglut_teapot.s" - @echo "... freeglut_videoresize.o" - @echo "... freeglut_videoresize.i" - @echo "... freeglut_videoresize.s" - @echo "... freeglut_window.o" - @echo "... freeglut_window.i" - @echo "... freeglut_window.s" -.PHONY : help - - - -#============================================================================= -# Special targets to cleanup operation of make. - -# Special rule to run CMake to check the build system integrity. -# No rule that depends on this can have commands that come from listfiles -# because they might be regenerated. -cmake_check_build_system: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 -.PHONY : cmake_check_build_system - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/cmake_install.cmake b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/cmake_install.cmake deleted file mode 100644 index f208084..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/cmake_install.cmake +++ /dev/null @@ -1,34 +0,0 @@ -# Install script for directory: /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/freeglut - -# Set the install prefix -IF(NOT DEFINED CMAKE_INSTALL_PREFIX) - SET(CMAKE_INSTALL_PREFIX "/usr/local") -ENDIF(NOT DEFINED CMAKE_INSTALL_PREFIX) -STRING(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") - -# Set the install configuration name. -IF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) - IF(BUILD_TYPE) - STRING(REGEX REPLACE "^[^A-Za-z0-9_]+" "" - CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") - ELSE(BUILD_TYPE) - SET(CMAKE_INSTALL_CONFIG_NAME "") - ENDIF(BUILD_TYPE) - MESSAGE(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") -ENDIF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) - -# Set the component getting installed. -IF(NOT CMAKE_INSTALL_COMPONENT) - IF(COMPONENT) - MESSAGE(STATUS "Install component: \"${COMPONENT}\"") - SET(CMAKE_INSTALL_COMPONENT "${COMPONENT}") - ELSE(COMPONENT) - SET(CMAKE_INSTALL_COMPONENT) - ENDIF(COMPONENT) -ENDIF(NOT CMAKE_INSTALL_COMPONENT) - -# Install shared libraries without execute permission? -IF(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE) - SET(CMAKE_INSTALL_SO_NO_EXE "1") -ENDIF(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE) - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h deleted file mode 100644 index 0e6f8c6..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut.h +++ /dev/null @@ -1,22 +0,0 @@ -#ifndef __FREEGLUT_H__ -#define __FREEGLUT_H__ - -/* - * freeglut.h - * - * The freeglut library include file - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - * PAWEL W. OLSZTA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER - * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - */ - -#include "freeglut_std.h" -#include "freeglut_ext.h" - -/*** END OF FILE ***/ - -#endif /* __FREEGLUT_H__ */ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_callbacks.c b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_callbacks.c deleted file mode 100644 index b6b25b3..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_callbacks.c +++ /dev/null @@ -1,367 +0,0 @@ -/* - * freeglut_callbacks.c - * - * The callbacks setting methods. - * - * Copyright (c) 1999-2000 Pawel W. Olszta. All Rights Reserved. - * Written by Pawel W. Olszta, - * Creation date: Fri Dec 3 1999 - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included - * in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - * PAWEL W. OLSZTA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER - * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - */ - -#include "freeglut.h" -#include "freeglut_internal.h" - -/* -- INTERFACE FUNCTIONS -------------------------------------------------- */ - -/* - * All of the callbacks setting methods can be generalized to this: - */ -#define SET_CALLBACK(a) \ -do \ -{ \ - if( fgStructure.CurrentWindow == NULL ) \ - return; \ - SET_WCB( ( *( fgStructure.CurrentWindow ) ), a, callback ); \ -} while( 0 ) - -/* - * Sets the Display callback for the current window - */ -void FGAPIENTRY glutDisplayFunc( void (* callback)( void ) ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutDisplayFunc" ); - if( !callback ) - fgError( "Fatal error in program. NULL display callback not " - "permitted in GLUT 3.0+ or freeglut 2.0.1+" ); - SET_CALLBACK( Display ); -} - -/* - * Sets the Reshape callback for the current window - */ -void FGAPIENTRY glutReshapeFunc( void (* callback)( int, int ) ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutReshapeFunc" ); - SET_CALLBACK( Reshape ); -} - -/* - * Sets the Keyboard callback for the current window - */ -void FGAPIENTRY glutKeyboardFunc( void (* callback) - ( unsigned char, int, int ) ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutKeyboardFunc" ); - SET_CALLBACK( Keyboard ); -} - -/* - * Sets the Special callback for the current window - */ -void FGAPIENTRY glutSpecialFunc( void (* callback)( int, int, int ) ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutSpecialFunc" ); - SET_CALLBACK( Special ); -} - -/* - * Sets the global idle callback - */ -void FGAPIENTRY glutIdleFunc( void (* callback)( void ) ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutIdleFunc" ); - fgState.IdleCallback = callback; -} - -/* - * Sets the Timer callback for the current window - */ -void FGAPIENTRY glutTimerFunc( unsigned int timeOut, void (* callback)( int ), - int timerID ) -{ - SFG_Timer *timer, *node; - - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutTimerFunc" ); - - if( (timer = fgState.FreeTimers.Last) ) - { - fgListRemove( &fgState.FreeTimers, &timer->Node ); - } - else - { - if( ! (timer = malloc(sizeof(SFG_Timer))) ) - fgError( "Fatal error: " - "Memory allocation failure in glutTimerFunc()" ); - } - - timer->Callback = callback; - timer->ID = timerID; - timer->TriggerTime = fgElapsedTime() + timeOut; - - for( node = fgState.Timers.First; node; node = node->Node.Next ) - { - if( node->TriggerTime > timer->TriggerTime ) - break; - } - - fgListInsert( &fgState.Timers, &node->Node, &timer->Node ); -} - -/* - * Sets the Visibility callback for the current window. - */ -static void fghVisibility( int status ) -{ - int glut_status = GLUT_VISIBLE; - - FREEGLUT_INTERNAL_ERROR_EXIT_IF_NOT_INITIALISED ( "Visibility Callback" ); - freeglut_return_if_fail( fgStructure.CurrentWindow ); - - if( ( GLUT_HIDDEN == status ) || ( GLUT_FULLY_COVERED == status ) ) - glut_status = GLUT_NOT_VISIBLE; - INVOKE_WCB( *( fgStructure.CurrentWindow ), Visibility, ( glut_status ) ); -} - -void FGAPIENTRY glutVisibilityFunc( void (* callback)( int ) ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutVisibilityFunc" ); - SET_CALLBACK( Visibility ); - - if( callback ) - glutWindowStatusFunc( fghVisibility ); - else - glutWindowStatusFunc( NULL ); -} - -/* - * Sets the keyboard key release callback for the current window - */ -void FGAPIENTRY glutKeyboardUpFunc( void (* callback) - ( unsigned char, int, int ) ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutKeyboardUpFunc" ); - SET_CALLBACK( KeyboardUp ); -} - -/* - * Sets the special key release callback for the current window - */ -void FGAPIENTRY glutSpecialUpFunc( void (* callback)( int, int, int ) ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutSpecialUpFunc" ); - SET_CALLBACK( SpecialUp ); -} - -/* - * Sets the joystick callback and polling rate for the current window - */ -void FGAPIENTRY glutJoystickFunc( void (* callback) - ( unsigned int, int, int, int ), - int pollInterval ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutJoystickFunc" ); - fgInitialiseJoysticks (); - - SET_CALLBACK( Joystick ); - fgStructure.CurrentWindow->State.JoystickPollRate = pollInterval; - - fgStructure.CurrentWindow->State.JoystickLastPoll = - fgElapsedTime() - fgStructure.CurrentWindow->State.JoystickPollRate; - - if( fgStructure.CurrentWindow->State.JoystickLastPoll < 0 ) - fgStructure.CurrentWindow->State.JoystickLastPoll = 0; -} - -/* - * Sets the mouse callback for the current window - */ -void FGAPIENTRY glutMouseFunc( void (* callback)( int, int, int, int ) ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutMouseFunc" ); - SET_CALLBACK( Mouse ); -} - -/* - * Sets the mouse wheel callback for the current window - */ -void FGAPIENTRY glutMouseWheelFunc( void (* callback)( int, int, int, int ) ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutMouseWheelFunc" ); - SET_CALLBACK( MouseWheel ); -} - -/* - * Sets the mouse motion callback for the current window (one or more buttons - * are pressed) - */ -void FGAPIENTRY glutMotionFunc( void (* callback)( int, int ) ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutMotionFunc" ); - SET_CALLBACK( Motion ); -} - -/* - * Sets the passive mouse motion callback for the current window (no mouse - * buttons are pressed) - */ -void FGAPIENTRY glutPassiveMotionFunc( void (* callback)( int, int ) ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutPassiveMotionFunc" ); - SET_CALLBACK( Passive ); -} - -/* - * Window mouse entry/leave callback - */ -void FGAPIENTRY glutEntryFunc( void (* callback)( int ) ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutEntryFunc" ); - SET_CALLBACK( Entry ); -} - -/* - * Window destruction callbacks - */ -void FGAPIENTRY glutCloseFunc( void (* callback)( void ) ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutCloseFunc" ); - SET_CALLBACK( Destroy ); -} - -void FGAPIENTRY glutWMCloseFunc( void (* callback)( void ) ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutWMCloseFunc" ); - glutCloseFunc( callback ); -} - -/* A. Donev: Destruction callback for menus */ -void FGAPIENTRY glutMenuDestroyFunc( void (* callback)( void ) ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutMenuDestroyFunc" ); - if( fgStructure.CurrentMenu ) - fgStructure.CurrentMenu->Destroy = callback; -} - -/* - * Deprecated version of glutMenuStatusFunc callback setting method - */ -void FGAPIENTRY glutMenuStateFunc( void (* callback)( int ) ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutMenuStateFunc" ); - fgState.MenuStateCallback = callback; -} - -/* - * Sets the global menu status callback for the current window - */ -void FGAPIENTRY glutMenuStatusFunc( void (* callback)( int, int, int ) ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutMenuStatusFunc" ); - fgState.MenuStatusCallback = callback; -} - -/* - * Sets the overlay display callback for the current window - */ -void FGAPIENTRY glutOverlayDisplayFunc( void (* callback)( void ) ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutOverlayDisplayFunc" ); - SET_CALLBACK( OverlayDisplay ); -} - -/* - * Sets the window status callback for the current window - */ -void FGAPIENTRY glutWindowStatusFunc( void (* callback)( int ) ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutWindowStatusFunc" ); - SET_CALLBACK( WindowStatus ); -} - -/* - * Sets the spaceball motion callback for the current window - */ -void FGAPIENTRY glutSpaceballMotionFunc( void (* callback)( int, int, int ) ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutSpaceballMotionFunc" ); - fgInitialiseSpaceball(); - - SET_CALLBACK( SpaceMotion ); -} - -/* - * Sets the spaceball rotate callback for the current window - */ -void FGAPIENTRY glutSpaceballRotateFunc( void (* callback)( int, int, int ) ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutSpaceballRotateFunc" ); - fgInitialiseSpaceball(); - - SET_CALLBACK( SpaceRotation ); -} - -/* - * Sets the spaceball button callback for the current window - */ -void FGAPIENTRY glutSpaceballButtonFunc( void (* callback)( int, int ) ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutSpaceballButtonFunc" ); - fgInitialiseSpaceball(); - - SET_CALLBACK( SpaceButton ); -} - -/* - * Sets the button box callback for the current window - */ -void FGAPIENTRY glutButtonBoxFunc( void (* callback)( int, int ) ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutButtonBoxFunc" ); - SET_CALLBACK( ButtonBox ); -} - -/* - * Sets the dials box callback for the current window - */ -void FGAPIENTRY glutDialsFunc( void (* callback)( int, int ) ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutDialsFunc" ); - SET_CALLBACK( Dials ); -} - -/* - * Sets the tablet motion callback for the current window - */ -void FGAPIENTRY glutTabletMotionFunc( void (* callback)( int, int ) ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutTabletMotionFunc" ); - SET_CALLBACK( TabletMotion ); -} - -/* - * Sets the tablet buttons callback for the current window - */ -void FGAPIENTRY glutTabletButtonFunc( void (* callback)( int, int, int, int ) ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutTabletButtonFunc" ); - SET_CALLBACK( TabletButton ); -} - -/*** END OF FILE ***/ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_cursor.c b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_cursor.c deleted file mode 100644 index f0ba136..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_cursor.c +++ /dev/null @@ -1,280 +0,0 @@ -/* - * freeglut_cursor.c - * - * The mouse cursor related stuff. - * - * Copyright (c) 1999-2000 Pawel W. Olszta. All Rights Reserved. - * Written by Pawel W. Olszta, - * Creation date: Thu Dec 16 1999 - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included - * in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - * PAWEL W. OLSZTA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER - * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - */ - -#include "freeglut.h" -#include "freeglut_internal.h" - -#if TARGET_HOST_POSIX_X11 - #include -#endif - -/* - * TODO BEFORE THE STABLE RELEASE: - * glutSetCursor() -- Win32 mappings are incomplete. - * - * It would be good to use custom mouse cursor shapes, and introduce - * an option to display them using glBitmap() and/or texture mapping, - * apart from the windowing system version. - */ - -/* -- PRIVATE FUNCTIONS --------------------------------------------------- */ - -#if TARGET_HOST_POSIX_X11 -/* - * A factory method for an empty cursor - */ -static Cursor getEmptyCursor( void ) -{ - static Cursor cursorNone = None; - if( cursorNone == None ) { - char cursorNoneBits[ 32 ]; - XColor dontCare; - Pixmap cursorNonePixmap; - memset( cursorNoneBits, 0, sizeof( cursorNoneBits ) ); - memset( &dontCare, 0, sizeof( dontCare ) ); - cursorNonePixmap = XCreateBitmapFromData ( fgDisplay.Display, - fgDisplay.RootWindow, - cursorNoneBits, 16, 16 ); - if( cursorNonePixmap != None ) { - cursorNone = XCreatePixmapCursor( fgDisplay.Display, - cursorNonePixmap, cursorNonePixmap, - &dontCare, &dontCare, 0, 0 ); - XFreePixmap( fgDisplay.Display, cursorNonePixmap ); - } - } - return cursorNone; -} - -typedef struct tag_cursorCacheEntry cursorCacheEntry; -struct tag_cursorCacheEntry { - unsigned int cursorShape; /* an XC_foo value */ - Cursor cachedCursor; /* None if the corresponding cursor has - not been created yet */ -}; - -/* - * Note: The arrangement of the table below depends on the fact that - * the "normal" GLUT_CURSOR_* values start a 0 and are consecutive. - */ -static cursorCacheEntry cursorCache[] = { - { XC_arrow, None }, /* GLUT_CURSOR_RIGHT_ARROW */ - { XC_top_left_arrow, None }, /* GLUT_CURSOR_LEFT_ARROW */ - { XC_hand1, None }, /* GLUT_CURSOR_INFO */ - { XC_pirate, None }, /* GLUT_CURSOR_DESTROY */ - { XC_question_arrow, None }, /* GLUT_CURSOR_HELP */ - { XC_exchange, None }, /* GLUT_CURSOR_CYCLE */ - { XC_spraycan, None }, /* GLUT_CURSOR_SPRAY */ - { XC_watch, None }, /* GLUT_CURSOR_WAIT */ - { XC_xterm, None }, /* GLUT_CURSOR_TEXT */ - { XC_crosshair, None }, /* GLUT_CURSOR_CROSSHAIR */ - { XC_sb_v_double_arrow, None }, /* GLUT_CURSOR_UP_DOWN */ - { XC_sb_h_double_arrow, None }, /* GLUT_CURSOR_LEFT_RIGHT */ - { XC_top_side, None }, /* GLUT_CURSOR_TOP_SIDE */ - { XC_bottom_side, None }, /* GLUT_CURSOR_BOTTOM_SIDE */ - { XC_left_side, None }, /* GLUT_CURSOR_LEFT_SIDE */ - { XC_right_side, None }, /* GLUT_CURSOR_RIGHT_SIDE */ - { XC_top_left_corner, None }, /* GLUT_CURSOR_TOP_LEFT_CORNER */ - { XC_top_right_corner, None }, /* GLUT_CURSOR_TOP_RIGHT_CORNER */ - { XC_bottom_right_corner, None }, /* GLUT_CURSOR_BOTTOM_RIGHT_CORNER */ - { XC_bottom_left_corner, None } /* GLUT_CURSOR_BOTTOM_LEFT_CORNER */ -}; -#endif - -/* -- INTERNAL FUNCTIONS ---------------------------------------------------- */ - -/* - * Set the cursor image to be used for the current window - */ -void fgSetCursor ( SFG_Window *window, int cursorID ) -{ -#if TARGET_HOST_POSIX_X11 - { - Cursor cursor; - /* - * XXX FULL_CROSSHAIR demotes to plain CROSSHAIR. Old GLUT allows - * for this, but if there is a system that easily supports a full- - * window (or full-screen) crosshair, we might consider it. - */ - int cursorIDToUse = - ( cursorID == GLUT_CURSOR_FULL_CROSSHAIR ) ? GLUT_CURSOR_CROSSHAIR : cursorID; - - if( ( cursorIDToUse >= 0 ) && - ( cursorIDToUse < sizeof( cursorCache ) / sizeof( cursorCache[0] ) ) ) { - cursorCacheEntry *entry = &cursorCache[ cursorIDToUse ]; - if( entry->cachedCursor == None ) { - entry->cachedCursor = - XCreateFontCursor( fgDisplay.Display, entry->cursorShape ); - } - cursor = entry->cachedCursor; - } else { - switch( cursorIDToUse ) - { - case GLUT_CURSOR_NONE: - cursor = getEmptyCursor( ); - break; - - case GLUT_CURSOR_INHERIT: - cursor = None; - break; - - default: - fgError( "Unknown cursor type: %d", cursorIDToUse ); - return; - } - } - - if ( cursorIDToUse == GLUT_CURSOR_INHERIT ) { - XUndefineCursor( fgDisplay.Display, window->Window.Handle ); - } else if ( cursor != None ) { - XDefineCursor( fgDisplay.Display, window->Window.Handle, cursor ); - } else if ( cursorIDToUse != GLUT_CURSOR_NONE ) { - fgError( "Failed to create cursor" ); - } - } - -#elif TARGET_HOST_MS_WINDOWS - - /* - * Joe Krahn is re-writing the following code. - */ - /* Set the cursor AND change it for this window class. */ -#if !defined(__MINGW64__) && _MSC_VER <= 1200 -# define MAP_CURSOR(a,b) \ - case a: \ - SetCursor( LoadCursor( NULL, b ) ); \ - SetClassLong( window->Window.Handle, \ - GCL_HCURSOR, \ - ( LONG )LoadCursor( NULL, b ) ); \ - break; - /* Nuke the cursor AND change it for this window class. */ -# define ZAP_CURSOR(a,b) \ - case a: \ - SetCursor( NULL ); \ - SetClassLong( window->Window.Handle, \ - GCL_HCURSOR, ( LONG )NULL ); \ - break; -#else -# define MAP_CURSOR(a,b) \ - case a: \ - SetCursor( LoadCursor( NULL, b ) ); \ - SetClassLongPtr( window->Window.Handle, \ - GCLP_HCURSOR, \ - ( LONG )( LONG_PTR )LoadCursor( NULL, b ) ); \ - break; - /* Nuke the cursor AND change it for this window class. */ -# define ZAP_CURSOR(a,b) \ - case a: \ - SetCursor( NULL ); \ - SetClassLongPtr( window->Window.Handle, \ - GCLP_HCURSOR, ( LONG )( LONG_PTR )NULL ); \ - break; -#endif - - switch( cursorID ) - { - MAP_CURSOR( GLUT_CURSOR_RIGHT_ARROW, IDC_ARROW ); - MAP_CURSOR( GLUT_CURSOR_LEFT_ARROW, IDC_ARROW ); - MAP_CURSOR( GLUT_CURSOR_INFO, IDC_HELP ); - MAP_CURSOR( GLUT_CURSOR_DESTROY, IDC_CROSS ); - MAP_CURSOR( GLUT_CURSOR_HELP, IDC_HELP ); - MAP_CURSOR( GLUT_CURSOR_CYCLE, IDC_SIZEALL ); - MAP_CURSOR( GLUT_CURSOR_SPRAY, IDC_CROSS ); - MAP_CURSOR( GLUT_CURSOR_WAIT, IDC_WAIT ); - MAP_CURSOR( GLUT_CURSOR_TEXT, IDC_IBEAM ); - MAP_CURSOR( GLUT_CURSOR_CROSSHAIR, IDC_CROSS ); - MAP_CURSOR( GLUT_CURSOR_UP_DOWN, IDC_SIZENS ); - MAP_CURSOR( GLUT_CURSOR_LEFT_RIGHT, IDC_SIZEWE ); - MAP_CURSOR( GLUT_CURSOR_TOP_SIDE, IDC_ARROW ); /* XXX ToDo */ - MAP_CURSOR( GLUT_CURSOR_BOTTOM_SIDE, IDC_ARROW ); /* XXX ToDo */ - MAP_CURSOR( GLUT_CURSOR_LEFT_SIDE, IDC_ARROW ); /* XXX ToDo */ - MAP_CURSOR( GLUT_CURSOR_RIGHT_SIDE, IDC_ARROW ); /* XXX ToDo */ - MAP_CURSOR( GLUT_CURSOR_TOP_LEFT_CORNER, IDC_SIZENWSE ); - MAP_CURSOR( GLUT_CURSOR_TOP_RIGHT_CORNER, IDC_SIZENESW ); - MAP_CURSOR( GLUT_CURSOR_BOTTOM_RIGHT_CORNER, IDC_SIZENWSE ); - MAP_CURSOR( GLUT_CURSOR_BOTTOM_LEFT_CORNER, IDC_SIZENESW ); - MAP_CURSOR( GLUT_CURSOR_INHERIT, IDC_ARROW ); /* XXX ToDo */ - ZAP_CURSOR( GLUT_CURSOR_NONE, NULL ); - MAP_CURSOR( GLUT_CURSOR_FULL_CROSSHAIR, IDC_CROSS ); /* XXX ToDo */ - - default: - fgError( "Unknown cursor type: %d", cursorID ); - break; - } -#endif - - window->State.Cursor = cursorID; -} - -/* -- INTERFACE FUNCTIONS -------------------------------------------------- */ - -/* - * Set the cursor image to be used for the current window - */ -void FGAPIENTRY glutSetCursor( int cursorID ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutSetCursor" ); - FREEGLUT_EXIT_IF_NO_WINDOW ( "glutSetCursor" ); - - fgSetCursor ( fgStructure.CurrentWindow, cursorID ); -} - -/* - * Moves the mouse pointer to given window coordinates - */ -void FGAPIENTRY glutWarpPointer( int x, int y ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutWarpPointer" ); - FREEGLUT_EXIT_IF_NO_WINDOW ( "glutWarpPointer" ); - -#if TARGET_HOST_POSIX_X11 - - XWarpPointer( - fgDisplay.Display, - None, - fgStructure.CurrentWindow->Window.Handle, - 0, 0, 0, 0, - x, y - ); - /* Make the warp visible immediately. */ - XFlush( fgDisplay.Display ); - -#elif TARGET_HOST_MS_WINDOWS - - { - POINT coords; - coords.x = x; - coords.y = y; - - /* ClientToScreen() translates {coords} for us. */ - ClientToScreen( fgStructure.CurrentWindow->Window.Handle, &coords ); - SetCursorPos( coords.x, coords.y ); - } - -#endif -} - -/*** END OF FILE ***/ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_display.c b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_display.c deleted file mode 100644 index 2f2c575..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_display.c +++ /dev/null @@ -1,98 +0,0 @@ -/* - * freeglut_display.c - * - * Display message posting, context buffer swapping. - * - * Copyright (c) 1999-2000 Pawel W. Olszta. All Rights Reserved. - * Written by Pawel W. Olszta, - * Creation date: Fri Dec 3 1999 - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included - * in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - * PAWEL W. OLSZTA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER - * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - */ - -#include "freeglut.h" -#include "freeglut_internal.h" - -/* -- INTERFACE FUNCTIONS -------------------------------------------------- */ - -/* - * Marks the current window to have the redisplay performed when possible... - */ -void FGAPIENTRY glutPostRedisplay( void ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutPostRedisplay" ); - FREEGLUT_EXIT_IF_NO_WINDOW ( "glutPostRedisplay" ); - fgStructure.CurrentWindow->State.Redisplay = GL_TRUE; -} - -/* - * Swaps the buffers for the current window (if any) - */ -void FGAPIENTRY glutSwapBuffers( void ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutSwapBuffers" ); - FREEGLUT_EXIT_IF_NO_WINDOW ( "glutSwapBuffers" ); - - /* - * "glXSwapBuffers" already performs an implicit call to "glFlush". What - * about "SwapBuffers"? - */ - glFlush( ); - if( ! fgStructure.CurrentWindow->Window.DoubleBuffered ) - return; - -#if TARGET_HOST_POSIX_X11 - glXSwapBuffers( fgDisplay.Display, fgStructure.CurrentWindow->Window.Handle ); -#elif TARGET_HOST_MS_WINDOWS - SwapBuffers( fgStructure.CurrentWindow->Window.Device ); -#endif - - /* GLUT_FPS env var support */ - if( fgState.FPSInterval ) - { - GLint t = glutGet( GLUT_ELAPSED_TIME ); - fgState.SwapCount++; - if( fgState.SwapTime == 0 ) - fgState.SwapTime = t; - else if( t - fgState.SwapTime > fgState.FPSInterval ) - { - float time = 0.001f * ( t - fgState.SwapTime ); - float fps = ( float )fgState.SwapCount / time; - fprintf( stderr, - "freeglut: %d frames in %.2f seconds = %.2f FPS\n", - fgState.SwapCount, time, fps ); - fgState.SwapTime = t; - fgState.SwapCount = 0; - } - } -} - -/* - * Mark appropriate window to be displayed - */ -void FGAPIENTRY glutPostWindowRedisplay( int windowID ) -{ - SFG_Window* window; - - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutPostWindowRedisplay" ); - window = fgWindowByID( windowID ); - freeglut_return_if_fail( window ); - window->State.Redisplay = GL_TRUE; -} - -/*** END OF FILE ***/ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_ext.c b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_ext.c deleted file mode 100644 index cf85434..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_ext.c +++ /dev/null @@ -1,226 +0,0 @@ -/* - * freeglut_ext.c - * - * Functions related to OpenGL extensions. - * - * Copyright (c) 1999-2000 Pawel W. Olszta. All Rights Reserved. - * Written by Pawel W. Olszta, - * Creation date: Thu Dec 9 1999 - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included - * in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - * PAWEL W. OLSZTA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER - * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - */ - -#define GLX_GLXEXT_PROTOTYPES -#include "freeglut.h" -#include "freeglut_internal.h" - -static GLUTproc fghGetGLUTProcAddress( const char* procName ) -{ - /* optimization: quick initial check */ - if( strncmp( procName, "glut", 4 ) != 0 ) - return NULL; - -#define CHECK_NAME(x) if( strcmp( procName, #x ) == 0) return (GLUTproc)x; - CHECK_NAME(glutInit); - CHECK_NAME(glutInitDisplayMode); - CHECK_NAME(glutInitDisplayString); - CHECK_NAME(glutInitWindowPosition); - CHECK_NAME(glutInitWindowSize); - CHECK_NAME(glutMainLoop); - CHECK_NAME(glutExit); - CHECK_NAME(glutCreateWindow); - CHECK_NAME(glutCreateSubWindow); - CHECK_NAME(glutDestroyWindow); - CHECK_NAME(glutPostRedisplay); - CHECK_NAME(glutPostWindowRedisplay); - CHECK_NAME(glutSwapBuffers); - CHECK_NAME(glutGetWindow); - CHECK_NAME(glutSetWindow); - CHECK_NAME(glutSetWindowTitle); - CHECK_NAME(glutSetIconTitle); - CHECK_NAME(glutPositionWindow); - CHECK_NAME(glutReshapeWindow); - CHECK_NAME(glutPopWindow); - CHECK_NAME(glutPushWindow); - CHECK_NAME(glutIconifyWindow); - CHECK_NAME(glutShowWindow); - CHECK_NAME(glutHideWindow); - CHECK_NAME(glutFullScreen); - CHECK_NAME(glutSetCursor); - CHECK_NAME(glutWarpPointer); - CHECK_NAME(glutEstablishOverlay); - CHECK_NAME(glutRemoveOverlay); - CHECK_NAME(glutUseLayer); - CHECK_NAME(glutPostOverlayRedisplay); - CHECK_NAME(glutPostWindowOverlayRedisplay); - CHECK_NAME(glutShowOverlay); - CHECK_NAME(glutHideOverlay); - CHECK_NAME(glutCreateMenu); - CHECK_NAME(glutDestroyMenu); - CHECK_NAME(glutGetMenu); - CHECK_NAME(glutSetMenu); - CHECK_NAME(glutAddMenuEntry); - CHECK_NAME(glutAddSubMenu); - CHECK_NAME(glutChangeToMenuEntry); - CHECK_NAME(glutChangeToSubMenu); - CHECK_NAME(glutRemoveMenuItem); - CHECK_NAME(glutAttachMenu); - CHECK_NAME(glutDetachMenu); - CHECK_NAME(glutDisplayFunc); - CHECK_NAME(glutReshapeFunc); - CHECK_NAME(glutKeyboardFunc); - CHECK_NAME(glutMouseFunc); - CHECK_NAME(glutMotionFunc); - CHECK_NAME(glutPassiveMotionFunc); - CHECK_NAME(glutEntryFunc); - CHECK_NAME(glutVisibilityFunc); - CHECK_NAME(glutIdleFunc); - CHECK_NAME(glutTimerFunc); - CHECK_NAME(glutMenuStateFunc); - CHECK_NAME(glutSpecialFunc); - CHECK_NAME(glutSpaceballMotionFunc); - CHECK_NAME(glutSpaceballRotateFunc); - CHECK_NAME(glutSpaceballButtonFunc); - CHECK_NAME(glutButtonBoxFunc); - CHECK_NAME(glutDialsFunc); - CHECK_NAME(glutTabletMotionFunc); - CHECK_NAME(glutTabletButtonFunc); - CHECK_NAME(glutMenuStatusFunc); - CHECK_NAME(glutOverlayDisplayFunc); - CHECK_NAME(glutWindowStatusFunc); - CHECK_NAME(glutKeyboardUpFunc); - CHECK_NAME(glutSpecialUpFunc); -#if !defined(_WIN32_WCE) - CHECK_NAME(glutJoystickFunc); -#endif /* !defined(_WIN32_WCE) */ - CHECK_NAME(glutSetColor); - CHECK_NAME(glutGetColor); - CHECK_NAME(glutCopyColormap); - CHECK_NAME(glutGet); - CHECK_NAME(glutDeviceGet); - CHECK_NAME(glutExtensionSupported); - CHECK_NAME(glutGetModifiers); - CHECK_NAME(glutLayerGet); - CHECK_NAME(glutBitmapCharacter); - CHECK_NAME(glutBitmapWidth); - CHECK_NAME(glutStrokeCharacter); - CHECK_NAME(glutStrokeWidth); - CHECK_NAME(glutBitmapLength); - CHECK_NAME(glutStrokeLength); - CHECK_NAME(glutWireSphere); - CHECK_NAME(glutSolidSphere); - CHECK_NAME(glutWireCone); - CHECK_NAME(glutSolidCone); - CHECK_NAME(glutWireCube); - CHECK_NAME(glutSolidCube); - CHECK_NAME(glutWireTorus); - CHECK_NAME(glutSolidTorus); - CHECK_NAME(glutWireDodecahedron); - CHECK_NAME(glutSolidDodecahedron); - CHECK_NAME(glutWireTeapot); - CHECK_NAME(glutSolidTeapot); - CHECK_NAME(glutWireOctahedron); - CHECK_NAME(glutSolidOctahedron); - CHECK_NAME(glutWireTetrahedron); - CHECK_NAME(glutSolidTetrahedron); - CHECK_NAME(glutWireIcosahedron); - CHECK_NAME(glutSolidIcosahedron); - CHECK_NAME(glutVideoResizeGet); - CHECK_NAME(glutSetupVideoResizing); - CHECK_NAME(glutStopVideoResizing); - CHECK_NAME(glutVideoResize); - CHECK_NAME(glutVideoPan); - CHECK_NAME(glutReportErrors); - CHECK_NAME(glutIgnoreKeyRepeat); - CHECK_NAME(glutSetKeyRepeat); -#if !defined(_WIN32_WCE) - CHECK_NAME(glutForceJoystickFunc); - CHECK_NAME(glutGameModeString); - CHECK_NAME(glutEnterGameMode); - CHECK_NAME(glutLeaveGameMode); - CHECK_NAME(glutGameModeGet); -#endif /* !defined(_WIN32_WCE) */ - /* freeglut extensions */ - CHECK_NAME(glutMainLoopEvent); - CHECK_NAME(glutLeaveMainLoop); - CHECK_NAME(glutCloseFunc); - CHECK_NAME(glutWMCloseFunc); - CHECK_NAME(glutMenuDestroyFunc); - CHECK_NAME(glutFullScreenToggle); - CHECK_NAME(glutSetOption); - CHECK_NAME(glutGetModeValues); - CHECK_NAME(glutSetWindowData); - CHECK_NAME(glutGetWindowData); - CHECK_NAME(glutSetMenuData); - CHECK_NAME(glutGetMenuData); - CHECK_NAME(glutBitmapHeight); - CHECK_NAME(glutStrokeHeight); - CHECK_NAME(glutBitmapString); - CHECK_NAME(glutStrokeString); - CHECK_NAME(glutWireRhombicDodecahedron); - CHECK_NAME(glutSolidRhombicDodecahedron); - CHECK_NAME(glutWireSierpinskiSponge); - CHECK_NAME(glutSolidSierpinskiSponge); - CHECK_NAME(glutWireCylinder); - CHECK_NAME(glutSolidCylinder); - CHECK_NAME(glutGetProcAddress); - CHECK_NAME(glutMouseWheelFunc); - CHECK_NAME(glutJoystickGetNumAxes); - CHECK_NAME(glutJoystickGetNumButtons); - CHECK_NAME(glutJoystickNotWorking); - CHECK_NAME(glutJoystickGetDeadBand); - CHECK_NAME(glutJoystickSetDeadBand); - CHECK_NAME(glutJoystickGetSaturation); - CHECK_NAME(glutJoystickSetSaturation); - CHECK_NAME(glutJoystickSetMinRange); - CHECK_NAME(glutJoystickSetMaxRange); - CHECK_NAME(glutJoystickSetCenter); - CHECK_NAME(glutJoystickGetMinRange); - CHECK_NAME(glutJoystickGetMaxRange); - CHECK_NAME(glutJoystickGetCenter); - CHECK_NAME(glutInitContextVersion); - CHECK_NAME(glutInitContextFlags); - CHECK_NAME(glutInitContextProfile); -#undef CHECK_NAME - - return NULL; -} - - -SFG_Proc fghGetProcAddress( const char *procName ) -{ -#if TARGET_HOST_MS_WINDOWS - return (SFG_Proc)wglGetProcAddress( ( LPCSTR )procName ); -#elif TARGET_HOST_POSIX_X11 && defined( GLX_ARB_get_proc_address ) - return (SFG_Proc)glXGetProcAddressARB( ( const GLubyte * )procName ); -#else - return NULL; -#endif -} - - -GLUTproc FGAPIENTRY -glutGetProcAddress( const char *procName ) -{ - GLUTproc p; - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutGetProcAddress" ); - - /* Try GLUT functions first, then core GL functions */ - p = fghGetGLUTProcAddress( procName ); - return ( p != NULL ) ? p : fghGetProcAddress( procName ); -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_ext.h b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_ext.h deleted file mode 100644 index aca85e7..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_ext.h +++ /dev/null @@ -1,212 +0,0 @@ -#ifndef __FREEGLUT_EXT_H__ -#define __FREEGLUT_EXT_H__ - -/* - * freeglut_ext.h - * - * The non-GLUT-compatible extensions to the freeglut library include file - * - * Copyright (c) 1999-2000 Pawel W. Olszta. All Rights Reserved. - * Written by Pawel W. Olszta, - * Creation date: Thu Dec 2 1999 - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included - * in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - * PAWEL W. OLSZTA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER - * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - */ - -#ifdef __cplusplus - extern "C" { -#endif - -/* - * Additional GLUT Key definitions for the Special key function - */ -#define GLUT_KEY_NUM_LOCK 0x006D -#define GLUT_KEY_BEGIN 0x006E -#define GLUT_KEY_DELETE 0x006F - -/* - * GLUT API Extension macro definitions -- behaviour when the user clicks on an "x" to close a window - */ -#define GLUT_ACTION_EXIT 0 -#define GLUT_ACTION_GLUTMAINLOOP_RETURNS 1 -#define GLUT_ACTION_CONTINUE_EXECUTION 2 - -/* - * Create a new rendering context when the user opens a new window? - */ -#define GLUT_CREATE_NEW_CONTEXT 0 -#define GLUT_USE_CURRENT_CONTEXT 1 - -/* - * Direct/Indirect rendering context options (has meaning only in Unix/X11) - */ -#define GLUT_FORCE_INDIRECT_CONTEXT 0 -#define GLUT_ALLOW_DIRECT_CONTEXT 1 -#define GLUT_TRY_DIRECT_CONTEXT 2 -#define GLUT_FORCE_DIRECT_CONTEXT 3 - -/* - * GLUT API Extension macro definitions -- the glutGet parameters - */ -#define GLUT_INIT_STATE 0x007C - -#define GLUT_ACTION_ON_WINDOW_CLOSE 0x01F9 - -#define GLUT_WINDOW_BORDER_WIDTH 0x01FA -#define GLUT_WINDOW_HEADER_HEIGHT 0x01FB - -#define GLUT_VERSION 0x01FC - -#define GLUT_RENDERING_CONTEXT 0x01FD -#define GLUT_DIRECT_RENDERING 0x01FE - -#define GLUT_FULL_SCREEN 0x01FF - -/* - * New tokens for glutInitDisplayMode. - * Only one GLUT_AUXn bit may be used at a time. - * Value 0x0400 is defined in OpenGLUT. - */ -#define GLUT_AUX 0x1000 - -#define GLUT_AUX1 0x1000 -#define GLUT_AUX2 0x2000 -#define GLUT_AUX3 0x4000 -#define GLUT_AUX4 0x8000 - -/* - * Context-related flags, see freeglut_state.c - */ -#define GLUT_INIT_MAJOR_VERSION 0x0200 -#define GLUT_INIT_MINOR_VERSION 0x0201 -#define GLUT_INIT_FLAGS 0x0202 -#define GLUT_INIT_PROFILE 0x0203 - -/* - * Flags for glutInitContextFlags, see freeglut_init.c - */ -#define GLUT_DEBUG 0x0001 -#define GLUT_FORWARD_COMPATIBLE 0x0002 - - -/* - * Flags for glutInitContextProfile, see freeglut_init.c - */ -#define GLUT_CORE_PROFILE 0x0001 -#define GLUT_COMPATIBILITY_PROFILE 0x0002 - -/* - * Process loop function, see freeglut_main.c - */ -FGAPI void FGAPIENTRY glutMainLoopEvent( void ); -FGAPI void FGAPIENTRY glutLeaveMainLoop( void ); -FGAPI void FGAPIENTRY glutExit ( void ); - -/* - * Window management functions, see freeglut_window.c - */ -FGAPI void FGAPIENTRY glutFullScreenToggle( void ); - -/* - * Window-specific callback functions, see freeglut_callbacks.c - */ -FGAPI void FGAPIENTRY glutMouseWheelFunc( void (* callback)( int, int, int, int ) ); -FGAPI void FGAPIENTRY glutCloseFunc( void (* callback)( void ) ); -FGAPI void FGAPIENTRY glutWMCloseFunc( void (* callback)( void ) ); -/* A. Donev: Also a destruction callback for menus */ -FGAPI void FGAPIENTRY glutMenuDestroyFunc( void (* callback)( void ) ); - -/* - * State setting and retrieval functions, see freeglut_state.c - */ -FGAPI void FGAPIENTRY glutSetOption ( GLenum option_flag, int value ); -FGAPI int * FGAPIENTRY glutGetModeValues(GLenum mode, int * size); -/* A.Donev: User-data manipulation */ -FGAPI void* FGAPIENTRY glutGetWindowData( void ); -FGAPI void FGAPIENTRY glutSetWindowData(void* data); -FGAPI void* FGAPIENTRY glutGetMenuData( void ); -FGAPI void FGAPIENTRY glutSetMenuData(void* data); - -/* - * Font stuff, see freeglut_font.c - */ -FGAPI int FGAPIENTRY glutBitmapHeight( void* font ); -FGAPI GLfloat FGAPIENTRY glutStrokeHeight( void* font ); -FGAPI void FGAPIENTRY glutBitmapString( void* font, const unsigned char *string ); -FGAPI void FGAPIENTRY glutStrokeString( void* font, const unsigned char *string ); - -/* - * Geometry functions, see freeglut_geometry.c - */ -FGAPI void FGAPIENTRY glutWireRhombicDodecahedron( void ); -FGAPI void FGAPIENTRY glutSolidRhombicDodecahedron( void ); -FGAPI void FGAPIENTRY glutWireSierpinskiSponge ( int num_levels, GLdouble offset[3], GLdouble scale ); -FGAPI void FGAPIENTRY glutSolidSierpinskiSponge ( int num_levels, GLdouble offset[3], GLdouble scale ); -FGAPI void FGAPIENTRY glutWireCylinder( GLdouble radius, GLdouble height, GLint slices, GLint stacks); -FGAPI void FGAPIENTRY glutSolidCylinder( GLdouble radius, GLdouble height, GLint slices, GLint stacks); - -/* - * Extension functions, see freeglut_ext.c - */ -typedef void (*GLUTproc)(); -FGAPI GLUTproc FGAPIENTRY glutGetProcAddress( const char *procName ); - -/* - * Joystick functions, see freeglut_joystick.c - */ -/* USE OF THESE FUNCTIONS IS DEPRECATED !!!!! */ -/* If you have a serious need for these functions in your application, please either - * contact the "freeglut" developer community at freeglut-developer@lists.sourceforge.net, - * switch to the OpenGLUT library, or else port your joystick functionality over to PLIB's - * "js" library. - */ -int glutJoystickGetNumAxes( int ident ); -int glutJoystickGetNumButtons( int ident ); -int glutJoystickNotWorking( int ident ); -float glutJoystickGetDeadBand( int ident, int axis ); -void glutJoystickSetDeadBand( int ident, int axis, float db ); -float glutJoystickGetSaturation( int ident, int axis ); -void glutJoystickSetSaturation( int ident, int axis, float st ); -void glutJoystickSetMinRange( int ident, float *axes ); -void glutJoystickSetMaxRange( int ident, float *axes ); -void glutJoystickSetCenter( int ident, float *axes ); -void glutJoystickGetMinRange( int ident, float *axes ); -void glutJoystickGetMaxRange( int ident, float *axes ); -void glutJoystickGetCenter( int ident, float *axes ); - -/* - * Initialization functions, see freeglut_init.c - */ -FGAPI void FGAPIENTRY glutInitContextVersion( int majorVersion, int minorVersion ); -FGAPI void FGAPIENTRY glutInitContextFlags( int flags ); -FGAPI void FGAPIENTRY glutInitContextProfile( int profile ); - -/* - * GLUT API macro definitions -- the display mode definitions - */ -#define GLUT_CAPTIONLESS 0x0400 -#define GLUT_BORDERLESS 0x0800 -#define GLUT_SRGB 0x1000 - -#ifdef __cplusplus - } -#endif - -/*** END OF FILE ***/ - -#endif /* __FREEGLUT_EXT_H__ */ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_font.c b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_font.c deleted file mode 100644 index 6e37b95..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_font.c +++ /dev/null @@ -1,384 +0,0 @@ -/* - * freeglut_font.c - * - * Bitmap and stroke fonts displaying. - * - * Copyright (c) 1999-2000 Pawel W. Olszta. All Rights Reserved. - * Written by Pawel W. Olszta, - * Creation date: Thu Dec 16 1999 - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included - * in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - * PAWEL W. OLSZTA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER - * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - */ - -#include "freeglut.h" -#include "freeglut_internal.h" - -/* - * TODO BEFORE THE STABLE RELEASE: - * - * Test things out ... - */ - -/* -- IMPORT DECLARATIONS -------------------------------------------------- */ - -/* - * These are the font faces defined in freeglut_font_data.c file: - */ -extern SFG_Font fgFontFixed8x13; -extern SFG_Font fgFontFixed9x15; -extern SFG_Font fgFontHelvetica10; -extern SFG_Font fgFontHelvetica12; -extern SFG_Font fgFontHelvetica18; -extern SFG_Font fgFontTimesRoman10; -extern SFG_Font fgFontTimesRoman24; -extern SFG_StrokeFont fgStrokeRoman; -extern SFG_StrokeFont fgStrokeMonoRoman; - - -/* -- PRIVATE FUNCTIONS ---------------------------------------------------- */ - -/* - * Matches a font ID with a SFG_Font structure pointer. - * This was changed to match the GLUT header style. - */ -static SFG_Font* fghFontByID( void* font ) -{ - if( font == GLUT_BITMAP_8_BY_13 ) - return &fgFontFixed8x13; - if( font == GLUT_BITMAP_9_BY_15 ) - return &fgFontFixed9x15; - if( font == GLUT_BITMAP_HELVETICA_10 ) - return &fgFontHelvetica10; - if( font == GLUT_BITMAP_HELVETICA_12 ) - return &fgFontHelvetica12; - if( font == GLUT_BITMAP_HELVETICA_18 ) - return &fgFontHelvetica18; - if( font == GLUT_BITMAP_TIMES_ROMAN_10 ) - return &fgFontTimesRoman10; - if( font == GLUT_BITMAP_TIMES_ROMAN_24 ) - return &fgFontTimesRoman24; - - fgWarning( "font 0x%08x not found", font ); - return 0; -} - -/* - * Matches a font ID with a SFG_StrokeFont structure pointer. - * This was changed to match the GLUT header style. - */ -static SFG_StrokeFont* fghStrokeByID( void* font ) -{ - if( font == GLUT_STROKE_ROMAN ) - return &fgStrokeRoman; - if( font == GLUT_STROKE_MONO_ROMAN ) - return &fgStrokeMonoRoman; - - fgWarning( "stroke font 0x%08x not found", font ); - return 0; -} - - -/* -- INTERFACE FUNCTIONS -------------------------------------------------- */ - -/* - * Draw a bitmap character - */ -void FGAPIENTRY glutBitmapCharacter( void* fontID, int character ) -{ - const GLubyte* face; - SFG_Font* font; - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutBitmapCharacter" ); - font = fghFontByID( fontID ); - freeglut_return_if_fail( ( character >= 1 )&&( character < 256 ) ); - freeglut_return_if_fail( font ); - - /* - * Find the character we want to draw (???) - */ - face = font->Characters[ character ]; - - glPushClientAttrib( GL_CLIENT_PIXEL_STORE_BIT ); - glPixelStorei( GL_UNPACK_SWAP_BYTES, GL_FALSE ); - glPixelStorei( GL_UNPACK_LSB_FIRST, GL_FALSE ); - glPixelStorei( GL_UNPACK_ROW_LENGTH, 0 ); - glPixelStorei( GL_UNPACK_SKIP_ROWS, 0 ); - glPixelStorei( GL_UNPACK_SKIP_PIXELS, 0 ); - glPixelStorei( GL_UNPACK_ALIGNMENT, 1 ); - glBitmap( - face[ 0 ], font->Height, /* The bitmap's width and height */ - font->xorig, font->yorig, /* The origin in the font glyph */ - ( float )( face[ 0 ] ), 0.0, /* The raster advance -- inc. x,y */ - ( face + 1 ) /* The packed bitmap data... */ - ); - glPopClientAttrib( ); -} - -void FGAPIENTRY glutBitmapString( void* fontID, const unsigned char *string ) -{ - unsigned char c; - float x = 0.0f ; - SFG_Font* font; - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutBitmapString" ); - font = fghFontByID( fontID ); - freeglut_return_if_fail( font ); - if ( !string || ! *string ) - return; - - glPushClientAttrib( GL_CLIENT_PIXEL_STORE_BIT ); - glPixelStorei( GL_UNPACK_SWAP_BYTES, GL_FALSE ); - glPixelStorei( GL_UNPACK_LSB_FIRST, GL_FALSE ); - glPixelStorei( GL_UNPACK_ROW_LENGTH, 0 ); - glPixelStorei( GL_UNPACK_SKIP_ROWS, 0 ); - glPixelStorei( GL_UNPACK_SKIP_PIXELS, 0 ); - glPixelStorei( GL_UNPACK_ALIGNMENT, 1 ); - - /* - * Step through the string, drawing each character. - * A newline will simply translate the next character's insertion - * point back to the start of the line and down one line. - */ - while( ( c = *string++) ) - if( c == '\n' ) - { - glBitmap ( 0, 0, 0, 0, -x, (float) -font->Height, NULL ); - x = 0.0f; - } - else /* Not an EOL, draw the bitmap character */ - { - const GLubyte* face = font->Characters[ c ]; - - glBitmap( - face[ 0 ], font->Height, /* Bitmap's width and height */ - font->xorig, font->yorig, /* The origin in the font glyph */ - ( float )( face[ 0 ] ), 0.0, /* The raster advance; inc. x,y */ - ( face + 1 ) /* The packed bitmap data... */ - ); - - x += ( float )( face[ 0 ] ); - } - - glPopClientAttrib( ); -} - -/* - * Returns the width in pixels of a font's character - */ -int FGAPIENTRY glutBitmapWidth( void* fontID, int character ) -{ - SFG_Font* font; - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutBitmapWidth" ); - font = fghFontByID( fontID ); - freeglut_return_val_if_fail( character > 0 && character < 256, 0 ); - freeglut_return_val_if_fail( font, 0 ); - return *( font->Characters[ character ] ); -} - -/* - * Return the width of a string drawn using a bitmap font - */ -int FGAPIENTRY glutBitmapLength( void* fontID, const unsigned char* string ) -{ - unsigned char c; - int length = 0, this_line_length = 0; - SFG_Font* font; - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutBitmapLength" ); - font = fghFontByID( fontID ); - freeglut_return_val_if_fail( font, 0 ); - if ( !string || ! *string ) - return 0; - - while( ( c = *string++) ) - { - if( c != '\n' )/* Not an EOL, increment length of line */ - this_line_length += *( font->Characters[ c ]); - else /* EOL; reset the length of this line */ - { - if( length < this_line_length ) - length = this_line_length; - this_line_length = 0; - } - } - if ( length < this_line_length ) - length = this_line_length; - - return length; -} - -/* - * Returns the height of a bitmap font - */ -int FGAPIENTRY glutBitmapHeight( void* fontID ) -{ - SFG_Font* font; - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutBitmapHeight" ); - font = fghFontByID( fontID ); - freeglut_return_val_if_fail( font, 0 ); - return font->Height; -} - -/* - * Draw a stroke character - */ -void FGAPIENTRY glutStrokeCharacter( void* fontID, int character ) -{ - const SFG_StrokeChar *schar; - const SFG_StrokeStrip *strip; - int i, j; - SFG_StrokeFont* font; - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutStrokeCharacter" ); - font = fghStrokeByID( fontID ); - freeglut_return_if_fail( character >= 0 ); - freeglut_return_if_fail( character < font->Quantity ); - freeglut_return_if_fail( font ); - - schar = font->Characters[ character ]; - freeglut_return_if_fail( schar ); - strip = schar->Strips; - - for( i = 0; i < schar->Number; i++, strip++ ) - { - glBegin( GL_LINE_STRIP ); - for( j = 0; j < strip->Number; j++ ) - glVertex2f( strip->Vertices[ j ].X, strip->Vertices[ j ].Y ); - glEnd( ); - glBegin( GL_POINTS ); - for( j = 0; j < strip->Number; j++ ) - glVertex2f( strip->Vertices[ j ].X, strip->Vertices[ j ].Y ); - glEnd( ); - } - glTranslatef( schar->Right, 0.0, 0.0 ); -} - -void FGAPIENTRY glutStrokeString( void* fontID, const unsigned char *string ) -{ - unsigned char c; - int i, j; - float length = 0.0; - SFG_StrokeFont* font; - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutStrokeString" ); - font = fghStrokeByID( fontID ); - freeglut_return_if_fail( font ); - if ( !string || ! *string ) - return; - - /* - * Step through the string, drawing each character. - * A newline will simply translate the next character's insertion - * point back to the start of the line and down one line. - */ - while( ( c = *string++) ) - if( c < font->Quantity ) - { - if( c == '\n' ) - { - glTranslatef ( -length, -( float )( font->Height ), 0.0 ); - length = 0.0; - } - else /* Not an EOL, draw the bitmap character */ - { - const SFG_StrokeChar *schar = font->Characters[ c ]; - if( schar ) - { - const SFG_StrokeStrip *strip = schar->Strips; - - for( i = 0; i < schar->Number; i++, strip++ ) - { - glBegin( GL_LINE_STRIP ); - for( j = 0; j < strip->Number; j++ ) - glVertex2f( strip->Vertices[ j ].X, - strip->Vertices[ j ].Y); - - glEnd( ); - } - - length += schar->Right; - glTranslatef( schar->Right, 0.0, 0.0 ); - } - } - } -} - -/* - * Return the width in pixels of a stroke character - */ -int FGAPIENTRY glutStrokeWidth( void* fontID, int character ) -{ - const SFG_StrokeChar *schar; - SFG_StrokeFont* font; - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutStrokeWidth" ); - font = fghStrokeByID( fontID ); - freeglut_return_val_if_fail( ( character >= 0 ) && - ( character < font->Quantity ), - 0 - ); - freeglut_return_val_if_fail( font, 0 ); - schar = font->Characters[ character ]; - freeglut_return_val_if_fail( schar, 0 ); - - return ( int )( schar->Right + 0.5 ); -} - -/* - * Return the width of a string drawn using a stroke font - */ -int FGAPIENTRY glutStrokeLength( void* fontID, const unsigned char* string ) -{ - unsigned char c; - float length = 0.0; - float this_line_length = 0.0; - SFG_StrokeFont* font; - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutStrokeLength" ); - font = fghStrokeByID( fontID ); - freeglut_return_val_if_fail( font, 0 ); - if ( !string || ! *string ) - return 0; - - while( ( c = *string++) ) - if( c < font->Quantity ) - { - if( c == '\n' ) /* EOL; reset the length of this line */ - { - if( length < this_line_length ) - length = this_line_length; - this_line_length = 0.0; - } - else /* Not an EOL, increment the length of this line */ - { - const SFG_StrokeChar *schar = font->Characters[ c ]; - if( schar ) - this_line_length += schar->Right; - } - } - if( length < this_line_length ) - length = this_line_length; - return( int )( length + 0.5 ); -} - -/* - * Returns the height of a stroke font - */ -GLfloat FGAPIENTRY glutStrokeHeight( void* fontID ) -{ - SFG_StrokeFont* font; - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutStrokeHeight" ); - font = fghStrokeByID( fontID ); - freeglut_return_val_if_fail( font, 0.0 ); - return font->Height; -} - -/*** END OF FILE ***/ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_font_data.c b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_font_data.c deleted file mode 100644 index 5ffef5a..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_font_data.c +++ /dev/null @@ -1,2020 +0,0 @@ -/* - \file og_font_data.c - \brief Bitmapped font data for OpenGLUT fonts. -*/ - -/* - * This file has been automatically generated by the - * genfonts utility. - * - * The legal status of this file is a bit vague. The font glyphs - * themselves come from XFree86 v4.3.0 (as of this writing), and as - * part of the X server may be subject to the XFree86 copyrights. - * The original freeglut fonts were extracted by a utility written - * by Pawel W. Olszta (see below) and the generated fonts contained - * his copyright exclusively. Steve Baker asserts that Pawel - * assigned intellectual property rights to Steve Baker. Steve - * Baker also asserts that fonts cannot be copyrighted. He has - * neither stripped the copyright from the freeglut fonts nor - * formally retitled anything in his name. Since that time, the - * OpenGLUT project has branched from freeglut, and has made - * necessary modifications to Pawel's ``genfonts'' utility. - * To that extent, OpenGLUT may have some title to this file. - * What is fairly clear is that the font data is licensed under - * the XFree86 license (which is variously termed ``XFree'' and - * ``MIT'' by the freeglut project). It is believed that all - * title holders wish this file to be as useful as possible, and - * that either the ``XFree'' or ``MIT'' license works. - * - * Portions copyright (c) 2004, the OpenGLUT project contributors. - * OpenGLUT branched from freeglut in February, 2004. - * - * Copyright (c) 1999-2000 by Pawel W. Olszta - * Written by Pawel W. Olszta, - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included - * in all copies or substantial portions of the Sotware. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - * PAWEL W. OLSZTA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER - * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - */ - -#include "freeglut.h" -#include "freeglut_internal.h" - -/* - * The following bitmapped fonts are defined in this file: - * - * 1. fgFontFixed8x13 - * -misc-fixed-medium-r-normal--13-120-75-75-C-80-iso8859-1 - * 2. fgFontFixed9x15 - * -misc-fixed-medium-r-normal--15-140-75-75-C-90-iso8859-1 - * 3. fgFontHelvetica10 - * -adobe-helvetica-medium-r-normal--10-100-75-75-p-56-iso8859-1 - * 4. fgFontHelvetica12 - * -adobe-helvetica-medium-r-normal--12-120-75-75-p-67-iso8859-1 - * 5. fgFontHelvetica18 - * -adobe-helvetica-medium-r-normal--18-180-75-75-p-98-iso8859-1 - * 6. fgFontTimesRoman10 - * -adobe-times-medium-r-normal--10-100-75-75-p-54-iso8859-1 - * 7. fgFontTimesRoman24 - * -adobe-times-medium-r-normal--24-240-75-75-p-124-iso8859-1 - */ - -static const GLubyte Fixed8x13_Character_000[] = { 8, 0, 0, 0,170, 0,130, 0,130, 0,130, 0,170, 0, 0}; -static const GLubyte Fixed8x13_Character_001[] = { 8, 0, 0, 0, 0, 16, 56,124,254,124, 56, 16, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_002[] = { 8, 0,170, 85,170, 85,170, 85,170, 85,170, 85,170, 85,170}; -static const GLubyte Fixed8x13_Character_003[] = { 8, 0, 0, 0, 4, 4, 4, 4,174,160,224,160,160, 0, 0}; -static const GLubyte Fixed8x13_Character_004[] = { 8, 0, 0, 0, 8, 8, 12, 8,142,128,192,128,224, 0, 0}; -static const GLubyte Fixed8x13_Character_005[] = { 8, 0, 0, 0, 10, 10, 12, 10,108,128,128,128, 96, 0, 0}; -static const GLubyte Fixed8x13_Character_006[] = { 8, 0, 0, 0, 8, 8, 12, 8,238,128,128,128,128, 0, 0}; -static const GLubyte Fixed8x13_Character_007[] = { 8, 0, 0, 0, 0, 0, 0, 0, 0, 24, 36, 36, 24, 0, 0}; -static const GLubyte Fixed8x13_Character_008[] = { 8, 0, 0, 0, 0,124, 0, 16, 16,124, 16, 16, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_009[] = { 8, 0, 0, 0, 14, 8, 8, 8,168,160,160,160,192, 0, 0}; -static const GLubyte Fixed8x13_Character_010[] = { 8, 0, 0, 0, 4, 4, 4, 4, 46, 80, 80,136,136, 0, 0}; -static const GLubyte Fixed8x13_Character_011[] = { 8, 0, 0, 0, 0, 0, 0, 0,240, 16, 16, 16, 16, 16, 16}; -static const GLubyte Fixed8x13_Character_012[] = { 8, 0, 16, 16, 16, 16, 16, 16,240, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_013[] = { 8, 0, 16, 16, 16, 16, 16, 16, 31, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_014[] = { 8, 0, 0, 0, 0, 0, 0, 0, 31, 16, 16, 16, 16, 16, 16}; -static const GLubyte Fixed8x13_Character_015[] = { 8, 0, 16, 16, 16, 16, 16, 16,255, 16, 16, 16, 16, 16, 16}; -static const GLubyte Fixed8x13_Character_016[] = { 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,255}; -static const GLubyte Fixed8x13_Character_017[] = { 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,255, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_018[] = { 8, 0, 0, 0, 0, 0, 0, 0,255, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_019[] = { 8, 0, 0, 0, 0,255, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_020[] = { 8, 0,255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_021[] = { 8, 0, 16, 16, 16, 16, 16, 16, 31, 16, 16, 16, 16, 16, 16}; -static const GLubyte Fixed8x13_Character_022[] = { 8, 0, 16, 16, 16, 16, 16, 16,240, 16, 16, 16, 16, 16, 16}; -static const GLubyte Fixed8x13_Character_023[] = { 8, 0, 0, 0, 0, 0, 0, 0,255, 16, 16, 16, 16, 16, 16}; -static const GLubyte Fixed8x13_Character_024[] = { 8, 0, 16, 16, 16, 16, 16, 16,255, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_025[] = { 8, 0, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16}; -static const GLubyte Fixed8x13_Character_026[] = { 8, 0, 0, 0,254, 0, 14, 48,192, 48, 14, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_027[] = { 8, 0, 0, 0,254, 0,224, 24, 6, 24,224, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_028[] = { 8, 0, 0, 0, 68, 68, 68, 68, 68,254, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_029[] = { 8, 0, 0, 0, 32, 32,126, 16, 8,126, 4, 4, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_030[] = { 8, 0, 0, 0,220, 98, 32, 32, 32,112, 32, 34, 28, 0, 0}; -static const GLubyte Fixed8x13_Character_031[] = { 8, 0, 0, 0, 0, 0, 0, 0, 24, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_032[] = { 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_033[] = { 8, 0, 0, 0, 16, 0, 16, 16, 16, 16, 16, 16, 16, 0, 0}; -static const GLubyte Fixed8x13_Character_034[] = { 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 36, 36, 36, 0, 0}; -static const GLubyte Fixed8x13_Character_035[] = { 8, 0, 0, 0, 0, 36, 36,126, 36,126, 36, 36, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_036[] = { 8, 0, 0, 0, 16,120, 20, 20, 56, 80, 80, 60, 16, 0, 0}; -static const GLubyte Fixed8x13_Character_037[] = { 8, 0, 0, 0, 68, 42, 36, 16, 8, 8, 36, 82, 34, 0, 0}; -static const GLubyte Fixed8x13_Character_038[] = { 8, 0, 0, 0, 58, 68, 74, 48, 72, 72, 48, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_039[] = { 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 48, 56, 0, 0}; -static const GLubyte Fixed8x13_Character_040[] = { 8, 0, 0, 0, 4, 8, 8, 16, 16, 16, 8, 8, 4, 0, 0}; -static const GLubyte Fixed8x13_Character_041[] = { 8, 0, 0, 0, 32, 16, 16, 8, 8, 8, 16, 16, 32, 0, 0}; -static const GLubyte Fixed8x13_Character_042[] = { 8, 0, 0, 0, 0, 0, 36, 24,126, 24, 36, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_043[] = { 8, 0, 0, 0, 0, 0, 16, 16,124, 16, 16, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_044[] = { 8, 0, 0, 64, 48, 56, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_045[] = { 8, 0, 0, 0, 0, 0, 0, 0,126, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_046[] = { 8, 0, 0, 16, 56, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_047[] = { 8, 0, 0, 0,128,128, 64, 32, 16, 8, 4, 2, 2, 0, 0}; -static const GLubyte Fixed8x13_Character_048[] = { 8, 0, 0, 0, 24, 36, 66, 66, 66, 66, 66, 36, 24, 0, 0}; -static const GLubyte Fixed8x13_Character_049[] = { 8, 0, 0, 0,124, 16, 16, 16, 16, 16, 80, 48, 16, 0, 0}; -static const GLubyte Fixed8x13_Character_050[] = { 8, 0, 0, 0,126, 64, 32, 24, 4, 2, 66, 66, 60, 0, 0}; -static const GLubyte Fixed8x13_Character_051[] = { 8, 0, 0, 0, 60, 66, 2, 2, 28, 8, 4, 2,126, 0, 0}; -static const GLubyte Fixed8x13_Character_052[] = { 8, 0, 0, 0, 4, 4,126, 68, 68, 36, 20, 12, 4, 0, 0}; -static const GLubyte Fixed8x13_Character_053[] = { 8, 0, 0, 0, 60, 66, 2, 2, 98, 92, 64, 64,126, 0, 0}; -static const GLubyte Fixed8x13_Character_054[] = { 8, 0, 0, 0, 60, 66, 66, 98, 92, 64, 64, 32, 28, 0, 0}; -static const GLubyte Fixed8x13_Character_055[] = { 8, 0, 0, 0, 32, 32, 16, 16, 8, 8, 4, 2,126, 0, 0}; -static const GLubyte Fixed8x13_Character_056[] = { 8, 0, 0, 0, 60, 66, 66, 66, 60, 66, 66, 66, 60, 0, 0}; -static const GLubyte Fixed8x13_Character_057[] = { 8, 0, 0, 0, 56, 4, 2, 2, 58, 70, 66, 66, 60, 0, 0}; -static const GLubyte Fixed8x13_Character_058[] = { 8, 0, 0, 16, 56, 16, 0, 0, 16, 56, 16, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_059[] = { 8, 0, 0, 64, 48, 56, 0, 0, 16, 56, 16, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_060[] = { 8, 0, 0, 0, 2, 4, 8, 16, 32, 16, 8, 4, 2, 0, 0}; -static const GLubyte Fixed8x13_Character_061[] = { 8, 0, 0, 0, 0, 0,126, 0, 0,126, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_062[] = { 8, 0, 0, 0, 64, 32, 16, 8, 4, 8, 16, 32, 64, 0, 0}; -static const GLubyte Fixed8x13_Character_063[] = { 8, 0, 0, 0, 8, 0, 8, 8, 4, 2, 66, 66, 60, 0, 0}; -static const GLubyte Fixed8x13_Character_064[] = { 8, 0, 0, 0, 60, 64, 74, 86, 82, 78, 66, 66, 60, 0, 0}; -static const GLubyte Fixed8x13_Character_065[] = { 8, 0, 0, 0, 66, 66, 66,126, 66, 66, 66, 36, 24, 0, 0}; -static const GLubyte Fixed8x13_Character_066[] = { 8, 0, 0, 0,252, 66, 66, 66,124, 66, 66, 66,252, 0, 0}; -static const GLubyte Fixed8x13_Character_067[] = { 8, 0, 0, 0, 60, 66, 64, 64, 64, 64, 64, 66, 60, 0, 0}; -static const GLubyte Fixed8x13_Character_068[] = { 8, 0, 0, 0,252, 66, 66, 66, 66, 66, 66, 66,252, 0, 0}; -static const GLubyte Fixed8x13_Character_069[] = { 8, 0, 0, 0,126, 64, 64, 64,120, 64, 64, 64,126, 0, 0}; -static const GLubyte Fixed8x13_Character_070[] = { 8, 0, 0, 0, 64, 64, 64, 64,120, 64, 64, 64,126, 0, 0}; -static const GLubyte Fixed8x13_Character_071[] = { 8, 0, 0, 0, 58, 70, 66, 78, 64, 64, 64, 66, 60, 0, 0}; -static const GLubyte Fixed8x13_Character_072[] = { 8, 0, 0, 0, 66, 66, 66, 66,126, 66, 66, 66, 66, 0, 0}; -static const GLubyte Fixed8x13_Character_073[] = { 8, 0, 0, 0,124, 16, 16, 16, 16, 16, 16, 16,124, 0, 0}; -static const GLubyte Fixed8x13_Character_074[] = { 8, 0, 0, 0, 56, 68, 4, 4, 4, 4, 4, 4, 31, 0, 0}; -static const GLubyte Fixed8x13_Character_075[] = { 8, 0, 0, 0, 66, 68, 72, 80, 96, 80, 72, 68, 66, 0, 0}; -static const GLubyte Fixed8x13_Character_076[] = { 8, 0, 0, 0,126, 64, 64, 64, 64, 64, 64, 64, 64, 0, 0}; -static const GLubyte Fixed8x13_Character_077[] = { 8, 0, 0, 0,130,130,130,146,146,170,198,130,130, 0, 0}; -static const GLubyte Fixed8x13_Character_078[] = { 8, 0, 0, 0, 66, 66, 66, 70, 74, 82, 98, 66, 66, 0, 0}; -static const GLubyte Fixed8x13_Character_079[] = { 8, 0, 0, 0, 60, 66, 66, 66, 66, 66, 66, 66, 60, 0, 0}; -static const GLubyte Fixed8x13_Character_080[] = { 8, 0, 0, 0, 64, 64, 64, 64,124, 66, 66, 66,124, 0, 0}; -static const GLubyte Fixed8x13_Character_081[] = { 8, 0, 0, 2, 60, 74, 82, 66, 66, 66, 66, 66, 60, 0, 0}; -static const GLubyte Fixed8x13_Character_082[] = { 8, 0, 0, 0, 66, 68, 72, 80,124, 66, 66, 66,124, 0, 0}; -static const GLubyte Fixed8x13_Character_083[] = { 8, 0, 0, 0, 60, 66, 2, 2, 60, 64, 64, 66, 60, 0, 0}; -static const GLubyte Fixed8x13_Character_084[] = { 8, 0, 0, 0, 16, 16, 16, 16, 16, 16, 16, 16,254, 0, 0}; -static const GLubyte Fixed8x13_Character_085[] = { 8, 0, 0, 0, 60, 66, 66, 66, 66, 66, 66, 66, 66, 0, 0}; -static const GLubyte Fixed8x13_Character_086[] = { 8, 0, 0, 0, 16, 40, 40, 40, 68, 68, 68,130,130, 0, 0}; -static const GLubyte Fixed8x13_Character_087[] = { 8, 0, 0, 0, 68,170,146,146,146,130,130,130,130, 0, 0}; -static const GLubyte Fixed8x13_Character_088[] = { 8, 0, 0, 0,130,130, 68, 40, 16, 40, 68,130,130, 0, 0}; -static const GLubyte Fixed8x13_Character_089[] = { 8, 0, 0, 0, 16, 16, 16, 16, 16, 40, 68,130,130, 0, 0}; -static const GLubyte Fixed8x13_Character_090[] = { 8, 0, 0, 0,126, 64, 64, 32, 16, 8, 4, 2,126, 0, 0}; -static const GLubyte Fixed8x13_Character_091[] = { 8, 0, 0, 0, 60, 32, 32, 32, 32, 32, 32, 32, 60, 0, 0}; -static const GLubyte Fixed8x13_Character_092[] = { 8, 0, 0, 0, 2, 2, 4, 8, 16, 32, 64,128,128, 0, 0}; -static const GLubyte Fixed8x13_Character_093[] = { 8, 0, 0, 0,120, 8, 8, 8, 8, 8, 8, 8,120, 0, 0}; -static const GLubyte Fixed8x13_Character_094[] = { 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 68, 40, 16, 0, 0}; -static const GLubyte Fixed8x13_Character_095[] = { 8, 0, 0,254, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_096[] = { 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 24, 56, 0, 0}; -static const GLubyte Fixed8x13_Character_097[] = { 8, 0, 0, 0, 58, 70, 66, 62, 2, 60, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_098[] = { 8, 0, 0, 0, 92, 98, 66, 66, 98, 92, 64, 64, 64, 0, 0}; -static const GLubyte Fixed8x13_Character_099[] = { 8, 0, 0, 0, 60, 66, 64, 64, 66, 60, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_100[] = { 8, 0, 0, 0, 58, 70, 66, 66, 70, 58, 2, 2, 2, 0, 0}; -static const GLubyte Fixed8x13_Character_101[] = { 8, 0, 0, 0, 60, 66, 64,126, 66, 60, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_102[] = { 8, 0, 0, 0, 32, 32, 32, 32,124, 32, 32, 34, 28, 0, 0}; -static const GLubyte Fixed8x13_Character_103[] = { 8, 0, 60, 66, 60, 64, 56, 68, 68, 58, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_104[] = { 8, 0, 0, 0, 66, 66, 66, 66, 98, 92, 64, 64, 64, 0, 0}; -static const GLubyte Fixed8x13_Character_105[] = { 8, 0, 0, 0,124, 16, 16, 16, 16, 48, 0, 16, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_106[] = { 8, 0, 56, 68, 68, 4, 4, 4, 4, 12, 0, 4, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_107[] = { 8, 0, 0, 0, 66, 68, 72,112, 72, 68, 64, 64, 64, 0, 0}; -static const GLubyte Fixed8x13_Character_108[] = { 8, 0, 0, 0,124, 16, 16, 16, 16, 16, 16, 16, 48, 0, 0}; -static const GLubyte Fixed8x13_Character_109[] = { 8, 0, 0, 0,130,146,146,146,146,236, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_110[] = { 8, 0, 0, 0, 66, 66, 66, 66, 98, 92, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_111[] = { 8, 0, 0, 0, 60, 66, 66, 66, 66, 60, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_112[] = { 8, 0, 64, 64, 64, 92, 98, 66, 98, 92, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_113[] = { 8, 0, 2, 2, 2, 58, 70, 66, 70, 58, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_114[] = { 8, 0, 0, 0, 32, 32, 32, 32, 34, 92, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_115[] = { 8, 0, 0, 0, 60, 66, 12, 48, 66, 60, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_116[] = { 8, 0, 0, 0, 28, 34, 32, 32, 32,124, 32, 32, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_117[] = { 8, 0, 0, 0, 58, 68, 68, 68, 68, 68, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_118[] = { 8, 0, 0, 0, 16, 40, 40, 68, 68, 68, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_119[] = { 8, 0, 0, 0, 68,170,146,146,130,130, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_120[] = { 8, 0, 0, 0, 66, 36, 24, 24, 36, 66, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_121[] = { 8, 0, 60, 66, 2, 58, 70, 66, 66, 66, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_122[] = { 8, 0, 0, 0,126, 32, 16, 8, 4,126, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_123[] = { 8, 0, 0, 0, 14, 16, 16, 8, 48, 8, 16, 16, 14, 0, 0}; -static const GLubyte Fixed8x13_Character_124[] = { 8, 0, 0, 0, 16, 16, 16, 16, 16, 16, 16, 16, 16, 0, 0}; -static const GLubyte Fixed8x13_Character_125[] = { 8, 0, 0, 0,112, 8, 8, 16, 12, 16, 8, 8,112, 0, 0}; -static const GLubyte Fixed8x13_Character_126[] = { 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 72, 84, 36, 0, 0}; -static const GLubyte Fixed8x13_Character_127[] = { 9, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_128[] = { 9, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_129[] = { 9, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_130[] = { 9, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_131[] = { 9, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_132[] = { 9, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_133[] = { 9, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_134[] = { 9, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_135[] = { 9, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_136[] = { 9, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_137[] = { 9, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_138[] = { 9, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_139[] = { 9, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_140[] = { 9, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_141[] = { 9, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_142[] = { 9, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_143[] = { 9, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_144[] = { 9, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_145[] = { 9, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_146[] = { 9, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_147[] = { 9, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_148[] = { 9, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_149[] = { 9, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_150[] = { 9, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_151[] = { 9, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_152[] = { 9, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_153[] = { 9, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_154[] = { 9, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_155[] = { 9, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_156[] = { 9, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_157[] = { 9, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_158[] = { 9, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_159[] = { 9, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_160[] = { 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_161[] = { 8, 0, 0, 0, 16, 16, 16, 16, 16, 16, 16, 0, 16, 0, 0}; -static const GLubyte Fixed8x13_Character_162[] = { 8, 0, 0, 0, 0, 16, 56, 84, 80, 80, 84, 56, 16, 0, 0}; -static const GLubyte Fixed8x13_Character_163[] = { 8, 0, 0, 0,220, 98, 32, 32, 32,112, 32, 34, 28, 0, 0}; -static const GLubyte Fixed8x13_Character_164[] = { 8, 0, 0, 0, 0, 66, 60, 36, 36, 60, 66, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_165[] = { 8, 0, 0, 0, 16, 16,124, 16,124, 40, 68,130,130, 0, 0}; -static const GLubyte Fixed8x13_Character_166[] = { 8, 0, 0, 0, 16, 16, 16, 16, 0, 16, 16, 16, 16, 0, 0}; -static const GLubyte Fixed8x13_Character_167[] = { 8, 0, 0, 0, 24, 36, 4, 24, 36, 36, 24, 32, 36, 24, 0}; -static const GLubyte Fixed8x13_Character_168[] = { 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,108, 0, 0}; -static const GLubyte Fixed8x13_Character_169[] = { 8, 0, 0, 0, 0, 56, 68,146,170,162,170,146, 68, 56, 0}; -static const GLubyte Fixed8x13_Character_170[] = { 8, 0, 0, 0, 0, 0,124, 0, 60, 68, 60, 4, 56, 0, 0}; -static const GLubyte Fixed8x13_Character_171[] = { 8, 0, 0, 0, 0, 18, 36, 72,144, 72, 36, 18, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_172[] = { 8, 0, 0, 0, 0, 2, 2, 2,126, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_173[] = { 8, 0, 0, 0, 0, 0, 0, 0, 60, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_174[] = { 8, 0, 0, 0, 0, 56, 68,170,178,170,170,146, 68, 56, 0}; -static const GLubyte Fixed8x13_Character_175[] = { 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,126, 0, 0}; -static const GLubyte Fixed8x13_Character_176[] = { 8, 0, 0, 0, 0, 0, 0, 0, 0, 24, 36, 36, 24, 0, 0}; -static const GLubyte Fixed8x13_Character_177[] = { 8, 0, 0, 0, 0,124, 0, 16, 16,124, 16, 16, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_178[] = { 8, 0, 0, 0, 0, 0, 0, 0,120, 64, 48, 8, 72, 48, 0}; -static const GLubyte Fixed8x13_Character_179[] = { 8, 0, 0, 0, 0, 0, 0, 0, 48, 72, 8, 16, 72, 48, 0}; -static const GLubyte Fixed8x13_Character_180[] = { 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 8, 0}; -static const GLubyte Fixed8x13_Character_181[] = { 8, 0, 0, 64, 90,102, 66, 66, 66, 66, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_182[] = { 8, 0, 0, 0, 20, 20, 20, 20, 52,116,116,116, 62, 0, 0}; -static const GLubyte Fixed8x13_Character_183[] = { 8, 0, 0, 0, 0, 0, 0, 0, 24, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_184[] = { 8, 0, 24, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_185[] = { 8, 0, 0, 0, 0, 0, 0, 0,112, 32, 32, 32, 96, 32, 0}; -static const GLubyte Fixed8x13_Character_186[] = { 8, 0, 0, 0, 0, 0, 0,120, 0, 48, 72, 72, 48, 0, 0}; -static const GLubyte Fixed8x13_Character_187[] = { 8, 0, 0, 0, 0,144, 72, 36, 18, 36, 72,144, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_188[] = { 8, 0, 0, 0, 6, 26, 18, 10,230, 66, 64, 64,192, 64, 0}; -static const GLubyte Fixed8x13_Character_189[] = { 8, 0, 0, 0, 30, 16, 12, 2,242, 76, 64, 64,192, 64, 0}; -static const GLubyte Fixed8x13_Character_190[] = { 8, 0, 0, 0, 6, 26, 18, 10,102,146, 16, 32,144, 96, 0}; -static const GLubyte Fixed8x13_Character_191[] = { 8, 0, 0, 0, 60, 66, 66, 64, 32, 16, 16, 0, 16, 0, 0}; -static const GLubyte Fixed8x13_Character_192[] = { 8, 0, 0, 0, 66, 66,126, 66, 66, 36, 24, 0, 8, 16, 0}; -static const GLubyte Fixed8x13_Character_193[] = { 8, 0, 0, 0, 66, 66,126, 66, 66, 36, 24, 0, 16, 8, 0}; -static const GLubyte Fixed8x13_Character_194[] = { 8, 0, 0, 0, 66, 66,126, 66, 66, 36, 24, 0, 36, 24, 0}; -static const GLubyte Fixed8x13_Character_195[] = { 8, 0, 0, 0, 66, 66,126, 66, 66, 36, 24, 0, 76, 50, 0}; -static const GLubyte Fixed8x13_Character_196[] = { 8, 0, 0, 0, 66, 66,126, 66, 66, 36, 24, 0, 36, 36, 0}; -static const GLubyte Fixed8x13_Character_197[] = { 8, 0, 0, 0, 66, 66,126, 66, 66, 36, 24, 24, 36, 24, 0}; -static const GLubyte Fixed8x13_Character_198[] = { 8, 0, 0, 0,158,144,144,240,156,144,144,144,110, 0, 0}; -static const GLubyte Fixed8x13_Character_199[] = { 8, 0, 16, 8, 60, 66, 64, 64, 64, 64, 64, 66, 60, 0, 0}; -static const GLubyte Fixed8x13_Character_200[] = { 8, 0, 0, 0,126, 64, 64,120, 64, 64,126, 0, 8, 16, 0}; -static const GLubyte Fixed8x13_Character_201[] = { 8, 0, 0, 0,126, 64, 64,120, 64, 64,126, 0, 16, 8, 0}; -static const GLubyte Fixed8x13_Character_202[] = { 8, 0, 0, 0,126, 64, 64,120, 64, 64,126, 0, 36, 24, 0}; -static const GLubyte Fixed8x13_Character_203[] = { 8, 0, 0, 0,126, 64, 64,120, 64, 64,126, 0, 36, 36, 0}; -static const GLubyte Fixed8x13_Character_204[] = { 8, 0, 0, 0,124, 16, 16, 16, 16, 16,124, 0, 16, 32, 0}; -static const GLubyte Fixed8x13_Character_205[] = { 8, 0, 0, 0,124, 16, 16, 16, 16, 16,124, 0, 16, 8, 0}; -static const GLubyte Fixed8x13_Character_206[] = { 8, 0, 0, 0,124, 16, 16, 16, 16, 16,124, 0, 36, 24, 0}; -static const GLubyte Fixed8x13_Character_207[] = { 8, 0, 0, 0,124, 16, 16, 16, 16, 16,124, 0, 40, 40, 0}; -static const GLubyte Fixed8x13_Character_208[] = { 8, 0, 0, 0,120, 68, 66, 66,226, 66, 66, 68,120, 0, 0}; -static const GLubyte Fixed8x13_Character_209[] = { 8, 0, 0, 0,130,134,138,146,162,194,130, 0,152,100, 0}; -static const GLubyte Fixed8x13_Character_210[] = { 8, 0, 0, 0,124,130,130,130,130,130,124, 0, 16, 32, 0}; -static const GLubyte Fixed8x13_Character_211[] = { 8, 0, 0, 0,124,130,130,130,130,130,124, 0, 16, 8, 0}; -static const GLubyte Fixed8x13_Character_212[] = { 8, 0, 0, 0,124,130,130,130,130,130,124, 0, 36, 24, 0}; -static const GLubyte Fixed8x13_Character_213[] = { 8, 0, 0, 0,124,130,130,130,130,130,124, 0,152,100, 0}; -static const GLubyte Fixed8x13_Character_214[] = { 8, 0, 0, 0,124,130,130,130,130,130,124, 0, 40, 40, 0}; -static const GLubyte Fixed8x13_Character_215[] = { 8, 0, 0, 0, 0, 66, 36, 24, 24, 36, 66, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_216[] = { 8, 0, 0, 64, 60, 98, 82, 82, 82, 74, 74, 70, 60, 2, 0}; -static const GLubyte Fixed8x13_Character_217[] = { 8, 0, 0, 0, 60, 66, 66, 66, 66, 66, 66, 0, 8, 16, 0}; -static const GLubyte Fixed8x13_Character_218[] = { 8, 0, 0, 0, 60, 66, 66, 66, 66, 66, 66, 0, 16, 8, 0}; -static const GLubyte Fixed8x13_Character_219[] = { 8, 0, 0, 0, 60, 66, 66, 66, 66, 66, 66, 0, 36, 24, 0}; -static const GLubyte Fixed8x13_Character_220[] = { 8, 0, 0, 0, 60, 66, 66, 66, 66, 66, 66, 0, 36, 36, 0}; -static const GLubyte Fixed8x13_Character_221[] = { 8, 0, 0, 0, 16, 16, 16, 16, 40, 68, 68, 0, 16, 8, 0}; -static const GLubyte Fixed8x13_Character_222[] = { 8, 0, 0, 0, 64, 64, 64,124, 66, 66, 66,124, 64, 0, 0}; -static const GLubyte Fixed8x13_Character_223[] = { 8, 0, 0, 0, 92, 66, 66, 76, 80, 72, 68, 68, 56, 0, 0}; -static const GLubyte Fixed8x13_Character_224[] = { 8, 0, 0, 0, 58, 70, 66, 62, 2, 60, 0, 0, 8, 16, 0}; -static const GLubyte Fixed8x13_Character_225[] = { 8, 0, 0, 0, 58, 70, 66, 62, 2, 60, 0, 0, 8, 4, 0}; -static const GLubyte Fixed8x13_Character_226[] = { 8, 0, 0, 0, 58, 70, 66, 62, 2, 60, 0, 0, 36, 24, 0}; -static const GLubyte Fixed8x13_Character_227[] = { 8, 0, 0, 0, 58, 70, 66, 62, 2, 60, 0, 0, 76, 50, 0}; -static const GLubyte Fixed8x13_Character_228[] = { 8, 0, 0, 0, 58, 70, 66, 62, 2, 60, 0, 0, 36, 36, 0}; -static const GLubyte Fixed8x13_Character_229[] = { 8, 0, 0, 0, 58, 70, 66, 62, 2, 60, 0, 24, 36, 24, 0}; -static const GLubyte Fixed8x13_Character_230[] = { 8, 0, 0, 0,108,146,144,124, 18,108, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_231[] = { 8, 0, 16, 8, 60, 66, 64, 64, 66, 60, 0, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_232[] = { 8, 0, 0, 0, 60, 66, 64,126, 66, 60, 0, 0, 8, 16, 0}; -static const GLubyte Fixed8x13_Character_233[] = { 8, 0, 0, 0, 60, 66, 64,126, 66, 60, 0, 0, 16, 8, 0}; -static const GLubyte Fixed8x13_Character_234[] = { 8, 0, 0, 0, 60, 66, 64,126, 66, 60, 0, 0, 36, 24, 0}; -static const GLubyte Fixed8x13_Character_235[] = { 8, 0, 0, 0, 60, 66, 64,126, 66, 60, 0, 0, 36, 36, 0}; -static const GLubyte Fixed8x13_Character_236[] = { 8, 0, 0, 0,124, 16, 16, 16, 16, 48, 0, 0, 16, 32, 0}; -static const GLubyte Fixed8x13_Character_237[] = { 8, 0, 0, 0,124, 16, 16, 16, 16, 48, 0, 0, 32, 16, 0}; -static const GLubyte Fixed8x13_Character_238[] = { 8, 0, 0, 0,124, 16, 16, 16, 16, 48, 0, 0, 72, 48, 0}; -static const GLubyte Fixed8x13_Character_239[] = { 8, 0, 0, 0,124, 16, 16, 16, 16, 48, 0, 0, 40, 40, 0}; -static const GLubyte Fixed8x13_Character_240[] = { 8, 0, 0, 0, 60, 66, 66, 66, 66, 60, 4, 40, 24, 36, 0}; -static const GLubyte Fixed8x13_Character_241[] = { 8, 0, 0, 0, 66, 66, 66, 66, 98, 92, 0, 0, 76, 50, 0}; -static const GLubyte Fixed8x13_Character_242[] = { 8, 0, 0, 0, 60, 66, 66, 66, 66, 60, 0, 0, 16, 32, 0}; -static const GLubyte Fixed8x13_Character_243[] = { 8, 0, 0, 0, 60, 66, 66, 66, 66, 60, 0, 0, 16, 8, 0}; -static const GLubyte Fixed8x13_Character_244[] = { 8, 0, 0, 0, 60, 66, 66, 66, 66, 60, 0, 0, 36, 24, 0}; -static const GLubyte Fixed8x13_Character_245[] = { 8, 0, 0, 0, 60, 66, 66, 66, 66, 60, 0, 0, 76, 50, 0}; -static const GLubyte Fixed8x13_Character_246[] = { 8, 0, 0, 0, 60, 66, 66, 66, 66, 60, 0, 0, 36, 36, 0}; -static const GLubyte Fixed8x13_Character_247[] = { 8, 0, 0, 0, 0, 16, 16, 0,124, 0, 16, 16, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_248[] = { 8, 0, 0, 64, 60, 98, 82, 74, 70, 60, 2, 0, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_249[] = { 8, 0, 0, 0, 58, 68, 68, 68, 68, 68, 0, 0, 16, 32, 0}; -static const GLubyte Fixed8x13_Character_250[] = { 8, 0, 0, 0, 58, 68, 68, 68, 68, 68, 0, 0, 16, 8, 0}; -static const GLubyte Fixed8x13_Character_251[] = { 8, 0, 0, 0, 58, 68, 68, 68, 68, 68, 0, 0, 36, 24, 0}; -static const GLubyte Fixed8x13_Character_252[] = { 8, 0, 0, 0, 58, 68, 68, 68, 68, 68, 0, 0, 40, 40, 0}; -static const GLubyte Fixed8x13_Character_253[] = { 8, 0, 60, 66, 2, 58, 70, 66, 66, 66, 0, 0, 16, 8, 0}; -static const GLubyte Fixed8x13_Character_254[] = { 8, 0, 64, 64, 92, 98, 66, 66, 98, 92, 64, 64, 0, 0, 0}; -static const GLubyte Fixed8x13_Character_255[] = { 8, 0, 60, 66, 2, 58, 70, 66, 66, 66, 0, 0, 36, 36, 0}; - -/* The font characters mapping: */ -static const GLubyte* Fixed8x13_Character_Map[] = {Fixed8x13_Character_000,Fixed8x13_Character_001,Fixed8x13_Character_002,Fixed8x13_Character_003,Fixed8x13_Character_004,Fixed8x13_Character_005,Fixed8x13_Character_006,Fixed8x13_Character_007,Fixed8x13_Character_008,Fixed8x13_Character_009,Fixed8x13_Character_010,Fixed8x13_Character_011,Fixed8x13_Character_012,Fixed8x13_Character_013,Fixed8x13_Character_014,Fixed8x13_Character_015, - Fixed8x13_Character_016,Fixed8x13_Character_017,Fixed8x13_Character_018,Fixed8x13_Character_019,Fixed8x13_Character_020,Fixed8x13_Character_021,Fixed8x13_Character_022,Fixed8x13_Character_023,Fixed8x13_Character_024,Fixed8x13_Character_025,Fixed8x13_Character_026,Fixed8x13_Character_027,Fixed8x13_Character_028,Fixed8x13_Character_029,Fixed8x13_Character_030,Fixed8x13_Character_031, - Fixed8x13_Character_032,Fixed8x13_Character_033,Fixed8x13_Character_034,Fixed8x13_Character_035,Fixed8x13_Character_036,Fixed8x13_Character_037,Fixed8x13_Character_038,Fixed8x13_Character_039,Fixed8x13_Character_040,Fixed8x13_Character_041,Fixed8x13_Character_042,Fixed8x13_Character_043,Fixed8x13_Character_044,Fixed8x13_Character_045,Fixed8x13_Character_046,Fixed8x13_Character_047, - Fixed8x13_Character_048,Fixed8x13_Character_049,Fixed8x13_Character_050,Fixed8x13_Character_051,Fixed8x13_Character_052,Fixed8x13_Character_053,Fixed8x13_Character_054,Fixed8x13_Character_055,Fixed8x13_Character_056,Fixed8x13_Character_057,Fixed8x13_Character_058,Fixed8x13_Character_059,Fixed8x13_Character_060,Fixed8x13_Character_061,Fixed8x13_Character_062,Fixed8x13_Character_063, - Fixed8x13_Character_064,Fixed8x13_Character_065,Fixed8x13_Character_066,Fixed8x13_Character_067,Fixed8x13_Character_068,Fixed8x13_Character_069,Fixed8x13_Character_070,Fixed8x13_Character_071,Fixed8x13_Character_072,Fixed8x13_Character_073,Fixed8x13_Character_074,Fixed8x13_Character_075,Fixed8x13_Character_076,Fixed8x13_Character_077,Fixed8x13_Character_078,Fixed8x13_Character_079, - Fixed8x13_Character_080,Fixed8x13_Character_081,Fixed8x13_Character_082,Fixed8x13_Character_083,Fixed8x13_Character_084,Fixed8x13_Character_085,Fixed8x13_Character_086,Fixed8x13_Character_087,Fixed8x13_Character_088,Fixed8x13_Character_089,Fixed8x13_Character_090,Fixed8x13_Character_091,Fixed8x13_Character_092,Fixed8x13_Character_093,Fixed8x13_Character_094,Fixed8x13_Character_095, - Fixed8x13_Character_096,Fixed8x13_Character_097,Fixed8x13_Character_098,Fixed8x13_Character_099,Fixed8x13_Character_100,Fixed8x13_Character_101,Fixed8x13_Character_102,Fixed8x13_Character_103,Fixed8x13_Character_104,Fixed8x13_Character_105,Fixed8x13_Character_106,Fixed8x13_Character_107,Fixed8x13_Character_108,Fixed8x13_Character_109,Fixed8x13_Character_110,Fixed8x13_Character_111, - Fixed8x13_Character_112,Fixed8x13_Character_113,Fixed8x13_Character_114,Fixed8x13_Character_115,Fixed8x13_Character_116,Fixed8x13_Character_117,Fixed8x13_Character_118,Fixed8x13_Character_119,Fixed8x13_Character_120,Fixed8x13_Character_121,Fixed8x13_Character_122,Fixed8x13_Character_123,Fixed8x13_Character_124,Fixed8x13_Character_125,Fixed8x13_Character_126,Fixed8x13_Character_032, - Fixed8x13_Character_032,Fixed8x13_Character_032,Fixed8x13_Character_032,Fixed8x13_Character_032,Fixed8x13_Character_032,Fixed8x13_Character_032,Fixed8x13_Character_032,Fixed8x13_Character_032,Fixed8x13_Character_032,Fixed8x13_Character_032,Fixed8x13_Character_032,Fixed8x13_Character_032,Fixed8x13_Character_032,Fixed8x13_Character_032,Fixed8x13_Character_032,Fixed8x13_Character_032, - Fixed8x13_Character_032,Fixed8x13_Character_032,Fixed8x13_Character_032,Fixed8x13_Character_032,Fixed8x13_Character_032,Fixed8x13_Character_032,Fixed8x13_Character_032,Fixed8x13_Character_032,Fixed8x13_Character_032,Fixed8x13_Character_032,Fixed8x13_Character_032,Fixed8x13_Character_032,Fixed8x13_Character_032,Fixed8x13_Character_032,Fixed8x13_Character_032,Fixed8x13_Character_032, - Fixed8x13_Character_160,Fixed8x13_Character_161,Fixed8x13_Character_162,Fixed8x13_Character_163,Fixed8x13_Character_164,Fixed8x13_Character_165,Fixed8x13_Character_166,Fixed8x13_Character_167,Fixed8x13_Character_168,Fixed8x13_Character_169,Fixed8x13_Character_170,Fixed8x13_Character_171,Fixed8x13_Character_172,Fixed8x13_Character_173,Fixed8x13_Character_174,Fixed8x13_Character_175, - Fixed8x13_Character_176,Fixed8x13_Character_177,Fixed8x13_Character_178,Fixed8x13_Character_179,Fixed8x13_Character_180,Fixed8x13_Character_181,Fixed8x13_Character_182,Fixed8x13_Character_183,Fixed8x13_Character_184,Fixed8x13_Character_185,Fixed8x13_Character_186,Fixed8x13_Character_187,Fixed8x13_Character_188,Fixed8x13_Character_189,Fixed8x13_Character_190,Fixed8x13_Character_191, - Fixed8x13_Character_192,Fixed8x13_Character_193,Fixed8x13_Character_194,Fixed8x13_Character_195,Fixed8x13_Character_196,Fixed8x13_Character_197,Fixed8x13_Character_198,Fixed8x13_Character_199,Fixed8x13_Character_200,Fixed8x13_Character_201,Fixed8x13_Character_202,Fixed8x13_Character_203,Fixed8x13_Character_204,Fixed8x13_Character_205,Fixed8x13_Character_206,Fixed8x13_Character_207, - Fixed8x13_Character_208,Fixed8x13_Character_209,Fixed8x13_Character_210,Fixed8x13_Character_211,Fixed8x13_Character_212,Fixed8x13_Character_213,Fixed8x13_Character_214,Fixed8x13_Character_215,Fixed8x13_Character_216,Fixed8x13_Character_217,Fixed8x13_Character_218,Fixed8x13_Character_219,Fixed8x13_Character_220,Fixed8x13_Character_221,Fixed8x13_Character_222,Fixed8x13_Character_223, - Fixed8x13_Character_224,Fixed8x13_Character_225,Fixed8x13_Character_226,Fixed8x13_Character_227,Fixed8x13_Character_228,Fixed8x13_Character_229,Fixed8x13_Character_230,Fixed8x13_Character_231,Fixed8x13_Character_232,Fixed8x13_Character_233,Fixed8x13_Character_234,Fixed8x13_Character_235,Fixed8x13_Character_236,Fixed8x13_Character_237,Fixed8x13_Character_238,Fixed8x13_Character_239, - Fixed8x13_Character_240,Fixed8x13_Character_241,Fixed8x13_Character_242,Fixed8x13_Character_243,Fixed8x13_Character_244,Fixed8x13_Character_245,Fixed8x13_Character_246,Fixed8x13_Character_247,Fixed8x13_Character_248,Fixed8x13_Character_249,Fixed8x13_Character_250,Fixed8x13_Character_251,Fixed8x13_Character_252,Fixed8x13_Character_253,Fixed8x13_Character_254,Fixed8x13_Character_255,NULL}; - -/* The font structure: */ -const SFG_Font fgFontFixed8x13 = { "-misc-fixed-medium-r-normal--13-120-75-75-C-80-iso8859-1", 256, 14, Fixed8x13_Character_Map, 0, 3 }; - -static const GLubyte Fixed9x15_Character_000[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 91, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0,109, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_001[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 28, 0, 62, 0,127, 0,255,128,127, 0, 62, 0, 28, 0, 8, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_002[] = { 9, 0, 0,170,128, 85, 0,170,128, 85, 0,170,128, 85, 0,170,128, 85, 0,170,128, 85, 0,170,128, 85, 0,170,128, 85, 0,170,128}; -static const GLubyte Fixed9x15_Character_003[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 4, 0, 4, 0, 4, 0, 31, 0, 0, 0, 72, 0, 72, 0,120, 0, 72, 0, 72, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_004[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 8, 0, 8, 0, 14, 0, 72, 0, 79, 0, 64, 0,112, 0, 64, 0,120, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_005[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 9, 0, 9, 0, 14, 0, 9, 0, 14, 0, 0, 0, 56, 0, 64, 0, 64, 0, 64, 0, 56, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_006[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 8, 0, 14, 0, 8, 0, 15, 0, 0, 0,120, 0, 64, 0, 64, 0, 64, 0, 64, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_007[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 0, 18, 0, 18, 0, 12, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_008[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,127, 0, 0, 0, 8, 0, 8, 0, 8, 0,127, 0, 8, 0, 8, 0, 8, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_009[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 8, 0, 8, 0, 8, 0, 8, 0, 0, 0, 68, 0, 76, 0, 84, 0,100, 0, 68, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_010[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 4, 0, 4, 0, 4, 0, 31, 0, 0, 0, 16, 0, 40, 0, 40, 0, 68, 0, 68, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_011[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,248, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0}; -static const GLubyte Fixed9x15_Character_012[] = { 9, 0, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0,248, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_013[] = { 9, 0, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 15,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_014[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15,128, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0}; -static const GLubyte Fixed9x15_Character_015[] = { 9, 0, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0,255,128, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0}; -static const GLubyte Fixed9x15_Character_016[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,255,128}; -static const GLubyte Fixed9x15_Character_017[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,255,128, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_018[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,255,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_019[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0,255,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_020[] = { 9, 0, 0,255,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_021[] = { 9, 0, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 15,128, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0}; -static const GLubyte Fixed9x15_Character_022[] = { 9, 0, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0,248, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0}; -static const GLubyte Fixed9x15_Character_023[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,255,128, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0}; -static const GLubyte Fixed9x15_Character_024[] = { 9, 0, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0,255,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_025[] = { 9, 0, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0}; -static const GLubyte Fixed9x15_Character_026[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,127, 0, 0, 0, 3, 0, 28, 0, 96, 0, 28, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_027[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,127, 0, 0, 0, 96, 0, 28, 0, 3, 0, 28, 0, 96, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_028[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 34, 0, 34, 0, 34, 0, 34, 0, 34, 0,127, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_029[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 0, 16, 0,127, 0, 8, 0,127, 0, 4, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_030[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 46, 0, 81, 0, 48, 0, 16, 0, 16, 0,124, 0, 16, 0, 16, 0, 17, 0, 14, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_031[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_032[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_033[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 8, 0, 0, 0, 0, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_034[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18, 0, 18, 0, 18, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_035[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 36, 0, 36, 0,126, 0, 36, 0, 36, 0,126, 0, 36, 0, 36, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_036[] = { 9, 0, 0, 0, 0, 0, 0, 8, 0, 62, 0, 73, 0, 9, 0, 9, 0, 10, 0, 28, 0, 40, 0, 72, 0, 73, 0, 62, 0, 8, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_037[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 66, 0, 37, 0, 37, 0, 18, 0, 8, 0, 8, 0, 36, 0, 82, 0, 82, 0, 33, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_038[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 49, 0, 74, 0, 68, 0, 74, 0, 49, 0, 48, 0, 72, 0, 72, 0, 72, 0, 48, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_039[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 0, 8, 0, 4, 0, 6, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_040[] = { 9, 0, 0, 0, 0, 0, 0, 4, 0, 8, 0, 8, 0, 16, 0, 16, 0, 16, 0, 16, 0, 16, 0, 16, 0, 8, 0, 8, 0, 4, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_041[] = { 9, 0, 0, 0, 0, 0, 0, 16, 0, 8, 0, 8, 0, 4, 0, 4, 0, 4, 0, 4, 0, 4, 0, 4, 0, 8, 0, 8, 0, 16, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_042[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 73, 0, 42, 0, 28, 0, 42, 0, 73, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_043[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 8, 0, 8, 0,127, 0, 8, 0, 8, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_044[] = { 9, 0, 0, 8, 0, 4, 0, 4, 0, 12, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_045[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,127, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_046[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 12, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_047[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 32, 0, 32, 0, 16, 0, 8, 0, 8, 0, 4, 0, 2, 0, 2, 0, 1, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_048[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 28, 0, 34, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 34, 0, 28, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_049[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0,127, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 72, 0, 40, 0, 24, 0, 8, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_050[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0,127, 0, 64, 0, 32, 0, 16, 0, 8, 0, 4, 0, 2, 0, 65, 0, 65, 0, 62, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_051[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 65, 0, 1, 0, 1, 0, 1, 0, 14, 0, 4, 0, 2, 0, 1, 0,127, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_052[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 2, 0, 2, 0,127, 0, 66, 0, 34, 0, 18, 0, 10, 0, 6, 0, 2, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_053[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 65, 0, 1, 0, 1, 0, 1, 0, 97, 0, 94, 0, 64, 0, 64, 0,127, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_054[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 65, 0, 65, 0, 65, 0, 97, 0, 94, 0, 64, 0, 64, 0, 32, 0, 30, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_055[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 32, 0, 32, 0, 16, 0, 16, 0, 8, 0, 4, 0, 2, 0, 1, 0, 1, 0,127, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_056[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 28, 0, 34, 0, 65, 0, 65, 0, 34, 0, 28, 0, 34, 0, 65, 0, 34, 0, 28, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_057[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 60, 0, 2, 0, 1, 0, 1, 0, 61, 0, 67, 0, 65, 0, 65, 0, 65, 0, 62, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_058[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 12, 0, 12, 0, 0, 0, 0, 0, 0, 0, 12, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_059[] = { 9, 0, 0, 8, 0, 4, 0, 4, 0, 12, 0, 12, 0, 0, 0, 0, 0, 0, 0, 12, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_060[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 4, 0, 8, 0, 16, 0, 32, 0, 32, 0, 16, 0, 8, 0, 4, 0, 2, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_061[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,127, 0, 0, 0, 0, 0,127, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_062[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 32, 0, 16, 0, 8, 0, 4, 0, 2, 0, 2, 0, 4, 0, 8, 0, 16, 0, 32, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_063[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 8, 0, 8, 0, 4, 0, 2, 0, 1, 0, 65, 0, 65, 0, 62, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_064[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 64, 0, 64, 0, 77, 0, 83, 0, 81, 0, 79, 0, 65, 0, 65, 0, 62, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_065[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 65, 0, 65, 0,127, 0, 65, 0, 65, 0, 65, 0, 34, 0, 20, 0, 8, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_066[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0,126, 0, 33, 0, 33, 0, 33, 0, 33, 0,126, 0, 33, 0, 33, 0, 33, 0,126, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_067[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 65, 0, 64, 0, 64, 0, 64, 0, 64, 0, 64, 0, 64, 0, 65, 0, 62, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_068[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0,126, 0, 33, 0, 33, 0, 33, 0, 33, 0, 33, 0, 33, 0, 33, 0, 33, 0,126, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_069[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0,127, 0, 32, 0, 32, 0, 32, 0, 32, 0, 60, 0, 32, 0, 32, 0, 32, 0,127, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_070[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 32, 0, 32, 0, 32, 0, 32, 0, 32, 0, 60, 0, 32, 0, 32, 0, 32, 0,127, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_071[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 65, 0, 65, 0, 65, 0, 71, 0, 64, 0, 64, 0, 64, 0, 65, 0, 62, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_072[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0,127, 0, 65, 0, 65, 0, 65, 0, 65, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_073[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 62, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_074[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 60, 0, 66, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 15,128, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_075[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 66, 0, 68, 0, 72, 0, 80, 0,112, 0, 72, 0, 68, 0, 66, 0, 65, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_076[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0,127, 0, 64, 0, 64, 0, 64, 0, 64, 0, 64, 0, 64, 0, 64, 0, 64, 0, 64, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_077[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 65, 0, 65, 0, 73, 0, 73, 0, 85, 0, 85, 0, 99, 0, 65, 0, 65, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_078[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 65, 0, 65, 0, 67, 0, 69, 0, 73, 0, 81, 0, 97, 0, 65, 0, 65, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_079[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 62, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_080[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 64, 0, 64, 0, 64, 0, 64, 0,126, 0, 65, 0, 65, 0, 65, 0,126, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_081[] = { 9, 0, 0, 0, 0, 3, 0, 4, 0, 62, 0, 73, 0, 81, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 62, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_082[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 65, 0, 66, 0, 68, 0, 72, 0,126, 0, 65, 0, 65, 0, 65, 0,126, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_083[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 65, 0, 65, 0, 1, 0, 6, 0, 56, 0, 64, 0, 65, 0, 65, 0, 62, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_084[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0,127, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_085[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_086[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 20, 0, 20, 0, 20, 0, 34, 0, 34, 0, 34, 0, 65, 0, 65, 0, 65, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_087[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 85, 0, 73, 0, 73, 0, 73, 0, 73, 0, 65, 0, 65, 0, 65, 0, 65, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_088[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 65, 0, 34, 0, 20, 0, 8, 0, 8, 0, 20, 0, 34, 0, 65, 0, 65, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_089[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 20, 0, 34, 0, 65, 0, 65, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_090[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0,127, 0, 64, 0, 64, 0, 32, 0, 16, 0, 8, 0, 4, 0, 2, 0, 1, 0,127, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_091[] = { 9, 0, 0, 0, 0, 0, 0, 30, 0, 16, 0, 16, 0, 16, 0, 16, 0, 16, 0, 16, 0, 16, 0, 16, 0, 16, 0, 16, 0, 30, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_092[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 2, 0, 2, 0, 4, 0, 8, 0, 8, 0, 16, 0, 32, 0, 32, 0, 64, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_093[] = { 9, 0, 0, 0, 0, 0, 0, 60, 0, 4, 0, 4, 0, 4, 0, 4, 0, 4, 0, 4, 0, 4, 0, 4, 0, 4, 0, 4, 0, 60, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_094[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 34, 0, 20, 0, 8, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_095[] = { 9, 0, 0, 0, 0, 0, 0,255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_096[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 8, 0, 16, 0, 48, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_097[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 61, 0, 67, 0, 65, 0, 63, 0, 1, 0, 1, 0, 62, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_098[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 94, 0, 97, 0, 65, 0, 65, 0, 65, 0, 97, 0, 94, 0, 64, 0, 64, 0, 64, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_099[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 65, 0, 64, 0, 64, 0, 64, 0, 65, 0, 62, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_100[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 61, 0, 67, 0, 65, 0, 65, 0, 65, 0, 67, 0, 61, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_101[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 64, 0, 64, 0,127, 0, 65, 0, 65, 0, 62, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_102[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 16, 0, 16, 0, 16, 0, 16, 0,124, 0, 16, 0, 16, 0, 17, 0, 17, 0, 14, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_103[] = { 9, 0, 0, 62, 0, 65, 0, 65, 0, 62, 0, 64, 0, 60, 0, 66, 0, 66, 0, 66, 0, 61, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_104[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 97, 0, 94, 0, 64, 0, 64, 0, 64, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_105[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 56, 0, 0, 0, 0, 0, 24, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_106[] = { 9, 0, 0, 60, 0, 66, 0, 66, 0, 66, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 0, 14, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_107[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 70, 0, 88, 0, 96, 0, 88, 0, 70, 0, 65, 0, 64, 0, 64, 0, 64, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_108[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 56, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_109[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 73, 0, 73, 0, 73, 0, 73, 0, 73, 0,118, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_110[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 97, 0, 94, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_111[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 62, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_112[] = { 9, 0, 0, 64, 0, 64, 0, 64, 0, 94, 0, 97, 0, 65, 0, 65, 0, 65, 0, 97, 0, 94, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_113[] = { 9, 0, 0, 1, 0, 1, 0, 1, 0, 61, 0, 67, 0, 65, 0, 65, 0, 65, 0, 67, 0, 61, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_114[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 32, 0, 32, 0, 32, 0, 32, 0, 33, 0, 49, 0, 78, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_115[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 65, 0, 1, 0, 62, 0, 64, 0, 65, 0, 62, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_116[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 14, 0, 17, 0, 16, 0, 16, 0, 16, 0, 16, 0,126, 0, 16, 0, 16, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_117[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 61, 0, 66, 0, 66, 0, 66, 0, 66, 0, 66, 0, 66, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_118[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 20, 0, 20, 0, 34, 0, 34, 0, 65, 0, 65, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_119[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 85, 0, 73, 0, 73, 0, 73, 0, 65, 0, 65, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_120[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 34, 0, 20, 0, 8, 0, 20, 0, 34, 0, 65, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_121[] = { 9, 0, 0, 60, 0, 66, 0, 2, 0, 58, 0, 70, 0, 66, 0, 66, 0, 66, 0, 66, 0, 66, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_122[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0,127, 0, 32, 0, 16, 0, 8, 0, 4, 0, 2, 0,127, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_123[] = { 9, 0, 0, 0, 0, 0, 0, 7, 0, 8, 0, 8, 0, 8, 0, 4, 0, 24, 0, 24, 0, 4, 0, 8, 0, 8, 0, 8, 0, 7, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_124[] = { 9, 0, 0, 0, 0, 0, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_125[] = { 9, 0, 0, 0, 0, 0, 0,112, 0, 8, 0, 8, 0, 8, 0, 16, 0, 12, 0, 12, 0, 16, 0, 8, 0, 8, 0, 8, 0,112, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_126[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 70, 0, 73, 0, 49, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_127[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 91, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0,109, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_128[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 91, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0,109, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_129[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 91, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0,109, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_130[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 91, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0,109, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_131[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 91, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0,109, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_132[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 91, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0,109, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_133[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 91, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0,109, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_134[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 91, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0,109, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_135[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 91, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0,109, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_136[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 91, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0,109, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_137[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 91, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0,109, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_138[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 91, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0,109, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_139[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 91, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0,109, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_140[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 91, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0,109, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_141[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 91, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0,109, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_142[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 91, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0,109, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_143[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 91, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0,109, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_144[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 91, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0,109, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_145[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 91, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0,109, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_146[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 91, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0,109, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_147[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 91, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0,109, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_148[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 91, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0,109, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_149[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 91, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0,109, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_150[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 91, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0,109, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_151[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 91, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0,109, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_152[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 91, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0,109, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_153[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 91, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0,109, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_154[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 91, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0,109, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_155[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 91, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0,109, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_156[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 91, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0,109, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_157[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 91, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0,109, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_158[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 91, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0,109, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_159[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 91, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0, 65, 0, 64, 0, 1, 0,109, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_160[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_161[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 0, 0, 0, 0, 8, 0, 8, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_162[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 32, 0, 60, 0, 82, 0, 80, 0, 72, 0, 74, 0, 60, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_163[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 46, 0, 81, 0, 48, 0, 16, 0, 16, 0,124, 0, 16, 0, 16, 0, 17, 0, 14, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_164[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 62, 0, 34, 0, 34, 0, 62, 0, 65, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_165[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 8, 0, 8, 0, 62, 0, 8, 0, 62, 0, 20, 0, 34, 0, 65, 0, 65, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_166[] = { 9, 0, 0, 0, 0, 0, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 0, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_167[] = { 9, 0, 0, 0, 0, 0, 0, 24, 0, 36, 0, 4, 0, 24, 0, 36, 0, 36, 0, 36, 0, 24, 0, 32, 0, 36, 0, 24, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_168[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 34, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_169[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 60, 0, 66, 0,153, 0,165, 0,161, 0,165, 0,153, 0, 66, 0, 60, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_170[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,124, 0, 0, 0, 60, 0, 72, 0, 56, 0, 72, 0, 48, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_171[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 0, 18, 0, 36, 0, 72, 0, 72, 0, 36, 0, 18, 0, 9, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_172[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 2, 0, 2, 0,126, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_173[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_174[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 60, 0, 66, 0,165, 0,169, 0,185, 0,165, 0,185, 0, 66, 0, 60, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_175[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,126, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_176[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 0, 18, 0, 18, 0, 12, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_177[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,127, 0, 0, 0, 8, 0, 8, 0, 8, 0,127, 0, 8, 0, 8, 0, 8, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_178[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,120, 0, 64, 0, 48, 0, 8, 0, 72, 0, 48, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_179[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 0, 72, 0, 8, 0, 16, 0, 72, 0, 48, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_180[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 0, 8, 0, 4, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_181[] = { 9, 0, 0, 0, 0, 64, 0, 64, 0, 93, 0, 99, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_182[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 5, 0, 5, 0, 5, 0, 5, 0, 61, 0, 69, 0, 69, 0, 69, 0, 63, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_183[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_184[] = { 9, 0, 0, 24, 0, 36, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_185[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,112, 0, 32, 0, 32, 0, 32, 0, 96, 0, 32, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_186[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,124, 0, 0, 0, 56, 0, 68, 0, 68, 0, 56, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_187[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 72, 0, 36, 0, 18, 0, 9, 0, 9, 0, 18, 0, 36, 0, 72, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_188[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 13, 0, 9, 0, 5, 0,115, 0, 33, 0, 32, 0, 32, 0, 96, 0, 32, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_189[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 8, 0, 6, 0, 1, 0,121, 0, 38, 0, 32, 0, 32, 0, 96, 0, 32, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_190[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 13, 0, 9, 0, 5, 0, 51, 0, 73, 0, 8, 0, 16, 0, 72, 0, 48, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_191[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 65, 0, 65, 0, 64, 0, 32, 0, 16, 0, 8, 0, 8, 0, 0, 0, 8, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_192[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 65, 0, 65, 0,127, 0, 65, 0, 65, 0, 34, 0, 28, 0, 0, 0, 8, 0, 16, 0, 32, 0}; -static const GLubyte Fixed9x15_Character_193[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 65, 0, 65, 0,127, 0, 65, 0, 65, 0, 34, 0, 28, 0, 0, 0, 8, 0, 4, 0, 2, 0}; -static const GLubyte Fixed9x15_Character_194[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 65, 0, 65, 0,127, 0, 65, 0, 65, 0, 34, 0, 28, 0, 0, 0, 34, 0, 20, 0, 8, 0}; -static const GLubyte Fixed9x15_Character_195[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 65, 0, 65, 0,127, 0, 65, 0, 65, 0, 34, 0, 28, 0, 0, 0, 78, 0, 49, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_196[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 65, 0, 65, 0,127, 0, 65, 0, 65, 0, 34, 0, 28, 0, 0, 0, 34, 0, 34, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_197[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 65, 0, 65, 0,127, 0, 65, 0, 65, 0, 34, 0, 20, 0, 28, 0, 34, 0, 28, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_198[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 79, 0, 72, 0, 72, 0, 72, 0,126, 0, 72, 0, 72, 0, 72, 0, 72, 0, 55, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_199[] = { 9, 0, 0, 24, 0, 36, 0, 12, 0, 62, 0, 65, 0, 64, 0, 64, 0, 64, 0, 64, 0, 64, 0, 64, 0, 65, 0, 62, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_200[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0,127, 0, 32, 0, 32, 0, 32, 0, 60, 0, 32, 0, 32, 0,127, 0, 0, 0, 8, 0, 16, 0, 32, 0}; -static const GLubyte Fixed9x15_Character_201[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0,127, 0, 32, 0, 32, 0, 32, 0, 60, 0, 32, 0, 32, 0,127, 0, 0, 0, 8, 0, 4, 0, 2, 0}; -static const GLubyte Fixed9x15_Character_202[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0,127, 0, 32, 0, 32, 0, 32, 0, 60, 0, 32, 0, 32, 0,127, 0, 0, 0, 34, 0, 20, 0, 8, 0}; -static const GLubyte Fixed9x15_Character_203[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0,127, 0, 32, 0, 32, 0, 32, 0, 60, 0, 32, 0, 32, 0,127, 0, 0, 0, 34, 0, 34, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_204[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 62, 0, 0, 0, 8, 0, 16, 0, 32, 0}; -static const GLubyte Fixed9x15_Character_205[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 62, 0, 0, 0, 8, 0, 4, 0, 2, 0}; -static const GLubyte Fixed9x15_Character_206[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 62, 0, 0, 0, 34, 0, 20, 0, 8, 0}; -static const GLubyte Fixed9x15_Character_207[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 62, 0, 0, 0, 34, 0, 34, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_208[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0,124, 0, 33, 0, 33, 0, 33, 0, 33, 0,225, 0, 33, 0, 33, 0, 33, 0,124, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_209[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 67, 0, 69, 0, 73, 0, 73, 0, 81, 0, 97, 0, 65, 0, 0, 0, 78, 0, 49, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_210[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 62, 0, 0, 0, 8, 0, 16, 0, 32, 0}; -static const GLubyte Fixed9x15_Character_211[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 62, 0, 0, 0, 8, 0, 4, 0, 2, 0}; -static const GLubyte Fixed9x15_Character_212[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 62, 0, 0, 0, 34, 0, 20, 0, 8, 0}; -static const GLubyte Fixed9x15_Character_213[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 62, 0, 0, 0, 78, 0, 49, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_214[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 62, 0, 0, 0, 34, 0, 34, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_215[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 34, 0, 20, 0, 8, 0, 20, 0, 34, 0, 65, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_216[] = { 9, 0, 0, 0, 0, 0, 0, 64, 0, 62, 0, 97, 0, 81, 0, 81, 0, 73, 0, 73, 0, 69, 0, 69, 0, 67, 0, 62, 0, 1, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_217[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 0, 0, 8, 0, 16, 0, 32, 0}; -static const GLubyte Fixed9x15_Character_218[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 0, 0, 8, 0, 4, 0, 2, 0}; -static const GLubyte Fixed9x15_Character_219[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 0, 0, 34, 0, 20, 0, 8, 0}; -static const GLubyte Fixed9x15_Character_220[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 0, 0, 34, 0, 34, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_221[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 8, 0, 8, 0, 8, 0, 20, 0, 34, 0, 65, 0, 65, 0, 0, 0, 8, 0, 4, 0, 2, 0}; -static const GLubyte Fixed9x15_Character_222[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 64, 0, 64, 0,126, 0, 65, 0, 65, 0, 65, 0,126, 0, 64, 0, 64, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_223[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 44, 0, 34, 0, 34, 0, 34, 0, 36, 0,104, 0, 36, 0, 34, 0, 34, 0, 28, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_224[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 61, 0, 67, 0, 65, 0, 63, 0, 1, 0, 1, 0, 62, 0, 0, 0, 4, 0, 8, 0, 16, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_225[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 61, 0, 67, 0, 65, 0, 63, 0, 1, 0, 1, 0, 62, 0, 0, 0, 8, 0, 4, 0, 2, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_226[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 61, 0, 67, 0, 65, 0, 63, 0, 1, 0, 1, 0, 62, 0, 0, 0, 34, 0, 20, 0, 8, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_227[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 61, 0, 67, 0, 65, 0, 63, 0, 1, 0, 1, 0, 62, 0, 0, 0, 38, 0, 25, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_228[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 61, 0, 67, 0, 65, 0, 63, 0, 1, 0, 1, 0, 62, 0, 0, 0, 34, 0, 34, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_229[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 61, 0, 67, 0, 65, 0, 63, 0, 1, 0, 1, 0, 62, 0, 0, 0, 12, 0, 18, 0, 12, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_230[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 55, 0, 73, 0, 72, 0, 62, 0, 9, 0, 73, 0, 54, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_231[] = { 9, 0, 0, 24, 0, 36, 0, 12, 0, 62, 0, 65, 0, 64, 0, 64, 0, 64, 0, 65, 0, 62, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_232[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 64, 0, 64, 0,127, 0, 65, 0, 65, 0, 62, 0, 0, 0, 8, 0, 16, 0, 32, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_233[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 64, 0, 64, 0,127, 0, 65, 0, 65, 0, 62, 0, 0, 0, 8, 0, 4, 0, 2, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_234[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 64, 0, 64, 0,127, 0, 65, 0, 65, 0, 62, 0, 0, 0, 34, 0, 20, 0, 8, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_235[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 64, 0, 64, 0,127, 0, 65, 0, 65, 0, 62, 0, 0, 0, 34, 0, 34, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_236[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 56, 0, 0, 0, 8, 0, 16, 0, 32, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_237[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 56, 0, 0, 0, 16, 0, 8, 0, 4, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_238[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 56, 0, 0, 0, 68, 0, 40, 0, 16, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_239[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 8, 0, 8, 0, 8, 0, 8, 0, 8, 0, 56, 0, 0, 0, 36, 0, 36, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_240[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 62, 0, 4, 0, 40, 0, 24, 0, 36, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_241[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 97, 0, 94, 0, 0, 0, 78, 0, 49, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_242[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 62, 0, 0, 0, 8, 0, 16, 0, 32, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_243[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 62, 0, 0, 0, 8, 0, 4, 0, 2, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_244[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 62, 0, 0, 0, 34, 0, 20, 0, 8, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_245[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 62, 0, 0, 0, 78, 0, 49, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_246[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 62, 0, 0, 0, 34, 0, 34, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_247[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 28, 0, 8, 0, 0, 0,127, 0, 0, 0, 8, 0, 28, 0, 8, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_248[] = { 9, 0, 0, 0, 0, 0, 0, 64, 0, 62, 0, 81, 0, 81, 0, 73, 0, 69, 0, 69, 0, 62, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_249[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 61, 0, 66, 0, 66, 0, 66, 0, 66, 0, 66, 0, 66, 0, 0, 0, 8, 0, 16, 0, 32, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_250[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 61, 0, 66, 0, 66, 0, 66, 0, 66, 0, 66, 0, 66, 0, 0, 0, 8, 0, 4, 0, 2, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_251[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 61, 0, 66, 0, 66, 0, 66, 0, 66, 0, 66, 0, 66, 0, 0, 0, 34, 0, 20, 0, 8, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_252[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 61, 0, 66, 0, 66, 0, 66, 0, 66, 0, 66, 0, 66, 0, 0, 0, 36, 0, 36, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_253[] = { 9, 0, 0, 60, 0, 66, 0, 2, 0, 58, 0, 70, 0, 66, 0, 66, 0, 66, 0, 66, 0, 66, 0, 0, 0, 16, 0, 8, 0, 4, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_254[] = { 9, 0, 0, 64, 0, 64, 0, 64, 0, 94, 0, 97, 0, 65, 0, 65, 0, 97, 0, 94, 0, 64, 0, 64, 0, 64, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Fixed9x15_Character_255[] = { 9, 0, 0, 60, 0, 66, 0, 2, 0, 58, 0, 70, 0, 66, 0, 66, 0, 66, 0, 66, 0, 66, 0, 0, 0, 36, 0, 36, 0, 0, 0, 0, 0}; - -/* The font characters mapping: */ -static const GLubyte* Fixed9x15_Character_Map[] = {Fixed9x15_Character_000,Fixed9x15_Character_001,Fixed9x15_Character_002,Fixed9x15_Character_003,Fixed9x15_Character_004,Fixed9x15_Character_005,Fixed9x15_Character_006,Fixed9x15_Character_007,Fixed9x15_Character_008,Fixed9x15_Character_009,Fixed9x15_Character_010,Fixed9x15_Character_011,Fixed9x15_Character_012,Fixed9x15_Character_013,Fixed9x15_Character_014,Fixed9x15_Character_015, - Fixed9x15_Character_016,Fixed9x15_Character_017,Fixed9x15_Character_018,Fixed9x15_Character_019,Fixed9x15_Character_020,Fixed9x15_Character_021,Fixed9x15_Character_022,Fixed9x15_Character_023,Fixed9x15_Character_024,Fixed9x15_Character_025,Fixed9x15_Character_026,Fixed9x15_Character_027,Fixed9x15_Character_028,Fixed9x15_Character_029,Fixed9x15_Character_030,Fixed9x15_Character_031, - Fixed9x15_Character_032,Fixed9x15_Character_033,Fixed9x15_Character_034,Fixed9x15_Character_035,Fixed9x15_Character_036,Fixed9x15_Character_037,Fixed9x15_Character_038,Fixed9x15_Character_039,Fixed9x15_Character_040,Fixed9x15_Character_041,Fixed9x15_Character_042,Fixed9x15_Character_043,Fixed9x15_Character_044,Fixed9x15_Character_045,Fixed9x15_Character_046,Fixed9x15_Character_047, - Fixed9x15_Character_048,Fixed9x15_Character_049,Fixed9x15_Character_050,Fixed9x15_Character_051,Fixed9x15_Character_052,Fixed9x15_Character_053,Fixed9x15_Character_054,Fixed9x15_Character_055,Fixed9x15_Character_056,Fixed9x15_Character_057,Fixed9x15_Character_058,Fixed9x15_Character_059,Fixed9x15_Character_060,Fixed9x15_Character_061,Fixed9x15_Character_062,Fixed9x15_Character_063, - Fixed9x15_Character_064,Fixed9x15_Character_065,Fixed9x15_Character_066,Fixed9x15_Character_067,Fixed9x15_Character_068,Fixed9x15_Character_069,Fixed9x15_Character_070,Fixed9x15_Character_071,Fixed9x15_Character_072,Fixed9x15_Character_073,Fixed9x15_Character_074,Fixed9x15_Character_075,Fixed9x15_Character_076,Fixed9x15_Character_077,Fixed9x15_Character_078,Fixed9x15_Character_079, - Fixed9x15_Character_080,Fixed9x15_Character_081,Fixed9x15_Character_082,Fixed9x15_Character_083,Fixed9x15_Character_084,Fixed9x15_Character_085,Fixed9x15_Character_086,Fixed9x15_Character_087,Fixed9x15_Character_088,Fixed9x15_Character_089,Fixed9x15_Character_090,Fixed9x15_Character_091,Fixed9x15_Character_092,Fixed9x15_Character_093,Fixed9x15_Character_094,Fixed9x15_Character_095, - Fixed9x15_Character_096,Fixed9x15_Character_097,Fixed9x15_Character_098,Fixed9x15_Character_099,Fixed9x15_Character_100,Fixed9x15_Character_101,Fixed9x15_Character_102,Fixed9x15_Character_103,Fixed9x15_Character_104,Fixed9x15_Character_105,Fixed9x15_Character_106,Fixed9x15_Character_107,Fixed9x15_Character_108,Fixed9x15_Character_109,Fixed9x15_Character_110,Fixed9x15_Character_111, - Fixed9x15_Character_112,Fixed9x15_Character_113,Fixed9x15_Character_114,Fixed9x15_Character_115,Fixed9x15_Character_116,Fixed9x15_Character_117,Fixed9x15_Character_118,Fixed9x15_Character_119,Fixed9x15_Character_120,Fixed9x15_Character_121,Fixed9x15_Character_122,Fixed9x15_Character_123,Fixed9x15_Character_124,Fixed9x15_Character_125,Fixed9x15_Character_126,Fixed9x15_Character_032, - Fixed9x15_Character_032,Fixed9x15_Character_032,Fixed9x15_Character_032,Fixed9x15_Character_032,Fixed9x15_Character_032,Fixed9x15_Character_032,Fixed9x15_Character_032,Fixed9x15_Character_032,Fixed9x15_Character_032,Fixed9x15_Character_032,Fixed9x15_Character_032,Fixed9x15_Character_032,Fixed9x15_Character_032,Fixed9x15_Character_032,Fixed9x15_Character_032,Fixed9x15_Character_032, - Fixed9x15_Character_032,Fixed9x15_Character_032,Fixed9x15_Character_032,Fixed9x15_Character_032,Fixed9x15_Character_032,Fixed9x15_Character_032,Fixed9x15_Character_032,Fixed9x15_Character_032,Fixed9x15_Character_032,Fixed9x15_Character_032,Fixed9x15_Character_032,Fixed9x15_Character_032,Fixed9x15_Character_032,Fixed9x15_Character_032,Fixed9x15_Character_032,Fixed9x15_Character_032, - Fixed9x15_Character_160,Fixed9x15_Character_161,Fixed9x15_Character_162,Fixed9x15_Character_163,Fixed9x15_Character_164,Fixed9x15_Character_165,Fixed9x15_Character_166,Fixed9x15_Character_167,Fixed9x15_Character_168,Fixed9x15_Character_169,Fixed9x15_Character_170,Fixed9x15_Character_171,Fixed9x15_Character_172,Fixed9x15_Character_173,Fixed9x15_Character_174,Fixed9x15_Character_175, - Fixed9x15_Character_176,Fixed9x15_Character_177,Fixed9x15_Character_178,Fixed9x15_Character_179,Fixed9x15_Character_180,Fixed9x15_Character_181,Fixed9x15_Character_182,Fixed9x15_Character_183,Fixed9x15_Character_184,Fixed9x15_Character_185,Fixed9x15_Character_186,Fixed9x15_Character_187,Fixed9x15_Character_188,Fixed9x15_Character_189,Fixed9x15_Character_190,Fixed9x15_Character_191, - Fixed9x15_Character_192,Fixed9x15_Character_193,Fixed9x15_Character_194,Fixed9x15_Character_195,Fixed9x15_Character_196,Fixed9x15_Character_197,Fixed9x15_Character_198,Fixed9x15_Character_199,Fixed9x15_Character_200,Fixed9x15_Character_201,Fixed9x15_Character_202,Fixed9x15_Character_203,Fixed9x15_Character_204,Fixed9x15_Character_205,Fixed9x15_Character_206,Fixed9x15_Character_207, - Fixed9x15_Character_208,Fixed9x15_Character_209,Fixed9x15_Character_210,Fixed9x15_Character_211,Fixed9x15_Character_212,Fixed9x15_Character_213,Fixed9x15_Character_214,Fixed9x15_Character_215,Fixed9x15_Character_216,Fixed9x15_Character_217,Fixed9x15_Character_218,Fixed9x15_Character_219,Fixed9x15_Character_220,Fixed9x15_Character_221,Fixed9x15_Character_222,Fixed9x15_Character_223, - Fixed9x15_Character_224,Fixed9x15_Character_225,Fixed9x15_Character_226,Fixed9x15_Character_227,Fixed9x15_Character_228,Fixed9x15_Character_229,Fixed9x15_Character_230,Fixed9x15_Character_231,Fixed9x15_Character_232,Fixed9x15_Character_233,Fixed9x15_Character_234,Fixed9x15_Character_235,Fixed9x15_Character_236,Fixed9x15_Character_237,Fixed9x15_Character_238,Fixed9x15_Character_239, - Fixed9x15_Character_240,Fixed9x15_Character_241,Fixed9x15_Character_242,Fixed9x15_Character_243,Fixed9x15_Character_244,Fixed9x15_Character_245,Fixed9x15_Character_246,Fixed9x15_Character_247,Fixed9x15_Character_248,Fixed9x15_Character_249,Fixed9x15_Character_250,Fixed9x15_Character_251,Fixed9x15_Character_252,Fixed9x15_Character_253,Fixed9x15_Character_254,Fixed9x15_Character_255,NULL}; - -/* The font structure: */ -const SFG_Font fgFontFixed9x15 = { "-misc-fixed-medium-r-normal--15-140-75-75-C-90-iso8859-1", 256, 16, Fixed9x15_Character_Map, 0, 4 }; - -static const GLubyte Helvetica10_Character_000[] = { 8, 0, 0, 0, 84, 0, 68, 0, 68, 0, 84, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_001[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_002[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_003[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_004[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_005[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_006[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_007[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_008[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_009[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_010[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_011[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_012[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_013[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_014[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_015[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_016[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_017[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_018[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_019[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_020[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_021[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_022[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_023[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_024[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_025[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_026[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_027[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_028[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_029[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_030[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_031[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_032[] = { 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_033[] = { 3, 0, 0, 0, 64, 0, 64, 64, 64, 64, 64, 64, 0, 0, 0}; -static const GLubyte Helvetica10_Character_034[] = { 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 80, 0, 0, 0}; -static const GLubyte Helvetica10_Character_035[] = { 6, 0, 0, 0, 80, 80,248, 40,124, 40, 40, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_036[] = { 6, 0, 0, 32,112,168, 40,112,160,168,112, 32, 0, 0, 0}; -static const GLubyte Helvetica10_Character_037[] = { 9, 0, 0, 0, 0, 0, 0, 38, 0, 41, 0, 22, 0, 16, 0, 8, 0,104, 0,148, 0,100, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_038[] = { 8, 0, 0, 0, 50, 76, 76, 82, 48, 40, 40, 16, 0, 0, 0}; -static const GLubyte Helvetica10_Character_039[] = { 3, 0, 0, 0, 0, 0, 0, 0, 0, 64, 32, 32, 0, 0, 0}; -static const GLubyte Helvetica10_Character_040[] = { 4, 0, 32, 64, 64,128,128,128,128, 64, 64, 32, 0, 0, 0}; -static const GLubyte Helvetica10_Character_041[] = { 4, 0, 64, 32, 32, 16, 16, 16, 16, 32, 32, 64, 0, 0, 0}; -static const GLubyte Helvetica10_Character_042[] = { 4, 0, 0, 0, 0, 0, 0, 0, 0,160, 64,160, 0, 0, 0}; -static const GLubyte Helvetica10_Character_043[] = { 6, 0, 0, 0, 0, 32, 32,248, 32, 32, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_044[] = { 3, 0,128, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_045[] = { 7, 0, 0, 0, 0, 0, 0,124, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_046[] = { 3, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_047[] = { 3, 0, 0, 0,128,128, 64, 64, 64, 64, 32, 32, 0, 0, 0}; -static const GLubyte Helvetica10_Character_048[] = { 6, 0, 0, 0,112,136,136,136,136,136,136,112, 0, 0, 0}; -static const GLubyte Helvetica10_Character_049[] = { 6, 0, 0, 0, 32, 32, 32, 32, 32, 32, 96, 32, 0, 0, 0}; -static const GLubyte Helvetica10_Character_050[] = { 6, 0, 0, 0,248,128, 64, 48, 8, 8,136,112, 0, 0, 0}; -static const GLubyte Helvetica10_Character_051[] = { 6, 0, 0, 0,112,136, 8, 8, 48, 8,136,112, 0, 0, 0}; -static const GLubyte Helvetica10_Character_052[] = { 6, 0, 0, 0, 16, 16,248,144, 80, 80, 48, 16, 0, 0, 0}; -static const GLubyte Helvetica10_Character_053[] = { 6, 0, 0, 0,112,136, 8, 8,240,128,128,248, 0, 0, 0}; -static const GLubyte Helvetica10_Character_054[] = { 6, 0, 0, 0,112,136,136,200,176,128,136,112, 0, 0, 0}; -static const GLubyte Helvetica10_Character_055[] = { 6, 0, 0, 0, 64, 64, 32, 32, 16, 16, 8,248, 0, 0, 0}; -static const GLubyte Helvetica10_Character_056[] = { 6, 0, 0, 0,112,136,136,136,112,136,136,112, 0, 0, 0}; -static const GLubyte Helvetica10_Character_057[] = { 6, 0, 0, 0,112,136, 8,104,152,136,136,112, 0, 0, 0}; -static const GLubyte Helvetica10_Character_058[] = { 3, 0, 0, 0, 64, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_059[] = { 3, 0,128, 64, 64, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_060[] = { 6, 0, 0, 0, 0, 16, 32, 64, 32, 16, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_061[] = { 5, 0, 0, 0, 0, 0,240, 0,240, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_062[] = { 6, 0, 0, 0, 0, 64, 32, 16, 32, 64, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_063[] = { 6, 0, 0, 0, 32, 0, 32, 32, 16, 8, 72, 48, 0, 0, 0}; -static const GLubyte Helvetica10_Character_064[] = { 11, 0, 0, 62, 0, 64, 0,155, 0,164,128,164,128,162, 64,146, 64, 77, 64, 32,128, 31, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_065[] = { 7, 0, 0, 0,130,130,124, 68, 40, 40, 16, 16, 0, 0, 0}; -static const GLubyte Helvetica10_Character_066[] = { 7, 0, 0, 0,120, 68, 68, 68,120, 68, 68,120, 0, 0, 0}; -static const GLubyte Helvetica10_Character_067[] = { 8, 0, 0, 0, 60, 66, 64, 64, 64, 64, 66, 60, 0, 0, 0}; -static const GLubyte Helvetica10_Character_068[] = { 8, 0, 0, 0,120, 68, 66, 66, 66, 66, 68,120, 0, 0, 0}; -static const GLubyte Helvetica10_Character_069[] = { 7, 0, 0, 0,124, 64, 64, 64,124, 64, 64,124, 0, 0, 0}; -static const GLubyte Helvetica10_Character_070[] = { 6, 0, 0, 0, 64, 64, 64, 64,120, 64, 64,124, 0, 0, 0}; -static const GLubyte Helvetica10_Character_071[] = { 8, 0, 0, 0, 58, 70, 66, 70, 64, 64, 66, 60, 0, 0, 0}; -static const GLubyte Helvetica10_Character_072[] = { 8, 0, 0, 0, 66, 66, 66, 66,126, 66, 66, 66, 0, 0, 0}; -static const GLubyte Helvetica10_Character_073[] = { 3, 0, 0, 0, 64, 64, 64, 64, 64, 64, 64, 64, 0, 0, 0}; -static const GLubyte Helvetica10_Character_074[] = { 5, 0, 0, 0, 96,144, 16, 16, 16, 16, 16, 16, 0, 0, 0}; -static const GLubyte Helvetica10_Character_075[] = { 7, 0, 0, 0, 68, 68, 72, 72,112, 80, 72, 68, 0, 0, 0}; -static const GLubyte Helvetica10_Character_076[] = { 6, 0, 0, 0,120, 64, 64, 64, 64, 64, 64, 64, 0, 0, 0}; -static const GLubyte Helvetica10_Character_077[] = { 9, 0, 0, 0, 0, 0, 0, 73, 0, 73, 0, 73, 0, 85, 0, 85, 0, 99, 0, 99, 0, 65, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_078[] = { 8, 0, 0, 0, 70, 70, 74, 74, 82, 82, 98, 98, 0, 0, 0}; -static const GLubyte Helvetica10_Character_079[] = { 8, 0, 0, 0, 60, 66, 66, 66, 66, 66, 66, 60, 0, 0, 0}; -static const GLubyte Helvetica10_Character_080[] = { 7, 0, 0, 0, 64, 64, 64, 64,120, 68, 68,120, 0, 0, 0}; -static const GLubyte Helvetica10_Character_081[] = { 8, 0, 0, 1, 62, 70, 74, 66, 66, 66, 66, 60, 0, 0, 0}; -static const GLubyte Helvetica10_Character_082[] = { 7, 0, 0, 0, 68, 68, 68, 68,120, 68, 68,120, 0, 0, 0}; -static const GLubyte Helvetica10_Character_083[] = { 7, 0, 0, 0, 56, 68, 68, 4, 56, 64, 68, 56, 0, 0, 0}; -static const GLubyte Helvetica10_Character_084[] = { 5, 0, 0, 0, 32, 32, 32, 32, 32, 32, 32,248, 0, 0, 0}; -static const GLubyte Helvetica10_Character_085[] = { 8, 0, 0, 0, 60, 66, 66, 66, 66, 66, 66, 66, 0, 0, 0}; -static const GLubyte Helvetica10_Character_086[] = { 7, 0, 0, 0, 16, 40, 40, 68, 68, 68,130,130, 0, 0, 0}; -static const GLubyte Helvetica10_Character_087[] = { 9, 0, 0, 0, 0, 0, 0, 34, 0, 34, 0, 34, 0, 85, 0, 73, 0, 73, 0,136,128,136,128, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_088[] = { 7, 0, 0, 0, 68, 68, 40, 40, 16, 40, 68, 68, 0, 0, 0}; -static const GLubyte Helvetica10_Character_089[] = { 7, 0, 0, 0, 16, 16, 16, 40, 40, 68, 68,130, 0, 0, 0}; -static const GLubyte Helvetica10_Character_090[] = { 7, 0, 0, 0,124, 64, 32, 16, 16, 8, 4,124, 0, 0, 0}; -static const GLubyte Helvetica10_Character_091[] = { 3, 0, 96, 64, 64, 64, 64, 64, 64, 64, 64, 96, 0, 0, 0}; -static const GLubyte Helvetica10_Character_092[] = { 3, 0, 0, 0, 32, 32, 64, 64, 64, 64,128,128, 0, 0, 0}; -static const GLubyte Helvetica10_Character_093[] = { 3, 0,192, 64, 64, 64, 64, 64, 64, 64, 64,192, 0, 0, 0}; -static const GLubyte Helvetica10_Character_094[] = { 6, 0, 0, 0, 0, 0, 0,136, 80, 80, 32, 32, 0, 0, 0}; -static const GLubyte Helvetica10_Character_095[] = { 6, 0,252, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_096[] = { 3, 0, 0, 0, 0, 0, 0, 0, 0, 63, 64, 32, 0, 0, 0}; -static const GLubyte Helvetica10_Character_097[] = { 5, 0, 0, 0,104,144,144,112, 16,224, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_098[] = { 6, 0, 0, 0,176,200,136,136,200,176,128,128, 0, 0, 0}; -static const GLubyte Helvetica10_Character_099[] = { 5, 0, 0, 0, 96,144,128,128,144, 96, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_100[] = { 6, 0, 0, 0,104,152,136,136,152,104, 8, 8, 0, 0, 0}; -static const GLubyte Helvetica10_Character_101[] = { 5, 0, 0, 0, 96,144,128,240,144, 96, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_102[] = { 4, 0, 0, 0, 64, 64, 64, 64, 64,224, 64, 48, 0, 0, 0}; -static const GLubyte Helvetica10_Character_103[] = { 6, 0,112, 8,104,152,136,136,152,104, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_104[] = { 6, 0, 0, 0,136,136,136,136,200,176,128,128, 0, 0, 0}; -static const GLubyte Helvetica10_Character_105[] = { 2, 0, 0, 0,128,128,128,128,128,128, 0,128, 0, 0, 0}; -static const GLubyte Helvetica10_Character_106[] = { 2, 0, 0,128,128,128,128,128,128,128, 0,128, 0, 0, 0}; -static const GLubyte Helvetica10_Character_107[] = { 5, 0, 0, 0,144,144,160,192,160,144,128,128, 0, 0, 0}; -static const GLubyte Helvetica10_Character_108[] = { 2, 0, 0, 0,128,128,128,128,128,128,128,128, 0, 0, 0}; -static const GLubyte Helvetica10_Character_109[] = { 8, 0, 0, 0,146,146,146,146,146,236, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_110[] = { 6, 0, 0, 0,136,136,136,136,200,176, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_111[] = { 6, 0, 0, 0,112,136,136,136,136,112, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_112[] = { 6, 0,128,128,176,200,136,136,200,176, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_113[] = { 6, 0, 8, 8,104,152,136,136,152,104, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_114[] = { 4, 0, 0, 0,128,128,128,128,192,160, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_115[] = { 5, 0, 0, 0, 96,144, 16, 96,144, 96, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_116[] = { 4, 0, 0, 0, 96, 64, 64, 64, 64,224, 64, 64, 0, 0, 0}; -static const GLubyte Helvetica10_Character_117[] = { 5, 0, 0, 0,112,144,144,144,144,144, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_118[] = { 6, 0, 0, 0, 32, 32, 80, 80,136,136, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_119[] = { 8, 0, 0, 0, 40, 40, 84, 84,146,146, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_120[] = { 6, 0, 0, 0,136,136, 80, 32, 80,136, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_121[] = { 5, 0,128, 64, 64, 96,160,160,144,144, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_122[] = { 5, 0, 0, 0,240,128, 64, 32, 16,240, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_123[] = { 3, 0, 32, 64, 64, 64, 64,128, 64, 64, 64, 32, 0, 0, 0}; -static const GLubyte Helvetica10_Character_124[] = { 3, 0, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 0, 0, 0}; -static const GLubyte Helvetica10_Character_125[] = { 3, 0,128, 64, 64, 64, 64, 32, 64, 64, 64,128, 0, 0, 0}; -static const GLubyte Helvetica10_Character_126[] = { 7, 0, 0, 0, 0, 0, 0,152,100, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_127[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_128[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_129[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_130[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_131[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_132[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_133[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_134[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_135[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_136[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_137[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_138[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_139[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_140[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_141[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_142[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_143[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_144[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_145[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_146[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_147[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_148[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_149[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_150[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_151[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_152[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_153[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_154[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_155[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_156[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_157[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_158[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_159[] = { 13, 0, 0, 0, 0, 0, 0, 84, 0, 0, 0, 68, 0, 0, 0, 68, 0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_160[] = { 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_161[] = { 3, 0, 64, 64, 64, 64, 64, 64, 0, 64, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_162[] = { 6, 0, 0, 64,112,168,160,160,168,112, 16, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_163[] = { 6, 0, 0, 0,176, 72, 64, 64,224, 64, 72, 48, 0, 0, 0}; -static const GLubyte Helvetica10_Character_164[] = { 5, 0, 0, 0, 0,144, 96,144,144, 96,144, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_165[] = { 6, 0, 0, 0, 32,248, 32,248, 80, 80,136,136, 0, 0, 0}; -static const GLubyte Helvetica10_Character_166[] = { 3, 0, 64, 64, 64, 64, 0, 0, 64, 64, 64, 64, 0, 0, 0}; -static const GLubyte Helvetica10_Character_167[] = { 6, 0,112,136, 24,112,200,152,112,192,136,112, 0, 0, 0}; -static const GLubyte Helvetica10_Character_168[] = { 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,160, 0, 0, 0}; -static const GLubyte Helvetica10_Character_169[] = { 9, 0, 0, 0, 0, 0, 0, 28, 0, 34, 0, 77, 0, 81, 0, 77, 0, 34, 0, 28, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_170[] = { 4, 0, 0, 0, 0, 0, 0,224, 0,160, 32,224, 0, 0, 0}; -static const GLubyte Helvetica10_Character_171[] = { 6, 0, 0, 0, 40, 80,160, 80, 40, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_172[] = { 7, 0, 0, 0, 0, 0, 4, 4,124, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_173[] = { 4, 0, 0, 0, 0, 0, 0,224, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_174[] = { 9, 0, 0, 0, 0, 0, 0, 28, 0, 34, 0, 85, 0, 89, 0, 93, 0, 34, 0, 28, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_175[] = { 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,224, 0, 0, 0}; -static const GLubyte Helvetica10_Character_176[] = { 4, 0, 0, 0, 0, 0, 0, 96,144,144, 96, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_177[] = { 6, 0, 0, 0,248, 0, 32, 32,248, 32, 32, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_178[] = { 3, 0, 0, 0, 0, 0, 0,224, 64,160, 96, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_179[] = { 3, 0, 0, 0, 0, 0, 0,192, 32, 64,224, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_180[] = { 3, 0, 0, 0, 0, 0, 0, 0, 0, 0,128, 64, 0, 0, 0}; -static const GLubyte Helvetica10_Character_181[] = { 5, 0,128,128,240,144,144,144,144,144, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_182[] = { 6, 0, 40, 40, 40, 40, 40,104,232,232,232,124, 0, 0, 0}; -static const GLubyte Helvetica10_Character_183[] = { 3, 0, 0, 0, 0, 0, 0,192, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_184[] = { 3, 0,192, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_185[] = { 3, 0, 0, 0, 0, 0, 0, 64, 64,192, 64, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_186[] = { 4, 0, 0, 0, 0, 0, 0,224, 0,224,160,224, 0, 0, 0}; -static const GLubyte Helvetica10_Character_187[] = { 6, 0, 0, 0,160, 80, 40, 80,160, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_188[] = { 9, 0, 0, 0, 0, 0, 0, 33, 0, 23,128, 19, 0, 9, 0, 72, 0, 68, 0,196, 0, 66, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_189[] = { 9, 0, 0, 0, 0, 0, 0, 39, 0, 18, 0, 21, 0, 11, 0, 72, 0, 68, 0,196, 0, 66, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_190[] = { 9, 0, 0, 0, 0, 0, 0, 33, 0, 23,128, 19, 0, 9, 0,200, 0, 36, 0, 68, 0,226, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_191[] = { 6, 0, 48, 72, 64, 32, 16, 16, 0, 16, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_192[] = { 7, 0, 0, 0,130,130,124, 68, 40, 40, 16, 16, 0, 16, 32}; -static const GLubyte Helvetica10_Character_193[] = { 7, 0, 0, 0,130,130,124, 68, 40, 40, 16, 16, 0, 16, 8}; -static const GLubyte Helvetica10_Character_194[] = { 7, 0, 0, 0,130,130,124, 68, 40, 40, 16, 16, 0, 40, 16}; -static const GLubyte Helvetica10_Character_195[] = { 7, 0, 0, 0,130,130,124, 68, 40, 40, 16, 16, 0, 40, 20}; -static const GLubyte Helvetica10_Character_196[] = { 7, 0, 0, 0,130,130,124, 68, 40, 40, 16, 16, 0, 40, 0}; -static const GLubyte Helvetica10_Character_197[] = { 7, 0, 0, 0,130,130,124, 68, 40, 40, 16, 16, 16, 40, 16}; -static const GLubyte Helvetica10_Character_198[] = { 10, 0, 0, 0, 0, 0, 0,143,128,136, 0,120, 0, 72, 0, 47,128, 40, 0, 24, 0, 31,128, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_199[] = { 8, 0, 24, 8, 60, 66, 64, 64, 64, 64, 66, 60, 0, 0, 0}; -static const GLubyte Helvetica10_Character_200[] = { 7, 0, 0, 0,124, 64, 64, 64,124, 64, 64,124, 0, 16, 32}; -static const GLubyte Helvetica10_Character_201[] = { 7, 0, 0, 0,124, 64, 64, 64,124, 64, 64,124, 0, 16, 8}; -static const GLubyte Helvetica10_Character_202[] = { 7, 0, 0, 0,124, 64, 64,124, 64, 64, 64,124, 0, 40, 16}; -static const GLubyte Helvetica10_Character_203[] = { 7, 0, 0, 0,124, 64, 64, 64,124, 64, 64,124, 0, 40, 0}; -static const GLubyte Helvetica10_Character_204[] = { 3, 0, 0, 0, 64, 64, 64, 64, 64, 64, 64, 64, 0, 64,128}; -static const GLubyte Helvetica10_Character_205[] = { 3, 0, 0, 0, 64, 64, 64, 64, 64, 64, 64, 64, 0, 64, 32}; -static const GLubyte Helvetica10_Character_206[] = { 3, 0, 0, 0, 64, 64, 64, 64, 64, 64, 64, 64, 0,160, 64}; -static const GLubyte Helvetica10_Character_207[] = { 3, 0, 0, 0, 64, 64, 64, 64, 64, 64, 64, 64, 0,160, 0}; -static const GLubyte Helvetica10_Character_208[] = { 8, 0, 0, 0,120, 68, 66, 66,242, 66, 68,120, 0, 0, 0}; -static const GLubyte Helvetica10_Character_209[] = { 8, 0, 0, 0, 70, 70, 74, 74, 82, 82, 98, 98, 0, 40, 20}; -static const GLubyte Helvetica10_Character_210[] = { 8, 0, 0, 0, 60, 66, 66, 66, 66, 66, 66, 60, 0, 8, 16}; -static const GLubyte Helvetica10_Character_211[] = { 8, 0, 0, 0, 60, 66, 66, 66, 66, 66, 66, 60, 0, 8, 4}; -static const GLubyte Helvetica10_Character_212[] = { 8, 0, 0, 0, 60, 66, 66, 66, 66, 66, 66, 60, 0, 20, 8}; -static const GLubyte Helvetica10_Character_213[] = { 8, 0, 0, 0, 60, 66, 66, 66, 66, 66, 66, 60, 0, 40, 20}; -static const GLubyte Helvetica10_Character_214[] = { 8, 0, 0, 0, 60, 66, 66, 66, 66, 66, 66, 60, 0, 36, 0}; -static const GLubyte Helvetica10_Character_215[] = { 6, 0, 0, 0, 0,136, 80, 32, 80,136, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_216[] = { 8, 0, 0, 64, 60, 98, 82, 82, 74, 74, 70, 60, 2, 0, 0}; -static const GLubyte Helvetica10_Character_217[] = { 8, 0, 0, 0, 60, 66, 66, 66, 66, 66, 66, 66, 0, 8, 16}; -static const GLubyte Helvetica10_Character_218[] = { 8, 0, 0, 0, 60, 66, 66, 66, 66, 66, 66, 66, 0, 16, 8}; -static const GLubyte Helvetica10_Character_219[] = { 8, 0, 0, 0, 60, 66, 66, 66, 66, 66, 66, 66, 0, 20, 8}; -static const GLubyte Helvetica10_Character_220[] = { 8, 0, 0, 0, 60, 66, 66, 66, 66, 66, 66, 66, 0, 36, 0}; -static const GLubyte Helvetica10_Character_221[] = { 7, 0, 0, 0, 16, 16, 16, 40, 40, 68, 68,130, 0, 16, 8}; -static const GLubyte Helvetica10_Character_222[] = { 7, 0, 0, 0, 64, 64,120, 68, 68,120, 64, 64, 0, 0, 0}; -static const GLubyte Helvetica10_Character_223[] = { 5, 0, 0, 0,160,144,144,144,160,144,144, 96, 0, 0, 0}; -static const GLubyte Helvetica10_Character_224[] = { 5, 0, 0, 0,104,144,144,112, 16,224, 0, 32, 64, 0, 0}; -static const GLubyte Helvetica10_Character_225[] = { 5, 0, 0, 0,104,144,144,112, 16,224, 0, 32, 16, 0, 0}; -static const GLubyte Helvetica10_Character_226[] = { 5, 0, 0, 0,104,144,144,112, 16,224, 0, 80, 32, 0, 0}; -static const GLubyte Helvetica10_Character_227[] = { 5, 0, 0, 0,104,144,144,112, 16,224, 0,160, 80, 0, 0}; -static const GLubyte Helvetica10_Character_228[] = { 5, 0, 0, 0,104,144,144,112, 16,224, 0, 80, 0, 0, 0}; -static const GLubyte Helvetica10_Character_229[] = { 5, 0, 0, 0,104,144,144,112, 16,224, 32, 80, 32, 0, 0}; -static const GLubyte Helvetica10_Character_230[] = { 8, 0, 0, 0,108,146,144,126, 18,236, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_231[] = { 5, 0, 96, 32, 96,144,128,128,144, 96, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_232[] = { 5, 0, 0, 0, 96,144,128,240,144, 96, 0, 32, 64, 0, 0}; -static const GLubyte Helvetica10_Character_233[] = { 5, 0, 0, 0, 96,144,128,240,144, 96, 0, 64, 32, 0, 0}; -static const GLubyte Helvetica10_Character_234[] = { 5, 0, 0, 0, 96,144,128,240,144, 96, 0, 80, 32, 0, 0}; -static const GLubyte Helvetica10_Character_235[] = { 5, 0, 0, 0, 96,144,128,240,144, 96, 0, 80, 0, 0, 0}; -static const GLubyte Helvetica10_Character_236[] = { 2, 0, 0, 0,128,128,128,128,128,128, 0,128, 0, 0, 0}; -static const GLubyte Helvetica10_Character_237[] = { 2, 0, 0, 0,128,128,128,128,128,128, 0,128, 64, 0, 0}; -static const GLubyte Helvetica10_Character_238[] = { 2, 0, 0, 0,128,128,128,128,128,128, 0, 64,128, 0, 0}; -static const GLubyte Helvetica10_Character_239[] = { 2, 0, 0, 0, 64, 64, 64, 64, 64, 64, 0,160, 0, 0, 0}; -static const GLubyte Helvetica10_Character_240[] = { 6, 0, 0, 0,112,136,136,136,136,120,144, 96, 80, 0, 0}; -static const GLubyte Helvetica10_Character_241[] = { 5, 0, 0, 0,144,144,144,144,144,224, 0,160, 80, 0, 0}; -static const GLubyte Helvetica10_Character_242[] = { 6, 0, 0, 0,112,136,136,136,136,112, 0, 32, 64, 0, 0}; -static const GLubyte Helvetica10_Character_243[] = { 6, 0, 0, 0,112,136,136,136,136,112, 0, 32, 16, 0, 0}; -static const GLubyte Helvetica10_Character_244[] = { 6, 0, 0, 0,112,136,136,136,136,112, 0, 80, 32, 0, 0}; -static const GLubyte Helvetica10_Character_245[] = { 6, 0, 0, 0,112,136,136,136,136,112, 0, 80, 40, 0, 0}; -static const GLubyte Helvetica10_Character_246[] = { 6, 0, 0, 0,112,136,136,136,136,112, 0, 80, 0, 0, 0}; -static const GLubyte Helvetica10_Character_247[] = { 6, 0, 0, 0, 0, 32, 0,248, 0, 32, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_248[] = { 6, 0, 0, 0,112,136,200,168,152,116, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica10_Character_249[] = { 5, 0, 0, 0,112,144,144,144,144,144, 0, 32, 64, 0, 0}; -static const GLubyte Helvetica10_Character_250[] = { 5, 0, 0, 0,112,144,144,144,144,144, 0, 64, 32, 0, 0}; -static const GLubyte Helvetica10_Character_251[] = { 5, 0, 0, 0,112,144,144,144,144,144, 0, 80, 32, 0, 0}; -static const GLubyte Helvetica10_Character_252[] = { 5, 0, 0, 0,112,144,144,144,144,144, 0, 80, 0, 0, 0}; -static const GLubyte Helvetica10_Character_253[] = { 5, 0,128, 64, 64, 96,160,160,144,144, 0, 32, 16, 0, 0}; -static const GLubyte Helvetica10_Character_254[] = { 6, 0,128,128,176,200,136,136,200,176,128,128, 0, 0, 0}; -static const GLubyte Helvetica10_Character_255[] = { 5, 0,128, 64, 64, 96,160,160,144,144, 0, 80, 0, 0, 0}; - -/* The font characters mapping: */ -static const GLubyte* Helvetica10_Character_Map[] = {Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032, - Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032, - Helvetica10_Character_032,Helvetica10_Character_033,Helvetica10_Character_034,Helvetica10_Character_035,Helvetica10_Character_036,Helvetica10_Character_037,Helvetica10_Character_038,Helvetica10_Character_039,Helvetica10_Character_040,Helvetica10_Character_041,Helvetica10_Character_042,Helvetica10_Character_043,Helvetica10_Character_044,Helvetica10_Character_045,Helvetica10_Character_046,Helvetica10_Character_047, - Helvetica10_Character_048,Helvetica10_Character_049,Helvetica10_Character_050,Helvetica10_Character_051,Helvetica10_Character_052,Helvetica10_Character_053,Helvetica10_Character_054,Helvetica10_Character_055,Helvetica10_Character_056,Helvetica10_Character_057,Helvetica10_Character_058,Helvetica10_Character_059,Helvetica10_Character_060,Helvetica10_Character_061,Helvetica10_Character_062,Helvetica10_Character_063, - Helvetica10_Character_064,Helvetica10_Character_065,Helvetica10_Character_066,Helvetica10_Character_067,Helvetica10_Character_068,Helvetica10_Character_069,Helvetica10_Character_070,Helvetica10_Character_071,Helvetica10_Character_072,Helvetica10_Character_073,Helvetica10_Character_074,Helvetica10_Character_075,Helvetica10_Character_076,Helvetica10_Character_077,Helvetica10_Character_078,Helvetica10_Character_079, - Helvetica10_Character_080,Helvetica10_Character_081,Helvetica10_Character_082,Helvetica10_Character_083,Helvetica10_Character_084,Helvetica10_Character_085,Helvetica10_Character_086,Helvetica10_Character_087,Helvetica10_Character_088,Helvetica10_Character_089,Helvetica10_Character_090,Helvetica10_Character_091,Helvetica10_Character_092,Helvetica10_Character_093,Helvetica10_Character_094,Helvetica10_Character_095, - Helvetica10_Character_096,Helvetica10_Character_097,Helvetica10_Character_098,Helvetica10_Character_099,Helvetica10_Character_100,Helvetica10_Character_101,Helvetica10_Character_102,Helvetica10_Character_103,Helvetica10_Character_104,Helvetica10_Character_105,Helvetica10_Character_106,Helvetica10_Character_107,Helvetica10_Character_108,Helvetica10_Character_109,Helvetica10_Character_110,Helvetica10_Character_111, - Helvetica10_Character_112,Helvetica10_Character_113,Helvetica10_Character_114,Helvetica10_Character_115,Helvetica10_Character_116,Helvetica10_Character_117,Helvetica10_Character_118,Helvetica10_Character_119,Helvetica10_Character_120,Helvetica10_Character_121,Helvetica10_Character_122,Helvetica10_Character_123,Helvetica10_Character_124,Helvetica10_Character_125,Helvetica10_Character_126,Helvetica10_Character_032, - Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032, - Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032,Helvetica10_Character_032, - Helvetica10_Character_160,Helvetica10_Character_161,Helvetica10_Character_162,Helvetica10_Character_163,Helvetica10_Character_164,Helvetica10_Character_165,Helvetica10_Character_166,Helvetica10_Character_167,Helvetica10_Character_168,Helvetica10_Character_169,Helvetica10_Character_170,Helvetica10_Character_171,Helvetica10_Character_172,Helvetica10_Character_173,Helvetica10_Character_174,Helvetica10_Character_175, - Helvetica10_Character_176,Helvetica10_Character_177,Helvetica10_Character_178,Helvetica10_Character_179,Helvetica10_Character_180,Helvetica10_Character_181,Helvetica10_Character_182,Helvetica10_Character_183,Helvetica10_Character_184,Helvetica10_Character_185,Helvetica10_Character_186,Helvetica10_Character_187,Helvetica10_Character_188,Helvetica10_Character_189,Helvetica10_Character_190,Helvetica10_Character_191, - Helvetica10_Character_192,Helvetica10_Character_193,Helvetica10_Character_194,Helvetica10_Character_195,Helvetica10_Character_196,Helvetica10_Character_197,Helvetica10_Character_198,Helvetica10_Character_199,Helvetica10_Character_200,Helvetica10_Character_201,Helvetica10_Character_202,Helvetica10_Character_203,Helvetica10_Character_204,Helvetica10_Character_205,Helvetica10_Character_206,Helvetica10_Character_207, - Helvetica10_Character_208,Helvetica10_Character_209,Helvetica10_Character_210,Helvetica10_Character_211,Helvetica10_Character_212,Helvetica10_Character_213,Helvetica10_Character_214,Helvetica10_Character_215,Helvetica10_Character_216,Helvetica10_Character_217,Helvetica10_Character_218,Helvetica10_Character_219,Helvetica10_Character_220,Helvetica10_Character_221,Helvetica10_Character_222,Helvetica10_Character_223, - Helvetica10_Character_224,Helvetica10_Character_225,Helvetica10_Character_226,Helvetica10_Character_227,Helvetica10_Character_228,Helvetica10_Character_229,Helvetica10_Character_230,Helvetica10_Character_231,Helvetica10_Character_232,Helvetica10_Character_233,Helvetica10_Character_234,Helvetica10_Character_235,Helvetica10_Character_236,Helvetica10_Character_237,Helvetica10_Character_238,Helvetica10_Character_239, - Helvetica10_Character_240,Helvetica10_Character_241,Helvetica10_Character_242,Helvetica10_Character_243,Helvetica10_Character_244,Helvetica10_Character_245,Helvetica10_Character_246,Helvetica10_Character_247,Helvetica10_Character_248,Helvetica10_Character_249,Helvetica10_Character_250,Helvetica10_Character_251,Helvetica10_Character_252,Helvetica10_Character_253,Helvetica10_Character_254,Helvetica10_Character_255,NULL}; - -/* The font structure: */ -const SFG_Font fgFontHelvetica10 = { "-adobe-helvetica-medium-r-normal--10-100-75-75-p-56-iso8859-1", 256, 14, Helvetica10_Character_Map, 0, 3 }; - -static const GLubyte Helvetica12_Character_000[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_001[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_002[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_003[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_004[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_005[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_006[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_007[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_008[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_009[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_010[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_011[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_012[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_013[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_014[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_015[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_016[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_017[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_018[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_019[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_020[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_021[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_022[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_023[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_024[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_025[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_026[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_027[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_028[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_029[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_030[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_031[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_032[] = { 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_033[] = { 3, 0, 0, 0, 0, 64, 0, 64, 64, 64, 64, 64, 64, 64, 0, 0, 0}; -static const GLubyte Helvetica12_Character_034[] = { 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 80, 80, 0, 0, 0}; -static const GLubyte Helvetica12_Character_035[] = { 7, 0, 0, 0, 0, 80, 80, 80,252, 40,252, 40, 40, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_036[] = { 7, 0, 0, 0, 16, 56, 84, 84, 20, 56, 80, 84, 56, 16, 0, 0, 0}; -static const GLubyte Helvetica12_Character_037[] = { 11, 0, 0, 0, 0, 0, 0, 0, 0, 17,128, 10, 64, 10, 64, 9,128, 4, 0, 52, 0, 74, 0, 74, 0, 49, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_038[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 57, 0, 70, 0, 66, 0, 69, 0, 40, 0, 24, 0, 36, 0, 36, 0, 24, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_039[] = { 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 32, 96, 0, 0, 0}; -static const GLubyte Helvetica12_Character_040[] = { 4, 0, 16, 32, 32, 64, 64, 64, 64, 64, 64, 32, 32, 16, 0, 0, 0}; -static const GLubyte Helvetica12_Character_041[] = { 4, 0,128, 64, 64, 32, 32, 32, 32, 32, 32, 64, 64,128, 0, 0, 0}; -static const GLubyte Helvetica12_Character_042[] = { 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 32, 80, 0, 0, 0}; -static const GLubyte Helvetica12_Character_043[] = { 7, 0, 0, 0, 0, 0, 16, 16,124, 16, 16, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_044[] = { 4, 0, 0, 64, 32, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_045[] = { 8, 0, 0, 0, 0, 0, 0, 0,124, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_046[] = { 3, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_047[] = { 4, 0, 0, 0, 0,128,128, 64, 64, 64, 32, 32, 16, 16, 0, 0, 0}; -static const GLubyte Helvetica12_Character_048[] = { 7, 0, 0, 0, 0, 56, 68, 68, 68, 68, 68, 68, 68, 56, 0, 0, 0}; -static const GLubyte Helvetica12_Character_049[] = { 7, 0, 0, 0, 0, 16, 16, 16, 16, 16, 16, 16,112, 16, 0, 0, 0}; -static const GLubyte Helvetica12_Character_050[] = { 7, 0, 0, 0, 0,124, 64, 64, 32, 16, 8, 4, 68, 56, 0, 0, 0}; -static const GLubyte Helvetica12_Character_051[] = { 7, 0, 0, 0, 0, 56, 68, 68, 4, 4, 24, 4, 68, 56, 0, 0, 0}; -static const GLubyte Helvetica12_Character_052[] = { 7, 0, 0, 0, 0, 8, 8,252,136, 72, 40, 40, 24, 8, 0, 0, 0}; -static const GLubyte Helvetica12_Character_053[] = { 7, 0, 0, 0, 0, 56, 68, 68, 4, 4,120, 64, 64,124, 0, 0, 0}; -static const GLubyte Helvetica12_Character_054[] = { 7, 0, 0, 0, 0, 56, 68, 68, 68,100, 88, 64, 68, 56, 0, 0, 0}; -static const GLubyte Helvetica12_Character_055[] = { 7, 0, 0, 0, 0, 32, 32, 16, 16, 16, 8, 8, 4,124, 0, 0, 0}; -static const GLubyte Helvetica12_Character_056[] = { 7, 0, 0, 0, 0, 56, 68, 68, 68, 68, 56, 68, 68, 56, 0, 0, 0}; -static const GLubyte Helvetica12_Character_057[] = { 7, 0, 0, 0, 0, 56, 68, 4, 4, 60, 68, 68, 68, 56, 0, 0, 0}; -static const GLubyte Helvetica12_Character_058[] = { 3, 0, 0, 0, 0, 64, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_059[] = { 3, 0, 0,128, 64, 64, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_060[] = { 7, 0, 0, 0, 0, 0, 12, 48,192, 48, 12, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_061[] = { 7, 0, 0, 0, 0, 0, 0,124, 0,124, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_062[] = { 7, 0, 0, 0, 0, 0, 96, 24, 6, 24, 96, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_063[] = { 7, 0, 0, 0, 0, 16, 0, 16, 16, 8, 8, 68, 68, 56, 0, 0, 0}; -static const GLubyte Helvetica12_Character_064[] = { 12, 0, 0, 0, 0, 0, 0, 31, 0, 32, 0, 77,128, 83, 64, 81, 32, 81, 32, 73, 32, 38,160, 48, 64, 15,128, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_065[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 65, 0, 65, 0, 62, 0, 34, 0, 34, 0, 20, 0, 20, 0, 8, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_066[] = { 8, 0, 0, 0, 0,124, 66, 66, 66,124, 66, 66, 66,124, 0, 0, 0}; -static const GLubyte Helvetica12_Character_067[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 30, 0, 33, 0, 64, 0, 64, 0, 64, 0, 64, 0, 64, 0, 33, 0, 30, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_068[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0,124, 0, 66, 0, 65, 0, 65, 0, 65, 0, 65, 0, 65, 0, 66, 0,124, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_069[] = { 8, 0, 0, 0, 0,126, 64, 64, 64,126, 64, 64, 64,126, 0, 0, 0}; -static const GLubyte Helvetica12_Character_070[] = { 8, 0, 0, 0, 0, 64, 64, 64, 64,124, 64, 64, 64,126, 0, 0, 0}; -static const GLubyte Helvetica12_Character_071[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 29, 0, 35, 0, 65, 0, 65, 0, 71, 0, 64, 0, 64, 0, 33, 0, 30, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_072[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 65, 0, 65, 0, 65, 0,127, 0, 65, 0, 65, 0, 65, 0, 65, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_073[] = { 3, 0, 0, 0, 0, 64, 64, 64, 64, 64, 64, 64, 64, 64, 0, 0, 0}; -static const GLubyte Helvetica12_Character_074[] = { 7, 0, 0, 0, 0, 56, 68, 68, 4, 4, 4, 4, 4, 4, 0, 0, 0}; -static const GLubyte Helvetica12_Character_075[] = { 8, 0, 0, 0, 0, 65, 66, 68, 72,112, 80, 72, 68, 66, 0, 0, 0}; -static const GLubyte Helvetica12_Character_076[] = { 7, 0, 0, 0, 0,124, 64, 64, 64, 64, 64, 64, 64, 64, 0, 0, 0}; -static const GLubyte Helvetica12_Character_077[] = { 11, 0, 0, 0, 0, 0, 0, 0, 0, 68, 64, 68, 64, 74, 64, 74, 64, 81, 64, 81, 64, 96,192, 96,192, 64, 64, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_078[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 67, 0, 69, 0, 69, 0, 73, 0, 81, 0, 81, 0, 97, 0, 65, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_079[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 30, 0, 33, 0, 64,128, 64,128, 64,128, 64,128, 64,128, 33, 0, 30, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_080[] = { 8, 0, 0, 0, 0, 64, 64, 64, 64,124, 66, 66, 66,124, 0, 0, 0}; -static const GLubyte Helvetica12_Character_081[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 30,128, 33, 0, 66,128, 68,128, 64,128, 64,128, 64,128, 33, 0, 30, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_082[] = { 8, 0, 0, 0, 0, 66, 66, 66, 68,124, 66, 66, 66,124, 0, 0, 0}; -static const GLubyte Helvetica12_Character_083[] = { 8, 0, 0, 0, 0, 60, 66, 66, 2, 12, 48, 64, 66, 60, 0, 0, 0}; -static const GLubyte Helvetica12_Character_084[] = { 7, 0, 0, 0, 0, 16, 16, 16, 16, 16, 16, 16, 16,254, 0, 0, 0}; -static const GLubyte Helvetica12_Character_085[] = { 8, 0, 0, 0, 0, 60, 66, 66, 66, 66, 66, 66, 66, 66, 0, 0, 0}; -static const GLubyte Helvetica12_Character_086[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 8, 0, 20, 0, 20, 0, 34, 0, 34, 0, 34, 0, 65, 0, 65, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_087[] = { 11, 0, 0, 0, 0, 0, 0, 0, 0, 17, 0, 17, 0, 17, 0, 42,128, 42,128, 36,128, 68, 64, 68, 64, 68, 64, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_088[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 34, 0, 34, 0, 20, 0, 8, 0, 20, 0, 34, 0, 34, 0, 65, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_089[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 8, 0, 8, 0, 8, 0, 20, 0, 34, 0, 34, 0, 65, 0, 65, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_090[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0,127, 0, 64, 0, 32, 0, 16, 0, 8, 0, 4, 0, 2, 0, 1, 0,127, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_091[] = { 3, 0, 96, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 96, 0, 0, 0}; -static const GLubyte Helvetica12_Character_092[] = { 4, 0, 0, 0, 0, 16, 16, 32, 32, 32, 64, 64,128,128, 0, 0, 0}; -static const GLubyte Helvetica12_Character_093[] = { 3, 0,192, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64,192, 0, 0, 0}; -static const GLubyte Helvetica12_Character_094[] = { 6, 0, 0, 0, 0, 0, 0, 0, 0, 0,136, 80, 32, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_095[] = { 7, 0, 0,254, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_096[] = { 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,192,128, 64, 0, 0, 0}; -static const GLubyte Helvetica12_Character_097[] = { 7, 0, 0, 0, 0, 58, 68, 68, 60, 4, 68, 56, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_098[] = { 7, 0, 0, 0, 0, 88,100, 68, 68, 68,100, 88, 64, 64, 0, 0, 0}; -static const GLubyte Helvetica12_Character_099[] = { 7, 0, 0, 0, 0, 56, 68, 64, 64, 64, 68, 56, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_100[] = { 7, 0, 0, 0, 0, 52, 76, 68, 68, 68, 76, 52, 4, 4, 0, 0, 0}; -static const GLubyte Helvetica12_Character_101[] = { 7, 0, 0, 0, 0, 56, 68, 64,124, 68, 68, 56, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_102[] = { 3, 0, 0, 0, 0, 64, 64, 64, 64, 64, 64,224, 64, 48, 0, 0, 0}; -static const GLubyte Helvetica12_Character_103[] = { 7, 0, 56, 68, 4, 52, 76, 68, 68, 68, 76, 52, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_104[] = { 7, 0, 0, 0, 0, 68, 68, 68, 68, 68,100, 88, 64, 64, 0, 0, 0}; -static const GLubyte Helvetica12_Character_105[] = { 3, 0, 0, 0, 0, 64, 64, 64, 64, 64, 64, 64, 0, 64, 0, 0, 0}; -static const GLubyte Helvetica12_Character_106[] = { 3, 0,128, 64, 64, 64, 64, 64, 64, 64, 64, 64, 0, 64, 0, 0, 0}; -static const GLubyte Helvetica12_Character_107[] = { 6, 0, 0, 0, 0, 68, 72, 80, 96, 96, 80, 72, 64, 64, 0, 0, 0}; -static const GLubyte Helvetica12_Character_108[] = { 3, 0, 0, 0, 0, 64, 64, 64, 64, 64, 64, 64, 64, 64, 0, 0, 0}; -static const GLubyte Helvetica12_Character_109[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 73, 0, 73, 0, 73, 0, 73, 0, 73, 0,109, 0, 82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_110[] = { 7, 0, 0, 0, 0, 68, 68, 68, 68, 68,100, 88, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_111[] = { 7, 0, 0, 0, 0, 56, 68, 68, 68, 68, 68, 56, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_112[] = { 7, 0, 64, 64, 64, 88,100, 68, 68, 68,100, 88, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_113[] = { 7, 0, 4, 4, 4, 52, 76, 68, 68, 68, 76, 52, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_114[] = { 4, 0, 0, 0, 0, 64, 64, 64, 64, 64, 96, 80, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_115[] = { 6, 0, 0, 0, 0, 48, 72, 8, 48, 64, 72, 48, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_116[] = { 3, 0, 0, 0, 0, 96, 64, 64, 64, 64, 64,224, 64, 64, 0, 0, 0}; -static const GLubyte Helvetica12_Character_117[] = { 7, 0, 0, 0, 0, 52, 76, 68, 68, 68, 68, 68, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_118[] = { 7, 0, 0, 0, 0, 16, 16, 40, 40, 68, 68, 68, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_119[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 34, 0, 85, 0, 73, 0, 73, 0,136,128,136,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_120[] = { 6, 0, 0, 0, 0,132,132, 72, 48, 48, 72,132, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_121[] = { 7, 0, 64, 32, 16, 16, 40, 40, 72, 68, 68, 68, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_122[] = { 6, 0, 0, 0, 0,120, 64, 32, 32, 16, 8,120, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_123[] = { 4, 0, 48, 64, 64, 64, 64, 64,128, 64, 64, 64, 64, 48, 0, 0, 0}; -static const GLubyte Helvetica12_Character_124[] = { 3, 0, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 0, 0, 0}; -static const GLubyte Helvetica12_Character_125[] = { 4, 0,192, 32, 32, 32, 32, 32, 16, 32, 32, 32, 32,192, 0, 0, 0}; -static const GLubyte Helvetica12_Character_126[] = { 7, 0, 0, 0, 0, 0, 0, 0,152,100, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_127[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_128[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_129[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_130[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_131[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_132[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_133[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_134[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_135[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_136[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_137[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_138[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_139[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_140[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_141[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_142[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_143[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_144[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_145[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_146[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_147[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_148[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_149[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_150[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_151[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_152[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_153[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_154[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_155[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_156[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_157[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_158[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_159[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 65, 0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_160[] = { 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_161[] = { 3, 0, 64, 64, 64, 64, 64, 64, 64, 64, 0, 64, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_162[] = { 7, 0, 0, 0, 32, 56,100, 80, 80, 80, 84, 56, 8, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_163[] = { 7, 0, 0, 0, 0, 88, 36, 16, 16,120, 32, 32, 36, 24, 0, 0, 0}; -static const GLubyte Helvetica12_Character_164[] = { 7, 0, 0, 0, 0, 0,132,120, 72, 72,120,132, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_165[] = { 7, 0, 0, 0, 0, 16, 16,124, 16,124, 16, 40, 68, 68, 0, 0, 0}; -static const GLubyte Helvetica12_Character_166[] = { 3, 0, 0, 64, 64, 64, 64, 0, 0, 0, 64, 64, 64, 64, 0, 0, 0}; -static const GLubyte Helvetica12_Character_167[] = { 6, 0,112,136, 8, 48, 72,136,136,144, 96,128,136,112, 0, 0, 0}; -static const GLubyte Helvetica12_Character_168[] = { 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,160, 0, 0, 0}; -static const GLubyte Helvetica12_Character_169[] = { 11, 0, 0, 0, 0, 0, 0, 0, 0, 31, 0, 32,128, 78, 64, 81, 64, 80, 64, 81, 64, 78, 64, 32,128, 31, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_170[] = { 5, 0, 0, 0, 0, 0, 0, 0, 0,112, 0, 80, 16,112, 0, 0, 0}; -static const GLubyte Helvetica12_Character_171[] = { 7, 0, 0, 0, 0, 0, 20, 40, 80, 40, 20, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_172[] = { 8, 0, 0, 0, 0, 0, 0, 2, 2, 2,126, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_173[] = { 5, 0, 0, 0, 0, 0, 0, 0,240, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_174[] = { 11, 0, 0, 0, 0, 0, 0, 0, 0, 31, 0, 32,128, 74, 64, 74, 64, 76, 64, 74, 64, 78, 64, 32,128, 31, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_175[] = { 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,240, 0, 0, 0}; -static const GLubyte Helvetica12_Character_176[] = { 5, 0, 0, 0, 0, 0, 0, 0, 0, 96,144,144, 96, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_177[] = { 7, 0, 0, 0, 0,124, 0, 16, 16,124, 16, 16, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_178[] = { 4, 0, 0, 0, 0, 0, 0, 0,240, 64, 32,144, 96, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_179[] = { 4, 0, 0, 0, 0, 0, 0, 0,192, 32, 64, 32,224, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_180[] = { 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128, 64, 0, 0}; -static const GLubyte Helvetica12_Character_181[] = { 7, 0, 64, 64, 64,116, 76, 68, 68, 68, 68, 68, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_182[] = { 7, 0, 40, 40, 40, 40, 40, 40,104,232,232,232,104, 60, 0, 0, 0}; -static const GLubyte Helvetica12_Character_183[] = { 3, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_184[] = { 3, 0,192, 32, 32, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_185[] = { 4, 0, 0, 0, 0, 0, 0, 0, 32, 32, 32, 96, 32, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_186[] = { 5, 0, 0, 0, 0, 0, 0, 0, 0,112, 0,112, 80,112, 0, 0, 0}; -static const GLubyte Helvetica12_Character_187[] = { 7, 0, 0, 0, 0, 0, 80, 40, 20, 40, 80, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_188[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 39,128, 21, 0, 19, 0, 73, 0, 68, 0, 68, 0,194, 0, 65, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_189[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 71,128, 34, 0, 17, 0, 20,128, 75, 0, 72, 0, 68, 0,194, 0, 65, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_190[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 33, 0, 23,128, 21, 0, 11, 0,201, 0, 36, 0, 68, 0, 34, 0,225, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_191[] = { 7, 0, 56, 68, 68, 32, 32, 16, 16, 0, 16, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_192[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 65, 0, 65, 0, 62, 0, 34, 0, 34, 0, 20, 0, 8, 0, 8, 0, 0, 0, 8, 0, 16, 0}; -static const GLubyte Helvetica12_Character_193[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 65, 0, 65, 0, 62, 0, 34, 0, 34, 0, 20, 0, 8, 0, 8, 0, 0, 0, 8, 0, 4, 0}; -static const GLubyte Helvetica12_Character_194[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 65, 0, 65, 0, 62, 0, 34, 0, 34, 0, 20, 0, 8, 0, 8, 0, 0, 0, 20, 0, 8, 0}; -static const GLubyte Helvetica12_Character_195[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 65, 0, 65, 0, 62, 0, 34, 0, 34, 0, 20, 0, 8, 0, 8, 0, 0, 0, 20, 0, 10, 0}; -static const GLubyte Helvetica12_Character_196[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 65, 0, 65, 0, 62, 0, 34, 0, 34, 0, 20, 0, 8, 0, 8, 0, 0, 0, 20, 0, 0, 0}; -static const GLubyte Helvetica12_Character_197[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 65, 0, 65, 0, 62, 0, 34, 0, 34, 0, 20, 0, 8, 0, 8, 0, 8, 0, 20, 0, 8, 0}; -static const GLubyte Helvetica12_Character_198[] = { 11, 0, 0, 0, 0, 0, 0, 0, 0, 71,192, 68, 0, 68, 0, 60, 0, 39,192, 36, 0, 20, 0, 20, 0, 15,192, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_199[] = { 9, 0, 0, 24, 0, 4, 0, 4, 0, 30, 0, 33, 0, 64, 0, 64, 0, 64, 0, 64, 0, 64, 0, 33, 0, 30, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_200[] = { 8, 0, 0, 0, 0,126, 64, 64, 64,126, 64, 64, 64,126, 0, 8, 16}; -static const GLubyte Helvetica12_Character_201[] = { 8, 0, 0, 0, 0,126, 64, 64, 64,126, 64, 64, 64,126, 0, 8, 4}; -static const GLubyte Helvetica12_Character_202[] = { 8, 0, 0, 0, 0,126, 64, 64, 64,126, 64, 64, 64,126, 0, 20, 8}; -static const GLubyte Helvetica12_Character_203[] = { 8, 0, 0, 0, 0,126, 64, 64, 64,126, 64, 64, 64,126, 0, 20, 0}; -static const GLubyte Helvetica12_Character_204[] = { 3, 0, 0, 0, 0, 64, 64, 64, 64, 64, 64, 64, 64, 64, 0, 64,128}; -static const GLubyte Helvetica12_Character_205[] = { 3, 0, 0, 0, 0, 64, 64, 64, 64, 64, 64, 64, 64, 64, 0, 64, 32}; -static const GLubyte Helvetica12_Character_206[] = { 3, 0, 0, 0, 0, 64, 64, 64, 64, 64, 64, 64, 64, 64, 0,160, 64}; -static const GLubyte Helvetica12_Character_207[] = { 3, 0, 0, 0, 0, 64, 64, 64, 64, 64, 64, 64, 64, 64, 0,160, 0}; -static const GLubyte Helvetica12_Character_208[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0,124, 0, 66, 0, 65, 0, 65, 0,241, 0, 65, 0, 65, 0, 66, 0,124, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_209[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 67, 0, 69, 0, 69, 0, 73, 0, 81, 0, 81, 0, 97, 0, 65, 0, 0, 0, 20, 0, 10, 0}; -static const GLubyte Helvetica12_Character_210[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 30, 0, 33, 0, 64,128, 64,128, 64,128, 64,128, 64,128, 33, 0, 30, 0, 0, 0, 4, 0, 8, 0}; -static const GLubyte Helvetica12_Character_211[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 30, 0, 33, 0, 64,128, 64,128, 64,128, 64,128, 64,128, 33, 0, 30, 0, 0, 0, 4, 0, 2, 0}; -static const GLubyte Helvetica12_Character_212[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 30, 0, 33, 0, 64,128, 64,128, 64,128, 64,128, 64,128, 33, 0, 30, 0, 0, 0, 10, 0, 4, 0}; -static const GLubyte Helvetica12_Character_213[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 30, 0, 33, 0, 64,128, 64,128, 64,128, 64,128, 64,128, 33, 0, 30, 0, 0, 0, 20, 0, 10, 0}; -static const GLubyte Helvetica12_Character_214[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 30, 0, 33, 0, 64,128, 64,128, 64,128, 64,128, 64,128, 33, 0, 30, 0, 0, 0, 18, 0, 0, 0}; -static const GLubyte Helvetica12_Character_215[] = { 7, 0, 0, 0, 0, 0, 68, 40, 16, 40, 68, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_216[] = { 10, 0, 0, 0, 0, 0, 0,128, 0, 94, 0, 33, 0, 80,128, 72,128, 68,128, 68,128, 66,128, 33, 0, 30,128, 0, 64, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_217[] = { 8, 0, 0, 0, 0, 60, 66, 66, 66, 66, 66, 66, 66, 66, 0, 8, 16}; -static const GLubyte Helvetica12_Character_218[] = { 8, 0, 0, 0, 0, 60, 66, 66, 66, 66, 66, 66, 66, 66, 0, 8, 4}; -static const GLubyte Helvetica12_Character_219[] = { 8, 0, 0, 0, 0, 60, 66, 66, 66, 66, 66, 66, 66, 66, 0, 20, 8}; -static const GLubyte Helvetica12_Character_220[] = { 8, 0, 0, 0, 0, 60, 66, 66, 66, 66, 66, 66, 66, 66, 0, 36, 0}; -static const GLubyte Helvetica12_Character_221[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 8, 0, 8, 0, 8, 0, 20, 0, 34, 0, 34, 0, 65, 0, 65, 0, 0, 0, 8, 0, 4, 0}; -static const GLubyte Helvetica12_Character_222[] = { 8, 0, 0, 0, 0, 64, 64,124, 66, 66, 66,124, 64, 64, 0, 0, 0}; -static const GLubyte Helvetica12_Character_223[] = { 7, 0, 0, 0, 0, 88, 68, 68, 68, 88, 68, 68, 68, 56, 0, 0, 0}; -static const GLubyte Helvetica12_Character_224[] = { 7, 0, 0, 0, 0, 58, 68, 68, 60, 4, 68, 56, 0, 8, 16, 0, 0}; -static const GLubyte Helvetica12_Character_225[] = { 7, 0, 0, 0, 0, 58, 68, 68, 60, 4, 68, 56, 0, 16, 8, 0, 0}; -static const GLubyte Helvetica12_Character_226[] = { 7, 0, 0, 0, 0, 58, 68, 68, 60, 4, 68, 56, 0, 40, 16, 0, 0}; -static const GLubyte Helvetica12_Character_227[] = { 7, 0, 0, 0, 0, 58, 68, 68, 60, 4, 68, 56, 0, 40, 20, 0, 0}; -static const GLubyte Helvetica12_Character_228[] = { 7, 0, 0, 0, 0, 58, 68, 68, 60, 4, 68, 56, 0, 40, 0, 0, 0}; -static const GLubyte Helvetica12_Character_229[] = { 7, 0, 0, 0, 0, 58, 68, 68, 60, 4, 68, 56, 24, 36, 24, 0, 0}; -static const GLubyte Helvetica12_Character_230[] = { 11, 0, 0, 0, 0, 0, 0, 0, 0, 59,128, 68, 64, 68, 0, 63,192, 4, 64, 68, 64, 59,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_231[] = { 7, 0, 48, 8, 16, 56, 68, 64, 64, 64, 68, 56, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_232[] = { 7, 0, 0, 0, 0, 56, 68, 64,124, 68, 68, 56, 0, 16, 32, 0, 0}; -static const GLubyte Helvetica12_Character_233[] = { 7, 0, 0, 0, 0, 56, 68, 64,124, 68, 68, 56, 0, 16, 8, 0, 0}; -static const GLubyte Helvetica12_Character_234[] = { 7, 0, 0, 0, 0, 56, 68, 64,124, 68, 68, 56, 0, 40, 16, 0, 0}; -static const GLubyte Helvetica12_Character_235[] = { 7, 0, 0, 0, 0, 56, 68, 64,124, 68, 68, 56, 0, 40, 0, 0, 0}; -static const GLubyte Helvetica12_Character_236[] = { 3, 0, 0, 0, 0, 64, 64, 64, 64, 64, 64, 64, 0, 64,128, 0, 0}; -static const GLubyte Helvetica12_Character_237[] = { 3, 0, 0, 0, 0, 64, 64, 64, 64, 64, 64, 64, 0, 64, 32, 0, 0}; -static const GLubyte Helvetica12_Character_238[] = { 3, 0, 0, 0, 0, 64, 64, 64, 64, 64, 64, 64, 0,160, 64, 0, 0}; -static const GLubyte Helvetica12_Character_239[] = { 3, 0, 0, 0, 0, 64, 64, 64, 64, 64, 64, 64, 0,160, 0, 0, 0}; -static const GLubyte Helvetica12_Character_240[] = { 7, 0, 0, 0, 0, 56, 68, 68, 68, 68, 60, 4, 40, 24, 52, 0, 0}; -static const GLubyte Helvetica12_Character_241[] = { 7, 0, 0, 0, 0, 68, 68, 68, 68, 68,100, 88, 0, 40, 20, 0, 0}; -static const GLubyte Helvetica12_Character_242[] = { 7, 0, 0, 0, 0, 56, 68, 68, 68, 68, 68, 56, 0, 16, 32, 0, 0}; -static const GLubyte Helvetica12_Character_243[] = { 7, 0, 0, 0, 0, 56, 68, 68, 68, 68, 68, 56, 0, 16, 8, 0, 0}; -static const GLubyte Helvetica12_Character_244[] = { 7, 0, 0, 0, 0, 56, 68, 68, 68, 68, 68, 56, 0, 40, 16, 0, 0}; -static const GLubyte Helvetica12_Character_245[] = { 7, 0, 0, 0, 0, 56, 68, 68, 68, 68, 68, 56, 0, 40, 20, 0, 0}; -static const GLubyte Helvetica12_Character_246[] = { 7, 0, 0, 0, 0, 56, 68, 68, 68, 68, 68, 56, 0, 40, 0, 0, 0}; -static const GLubyte Helvetica12_Character_247[] = { 7, 0, 0, 0, 0, 0, 16, 0,124, 0, 16, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_248[] = { 7, 0, 0, 0, 0,184, 68,100, 84, 76, 68, 58, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica12_Character_249[] = { 7, 0, 0, 0, 0, 52, 76, 68, 68, 68, 68, 68, 0, 16, 32, 0, 0}; -static const GLubyte Helvetica12_Character_250[] = { 7, 0, 0, 0, 0, 52, 76, 68, 68, 68, 68, 68, 0, 16, 8, 0, 0}; -static const GLubyte Helvetica12_Character_251[] = { 7, 0, 0, 0, 0, 52, 76, 68, 68, 68, 68, 68, 0, 40, 16, 0, 0}; -static const GLubyte Helvetica12_Character_252[] = { 7, 0, 0, 0, 0, 52, 76, 68, 68, 68, 68, 68, 0, 40, 0, 0, 0}; -static const GLubyte Helvetica12_Character_253[] = { 7, 0, 64, 32, 16, 16, 40, 40, 72, 68, 68, 68, 0, 16, 8, 0, 0}; -static const GLubyte Helvetica12_Character_254[] = { 7, 0, 64, 64, 64, 88,100, 68, 68, 68,100, 88, 64, 64, 0, 0, 0}; -static const GLubyte Helvetica12_Character_255[] = { 7, 0, 96, 16, 16, 16, 24, 40, 40, 36, 68, 68, 0, 40, 0, 0, 0}; - -/* The font characters mapping: */ -static const GLubyte* Helvetica12_Character_Map[] = {Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032, - Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032, - Helvetica12_Character_032,Helvetica12_Character_033,Helvetica12_Character_034,Helvetica12_Character_035,Helvetica12_Character_036,Helvetica12_Character_037,Helvetica12_Character_038,Helvetica12_Character_039,Helvetica12_Character_040,Helvetica12_Character_041,Helvetica12_Character_042,Helvetica12_Character_043,Helvetica12_Character_044,Helvetica12_Character_045,Helvetica12_Character_046,Helvetica12_Character_047, - Helvetica12_Character_048,Helvetica12_Character_049,Helvetica12_Character_050,Helvetica12_Character_051,Helvetica12_Character_052,Helvetica12_Character_053,Helvetica12_Character_054,Helvetica12_Character_055,Helvetica12_Character_056,Helvetica12_Character_057,Helvetica12_Character_058,Helvetica12_Character_059,Helvetica12_Character_060,Helvetica12_Character_061,Helvetica12_Character_062,Helvetica12_Character_063, - Helvetica12_Character_064,Helvetica12_Character_065,Helvetica12_Character_066,Helvetica12_Character_067,Helvetica12_Character_068,Helvetica12_Character_069,Helvetica12_Character_070,Helvetica12_Character_071,Helvetica12_Character_072,Helvetica12_Character_073,Helvetica12_Character_074,Helvetica12_Character_075,Helvetica12_Character_076,Helvetica12_Character_077,Helvetica12_Character_078,Helvetica12_Character_079, - Helvetica12_Character_080,Helvetica12_Character_081,Helvetica12_Character_082,Helvetica12_Character_083,Helvetica12_Character_084,Helvetica12_Character_085,Helvetica12_Character_086,Helvetica12_Character_087,Helvetica12_Character_088,Helvetica12_Character_089,Helvetica12_Character_090,Helvetica12_Character_091,Helvetica12_Character_092,Helvetica12_Character_093,Helvetica12_Character_094,Helvetica12_Character_095, - Helvetica12_Character_096,Helvetica12_Character_097,Helvetica12_Character_098,Helvetica12_Character_099,Helvetica12_Character_100,Helvetica12_Character_101,Helvetica12_Character_102,Helvetica12_Character_103,Helvetica12_Character_104,Helvetica12_Character_105,Helvetica12_Character_106,Helvetica12_Character_107,Helvetica12_Character_108,Helvetica12_Character_109,Helvetica12_Character_110,Helvetica12_Character_111, - Helvetica12_Character_112,Helvetica12_Character_113,Helvetica12_Character_114,Helvetica12_Character_115,Helvetica12_Character_116,Helvetica12_Character_117,Helvetica12_Character_118,Helvetica12_Character_119,Helvetica12_Character_120,Helvetica12_Character_121,Helvetica12_Character_122,Helvetica12_Character_123,Helvetica12_Character_124,Helvetica12_Character_125,Helvetica12_Character_126,Helvetica12_Character_032, - Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032, - Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032,Helvetica12_Character_032, - Helvetica12_Character_160,Helvetica12_Character_161,Helvetica12_Character_162,Helvetica12_Character_163,Helvetica12_Character_164,Helvetica12_Character_165,Helvetica12_Character_166,Helvetica12_Character_167,Helvetica12_Character_168,Helvetica12_Character_169,Helvetica12_Character_170,Helvetica12_Character_171,Helvetica12_Character_172,Helvetica12_Character_173,Helvetica12_Character_174,Helvetica12_Character_175, - Helvetica12_Character_176,Helvetica12_Character_177,Helvetica12_Character_178,Helvetica12_Character_179,Helvetica12_Character_180,Helvetica12_Character_181,Helvetica12_Character_182,Helvetica12_Character_183,Helvetica12_Character_184,Helvetica12_Character_185,Helvetica12_Character_186,Helvetica12_Character_187,Helvetica12_Character_188,Helvetica12_Character_189,Helvetica12_Character_190,Helvetica12_Character_191, - Helvetica12_Character_192,Helvetica12_Character_193,Helvetica12_Character_194,Helvetica12_Character_195,Helvetica12_Character_196,Helvetica12_Character_197,Helvetica12_Character_198,Helvetica12_Character_199,Helvetica12_Character_200,Helvetica12_Character_201,Helvetica12_Character_202,Helvetica12_Character_203,Helvetica12_Character_204,Helvetica12_Character_205,Helvetica12_Character_206,Helvetica12_Character_207, - Helvetica12_Character_208,Helvetica12_Character_209,Helvetica12_Character_210,Helvetica12_Character_211,Helvetica12_Character_212,Helvetica12_Character_213,Helvetica12_Character_214,Helvetica12_Character_215,Helvetica12_Character_216,Helvetica12_Character_217,Helvetica12_Character_218,Helvetica12_Character_219,Helvetica12_Character_220,Helvetica12_Character_221,Helvetica12_Character_222,Helvetica12_Character_223, - Helvetica12_Character_224,Helvetica12_Character_225,Helvetica12_Character_226,Helvetica12_Character_227,Helvetica12_Character_228,Helvetica12_Character_229,Helvetica12_Character_230,Helvetica12_Character_231,Helvetica12_Character_232,Helvetica12_Character_233,Helvetica12_Character_234,Helvetica12_Character_235,Helvetica12_Character_236,Helvetica12_Character_237,Helvetica12_Character_238,Helvetica12_Character_239, - Helvetica12_Character_240,Helvetica12_Character_241,Helvetica12_Character_242,Helvetica12_Character_243,Helvetica12_Character_244,Helvetica12_Character_245,Helvetica12_Character_246,Helvetica12_Character_247,Helvetica12_Character_248,Helvetica12_Character_249,Helvetica12_Character_250,Helvetica12_Character_251,Helvetica12_Character_252,Helvetica12_Character_253,Helvetica12_Character_254,Helvetica12_Character_255,NULL}; - -/* The font structure: */ -const SFG_Font fgFontHelvetica12 = { "-adobe-helvetica-medium-r-normal--12-120-75-75-p-67-iso8859-1", 256, 16, Helvetica12_Character_Map, 0, 4 }; - -static const GLubyte Helvetica18_Character_000[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 64, 16, 0, 0, 64, 16, 0, 0, 64, 16, 0, 0, 64, 16, 0, 0, 64, 16, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_001[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_002[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_003[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_004[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_005[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_006[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_007[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_008[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_009[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_010[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_011[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_012[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_013[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_014[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_015[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_016[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_017[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_018[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_019[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_020[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_021[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_022[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_023[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_024[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_025[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_026[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_027[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_028[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_029[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_030[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_031[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_032[] = { 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_033[] = { 6, 0, 0, 0, 0, 0, 48, 48, 0, 0, 32, 32, 48, 48, 48, 48, 48, 48, 48, 48, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_034[] = { 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,144,144,216,216,216, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_035[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 36, 0, 36, 0, 36, 0,255,128,255,128, 18, 0, 18, 0, 18, 0,127,192,127,192, 9, 0, 9, 0, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_036[] = { 10, 0, 0, 0, 0, 0, 0, 4, 0, 4, 0, 31, 0, 63,128,117,192,100,192, 4,192, 7,128, 31, 0, 60, 0,116, 0,100, 0,101,128, 63,128, 31, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_037[] = { 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 60, 12,126, 6,102, 6,102, 3,126, 3, 60, 1,128, 61,128,126,192,102,192,102, 96,126, 96, 60, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_038[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 56, 63,112,115,224, 97,192, 97,224, 99, 96,119, 96, 62, 0, 30, 0, 51, 0, 51, 0, 63, 0, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_039[] = { 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 32, 32, 96, 96, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_040[] = { 6, 0, 8, 24, 48, 48, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 48, 48, 24, 8, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_041[] = { 6, 0, 64, 96, 48, 48, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 48, 48, 96, 64, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_042[] = { 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 68, 56, 56,124, 16, 16, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_043[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 0, 12, 0, 12, 0, 12, 0,127,128,127,128, 12, 0, 12, 0, 12, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_044[] = { 5, 0, 0, 64, 32, 32, 96, 96, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_045[] = { 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,127,128,127,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_046[] = { 5, 0, 0, 0, 0, 0, 96, 96, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_047[] = { 5, 0, 0, 0, 0, 0,192,192, 64, 64, 96, 96, 32, 32, 48, 48, 16, 16, 24, 24, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_048[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 0, 63, 0, 51, 0, 97,128, 97,128, 97,128, 97,128, 97,128, 97,128, 97,128, 51, 0, 63, 0, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_049[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 6, 0, 6, 0, 6, 0, 6, 0, 6, 0, 6, 0, 6, 0, 6, 0, 6, 0, 62, 0, 62, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_050[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,127,128,127,128, 96, 0,112, 0, 56, 0, 28, 0, 14, 0, 7, 0, 3,128, 1,128, 97,128,127, 0, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_051[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 0, 63, 0, 99,128, 97,128, 1,128, 3,128, 15, 0, 14, 0, 3, 0, 97,128, 97,128, 63, 0, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_052[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1,128, 1,128, 1,128,127,192,127,192, 97,128, 49,128, 25,128, 25,128, 13,128, 7,128, 3,128, 1,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_053[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0,127, 0, 99,128, 97,128, 1,128, 1,128, 99,128,127, 0,126, 0, 96, 0, 96, 0,127, 0,127, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_054[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 0, 63, 0,113,128, 97,128, 97,128, 97,128,127, 0,110, 0, 96, 0, 96, 0, 49,128, 63,128, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_055[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 0, 48, 0, 24, 0, 24, 0, 24, 0, 12, 0, 12, 0, 6, 0, 6, 0, 3, 0, 1,128,127,128,127,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_056[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 0, 63, 0,115,128, 97,128, 97,128, 51, 0, 63, 0, 51, 0, 97,128, 97,128,115,128, 63, 0, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_057[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0,127, 0, 99, 0, 1,128, 1,128, 29,128, 63,128, 97,128, 97,128, 97,128, 99,128, 63, 0, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_058[] = { 5, 0, 0, 0, 0, 0, 96, 96, 0, 0, 0, 0, 0, 0, 96, 96, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_059[] = { 5, 0, 0, 64, 32, 32, 96, 96, 0, 0, 0, 0, 0, 0, 96, 96, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_060[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1,128, 7,128, 30, 0, 56, 0, 96, 0, 56, 0, 30, 0, 7,128, 1,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_061[] = { 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63,128, 63,128, 0, 0, 0, 0, 63,128, 63,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_062[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 96, 0,120, 0, 30, 0, 7, 0, 1,128, 7, 0, 30, 0,120, 0, 96, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_063[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 24, 0, 24, 0, 0, 0, 0, 0, 24, 0, 24, 0, 24, 0, 28, 0, 14, 0, 7, 0, 99, 0, 99, 0,127, 0, 62, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_064[] = { 18, 0, 0, 0, 0, 0, 0, 3,240, 0, 15,248, 0, 28, 0, 0, 56, 0, 0, 51,184, 0,103,252, 0,102,102, 0,102, 51, 0,102, 51, 0,102, 49,128, 99, 25,128, 51,185,128, 49,217,128, 24, 3, 0, 14, 7, 0, 7,254, 0, 1,248, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_065[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,192, 48,192, 48, 96, 96, 96, 96,127,224, 63,192, 48,192, 48,192, 25,128, 25,128, 15, 0, 15, 0, 6, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_066[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,127,192,127,224, 96,112, 96, 48, 96, 48, 96,112,127,224,127,192, 96,192, 96, 96, 96, 96, 96,224,127,192,127,128, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_067[] = { 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7,192, 31,240, 56, 56, 48, 24,112, 0, 96, 0, 96, 0, 96, 0, 96, 0,112, 0, 48, 24, 56, 56, 31,240, 7,192, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_068[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,127,128,127,192, 96,224, 96, 96, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 96, 96,224,127,192,127,128, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_069[] = { 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,127,192,127,192, 96, 0, 96, 0, 96, 0, 96, 0,127,128,127,128, 96, 0, 96, 0, 96, 0, 96, 0,127,192,127,192, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_070[] = { 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 96, 0, 96, 0, 96, 0, 96, 0, 96, 0, 96, 0,127,128,127,128, 96, 0, 96, 0, 96, 0, 96, 0,127,192,127,192, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_071[] = { 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7,216, 31,248, 56, 56, 48, 24,112, 24, 96,248, 96,248, 96, 0, 96, 0,112, 24, 48, 24, 56, 56, 31,240, 7,192, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_072[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48,127,240,127,240, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_073[] = { 6, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_074[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 0, 63, 0,115,128, 97,128, 97,128, 1,128, 1,128, 1,128, 1,128, 1,128, 1,128, 1,128, 1,128, 1,128, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_075[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 96, 56, 96,112, 96,224, 97,192, 99,128,103, 0,126, 0,124, 0,110, 0,103, 0, 99,128, 97,192, 96,224, 96,112, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_076[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,127,128,127,128, 96, 0, 96, 0, 96, 0, 96, 0, 96, 0, 96, 0, 96, 0, 96, 0, 96, 0, 96, 0, 96, 0, 96, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_077[] = { 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 97,134, 97,134, 99,198, 98, 70,102,102,102,102,108, 54,108, 54,120, 30,120, 30,112, 14,112, 14, 96, 6, 96, 6, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_078[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 96, 48, 96,112, 96,240, 96,240, 97,176, 99, 48, 99, 48,102, 48,102, 48,108, 48,120, 48,120, 48,112, 48, 96, 48, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_079[] = { 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7,192, 31,240, 56, 56, 48, 24,112, 28, 96, 12, 96, 12, 96, 12, 96, 12,112, 28, 48, 24, 56, 56, 31,240, 7,192, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_080[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 96, 0, 96, 0, 96, 0, 96, 0, 96, 0, 96, 0,127,128,127,192, 96,224, 96, 96, 96, 96, 96,224,127,192,127,128, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_081[] = { 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 24, 7,216, 31,240, 56,120, 48,216,112,220, 96, 12, 96, 12, 96, 12, 96, 12,112, 28, 48, 24, 56, 56, 31,240, 7,192, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_082[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 96, 96, 96, 96, 96, 96, 96, 96, 96,192, 96,192,127,128,127,192, 96,224, 96, 96, 96, 96, 96,224,127,192,127,128, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_083[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31,128, 63,224,112,112, 96, 48, 0, 48, 0,112, 1,224, 15,128, 62, 0,112, 0, 96, 48,112,112, 63,224, 15,128, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_084[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 6, 0, 6, 0, 6, 0, 6, 0, 6, 0, 6, 0, 6, 0, 6, 0, 6, 0, 6, 0, 6, 0,127,224,127,224, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_085[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15,128, 63,224, 48, 96, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_086[] = { 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 7,128, 7,128, 12,192, 12,192, 12,192, 24, 96, 24, 96, 24, 96, 48, 48, 48, 48, 48, 48, 96, 24, 96, 24, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_087[] = { 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 12, 0, 12, 12, 0, 14, 28, 0, 26, 22, 0, 27, 54, 0, 27, 54, 0, 51, 51, 0, 51, 51, 0, 49, 35, 0, 49,227, 0, 97,225,128, 96,193,128, 96,193,128, 96,193,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_088[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 96, 48,112,112, 48, 96, 56,224, 24,192, 13,128, 7, 0, 7, 0, 13,128, 24,192, 56,224, 48, 96,112,112, 96, 48, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_089[] = { 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 3, 0, 3, 0, 3, 0, 3, 0, 3, 0, 7,128, 12,192, 24, 96, 24, 96, 48, 48, 48, 48, 96, 24, 96, 24, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_090[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,127,224,127,224, 96, 0, 48, 0, 24, 0, 12, 0, 14, 0, 6, 0, 3, 0, 1,128, 0,192, 0, 96,127,224,127,224, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_091[] = { 5, 0,120,120, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96,120,120, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_092[] = { 5, 0, 0, 0, 0, 0, 24, 24, 16, 16, 48, 48, 32, 32, 96, 96, 64, 64,192,192, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_093[] = { 5, 0,240,240, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,240,240, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_094[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 99, 0, 54, 0, 28, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_095[] = { 10, 0, 0,255,192,255,192, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_096[] = { 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 96, 96, 64, 64, 32, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_097[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 59, 0,119, 0, 99, 0, 99, 0,115, 0, 63, 0, 7, 0, 99, 0,119, 0, 62, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_098[] = { 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,111, 0,127,128,113,128, 96,192, 96,192, 96,192, 96,192,113,128,127,128,111, 0, 96, 0, 96, 0, 96, 0, 96, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_099[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 0, 63,128, 49,128, 96, 0, 96, 0, 96, 0, 96, 0, 49,128, 63,128, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_100[] = { 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30,192, 63,192, 49,192, 96,192, 96,192, 96,192, 96,192, 49,192, 63,192, 30,192, 0,192, 0,192, 0,192, 0,192, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_101[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 0, 63,128,113,128, 96, 0, 96, 0,127,128, 97,128, 97,128, 63, 0, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_102[] = { 6, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48,252,252, 48, 48, 60, 28, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_103[] = { 11, 0, 0, 14, 0, 63,128, 49,128, 0,192, 30,192, 63,192, 49,192, 96,192, 96,192, 96,192, 96,192, 48,192, 63,192, 30,192, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_104[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 97,128, 97,128, 97,128, 97,128, 97,128, 97,128, 97,128,113,128,111,128,103, 0, 96, 0, 96, 0, 96, 0, 96, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_105[] = { 4, 0, 0, 0, 0, 0, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 0, 0, 96, 96, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_106[] = { 4, 0,192,224, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 0, 0, 96, 96, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_107[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 99,128, 99, 0,103, 0,102, 0,108, 0,124, 0,120, 0,108, 0,102, 0, 99, 0, 96, 0, 96, 0, 96, 0, 96, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_108[] = { 4, 0, 0, 0, 0, 0, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_109[] = { 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 99, 24, 99, 24, 99, 24, 99, 24, 99, 24, 99, 24, 99, 24,115,152,111,120,102, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_110[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 97,128, 97,128, 97,128, 97,128, 97,128, 97,128, 97,128,113,128,111,128,103, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_111[] = { 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 0, 63,128, 49,128, 96,192, 96,192, 96,192, 96,192, 49,128, 63,128, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_112[] = { 11, 0, 0, 96, 0, 96, 0, 96, 0, 96, 0,111, 0,127,128,113,128, 96,192, 96,192, 96,192, 96,192,113,128,127,128,111, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_113[] = { 11, 0, 0, 0,192, 0,192, 0,192, 0,192, 30,192, 63,192, 49,192, 96,192, 96,192, 96,192, 96,192, 49,192, 63,192, 30,192, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_114[] = { 6, 0, 0, 0, 0, 0, 96, 96, 96, 96, 96, 96, 96,112,108,108, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_115[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 60, 0,126, 0, 99, 0, 3, 0, 31, 0,126, 0, 96, 0, 99, 0, 63, 0, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_116[] = { 6, 0, 0, 0, 0, 0, 24, 56, 48, 48, 48, 48, 48, 48,252,252, 48, 48, 48, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_117[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 57,128,125,128, 99,128, 97,128, 97,128, 97,128, 97,128, 97,128, 97,128, 97,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_118[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 0, 12, 0, 30, 0, 18, 0, 51, 0, 51, 0, 51, 0, 97,128, 97,128, 97,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_119[] = { 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12,192, 12,192, 28,224, 20,160, 52,176, 51, 48, 51, 48, 99, 24, 99, 24, 99, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_120[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 97,128,115,128, 51, 0, 30, 0, 12, 0, 12, 0, 30, 0, 51, 0,115,128, 97,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_121[] = { 10, 0, 0, 56, 0, 56, 0, 12, 0, 12, 0, 12, 0, 12, 0, 30, 0, 18, 0, 51, 0, 51, 0, 51, 0, 97,128, 97,128, 97,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_122[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,127, 0,127, 0, 96, 0, 48, 0, 24, 0, 12, 0, 6, 0, 3, 0,127, 0,127, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_123[] = { 6, 0, 12, 24, 48, 48, 48, 48, 48, 48, 96,192, 96, 48, 48, 48, 48, 48, 24, 12, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_124[] = { 4, 0, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_125[] = { 6, 0,192, 96, 48, 48, 48, 48, 48, 48, 24, 12, 24, 48, 48, 48, 48, 48, 96,192, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_126[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,102, 0, 63, 0, 25,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_127[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_128[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_129[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_130[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_131[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_132[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_133[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_134[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_135[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_136[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_137[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_138[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_139[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_140[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_141[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_142[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_143[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_144[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_145[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_146[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_147[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_148[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_149[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_150[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_151[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_152[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_153[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_154[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_155[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_156[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_157[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_158[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_159[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 64, 16, 0, 0, 0, 0, 85, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_160[] = { 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_161[] = { 6, 0, 48, 48, 48, 48, 48, 48, 48, 48, 16, 16, 0, 0, 48, 48, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_162[] = { 10, 0, 0, 0, 0, 0, 0, 8, 0, 8, 0, 31, 0, 63,128, 53,128,100, 0,100, 0,100, 0,100, 0, 53,128, 63,128, 31, 0, 2, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_163[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,223, 0,255,128, 96,128, 48, 0, 24, 0, 24, 0,126, 0, 48, 0, 96, 0, 97,128, 97,128, 63, 0, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_164[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 97,128,127,128, 51, 0, 51, 0, 51, 0,127,128, 97,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_165[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 0, 12, 0, 12, 0, 12, 0,127,128, 12, 0,127,128, 30, 0, 51, 0, 51, 0, 51, 0, 97,128, 97,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_166[] = { 4, 0, 0, 96, 96, 96, 96, 96, 96, 0, 0, 0, 0, 96, 96, 96, 96, 96, 96, 96, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_167[] = { 10, 0, 0, 30, 0, 63, 0, 97,128, 97,128, 3,128, 7, 0, 31, 0, 57,128,113,128, 97,128, 99,128, 55, 0, 62, 0,120, 0, 97,128, 97,128, 63, 0, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_168[] = { 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,216,216, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_169[] = { 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7,192, 24, 48, 32, 8, 35,136, 68, 68, 72, 4, 72, 4, 72, 4, 68, 68, 35,136, 32, 8, 24, 48, 7,192, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_170[] = { 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,124, 0, 52,108, 36, 28,100, 56, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_171[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 0, 27, 0, 54, 0,108, 0,108, 0, 54, 0, 27, 0, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_172[] = { 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,192, 0,192, 0,192,127,192,127,192, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_173[] = { 7, 0, 0, 0, 0, 0, 0, 0, 0, 0,124,124, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_174[] = { 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7,192, 24, 48, 32, 8, 36, 40, 68, 68, 68,132, 71,196, 68, 36, 68, 36, 39,200, 32, 8, 24, 48, 7,192, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_175[] = { 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,248, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_176[] = { 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 56,108, 68,108, 56, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_177[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,127,128,127,128, 0, 0, 12, 0, 12, 0, 12, 0,127,128,127,128, 12, 0, 12, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_178[] = { 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,248,248, 96, 48, 24,152,248,112, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_179[] = { 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,112,248,152, 48, 48,152,248,112, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_180[] = { 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,192, 96, 48, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_181[] = { 10, 0, 0, 96, 0, 96, 0, 96, 0, 96, 0,109,128,127,128,115,128, 97,128, 97,128, 97,128, 97,128, 97,128, 97,128, 97,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_182[] = { 10, 0, 0, 9, 0, 9, 0, 9, 0, 9, 0, 9, 0, 9, 0, 9, 0, 9, 0, 9, 0, 9, 0, 25, 0, 57, 0,121, 0,121, 0,121, 0,121, 0, 57, 0, 31,128, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_183[] = { 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 96, 96, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_184[] = { 5, 0,240,216, 24,112, 96, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_185[] = { 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48,112,112, 48, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_186[] = { 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,124, 0, 56,108, 68, 68,108, 56, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_187[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 72, 0,108, 0, 54, 0, 27, 0, 27, 0, 54, 0,108, 0, 72, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_188[] = { 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 24, 24, 24, 24, 12,252, 6,216, 6,120, 51, 56, 49, 24, 49,136, 48,192, 48,192,112, 96,112, 48, 48, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_189[] = { 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 24,124, 24,124, 12, 48, 6, 24, 6, 12, 51, 76, 49,124, 49,184, 48,192, 48,192,112, 96,112, 48, 48, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_190[] = { 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 24, 24, 24, 24, 12,252, 6,216, 6,120,115, 56,249, 24,153,136, 48,192, 48,192,152, 96,248, 48,112, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_191[] = { 10, 0, 0, 62, 0,127, 0, 99, 0, 99, 0,112, 0, 56, 0, 28, 0, 12, 0, 12, 0, 12, 0, 0, 0, 0, 0, 12, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_192[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,192, 48,192, 48, 96, 96, 96, 96,127,224, 63,192, 48,192, 48,192, 25,128, 25,128, 15, 0, 15, 0, 6, 0, 6, 0, 0, 0, 6, 0, 12, 0, 24, 0}; -static const GLubyte Helvetica18_Character_193[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,192, 48,192, 48, 96, 96, 96, 96,127,224, 63,192, 48,192, 48,192, 25,128, 25,128, 15, 0, 15, 0, 6, 0, 6, 0, 0, 0, 6, 0, 3, 0, 1,128}; -static const GLubyte Helvetica18_Character_194[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,192, 48,192, 48, 96, 96, 96, 96,127,224, 63,192, 48,192, 48,192, 25,128, 25,128, 15, 0, 15, 0, 6, 0, 6, 0, 0, 0, 25,128, 15, 0, 6, 0}; -static const GLubyte Helvetica18_Character_195[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,192, 48,192, 48, 96, 96, 96, 96,127,224, 63,192, 48,192, 48,192, 25,128, 25,128, 15, 0, 15, 0, 6, 0, 6, 0, 0, 0, 19, 0, 22,128, 12,128}; -static const GLubyte Helvetica18_Character_196[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,192, 48,192, 48, 96, 96, 96, 96,127,224, 63,192, 48,192, 48,192, 25,128, 25,128, 15, 0, 15, 0, 6, 0, 6, 0, 0, 0, 25,128, 25,128, 0, 0}; -static const GLubyte Helvetica18_Character_197[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,192, 48,192, 48, 96, 96, 96, 96,127,224, 63,192, 48,192, 48,192, 25,128, 25,128, 15, 0, 15, 0, 6, 0, 6, 0, 15, 0, 25,128, 25,128, 15, 0}; -static const GLubyte Helvetica18_Character_198[] = { 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 96,255,128, 96,255,128, 48,192, 0, 48,192, 0, 63,192, 0, 31,192, 0, 24,255, 0, 24,255, 0, 12,192, 0, 12,192, 0, 6,192, 0, 6,192, 0, 3,255,128, 3,255,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_199[] = { 14, 0, 0, 15, 0, 13,128, 1,128, 7, 0, 7,192, 31,240, 56, 56, 48, 24,112, 0, 96, 0, 96, 0, 96, 0, 96, 0,112, 0, 48, 24, 56, 56, 31,240, 7,192, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_200[] = { 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,127,192,127,192, 96, 0, 96, 0, 96, 0, 96, 0,127,128,127,128, 96, 0, 96, 0, 96, 0, 96, 0,127,192,127,192, 0, 0, 6, 0, 12, 0, 24, 0}; -static const GLubyte Helvetica18_Character_201[] = { 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,127,192,127,192, 96, 0, 96, 0, 96, 0, 96, 0,127,128,127,128, 96, 0, 96, 0, 96, 0, 96, 0,127,192,127,192, 0, 0, 6, 0, 3, 0, 1,128}; -static const GLubyte Helvetica18_Character_202[] = { 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,127,192,127,192, 96, 0, 96, 0, 96, 0, 96, 0,127,128,127,128, 96, 0, 96, 0, 96, 0, 96, 0,127,192,127,192, 0, 0, 25,128, 15, 0, 6, 0}; -static const GLubyte Helvetica18_Character_203[] = { 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,127,192,127,192, 96, 0, 96, 0, 96, 0, 96, 0,127,128,127,128, 96, 0, 96, 0, 96, 0, 96, 0,127,192,127,192, 0, 0, 25,128, 25,128, 0, 0}; -static const GLubyte Helvetica18_Character_204[] = { 6, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 0, 48, 96,192}; -static const GLubyte Helvetica18_Character_205[] = { 6, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 0, 48, 24, 12}; -static const GLubyte Helvetica18_Character_206[] = { 6, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 0,204,120, 48}; -static const GLubyte Helvetica18_Character_207[] = { 6, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 0,204,204, 0}; -static const GLubyte Helvetica18_Character_208[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,127,128,127,192, 96,224, 96, 96, 96, 48, 96, 48,252, 48,252, 48, 96, 48, 96, 48, 96, 96, 96,224,127,192,127,128, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_209[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 96, 48, 96,112, 96,240, 96,240, 97,176, 99, 48, 99, 48,102, 48,102, 48,108, 48,108, 48,120, 48,112, 48,112, 48, 0, 0, 9,128, 11, 64, 6, 64}; -static const GLubyte Helvetica18_Character_210[] = { 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7,192, 31,240, 56, 56, 48, 24,112, 28, 96, 12, 96, 12, 96, 12, 96, 12,112, 28, 48, 24, 56, 56, 31,240, 7,192, 0, 0, 1,128, 3, 0, 6, 0}; -static const GLubyte Helvetica18_Character_211[] = { 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7,192, 31,240, 56, 56, 48, 24,112, 28, 96, 12, 96, 12, 96, 12, 96, 12,112, 28, 48, 24, 56, 56, 31,240, 7,192, 0, 0, 1,128, 0,192, 0, 96}; -static const GLubyte Helvetica18_Character_212[] = { 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7,192, 31,240, 56, 56, 48, 24,112, 28, 96, 12, 96, 12, 96, 12, 96, 12,112, 28, 48, 24, 56, 56, 31,240, 7,192, 0, 0, 6, 96, 3,192, 1,128}; -static const GLubyte Helvetica18_Character_213[] = { 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7,192, 31,240, 56, 56, 48, 24,112, 28, 96, 12, 96, 12, 96, 12, 96, 12,112, 28, 48, 24, 56, 56, 31,240, 7,192, 0, 0, 4,192, 5,160, 3, 32}; -static const GLubyte Helvetica18_Character_214[] = { 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7,192, 31,240, 56, 56, 48, 24,112, 28, 96, 12, 96, 12, 96, 12, 96, 12,112, 28, 48, 24, 56, 56, 31,240, 7,192, 0, 0, 6,192, 6,192, 0, 0}; -static const GLubyte Helvetica18_Character_215[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,192,192, 97,128, 51, 0, 30, 0, 12, 0, 30, 0, 51, 0, 97,128,192,192, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_216[] = { 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,199,192,255,240,120, 56, 56, 24,108, 28,110, 12,103, 12, 99,140, 97,204,112,220, 48,120, 56, 56, 31,252, 7,204, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_217[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15,128, 63,224, 48, 96, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 0, 0, 3, 0, 6, 0, 12, 0}; -static const GLubyte Helvetica18_Character_218[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15,128, 63,224, 48, 96, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 0, 0, 6, 0, 3, 0, 1,128}; -static const GLubyte Helvetica18_Character_219[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15,128, 63,224, 48, 96, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 0, 0, 12,192, 7,128, 3, 0}; -static const GLubyte Helvetica18_Character_220[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15,128, 63,224, 48, 96, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 0, 0, 12,192, 12,192, 0, 0}; -static const GLubyte Helvetica18_Character_221[] = { 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 3, 0, 3, 0, 3, 0, 3, 0, 3, 0, 7,128, 12,192, 24, 96, 24, 96, 48, 48, 48, 48, 96, 24, 96, 24, 0, 0, 3, 0, 1,128, 0,192}; -static const GLubyte Helvetica18_Character_222[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 96, 0, 96, 0, 96, 0,127,128,127,192, 96,224, 96, 96, 96, 96, 96,224,127,192,127,128, 96, 0, 96, 0, 96, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_223[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,110, 0,111, 0, 99, 0, 99, 0, 99, 0, 99, 0,110, 0,110, 0, 99, 0, 99, 0, 99, 0, 99, 0, 62, 0, 28, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_224[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 59, 0,119, 0, 99, 0, 99, 0,115, 0, 63, 0, 7, 0, 99, 0,119, 0, 62, 0, 0, 0, 12, 0, 24, 0, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_225[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 59, 0,119, 0, 99, 0, 99, 0,115, 0, 63, 0, 7, 0, 99, 0,119, 0, 62, 0, 0, 0, 24, 0, 12, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_226[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 59, 0,119, 0, 99, 0, 99, 0,115, 0, 63, 0, 7, 0, 99, 0,119, 0, 62, 0, 0, 0, 51, 0, 30, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_227[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 59, 0,119, 0, 99, 0, 99, 0,115, 0, 63, 0, 7, 0, 99, 0,119, 0, 62, 0, 0, 0, 38, 0, 45, 0, 25, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_228[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 59, 0,119, 0, 99, 0, 99, 0,115, 0, 63, 0, 7, 0, 99, 0,119, 0, 62, 0, 0, 0, 54, 0, 54, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_229[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 59, 0,119, 0, 99, 0, 99, 0,115, 0, 63, 0, 7, 0, 99, 0,119, 0, 62, 0, 28, 0, 54, 0, 54, 0, 28, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_230[] = { 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 58,240,119,252, 99,140, 99, 0,115, 0, 63,252, 7, 12, 99, 12,119,248, 62,240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_231[] = { 10, 0, 0, 60, 0, 54, 0, 6, 0, 28, 0, 31, 0, 63,128, 49,128, 96, 0, 96, 0, 96, 0, 96, 0, 49,128, 63,128, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_232[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 0, 63,128,113,128, 96, 0, 96, 0,127,128, 97,128, 97,128, 63, 0, 30, 0, 0, 0, 12, 0, 24, 0, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_233[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 0, 63,128,113,128, 96, 0, 96, 0,127,128, 97,128, 97,128, 63, 0, 30, 0, 0, 0, 12, 0, 6, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_234[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 0, 63,128,113,128, 96, 0, 96, 0,127,128, 97,128, 97,128, 63, 0, 30, 0, 0, 0, 51, 0, 30, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_235[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 0, 63,128,113,128, 96, 0, 96, 0,127,128, 97,128, 97,128, 63, 0, 30, 0, 0, 0, 27, 0, 27, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_236[] = { 4, 0, 0, 0, 0, 0, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 0, 48, 96,192, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_237[] = { 4, 0, 0, 0, 0, 0, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 0,192, 96, 48, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_238[] = { 4, 0, 0, 0, 0, 0, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 0,144,240, 96, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_239[] = { 4, 0, 0, 0, 0, 0, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 0,216,216, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_240[] = { 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 0, 63,128, 49,128, 96,192, 96,192, 96,192, 96,192, 49,128, 63,128, 31, 0, 38, 0, 28, 0, 27, 0, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_241[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 97,128, 97,128, 97,128, 97,128, 97,128, 97,128, 97,128,113,128,111,128,103, 0, 0, 0, 38, 0, 45, 0, 25, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_242[] = { 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 0, 63,128, 49,128, 96,192, 96,192, 96,192, 96,192, 49,128, 63,128, 31, 0, 0, 0, 6, 0, 12, 0, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_243[] = { 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 0, 63,128, 49,128, 96,192, 96,192, 96,192, 96,192, 49,128, 63,128, 31, 0, 0, 0, 12, 0, 6, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_244[] = { 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 0, 63,128, 49,128, 96,192, 96,192, 96,192, 96,192, 49,128, 63,128, 31, 0, 0, 0, 25,128, 15, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_245[] = { 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 0, 63,128, 49,128, 96,192, 96,192, 96,192, 96,192, 49,128, 63,128, 31, 0, 0, 0, 19, 0, 22,128, 12,128, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_246[] = { 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 0, 63,128, 49,128, 96,192, 96,192, 96,192, 96,192, 49,128, 63,128, 31, 0, 0, 0, 27, 0, 27, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_247[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 0, 12, 0, 0, 0,127,128,127,128, 0, 0, 12, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_248[] = { 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,206, 0,127,128, 49,128,120,192,108,192,102,192, 99,192, 49,128, 63,192, 14, 96, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_249[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 57,128,125,128, 99,128, 97,128, 97,128, 97,128, 97,128, 97,128, 97,128, 97,128, 0, 0, 6, 0, 12, 0, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_250[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 57,128,125,128, 99,128, 97,128, 97,128, 97,128, 97,128, 97,128, 97,128, 97,128, 0, 0, 12, 0, 6, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_251[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 57,128,125,128, 99,128, 97,128, 97,128, 97,128, 97,128, 97,128, 97,128, 97,128, 0, 0, 51, 0, 30, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_252[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 57,128,125,128, 99,128, 97,128, 97,128, 97,128, 97,128, 97,128, 97,128, 97,128, 0, 0, 51, 0, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_253[] = { 10, 0, 0, 56, 0, 56, 0, 12, 0, 12, 0, 12, 0, 12, 0, 30, 0, 18, 0, 51, 0, 51, 0, 51, 0, 97,128, 97,128, 97,128, 0, 0, 12, 0, 6, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_254[] = { 11, 0, 0, 96, 0, 96, 0, 96, 0, 96, 0,111, 0,127,128,113,128, 96,192, 96,192, 96,192, 96,192,113,128,127,128,111, 0, 96, 0, 96, 0, 96, 0, 96, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte Helvetica18_Character_255[] = { 10, 0, 0, 56, 0, 56, 0, 12, 0, 12, 0, 12, 0, 12, 0, 30, 0, 18, 0, 51, 0, 51, 0, 51, 0, 97,128, 97,128, 97,128, 0, 0, 51, 0, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; - -/* The font characters mapping: */ -static const GLubyte* Helvetica18_Character_Map[] = {Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032, - Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032, - Helvetica18_Character_032,Helvetica18_Character_033,Helvetica18_Character_034,Helvetica18_Character_035,Helvetica18_Character_036,Helvetica18_Character_037,Helvetica18_Character_038,Helvetica18_Character_039,Helvetica18_Character_040,Helvetica18_Character_041,Helvetica18_Character_042,Helvetica18_Character_043,Helvetica18_Character_044,Helvetica18_Character_045,Helvetica18_Character_046,Helvetica18_Character_047, - Helvetica18_Character_048,Helvetica18_Character_049,Helvetica18_Character_050,Helvetica18_Character_051,Helvetica18_Character_052,Helvetica18_Character_053,Helvetica18_Character_054,Helvetica18_Character_055,Helvetica18_Character_056,Helvetica18_Character_057,Helvetica18_Character_058,Helvetica18_Character_059,Helvetica18_Character_060,Helvetica18_Character_061,Helvetica18_Character_062,Helvetica18_Character_063, - Helvetica18_Character_064,Helvetica18_Character_065,Helvetica18_Character_066,Helvetica18_Character_067,Helvetica18_Character_068,Helvetica18_Character_069,Helvetica18_Character_070,Helvetica18_Character_071,Helvetica18_Character_072,Helvetica18_Character_073,Helvetica18_Character_074,Helvetica18_Character_075,Helvetica18_Character_076,Helvetica18_Character_077,Helvetica18_Character_078,Helvetica18_Character_079, - Helvetica18_Character_080,Helvetica18_Character_081,Helvetica18_Character_082,Helvetica18_Character_083,Helvetica18_Character_084,Helvetica18_Character_085,Helvetica18_Character_086,Helvetica18_Character_087,Helvetica18_Character_088,Helvetica18_Character_089,Helvetica18_Character_090,Helvetica18_Character_091,Helvetica18_Character_092,Helvetica18_Character_093,Helvetica18_Character_094,Helvetica18_Character_095, - Helvetica18_Character_096,Helvetica18_Character_097,Helvetica18_Character_098,Helvetica18_Character_099,Helvetica18_Character_100,Helvetica18_Character_101,Helvetica18_Character_102,Helvetica18_Character_103,Helvetica18_Character_104,Helvetica18_Character_105,Helvetica18_Character_106,Helvetica18_Character_107,Helvetica18_Character_108,Helvetica18_Character_109,Helvetica18_Character_110,Helvetica18_Character_111, - Helvetica18_Character_112,Helvetica18_Character_113,Helvetica18_Character_114,Helvetica18_Character_115,Helvetica18_Character_116,Helvetica18_Character_117,Helvetica18_Character_118,Helvetica18_Character_119,Helvetica18_Character_120,Helvetica18_Character_121,Helvetica18_Character_122,Helvetica18_Character_123,Helvetica18_Character_124,Helvetica18_Character_125,Helvetica18_Character_126,Helvetica18_Character_032, - Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032, - Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032,Helvetica18_Character_032, - Helvetica18_Character_160,Helvetica18_Character_161,Helvetica18_Character_162,Helvetica18_Character_163,Helvetica18_Character_164,Helvetica18_Character_165,Helvetica18_Character_166,Helvetica18_Character_167,Helvetica18_Character_168,Helvetica18_Character_169,Helvetica18_Character_170,Helvetica18_Character_171,Helvetica18_Character_172,Helvetica18_Character_173,Helvetica18_Character_174,Helvetica18_Character_175, - Helvetica18_Character_176,Helvetica18_Character_177,Helvetica18_Character_178,Helvetica18_Character_179,Helvetica18_Character_180,Helvetica18_Character_181,Helvetica18_Character_182,Helvetica18_Character_183,Helvetica18_Character_184,Helvetica18_Character_185,Helvetica18_Character_186,Helvetica18_Character_187,Helvetica18_Character_188,Helvetica18_Character_189,Helvetica18_Character_190,Helvetica18_Character_191, - Helvetica18_Character_192,Helvetica18_Character_193,Helvetica18_Character_194,Helvetica18_Character_195,Helvetica18_Character_196,Helvetica18_Character_197,Helvetica18_Character_198,Helvetica18_Character_199,Helvetica18_Character_200,Helvetica18_Character_201,Helvetica18_Character_202,Helvetica18_Character_203,Helvetica18_Character_204,Helvetica18_Character_205,Helvetica18_Character_206,Helvetica18_Character_207, - Helvetica18_Character_208,Helvetica18_Character_209,Helvetica18_Character_210,Helvetica18_Character_211,Helvetica18_Character_212,Helvetica18_Character_213,Helvetica18_Character_214,Helvetica18_Character_215,Helvetica18_Character_216,Helvetica18_Character_217,Helvetica18_Character_218,Helvetica18_Character_219,Helvetica18_Character_220,Helvetica18_Character_221,Helvetica18_Character_222,Helvetica18_Character_223, - Helvetica18_Character_224,Helvetica18_Character_225,Helvetica18_Character_226,Helvetica18_Character_227,Helvetica18_Character_228,Helvetica18_Character_229,Helvetica18_Character_230,Helvetica18_Character_231,Helvetica18_Character_232,Helvetica18_Character_233,Helvetica18_Character_234,Helvetica18_Character_235,Helvetica18_Character_236,Helvetica18_Character_237,Helvetica18_Character_238,Helvetica18_Character_239, - Helvetica18_Character_240,Helvetica18_Character_241,Helvetica18_Character_242,Helvetica18_Character_243,Helvetica18_Character_244,Helvetica18_Character_245,Helvetica18_Character_246,Helvetica18_Character_247,Helvetica18_Character_248,Helvetica18_Character_249,Helvetica18_Character_250,Helvetica18_Character_251,Helvetica18_Character_252,Helvetica18_Character_253,Helvetica18_Character_254,Helvetica18_Character_255,NULL}; - -/* The font structure: */ -const SFG_Font fgFontHelvetica18 = { "-adobe-helvetica-medium-r-normal--18-180-75-75-p-98-iso8859-1", 256, 23, Helvetica18_Character_Map, 0, 5 }; - -static const GLubyte TimesRoman10_Character_000[] = { 8, 0, 0, 0, 0,170, 0,130, 0,130, 0,170, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_001[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_002[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_003[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_004[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_005[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_006[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_007[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_008[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_009[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_010[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_011[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_012[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_013[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_014[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_015[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_016[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_017[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_018[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_019[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_020[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_021[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_022[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_023[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_024[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_025[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_026[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_027[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_028[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_029[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_030[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_031[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_032[] = { 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_033[] = { 3, 0, 0, 0, 0, 64, 0, 64, 64, 64, 64, 64, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_034[] = { 4, 0, 0, 0, 0, 0, 0, 0, 0, 0,160,160, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_035[] = { 5, 0, 0, 0, 0, 80, 80,248, 80,248, 80, 80, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_036[] = { 5, 0, 0, 0, 32,224,144, 16, 96,128,144,112, 32, 0, 0}; -static const GLubyte TimesRoman10_Character_037[] = { 8, 0, 0, 0, 0, 68, 42, 42, 86,168,164,126, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_038[] = { 8, 0, 0, 0, 0,118,141,152,116,110, 80, 48, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_039[] = { 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64,192, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_040[] = { 4, 0, 0, 32, 64, 64,128,128,128, 64, 64, 32, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_041[] = { 4, 0, 0,128, 64, 64, 32, 32, 32, 64, 64,128, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_042[] = { 5, 0, 0, 0, 0, 0, 0, 0, 0,160, 64,160, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_043[] = { 6, 0, 0, 0, 0, 32, 32,248, 32, 32, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_044[] = { 3, 0, 0, 64, 64, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_045[] = { 7, 0, 0, 0, 0, 0, 0,120, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_046[] = { 3, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_047[] = { 3, 0, 0, 0, 0,128,128, 64, 64, 64, 32, 32, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_048[] = { 5, 0, 0, 0, 0, 96,144,144,144,144,144, 96, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_049[] = { 5, 0, 0, 0, 0,112, 32, 32, 32, 32, 96, 32, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_050[] = { 5, 0, 0, 0, 0,240, 64, 32, 32, 16,144, 96, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_051[] = { 5, 0, 0, 0, 0,224, 16, 16, 96, 16,144, 96, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_052[] = { 5, 0, 0, 0, 0, 16, 16,248,144, 80, 48, 16, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_053[] = { 5, 0, 0, 0, 0,224,144, 16, 16,224, 64,112, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_054[] = { 5, 0, 0, 0, 0, 96,144,144,144,224, 64, 48, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_055[] = { 5, 0, 0, 0, 0, 64, 64, 64, 32, 32,144,240, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_056[] = { 5, 0, 0, 0, 0, 96,144,144, 96,144,144, 96, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_057[] = { 5, 0, 0, 0, 0,192, 32,112,144,144,144, 96, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_058[] = { 3, 0, 0, 0, 0, 64, 0, 0, 0, 64, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_059[] = { 3, 0, 0, 64, 64, 64, 0, 0, 0, 64, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_060[] = { 5, 0, 0, 0, 0, 16, 32, 64, 32, 16, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_061[] = { 6, 0, 0, 0, 0, 0,248, 0,248, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_062[] = { 5, 0, 0, 0, 0,128, 64, 32, 64,128, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_063[] = { 4, 0, 0, 0, 0, 64, 0, 64, 64, 32,160,224, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_064[] = { 9, 0, 0, 0, 0, 62, 0, 64, 0,146, 0,173, 0,165, 0,165, 0,157, 0, 66, 0, 60, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_065[] = { 8, 0, 0, 0, 0,238, 68,124, 40, 40, 56, 16, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_066[] = { 6, 0, 0, 0, 0,240, 72, 72,112, 72, 72,240, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_067[] = { 7, 0, 0, 0, 0,120,196,128,128,128,196,124, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_068[] = { 7, 0, 0, 0, 0,248, 76, 68, 68, 68, 76,248, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_069[] = { 6, 0, 0, 0, 0,248, 72, 64,112, 64, 72,248, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_070[] = { 6, 0, 0, 0, 0,224, 64, 64,112, 64, 72,248, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_071[] = { 7, 0, 0, 0, 0,120,196,132,156,128,196,124, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_072[] = { 8, 0, 0, 0, 0,238, 68, 68,124, 68, 68,238, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_073[] = { 4, 0, 0, 0, 0,224, 64, 64, 64, 64, 64,224, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_074[] = { 4, 0, 0, 0, 0,192,160, 32, 32, 32, 32,112, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_075[] = { 7, 0, 0, 0, 0,236, 72, 80, 96, 80, 72,236, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_076[] = { 6, 0, 0, 0, 0,248, 72, 64, 64, 64, 64,224, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_077[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0,235,128, 73, 0, 85, 0, 85, 0, 99, 0, 99, 0,227,128, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_078[] = { 8, 0, 0, 0, 0,228, 76, 76, 84, 84,100,238, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_079[] = { 7, 0, 0, 0, 0,120,204,132,132,132,204,120, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_080[] = { 6, 0, 0, 0, 0,224, 64, 64,112, 72, 72,240, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_081[] = { 7, 0, 0, 12, 24,112,204,132,132,132,204,120, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_082[] = { 7, 0, 0, 0, 0,236, 72, 80,112, 72, 72,240, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_083[] = { 5, 0, 0, 0, 0,224,144, 16, 96,192,144,112, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_084[] = { 6, 0, 0, 0, 0,112, 32, 32, 32, 32,168,248, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_085[] = { 8, 0, 0, 0, 0, 56,108, 68, 68, 68, 68,238, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_086[] = { 8, 0, 0, 0, 0, 16, 16, 40, 40,108, 68,238, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_087[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 34, 0, 85, 0, 85, 0,201,128,136,128,221,192, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_088[] = { 8, 0, 0, 0, 0,238, 68, 40, 16, 40, 68,238, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_089[] = { 8, 0, 0, 0, 0, 56, 16, 16, 40, 40, 68,238, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_090[] = { 6, 0, 0, 0, 0,248,136, 64, 32, 16,136,248, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_091[] = { 3, 0, 0,192,128,128,128,128,128,128,128,192, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_092[] = { 3, 0, 0, 0, 0, 32, 32, 64, 64, 64,128,128, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_093[] = { 3, 0, 0,192, 64, 64, 64, 64, 64, 64, 64,192, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_094[] = { 5, 0, 0, 0, 0, 0, 0, 0, 0, 80, 80, 32, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_095[] = { 5, 0,248, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_096[] = { 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,192,128, 0, 0}; -static const GLubyte TimesRoman10_Character_097[] = { 4, 0, 0, 0, 0,224,160, 96, 32,192, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_098[] = { 5, 0, 0, 0, 0,224,144,144,144,224,128,128, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_099[] = { 4, 0, 0, 0, 0, 96,128,128,128, 96, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_100[] = { 5, 0, 0, 0, 0,104,144,144,144,112, 16, 48, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_101[] = { 4, 0, 0, 0, 0, 96,128,192,160, 96, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_102[] = { 4, 0, 0, 0, 0,224, 64, 64, 64,224, 64, 48, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_103[] = { 5, 0, 0,224,144, 96, 64,160,160,112, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_104[] = { 5, 0, 0, 0, 0,216,144,144,144,224,128,128, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_105[] = { 3, 0, 0, 0, 0, 64, 64, 64, 64,192, 0, 64, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_106[] = { 3, 0, 0,128, 64, 64, 64, 64, 64,192, 0, 64, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_107[] = { 5, 0, 0, 0, 0,152,144,224,160,144,128,128, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_108[] = { 4, 0, 0, 0, 0,224, 64, 64, 64, 64, 64,192, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_109[] = { 8, 0, 0, 0, 0,219,146,146,146,236, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_110[] = { 5, 0, 0, 0, 0,216,144,144,144,224, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_111[] = { 5, 0, 0, 0, 0, 96,144,144,144, 96, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_112[] = { 5, 0, 0,192,128,224,144,144,144,224, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_113[] = { 5, 0, 0, 56, 16,112,144,144,144,112, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_114[] = { 4, 0, 0, 0, 0,224, 64, 64, 96,160, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_115[] = { 4, 0, 0, 0, 0,224, 32, 96,128,224, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_116[] = { 4, 0, 0, 0, 0, 48, 64, 64, 64,224, 64, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_117[] = { 5, 0, 0, 0, 0,104,144,144,144,144, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_118[] = { 5, 0, 0, 0, 0, 32, 96, 80,144,216, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_119[] = { 8, 0, 0, 0, 0, 40,108, 84,146,219, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_120[] = { 6, 0, 0, 0, 0,216, 80, 32, 80,216, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_121[] = { 5, 0, 0,128,128, 64, 96,160,144,184, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_122[] = { 5, 0, 0, 0, 0,240,144, 64, 32,240, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_123[] = { 4, 0, 0, 32, 64, 64, 64,128, 64, 64, 64, 32, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_124[] = { 2, 0, 0,128,128,128,128,128,128,128,128,128, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_125[] = { 4, 0, 0,128, 64, 64, 64, 32, 64, 64, 64,128, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_126[] = { 7, 0, 0, 0, 0, 0, 0,152,100, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_127[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_128[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_129[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_130[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_131[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_132[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_133[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_134[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_135[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_136[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_137[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_138[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_139[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_140[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_141[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_142[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_143[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_144[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_145[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_146[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_147[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_148[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_149[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_150[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_151[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_152[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_153[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_154[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_155[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_156[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_157[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_158[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_159[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0,170, 0, 0, 0,130, 0, 0, 0,130, 0, 0, 0,170, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_160[] = { 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_161[] = { 3, 0, 0, 64, 64, 64, 64, 64, 0, 64, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_162[] = { 5, 0, 0, 0,128,224,144,128,144,112, 16, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_163[] = { 5, 0, 0, 0, 0,240,200, 64,224, 64, 80, 48, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_164[] = { 5, 0, 0, 0, 0, 0,136,112, 80, 80,112,136, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_165[] = { 5, 0, 0, 0, 0,112, 32,248, 32,216, 80,136, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_166[] = { 2, 0, 0, 0, 0,128,128,128, 0,128,128,128, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_167[] = { 5, 0, 0, 0,224,144, 32, 80,144,160, 64,144,112, 0, 0}; -static const GLubyte TimesRoman10_Character_168[] = { 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_169[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 28, 0, 34, 0, 77, 0, 81, 0, 77, 0, 34, 0, 28, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_170[] = { 4, 0, 0, 0, 0, 0, 0,224, 0,160, 32,192, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_171[] = { 5, 0, 0, 0, 0, 0, 80,160,160, 80, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_172[] = { 7, 0, 0, 0, 0, 0, 4, 4,124, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_173[] = { 4, 0, 0, 0, 0, 0, 0,224, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_174[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 28, 0, 34, 0, 85, 0, 89, 0, 93, 0, 34, 0, 28, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_175[] = { 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,224, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_176[] = { 4, 0, 0, 0, 0, 0, 0, 0, 96,144,144, 96, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_177[] = { 6, 0, 0, 0, 0,248, 0, 32, 32,248, 32, 32, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_178[] = { 3, 0, 0, 0, 0, 0, 0, 0,224, 64,160, 96, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_179[] = { 3, 0, 0, 0, 0, 0, 0, 0,192, 32, 64,224, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_180[] = { 3, 0, 0, 0, 0, 0, 0, 0, 0, 0,128, 64, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_181[] = { 5, 0, 0,128,128,232,144,144,144,144, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_182[] = { 6, 0, 0, 40, 40, 40, 40,104,232,232,232,124, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_183[] = { 2, 0, 0, 0, 0, 0, 0,128, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_184[] = { 4, 0,192, 32, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_185[] = { 3, 0, 0, 0, 0, 0, 0, 0,224, 64,192, 64, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_186[] = { 4, 0, 0, 0, 0, 0, 0,224, 0, 64,160, 64, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_187[] = { 5, 0, 0, 0, 0, 0,160, 80, 80,160, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_188[] = { 8, 0, 0, 0, 0, 68, 62, 44,244, 72,200, 68, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_189[] = { 8, 0, 0, 0, 0, 78, 36, 42,246, 72,200, 68, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_190[] = { 8, 0, 0, 0, 0, 68, 62, 44,212, 40, 72,228, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_191[] = { 4, 0, 0,224,160,128, 64, 64, 0, 64, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_192[] = { 8, 0, 0, 0, 0,238, 68,124, 40, 40, 56, 16, 0, 16, 32}; -static const GLubyte TimesRoman10_Character_193[] = { 8, 0, 0, 0, 0,238, 68,124, 40, 40, 56, 16, 0, 16, 8}; -static const GLubyte TimesRoman10_Character_194[] = { 8, 0, 0, 0, 0,238, 68,124, 40, 40, 56, 16, 0, 40, 16}; -static const GLubyte TimesRoman10_Character_195[] = { 8, 0, 0, 0, 0,238, 68,124, 40, 40, 56, 16, 0, 40, 20}; -static const GLubyte TimesRoman10_Character_196[] = { 8, 0, 0, 0, 0,238, 68,124, 40, 40, 56, 16, 0, 40, 0}; -static const GLubyte TimesRoman10_Character_197[] = { 8, 0, 0, 0, 0,238, 68,124, 40, 40, 56, 16, 16, 40, 16}; -static const GLubyte TimesRoman10_Character_198[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0,239, 0, 73, 0,120, 0, 46, 0, 40, 0, 57, 0, 31, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_199[] = { 7, 0, 96, 16, 32,120,196,128,128,128,196,124, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_200[] = { 6, 0, 0, 0, 0,248, 72, 64,112, 64, 72,248, 0, 32, 64}; -static const GLubyte TimesRoman10_Character_201[] = { 6, 0, 0, 0, 0,248, 72, 64,112, 64, 72,248, 0, 32, 16}; -static const GLubyte TimesRoman10_Character_202[] = { 6, 0, 0, 0, 0,248, 72, 64,112, 64, 72,248, 0, 80, 32}; -static const GLubyte TimesRoman10_Character_203[] = { 6, 0, 0, 0, 0,248, 72, 64,112, 64, 72,248, 0, 80, 0}; -static const GLubyte TimesRoman10_Character_204[] = { 4, 0, 0, 0, 0,224, 64, 64, 64, 64, 64,224, 0, 64,128}; -static const GLubyte TimesRoman10_Character_205[] = { 4, 0, 0, 0, 0,224, 64, 64, 64, 64, 64,224, 0, 64, 32}; -static const GLubyte TimesRoman10_Character_206[] = { 4, 0, 0, 0, 0,224, 64, 64, 64, 64, 64,224, 0,160, 64}; -static const GLubyte TimesRoman10_Character_207[] = { 4, 0, 0, 0, 0,224, 64, 64, 64, 64, 64,224, 0,160, 0}; -static const GLubyte TimesRoman10_Character_208[] = { 7, 0, 0, 0, 0,248, 76, 68,228, 68, 76,248, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_209[] = { 8, 0, 0, 0, 0,228, 76, 76, 84, 84,100,238, 0, 80, 40}; -static const GLubyte TimesRoman10_Character_210[] = { 7, 0, 0, 0, 0,120,204,132,132,132,204,120, 0, 32, 64}; -static const GLubyte TimesRoman10_Character_211[] = { 7, 0, 0, 0, 0,120,204,132,132,132,204,120, 0, 16, 8}; -static const GLubyte TimesRoman10_Character_212[] = { 7, 0, 0, 0, 0,120,204,132,132,132,204,120, 0, 80, 32}; -static const GLubyte TimesRoman10_Character_213[] = { 7, 0, 0, 0, 0,120,204,132,132,132,204,120, 0, 80, 40}; -static const GLubyte TimesRoman10_Character_214[] = { 7, 0, 0, 0, 0,120,204,132,132,132,204,120, 0, 80, 0}; -static const GLubyte TimesRoman10_Character_215[] = { 6, 0, 0, 0, 0,136, 80, 32, 80,136, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_216[] = { 8, 0, 0, 0,128,124,102, 82, 82, 74,102, 62, 1, 0, 0}; -static const GLubyte TimesRoman10_Character_217[] = { 8, 0, 0, 0, 0, 56,108, 68, 68, 68, 68,238, 0, 16, 32}; -static const GLubyte TimesRoman10_Character_218[] = { 8, 0, 0, 0, 0, 56,108, 68, 68, 68, 68,238, 0, 16, 8}; -static const GLubyte TimesRoman10_Character_219[] = { 8, 0, 0, 0, 0, 56,108, 68, 68, 68, 68,238, 0, 40, 16}; -static const GLubyte TimesRoman10_Character_220[] = { 8, 0, 0, 0, 0, 56,108, 68, 68, 68, 68,238, 0, 40, 0}; -static const GLubyte TimesRoman10_Character_221[] = { 8, 0, 0, 0, 0, 56, 16, 16, 40, 40, 68,238, 0, 16, 8}; -static const GLubyte TimesRoman10_Character_222[] = { 6, 0, 0, 0, 0,224, 64,112, 72,112, 64,224, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_223[] = { 5, 0, 0, 0, 0,224, 80, 80, 96, 80, 80, 32, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_224[] = { 4, 0, 0, 0, 0,224,160, 96, 32,192, 0, 64,128, 0, 0}; -static const GLubyte TimesRoman10_Character_225[] = { 4, 0, 0, 0, 0,224,160, 96, 32,192, 0, 64, 32, 0, 0}; -static const GLubyte TimesRoman10_Character_226[] = { 4, 0, 0, 0, 0,224,160, 96, 32,192, 0,160, 64, 0, 0}; -static const GLubyte TimesRoman10_Character_227[] = { 4, 0, 0, 0, 0,224,160, 96, 32,192, 0,160, 80, 0, 0}; -static const GLubyte TimesRoman10_Character_228[] = { 4, 0, 0, 0, 0,224,160, 96, 32,192, 0,160, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_229[] = { 4, 0, 0, 0, 0,224,160, 96, 32,192, 64,160, 64, 0, 0}; -static const GLubyte TimesRoman10_Character_230[] = { 6, 0, 0, 0, 0,216,160,112, 40,216, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_231[] = { 4, 0,192, 32, 64, 96,128,128,128, 96, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_232[] = { 4, 0, 0, 0, 0, 96,128,192,160, 96, 0, 64,128, 0, 0}; -static const GLubyte TimesRoman10_Character_233[] = { 4, 0, 0, 0, 0, 96,128,192,160, 96, 0, 64, 32, 0, 0}; -static const GLubyte TimesRoman10_Character_234[] = { 4, 0, 0, 0, 0, 96,128,192,160, 96, 0,160, 64, 0, 0}; -static const GLubyte TimesRoman10_Character_235[] = { 4, 0, 0, 0, 0, 96,128,192,160, 96, 0,160, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_236[] = { 4, 0, 0, 0, 0,224, 64, 64, 64,192, 0, 64,128, 0, 0}; -static const GLubyte TimesRoman10_Character_237[] = { 4, 0, 0, 0, 0,224, 64, 64, 64,192, 0, 64, 32, 0, 0}; -static const GLubyte TimesRoman10_Character_238[] = { 4, 0, 0, 0, 0,224, 64, 64, 64,192, 0,160, 64, 0, 0}; -static const GLubyte TimesRoman10_Character_239[] = { 4, 0, 0, 0, 0,224, 64, 64, 64,192, 0,160, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_240[] = { 5, 0, 0, 0, 0, 96,144,144,144,112,160,112, 64, 0, 0}; -static const GLubyte TimesRoman10_Character_241[] = { 5, 0, 0, 0, 0,216,144,144,144,224, 0,160, 80, 0, 0}; -static const GLubyte TimesRoman10_Character_242[] = { 5, 0, 0, 0, 0, 96,144,144,144, 96, 0, 32, 64, 0, 0}; -static const GLubyte TimesRoman10_Character_243[] = { 5, 0, 0, 0, 0, 96,144,144,144, 96, 0, 64, 32, 0, 0}; -static const GLubyte TimesRoman10_Character_244[] = { 5, 0, 0, 0, 0, 96,144,144,144, 96, 0,160, 64, 0, 0}; -static const GLubyte TimesRoman10_Character_245[] = { 5, 0, 0, 0, 0, 96,144,144,144, 96, 0,160, 80, 0, 0}; -static const GLubyte TimesRoman10_Character_246[] = { 5, 0, 0, 0, 0, 96,144,144,144, 96, 0,160, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_247[] = { 6, 0, 0, 0, 0, 32, 0,248, 0, 32, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_248[] = { 5, 0, 0, 0, 0,224,144,144,144,112, 8, 0, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_249[] = { 5, 0, 0, 0, 0,104,144,144,144,144, 0, 32, 64, 0, 0}; -static const GLubyte TimesRoman10_Character_250[] = { 5, 0, 0, 0, 0,104,144,144,144,144, 0, 64, 32, 0, 0}; -static const GLubyte TimesRoman10_Character_251[] = { 5, 0, 0, 0, 0,104,144,144,144,144, 0, 80, 32, 0, 0}; -static const GLubyte TimesRoman10_Character_252[] = { 5, 0, 0, 0, 0,104,144,144,144,144, 0, 80, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_253[] = { 5, 0, 0,128,192, 64, 96,160,144,184, 0, 32, 16, 0, 0}; -static const GLubyte TimesRoman10_Character_254[] = { 5, 0, 0,192,128,224,144,144,144,224,128,128, 0, 0, 0}; -static const GLubyte TimesRoman10_Character_255[] = { 5, 0, 0,128,192, 64, 96,160,144,184, 0,160, 0, 0, 0}; - -/* The font characters mapping: */ -static const GLubyte* TimesRoman10_Character_Map[] = {TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032, - TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032, - TimesRoman10_Character_032,TimesRoman10_Character_033,TimesRoman10_Character_034,TimesRoman10_Character_035,TimesRoman10_Character_036,TimesRoman10_Character_037,TimesRoman10_Character_038,TimesRoman10_Character_039,TimesRoman10_Character_040,TimesRoman10_Character_041,TimesRoman10_Character_042,TimesRoman10_Character_043,TimesRoman10_Character_044,TimesRoman10_Character_045,TimesRoman10_Character_046,TimesRoman10_Character_047, - TimesRoman10_Character_048,TimesRoman10_Character_049,TimesRoman10_Character_050,TimesRoman10_Character_051,TimesRoman10_Character_052,TimesRoman10_Character_053,TimesRoman10_Character_054,TimesRoman10_Character_055,TimesRoman10_Character_056,TimesRoman10_Character_057,TimesRoman10_Character_058,TimesRoman10_Character_059,TimesRoman10_Character_060,TimesRoman10_Character_061,TimesRoman10_Character_062,TimesRoman10_Character_063, - TimesRoman10_Character_064,TimesRoman10_Character_065,TimesRoman10_Character_066,TimesRoman10_Character_067,TimesRoman10_Character_068,TimesRoman10_Character_069,TimesRoman10_Character_070,TimesRoman10_Character_071,TimesRoman10_Character_072,TimesRoman10_Character_073,TimesRoman10_Character_074,TimesRoman10_Character_075,TimesRoman10_Character_076,TimesRoman10_Character_077,TimesRoman10_Character_078,TimesRoman10_Character_079, - TimesRoman10_Character_080,TimesRoman10_Character_081,TimesRoman10_Character_082,TimesRoman10_Character_083,TimesRoman10_Character_084,TimesRoman10_Character_085,TimesRoman10_Character_086,TimesRoman10_Character_087,TimesRoman10_Character_088,TimesRoman10_Character_089,TimesRoman10_Character_090,TimesRoman10_Character_091,TimesRoman10_Character_092,TimesRoman10_Character_093,TimesRoman10_Character_094,TimesRoman10_Character_095, - TimesRoman10_Character_096,TimesRoman10_Character_097,TimesRoman10_Character_098,TimesRoman10_Character_099,TimesRoman10_Character_100,TimesRoman10_Character_101,TimesRoman10_Character_102,TimesRoman10_Character_103,TimesRoman10_Character_104,TimesRoman10_Character_105,TimesRoman10_Character_106,TimesRoman10_Character_107,TimesRoman10_Character_108,TimesRoman10_Character_109,TimesRoman10_Character_110,TimesRoman10_Character_111, - TimesRoman10_Character_112,TimesRoman10_Character_113,TimesRoman10_Character_114,TimesRoman10_Character_115,TimesRoman10_Character_116,TimesRoman10_Character_117,TimesRoman10_Character_118,TimesRoman10_Character_119,TimesRoman10_Character_120,TimesRoman10_Character_121,TimesRoman10_Character_122,TimesRoman10_Character_123,TimesRoman10_Character_124,TimesRoman10_Character_125,TimesRoman10_Character_126,TimesRoman10_Character_032, - TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032, - TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032,TimesRoman10_Character_032, - TimesRoman10_Character_160,TimesRoman10_Character_161,TimesRoman10_Character_162,TimesRoman10_Character_163,TimesRoman10_Character_164,TimesRoman10_Character_165,TimesRoman10_Character_166,TimesRoman10_Character_167,TimesRoman10_Character_168,TimesRoman10_Character_169,TimesRoman10_Character_170,TimesRoman10_Character_171,TimesRoman10_Character_172,TimesRoman10_Character_173,TimesRoman10_Character_174,TimesRoman10_Character_175, - TimesRoman10_Character_176,TimesRoman10_Character_177,TimesRoman10_Character_178,TimesRoman10_Character_179,TimesRoman10_Character_180,TimesRoman10_Character_181,TimesRoman10_Character_182,TimesRoman10_Character_183,TimesRoman10_Character_184,TimesRoman10_Character_185,TimesRoman10_Character_186,TimesRoman10_Character_187,TimesRoman10_Character_188,TimesRoman10_Character_189,TimesRoman10_Character_190,TimesRoman10_Character_191, - TimesRoman10_Character_192,TimesRoman10_Character_193,TimesRoman10_Character_194,TimesRoman10_Character_195,TimesRoman10_Character_196,TimesRoman10_Character_197,TimesRoman10_Character_198,TimesRoman10_Character_199,TimesRoman10_Character_200,TimesRoman10_Character_201,TimesRoman10_Character_202,TimesRoman10_Character_203,TimesRoman10_Character_204,TimesRoman10_Character_205,TimesRoman10_Character_206,TimesRoman10_Character_207, - TimesRoman10_Character_208,TimesRoman10_Character_209,TimesRoman10_Character_210,TimesRoman10_Character_211,TimesRoman10_Character_212,TimesRoman10_Character_213,TimesRoman10_Character_214,TimesRoman10_Character_215,TimesRoman10_Character_216,TimesRoman10_Character_217,TimesRoman10_Character_218,TimesRoman10_Character_219,TimesRoman10_Character_220,TimesRoman10_Character_221,TimesRoman10_Character_222,TimesRoman10_Character_223, - TimesRoman10_Character_224,TimesRoman10_Character_225,TimesRoman10_Character_226,TimesRoman10_Character_227,TimesRoman10_Character_228,TimesRoman10_Character_229,TimesRoman10_Character_230,TimesRoman10_Character_231,TimesRoman10_Character_232,TimesRoman10_Character_233,TimesRoman10_Character_234,TimesRoman10_Character_235,TimesRoman10_Character_236,TimesRoman10_Character_237,TimesRoman10_Character_238,TimesRoman10_Character_239, - TimesRoman10_Character_240,TimesRoman10_Character_241,TimesRoman10_Character_242,TimesRoman10_Character_243,TimesRoman10_Character_244,TimesRoman10_Character_245,TimesRoman10_Character_246,TimesRoman10_Character_247,TimesRoman10_Character_248,TimesRoman10_Character_249,TimesRoman10_Character_250,TimesRoman10_Character_251,TimesRoman10_Character_252,TimesRoman10_Character_253,TimesRoman10_Character_254,TimesRoman10_Character_255,NULL}; - -/* The font structure: */ -const SFG_Font fgFontTimesRoman10 = { "-adobe-times-medium-r-normal--10-100-75-75-p-54-iso8859-1", 256, 14, TimesRoman10_Character_Map, 0, 4 }; - -static const GLubyte TimesRoman24_Character_000[] = { 19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 64, 0, 64, 0, 0, 0, 64, 0, 64, 0, 0, 0, 64, 0, 64, 0, 0, 0, 64, 0, 64, 0, 0, 0, 64, 0, 64, 0, 0, 0, 64, 0, 64, 0, 0, 0, 64, 0, 64, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_001[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_002[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_003[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_004[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_005[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_006[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_007[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_008[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_009[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_010[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_011[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_012[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_013[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_014[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_015[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_016[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_017[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_018[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_019[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_020[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_021[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_022[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_023[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_024[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_025[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_026[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_027[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_028[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_029[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_030[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_031[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_032[] = { 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_033[] = { 8, 0, 0, 0, 0, 0, 0, 0, 24, 24, 0, 0, 0, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_034[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 68, 0,102, 0,102, 0,102, 0,102, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_035[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17, 0, 17, 0, 17, 0, 17, 0, 17, 0,127,224,127,224, 8,128, 8,128, 8,128, 63,240, 63,240, 4, 64, 4, 64, 4, 64, 4, 64, 4, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_036[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 4, 0, 63, 0,229,192,196,192,132, 96,132, 96, 4, 96, 4,224, 7,192, 7,128, 30, 0, 60, 0,116, 0,100, 0,100, 32,100, 96, 52,224, 31,128, 4, 0, 4, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_037[] = { 19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 24, 30, 0, 12, 57, 0, 6, 48,128, 2, 48, 64, 3, 48, 64, 1,152, 64, 0,140,192, 0,199,128, 60, 96, 0,114, 32, 0, 97, 48, 0, 96,152, 0, 96,136, 0, 48,140, 0, 25,254, 0, 15, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_038[] = { 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 30, 0, 63,191, 0,112,240,128, 96, 96, 0, 96,224, 0, 96,208, 0, 49,144, 0, 27,136, 0, 15, 12, 0, 7, 31, 0, 7,128, 0, 14,192, 0, 12, 96, 0, 12, 32, 0, 12, 32, 0, 6, 96, 0, 3,192, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_039[] = { 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 24, 12, 4, 28, 24, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_040[] = { 8, 0, 0, 2, 4, 8, 24, 16, 48, 48, 96, 96, 96, 96, 96, 96, 96, 96, 48, 48, 16, 24, 8, 4, 2, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_041[] = { 8, 0, 0, 64, 32, 16, 24, 8, 12, 12, 6, 6, 6, 6, 6, 6, 6, 6, 12, 12, 8, 24, 16, 32, 64, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_042[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 7, 0, 50, 96, 58,224, 7, 0, 58,224, 50, 96, 7, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_043[] = { 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 3, 0, 3, 0, 3, 0, 3, 0,127,248,127,248, 3, 0, 3, 0, 3, 0, 3, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_044[] = { 7, 0, 0, 0, 0, 48, 24, 8, 56, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_045[] = { 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,127,248,127,248, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_046[] = { 6, 0, 0, 0, 0, 0, 0, 0, 48, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_047[] = { 7, 0, 0, 0, 0,192,192,192, 64, 96, 96, 32, 48, 48, 16, 24, 24, 8, 12, 12, 4, 6, 6, 6, 6, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_048[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 25,128, 48,192, 48,192,112,224, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 48,192, 48,192, 25,128, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_049[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63,192, 6, 0, 6, 0, 6, 0, 6, 0, 6, 0, 6, 0, 6, 0, 6, 0, 6, 0, 6, 0, 6, 0, 6, 0, 6, 0, 30, 0, 6, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_050[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,127,192,127,224, 48, 32, 24, 0, 12, 0, 6, 0, 2, 0, 3, 0, 1,128, 1,128, 0,192, 0,192, 64,192, 64,192, 33,192, 63,128, 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_051[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 60, 0,115, 0, 97,128, 0,128, 0,192, 0,192, 0,192, 1,192, 3,128, 15, 0, 6, 0, 3, 0, 65,128, 65,128, 35,128, 63, 0, 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_052[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1,128, 1,128, 1,128, 1,128,127,224,127,224, 97,128, 33,128, 49,128, 17,128, 25,128, 9,128, 13,128, 5,128, 3,128, 3,128, 1,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_053[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63, 0,113,192, 96,192, 0, 96, 0, 96, 0, 96, 0, 96, 0,224, 1,192, 7,192, 63, 0, 60, 0, 48, 0, 16, 0, 16, 0, 15,192, 15,224, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_054[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 61,192, 48,192,112, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96,192,121,192,119, 0, 48, 0, 56, 0, 24, 0, 12, 0, 7, 0, 1,224, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_055[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 0, 12, 0, 6, 0, 6, 0, 6, 0, 2, 0, 3, 0, 3, 0, 1, 0, 1,128, 1,128, 0,128, 0,192, 64,192, 96, 96,127,224, 63,224, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_056[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 57,192,112,192, 96, 96, 96, 96, 96, 96, 32,224, 48,192, 27,128, 15, 0, 15, 0, 25,128, 48,192, 48,192, 48,192, 25,128, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_057[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,120, 0, 14, 0, 3, 0, 1,128, 1,192, 0,192, 14,192, 57,224, 48,224, 96, 96, 96, 96, 96, 96, 96, 96, 96,224, 48,192, 59,192, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_058[] = { 6, 0, 0, 0, 0, 0, 0, 0, 48, 48, 0, 0, 0, 0, 0, 0, 0, 48, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_059[] = { 7, 0, 0, 0, 0, 48, 24, 8, 56, 48, 0, 0, 0, 0, 0, 0, 0, 48, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_060[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 0,224, 3,128, 14, 0, 56, 0, 96, 0, 56, 0, 14, 0, 3,128, 0,224, 0, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_061[] = { 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,127,248,127,248, 0, 0, 0, 0,127,248,127,248, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_062[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 96, 0, 56, 0, 14, 0, 3,128, 0,224, 0, 48, 0,224, 3,128, 14, 0, 56, 0, 96, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_063[] = { 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 0, 12, 0, 0, 0, 0, 0, 4, 0, 4, 0, 4, 0, 6, 0, 6, 0, 3, 0, 3,128, 1,192, 48,192, 48,192, 32,192, 49,128, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_064[] = { 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,252, 0, 3,131, 0, 6, 0, 0, 12, 0, 0, 24,119,128, 24,222,192, 49,142, 96, 49,134, 32, 49,134, 48, 49,134, 16, 49,131, 16, 48,195, 16, 48,227, 16, 56,127, 16, 24, 59, 48, 28, 0, 32, 14, 0, 96, 7, 0,192, 3,195,128, 0,254, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_065[] = { 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,252, 31,128, 48, 6, 0, 16, 6, 0, 16, 12, 0, 24, 12, 0, 8, 12, 0, 15,248, 0, 12, 24, 0, 4, 24, 0, 4, 48, 0, 6, 48, 0, 2, 48, 0, 2, 96, 0, 1, 96, 0, 1,192, 0, 1,192, 0, 0,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_066[] = { 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,127,240, 24, 60, 24, 12, 24, 6, 24, 6, 24, 6, 24, 12, 24, 28, 31,240, 24, 32, 24, 24, 24, 12, 24, 12, 24, 12, 24, 24, 24, 56,127,224, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_067[] = { 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3,240, 15, 28, 28, 4, 48, 2, 48, 0, 96, 0, 96, 0, 96, 0, 96, 0, 96, 0, 96, 0, 96, 0, 48, 2, 48, 2, 28, 6, 14, 30, 3,242, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_068[] = { 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,127,224, 0, 24, 56, 0, 24, 28, 0, 24, 6, 0, 24, 6, 0, 24, 3, 0, 24, 3, 0, 24, 3, 0, 24, 3, 0, 24, 3, 0, 24, 3, 0, 24, 3, 0, 24, 6, 0, 24, 6, 0, 24, 28, 0, 24, 56, 0,127,224, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_069[] = { 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,127,252, 24, 12, 24, 4, 24, 4, 24, 0, 24, 0, 24, 32, 24, 32, 31,224, 24, 32, 24, 32, 24, 0, 24, 0, 24, 8, 24, 8, 24, 24,127,248, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_070[] = { 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,126, 0, 24, 0, 24, 0, 24, 0, 24, 0, 24, 0, 24, 16, 24, 16, 31,240, 24, 16, 24, 16, 24, 0, 24, 0, 24, 8, 24, 8, 24, 24,127,248, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_071[] = { 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3,240, 0, 15, 28, 0, 28, 14, 0, 48, 6, 0, 48, 6, 0, 96, 6, 0, 96, 6, 0, 96, 31,128, 96, 0, 0, 96, 0, 0, 96, 0, 0, 96, 0, 0, 48, 2, 0, 48, 2, 0, 28, 6, 0, 14, 30, 0, 3,242, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_072[] = { 19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,126, 15,192, 24, 3, 0, 24, 3, 0, 24, 3, 0, 24, 3, 0, 24, 3, 0, 24, 3, 0, 24, 3, 0, 31,255, 0, 24, 3, 0, 24, 3, 0, 24, 3, 0, 24, 3, 0, 24, 3, 0, 24, 3, 0, 24, 3, 0,126, 15,192, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_073[] = { 8, 0, 0, 0, 0, 0, 0, 0,126, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24,126, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_074[] = { 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 60, 0,102, 0, 99, 0, 3, 0, 3, 0, 3, 0, 3, 0, 3, 0, 3, 0, 3, 0, 3, 0, 3, 0, 3, 0, 3, 0, 3, 0, 3, 0, 15,192, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_075[] = { 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,126, 15,128, 24, 7, 0, 24, 14, 0, 24, 28, 0, 24, 56, 0, 24,112, 0, 24,224, 0, 25,192, 0, 31,128, 0, 31, 0, 0, 25,128, 0, 24,192, 0, 24, 96, 0, 24, 48, 0, 24, 24, 0, 24, 12, 0,126, 63, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_076[] = { 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,127,252, 24, 12, 24, 4, 24, 4, 24, 0, 24, 0, 24, 0, 24, 0, 24, 0, 24, 0, 24, 0, 24, 0, 24, 0, 24, 0, 24, 0, 24, 0,126, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_077[] = { 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,124, 16,252, 16, 48, 48, 16, 48, 48, 16,104, 48, 16,104, 48, 16,196, 48, 16,196, 48, 17,132, 48, 17,130, 48, 19, 2, 48, 19, 1, 48, 22, 1, 48, 22, 1, 48, 28, 0,176, 28, 0,176, 24, 0,112,120, 0,124, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_078[] = { 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,124, 6, 0, 16, 14, 0, 16, 14, 0, 16, 26, 0, 16, 50, 0, 16, 50, 0, 16, 98, 0, 16,194, 0, 16,194, 0, 17,130, 0, 19, 2, 0, 19, 2, 0, 22, 2, 0, 28, 2, 0, 28, 2, 0, 24, 2, 0,120, 15,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_079[] = { 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3,240, 0, 14, 28, 0, 28, 14, 0, 48, 3, 0, 48, 3, 0, 96, 1,128, 96, 1,128, 96, 1,128, 96, 1,128, 96, 1,128, 96, 1,128, 96, 1,128, 48, 3, 0, 48, 3, 0, 28, 14, 0, 14, 28, 0, 3,240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_080[] = { 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,126, 0, 24, 0, 24, 0, 24, 0, 24, 0, 24, 0, 24, 0, 24, 0, 31,224, 24, 56, 24, 24, 24, 12, 24, 12, 24, 12, 24, 24, 24, 56,127,224, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_081[] = { 18, 0, 0, 0, 0, 0, 0, 0, 7,128, 0, 28, 0, 0, 56, 0, 0,112, 0, 0,224, 0, 3,240, 0, 14, 28, 0, 28, 14, 0, 48, 3, 0, 48, 3, 0, 96, 1,128, 96, 1,128, 96, 1,128, 96, 1,128, 96, 1,128, 96, 1,128, 96, 1,128, 48, 3, 0, 48, 3, 0, 28, 14, 0, 14, 28, 0, 3,240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_082[] = { 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,126, 15, 24, 14, 24, 28, 24, 56, 24, 48, 24, 96, 24,224, 25,192, 31,224, 24, 56, 24, 24, 24, 28, 24, 12, 24, 28, 24, 24, 24, 56,127,224, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_083[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 79, 0,120,192, 96, 96, 64, 48, 64, 48, 0, 48, 0,112, 1,224, 7,192, 15, 0, 60, 0,112, 0, 96, 32, 96, 32, 96, 96, 49,224, 15, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_084[] = { 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7,224, 1,128, 1,128, 1,128, 1,128, 1,128, 1,128, 1,128, 1,128, 1,128, 1,128, 1,128, 1,128, 65,130, 65,130, 97,134,127,254, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_085[] = { 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3,240, 0, 14, 24, 0, 12, 4, 0, 24, 4, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0,126, 15,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_086[] = { 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1,128, 0, 1,128, 0, 1,128, 0, 3,192, 0, 3, 64, 0, 3, 96, 0, 6, 32, 0, 6, 32, 0, 6, 48, 0, 12, 16, 0, 12, 24, 0, 24, 8, 0, 24, 8, 0, 24, 12, 0, 48, 4, 0, 48, 6, 0,252, 31,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_087[] = { 23, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1,131, 0, 1,131, 0, 1,131,128, 3,135,128, 3, 70,128, 3, 70,192, 6, 70, 64, 6, 76, 64, 6, 76, 96, 12, 44, 96, 12, 44, 32, 24, 44, 32, 24, 24, 48, 24, 24, 16, 48, 24, 16, 48, 24, 24,252,126,126, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_088[] = { 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,252, 15,192, 48, 3,128, 24, 7, 0, 8, 14, 0, 4, 12, 0, 6, 24, 0, 2, 56, 0, 1,112, 0, 0,224, 0, 0,192, 0, 1,192, 0, 3,160, 0, 3, 16, 0, 6, 8, 0, 14, 12, 0, 28, 6, 0,126, 15,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_089[] = { 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7,224, 1,128, 1,128, 1,128, 1,128, 1,128, 1,128, 3,192, 3, 64, 6, 96, 6, 32, 12, 48, 28, 16, 24, 24, 56, 8, 48, 12,252, 63, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_090[] = { 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,127,252,112, 12, 56, 4, 24, 4, 28, 0, 12, 0, 14, 0, 7, 0, 3, 0, 3,128, 1,128, 1,192, 0,224, 64, 96, 64,112, 96, 56,127,248, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_091[] = { 8, 0, 0, 0, 62, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 62, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_092[] = { 7, 0, 0, 0, 0, 0, 0, 0, 6, 6, 4, 12, 12, 8, 24, 24, 16, 48, 48, 32, 96, 96, 64,192,192, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_093[] = { 8, 0, 0, 0,124, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12,124, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_094[] = { 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64, 96,192, 32,128, 49,128, 17, 0, 27, 0, 10, 0, 14, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_095[] = { 13, 0, 0, 0, 0,255,248,255,248, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_096[] = { 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48,112, 64, 96, 48, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_097[] = { 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 56,192,125,128, 99,128, 97,128, 97,128, 49,128, 29,128, 7,128, 1,128, 49,128, 51,128, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_098[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 47, 0, 57,192, 48,192, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48,192, 57,192, 55, 0, 48, 0, 48, 0, 48, 0, 48, 0,112, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_099[] = { 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 63,128, 56, 64,112, 0, 96, 0, 96, 0, 96, 0, 96, 0, 96, 0, 32,192, 49,192, 15,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_100[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 96, 57,192, 48,192, 96,192, 96,192, 96,192, 96,192, 96,192, 96,192, 48,192, 57,192, 14,192, 0,192, 0,192, 0,192, 0,192, 1,192, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_101[] = { 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 63,128, 56, 64,112, 0, 96, 0, 96, 0, 96, 0,127,192, 96,192, 32,192, 49,128, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_102[] = { 7, 0, 0, 0, 0, 0, 0, 0,120, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,254, 48, 48, 48, 22, 14, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_103[] = { 12, 0, 0, 0, 0, 31,128,120,224, 96, 48, 96, 16, 48, 48, 31,224, 63,128, 48, 0, 24, 0, 31, 0, 25,128, 48,192, 48,192, 48,192, 48,192, 25,128, 15,224, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_104[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,120,240, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 56,224, 55,192, 51,128, 48, 0, 48, 0, 48, 0, 48, 0,112, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_105[] = { 6, 0, 0, 0, 0, 0, 0, 0,120, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,112, 0, 0, 0, 48, 48, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_106[] = { 6, 0, 0,192,224, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,112, 0, 0, 0, 48, 48, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_107[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,121,240, 48,224, 49,192, 51,128, 55, 0, 54, 0, 60, 0, 52, 0, 50, 0, 51, 0, 49,128, 51,224, 48, 0, 48, 0, 48, 0, 48, 0,112, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_108[] = { 6, 0, 0, 0, 0, 0, 0, 0,120, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,112, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_109[] = { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,120,241,224, 48, 96,192, 48, 96,192, 48, 96,192, 48, 96,192, 48, 96,192, 48, 96,192, 48, 96,192, 48, 96,192, 56,241,192, 55,207,128,115,135, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_110[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,120,240, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 56,224, 55,192,115,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_111[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 57,192, 48,192, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 48,192, 57,192, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_112[] = { 12, 0, 0, 0, 0,120, 0, 48, 0, 48, 0, 48, 0, 48, 0, 55, 0, 57,192, 48,192, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48,192, 57,192,119, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_113[] = { 12, 0, 0, 0, 0, 1,224, 0,192, 0,192, 0,192, 0,192, 14,192, 57,192, 48,192, 96,192, 96,192, 96,192, 96,192, 96,192, 96,192, 48,192, 57,192, 14,192, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_114[] = { 8, 0, 0, 0, 0, 0, 0, 0,120, 48, 48, 48, 48, 48, 48, 48, 48, 59, 55,115, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_115[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,124, 0, 99, 0, 65,128, 1,128, 3,128, 15, 0, 62, 0, 56, 0,112, 0, 97, 0, 51, 0, 31, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_116[] = { 7, 0, 0, 0, 0, 0, 0, 0, 28, 50, 48, 48, 48, 48, 48, 48, 48, 48, 48,254,112, 48, 16, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_117[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14,112, 31, 96, 56,224, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96,112,224, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_118[] = { 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 14, 0, 14, 0, 26, 0, 25, 0, 25, 0, 49, 0, 48,128, 48,128, 96,128, 96,192,241,224, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_119[] = { 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 16, 0, 14, 56, 0, 14, 56, 0, 26, 40, 0, 26,100, 0, 25,100, 0, 49,100, 0, 48,194, 0, 48,194, 0, 96,194, 0, 96,195, 0,241,231,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_120[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,120,240, 48, 96, 16,192, 25,192, 13,128, 7, 0, 6, 0, 13, 0, 28,128, 24,192, 48, 96,120,240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_121[] = { 11, 0, 0, 0, 0,224, 0,240, 0, 24, 0, 8, 0, 12, 0, 4, 0, 14, 0, 14, 0, 26, 0, 25, 0, 25, 0, 49, 0, 48,128, 48,128, 96,128, 96,192,241,224, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_122[] = { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,127,128, 97,128, 48,128, 56, 0, 24, 0, 28, 0, 12, 0, 14, 0, 7, 0, 67, 0, 97,128,127,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_123[] = { 10, 0, 0, 0, 0, 3,128, 6, 0, 12, 0, 12, 0, 12, 0, 12, 0, 12, 0, 12, 0, 8, 0, 24, 0, 16, 0, 96, 0, 16, 0, 24, 0, 8, 0, 12, 0, 12, 0, 12, 0, 12, 0, 12, 0, 6, 0, 3,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_124[] = { 6, 0, 0, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_125[] = { 10, 0, 0, 0, 0,112, 0, 24, 0, 12, 0, 12, 0, 12, 0, 12, 0, 12, 0, 12, 0, 4, 0, 6, 0, 2, 0, 1,128, 2, 0, 6, 0, 4, 0, 12, 0, 12, 0, 12, 0, 12, 0, 12, 0, 24, 0,112, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_126[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 65,192, 99,224, 62, 48, 28, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_127[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_128[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_129[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_130[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_131[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_132[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_133[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_134[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_135[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_136[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_137[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_138[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_139[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_140[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_141[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_142[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_143[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_144[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_145[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_146[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_147[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_148[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_149[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_150[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_151[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_152[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_153[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_154[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_155[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_156[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_157[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_158[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_159[] = { 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 64, 0, 64, 0, 0, 0, 0, 0, 85, 85, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_160[] = { 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_161[] = { 8, 0, 0, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 0, 0, 0, 12, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_162[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 0, 32, 0, 31, 0, 63,128, 56, 64,104, 0,100, 0,100, 0,100, 0, 98, 0, 98, 0, 33,192, 49,192, 15,128, 0,128, 0,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_163[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,115,192, 95, 96, 60, 32, 24, 0, 24, 0, 24, 0, 24, 0, 24, 0, 24, 0,126, 0, 24, 0, 24, 0, 24, 0, 24, 0, 24,192, 12,192, 7,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_164[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 96, 48,119,112, 63,224, 24,192, 48, 96, 48, 96, 48, 96, 48, 96, 24,192, 63,224,119,112, 96, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_165[] = { 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15,192, 3, 0, 3, 0, 3, 0, 3, 0, 31,224, 3, 0, 31,224, 3, 0, 7,128, 12,128, 12,192, 24, 64, 24, 96, 48, 32,112, 48,248,124, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_166[] = { 6, 0, 0, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 0, 0, 0, 48, 48, 48, 48, 48, 48, 48, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_167[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 0, 25, 0, 24,128, 1,128, 3,128, 7, 0, 14, 0, 29, 0, 56,128, 48,192, 32,192, 33,192, 19,128, 15, 0, 14, 0, 28, 0, 24, 0, 17,128, 9,128, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_168[] = { 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,102,102, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_169[] = { 19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3,248, 0, 14, 14, 0, 24, 3, 0, 48,225,128, 35,184,128, 98, 12,192, 70, 0, 64, 68, 0, 64, 68, 0, 64, 68, 0, 64, 70, 0, 64, 98, 12,192, 35,152,128, 48,241,128, 24, 3, 0, 14, 14, 0, 3,248, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_170[] = { 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,126, 0,118,204,204,124, 12,204,120, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_171[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 32, 6, 96, 12,192, 25,128, 51, 0, 51, 0, 25,128, 12,192, 6, 96, 2, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_172[] = { 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 24, 0, 24, 0, 24, 0, 24, 0, 24,127,248,127,248, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_173[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,127, 0,127, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_174[] = { 19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3,248, 0, 14, 14, 0, 24, 3, 0, 48, 1,128, 35,140,128, 97, 24,192, 65, 16, 64, 65, 32, 64, 65,240, 64, 65, 24, 64, 65, 8, 64, 97, 8,192, 33, 24,128, 51,241,128, 24, 3, 0, 14, 14, 0, 3,248, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_175[] = { 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,126,126, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_176[] = { 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28, 0, 34, 0, 65, 0, 65, 0, 65, 0, 34, 0, 28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_177[] = { 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,127,248,127,248, 0, 0, 3, 0, 3, 0, 3, 0, 3, 0, 3, 0,127,248,127,248, 3, 0, 3, 0, 3, 0, 3, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_178[] = { 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,252, 68, 32, 48, 16, 8, 12,140, 76, 56, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_179[] = { 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,112,136,140, 12, 8, 48, 8,140, 76, 56, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_180[] = { 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 24, 14, 6, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_181[] = { 13, 0, 0, 0, 0, 32, 0,112, 0, 96, 0, 32, 0, 32, 0, 46,112, 63, 96, 56,224, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96,112,224, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_182[] = { 11, 0, 0, 0, 0, 4,128, 4,128, 4,128, 4,128, 4,128, 4,128, 4,128, 4,128, 4,128, 4,128, 4,128, 12,128, 28,128, 60,128, 60,128,124,128,124,128,124,128, 60,128, 60,128, 28,128, 15,192, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_183[] = { 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_184[] = { 8, 0, 60,102, 6, 30, 24, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_185[] = { 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,124, 16, 16, 16, 16, 16, 16, 80, 48, 16, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_186[] = { 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,126, 0, 60,102,102,102,102,102, 60, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_187[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 51, 0, 25,128, 12,192, 6, 96, 6, 96, 12,192, 25,128, 51, 0, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_188[] = { 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 24, 2, 0, 8, 2, 0, 12,127,128, 4, 34, 0, 6, 50, 0, 3, 18, 0, 1, 10, 0,125,142, 0, 16,134, 0, 16,194, 0, 16, 96, 0, 16, 32, 0, 16, 48, 0, 16, 16, 0, 80, 24, 0, 48, 12, 0, 16, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_189[] = { 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 24, 63, 0, 8, 17, 0, 12, 8, 0, 4, 12, 0, 6, 4, 0, 3, 2, 0, 1, 3, 0,125,163, 0, 16,147, 0, 16,206, 0, 16, 96, 0, 16, 32, 0, 16, 48, 0, 16, 16, 0, 80, 24, 0, 48, 12, 0, 16, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_190[] = { 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 24, 2, 0, 8, 2, 0, 12,127,128, 4, 34, 0, 6, 50, 0, 3, 18, 0, 1, 10, 0,113,142, 0,136,134, 0,140,194, 0, 12, 96, 0, 8, 32, 0, 48, 48, 0, 8, 16, 0,140, 24, 0, 76, 12, 0, 56, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_191[] = { 11, 0, 0, 0, 0, 31, 0, 49,128, 96,128, 97,128, 97,128,112, 0, 56, 0, 24, 0, 28, 0, 12, 0, 12, 0, 4, 0, 4, 0, 0, 0, 0, 0, 6, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_192[] = { 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,252, 31,128, 48, 6, 0, 16, 6, 0, 16, 12, 0, 24, 12, 0, 8, 12, 0, 15,248, 0, 12, 24, 0, 4, 24, 0, 4, 48, 0, 6, 48, 0, 2, 48, 0, 2, 96, 0, 1, 96, 0, 1,192, 0, 1,192, 0, 0,128, 0, 0, 0, 0, 0, 32, 0, 0,192, 0, 3,128, 0, 3, 0, 0}; -static const GLubyte TimesRoman24_Character_193[] = { 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,252, 31,128, 48, 6, 0, 16, 6, 0, 16, 12, 0, 24, 12, 0, 8, 12, 0, 15,248, 0, 12, 24, 0, 4, 24, 0, 4, 48, 0, 6, 48, 0, 2, 48, 0, 2, 96, 0, 1, 96, 0, 1,192, 0, 1,192, 0, 0,128, 0, 0, 0, 0, 1, 0, 0, 0,192, 0, 0,112, 0, 0, 48, 0}; -static const GLubyte TimesRoman24_Character_194[] = { 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,252, 31,128, 48, 6, 0, 16, 6, 0, 16, 12, 0, 24, 12, 0, 8, 12, 0, 15,248, 0, 12, 24, 0, 4, 24, 0, 4, 48, 0, 6, 48, 0, 2, 48, 0, 2, 96, 0, 1, 96, 0, 1,192, 0, 1,192, 0, 0,128, 0, 0, 0, 0, 8, 16, 0, 6, 96, 0, 3,192, 0, 1,128, 0}; -static const GLubyte TimesRoman24_Character_195[] = { 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,252, 31,128, 48, 7, 0, 16, 6, 0, 16, 12, 0, 24, 12, 0, 8, 12, 0, 15,248, 0, 12, 24, 0, 4, 24, 0, 4, 48, 0, 6, 48, 0, 2, 48, 0, 2, 96, 0, 1, 96, 0, 1,192, 0, 1,192, 0, 0,128, 0, 0, 0, 0, 0, 0, 0, 4,224, 0, 3,144, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_196[] = { 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,252, 31,128, 48, 6, 0, 16, 6, 0, 16, 12, 0, 24, 12, 0, 8, 12, 0, 15,248, 0, 12, 24, 0, 4, 24, 0, 4, 48, 0, 6, 48, 0, 2, 48, 0, 2, 96, 0, 1, 96, 0, 1,192, 0, 1,192, 0, 0,128, 0, 0, 0, 0, 0, 0, 0, 6, 48, 0, 6, 48, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_197[] = { 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,252, 31,128, 48, 6, 0, 16, 6, 0, 16, 12, 0, 24, 12, 0, 8, 12, 0, 15,248, 0, 12, 24, 0, 4, 24, 0, 4, 48, 0, 6, 48, 0, 2, 48, 0, 2, 96, 0, 1, 96, 0, 1,192, 0, 1,192, 0, 0,128, 0, 1,192, 0, 2, 32, 0, 2, 32, 0, 1,192, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_198[] = { 21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,249,255,240, 48, 96, 48, 16, 96, 16, 16, 96, 16, 24, 96, 0, 8, 96, 0, 15,224,128, 12, 96,128, 4,127,128, 4, 96,128, 6, 96,128, 2, 96, 0, 2, 96, 0, 1, 96, 32, 1, 96, 32, 1,224, 96, 3,255,224, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_199[] = { 16, 0, 0, 3,192, 6, 96, 0, 96, 1,224, 1,128, 0,128, 3,240, 15, 28, 28, 4, 48, 2, 48, 0, 96, 0, 96, 0, 96, 0, 96, 0, 96, 0, 96, 0, 96, 0, 48, 2, 48, 2, 28, 6, 14, 30, 3,242, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_200[] = { 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,127,252, 24, 12, 24, 4, 24, 4, 24, 0, 24, 0, 24, 32, 24, 32, 31,224, 24, 32, 24, 32, 24, 0, 24, 0, 24, 8, 24, 8, 24, 24,127,248, 0, 0, 0,128, 3, 0, 14, 0, 12, 0}; -static const GLubyte TimesRoman24_Character_201[] = { 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,127,252, 24, 12, 24, 4, 24, 4, 24, 0, 24, 0, 24, 32, 24, 32, 31,224, 24, 32, 24, 32, 24, 0, 24, 0, 24, 8, 24, 8, 24, 24,127,248, 0, 0, 2, 0, 1,128, 0,224, 0, 96}; -static const GLubyte TimesRoman24_Character_202[] = { 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,127,252, 24, 12, 24, 4, 24, 4, 24, 0, 24, 0, 24, 32, 24, 32, 31,224, 24, 32, 24, 32, 24, 0, 24, 0, 24, 8, 24, 8, 24, 24,127,248, 0, 0, 8, 16, 6, 96, 3,192, 1,128}; -static const GLubyte TimesRoman24_Character_203[] = { 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,127,252, 24, 12, 24, 4, 24, 4, 24, 0, 24, 0, 24, 32, 24, 32, 31,224, 24, 32, 24, 32, 24, 0, 24, 0, 24, 8, 24, 8, 24, 24,127,248, 0, 0, 0, 0, 12,192, 12,192, 0, 0}; -static const GLubyte TimesRoman24_Character_204[] = { 8, 0, 0, 0, 0, 0, 0, 0,126, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24,126, 0, 4, 24,112, 96}; -static const GLubyte TimesRoman24_Character_205[] = { 8, 0, 0, 0, 0, 0, 0, 0,126, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24,126, 0, 32, 24, 14, 6}; -static const GLubyte TimesRoman24_Character_206[] = { 8, 0, 0, 0, 0, 0, 0, 0, 63, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 63, 0, 64, 51, 30, 12}; -static const GLubyte TimesRoman24_Character_207[] = { 8, 0, 0, 0, 0, 0, 0, 0,126, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24,126, 0, 0,102,102, 0}; -static const GLubyte TimesRoman24_Character_208[] = { 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,127,224, 0, 24, 56, 0, 24, 28, 0, 24, 6, 0, 24, 6, 0, 24, 3, 0, 24, 3, 0, 24, 3, 0,255, 3, 0, 24, 3, 0, 24, 3, 0, 24, 3, 0, 24, 6, 0, 24, 6, 0, 24, 28, 0, 24, 56, 0,127,224, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_209[] = { 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,124, 6, 0, 16, 14, 0, 16, 14, 0, 16, 26, 0, 16, 50, 0, 16, 50, 0, 16, 98, 0, 16,194, 0, 16,194, 0, 17,130, 0, 19, 2, 0, 19, 2, 0, 22, 2, 0, 28, 2, 0, 28, 2, 0, 24, 2, 0,120, 15,128, 0, 0, 0, 0, 0, 0, 2,112, 0, 1,200, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_210[] = { 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3,240, 0, 14, 28, 0, 28, 14, 0, 48, 3, 0, 48, 3, 0, 96, 1,128, 96, 1,128, 96, 1,128, 96, 1,128, 96, 1,128, 96, 1,128, 96, 1,128, 48, 3, 0, 48, 3, 0, 28, 14, 0, 14, 28, 0, 3,240, 0, 0, 0, 0, 0, 32, 0, 0,192, 0, 3,128, 0, 3, 0, 0}; -static const GLubyte TimesRoman24_Character_211[] = { 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3,240, 0, 14, 28, 0, 28, 14, 0, 48, 3, 0, 48, 3, 0, 96, 1,128, 96, 1,128, 96, 1,128, 96, 1,128, 96, 1,128, 96, 1,128, 96, 1,128, 48, 3, 0, 48, 3, 0, 28, 14, 0, 14, 28, 0, 3,240, 0, 0, 0, 0, 0,128, 0, 0, 96, 0, 0, 56, 0, 0, 24, 0}; -static const GLubyte TimesRoman24_Character_212[] = { 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3,240, 0, 14, 28, 0, 28, 14, 0, 48, 3, 0, 48, 3, 0, 96, 1,128, 96, 1,128, 96, 1,128, 96, 1,128, 96, 1,128, 96, 1,128, 96, 1,128, 48, 3, 0, 48, 3, 0, 28, 14, 0, 14, 28, 0, 3,240, 0, 0, 0, 0, 4, 8, 0, 3, 48, 0, 1,224, 0, 0,192, 0}; -static const GLubyte TimesRoman24_Character_213[] = { 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3,240, 0, 14, 28, 0, 28, 14, 0, 48, 3, 0, 48, 3, 0, 96, 1,128, 96, 1,128, 96, 1,128, 96, 1,128, 96, 1,128, 96, 1,128, 96, 1,128, 48, 3, 0, 48, 3, 0, 28, 14, 0, 14, 28, 0, 3,240, 0, 0, 0, 0, 0, 0, 0, 2,112, 0, 1,200, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_214[] = { 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3,240, 0, 14, 28, 0, 28, 14, 0, 48, 3, 0, 48, 3, 0, 96, 1,128, 96, 1,128, 96, 1,128, 96, 1,128, 96, 1,128, 96, 1,128, 96, 1,128, 48, 3, 0, 48, 3, 0, 28, 14, 0, 14, 28, 0, 3,240, 0, 0, 0, 0, 0, 0, 0, 3, 48, 0, 3, 48, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_215[] = { 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 16, 48, 48, 24, 96, 12,192, 7,128, 3, 0, 7,128, 12,192, 24, 96, 48, 48, 32, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_216[] = { 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 0, 0, 19,240, 0, 14, 28, 0, 28, 14, 0, 52, 3, 0, 50, 3, 0, 97, 1,128, 97, 1,128, 96,129,128, 96,129,128, 96, 65,128, 96, 65,128, 96, 33,128, 48, 35, 0, 48, 19, 0, 28, 14, 0, 14, 28, 0, 3,242, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_217[] = { 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3,240, 0, 14, 24, 0, 12, 4, 0, 24, 4, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0,126, 15,128, 0, 0, 0, 0, 32, 0, 0,192, 0, 3,128, 0, 3, 0, 0}; -static const GLubyte TimesRoman24_Character_218[] = { 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3,240, 0, 14, 24, 0, 12, 4, 0, 24, 4, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0,126, 15,128, 0, 0, 0, 0,128, 0, 0, 96, 0, 0, 56, 0, 0, 24, 0}; -static const GLubyte TimesRoman24_Character_219[] = { 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3,240, 0, 14, 24, 0, 12, 4, 0, 24, 4, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0,126, 15,128, 0, 0, 0, 4, 8, 0, 3, 48, 0, 1,224, 0, 0,192, 0}; -static const GLubyte TimesRoman24_Character_220[] = { 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3,240, 0, 14, 24, 0, 12, 4, 0, 24, 4, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0, 24, 2, 0,126, 15,128, 0, 0, 0, 0, 0, 0, 3, 24, 0, 3, 24, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_221[] = { 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7,224, 1,128, 1,128, 1,128, 1,128, 1,128, 1,128, 3,192, 3, 64, 6, 96, 6, 32, 12, 48, 28, 16, 24, 24, 56, 8, 48, 12,252, 63, 0, 0, 1, 0, 0,192, 0,112, 0, 48}; -static const GLubyte TimesRoman24_Character_222[] = { 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,126, 0, 24, 0, 24, 0, 24, 0, 31,224, 24, 56, 24, 24, 24, 12, 24, 12, 24, 12, 24, 24, 24, 56, 31,224, 24, 0, 24, 0, 24, 0,126, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_223[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,115,128, 54, 64, 54, 96, 48, 96, 48, 96, 48,224, 48,192, 49,192, 51,128, 54, 0, 49,128, 48,192, 48,192, 48,192, 48,192, 25,128, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_224[] = { 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 56,192,125,128, 99,128, 97,128, 97,128, 49,128, 29,128, 7,128, 1,128, 49,128, 51,128, 31, 0, 0, 0, 2, 0, 12, 0, 56, 0, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_225[] = { 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 56,192,125,128, 99,128, 97,128, 97,128, 49,128, 29,128, 7,128, 1,128, 49,128, 51,128, 31, 0, 0, 0, 8, 0, 6, 0, 3,128, 1,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_226[] = { 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 56,192,125,128, 99,128, 97,128, 97,128, 49,128, 29,128, 7,128, 1,128, 49,128, 51,128, 31, 0, 0, 0, 33, 0, 18, 0, 30, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_227[] = { 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 56,192,125,128, 99,128, 97,128, 97,128, 49,128, 29,128, 7,128, 1,128, 49,128, 51,128, 31, 0, 0, 0, 0, 0, 46, 0, 29, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_228[] = { 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 56,192,125,128, 99,128, 97,128, 97,128, 49,128, 29,128, 7,128, 1,128, 49,128, 51,128, 31, 0, 0, 0, 0, 0, 51, 0, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_229[] = { 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 56,192,125,128, 99,128, 97,128, 97,128, 49,128, 29,128, 7,128, 1,128, 49,128, 51,128, 31, 0, 0, 0, 14, 0, 17, 0, 17, 0, 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_230[] = { 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 56,120,125,252, 99,194, 97,128, 97,128, 49,128, 29,128, 7,254, 1,134, 49,134, 51,204, 30,120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_231[] = { 11, 0, 0, 30, 0, 51, 0, 3, 0, 15, 0, 12, 0, 4, 0, 15, 0, 63,128, 56, 64,112, 0, 96, 0, 96, 0, 96, 0, 96, 0, 96, 0, 32,192, 49,192, 15,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_232[] = { 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 63,128, 56, 64,112, 0, 96, 0, 96, 0, 96, 0,127,192, 96,192, 32,192, 49,128, 15, 0, 0, 0, 2, 0, 12, 0, 56, 0, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_233[] = { 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 63,128, 56, 64,112, 0, 96, 0, 96, 0, 96, 0,127,192, 96,192, 32,192, 49,128, 15, 0, 0, 0, 8, 0, 6, 0, 3,128, 1,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_234[] = { 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 63,128, 56, 64,112, 0, 96, 0, 96, 0, 96, 0,127,192, 96,192, 32,192, 49,128, 15, 0, 0, 0, 16,128, 9, 0, 15, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_235[] = { 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 63,128, 56, 64,112, 0, 96, 0, 96, 0, 96, 0,127,192, 96,192, 32,192, 49,128, 15, 0, 0, 0, 0, 0, 25,128, 25,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_236[] = { 6, 0, 0, 0, 0, 0, 0, 0,120, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,112, 0, 8, 48,224,192, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_237[] = { 6, 0, 0, 0, 0, 0, 0, 0,120, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,112, 0, 64, 48, 28, 12, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_238[] = { 6, 0, 0, 0, 0, 0, 0, 0,120, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,112, 0,132, 72,120, 48, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_239[] = { 6, 0, 0, 0, 0, 0, 0, 0,120, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,112, 0, 0,204,204, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_240[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 57,192, 48,192, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 48,192, 57,192, 15,128, 99, 0, 30, 0, 15, 0, 56,192, 96, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_241[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,120,240, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 56,224, 55,192,115,128, 0, 0, 0, 0, 19,128, 14, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_242[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 57,192, 48,192, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 48,192, 57,192, 15, 0, 0, 0, 1, 0, 6, 0, 28, 0, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_243[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 57,192, 48,192, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 48,192, 57,192, 15, 0, 0, 0, 4, 0, 3, 0, 1,192, 0,192, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_244[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 57,192, 48,192, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 48,192, 57,192, 15, 0, 0, 0, 16,128, 9, 0, 15, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_245[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 57,192, 48,192, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 48,192, 57,192, 15, 0, 0, 0, 0, 0, 19,128, 14, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_246[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 57,192, 48,192, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 48,192, 57,192, 15, 0, 0, 0, 0, 0, 25,128, 25,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_247[] = { 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 3, 0, 0, 0, 0, 0,127,248,127,248, 0, 0, 0, 0, 3, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_248[] = { 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 96, 0,111, 0, 57,192, 56,192,104, 96,108, 96,100, 96,102, 96, 98, 96, 99, 96, 49,192, 57,192, 15, 96, 0, 96, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_249[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14,112, 31, 96, 56,224, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96,112,224, 0, 0, 1, 0, 6, 0, 28, 0, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_250[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14,112, 31, 96, 56,224, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96,112,224, 0, 0, 4, 0, 3, 0, 1,192, 0,192, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_251[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14,112, 31, 96, 56,224, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96,112,224, 0, 0, 16,128, 9, 0, 15, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_252[] = { 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14,112, 31, 96, 56,224, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96,112,224, 0, 0, 0, 0, 25,128, 25,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_253[] = { 11, 0, 0, 0, 0,224, 0,240, 0, 24, 0, 8, 0, 12, 0, 4, 0, 14, 0, 14, 0, 26, 0, 25, 0, 25, 0, 49, 0, 48,128, 48,128, 96,128, 96,192,241,224, 0, 0, 8, 0, 6, 0, 3,128, 1,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_254[] = { 12, 0, 0, 0, 0,120, 0, 48, 0, 48, 0, 48, 0, 48, 0, 55, 0, 57,192, 48,192, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48, 96, 48,192, 57,192, 55, 0, 48, 0, 48, 0, 48, 0, 48, 0,112, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -static const GLubyte TimesRoman24_Character_255[] = { 11, 0, 0, 0, 0,224, 0,240, 0, 24, 0, 8, 0, 12, 0, 4, 0, 14, 0, 14, 0, 26, 0, 25, 0, 25, 0, 49, 0, 48,128, 48,128, 96,128, 96,192,241,224, 0, 0, 0, 0, 51, 0, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; - -/* The font characters mapping: */ -static const GLubyte* TimesRoman24_Character_Map[] = {TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032, - TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032, - TimesRoman24_Character_032,TimesRoman24_Character_033,TimesRoman24_Character_034,TimesRoman24_Character_035,TimesRoman24_Character_036,TimesRoman24_Character_037,TimesRoman24_Character_038,TimesRoman24_Character_039,TimesRoman24_Character_040,TimesRoman24_Character_041,TimesRoman24_Character_042,TimesRoman24_Character_043,TimesRoman24_Character_044,TimesRoman24_Character_045,TimesRoman24_Character_046,TimesRoman24_Character_047, - TimesRoman24_Character_048,TimesRoman24_Character_049,TimesRoman24_Character_050,TimesRoman24_Character_051,TimesRoman24_Character_052,TimesRoman24_Character_053,TimesRoman24_Character_054,TimesRoman24_Character_055,TimesRoman24_Character_056,TimesRoman24_Character_057,TimesRoman24_Character_058,TimesRoman24_Character_059,TimesRoman24_Character_060,TimesRoman24_Character_061,TimesRoman24_Character_062,TimesRoman24_Character_063, - TimesRoman24_Character_064,TimesRoman24_Character_065,TimesRoman24_Character_066,TimesRoman24_Character_067,TimesRoman24_Character_068,TimesRoman24_Character_069,TimesRoman24_Character_070,TimesRoman24_Character_071,TimesRoman24_Character_072,TimesRoman24_Character_073,TimesRoman24_Character_074,TimesRoman24_Character_075,TimesRoman24_Character_076,TimesRoman24_Character_077,TimesRoman24_Character_078,TimesRoman24_Character_079, - TimesRoman24_Character_080,TimesRoman24_Character_081,TimesRoman24_Character_082,TimesRoman24_Character_083,TimesRoman24_Character_084,TimesRoman24_Character_085,TimesRoman24_Character_086,TimesRoman24_Character_087,TimesRoman24_Character_088,TimesRoman24_Character_089,TimesRoman24_Character_090,TimesRoman24_Character_091,TimesRoman24_Character_092,TimesRoman24_Character_093,TimesRoman24_Character_094,TimesRoman24_Character_095, - TimesRoman24_Character_096,TimesRoman24_Character_097,TimesRoman24_Character_098,TimesRoman24_Character_099,TimesRoman24_Character_100,TimesRoman24_Character_101,TimesRoman24_Character_102,TimesRoman24_Character_103,TimesRoman24_Character_104,TimesRoman24_Character_105,TimesRoman24_Character_106,TimesRoman24_Character_107,TimesRoman24_Character_108,TimesRoman24_Character_109,TimesRoman24_Character_110,TimesRoman24_Character_111, - TimesRoman24_Character_112,TimesRoman24_Character_113,TimesRoman24_Character_114,TimesRoman24_Character_115,TimesRoman24_Character_116,TimesRoman24_Character_117,TimesRoman24_Character_118,TimesRoman24_Character_119,TimesRoman24_Character_120,TimesRoman24_Character_121,TimesRoman24_Character_122,TimesRoman24_Character_123,TimesRoman24_Character_124,TimesRoman24_Character_125,TimesRoman24_Character_126,TimesRoman24_Character_032, - TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032, - TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032,TimesRoman24_Character_032, - TimesRoman24_Character_160,TimesRoman24_Character_161,TimesRoman24_Character_162,TimesRoman24_Character_163,TimesRoman24_Character_164,TimesRoman24_Character_165,TimesRoman24_Character_166,TimesRoman24_Character_167,TimesRoman24_Character_168,TimesRoman24_Character_169,TimesRoman24_Character_170,TimesRoman24_Character_171,TimesRoman24_Character_172,TimesRoman24_Character_173,TimesRoman24_Character_174,TimesRoman24_Character_175, - TimesRoman24_Character_176,TimesRoman24_Character_177,TimesRoman24_Character_178,TimesRoman24_Character_179,TimesRoman24_Character_180,TimesRoman24_Character_181,TimesRoman24_Character_182,TimesRoman24_Character_183,TimesRoman24_Character_184,TimesRoman24_Character_185,TimesRoman24_Character_186,TimesRoman24_Character_187,TimesRoman24_Character_188,TimesRoman24_Character_189,TimesRoman24_Character_190,TimesRoman24_Character_191, - TimesRoman24_Character_192,TimesRoman24_Character_193,TimesRoman24_Character_194,TimesRoman24_Character_195,TimesRoman24_Character_196,TimesRoman24_Character_197,TimesRoman24_Character_198,TimesRoman24_Character_199,TimesRoman24_Character_200,TimesRoman24_Character_201,TimesRoman24_Character_202,TimesRoman24_Character_203,TimesRoman24_Character_204,TimesRoman24_Character_205,TimesRoman24_Character_206,TimesRoman24_Character_207, - TimesRoman24_Character_208,TimesRoman24_Character_209,TimesRoman24_Character_210,TimesRoman24_Character_211,TimesRoman24_Character_212,TimesRoman24_Character_213,TimesRoman24_Character_214,TimesRoman24_Character_215,TimesRoman24_Character_216,TimesRoman24_Character_217,TimesRoman24_Character_218,TimesRoman24_Character_219,TimesRoman24_Character_220,TimesRoman24_Character_221,TimesRoman24_Character_222,TimesRoman24_Character_223, - TimesRoman24_Character_224,TimesRoman24_Character_225,TimesRoman24_Character_226,TimesRoman24_Character_227,TimesRoman24_Character_228,TimesRoman24_Character_229,TimesRoman24_Character_230,TimesRoman24_Character_231,TimesRoman24_Character_232,TimesRoman24_Character_233,TimesRoman24_Character_234,TimesRoman24_Character_235,TimesRoman24_Character_236,TimesRoman24_Character_237,TimesRoman24_Character_238,TimesRoman24_Character_239, - TimesRoman24_Character_240,TimesRoman24_Character_241,TimesRoman24_Character_242,TimesRoman24_Character_243,TimesRoman24_Character_244,TimesRoman24_Character_245,TimesRoman24_Character_246,TimesRoman24_Character_247,TimesRoman24_Character_248,TimesRoman24_Character_249,TimesRoman24_Character_250,TimesRoman24_Character_251,TimesRoman24_Character_252,TimesRoman24_Character_253,TimesRoman24_Character_254,TimesRoman24_Character_255,NULL}; - -/* The font structure: */ -const SFG_Font fgFontTimesRoman24 = { "-adobe-times-medium-r-normal--24-240-75-75-p-124-iso8859-1", 256, 29, TimesRoman24_Character_Map, 0, 7 }; - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_gamemode.c b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_gamemode.c deleted file mode 100644 index db776b5..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_gamemode.c +++ /dev/null @@ -1,594 +0,0 @@ -/* - * freeglut_gamemode.c - * - * The game mode handling code. - * - * Copyright (c) 1999-2000 Pawel W. Olszta. All Rights Reserved. - * Written by Pawel W. Olszta, - * Creation date: Thu Dec 16 1999 - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included - * in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - * PAWEL W. OLSZTA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER - * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - */ - -#include "freeglut.h" -#include "freeglut_internal.h" - -/* - * TODO BEFORE THE STABLE RELEASE: - * - * glutGameModeString() -- missing - * glutEnterGameMode() -- X11 version - * glutLeaveGameMode() -- is that correct? - * glutGameModeGet() -- is that correct? - */ - - -/* -- PRIVATE FUNCTIONS ---------------------------------------------------- */ - -/* - * Remembers the current visual settings, so that - * we can change them and restore later... - */ -static void fghRememberState( void ) -{ -#if TARGET_HOST_POSIX_X11 - - /* - * This highly depends on the XFree86 extensions, - * not approved as X Consortium standards - */ -# ifdef X_XF86VidModeGetModeLine - - - /* - * Remember the current ViewPort location of the screen to be able to - * restore the ViewPort on LeaveGameMode(): - */ - if( !XF86VidModeGetViewPort( - fgDisplay.Display, - fgDisplay.Screen, - &fgDisplay.DisplayViewPortX, - &fgDisplay.DisplayViewPortY ) ) - fgWarning( "XF86VidModeGetViewPort failed" ); - - /* - * Remember the current pointer location before going fullscreen - * for restoring it later: - */ - { - Window junk_window; - unsigned int mask; - - XQueryPointer( - fgDisplay.Display, fgDisplay.RootWindow, - &junk_window, &junk_window, - &fgDisplay.DisplayPointerX, &fgDisplay.DisplayPointerY, - &fgDisplay.DisplayPointerX, &fgDisplay.DisplayPointerY, &mask - ); - } - - /* Query the current display settings: */ - fgDisplay.DisplayModeValid = - XF86VidModeGetModeLine( - fgDisplay.Display, - fgDisplay.Screen, - &fgDisplay.DisplayModeClock, - &fgDisplay.DisplayMode - ); - - if( !fgDisplay.DisplayModeValid ) - fgWarning( "XF86VidModeGetModeLine failed" ); - -# else - /* - * XXX warning fghRememberState: missing XFree86 video mode extensions, - * XXX game mode will not change screen resolution when activated - */ -# endif - -#elif TARGET_HOST_MS_WINDOWS - -/* DEVMODE devMode; */ - - /* Grab the current desktop settings... */ - -/* hack to get around my stupid cross-gcc headers */ -#define FREEGLUT_ENUM_CURRENT_SETTINGS -1 - - EnumDisplaySettings( NULL, FREEGLUT_ENUM_CURRENT_SETTINGS, - &fgDisplay.DisplayMode ); - - /* Make sure we will be restoring all settings needed */ - fgDisplay.DisplayMode.dmFields |= - DM_PELSWIDTH | DM_PELSHEIGHT | DM_BITSPERPEL | DM_DISPLAYFREQUENCY; - -#endif -} - -/* - * Restores the previously remembered visual settings - */ -static void fghRestoreState( void ) -{ -#if TARGET_HOST_POSIX_X11 - -# ifdef X_XF86VidModeGetAllModeLines - /* Restore the remembered pointer position: */ - XWarpPointer( - fgDisplay.Display, None, fgDisplay.RootWindow, 0, 0, 0, 0, - fgDisplay.DisplayPointerX, fgDisplay.DisplayPointerY - ); - - /* - * This highly depends on the XFree86 extensions, - * not approved as X Consortium standards - */ - - if( fgDisplay.DisplayModeValid ) - { - XF86VidModeModeInfo** displayModes; - int i, displayModesCount; - - if( !XF86VidModeGetAllModeLines( - fgDisplay.Display, - fgDisplay.Screen, - &displayModesCount, - &displayModes ) ) - { - fgWarning( "XF86VidModeGetAllModeLines failed" ); - return; - } - - - /* - * Check every of the modes looking for one that matches our demands. - * If we find one, switch to it and restore the remembered viewport. - */ - for( i = 0; i < displayModesCount; i++ ) - { - if(displayModes[ i ]->hdisplay == fgDisplay.DisplayMode.hdisplay && - displayModes[ i ]->vdisplay == fgDisplay.DisplayMode.vdisplay && - displayModes[ i ]->dotclock == fgDisplay.DisplayModeClock ) - { - if( !XF86VidModeSwitchToMode( - fgDisplay.Display, - fgDisplay.Screen, - displayModes[ i ] ) ) - { - fgWarning( "XF86VidModeSwitchToMode failed" ); - break; - } - - if( !XF86VidModeSetViewPort( - fgDisplay.Display, - fgDisplay.Screen, - fgDisplay.DisplayViewPortX, - fgDisplay.DisplayViewPortY ) ) - fgWarning( "XF86VidModeSetViewPort failed" ); - - - /* - * For the case this would be the last X11 call the application - * calls exit() we've to flush the X11 output queue to have the - * commands sent to the X server before the application exits. - */ - XFlush( fgDisplay.Display ); - - break; - } - } - XFree( displayModes ); - } - -# else - /* - * XXX warning fghRestoreState: missing XFree86 video mode extensions, - * XXX game mode will not change screen resolution when activated - */ -# endif - -#elif TARGET_HOST_MS_WINDOWS - - /* Restore the previously rememebered desktop display settings */ - ChangeDisplaySettings( &fgDisplay.DisplayMode, 0 ); - -#endif -} - -#if TARGET_HOST_POSIX_X11 -#ifdef X_XF86VidModeGetAllModeLines - -/* - * Checks a single display mode settings against user's preferences. - */ -static GLboolean fghCheckDisplayMode( int width, int height, int depth, int refresh ) -{ - /* The desired values should be stored in fgState structure... */ - return ( width == fgState.GameModeSize.X ) && - ( height == fgState.GameModeSize.Y ) && - ( depth == fgState.GameModeDepth ) && - ( refresh == fgState.GameModeRefresh ); -} - -/* - * Checks all display modes settings against user's preferences. - * Returns the mode number found or -1 if none could be found. - */ -static int fghCheckDisplayModes( GLboolean exactMatch, int displayModesCount, XF86VidModeModeInfo** displayModes ) -{ - int i; - for( i = 0; i < displayModesCount; i++ ) - { - /* Compute the displays refresh rate, dotclock comes in kHz. */ - int refresh = ( displayModes[ i ]->dotclock * 1000 ) / - ( displayModes[ i ]->htotal * displayModes[ i ]->vtotal ); - - if( fghCheckDisplayMode( displayModes[ i ]->hdisplay, - displayModes[ i ]->vdisplay, - fgState.GameModeDepth, - ( exactMatch ? refresh : fgState.GameModeRefresh ) ) ) { - return i; - } - } - return -1; -} - -#endif -#endif - -/* - * Changes the current display mode to match user's settings - */ -static GLboolean fghChangeDisplayMode( GLboolean haveToTest ) -{ - GLboolean success = GL_FALSE; -#if TARGET_HOST_POSIX_X11 - - /* - * This highly depends on the XFree86 extensions, - * not approved as X Consortium standards - */ -# ifdef X_XF86VidModeGetAllModeLines - - /* - * This is also used by applcations which check modes by calling - * glutGameModeGet(GLUT_GAME_MODE_POSSIBLE), so allow the check: - */ - if( haveToTest || fgDisplay.DisplayModeValid ) - { - XF86VidModeModeInfo** displayModes; - int i, displayModesCount; - - if( !XF86VidModeGetAllModeLines( - fgDisplay.Display, - fgDisplay.Screen, - &displayModesCount, - &displayModes ) ) - { - fgWarning( "XF86VidModeGetAllModeLines failed" ); - return success; - } - - - /* - * Check every of the modes looking for one that matches our demands, - * ignoring the refresh rate if no exact match could be found. - */ - i = fghCheckDisplayModes( GL_TRUE, displayModesCount, displayModes ); - if( i < 0 ) { - i = fghCheckDisplayModes( GL_FALSE, displayModesCount, displayModes ); - } - success = ( i < 0 ) ? GL_FALSE : GL_TRUE; - - if( !haveToTest && success ) { - if( !XF86VidModeSwitchToMode( - fgDisplay.Display, - fgDisplay.Screen, - displayModes[ i ] ) ) - fgWarning( "XF86VidModeSwitchToMode failed" ); - } - - XFree( displayModes ); - } - -# else - - /* - * XXX warning fghChangeDisplayMode: missing XFree86 video mode extensions, - * XXX game mode will not change screen resolution when activated - */ - success = GL_TRUE; - -# endif - -#elif TARGET_HOST_MS_WINDOWS - - DEVMODE devMode; - char *fggmstr = NULL; - - success = GL_FALSE; - - EnumDisplaySettings( NULL, -1, &devMode ); - devMode.dmFields |= DM_PELSWIDTH | DM_PELSHEIGHT | DM_BITSPERPEL | DM_DISPLAYFREQUENCY; - - devMode.dmPelsWidth = fgState.GameModeSize.X; - devMode.dmPelsHeight = fgState.GameModeSize.Y; - devMode.dmBitsPerPel = fgState.GameModeDepth; - devMode.dmDisplayFrequency = fgState.GameModeRefresh; - devMode.dmFields = DM_PELSWIDTH | DM_PELSHEIGHT | DM_BITSPERPEL | DM_DISPLAYFREQUENCY; - - switch ( ChangeDisplaySettingsEx(NULL, &devMode, NULL, haveToTest ? CDS_TEST : CDS_FULLSCREEN , NULL) ) - { - case DISP_CHANGE_SUCCESSFUL: - success = GL_TRUE; - - /* update vars in case if windows switched to proper mode */ - EnumDisplaySettings( NULL, FREEGLUT_ENUM_CURRENT_SETTINGS, &devMode ); - fgState.GameModeSize.X = devMode.dmPelsWidth; - fgState.GameModeSize.Y = devMode.dmPelsHeight; - fgState.GameModeDepth = devMode.dmBitsPerPel; - fgState.GameModeRefresh = devMode.dmDisplayFrequency; - break; - case DISP_CHANGE_RESTART: - fggmstr = "The computer must be restarted for the graphics mode to work."; - break; - case DISP_CHANGE_BADFLAGS: - fggmstr = "An invalid set of flags was passed in."; - break; - case DISP_CHANGE_BADPARAM: - fggmstr = "An invalid parameter was passed in. This can include an invalid flag or combination of flags."; - break; - case DISP_CHANGE_FAILED: - fggmstr = "The display driver failed the specified graphics mode."; - break; - case DISP_CHANGE_BADMODE: - fggmstr = "The graphics mode is not supported."; - break; - default: - fggmstr = "Unknown error in graphics mode???"; /* dunno if it is possible,MSDN does not mention any other error */ - break; - } - - if ( !success ) - fgWarning(fggmstr); /* I'd rather get info whats going on in my program than wonder about */ - /* magic happenings behind my back, its lib for devels at last ;) */ -#endif - - return success; -} - - -/* -- INTERFACE FUNCTIONS -------------------------------------------------- */ - -/* - * Sets the game mode display string - */ -void FGAPIENTRY glutGameModeString( const char* string ) -{ - int width = 640, height = 480, depth = 16, refresh = 72; - - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutGameModeString" ); - - /* - * This one seems a bit easier than glutInitDisplayString. The bad thing - * about it that I was unable to find the game mode string definition, so - * that I assumed it is: "[width]x[height]:[depth]@[refresh rate]", which - * appears in all GLUT game mode programs I have seen to date. - */ - if( sscanf( string, "%ix%i:%i@%i", &width, &height, &depth, &refresh ) != - 4 ) - if( sscanf( string, "%ix%i:%i", &width, &height, &depth ) != 3 ) - if( sscanf( string, "%ix%i@%i", &width, &height, &refresh ) != 3 ) - if( sscanf( string, "%ix%i", &width, &height ) != 2 ) - if( sscanf( string, ":%i@%i", &depth, &refresh ) != 2 ) - if( sscanf( string, ":%i", &depth ) != 1 ) - if( sscanf( string, "@%i", &refresh ) != 1 ) - fgWarning( - "unable to parse game mode string `%s'", - string - ); - - /* Hopefully it worked, and if not, we still have the default values */ - fgState.GameModeSize.X = width; - fgState.GameModeSize.Y = height; - fgState.GameModeDepth = depth; - fgState.GameModeRefresh = refresh; -} - -/* - * Enters the game mode - */ -int FGAPIENTRY glutEnterGameMode( void ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutEnterGameMode" ); - - if( fgStructure.GameModeWindow ) - fgAddToWindowDestroyList( fgStructure.GameModeWindow ); - else - fghRememberState( ); - - if( ! fghChangeDisplayMode( GL_FALSE ) ) - { - fgWarning( "failed to change screen settings" ); - return 0; - } - - fgStructure.GameModeWindow = fgCreateWindow( - NULL, "FREEGLUT", GL_TRUE, 0, 0, - GL_TRUE, fgState.GameModeSize.X, fgState.GameModeSize.Y, - GL_TRUE, GL_FALSE - ); - - fgStructure.GameModeWindow->State.Width = fgState.GameModeSize.X; - fgStructure.GameModeWindow->State.Height = fgState.GameModeSize.Y; - fgStructure.GameModeWindow->State.NeedToResize = GL_TRUE; - -#if TARGET_HOST_POSIX_X11 - - /* - * Sync needed to avoid a real race, the Xserver must have really created - * the window before we can grab the pointer into it: - */ - XSync( fgDisplay.Display, False ); - - /* - * Grab the pointer to confine it into the window after the calls to - * XWrapPointer() which ensure that the pointer really enters the window. - * - * We also need to wait here until XGrabPointer() returns GrabSuccess, - * otherwise the new window is not viewable yet and if the next function - * (XSetInputFocus) is called with a not yet viewable window, it will exit - * the application which we have to aviod, so wait until it's viewable: - */ - while( GrabSuccess != XGrabPointer( - fgDisplay.Display, fgStructure.GameModeWindow->Window.Handle, - TRUE, - ButtonPressMask | ButtonReleaseMask | ButtonMotionMask - | PointerMotionMask, - GrabModeAsync, GrabModeAsync, - fgStructure.GameModeWindow->Window.Handle, None, CurrentTime) ) - usleep( 100 ); - - /* - * Change input focus to the new window. This will exit the application - * if the new window is not viewable yet, see the XGrabPointer loop above. - */ - XSetInputFocus( - fgDisplay.Display, - fgStructure.GameModeWindow->Window.Handle, - RevertToNone, - CurrentTime - ); - - /* Move the Pointer to the middle of the fullscreen window */ - XWarpPointer( - fgDisplay.Display, - None, - fgDisplay.RootWindow, - 0, 0, 0, 0, - fgState.GameModeSize.X/2, fgState.GameModeSize.Y/2 - ); - -# ifdef X_XF86VidModeSetViewPort - - if( fgDisplay.DisplayModeValid ) - { - int x, y; - Window child; - - /* Change to viewport to the window topleft edge: */ - if( !XF86VidModeSetViewPort( fgDisplay.Display, fgDisplay.Screen, 0, 0 ) ) - fgWarning( "XF86VidModeSetViewPort failed" ); - - /* - * Final window repositioning: It could be avoided using an undecorated - * window using override_redirect, but this * would possily require - * more changes and investigation. - */ - - /* Get the current postion of the drawable area on screen */ - XTranslateCoordinates( - fgDisplay.Display, - fgStructure.CurrentWindow->Window.Handle, - fgDisplay.RootWindow, - 0, 0, &x, &y, - &child - ); - - /* Move the decorataions out of the topleft corner of the display */ - XMoveWindow( fgDisplay.Display, fgStructure.CurrentWindow->Window.Handle, - -x, -y); - } - -#endif - - /* Grab the keyboard, too */ - XGrabKeyboard( - fgDisplay.Display, - fgStructure.GameModeWindow->Window.Handle, - FALSE, - GrabModeAsync, GrabModeAsync, - CurrentTime - ); - -#endif - - return fgStructure.GameModeWindow->ID; -} - -/* - * Leaves the game mode - */ -void FGAPIENTRY glutLeaveGameMode( void ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutLeaveGameMode" ); - - freeglut_return_if_fail( fgStructure.GameModeWindow ); - - fgAddToWindowDestroyList( fgStructure.GameModeWindow ); - fgStructure.GameModeWindow = NULL; - -#if TARGET_HOST_POSIX_X11 - - XUngrabPointer( fgDisplay.Display, CurrentTime ); - XUngrabKeyboard( fgDisplay.Display, CurrentTime ); - -#endif - - fghRestoreState(); -} - -/* - * Returns information concerning the freeglut game mode - */ -int FGAPIENTRY glutGameModeGet( GLenum eWhat ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutGameModeGet" ); - - switch( eWhat ) - { - case GLUT_GAME_MODE_ACTIVE: - return !!fgStructure.GameModeWindow; - - case GLUT_GAME_MODE_POSSIBLE: - return fghChangeDisplayMode( GL_TRUE ); - - case GLUT_GAME_MODE_WIDTH: - return fgState.GameModeSize.X; - - case GLUT_GAME_MODE_HEIGHT: - return fgState.GameModeSize.Y; - - case GLUT_GAME_MODE_PIXEL_DEPTH: - return fgState.GameModeDepth; - - case GLUT_GAME_MODE_REFRESH_RATE: - return fgState.GameModeRefresh; - - case GLUT_GAME_MODE_DISPLAY_CHANGED: - /* - * This is true if the game mode has been activated successfully.. - */ - return !!fgStructure.GameModeWindow; - } - - fgWarning( "Unknown gamemode get: %d", eWhat ); - return -1; -} - -/*** END OF FILE ***/ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_geometry.c b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_geometry.c deleted file mode 100644 index 1b6cb7d..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_geometry.c +++ /dev/null @@ -1,1215 +0,0 @@ -/* - * freeglut_geometry.c - * - * Freeglut geometry rendering methods. - * - * Copyright (c) 1999-2000 Pawel W. Olszta. All Rights Reserved. - * Written by Pawel W. Olszta, - * Creation date: Fri Dec 3 1999 - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included - * in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - * PAWEL W. OLSZTA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER - * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - */ - -#include "freeglut.h" -#include "freeglut_internal.h" - -/* - * TODO BEFORE THE STABLE RELEASE: - * - * Following functions have been contributed by Andreas Umbach. - * - * glutWireCube() -- looks OK - * glutSolidCube() -- OK - * - * Those functions have been implemented by John Fay. - * - * glutWireTorus() -- looks OK - * glutSolidTorus() -- looks OK - * glutWireDodecahedron() -- looks OK - * glutSolidDodecahedron() -- looks OK - * glutWireOctahedron() -- looks OK - * glutSolidOctahedron() -- looks OK - * glutWireTetrahedron() -- looks OK - * glutSolidTetrahedron() -- looks OK - * glutWireIcosahedron() -- looks OK - * glutSolidIcosahedron() -- looks OK - * - * The Following functions have been updated by Nigel Stewart, based - * on FreeGLUT 2.0.0 implementations: - * - * glutWireSphere() -- looks OK - * glutSolidSphere() -- looks OK - * glutWireCone() -- looks OK - * glutSolidCone() -- looks OK - */ - - -/* -- INTERFACE FUNCTIONS -------------------------------------------------- */ - -/* - * Draws a wireframed cube. Code contributed by Andreas Umbach - */ -void FGAPIENTRY glutWireCube( GLdouble dSize ) -{ - double size = dSize * 0.5; - - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutWireCube" ); - -# define V(a,b,c) glVertex3d( a size, b size, c size ); -# define N(a,b,c) glNormal3d( a, b, c ); - - /* PWO: I dared to convert the code to use macros... */ - glBegin( GL_LINE_LOOP ); N( 1.0, 0.0, 0.0); V(+,-,+); V(+,-,-); V(+,+,-); V(+,+,+); glEnd(); - glBegin( GL_LINE_LOOP ); N( 0.0, 1.0, 0.0); V(+,+,+); V(+,+,-); V(-,+,-); V(-,+,+); glEnd(); - glBegin( GL_LINE_LOOP ); N( 0.0, 0.0, 1.0); V(+,+,+); V(-,+,+); V(-,-,+); V(+,-,+); glEnd(); - glBegin( GL_LINE_LOOP ); N(-1.0, 0.0, 0.0); V(-,-,+); V(-,+,+); V(-,+,-); V(-,-,-); glEnd(); - glBegin( GL_LINE_LOOP ); N( 0.0,-1.0, 0.0); V(-,-,+); V(-,-,-); V(+,-,-); V(+,-,+); glEnd(); - glBegin( GL_LINE_LOOP ); N( 0.0, 0.0,-1.0); V(-,-,-); V(-,+,-); V(+,+,-); V(+,-,-); glEnd(); - -# undef V -# undef N -} - -/* - * Draws a solid cube. Code contributed by Andreas Umbach - */ -void FGAPIENTRY glutSolidCube( GLdouble dSize ) -{ - double size = dSize * 0.5; - - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutSolidCube" ); - -# define V(a,b,c) glVertex3d( a size, b size, c size ); -# define N(a,b,c) glNormal3d( a, b, c ); - - /* PWO: Again, I dared to convert the code to use macros... */ - glBegin( GL_QUADS ); - N( 1.0, 0.0, 0.0); V(+,-,+); V(+,-,-); V(+,+,-); V(+,+,+); - N( 0.0, 1.0, 0.0); V(+,+,+); V(+,+,-); V(-,+,-); V(-,+,+); - N( 0.0, 0.0, 1.0); V(+,+,+); V(-,+,+); V(-,-,+); V(+,-,+); - N(-1.0, 0.0, 0.0); V(-,-,+); V(-,+,+); V(-,+,-); V(-,-,-); - N( 0.0,-1.0, 0.0); V(-,-,+); V(-,-,-); V(+,-,-); V(+,-,+); - N( 0.0, 0.0,-1.0); V(-,-,-); V(-,+,-); V(+,+,-); V(+,-,-); - glEnd(); - -# undef V -# undef N -} - -/* - * Compute lookup table of cos and sin values forming a cirle - * - * Notes: - * It is the responsibility of the caller to free these tables - * The size of the table is (n+1) to form a connected loop - * The last entry is exactly the same as the first - * The sign of n can be flipped to get the reverse loop - */ - -static void fghCircleTable(double **sint,double **cost,const int n) -{ - int i; - - /* Table size, the sign of n flips the circle direction */ - - const int size = abs(n); - - /* Determine the angle between samples */ - - const double angle = 2*M_PI/(double)( ( n == 0 ) ? 1 : n ); - - /* Allocate memory for n samples, plus duplicate of first entry at the end */ - - *sint = (double *) calloc(sizeof(double), size+1); - *cost = (double *) calloc(sizeof(double), size+1); - - /* Bail out if memory allocation fails, fgError never returns */ - - if (!(*sint) || !(*cost)) - { - free(*sint); - free(*cost); - fgError("Failed to allocate memory in fghCircleTable"); - } - - /* Compute cos and sin around the circle */ - - (*sint)[0] = 0.0; - (*cost)[0] = 1.0; - - for (i=1; i0)?1:0]; - r0 = 0.0; - r1 = sint2[(stacks>0)?1:0]; - - glBegin(GL_TRIANGLE_FAN); - - glNormal3d(0,0,1); - glVertex3d(0,0,radius); - - for (j=slices; j>=0; j--) - { - glNormal3d(cost1[j]*r1, sint1[j]*r1, z1 ); - glVertex3d(cost1[j]*r1*radius, sint1[j]*r1*radius, z1*radius); - } - - glEnd(); - - /* Cover each stack with a quad strip, except the top and bottom stacks */ - - for( i=1; i 0 ) ? stacks : 1 ); - const double rStep = base / ( ( stacks > 0 ) ? stacks : 1 ); - - /* Scaling factors for vertex normals */ - - const double cosn = ( height / sqrt ( height * height + base * base )); - const double sinn = ( base / sqrt ( height * height + base * base )); - - /* Pre-computed circle */ - - double *sint,*cost; - - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutSolidCone" ); - - fghCircleTable(&sint,&cost,-slices); - - /* Cover the circular base with a triangle fan... */ - - z0 = 0.0; - z1 = zStep; - - r0 = base; - r1 = r0 - rStep; - - glBegin(GL_TRIANGLE_FAN); - - glNormal3d(0.0,0.0,-1.0); - glVertex3d(0.0,0.0, z0 ); - - for (j=0; j<=slices; j++) - glVertex3d(cost[j]*r0, sint[j]*r0, z0); - - glEnd(); - - /* Cover each stack with a quad strip, except the top stack */ - - for( i=0; i 0 ) ? stacks : 1 ); - const double rStep = base / ( ( stacks > 0 ) ? stacks : 1 ); - - /* Scaling factors for vertex normals */ - - const double cosn = ( height / sqrt ( height * height + base * base )); - const double sinn = ( base / sqrt ( height * height + base * base )); - - /* Pre-computed circle */ - - double *sint,*cost; - - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutWireCone" ); - - fghCircleTable(&sint,&cost,-slices); - - /* Draw the stacks... */ - - for (i=0; i 0 ) ? stacks : 1 ); - - /* Pre-computed circle */ - - double *sint,*cost; - - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutSolidCylinder" ); - - fghCircleTable(&sint,&cost,-slices); - - /* Cover the base and top */ - - glBegin(GL_TRIANGLE_FAN); - glNormal3d(0.0, 0.0, -1.0 ); - glVertex3d(0.0, 0.0, 0.0 ); - for (j=0; j<=slices; j++) - glVertex3d(cost[j]*radius, sint[j]*radius, 0.0); - glEnd(); - - glBegin(GL_TRIANGLE_FAN); - glNormal3d(0.0, 0.0, 1.0 ); - glVertex3d(0.0, 0.0, height); - for (j=slices; j>=0; j--) - glVertex3d(cost[j]*radius, sint[j]*radius, height); - glEnd(); - - /* Do the stacks */ - - z0 = 0.0; - z1 = zStep; - - for (i=1; i<=stacks; i++) - { - if (i==stacks) - z1 = height; - - glBegin(GL_QUAD_STRIP); - for (j=0; j<=slices; j++ ) - { - glNormal3d(cost[j], sint[j], 0.0 ); - glVertex3d(cost[j]*radius, sint[j]*radius, z0 ); - glVertex3d(cost[j]*radius, sint[j]*radius, z1 ); - } - glEnd(); - - z0 = z1; z1 += zStep; - } - - /* Release sin and cos tables */ - - free(sint); - free(cost); -} - -/* - * Draws a wire cylinder - */ -void FGAPIENTRY glutWireCylinder(GLdouble radius, GLdouble height, GLint slices, GLint stacks) -{ - int i,j; - - /* Step in z and radius as stacks are drawn. */ - - double z = 0.0; - const double zStep = height / ( ( stacks > 0 ) ? stacks : 1 ); - - /* Pre-computed circle */ - - double *sint,*cost; - - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutWireCylinder" ); - - fghCircleTable(&sint,&cost,-slices); - - /* Draw the stacks... */ - - for (i=0; i<=stacks; i++) - { - if (i==stacks) - z = height; - - glBegin(GL_LINE_LOOP); - - for( j=0; j 0 ) - { - GLdouble local_offset[3] ; /* Use a local variable to avoid buildup of roundoff errors */ - num_levels -- ; - scale /= 2.0 ; - for ( i = 0 ; i < NUM_TETR_FACES ; i++ ) - { - local_offset[0] = offset[0] + scale * tet_r[i][0] ; - local_offset[1] = offset[1] + scale * tet_r[i][1] ; - local_offset[2] = offset[2] + scale * tet_r[i][2] ; - glutWireSierpinskiSponge ( num_levels, local_offset, scale ) ; - } - } -} - -void FGAPIENTRY glutSolidSierpinskiSponge ( int num_levels, GLdouble offset[3], GLdouble scale ) -{ - int i, j ; - - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutSolidSierpinskiSponge" ); - - if ( num_levels == 0 ) - { - glBegin ( GL_TRIANGLES ) ; - - for ( i = 0 ; i < NUM_TETR_FACES ; i++ ) - { - glNormal3d ( -tet_r[i][0], -tet_r[i][1], -tet_r[i][2] ) ; - for ( j = 0; j < 3; j++ ) - { - double x = offset[0] + scale * tet_r[tet_i[i][j]][0] ; - double y = offset[1] + scale * tet_r[tet_i[i][j]][1] ; - double z = offset[2] + scale * tet_r[tet_i[i][j]][2] ; - glVertex3d ( x, y, z ) ; - } - } - - glEnd () ; - } - else if ( num_levels > 0 ) - { - GLdouble local_offset[3] ; /* Use a local variable to avoid buildup of roundoff errors */ - num_levels -- ; - scale /= 2.0 ; - for ( i = 0 ; i < NUM_TETR_FACES ; i++ ) - { - local_offset[0] = offset[0] + scale * tet_r[i][0] ; - local_offset[1] = offset[1] + scale * tet_r[i][1] ; - local_offset[2] = offset[2] + scale * tet_r[i][2] ; - glutSolidSierpinskiSponge ( num_levels, local_offset, scale ) ; - } - } -} - -/*** END OF FILE ***/ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_glutfont_definitions.c b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_glutfont_definitions.c deleted file mode 100644 index 0a24cce..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_glutfont_definitions.c +++ /dev/null @@ -1,108 +0,0 @@ -/* - * freeglut_glutfont_definitions.c - * - * Bitmap and stroke fonts displaying. - * - * Copyright (c) 2003 Stephen J. Baker (whether he wants it or not). - * All Rights Reserved. - * Written by John F. Fay , who releases the - * copyright over to the "freeglut" project lead. - * Creation date: Mon July 21 2003 - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included - * in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - * PAWEL W. OLSZTA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER - * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - */ - -/* - * This file is necessary for the *nix version of "freeglut" because the - * original GLUT defined its font variables in rather an unusual way. - * Publicly, in "glut.h", they were defined as "void *". Privately, - * in one of the source code files, they were defined as pointers to a - * structure. Most compilers and linkers are satisfied with the "void *" - * and don't go any farther, but some of them balked. In particular, - * when compiling with "freeglut" and then trying to run using the GLUT - * ".so" library, some of them would give an error. So we are having to - * create this file to define the variables as pointers to an unusual - * structure to match GLUT. - */ - -/* - * freeglut_internal.h uses some GL types, but including the GL header portably - * is a bit tricky, so we include freeglut_std.h here, which contains the - * necessary machinery. But this poses another problem, caused by the ugly - * original defintion of the font constants in "classic" GLUT: They are defined - * as void* externally, so we move them temporarily out of the way by AN EXTREME - * CPP HACK. - */ - -#define glutStrokeRoman glutStrokeRomanIGNOREME -#define glutStrokeMonoRoman glutStrokeMonoRomanIGNOREME -#define glutBitmap9By15 glutBitmap9By15IGNOREME -#define glutBitmap8By13 glutBitmap8By13IGNOREME -#define glutBitmapTimesRoman10 glutBitmapTimesRoman10IGNOREME -#define glutBitmapTimesRoman24 glutBitmapTimesRoman24IGNOREME -#define glutBitmapHelvetica10 glutBitmapHelvetica10IGNOREME -#define glutBitmapHelvetica12 glutBitmapHelvetica12IGNOREME -#define glutBitmapHelvetica18 glutBitmapHelvetica18IGNOREME - -#include "freeglut_std.h" - -#undef glutStrokeRoman -#undef glutStrokeMonoRoman -#undef glutBitmap9By15 -#undef glutBitmap8By13 -#undef glutBitmapTimesRoman10 -#undef glutBitmapTimesRoman24 -#undef glutBitmapHelvetica10 -#undef glutBitmapHelvetica12 -#undef glutBitmapHelvetica18 - -#include "freeglut_internal.h" - -#if TARGET_HOST_POSIX_X11 - -struct freeglutStrokeFont -{ - const char *name ; - int num_chars ; - void *ch ; - float top ; - float bottom ; -}; - -struct freeglutBitmapFont -{ - const char *name ; - const int num_chars ; - const int first ; - const void *ch ; -}; - - -struct freeglutStrokeFont glutStrokeRoman ; -struct freeglutStrokeFont glutStrokeMonoRoman ; - -struct freeglutBitmapFont glutBitmap9By15 ; -struct freeglutBitmapFont glutBitmap8By13 ; -struct freeglutBitmapFont glutBitmapTimesRoman10 ; -struct freeglutBitmapFont glutBitmapTimesRoman24 ; -struct freeglutBitmapFont glutBitmapHelvetica10 ; -struct freeglutBitmapFont glutBitmapHelvetica12 ; -struct freeglutBitmapFont glutBitmapHelvetica18 ; - -#endif - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_init.c b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_init.c deleted file mode 100644 index 73310ea..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_init.c +++ /dev/null @@ -1,1166 +0,0 @@ -/* - * freeglut_init.c - * - * Various freeglut initialization functions. - * - * Copyright (c) 1999-2000 Pawel W. Olszta. All Rights Reserved. - * Written by Pawel W. Olszta, - * Creation date: Thu Dec 2 1999 - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included - * in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - * PAWEL W. OLSZTA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER - * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - */ - -#define FREEGLUT_BUILDING_LIB -#include "freeglut.h" -#include "freeglut_internal.h" - -#if TARGET_HOST_POSIX_X11 -#include /* LONG_MAX */ -#endif - -/* - * TODO BEFORE THE STABLE RELEASE: - * - * fgDeinitialize() -- Win32's OK, X11 needs the OS-specific - * deinitialization done - * glutInitDisplayString() -- display mode string parsing - * - * Wouldn't it be cool to use gettext() for error messages? I just love - * bash saying "nie znaleziono pliku" instead of "file not found" :) - * Is gettext easily portable? - */ - -/* -- GLOBAL VARIABLES ----------------------------------------------------- */ - -/* - * A structure pointed by g_pDisplay holds all information - * regarding the display, screen, root window etc. - */ -SFG_Display fgDisplay; - -/* - * The settings for the current freeglut session - */ -SFG_State fgState = { { -1, -1, GL_FALSE }, /* Position */ - { 300, 300, GL_TRUE }, /* Size */ - GLUT_RGBA | GLUT_SINGLE | GLUT_DEPTH, /* DisplayMode */ - GL_FALSE, /* Initialised */ - GLUT_TRY_DIRECT_CONTEXT, /* DirectContext */ - GL_FALSE, /* ForceIconic */ - GL_FALSE, /* UseCurrentContext */ - GL_FALSE, /* GLDebugSwitch */ - GL_FALSE, /* XSyncSwitch */ - GLUT_KEY_REPEAT_ON, /* KeyRepeat */ - INVALID_MODIFIERS, /* Modifiers */ - 0, /* FPSInterval */ - 0, /* SwapCount */ - 0, /* SwapTime */ - 0, /* Time */ - { NULL, NULL }, /* Timers */ - { NULL, NULL }, /* FreeTimers */ - NULL, /* IdleCallback */ - 0, /* ActiveMenus */ - NULL, /* MenuStateCallback */ - NULL, /* MenuStatusCallback */ - { 640, 480, GL_TRUE }, /* GameModeSize */ - 16, /* GameModeDepth */ - 72, /* GameModeRefresh */ - GLUT_ACTION_EXIT, /* ActionOnWindowClose */ - GLUT_EXEC_STATE_INIT, /* ExecState */ - NULL, /* ProgramName */ - GL_FALSE, /* JoysticksInitialised */ - GL_FALSE, /* InputDevsInitialised */ - 1, /* AuxiliaryBufferNumber */ - 4, /* SampleNumber */ - 1, /* MajorVersion */ - 0, /* MajorVersion */ - 0, /* ContextFlags */ - 0 /* ContextProfile */ -}; - - -/* -- PRIVATE FUNCTIONS ---------------------------------------------------- */ - -#if TARGET_HOST_POSIX_X11 - -/* Return the atom associated with "name". */ -static Atom fghGetAtom(const char * name) -{ - return XInternAtom(fgDisplay.Display, name, False); -} - -/* - * Check if "property" is set on "window". The property's values are returned - * through "data". If the property is set and is of type "type", return the - * number of elements in "data". Return zero otherwise. In both cases, use - * "Xfree()" to free "data". - */ -static int fghGetWindowProperty(Window window, - Atom property, - Atom type, - unsigned char ** data) -{ - /* - * Caller always has to use "Xfree()" to free "data", since - * "XGetWindowProperty() always allocates one extra byte in prop_return - * [i.e. "data"] (even if the property is zero length) [..]". - */ - - int status; /* Returned by "XGetWindowProperty". */ - - Atom type_returned; - int temp_format; /* Not used. */ - unsigned long number_of_elements; - unsigned long temp_bytes_after; /* Not used. */ - - - status = XGetWindowProperty(fgDisplay.Display, - window, - property, - 0, - LONG_MAX, - False, - type, - &type_returned, - &temp_format, - &number_of_elements, - &temp_bytes_after, - data); - - FREEGLUT_INTERNAL_ERROR_EXIT(status == Success, - "XGetWindowProperty failled", - "fghGetWindowProperty"); - - if (type_returned != type) - { - number_of_elements = 0; - } - - return number_of_elements; -} - -/* Check if the window manager is NET WM compliant. */ -static int fghNetWMSupported(void) -{ - Atom wm_check; - Window ** window_ptr_1; - - int number_of_windows; - int net_wm_supported; - - - net_wm_supported = 0; - - wm_check = fghGetAtom("_NET_SUPPORTING_WM_CHECK"); - window_ptr_1 = malloc(sizeof(Window *)); - - /* - * Check that the window manager has set this property on the root window. - * The property must be the ID of a child window. - */ - number_of_windows = fghGetWindowProperty(fgDisplay.RootWindow, - wm_check, - XA_WINDOW, - (unsigned char **) window_ptr_1); - if (number_of_windows == 1) - { - Window ** window_ptr_2; - - window_ptr_2 = malloc(sizeof(Window *)); - - /* Check that the window has the same property set to the same value. */ - number_of_windows = fghGetWindowProperty(**window_ptr_1, - wm_check, - XA_WINDOW, - (unsigned char **) window_ptr_2); - if ((number_of_windows == 1) && (**window_ptr_1 == **window_ptr_2)) - { - /* NET WM compliant */ - net_wm_supported = 1; - } - - XFree(*window_ptr_2); - free(window_ptr_2); - } - - XFree(*window_ptr_1); - free(window_ptr_1); - - return net_wm_supported; -} - -/* Check if "hint" is present in "property" for "window". */ -int fgHintPresent(Window window, Atom property, Atom hint) -{ - Atom ** atoms_ptr; - int number_of_atoms; - int supported; - int i; - - supported = 0; - - atoms_ptr = malloc(sizeof(Atom *)); - number_of_atoms = fghGetWindowProperty(window, - property, - XA_ATOM, - (unsigned char **) atoms_ptr); - for (i = 0; i < number_of_atoms; i++) - { - if ((*atoms_ptr)[i] == hint) - { - supported = 1; - break; - } - } - - return supported; -} - -#endif /* TARGET_HOST_POSIX_X11 */ - - -/* - * A call to this function should initialize all the display stuff... - */ -static void fghInitialize( const char* displayName ) -{ -#if TARGET_HOST_POSIX_X11 - fgDisplay.Display = XOpenDisplay( displayName ); - - if( fgDisplay.Display == NULL ) - fgError( "failed to open display '%s'", XDisplayName( displayName ) ); - - if( !glXQueryExtension( fgDisplay.Display, NULL, NULL ) ) - fgError( "OpenGL GLX extension not supported by display '%s'", - XDisplayName( displayName ) ); - - fgDisplay.Screen = DefaultScreen( fgDisplay.Display ); - fgDisplay.RootWindow = RootWindow( - fgDisplay.Display, - fgDisplay.Screen - ); - - fgDisplay.ScreenWidth = DisplayWidth( - fgDisplay.Display, - fgDisplay.Screen - ); - fgDisplay.ScreenHeight = DisplayHeight( - fgDisplay.Display, - fgDisplay.Screen - ); - - fgDisplay.ScreenWidthMM = DisplayWidthMM( - fgDisplay.Display, - fgDisplay.Screen - ); - fgDisplay.ScreenHeightMM = DisplayHeightMM( - fgDisplay.Display, - fgDisplay.Screen - ); - - fgDisplay.Connection = ConnectionNumber( fgDisplay.Display ); - - /* Create the window deletion atom */ - fgDisplay.DeleteWindow = fghGetAtom("WM_DELETE_WINDOW"); - - /* Create the state and full screen atoms */ - fgDisplay.State = None; - fgDisplay.StateFullScreen = None; - - if (fghNetWMSupported()) - { - const Atom supported = fghGetAtom("_NET_SUPPORTED"); - const Atom state = fghGetAtom("_NET_WM_STATE"); - - /* Check if the state hint is supported. */ - if (fgHintPresent(fgDisplay.RootWindow, supported, state)) - { - const Atom full_screen = fghGetAtom("_NET_WM_STATE_FULLSCREEN"); - - fgDisplay.State = state; - - /* Check if the window manager supports full screen. */ - /** Check "_NET_WM_ALLOWED_ACTIONS" on our window instead? **/ - if (fgHintPresent(fgDisplay.RootWindow, supported, full_screen)) - { - fgDisplay.StateFullScreen = full_screen; - } - } - } - -#elif TARGET_HOST_MS_WINDOWS - - WNDCLASS wc; - ATOM atom; - - /* What we need to do is to initialize the fgDisplay global structure here. */ - fgDisplay.Instance = GetModuleHandle( NULL ); - - atom = GetClassInfo( fgDisplay.Instance, _T("FREEGLUT"), &wc ); - - if( atom == 0 ) - { - ZeroMemory( &wc, sizeof(WNDCLASS) ); - - /* - * Each of the windows should have its own device context, and we - * want redraw events during Vertical and Horizontal Resizes by - * the user. - * - * XXX Old code had "| CS_DBCLCKS" commented out. Plans for the - * XXX future? Dead-end idea? - */ - wc.lpfnWndProc = fgWindowProc; - wc.cbClsExtra = 0; - wc.cbWndExtra = 0; - wc.hInstance = fgDisplay.Instance; - wc.hIcon = LoadIcon( fgDisplay.Instance, _T("GLUT_ICON") ); - -#if defined(_WIN32_WCE) - wc.style = CS_HREDRAW | CS_VREDRAW; -#else - wc.style = CS_OWNDC | CS_HREDRAW | CS_VREDRAW; - if (!wc.hIcon) - wc.hIcon = LoadIcon( NULL, IDI_WINLOGO ); -#endif - - wc.hCursor = LoadCursor( NULL, IDC_ARROW ); - wc.hbrBackground = NULL; - wc.lpszMenuName = NULL; - wc.lpszClassName = _T("FREEGLUT"); - - /* Register the window class */ - atom = RegisterClass( &wc ); - FREEGLUT_INTERNAL_ERROR_EXIT ( atom, "Window Class Not Registered", "fghInitialize" ); - } - - /* The screen dimensions can be obtained via GetSystemMetrics() calls */ - fgDisplay.ScreenWidth = GetSystemMetrics( SM_CXSCREEN ); - fgDisplay.ScreenHeight = GetSystemMetrics( SM_CYSCREEN ); - - { - HWND desktop = GetDesktopWindow( ); - HDC context = GetDC( desktop ); - - fgDisplay.ScreenWidthMM = GetDeviceCaps( context, HORZSIZE ); - fgDisplay.ScreenHeightMM = GetDeviceCaps( context, VERTSIZE ); - - ReleaseDC( desktop, context ); - } - - /* Set the timer granularity to 1 ms */ - timeBeginPeriod ( 1 ); - -#endif - - fgState.Initialised = GL_TRUE; - - /* InputDevice uses GlutTimerFunc(), so fgState.Initialised must be TRUE */ - fgInitialiseInputDevices(); -} - -/* - * Perform the freeglut deinitialization... - */ -void fgDeinitialize( void ) -{ - SFG_Timer *timer; - - if( !fgState.Initialised ) - { - fgWarning( "fgDeinitialize(): " - "no valid initialization has been performed" ); - return; - } - - /* If there was a menu created, destroy the rendering context */ - if( fgStructure.MenuContext ) - { -#if TARGET_HOST_POSIX_X11 - /* Note that the MVisualInfo is not owned by the MenuContext! */ - glXDestroyContext( fgDisplay.Display, fgStructure.MenuContext->MContext ); -#endif - free( fgStructure.MenuContext ); - fgStructure.MenuContext = NULL; - } - - fgDestroyStructure( ); - - while( ( timer = fgState.Timers.First) ) - { - fgListRemove( &fgState.Timers, &timer->Node ); - free( timer ); - } - - while( ( timer = fgState.FreeTimers.First) ) - { - fgListRemove( &fgState.FreeTimers, &timer->Node ); - free( timer ); - } - -#if !defined(_WIN32_WCE) - if ( fgState.JoysticksInitialised ) - fgJoystickClose( ); - - if ( fgState.InputDevsInitialised ) - fgInputDeviceClose( ); -#endif /* !defined(_WIN32_WCE) */ - fgState.JoysticksInitialised = GL_FALSE; - fgState.InputDevsInitialised = GL_FALSE; - - fgState.MajorVersion = 1; - fgState.MinorVersion = 0; - fgState.ContextFlags = 0; - fgState.ContextProfile = 0; - - fgState.Initialised = GL_FALSE; - - fgState.Position.X = -1; - fgState.Position.Y = -1; - fgState.Position.Use = GL_FALSE; - - fgState.Size.X = 300; - fgState.Size.Y = 300; - fgState.Size.Use = GL_TRUE; - - fgState.DisplayMode = GLUT_RGBA | GLUT_SINGLE | GLUT_DEPTH; - - fgState.DirectContext = GLUT_TRY_DIRECT_CONTEXT; - fgState.ForceIconic = GL_FALSE; - fgState.UseCurrentContext = GL_FALSE; - fgState.GLDebugSwitch = GL_FALSE; - fgState.XSyncSwitch = GL_FALSE; - fgState.ActionOnWindowClose = GLUT_ACTION_EXIT; - fgState.ExecState = GLUT_EXEC_STATE_INIT; - - fgState.KeyRepeat = GLUT_KEY_REPEAT_ON; - fgState.Modifiers = INVALID_MODIFIERS; - - fgState.GameModeSize.X = 640; - fgState.GameModeSize.Y = 480; - fgState.GameModeDepth = 16; - fgState.GameModeRefresh = 72; - - fgListInit( &fgState.Timers ); - fgListInit( &fgState.FreeTimers ); - - fgState.IdleCallback = NULL; - fgState.MenuStateCallback = ( FGCBMenuState )NULL; - fgState.MenuStatusCallback = ( FGCBMenuStatus )NULL; - - fgState.SwapCount = 0; - fgState.SwapTime = 0; - fgState.FPSInterval = 0; - - if( fgState.ProgramName ) - { - free( fgState.ProgramName ); - fgState.ProgramName = NULL; - } - -#if TARGET_HOST_POSIX_X11 - - /* - * Make sure all X-client data we have created will be destroyed on - * display closing - */ - XSetCloseDownMode( fgDisplay.Display, DestroyAll ); - - /* - * Close the display connection, destroying all windows we have - * created so far - */ - XCloseDisplay( fgDisplay.Display ); - -#elif TARGET_HOST_MS_WINDOWS - - /* Reset the timer granularity */ - timeEndPeriod ( 1 ); - -#endif - - fgState.Initialised = GL_FALSE; -} - -/* - * Everything inside the following #ifndef is copied from the X sources. - */ - -#if TARGET_HOST_MS_WINDOWS - -/* - -Copyright 1985, 1986, 1987,1998 The Open Group - -Permission to use, copy, modify, distribute, and sell this software and its -documentation for any purpose is hereby granted without fee, provided that -the above copyright notice appear in all copies and that both that -copyright notice and this permission notice appear in supporting -documentation. - -The above copyright notice and this permission notice shall be included -in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR -OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -OTHER DEALINGS IN THE SOFTWARE. - -Except as contained in this notice, the name of The Open Group shall -not be used in advertising or otherwise to promote the sale, use or -other dealings in this Software without prior written authorization -from The Open Group. - -*/ - -#define NoValue 0x0000 -#define XValue 0x0001 -#define YValue 0x0002 -#define WidthValue 0x0004 -#define HeightValue 0x0008 -#define AllValues 0x000F -#define XNegative 0x0010 -#define YNegative 0x0020 - -/* - * XParseGeometry parses strings of the form - * "=x{+-}{+-}", where - * width, height, xoffset, and yoffset are unsigned integers. - * Example: "=80x24+300-49" - * The equal sign is optional. - * It returns a bitmask that indicates which of the four values - * were actually found in the string. For each value found, - * the corresponding argument is updated; for each value - * not found, the corresponding argument is left unchanged. - */ - -static int -ReadInteger(char *string, char **NextString) -{ - register int Result = 0; - int Sign = 1; - - if (*string == '+') - string++; - else if (*string == '-') - { - string++; - Sign = -1; - } - for (; (*string >= '0') && (*string <= '9'); string++) - { - Result = (Result * 10) + (*string - '0'); - } - *NextString = string; - if (Sign >= 0) - return Result; - else - return -Result; -} - -static int XParseGeometry ( - const char *string, - int *x, - int *y, - unsigned int *width, /* RETURN */ - unsigned int *height) /* RETURN */ -{ - int mask = NoValue; - register char *strind; - unsigned int tempWidth = 0, tempHeight = 0; - int tempX = 0, tempY = 0; - char *nextCharacter; - - if ( (string == NULL) || (*string == '\0')) - return mask; - if (*string == '=') - string++; /* ignore possible '=' at beg of geometry spec */ - - strind = (char *)string; - if (*strind != '+' && *strind != '-' && *strind != 'x') { - tempWidth = ReadInteger(strind, &nextCharacter); - if (strind == nextCharacter) - return 0; - strind = nextCharacter; - mask |= WidthValue; - } - - if (*strind == 'x' || *strind == 'X') { - strind++; - tempHeight = ReadInteger(strind, &nextCharacter); - if (strind == nextCharacter) - return 0; - strind = nextCharacter; - mask |= HeightValue; - } - - if ((*strind == '+') || (*strind == '-')) { - if (*strind == '-') { - strind++; - tempX = -ReadInteger(strind, &nextCharacter); - if (strind == nextCharacter) - return 0; - strind = nextCharacter; - mask |= XNegative; - } - else - { - strind++; - tempX = ReadInteger(strind, &nextCharacter); - if (strind == nextCharacter) - return 0; - strind = nextCharacter; - } - mask |= XValue; - if ((*strind == '+') || (*strind == '-')) { - if (*strind == '-') { - strind++; - tempY = -ReadInteger(strind, &nextCharacter); - if (strind == nextCharacter) - return 0; - strind = nextCharacter; - mask |= YNegative; - } - else - { - strind++; - tempY = ReadInteger(strind, &nextCharacter); - if (strind == nextCharacter) - return 0; - strind = nextCharacter; - } - mask |= YValue; - } - } - - /* If strind isn't at the end of the string the it's an invalid - geometry specification. */ - - if (*strind != '\0') return 0; - - if (mask & XValue) - *x = tempX; - if (mask & YValue) - *y = tempY; - if (mask & WidthValue) - *width = tempWidth; - if (mask & HeightValue) - *height = tempHeight; - return mask; -} -#endif - -/* -- INTERFACE FUNCTIONS -------------------------------------------------- */ - -/* - * Perform initialization. This usually happens on the program startup - * and restarting after glutMainLoop termination... - */ -void FGAPIENTRY glutInit( int* pargc, char** argv ) -{ - char* displayName = NULL; - char* geometry = NULL; - int i, j, argc = *pargc; - - /* will return true for VC8 (VC2005) and higher */ -#if TARGET_HOST_MS_WINDOWS && ( _MSC_VER >= 1400 ) -#if HAVE_ERRNO - size_t sLen; - errno_t err; -#endif -#endif - - if( fgState.Initialised ) - fgError( "illegal glutInit() reinitialization attempt" ); - - if (pargc && *pargc && argv && *argv && **argv) - { - fgState.ProgramName = strdup (*argv); - - if( !fgState.ProgramName ) - fgError ("Could not allocate space for the program's name."); - } - - fgCreateStructure( ); - - /* Get start time */ - fgState.Time = fgSystemTime(); - - /* check if GLUT_FPS env var is set */ -#ifndef _WIN32_WCE - { - /* will return true for VC8 (VC2005) and higher */ -#if TARGET_HOST_MS_WINDOWS && ( _MSC_VER >= 1400 ) && HAVE_ERRNO - char* fps = NULL; - err = _dupenv_s( &fps, &sLen, "GLUT_FPS" ); - if (err) - fgError("Error getting GLUT_FPS environment variable"); -#else - const char *fps = getenv( "GLUT_FPS" ); -#endif - if( fps ) - { - int interval; - sscanf( fps, "%d", &interval ); - - if( interval <= 0 ) - fgState.FPSInterval = 5000; /* 5000 millisecond default */ - else - fgState.FPSInterval = interval; - } - /* will return true for VC8 (VC2005) and higher */ -#if TARGET_HOST_MS_WINDOWS && ( _MSC_VER >= 1400 ) && HAVE_ERRNO - free ( fps ); fps = NULL; /* dupenv_s allocates a string that we must free */ -#endif - } - - /* will return true for VC8 (VC2005) and higher */ -#if TARGET_HOST_MS_WINDOWS && ( _MSC_VER >= 1400 ) && HAVE_ERRNO - err = _dupenv_s( &displayName, &sLen, "DISPLAY" ); - if (err) - fgError("Error getting DISPLAY environment variable"); -#else - displayName = getenv( "DISPLAY" ); -#endif - - for( i = 1; i < argc; i++ ) - { - if( strcmp( argv[ i ], "-display" ) == 0 ) - { - if( ++i >= argc ) - fgError( "-display parameter must be followed by display name" ); - - displayName = argv[ i ]; - - argv[ i - 1 ] = NULL; - argv[ i ] = NULL; - ( *pargc ) -= 2; - } - else if( strcmp( argv[ i ], "-geometry" ) == 0 ) - { - if( ++i >= argc ) - fgError( "-geometry parameter must be followed by window " - "geometry settings" ); - - geometry = argv[ i ]; - - argv[ i - 1 ] = NULL; - argv[ i ] = NULL; - ( *pargc ) -= 2; - } - else if( strcmp( argv[ i ], "-direct" ) == 0) - { - if( fgState.DirectContext == GLUT_FORCE_INDIRECT_CONTEXT ) - fgError( "parameters ambiguity, -direct and -indirect " - "cannot be both specified" ); - - fgState.DirectContext = GLUT_FORCE_DIRECT_CONTEXT; - argv[ i ] = NULL; - ( *pargc )--; - } - else if( strcmp( argv[ i ], "-indirect" ) == 0 ) - { - if( fgState.DirectContext == GLUT_FORCE_DIRECT_CONTEXT ) - fgError( "parameters ambiguity, -direct and -indirect " - "cannot be both specified" ); - - fgState.DirectContext = GLUT_FORCE_INDIRECT_CONTEXT; - argv[ i ] = NULL; - (*pargc)--; - } - else if( strcmp( argv[ i ], "-iconic" ) == 0 ) - { - fgState.ForceIconic = GL_TRUE; - argv[ i ] = NULL; - ( *pargc )--; - } - else if( strcmp( argv[ i ], "-gldebug" ) == 0 ) - { - fgState.GLDebugSwitch = GL_TRUE; - argv[ i ] = NULL; - ( *pargc )--; - } - else if( strcmp( argv[ i ], "-sync" ) == 0 ) - { - fgState.XSyncSwitch = GL_TRUE; - argv[ i ] = NULL; - ( *pargc )--; - } - } - - /* Compact {argv}. */ - for( i = j = 1; i < *pargc; i++, j++ ) - { - /* Guaranteed to end because there are "*pargc" arguments left */ - while ( argv[ j ] == NULL ) - j++; - if ( i != j ) - argv[ i ] = argv[ j ]; - } - -#endif /* _WIN32_WCE */ - - /* - * Have the display created now. If there wasn't a "-display" - * in the program arguments, we will use the DISPLAY environment - * variable for opening the X display (see code above): - */ - fghInitialize( displayName ); - /* will return true for VC8 (VC2005) and higher */ -#if TARGET_HOST_MS_WINDOWS && ( _MSC_VER >= 1400 ) && HAVE_ERRNO - free ( displayName ); displayName = NULL; /* dupenv_s allocates a string that we must free */ -#endif - - /* - * Geometry parsing deffered until here because we may need the screen - * size. - */ - - if (geometry ) - { - unsigned int parsedWidth, parsedHeight; - int mask = XParseGeometry( geometry, - &fgState.Position.X, &fgState.Position.Y, - &parsedWidth, &parsedHeight ); - /* TODO: Check for overflow? */ - fgState.Size.X = parsedWidth; - fgState.Size.Y = parsedHeight; - - if( (mask & (WidthValue|HeightValue)) == (WidthValue|HeightValue) ) - fgState.Size.Use = GL_TRUE; - - if( mask & XNegative ) - fgState.Position.X += fgDisplay.ScreenWidth - fgState.Size.X; - - if( mask & YNegative ) - fgState.Position.Y += fgDisplay.ScreenHeight - fgState.Size.Y; - - if( (mask & (XValue|YValue)) == (XValue|YValue) ) - fgState.Position.Use = GL_TRUE; - } -} - -#if TARGET_HOST_MS_WINDOWS -void (__cdecl *__glutExitFunc)( int return_value ) = NULL; - -void FGAPIENTRY __glutInitWithExit( int *pargc, char **argv, void (__cdecl *exit_function)(int) ) -{ - __glutExitFunc = exit_function; - glutInit(pargc, argv); -} -#endif - -/* - * Undoes all the "glutInit" stuff - */ -void FGAPIENTRY glutExit ( void ) -{ - fgDeinitialize (); -} - -/* - * Sets the default initial window position for new windows - */ -void FGAPIENTRY glutInitWindowPosition( int x, int y ) -{ - fgState.Position.X = x; - fgState.Position.Y = y; - - if( ( x >= 0 ) && ( y >= 0 ) ) - fgState.Position.Use = GL_TRUE; - else - fgState.Position.Use = GL_FALSE; -} - -/* - * Sets the default initial window size for new windows - */ -void FGAPIENTRY glutInitWindowSize( int width, int height ) -{ - fgState.Size.X = width; - fgState.Size.Y = height; - - if( ( width > 0 ) && ( height > 0 ) ) - fgState.Size.Use = GL_TRUE; - else - fgState.Size.Use = GL_FALSE; -} - -/* - * Sets the default display mode for all new windows - */ -void FGAPIENTRY glutInitDisplayMode( unsigned int displayMode ) -{ - /* We will make use of this value when creating a new OpenGL context... */ - fgState.DisplayMode = displayMode; -} - - -/* -- INIT DISPLAY STRING PARSING ------------------------------------------ */ - -static char* Tokens[] = -{ - "alpha", "acca", "acc", "blue", "buffer", "conformant", "depth", "double", - "green", "index", "num", "red", "rgba", "rgb", "luminance", "stencil", - "single", "stereo", "samples", "slow", "win32pdf", "win32pfd", "xvisual", - "xstaticgray", "xgrayscale", "xstaticcolor", "xpseudocolor", - "xtruecolor", "xdirectcolor", - "xstaticgrey", "xgreyscale", "xstaticcolour", "xpseudocolour", - "xtruecolour", "xdirectcolour", "borderless", "aux" -}; -#define NUM_TOKENS (sizeof(Tokens) / sizeof(*Tokens)) - -void FGAPIENTRY glutInitDisplayString( const char* displayMode ) -{ - int glut_state_flag = 0 ; - /* - * Unpack a lot of options from a character string. The options are - * delimited by blanks or tabs. - */ - char *token ; - /* will return true for VC8 (VC2005) and higher */ -#if TARGET_HOST_MS_WINDOWS && ( _MSC_VER >= 1400 ) - char *next_token = NULL; -#endif - size_t len = strlen ( displayMode ); - char *buffer = (char *)malloc ( (len+1) * sizeof(char) ); - memcpy ( buffer, displayMode, len ); - buffer[len] = '\0'; - - /* will return true for VC8 (VC2005) and higher */ -#if TARGET_HOST_MS_WINDOWS && ( _MSC_VER >= 1400 ) - token = strtok_s ( buffer, " \t", &next_token ); -#else - token = strtok ( buffer, " \t" ); -#endif - while ( token ) - { - /* Process this token */ - int i ; - - /* Temporary fix: Ignore any length specifications and at least - * process the basic token - * TODO: Fix this permanently - */ - size_t cleanlength = strcspn ( token, "=<>~!" ); - - for ( i = 0; i < NUM_TOKENS; i++ ) - { - if ( strncmp ( token, Tokens[i], cleanlength ) == 0 ) break ; - } - - switch ( i ) - { - case 0 : /* "alpha": Alpha color buffer precision in bits */ - glut_state_flag |= GLUT_ALPHA ; /* Somebody fix this for me! */ - break ; - - case 1 : /* "acca": Red, green, blue, and alpha accumulation buffer - precision in bits */ - break ; - - case 2 : /* "acc": Red, green, and blue accumulation buffer precision - in bits with zero bits alpha */ - glut_state_flag |= GLUT_ACCUM ; /* Somebody fix this for me! */ - break ; - - case 3 : /* "blue": Blue color buffer precision in bits */ - break ; - - case 4 : /* "buffer": Number of bits in the color index color buffer - */ - break ; - - case 5 : /* "conformant": Boolean indicating if the frame buffer - configuration is conformant or not */ - break ; - - case 6 : /* "depth": Number of bits of precsion in the depth buffer */ - glut_state_flag |= GLUT_DEPTH ; /* Somebody fix this for me! */ - break ; - - case 7 : /* "double": Boolean indicating if the color buffer is - double buffered */ - glut_state_flag |= GLUT_DOUBLE ; - break ; - - case 8 : /* "green": Green color buffer precision in bits */ - break ; - - case 9 : /* "index": Boolean if the color model is color index or not - */ - glut_state_flag |= GLUT_INDEX ; - break ; - - case 10 : /* "num": A special capability name indicating where the - value represents the Nth frame buffer configuration - matching the description string */ - break ; - - case 11 : /* "red": Red color buffer precision in bits */ - break ; - - case 12 : /* "rgba": Number of bits of red, green, blue, and alpha in - the RGBA color buffer */ - glut_state_flag |= GLUT_RGBA ; /* Somebody fix this for me! */ - break ; - - case 13 : /* "rgb": Number of bits of red, green, and blue in the - RGBA color buffer with zero bits alpha */ - glut_state_flag |= GLUT_RGB ; /* Somebody fix this for me! */ - break ; - - case 14 : /* "luminance": Number of bits of red in the RGBA and zero - bits of green, blue (alpha not specified) of color buffer - precision */ - glut_state_flag |= GLUT_LUMINANCE ; /* Somebody fix this for me! */ - break ; - - case 15 : /* "stencil": Number of bits in the stencil buffer */ - glut_state_flag |= GLUT_STENCIL; /* Somebody fix this for me! */ - break ; - - case 16 : /* "single": Boolean indicate the color buffer is single - buffered */ - glut_state_flag |= GLUT_SINGLE ; - break ; - - case 17 : /* "stereo": Boolean indicating the color buffer supports - OpenGL-style stereo */ - glut_state_flag |= GLUT_STEREO ; - break ; - - case 18 : /* "samples": Indicates the number of multisamples to use - based on GLX's SGIS_multisample extension (for - antialiasing) */ - glut_state_flag |= GLUT_MULTISAMPLE ; /*Somebody fix this for me!*/ - break ; - - case 19 : /* "slow": Boolean indicating if the frame buffer - configuration is slow or not */ - break ; - - case 20 : /* "win32pdf": (incorrect spelling but was there before */ - case 21 : /* "win32pfd": matches the Win32 Pixel Format Descriptor by - number */ -#if TARGET_HOST_MS_WINDOWS -#endif - break ; - - case 22 : /* "xvisual": matches the X visual ID by number */ -#if TARGET_HOST_POSIX_X11 -#endif - break ; - - case 23 : /* "xstaticgray": */ - case 29 : /* "xstaticgrey": boolean indicating if the frame buffer - configuration's X visual is of type StaticGray */ -#if TARGET_HOST_POSIX_X11 -#endif - break ; - - case 24 : /* "xgrayscale": */ - case 30 : /* "xgreyscale": boolean indicating if the frame buffer - configuration's X visual is of type GrayScale */ -#if TARGET_HOST_POSIX_X11 -#endif - break ; - - case 25 : /* "xstaticcolor": */ - case 31 : /* "xstaticcolour": boolean indicating if the frame buffer - configuration's X visual is of type StaticColor */ -#if TARGET_HOST_POSIX_X11 -#endif - break ; - - case 26 : /* "xpseudocolor": */ - case 32 : /* "xpseudocolour": boolean indicating if the frame buffer - configuration's X visual is of type PseudoColor */ -#if TARGET_HOST_POSIX_X11 -#endif - break ; - - case 27 : /* "xtruecolor": */ - case 33 : /* "xtruecolour": boolean indicating if the frame buffer - configuration's X visual is of type TrueColor */ -#if TARGET_HOST_POSIX_X11 -#endif - break ; - - case 28 : /* "xdirectcolor": */ - case 34 : /* "xdirectcolour": boolean indicating if the frame buffer - configuration's X visual is of type DirectColor */ -#if TARGET_HOST_POSIX_X11 -#endif - break ; - - case 35 : /* "borderless": windows should not have borders */ -#if TARGET_HOST_POSIX_X11 -#endif - break ; - - case 36 : /* "aux": some number of aux buffers */ - glut_state_flag |= GLUT_AUX; - break ; - - case 37 : /* Unrecognized */ - fgWarning ( "WARNING - Display string token not recognized: %s", - token ); - break ; - } - - /* will return true for VC8 (VC2005) and higher */ -#if TARGET_HOST_MS_WINDOWS && ( _MSC_VER >= 1400 ) - token = strtok_s ( NULL, " \t", &next_token ); -#else - token = strtok ( NULL, " \t" ); -#endif - } - - free ( buffer ); - - /* We will make use of this value when creating a new OpenGL context... */ - fgState.DisplayMode = glut_state_flag; -} - -/* -- SETTING OPENGL 3.0 CONTEXT CREATION PARAMETERS ---------------------- */ - -void FGAPIENTRY glutInitContextVersion( int majorVersion, int minorVersion ) -{ - /* We will make use of these valuse when creating a new OpenGL context... */ - fgState.MajorVersion = majorVersion; - fgState.MinorVersion = minorVersion; -} - - -void FGAPIENTRY glutInitContextFlags( int flags ) -{ - /* We will make use of this value when creating a new OpenGL context... */ - fgState.ContextFlags = flags; -} - -void FGAPIENTRY glutInitContextProfile( int profile ) -{ - /* We will make use of this value when creating a new OpenGL context... */ - fgState.ContextProfile = profile; -} - -/*** END OF FILE ***/ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_input_devices.c b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_input_devices.c deleted file mode 100644 index b500e83..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_input_devices.c +++ /dev/null @@ -1,395 +0,0 @@ -/* - * freeglut_input_devices.c - * - * Handles miscellaneous input devices via direct serial-port access. - * Proper X11 XInput device support is not yet supported. - * Also lacks Mac support. - * - * Written by Joe Krahn 2005 - * - * Copyright (c) 2005 Stephen J. Baker. All Rights Reserved. - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included - * in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - * PAWEL W. OLSZTA OR STEPHEN J. BAKER BE LIABLE FOR ANY CLAIM, DAMAGES OR - * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, - * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER - * DEALINGS IN THE SOFTWARE. - */ - -#ifdef HAVE_CONFIG_H -# include "config.h" -#endif - -#include "freeglut.h" -#include "freeglut_internal.h" - -#if TARGET_HOST_POSIX_X11 -#if HAVE_ERRNO -#include -#endif -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -typedef struct { - int fd; - struct termios termio, termio_save; -} SERIALPORT; - -#elif TARGET_HOST_MS_WINDOWS -#include -#include -typedef struct { - HANDLE fh; - COMMTIMEOUTS timeouts_save; - DCB dcb_save; -} SERIALPORT; - -#endif - -/********************* Dialbox definitions ***********************/ - -#define DIAL_NUM_VALUATORS 8 - -/* dial parser state machine states */ -#define DIAL_NEW (-1) -#define DIAL_WHICH_DEVICE 0 -#define DIAL_VALUE_HIGH 1 -#define DIAL_VALUE_LOW 2 - -/* dial/button box commands */ -#define DIAL_INITIALIZE 0x20 -#define DIAL_SET_LEDS 0x75 -#define DIAL_SET_TEXT 0x61 -#define DIAL_SET_AUTO_DIALS 0x50 -#define DIAL_SET_AUTO_DELTA_DIALS 0x51 -#define DIAL_SET_FILTER 0x53 -#define DIAL_SET_BUTTONS_MOM_TYPE 0x71 -#define DIAL_SET_AUTO_MOM_BUTTONS 0x73 -#define DIAL_SET_ALL_LEDS 0x4b -#define DIAL_CLEAR_ALL_LEDS 0x4c - -/* dial/button box replies and events */ -#define DIAL_INITIALIZED 0x20 -#define DIAL_BASE 0x30 -#define DIAL_DELTA_BASE 0x40 -#define DIAL_PRESS_BASE 0xc0 -#define DIAL_RELEASE_BASE 0xe0 - -/* macros to determine reply type */ -#define IS_DIAL_EVENT(ch) (((ch)>=DIAL_BASE)&&((ch)=DIAL_PRESS_BASE)&&((ch)=DIAL_RELEASE_BASE)&&((ch)= 1400 ) && HAVE_ERRNO - char *dial_device=NULL; - size_t sLen; - errno_t err = _dupenv_s( &dial_device, &sLen, "GLUT_DIALS_SERIAL" ); - if (err) - fgError("Error getting GLUT_DIALS_SERIAL environment variable"); -#else - const char *dial_device=NULL; - dial_device = getenv ( "GLUT_DIALS_SERIAL" ); -#endif -#if TARGET_HOST_MS_WINDOWS - if (!dial_device){ - static char devname[256]; - DWORD size=sizeof(devname); - DWORD type = REG_SZ; - HKEY key; - if (RegOpenKeyA(HKEY_LOCAL_MACHINE,"SOFTWARE\\FreeGLUT",&key)==ERROR_SUCCESS) { - if (RegQueryValueExA(key,"DialboxSerialPort",NULL,&type,(LPBYTE)devname,&size)==ERROR_SUCCESS){ - dial_device=devname; - } - RegCloseKey(key); - } - } -#endif - if ( !dial_device ) return; - if ( !( dialbox_port = serial_open ( dial_device ) ) ) return; - /* will return true for VC8 (VC2005) and higher */ -#if TARGET_HOST_MS_WINDOWS && ( _MSC_VER >= 1400 ) && HAVE_ERRNO - free ( dial_device ); dial_device = NULL; /* dupenv_s allocates a string that we must free */ -#endif - serial_putchar(dialbox_port,DIAL_INITIALIZE); - glutTimerFunc ( 10, poll_dials, 0 ); - fgState.InputDevsInitialised = GL_TRUE; - } -} - -/* - * - */ -void fgInputDeviceClose( void ) -{ - if ( fgState.InputDevsInitialised ) - { - serial_close ( dialbox_port ); - dialbox_port = NULL; - fgState.InputDevsInitialised = GL_FALSE; - } -} - -/********************************************************************/ - -/* Check all windows for dialbox callbacks */ -static void fghcbEnumDialCallbacks ( SFG_Window *window, SFG_Enumerator *enumerator ) -{ - /* Built-in to INVOKE_WCB(): if window->Callbacks[CB_Dials] */ - INVOKE_WCB ( *window,Dials, ( ((int*)enumerator->data)[0], ((int*)enumerator->data)[1]) ); - fgEnumSubWindows ( window, fghcbEnumDialCallbacks, enumerator ); -} - -static void send_dial_event ( int num, int value ) -{ - SFG_Enumerator enumerator; - int data[2]; - data[0] = num; - data[1] = value; - enumerator.found = GL_FALSE; - enumerator.data = data; - fgEnumWindows ( fghcbEnumDialCallbacks, &enumerator ); -} - -/********************************************************************/ -static void poll_dials ( int id ) -{ - int data; - static int dial_state = DIAL_NEW; - static int dial_which; - static int dial_value; - static int dials[8] = { 0, 0, 0, 0, 0, 0, 0, 0 }; - - if ( !dialbox_port ) return; - - while ( (data=serial_getchar(dialbox_port)) != EOF ) - { - if ( ( dial_state > DIAL_WHICH_DEVICE ) || IS_DIAL_EVENT ( data ) ) - { - switch ( dial_state ) - { - case DIAL_WHICH_DEVICE: - dial_which = data - DIAL_BASE; - dial_state++; - break; - case DIAL_VALUE_HIGH: - dial_value = ( data << 8 ); - dial_state++; - break; - case DIAL_VALUE_LOW: - dial_value |= data; - if ( dial_value & 0x8000 ) dial_value -= 0x10000; - dials[dial_which] = dial_value; - send_dial_event ( dial_which + 1, dial_value * 360 / 256 ); - dial_state = DIAL_WHICH_DEVICE; - break; - default: - /* error: Impossible state value! */ - break; - } - } - else if ( data == DIAL_INITIALIZED ) - { - fgState.InputDevsInitialised = GL_TRUE; - dial_state = DIAL_WHICH_DEVICE; - serial_putchar(dialbox_port,DIAL_SET_AUTO_DIALS); - serial_putchar(dialbox_port,0xff); - serial_putchar(dialbox_port,0xff); - } - else /* Unknown data; try flushing. */ - serial_flush(dialbox_port); - } - - glutTimerFunc ( 2, poll_dials, 0 ); -} - - -/******** OS Specific Serial I/O routines *******/ -#if TARGET_HOST_POSIX_X11 /* ==> Linux/BSD/UNIX POSIX serial I/O */ -static SERIALPORT *serial_open ( const char *device ) -{ - int fd; - struct termios termio; - SERIALPORT *port; - - fd = open(device, O_RDWR | O_NONBLOCK ); - if (fd <0) { - perror(device); - return NULL; - } - - port = malloc(sizeof(SERIALPORT)); - memset(port, 0, sizeof(SERIALPORT)); - port->fd = fd; - - /* save current port settings */ - tcgetattr(fd,&port->termio_save); - - memset(&termio, 0, sizeof(termio)); - termio.c_cflag = CS8 | CREAD | HUPCL ; - termio.c_iflag = IGNPAR | IGNBRK ; - termio.c_cc[VTIME] = 0; /* inter-character timer */ - termio.c_cc[VMIN] = 1; /* block read until 1 chars received, when blocking I/O */ - - cfsetispeed(&termio, B9600); - cfsetospeed(&termio, B9600); - tcsetattr(fd,TCSANOW,&termio); - - serial_flush(port); - return port; -} - -static void serial_close(SERIALPORT *port) -{ - if (port) - { - /* restore old port settings */ - tcsetattr(port->fd,TCSANOW,&port->termio_save); - close(port->fd); - free(port); - } -} - -static int serial_getchar(SERIALPORT *port) -{ - unsigned char ch; - if (!port) return EOF; - if (read(port->fd,&ch,1)) return ch; - return EOF; -} - -static int serial_putchar(SERIALPORT *port, unsigned char ch){ - if (!port) return 0; - return write(port->fd,&ch,1); -} - -static void serial_flush ( SERIALPORT *port ) -{ - tcflush ( port->fd, TCIOFLUSH ); -} - -#elif TARGET_HOST_MS_WINDOWS - -static SERIALPORT *serial_open(const char *device){ - HANDLE fh; - DCB dcb={sizeof(DCB)}; - COMMTIMEOUTS timeouts; - SERIALPORT *port; - - fh = CreateFile(device,GENERIC_READ|GENERIC_WRITE,0,NULL, - OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL); - if (!fh) return NULL; - - port = malloc(sizeof(SERIALPORT)); - ZeroMemory(port, sizeof(SERIALPORT)); - port->fh = fh; - - /* save current port settings */ - GetCommState(fh,&port->dcb_save); - GetCommTimeouts(fh,&port->timeouts_save); - - dcb.DCBlength=sizeof(DCB); - BuildCommDCB("96,n,8,1",&dcb); - SetCommState(fh,&dcb); - - ZeroMemory(&timeouts,sizeof(timeouts)); - timeouts.ReadTotalTimeoutConstant=1; - timeouts.WriteTotalTimeoutConstant=1; - SetCommTimeouts(fh,&timeouts); - - serial_flush(port); - - return port; -} - -static void serial_close(SERIALPORT *port){ - if (port){ - /* restore old port settings */ - SetCommState(port->fh,&port->dcb_save); - SetCommTimeouts(port->fh,&port->timeouts_save); - CloseHandle(port->fh); - free(port); - } -} - -static int serial_getchar(SERIALPORT *port){ - DWORD n; - unsigned char ch; - if (!port) return EOF; - if (!ReadFile(port->fh,&ch,1,&n,NULL)) return EOF; - if (n==1) return ch; - return EOF; -} - -static int serial_putchar(SERIALPORT *port, unsigned char ch){ - DWORD n; - if (!port) return 0; - return WriteFile(port->fh,&ch,1,&n,NULL); -} - -static void serial_flush ( SERIALPORT *port ) -{ - FlushFileBuffers(port->fh); -} - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h deleted file mode 100644 index 2d77ab0..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_internal.h +++ /dev/null @@ -1,960 +0,0 @@ -/* - * freeglut_internal.h - * - * The freeglut library private include file. - * - * Copyright (c) 1999-2000 Pawel W. Olszta. All Rights Reserved. - * Written by Pawel W. Olszta, - * Creation date: Thu Dec 2 1999 - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included - * in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - * PAWEL W. OLSZTA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER - * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - */ - -#ifndef FREEGLUT_INTERNAL_H -#define FREEGLUT_INTERNAL_H - -#if HAVE_CONFIG_H -# include "config.h" -#endif - -/* XXX Update these for each release! */ -#define VERSION_MAJOR 2 -#define VERSION_MINOR 6 -#define VERSION_PATCH 0 - -/* Freeglut is intended to function under all Unix/X11 and Win32 platforms. */ -/* XXX: Don't all MS-Windows compilers (except Cygwin) have _WIN32 defined? - * XXX: If so, remove the first set of defined()'s below. - */ -#if defined(_MSC_VER) || defined(__WATCOMC__) || defined(__MINGW32__) \ - || defined(_WIN32) || defined(_WIN32_WCE) \ - || ( defined(__CYGWIN__) && defined(X_DISPLAY_MISSING) ) -# define TARGET_HOST_MS_WINDOWS 1 - -#elif defined(__posix__) || defined(__unix__) || defined(__linux__) -# define TARGET_HOST_POSIX_X11 1 - -#elif defined(__APPLE__) -/* This is a placeholder until we get native OSX support ironed out -- JFF 11/18/09 */ -# define TARGET_HOST_POSIX_X11 1 -/* # define TARGET_HOST_MAC_OSX 1 */ - -#else -# error "Unrecognized target host!" -*/ -#endif - -/* Detect both SunPro and gcc compilers on Sun Solaris */ -#if defined (__SVR4) && defined (__sun) -# define TARGET_HOST_SOLARIS 1 -#endif - -#ifndef TARGET_HOST_MS_WINDOWS -# define TARGET_HOST_MS_WINDOWS 0 -#endif - -#ifndef TARGET_HOST_POSIX_X11 -# define TARGET_HOST_POSIX_X11 0 -#endif - -#ifndef TARGET_HOST_MAC_OSX -# define TARGET_HOST_MAC_OSX 0 -#endif - -#ifndef TARGET_HOST_SOLARIS -# define TARGET_HOST_SOLARIS 0 -#endif - -/* -- FIXED CONFIGURATION LIMITS ------------------------------------------- */ - -#define FREEGLUT_MAX_MENUS 3 - -/* -- PLATFORM-SPECIFIC INCLUDES ------------------------------------------- */ - -/* All Win32 headers depend on the huge Windows.h recursive include. - * Note: Let's use proper case for MS-Win headers. Even though it's - * not required due to case insensitivity, it's a good habit to keep - * because the cross-platform includes are case sensitive. - */ -#if TARGET_HOST_MS_WINDOWS && !defined(_WIN32_WCE) -# include -# include -# include -/* CYGWIN does not have tchar.h, but has TEXT(x), defined in winnt.h. */ -# ifndef __CYGWIN__ -# include -# else -# define _TEXT(x) TEXT(x) -# define _T(x) TEXT(x) -# endif - -#elif TARGET_HOST_POSIX_X11 -# include -# include -# include -# include -# include -# ifdef HAVE_X11_EXTENSIONS_XF86VMODE_H -# include -# endif -/* If GLX is too old, we will fail during runtime when multisampling - is requested, but at least freeglut compiles. */ -# ifndef GLX_SAMPLE_BUFFERS -# define GLX_SAMPLE_BUFFERS 0x80A8 -# endif -# ifndef GLX_SAMPLES -# define GLX_SAMPLES 0x80A9 -# endif - -#endif - -/* These files should be available on every platform. */ -#include -#include -#include -#include - -/* These are included based on autoconf directives. */ -#if HAVE_SYS_TYPES_H -# include -#endif -#if HAVE_UNISTD_H -# include -#endif -#if TIME_WITH_SYS_TIME -# include -# include -#elif HAVE_SYS_TIME_H -# include -#else -# include -#endif - -/* -- AUTOCONF HACKS --------------------------------------------------------*/ - -/* XXX: Update autoconf to avoid these. - * XXX: Are non-POSIX platforms intended not to use autoconf? - * If so, perhaps there should be a config_guess.h for them. Alternatively, - * config guesses could be placed above, just after the config.h exclusion. - */ -#if defined(__FreeBSD__) || defined(__NetBSD__) -# define HAVE_USB_JS 1 -# if defined(__NetBSD__) || ( defined(__FreeBSD__) && __FreeBSD_version >= 500000) -# define HAVE_USBHID_H 1 -# endif -#endif - -#if TARGET_HOST_MS_WINDOWS -# define HAVE_VPRINTF 1 -#endif - -#if !defined(HAVE_VPRINTF) && !defined(HAVE_DOPRNT) -/* XXX warning directive here? */ -# define HAVE_VPRINTF 1 -#endif - -/* MinGW may lack a prototype for ChangeDisplaySettingsEx() (depending on the version?) */ -#if TARGET_HOST_MS_WINDOWS && !defined(ChangeDisplaySettingsEx) -LONG WINAPI ChangeDisplaySettingsExA(LPCSTR,LPDEVMODEA,HWND,DWORD,LPVOID); -LONG WINAPI ChangeDisplaySettingsExW(LPCWSTR,LPDEVMODEW,HWND,DWORD,LPVOID); -# ifdef UNICODE -# define ChangeDisplaySettingsEx ChangeDisplaySettingsExW -# else -# define ChangeDisplaySettingsEx ChangeDisplaySettingsExA -# endif -#endif - -#if defined(_MSC_VER) || defined(__WATCOMC__) -/* strdup() is non-standard, for all but POSIX-2001 */ -#define strdup _strdup -#endif - -/* M_PI is non-standard (defined by BSD, not ISO-C) */ -#ifndef M_PI -# define M_PI 3.14159265358979323846 -#endif - -#ifndef TRUE -# define TRUE 1 -#endif - -#ifndef FALSE -# define FALSE 0 -#endif - -/* General defines */ - -#define INVALID_MODIFIERS 0xffffffff - -/* -- GLOBAL TYPE DEFINITIONS ---------------------------------------------- */ - -/* Freeglut callbacks type definitions */ -typedef void (* FGCBDisplay )( void ); -typedef void (* FGCBReshape )( int, int ); -typedef void (* FGCBVisibility )( int ); -typedef void (* FGCBKeyboard )( unsigned char, int, int ); -typedef void (* FGCBSpecial )( int, int, int ); -typedef void (* FGCBMouse )( int, int, int, int ); -typedef void (* FGCBMouseWheel )( int, int, int, int ); -typedef void (* FGCBMotion )( int, int ); -typedef void (* FGCBPassive )( int, int ); -typedef void (* FGCBEntry )( int ); -typedef void (* FGCBWindowStatus )( int ); -typedef void (* FGCBSelect )( int, int, int ); -typedef void (* FGCBJoystick )( unsigned int, int, int, int ); -typedef void (* FGCBKeyboardUp )( unsigned char, int, int ); -typedef void (* FGCBSpecialUp )( int, int, int ); -typedef void (* FGCBOverlayDisplay)( void ); -typedef void (* FGCBSpaceMotion )( int, int, int ); -typedef void (* FGCBSpaceRotation )( int, int, int ); -typedef void (* FGCBSpaceButton )( int, int ); -typedef void (* FGCBDials )( int, int ); -typedef void (* FGCBButtonBox )( int, int ); -typedef void (* FGCBTabletMotion )( int, int ); -typedef void (* FGCBTabletButton )( int, int, int, int ); -typedef void (* FGCBDestroy )( void ); - -/* The global callbacks type definitions */ -typedef void (* FGCBIdle )( void ); -typedef void (* FGCBTimer )( int ); -typedef void (* FGCBMenuState )( int ); -typedef void (* FGCBMenuStatus )( int, int, int ); - -/* The callback used when creating/using menus */ -typedef void (* FGCBMenu )( int ); - - -/* A list structure */ -typedef struct tagSFG_List SFG_List; -struct tagSFG_List -{ - void *First; - void *Last; -}; - -/* A list node structure */ -typedef struct tagSFG_Node SFG_Node; -struct tagSFG_Node -{ - void *Next; - void *Prev; -}; - -/* A helper structure holding two ints and a boolean */ -typedef struct tagSFG_XYUse SFG_XYUse; -struct tagSFG_XYUse -{ - GLint X, Y; /* The two integers... */ - GLboolean Use; /* ...and a single boolean. */ -}; - -/* - * An enumeration containing the state of the GLUT execution: - * initializing, running, or stopping - */ -typedef enum -{ - GLUT_EXEC_STATE_INIT, - GLUT_EXEC_STATE_RUNNING, - GLUT_EXEC_STATE_STOP -} fgExecutionState ; - -/* This structure holds different freeglut settings */ -typedef struct tagSFG_State SFG_State; -struct tagSFG_State -{ - SFG_XYUse Position; /* The default windows' position */ - SFG_XYUse Size; /* The default windows' size */ - unsigned int DisplayMode; /* Display mode for new windows */ - - GLboolean Initialised; /* freeglut has been initialised */ - - int DirectContext; /* Direct rendering state */ - - GLboolean ForceIconic; /* New top windows are iconified */ - GLboolean UseCurrentContext; /* New windows share with current */ - - GLboolean GLDebugSwitch; /* OpenGL state debugging switch */ - GLboolean XSyncSwitch; /* X11 sync protocol switch */ - - int KeyRepeat; /* Global key repeat mode. */ - int Modifiers; /* Current ALT/SHIFT/CTRL state */ - - GLuint FPSInterval; /* Interval between FPS printfs */ - GLuint SwapCount; /* Count of glutSwapBuffer calls */ - GLuint SwapTime; /* Time of last SwapBuffers */ - - unsigned long Time; /* Time that glutInit was called */ - SFG_List Timers; /* The freeglut timer hooks */ - SFG_List FreeTimers; /* The unused timer hooks */ - - FGCBIdle IdleCallback; /* The global idle callback */ - - int ActiveMenus; /* Num. of currently active menus */ - FGCBMenuState MenuStateCallback; /* Menu callbacks are global */ - FGCBMenuStatus MenuStatusCallback; - - SFG_XYUse GameModeSize; /* Game mode screen's dimensions */ - int GameModeDepth; /* The pixel depth for game mode */ - int GameModeRefresh; /* The refresh rate for game mode */ - - int ActionOnWindowClose; /* Action when user closes window */ - - fgExecutionState ExecState; /* Used for GLUT termination */ - char *ProgramName; /* Name of the invoking program */ - GLboolean JoysticksInitialised; /* Only initialize if application calls for them */ - GLboolean InputDevsInitialised; /* Only initialize if application calls for them */ - - int AuxiliaryBufferNumber; /* Number of auxiliary buffers */ - int SampleNumber; /* Number of samples per pixel */ - - int MajorVersion; /* Major OpenGL context version */ - int MinorVersion; /* Minor OpenGL context version */ - int ContextFlags; /* OpenGL context flags */ - int ContextProfile; /* OpenGL context profile */ -}; - -/* The structure used by display initialization in freeglut_init.c */ -typedef struct tagSFG_Display SFG_Display; -struct tagSFG_Display -{ -#if TARGET_HOST_POSIX_X11 - Display* Display; /* The display we are being run in. */ - int Screen; /* The screen we are about to use. */ - Window RootWindow; /* The screen's root window. */ - int Connection; /* The display's connection number */ - Atom DeleteWindow; /* The window deletion atom */ - Atom State; /* The state atom */ - Atom StateFullScreen; /* The full screen atom */ - -#ifdef X_XF86VidModeGetModeLine - /* - * XF86VidMode may be compilable even if it fails at runtime. Therefore, - * the validity of the VidMode has to be tracked - */ - int DisplayModeValid; /* Flag that indicates runtime status*/ - XF86VidModeModeLine DisplayMode; /* Current screen's display settings */ - int DisplayModeClock; /* The display mode's refresh rate */ - int DisplayViewPortX; /* saved X location of the viewport */ - int DisplayViewPortY; /* saved Y location of the viewport */ - int DisplayPointerX; /* saved X location of the pointer */ - int DisplayPointerY; /* saved Y location of the pointer */ - -#endif /* X_XF86VidModeGetModeLine */ - -#elif TARGET_HOST_MS_WINDOWS - HINSTANCE Instance; /* The application's instance */ - DEVMODE DisplayMode; /* Desktop's display settings */ - -#endif - - int ScreenWidth; /* The screen's width in pixels */ - int ScreenHeight; /* The screen's height in pixels */ - int ScreenWidthMM; /* The screen's width in milimeters */ - int ScreenHeightMM; /* The screen's height in milimeters */ -}; - - -/* The user can create any number of timer hooks */ -typedef struct tagSFG_Timer SFG_Timer; -struct tagSFG_Timer -{ - SFG_Node Node; - int ID; /* The timer ID integer */ - FGCBTimer Callback; /* The timer callback */ - long TriggerTime; /* The timer trigger time */ -}; - -/* - * Make "freeglut" window handle and context types so that we don't need so - * much conditionally-compiled code later in the library. - */ -#if TARGET_HOST_POSIX_X11 - -typedef Window SFG_WindowHandleType ; -typedef GLXContext SFG_WindowContextType ; - -#elif TARGET_HOST_MS_WINDOWS - -typedef HWND SFG_WindowHandleType ; -typedef HGLRC SFG_WindowContextType ; - -#endif - -/* - * A window and its OpenGL context. The contents of this structure - * are highly dependant on the target operating system we aim at... - */ -typedef struct tagSFG_Context SFG_Context; -struct tagSFG_Context -{ - SFG_WindowHandleType Handle; /* The window's handle */ - SFG_WindowContextType Context; /* The window's OpenGL/WGL context */ - -#if TARGET_HOST_POSIX_X11 - GLXFBConfig* FBConfig; /* The window's FBConfig */ -#elif TARGET_HOST_MS_WINDOWS - HDC Device; /* The window's device context */ -#endif - - int DoubleBuffered; /* Treat the window as double-buffered */ -}; - -/* Window's state description. This structure should be kept portable. */ -typedef struct tagSFG_WindowState SFG_WindowState; -struct tagSFG_WindowState -{ - int Width; /* Window's width in pixels */ - int Height; /* The same about the height */ - int OldWidth; /* Window width from before a resize */ - int OldHeight; /* " height " " " " */ - - GLboolean Redisplay; /* Do we have to redisplay? */ - GLboolean Visible; /* Is the window visible now */ - - int Cursor; /* The currently selected cursor */ - - long JoystickPollRate; /* The joystick polling rate */ - long JoystickLastPoll; /* When the last poll happened */ - - int MouseX, MouseY; /* The most recent mouse position */ - - GLboolean IgnoreKeyRepeat; /* Whether to ignore key repeat. */ - GLboolean KeyRepeating; /* Currently in repeat mode */ - - GLboolean NeedToResize; /* Do we need to resize the window? */ - - GLboolean IsFullscreen; /* is the window fullscreen? */ -}; - - -/* - * A generic function pointer. We should really use the GLUTproc type - * defined in freeglut_ext.h, but if we include that header in this file - * a bunch of other stuff (font-related) blows up! - */ -typedef void (*SFG_Proc)(); - - -/* - * SET_WCB() is used as: - * - * SET_WCB( window, cbname, func ); - * - * ...where {window} is the freeglut window to set the callback, - * {cbname} is the window-specific callback to set, - * {func} is a function-pointer. - * - * Originally, {FETCH_WCB( ... ) = func} was rather sloppily used, - * but this can cause warnings because the FETCH_WCB() macro type- - * casts its result, and a type-cast value shouldn't be an lvalue. - * - * The {if( FETCH_WCB( ... ) != func )} test is to do type-checking - * and for no other reason. Since it's hidden in the macro, the - * ugliness is felt to be rather benign. - */ -#define SET_WCB(window,cbname,func) \ -do \ -{ \ - if( FETCH_WCB( window, cbname ) != (SFG_Proc)(func) ) \ - (((window).CallBacks[CB_ ## cbname]) = (SFG_Proc)(func)); \ -} while( 0 ) - -/* - * FETCH_WCB() is used as: - * - * FETCH_WCB( window, cbname ); - * - * ...where {window} is the freeglut window to fetch the callback from, - * {cbname} is the window-specific callback to fetch. - * - * The result is correctly type-cast to the callback function pointer - * type. - */ -#define FETCH_WCB(window,cbname) \ - ((window).CallBacks[CB_ ## cbname]) - -/* - * INVOKE_WCB() is used as: - * - * INVOKE_WCB( window, cbname, ( arg_list ) ); - * - * ...where {window} is the freeglut window, - * {cbname} is the window-specific callback to be invoked, - * {(arg_list)} is the parameter list. - * - * The callback is invoked as: - * - * callback( arg_list ); - * - * ...so the parentheses are REQUIRED in the {arg_list}. - * - * NOTE that it does a sanity-check and also sets the - * current window. - * - */ -#if TARGET_HOST_MS_WINDOWS && !defined(_WIN32_WCE) /* FIXME: also WinCE? */ -#define INVOKE_WCB(window,cbname,arg_list) \ -do \ -{ \ - if( FETCH_WCB( window, cbname ) ) \ - { \ - FGCB ## cbname func = (FGCB ## cbname)(FETCH_WCB( window, cbname )); \ - fgSetWindow( &window ); \ - func arg_list; \ - } \ -} while( 0 ) -#else -#define INVOKE_WCB(window,cbname,arg_list) \ -do \ -{ \ - if( FETCH_WCB( window, cbname ) ) \ - { \ - fgSetWindow( &window ); \ - ((FGCB ## cbname)FETCH_WCB( window, cbname )) arg_list; \ - } \ -} while( 0 ) -#endif - -/* - * The window callbacks the user can supply us with. Should be kept portable. - * - * This enumeration provides the freeglut CallBack numbers. - * The symbolic constants are indices into a window's array of - * function callbacks. The names are formed by splicing a common - * prefix onto the callback's base name. (This was originally - * done so that an early stage of development could live side-by- - * side with the old callback code. The old callback code used - * the bare callback's name as a structure member, so I used a - * prefix for the array index name.) - * - * XXX For consistancy, perhaps the prefix should match the - * XXX FETCH* and INVOKE* macro suffices. I.e., WCB_, rather than - * XXX CB_. - */ -enum -{ - CB_Display, - CB_Reshape, - CB_Keyboard, - CB_KeyboardUp, - CB_Special, - CB_SpecialUp, - CB_Mouse, - CB_MouseWheel, - CB_Motion, - CB_Passive, - CB_Entry, - CB_Visibility, - CB_WindowStatus, - CB_Joystick, - CB_Destroy, - - /* Presently ignored */ - CB_Select, - CB_OverlayDisplay, - CB_SpaceMotion, /* presently implemented only on UNIX/X11 */ - CB_SpaceRotation, /* presently implemented only on UNIX/X11 */ - CB_SpaceButton, /* presently implemented only on UNIX/X11 */ - CB_Dials, - CB_ButtonBox, - CB_TabletMotion, - CB_TabletButton, - - /* Always make this the LAST one */ - TOTAL_CALLBACKS -}; - - -/* This structure holds the OpenGL rendering context for all the menu windows */ -typedef struct tagSFG_MenuContext SFG_MenuContext; -struct tagSFG_MenuContext -{ - SFG_WindowContextType MContext; /* The menu window's WGL context */ -}; - -/* This structure describes a menu */ -typedef struct tagSFG_Window SFG_Window; -typedef struct tagSFG_MenuEntry SFG_MenuEntry; -typedef struct tagSFG_Menu SFG_Menu; -struct tagSFG_Menu -{ - SFG_Node Node; - void *UserData; /* User data passed back at callback */ - int ID; /* The global menu ID */ - SFG_List Entries; /* The menu entries list */ - FGCBMenu Callback; /* The menu callback */ - FGCBDestroy Destroy; /* Destruction callback */ - GLboolean IsActive; /* Is the menu selected? */ - int Width; /* Menu box width in pixels */ - int Height; /* Menu box height in pixels */ - int X, Y; /* Menu box raster position */ - - SFG_MenuEntry *ActiveEntry; /* Currently active entry in the menu */ - SFG_Window *Window; /* Window for menu */ - SFG_Window *ParentWindow; /* Window in which the menu is invoked */ -}; - -/* This is a menu entry */ -struct tagSFG_MenuEntry -{ - SFG_Node Node; - int ID; /* The menu entry ID (local) */ - int Ordinal; /* The menu's ordinal number */ - char* Text; /* The text to be displayed */ - SFG_Menu* SubMenu; /* Optional sub-menu tree */ - GLboolean IsActive; /* Is the entry highlighted? */ - int Width; /* Label's width in pixels */ -}; - -/* - * A window, making part of freeglut windows hierarchy. - * Should be kept portable. - * - * NOTE that ActiveMenu is set to menu itself if the window is a menu. - */ -struct tagSFG_Window -{ - SFG_Node Node; - int ID; /* Window's ID number */ - - SFG_Context Window; /* Window and OpenGL context */ - SFG_WindowState State; /* The window state */ - SFG_Proc CallBacks[ TOTAL_CALLBACKS ]; /* Array of window callbacks */ - void *UserData ; /* For use by user */ - - SFG_Menu* Menu[ FREEGLUT_MAX_MENUS ]; /* Menus appended to window */ - SFG_Menu* ActiveMenu; /* The window's active menu */ - - SFG_Window* Parent; /* The parent to this window */ - SFG_List Children; /* The subwindows d.l. list */ - - GLboolean IsMenu; /* Set to 1 if we are a menu */ -}; - - -/* A linked list structure of windows */ -typedef struct tagSFG_WindowList SFG_WindowList ; -struct tagSFG_WindowList -{ - SFG_Node node; - SFG_Window *window ; -}; - -/* This holds information about all the windows, menus etc. */ -typedef struct tagSFG_Structure SFG_Structure; -struct tagSFG_Structure -{ - SFG_List Windows; /* The global windows list */ - SFG_List Menus; /* The global menus list */ - SFG_List WindowsToDestroy; - - SFG_Window* CurrentWindow; /* The currently set window */ - SFG_Menu* CurrentMenu; /* Same, but menu... */ - - SFG_MenuContext* MenuContext; /* OpenGL rendering context for menus */ - - SFG_Window* GameModeWindow; /* The game mode window */ - - int WindowID; /* The new current window ID */ - int MenuID; /* The new current menu ID */ -}; - -/* - * This structure is used for the enumeration purposes. - * You can easily extend its functionalities by declaring - * a structure containing enumerator's contents and custom - * data, then casting its pointer to (SFG_Enumerator *). - */ -typedef struct tagSFG_Enumerator SFG_Enumerator; -struct tagSFG_Enumerator -{ - GLboolean found; /* Used to terminate search */ - void* data; /* Custom data pointer */ -}; -typedef void (* FGCBenumerator )( SFG_Window *, SFG_Enumerator * ); - -/* The bitmap font structure */ -typedef struct tagSFG_Font SFG_Font; -struct tagSFG_Font -{ - char* Name; /* The source font name */ - int Quantity; /* Number of chars in font */ - int Height; /* Height of the characters */ - const GLubyte** Characters; /* The characters mapping */ - - float xorig, yorig; /* Relative origin of the character */ -}; - -/* The stroke font structures */ - -typedef struct tagSFG_StrokeVertex SFG_StrokeVertex; -struct tagSFG_StrokeVertex -{ - GLfloat X, Y; -}; - -typedef struct tagSFG_StrokeStrip SFG_StrokeStrip; -struct tagSFG_StrokeStrip -{ - int Number; - const SFG_StrokeVertex* Vertices; -}; - -typedef struct tagSFG_StrokeChar SFG_StrokeChar; -struct tagSFG_StrokeChar -{ - GLfloat Right; - int Number; - const SFG_StrokeStrip* Strips; -}; - -typedef struct tagSFG_StrokeFont SFG_StrokeFont; -struct tagSFG_StrokeFont -{ - char* Name; /* The source font name */ - int Quantity; /* Number of chars in font */ - GLfloat Height; /* Height of the characters */ - const SFG_StrokeChar** Characters; /* The characters mapping */ -}; - -/* -- GLOBAL VARIABLES EXPORTS --------------------------------------------- */ - -/* Freeglut display related stuff (initialized once per session) */ -extern SFG_Display fgDisplay; - -/* Freeglut internal structure */ -extern SFG_Structure fgStructure; - -/* The current freeglut settings */ -extern SFG_State fgState; - - -/* -- PRIVATE FUNCTION DECLARATIONS ---------------------------------------- */ - -/* - * A call to this function makes us sure that the Display and Structure - * subsystems have been properly initialized and are ready to be used - */ -#define FREEGLUT_EXIT_IF_NOT_INITIALISED( string ) \ - if ( ! fgState.Initialised ) \ - { \ - fgError ( " ERROR: Function <%s> called" \ - " without first calling 'glutInit'.", (string) ) ; \ - } - -#define FREEGLUT_INTERNAL_ERROR_EXIT_IF_NOT_INITIALISED( string ) \ - if ( ! fgState.Initialised ) \ - { \ - fgError ( " ERROR: Internal <%s> function called" \ - " without first calling 'glutInit'.", (string) ) ; \ - } - -#define FREEGLUT_INTERNAL_ERROR_EXIT( cond, string, function ) \ - if ( ! ( cond ) ) \ - { \ - fgError ( " ERROR: Internal error <%s> in function %s", \ - (string), (function) ) ; \ - } - -/* - * Following definitions are somewhat similiar to GLib's, - * but do not generate any log messages: - */ -#define freeglut_return_if_fail( expr ) \ - if( !(expr) ) \ - return; -#define freeglut_return_val_if_fail( expr, val ) \ - if( !(expr) ) \ - return val ; - -/* - * A call to those macros assures us that there is a current - * window set, respectively: - */ -#define FREEGLUT_EXIT_IF_NO_WINDOW( string ) \ - if ( ! fgStructure.CurrentWindow ) \ - { \ - fgError ( " ERROR: Function <%s> called" \ - " with no current window defined.", (string) ) ; \ - } - -/* - * The deinitialize function gets called on glutMainLoop() end. It should clean up - * everything inside of the freeglut - */ -void fgDeinitialize( void ); - -/* - * Those two functions are used to create/destroy the freeglut internal - * structures. This actually happens when calling glutInit() and when - * quitting the glutMainLoop() (which actually happens, when all windows - * have been closed). - */ -void fgCreateStructure( void ); -void fgDestroyStructure( void ); - -/* A helper function to check if a display mode is possible to use */ -#if TARGET_HOST_POSIX_X11 -GLXFBConfig* fgChooseFBConfig( void ); -#endif - -/* The window procedure for Win32 events handling */ -#if TARGET_HOST_MS_WINDOWS -LRESULT CALLBACK fgWindowProc( HWND hWnd, UINT uMsg, - WPARAM wParam, LPARAM lParam ); -void fgNewWGLCreateContext( SFG_Window* window ); -GLboolean fgSetupPixelFormat( SFG_Window* window, GLboolean checkOnly, - unsigned char layer_type ); -#endif - -/* - * Window creation, opening, closing and destruction. - * Also CallBack clearing/initialization. - * Defined in freeglut_structure.c, freeglut_window.c. - */ -SFG_Window* fgCreateWindow( SFG_Window* parent, const char* title, - GLboolean positionUse, int x, int y, - GLboolean sizeUse, int w, int h, - GLboolean gameMode, GLboolean isMenu ); -void fgSetWindow ( SFG_Window *window ); -void fgOpenWindow( SFG_Window* window, const char* title, - GLboolean positionUse, int x, int y, - GLboolean sizeUse, int w, int h, - GLboolean gameMode, GLboolean isSubWindow ); -void fgCloseWindow( SFG_Window* window ); -void fgAddToWindowDestroyList ( SFG_Window* window ); -void fgCloseWindows (); -void fgDestroyWindow( SFG_Window* window ); - -/* Menu creation and destruction. Defined in freeglut_structure.c */ -SFG_Menu* fgCreateMenu( FGCBMenu menuCallback ); -void fgDestroyMenu( SFG_Menu* menu ); - -/* Joystick device management functions, defined in freeglut_joystick.c */ -int fgJoystickDetect( void ); -void fgInitialiseJoysticks( void ); -void fgJoystickClose( void ); -void fgJoystickPollWindow( SFG_Window* window ); - -/* InputDevice Initialisation and Closure */ -int fgInputDeviceDetect( void ); -void fgInitialiseInputDevices( void ); -void fgInputDeviceClose( void ); - -/* spaceball device functions, defined in freeglut_spaceball.c */ -void fgInitialiseSpaceball( void ); -void fgSpaceballClose( void ); -void fgSpaceballSetWindow( SFG_Window *window ); - -int fgHasSpaceball( void ); -int fgSpaceballNumButtons( void ); - -#if TARGET_HOST_POSIX_X11 -int fgIsSpaceballXEvent( const XEvent *ev ); -void fgSpaceballHandleXEvent( const XEvent *ev ); -#endif - -/* Setting the cursor for a given window */ -void fgSetCursor ( SFG_Window *window, int cursorID ); - -/* - * Helper function to enumerate through all registered windows - * and one to enumerate all of a window's subwindows... - * - * The GFunc callback for those functions will be defined as: - * - * void enumCallback( gpointer window, gpointer enumerator ); - * - * where window is the enumerated (sub)window pointer (SFG_Window *), - * and userData is the a custom user-supplied pointer. Functions - * are defined and exported from freeglut_structure.c file. - */ -void fgEnumWindows( FGCBenumerator enumCallback, SFG_Enumerator* enumerator ); -void fgEnumSubWindows( SFG_Window* window, FGCBenumerator enumCallback, - SFG_Enumerator* enumerator ); - -/* - * fgWindowByHandle returns a (SFG_Window *) value pointing to the - * first window in the queue matching the specified window handle. - * The function is defined in freeglut_structure.c file. - */ -SFG_Window* fgWindowByHandle( SFG_WindowHandleType hWindow ); - -/* - * This function is similiar to the previous one, except it is - * looking for a specified (sub)window identifier. The function - * is defined in freeglut_structure.c file. - */ -SFG_Window* fgWindowByID( int windowID ); - -/* - * Looks up a menu given its ID. This is easier than fgWindowByXXX - * as all menus are placed in a single doubly linked list... - */ -SFG_Menu* fgMenuByID( int menuID ); - -/* - * The menu activation and deactivation the code. This is the meat - * of the menu user interface handling code... - */ -void fgUpdateMenuHighlight ( SFG_Menu *menu ); -GLboolean fgCheckActiveMenu ( SFG_Window *window, int button, GLboolean pressed, - int mouse_x, int mouse_y ); -void fgDeactivateMenu( SFG_Window *window ); - -/* - * This function gets called just before the buffers swap, so that - * freeglut can display the pull-down menus via OpenGL. The function - * is defined in freeglut_menu.c file. - */ -void fgDisplayMenu( void ); - -/* Elapsed time as per glutGet(GLUT_ELAPSED_TIME). */ -long fgElapsedTime( void ); - -/* System time in milliseconds */ -long unsigned fgSystemTime(void); - -/* List functions */ -void fgListInit(SFG_List *list); -void fgListAppend(SFG_List *list, SFG_Node *node); -void fgListRemove(SFG_List *list, SFG_Node *node); -int fgListLength(SFG_List *list); -void fgListInsert(SFG_List *list, SFG_Node *next, SFG_Node *node); - -/* Error Message functions */ -void fgError( const char *fmt, ... ); -void fgWarning( const char *fmt, ... ); - -/* - * Check if "hint" is present in "property" for "window". See freeglut_init.c - */ -#if TARGET_HOST_POSIX_X11 -int fgHintPresent(Window window, Atom property, Atom hint); -#endif - -SFG_Proc fghGetProcAddress( const char *procName ); - -#if TARGET_HOST_MS_WINDOWS -extern void (__cdecl *__glutExitFunc)( int return_value ); -#endif - -#endif /* FREEGLUT_INTERNAL_H */ - -/*** END OF FILE ***/ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_joystick.c b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_joystick.c deleted file mode 100644 index 47127f5..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_joystick.c +++ /dev/null @@ -1,1801 +0,0 @@ -/* - * freeglut_joystick.c - * - * Joystick handling code - * - * Copyright (c) 1999-2000 Pawel W. Olszta. All Rights Reserved. - * Written by Steve Baker, - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included - * in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - * PAWEL W. OLSZTA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER - * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - */ - -/* - * FreeBSD port by Stephen Montgomery-Smith - * - * Redone by John Fay 2/4/04 with another look from the PLIB "js" library. - * Many thanks for Steve Baker for permission to pull from that library. - */ - -#include "freeglut.h" -#include "freeglut_internal.h" -#if HAVE_SYS_PARAM_H -# include -#endif - -/* - * Initial defines from "js.h" starting around line 33 with the existing "freeglut_joystick.c" - * interspersed - */ - -/* XXX It might be better to poll the operating system for the numbers of buttons and - * XXX axes and then dynamically allocate the arrays. - */ -#define _JS_MAX_BUTTONS 32 - -#if TARGET_HOST_MACINTOSH -# define _JS_MAX_AXES 9 -# include -#endif - -#if TARGET_HOST_MAC_OSX -# define _JS_MAX_AXES 16 -# include -# include -# include -#endif - -#if TARGET_HOST_MS_WINDOWS && !defined(_WIN32_WCE) -# define _JS_MAX_AXES 8 -# include -# include -# include - -#endif - -#if TARGET_HOST_POSIX_X11 -# define _JS_MAX_AXES 16 -# if HAVE_SYS_IOCTL_H -# include -# endif -# if HAVE_FCNTL_H -# include -# endif -# if HAVE_ERRNO -# include -# endif -# if defined(__FreeBSD__) || defined(__NetBSD__) -/* XXX The below hack is done until freeglut's autoconf is updated. */ -# define HAVE_USB_JS 1 - -# if defined(__FreeBSD__) -# include -# else -/* - * XXX NetBSD/amd64 systems may find that they have to steal the - * XXX /usr/include/machine/joystick.h from a NetBSD/i386 system. - * XXX I cannot comment whether that works for the interface, but - * XXX it lets you compile...(^& I do not think that we can do away - * XXX with this header. - */ -# include /* For analog joysticks */ -# endif -# define JS_DATA_TYPE joystick -# define JS_RETURN (sizeof(struct JS_DATA_TYPE)) -# endif - -# if defined(__linux__) -# include - -/* check the joystick driver version */ -# if defined(JS_VERSION) && JS_VERSION >= 0x010000 -# define JS_NEW -# endif -# else /* Not BSD or Linux */ -# ifndef JS_RETURN - - /* - * We'll put these values in and that should - * allow the code to at least compile when there is - * no support. The JS open routine should error out - * and shut off all the code downstream anyway and if - * the application doesn't use a joystick we'll be fine. - */ - - struct JS_DATA_TYPE - { - int buttons; - int x; - int y; - }; - -# define JS_RETURN (sizeof(struct JS_DATA_TYPE)) -# endif -# endif -#endif - -#define JS_TRUE 1 -#define JS_FALSE 0 - -/* BSD defines from "jsBSD.cxx" around lines 42-270 */ - -#if defined(__NetBSD__) || defined(__FreeBSD__) - -# ifdef HAVE_USB_JS -# if defined(__NetBSD__) -/* XXX The below hack is done until freeglut's autoconf is updated. */ -# define HAVE_USBHID_H 1 -# ifdef HAVE_USBHID_H -# include -# else -# include -# endif -# elif defined(__FreeBSD__) -# if __FreeBSD_version < 500000 -# include -# else -/* XXX The below hack is done until freeglut's autoconf is updated. */ -# define HAVE_USBHID_H 1 -# include -# endif -# endif -# include -# include - -/* Compatibility with older usb.h revisions */ -# if !defined(USB_MAX_DEVNAMES) && defined(MAXDEVNAMES) -# define USB_MAX_DEVNAMES MAXDEVNAMES -# endif -# endif - -static int hatmap_x[9] = { 0, 0, 1, 1, 1, 0, -1, -1, -1 }; -static int hatmap_y[9] = { 0, 1, 1, 0, -1, -1, -1, 0, 1 }; -struct os_specific_s { - char fname [128 ]; - int fd; - int is_analog; - /* The following structure members are specific to analog joysticks */ - struct joystick ajs; -# ifdef HAVE_USB_JS - /* The following structure members are specific to USB joysticks */ - struct hid_item *hids; - int hid_dlen; - int hid_offset; - char *hid_data_buf; - int axes_usage [ _JS_MAX_AXES ]; -# endif - /* We keep button and axes state ourselves, as they might not be updated - * on every read of a USB device - */ - int cache_buttons; - float cache_axes [ _JS_MAX_AXES ]; -}; - -/* Idents lower than USB_IDENT_OFFSET are for analog joysticks. */ -# define USB_IDENT_OFFSET 2 - -# define USBDEV "/dev/usb" -# define UHIDDEV "/dev/uhid" -# define AJSDEV "/dev/joy" - -# ifdef HAVE_USB_JS -/* - * fghJoystickFindUSBdev (and its helper, fghJoystickWalkUSBdev) try to locate - * the full name of a USB device. If /dev/usbN isn't readable, we punt and - * return the uhidN device name. We warn the user of this situation once. - */ -static char *fghJoystickWalkUSBdev(int f, char *dev, char *out, int outlen) -{ - struct usb_device_info di; - int i, a; - char *cp; - - for (a = 1; a < USB_MAX_DEVICES; a++) { - di.udi_addr = a; - if (ioctl(f, USB_DEVICEINFO, &di) != 0) - return NULL; - for (i = 0; i < USB_MAX_DEVNAMES; i++) - if (di.udi_devnames[i][0] && - strcmp(di.udi_devnames[i], dev) == 0) { - cp = calloc( 1, strlen(di.udi_vendor) + strlen(di.udi_product) + 2); - strcpy(cp, di.udi_vendor); - strcat(cp, " "); - strcat(cp, di.udi_product); - strncpy(out, cp, outlen - 1); - out[outlen - 1] = 0; - free( cp ); - return out; - } - } - return NULL; -} - -static int fghJoystickFindUSBdev(char *name, char *out, int outlen) -{ - int i, f; - char buf[50]; - char *cp; - static int protection_warned = 0; - - for (i = 0; i < 16; i++) { - snprintf(buf, sizeof(buf), "%s%d", USBDEV, i); - f = open(buf, O_RDONLY); - if (f >= 0) { - cp = fghJoystickWalkUSBdev(f, name, out, outlen); - close(f); - if (cp) - return 1; - } -#if HAVE_ERRNO - else if (errno == EACCES) { - if (!protection_warned) { - fgWarning ( "Can't open %s for read!", buf ); - protection_warned = 1; - } - } -#endif - } - return 0; -} - -static int fghJoystickInitializeHID(struct os_specific_s *os, - int *num_axes, int *num_buttons) -{ - int size, is_joystick; -# ifdef HAVE_USBHID_H - int report_id = 0; -# endif - struct hid_data *d; - struct hid_item h; - report_desc_t rd; - - if ( ( rd = hid_get_report_desc( os->fd ) ) == 0 ) - { -#if HAVE_ERRNO - fgWarning ( "error: %s: %s", os->fname, strerror( errno ) ); -#else - fgWarning ( "error: %s", os->fname ); -#endif - return FALSE; - } - - os->hids = NULL; - -# ifdef HAVE_USBHID_H - if( ioctl( os->fd, USB_GET_REPORT_ID, &report_id ) < 0) - { - /*** XXX {report_id} may not be the right variable? ***/ -#if HAVE_ERRNO - fgWarning ( "error: %s%d: %s", UHIDDEV, report_id, strerror( errno ) ); -#else - fgWarning ( "error: %s%d", UHIDDEV, report_id ); -#endif - return FALSE; - } - - size = hid_report_size( rd, hid_input, report_id ); -# else - size = hid_report_size( rd, 0, hid_input ); -# endif - os->hid_data_buf = calloc( 1, size ); - os->hid_dlen = size; - - is_joystick = 0; -# ifdef HAVE_USBHID_H - d = hid_start_parse( rd, 1 << hid_input, report_id ); -# else - d = hid_start_parse( rd, 1 << hid_input ); -# endif - while( hid_get_item( d, &h ) ) - { - int usage, page, interesting_hid; - - page = HID_PAGE( h.usage ); - usage = HID_USAGE( h.usage ); - - /* This test is somewhat too simplistic, but this is how MicroSoft - * does, so I guess it works for all joysticks/game pads. */ - is_joystick = is_joystick || - ( h.kind == hid_collection && - page == HUP_GENERIC_DESKTOP && - ( usage == HUG_JOYSTICK || usage == HUG_GAME_PAD ) ); - - if( h.kind != hid_input ) - continue; - - if( !is_joystick ) - continue; - - interesting_hid = TRUE; - if( page == HUP_GENERIC_DESKTOP ) - { - switch( usage ) - { - case HUG_X: - case HUG_RX: - case HUG_Y: - case HUG_RY: - case HUG_Z: - case HUG_RZ: - case HUG_SLIDER: - if( *num_axes < _JS_MAX_AXES ) - { - os->axes_usage[ *num_axes ] = usage; - ( *num_axes )++; - } - break; - case HUG_HAT_SWITCH: - /* Allocate two axes for a hat */ - if( *num_axes + 1 < _JS_MAX_AXES ) - { - os->axes_usage[ *num_axes ] = usage; - (*num_axes)++; - os->axes_usage[ *num_axes ] = usage; - (*num_axes)++; - } - break; - default: - interesting_hid = FALSE; - break; - } - } - else if( page == HUP_BUTTON ) - { - interesting_hid = ( usage > 0 ) && - ( usage <= _JS_MAX_BUTTONS ); - - if( interesting_hid && usage - 1 > *num_buttons ) - *num_buttons = usage - 1; - } - - if( interesting_hid ) - { - h.next = os->hids; - os->hids = calloc( 1, sizeof ( struct hid_item ) ); - *os->hids = h; - } - } - hid_end_parse( d ); - - return os->hids != NULL; -} -# endif -#endif - -/* - * Definition of "SFG_Joystick" structure -- based on JS's "jsJoystick" object class. - * See "js.h" lines 80-178. - */ -typedef struct tagSFG_Joystick SFG_Joystick; -struct tagSFG_Joystick -{ -#if TARGET_HOST_MACINTOSH -#define ISP_NUM_AXIS 9 -#define ISP_NUM_NEEDS 41 - ISpElementReference isp_elem [ ISP_NUM_NEEDS ]; - ISpNeed isp_needs [ ISP_NUM_NEEDS ]; -#endif - -#if TARGET_HOST_MAC_OSX - IOHIDDeviceInterface ** hidDev; - IOHIDElementCookie buttonCookies[41]; - IOHIDElementCookie axisCookies[_JS_MAX_AXES]; - long minReport[_JS_MAX_AXES], - maxReport[_JS_MAX_AXES]; -#endif - -#if TARGET_HOST_MS_WINDOWS && !defined(_WIN32_WCE) - JOYCAPS jsCaps; - JOYINFOEX js; - UINT js_id; -#endif - - -#if TARGET_HOST_POSIX_X11 -# if defined(__FreeBSD__) || defined(__NetBSD__) - struct os_specific_s *os; -# endif - -# ifdef JS_NEW - struct js_event js; - int tmp_buttons; - float tmp_axes [ _JS_MAX_AXES ]; -# else - struct JS_DATA_TYPE js; -# endif - - char fname [ 128 ]; - int fd; -#endif - - int id; - GLboolean error; - char name [ 128 ]; - int num_axes; - int num_buttons; - - float dead_band[ _JS_MAX_AXES ]; - float saturate [ _JS_MAX_AXES ]; - float center [ _JS_MAX_AXES ]; - float max [ _JS_MAX_AXES ]; - float min [ _JS_MAX_AXES ]; -}; - -/* - * Functions associated with the "jsJoystick" class in PLIB - */ -#if TARGET_HOST_MAC_OSX -#define K_NUM_DEVICES 32 -int numDevices; -io_object_t ioDevices[K_NUM_DEVICES]; - -static void fghJoystickFindDevices ( SFG_Joystick* joy, mach_port_t ); -static CFDictionaryRef fghJoystickGetCFProperties ( SFG_Joystick* joy, io_object_t ); - -static void fghJoystickEnumerateElements ( SFG_Joystick* joy, CFTypeRef element ); -/* callback for CFArrayApply */ -static void fghJoystickElementEnumerator ( SFG_Joystick* joy, void *element, void* vjs ); - -static void fghJoystickAddAxisElement ( SFG_Joystick* joy, CFDictionaryRef axis ); -static void fghJoystickAddButtonElement ( SFG_Joystick* joy, CFDictionaryRef button ); -static void fghJoystickAddHatElement ( SFG_Joystick* joy, CFDictionaryRef hat ); -#endif - - -/* - * The static joystick structure pointer - */ -#define MAX_NUM_JOYSTICKS 2 -static SFG_Joystick *fgJoystick [ MAX_NUM_JOYSTICKS ]; - - -/* - * Read the raw joystick data - */ -static void fghJoystickRawRead( SFG_Joystick* joy, int* buttons, float* axes ) -{ -#if TARGET_HOST_MS_WINDOWS && !defined(_WIN32_WCE) - MMRESULT status; -#else - int status; -#endif - -#if defined(__FreeBSD__) || defined(__NetBSD__) - int len; -#endif - - int i; - - /* Defaults */ - if( buttons ) - *buttons = 0; - - if( axes ) - for( i = 0; i < joy->num_axes; i++ ) - axes[ i ] = 1500.0f; - - if( joy->error ) - return; - -#if TARGET_HOST_MACINTOSH - if ( buttons ) - { - *buttons = 0; - - for ( i = 0; i < joy->num_buttons; i++ ) - { - UInt32 state; - int err = ISpElement_GetSimpleState ( isp_elem [ i + isp_num_axis ], &state); - ISP_CHECK_ERR(err) - - *buttons |= state << i; - } - } - - if ( axes ) - { - for ( i = 0; i < joy->num_axes; i++ ) - { - UInt32 state; - int err = ISpElement_GetSimpleState ( isp_elem [ i ], &state ); - ISP_CHECK_ERR(err) - - axes [i] = (float) state; - } - } -#endif - -#if TARGET_HOST_MAC_OSX - if ( buttons != NULL ) - { - *buttons = 0; - - for ( i = 0; i < joy->num_buttons; i++ ) - { - IOHIDEventStruct hidEvent; - (*(joy->hidDev))->getElementValue ( joy->hidDev, buttonCookies[i], &hidEvent ); - if ( hidEvent.value ) - *buttons |= 1 << i; - } - } - - if ( axes != NULL ) - { - for ( i = 0; i < joy->num_axes; i++ ) - { - IOHIDEventStruct hidEvent; - (*(joy->hidDev))->getElementValue ( joy->hidDev, axisCookies[i], &hidEvent ); - axes[i] = hidEvent.value; - } - } -#endif - -#if TARGET_HOST_MS_WINDOWS && !defined(_WIN32_WCE) - status = joyGetPosEx( joy->js_id, &joy->js ); - - if ( status != JOYERR_NOERROR ) - { - joy->error = GL_TRUE; - return; - } - - if ( buttons ) - *buttons = joy->js.dwButtons; - - if ( axes ) - { - /* - * WARNING - Fall through case clauses!! - */ - switch ( joy->num_axes ) - { - case 8: - /* Generate two POV axes from the POV hat angle. - * Low 16 bits of js.dwPOV gives heading (clockwise from ahead) in - * hundredths of a degree, or 0xFFFF when idle. - */ - if ( ( joy->js.dwPOV & 0xFFFF ) == 0xFFFF ) - { - axes [ 6 ] = 0.0; - axes [ 7 ] = 0.0; - } - else - { - /* This is the contentious bit: how to convert angle to X/Y. - * wk: I know of no define for PI that we could use here: - * SG_PI would pull in sg, M_PI is undefined for MSVC - * But the accuracy of the value of PI is very unimportant at - * this point. - */ - float s = (float) sin ( ( joy->js.dwPOV & 0xFFFF ) * ( 0.01 * 3.1415926535f / 180.0f ) ); - float c = (float) cos ( ( joy->js.dwPOV & 0xFFFF ) * ( 0.01 * 3.1415926535f / 180.0f ) ); - - /* Convert to coordinates on a square so that North-East - * is (1,1) not (.7,.7), etc. - * s and c cannot both be zero so we won't divide by zero. - */ - if ( fabs ( s ) < fabs ( c ) ) - { - axes [ 6 ] = ( c < 0.0 ) ? -s/c : s/c ; - axes [ 7 ] = ( c < 0.0 ) ? -1.0f : 1.0f; - } - else - { - axes [ 6 ] = ( s < 0.0 ) ? -1.0f : 1.0f; - axes [ 7 ] = ( s < 0.0 ) ? -c/s : c/s ; - } - } - - case 6: axes[5] = (float) joy->js.dwVpos; - case 5: axes[4] = (float) joy->js.dwUpos; - case 4: axes[3] = (float) joy->js.dwRpos; - case 3: axes[2] = (float) joy->js.dwZpos; - case 2: axes[1] = (float) joy->js.dwYpos; - case 1: axes[0] = (float) joy->js.dwXpos; - } - } -#endif - -#if TARGET_HOST_POSIX_X11 -# if defined(__FreeBSD__) || defined(__NetBSD__) - if ( joy->os->is_analog ) - { - int status = read ( joy->os->fd, &joy->os->ajs, sizeof(joy->os->ajs) ); - if ( status != sizeof(joy->os->ajs) ) { - perror ( joy->os->fname ); - joy->error = GL_TRUE; - return; - } - if ( buttons != NULL ) - *buttons = ( joy->os->ajs.b1 ? 1 : 0 ) | ( joy->os->ajs.b2 ? 2 : 0 ); - - if ( axes != NULL ) - { - axes[0] = (float) joy->os->ajs.x; - axes[1] = (float) joy->os->ajs.y; - } - - return; - } - -# ifdef HAVE_USB_JS - while ( ( len = read ( joy->os->fd, joy->os->hid_data_buf, joy->os->hid_dlen ) ) == joy->os->hid_dlen ) - { - struct hid_item *h; - - for ( h = joy->os->hids; h; h = h->next ) - { - int d = hid_get_data ( joy->os->hid_data_buf, h ); - - int page = HID_PAGE ( h->usage ); - int usage = HID_USAGE ( h->usage ); - - if ( page == HUP_GENERIC_DESKTOP ) - { - int i; - for ( i = 0; i < joy->num_axes; i++ ) - if (joy->os->axes_usage[i] == usage) - { - if (usage == HUG_HAT_SWITCH) - { - if (d < 0 || d > 8) - d = 0; /* safety */ - joy->os->cache_axes[i] = (float)hatmap_x[d]; - joy->os->cache_axes[i + 1] = (float)hatmap_y[d]; - } - else - { - joy->os->cache_axes[i] = (float)d; - } - break; - } - } - else if (page == HUP_BUTTON) - { - if (usage > 0 && usage < _JS_MAX_BUTTONS + 1) - { - if (d) - joy->os->cache_buttons |= (1 << ( usage - 1 )); - else - joy->os->cache_buttons &= ~(1 << ( usage - 1 )); - } - } - } - } -#if HAVE_ERRNO - if ( len < 0 && errno != EAGAIN ) -#else - if ( len < 0 ) -#endif - { - perror( joy->os->fname ); - joy->error = 1; - } - if ( buttons != NULL ) *buttons = joy->os->cache_buttons; - if ( axes != NULL ) - memcpy ( axes, joy->os->cache_axes, sizeof(float) * joy->num_axes ); -# endif -# endif - -# ifdef JS_NEW - - while ( 1 ) - { - status = read ( joy->fd, &joy->js, sizeof(struct js_event) ); - - if ( status != sizeof( struct js_event ) ) - { -#if HAVE_ERRNO - if ( errno == EAGAIN ) - { - /* Use the old values */ - if ( buttons ) - *buttons = joy->tmp_buttons; - if ( axes ) - memcpy( axes, joy->tmp_axes, - sizeof( float ) * joy->num_axes ); - return; - } -#endif - - fgWarning ( "%s", joy->fname ); - joy->error = GL_TRUE; - return; - } - - switch ( joy->js.type & ~JS_EVENT_INIT ) - { - case JS_EVENT_BUTTON: - if( joy->js.value == 0 ) /* clear the flag */ - joy->tmp_buttons &= ~( 1 << joy->js.number ); - else - joy->tmp_buttons |= ( 1 << joy->js.number ); - break; - - case JS_EVENT_AXIS: - if ( joy->js.number < joy->num_axes ) - { - joy->tmp_axes[ joy->js.number ] = ( float )joy->js.value; - - if( axes ) - memcpy( axes, joy->tmp_axes, sizeof(float) * joy->num_axes ); - } - break; - - default: - fgWarning ( "PLIB_JS: Unrecognised /dev/js return!?!" ); - - /* use the old values */ - - if ( buttons != NULL ) *buttons = joy->tmp_buttons; - if ( axes != NULL ) - memcpy ( axes, joy->tmp_axes, sizeof(float) * joy->num_axes ); - - return; - } - - if( buttons ) - *buttons = joy->tmp_buttons; - } -# else - - status = read( joy->fd, &joy->js, JS_RETURN ); - - if ( status != JS_RETURN ) - { - fgWarning( "%s", joy->fname ); - joy->error = GL_TRUE; - return; - } - - if ( buttons ) -# if defined( __FreeBSD__ ) || defined( __NetBSD__ ) - *buttons = ( joy->js.b1 ? 1 : 0 ) | ( joy->js.b2 ? 2 : 0 ); /* XXX Should not be here -- BSD is handled earlier */ -# else - *buttons = joy->js.buttons; -# endif - - if ( axes ) - { - axes[ 0 ] = (float) joy->js.x; - axes[ 1 ] = (float) joy->js.y; - } -# endif -#endif -} - -/* - * Correct the joystick axis data - */ -static float fghJoystickFudgeAxis( SFG_Joystick* joy, float value, int axis ) -{ - if( value < joy->center[ axis ] ) - { - float xx = ( value - joy->center[ axis ] ) / ( joy->center[ axis ] - - joy->min[ axis ] ); - - if( xx < -joy->saturate[ axis ] ) - return -1.0f; - - if( xx > -joy->dead_band [ axis ] ) - return 0.0f; - - xx = ( xx + joy->dead_band[ axis ] ) / ( joy->saturate[ axis ] - - joy->dead_band[ axis ] ); - - return ( xx < -1.0f ) ? -1.0f : xx; - } - else - { - float xx = ( value - joy->center [ axis ] ) / ( joy->max[ axis ] - - joy->center[ axis ] ); - - if( xx > joy->saturate[ axis ] ) - return 1.0f; - - if( xx < joy->dead_band[ axis ] ) - return 0.0f; - - xx = ( xx - joy->dead_band[ axis ] ) / ( joy->saturate[ axis ] - - joy->dead_band[ axis ] ); - - return ( xx > 1.0f ) ? 1.0f : xx; - } -} - -/* - * Read the corrected joystick data - */ -static void fghJoystickRead( SFG_Joystick* joy, int* buttons, float* axes ) -{ - float raw_axes[ _JS_MAX_AXES ]; - int i; - - if( joy->error ) - { - if( buttons ) - *buttons = 0; - - if( axes ) - for ( i=0; inum_axes; i++ ) - axes[ i ] = 0.0f; - } - - fghJoystickRawRead( joy, buttons, raw_axes ); - - if( axes ) - for( i=0; inum_axes; i++ ) - axes[ i ] = fghJoystickFudgeAxis( joy, raw_axes[ i ], i ); -} - -/* - * Happy happy happy joy joy joy (happy new year toudi :D) - */ - - -#if TARGET_HOST_MAC_OSX -/** open the IOKit connection, enumerate all the HID devices, add their -interface references to the static array. We then use the array index -as the device number when we come to open() the joystick. */ -static int fghJoystickFindDevices ( SFG_Joystick *joy, mach_port_t masterPort ) -{ - CFMutableDictionaryRef hidMatch = NULL; - IOReturn rv = kIOReturnSuccess; - - io_iterator_t hidIterator; - io_object_t ioDev; - - /* build a dictionary matching HID devices */ - hidMatch = IOServiceMatching(kIOHIDDeviceKey); - - rv = IOServiceGetMatchingServices(masterPort, hidMatch, &hidIterator); - if (rv != kIOReturnSuccess || !hidIterator) { - fgWarning( "no joystick (HID) devices found" ); - return; - } - - /* iterate */ - while ((ioDev = IOIteratorNext(hidIterator))) { - /* filter out keyboard and mouse devices */ - CFDictionaryRef properties = getCFProperties(ioDev); - long usage, page; - - CFTypeRef refPage = CFDictionaryGetValue (properties, CFSTR(kIOHIDPrimaryUsagePageKey)); - CFTypeRef refUsage = CFDictionaryGetValue (properties, CFSTR(kIOHIDPrimaryUsageKey)); - CFNumberGetValue((CFNumberRef) refUsage, kCFNumberLongType, &usage); - CFNumberGetValue((CFNumberRef) refPage, kCFNumberLongType, &page); - - /* keep only joystick devices */ - if ( ( page == kHIDPage_GenericDesktop ) && ( - (usage == kHIDUsage_GD_Joystick) - || (usage == kHIDUsage_GD_GamePad) - || (usage == kHIDUsage_GD_MultiAxisController) - || (usage == kHIDUsage_GD_Hatswitch) /* last two necessary ? */ - /* add it to the array */ - ioDevices[numDevices++] = ioDev; - } - - IOObjectRelease(hidIterator); -} - -static CFDictionaryRef fghJoystickGetCFProperties ( SFG_Joystick *joy, io_object_t ioDev ) -{ - IOReturn rv; - CFMutableDictionaryRef cfProperties; - -#if 0 - /* comment copied from darwin/SDL_sysjoystick.c */ - /* Mac OS X currently is not mirroring all USB properties to HID page so need to look at USB device page also - * get dictionary for usb properties: step up two levels and get CF dictionary for USB properties - */ - - io_registry_entry_t parent1, parent2; - - rv = IORegistryEntryGetParentEntry (ioDev, kIOServicePlane, &parent1); - if (rv != kIOReturnSuccess) { - fgWarning ( "error getting device entry parent"); - return NULL; - } - - rv = IORegistryEntryGetParentEntry (parent1, kIOServicePlane, &parent2); - if (rv != kIOReturnSuccess) { - fgWarning ( "error getting device entry parent 2"); - return NULL; - } -#endif - - rv = IORegistryEntryCreateCFProperties( ioDev /*parent2*/, - &cfProperties, kCFAllocatorDefault, kNilOptions); - if (rv != kIOReturnSuccess || !cfProperties) { - fgWarning ( "error getting device properties"); - return NULL; - } - - return cfProperties; -} - -static void fghJoystickElementEnumerator ( SFG_Joystick *joy, void *element, void* vjs ) -{ - if (CFGetTypeID((CFTypeRef) element) != CFDictionaryGetTypeID()) { - fgError ( "%s", "element enumerator passed non-dictionary value"); - return; - } - - static_cast(vjs)->parseElement ( (CFDictionaryRef) element ); -} - -/** element enumerator function : pass NULL for top-level*/ -static void fghJoystickEnumerateElements ( SFG_Joystick *joy, CFTypeRef element ) -{ - FREEGLUT_INTERNAL_ERROR_EXIT( (CFGetTypeID(element) == CFArrayGetTypeID(), - "Joystick element type mismatch", - "fghJoystickEnumerateElements" ); - - CFRange range = {0, CFArrayGetCount ((CFArrayRef)element)}; - CFArrayApplyFunction((CFArrayRef) element, range, - &fghJoystickElementEnumerator, joy ); -} - -static void fghJoystickAddAxisElement ( SFG_Joystick *joy, CFDictionaryRef axis ) -{ - long cookie, lmin, lmax; - int index = joy->num_axes++; - - CFNumberGetValue ((CFNumberRef) - CFDictionaryGetValue ( axis, CFSTR(kIOHIDElementCookieKey) ), - kCFNumberLongType, &cookie); - - axisCookies[index] = (IOHIDElementCookie) cookie; - - CFNumberGetValue ((CFNumberRef) - CFDictionaryGetValue ( axis, CFSTR(kIOHIDElementMinKey) ), - kCFNumberLongType, &lmin); - - CFNumberGetValue ((CFNumberRef) - CFDictionaryGetValue ( axis, CFSTR(kIOHIDElementMaxKey) ), - kCFNumberLongType, &lmax); - - joy->min[index] = lmin; - joy->max[index] = lmax; - joy->dead_band[index] = 0.0; - joy->saturate[index] = 1.0; - joy->center[index] = (lmax + lmin) * 0.5; -} - -static void fghJoystickAddButtonElement ( SFG_Joystick *joy, CFDictionaryRef button ) -{ - long cookie; - CFNumberGetValue ((CFNumberRef) - CFDictionaryGetValue ( button, CFSTR(kIOHIDElementCookieKey) ), - kCFNumberLongType, &cookie); - - joy->buttonCookies[num_buttons++] = (IOHIDElementCookie) cookie; - /* anything else for buttons? */ -} - -static void fghJoystickAddHatElement ( SFG_Joystick *joy, CFDictionaryRef button ) -{ - /* hatCookies[num_hats++] = (IOHIDElementCookie) cookie; */ - /* do we map hats to axes or buttons? */ -} -#endif - -#if TARGET_HOST_MS_WINDOWS && !defined(_WIN32_WCE) -/* Inspired by - http://msdn.microsoft.com/archive/en-us/dnargame/html/msdn_sidewind3d.asp - */ -# if FREEGLUT_LIB_PRAGMAS -# pragma comment (lib, "advapi32.lib") -# endif - -static int fghJoystickGetOEMProductName ( SFG_Joystick* joy, char *buf, int buf_sz ) -{ - char buffer [ 256 ]; - - char OEMKey [ 256 ]; - - HKEY hKey; - DWORD dwcb; - LONG lr; - - if ( joy->error ) - return 0; - - /* Open .. MediaResources\CurrentJoystickSettings */ - _snprintf ( buffer, sizeof(buffer), "%s\\%s\\%s", - REGSTR_PATH_JOYCONFIG, joy->jsCaps.szRegKey, - REGSTR_KEY_JOYCURR ); - - lr = RegOpenKeyEx ( HKEY_LOCAL_MACHINE, buffer, 0, KEY_QUERY_VALUE, &hKey); - - if ( lr != ERROR_SUCCESS ) return 0; - - /* Get OEM Key name */ - dwcb = sizeof(OEMKey); - - /* JOYSTICKID1-16 is zero-based; registry entries for VJOYD are 1-based. */ - _snprintf ( buffer, sizeof(buffer), "Joystick%d%s", joy->js_id + 1, REGSTR_VAL_JOYOEMNAME ); - - lr = RegQueryValueEx ( hKey, buffer, 0, 0, (LPBYTE) OEMKey, &dwcb); - RegCloseKey ( hKey ); - - if ( lr != ERROR_SUCCESS ) return 0; - - /* Open OEM Key from ...MediaProperties */ - _snprintf ( buffer, sizeof(buffer), "%s\\%s", REGSTR_PATH_JOYOEM, OEMKey ); - - lr = RegOpenKeyEx ( HKEY_LOCAL_MACHINE, buffer, 0, KEY_QUERY_VALUE, &hKey ); - - if ( lr != ERROR_SUCCESS ) return 0; - - /* Get OEM Name */ - dwcb = buf_sz; - - lr = RegQueryValueEx ( hKey, REGSTR_VAL_JOYOEMNAME, 0, 0, (LPBYTE) buf, - &dwcb ); - RegCloseKey ( hKey ); - - if ( lr != ERROR_SUCCESS ) return 0; - - return 1; -} -#endif - - -static void fghJoystickOpen( SFG_Joystick* joy ) -{ - int i = 0; -#if TARGET_HOST_MACINTOSH - OSStatus err; -#endif -#if TARGET_HOST_MAC_OSX - IOReturn rv; - SInt32 score; - IOCFPlugInInterface **plugin; - - HRESULT pluginResult; - - CFDictionaryRef props; - CFTypeRef topLevelElement; -#endif -#if TARGET_HOST_POSIX_X11 -# if defined( __FreeBSD__ ) || defined( __NetBSD__ ) - char *cp; -# endif -# ifdef JS_NEW - unsigned char u; -# else -# if defined( __linux__ ) || TARGET_HOST_SOLARIS - int counter = 0; -# endif -# endif -#endif - - /* Silence gcc, the correct #ifdefs would be too fragile... */ - (void)i; - - /* - * Default values (for no joystick -- each conditional will reset the - * error flag) - */ - joy->error = TRUE; - joy->num_axes = joy->num_buttons = 0; - joy->name[ 0 ] = '\0'; - -#if TARGET_HOST_MACINTOSH - /* XXX FIXME: get joystick name in Mac */ - - err = ISpStartup( ); - - if( err == noErr ) - { -#define ISP_CHECK_ERR(x) if( x != noErr ) { joy->error = GL_TRUE; return; } - - joy->error = GL_TRUE; - - /* initialize the needs structure */ - ISpNeed temp_isp_needs[ isp_num_needs ] = - { - { "\pX-Axis", 128, 0, 0, kISpElementKind_Axis, kISpElementLabel_None, 0, 0, 0, 0 }, - { "\pY-Axis", 128, 0, 0, kISpElementKind_Axis, kISpElementLabel_None, 0, 0, 0, 0 }, - { "\pZ-Axis", 128, 0, 0, kISpElementKind_Axis, kISpElementLabel_None, 0, 0, 0, 0 }, - { "\pR-Axis", 128, 0, 0, kISpElementKind_Axis, kISpElementLabel_None, 0, 0, 0, 0 }, - { "\pAxis 4", 128, 0, 0, kISpElementKind_Axis, kISpElementLabel_None, 0, 0, 0, 0 }, - { "\pAxis 5", 128, 0, 0, kISpElementKind_Axis, kISpElementLabel_None, 0, 0, 0, 0 }, - { "\pAxis 6", 128, 0, 0, kISpElementKind_Axis, kISpElementLabel_None, 0, 0, 0, 0 }, - { "\pAxis 7", 128, 0, 0, kISpElementKind_Axis, kISpElementLabel_None, 0, 0, 0, 0 }, - { "\pAxis 8", 128, 0, 0, kISpElementKind_Axis, kISpElementLabel_None, 0, 0, 0, 0 }, - - { "\pButton 0", 128, 0, 0, kISpElementKind_Button, kISpElementLabel_Btn_Select, 0, 0, 0, 0 }, - { "\pButton 1", 128, 0, 0, kISpElementKind_Button, kISpElementLabel_Btn_Select, 0, 0, 0, 0 }, - { "\pButton 2", 128, 0, 0, kISpElementKind_Button, kISpElementLabel_Btn_Select, 0, 0, 0, 0 }, - { "\pButton 3", 128, 0, 0, kISpElementKind_Button, kISpElementLabel_Btn_Select, 0, 0, 0, 0 }, - { "\pButton 4", 128, 0, 0, kISpElementKind_Button, kISpElementLabel_Btn_Select, 0, 0, 0, 0 }, - { "\pButton 5", 128, 0, 0, kISpElementKind_Button, kISpElementLabel_Btn_Select, 0, 0, 0, 0 }, - { "\pButton 6", 128, 0, 0, kISpElementKind_Button, kISpElementLabel_Btn_Select, 0, 0, 0, 0 }, - { "\pButton 7", 128, 0, 0, kISpElementKind_Button, kISpElementLabel_Btn_Select, 0, 0, 0, 0 }, - { "\pButton 8", 128, 0, 0, kISpElementKind_Button, kISpElementLabel_Btn_Select, 0, 0, 0, 0 }, - { "\pButton 9", 128, 0, 0, kISpElementKind_Button, kISpElementLabel_Btn_Select, 0, 0, 0, 0 }, - { "\pButton 10", 128, 0, 0, kISpElementKind_Button, kISpElementLabel_Btn_Select, 0, 0, 0, 0 }, - { "\pButton 11", 128, 0, 0, kISpElementKind_Button, kISpElementLabel_Btn_Select, 0, 0, 0, 0 }, - { "\pButton 12", 128, 0, 0, kISpElementKind_Button, kISpElementLabel_Btn_Select, 0, 0, 0, 0 }, - { "\pButton 13", 128, 0, 0, kISpElementKind_Button, kISpElementLabel_Btn_Select, 0, 0, 0, 0 }, - { "\pButton 14", 128, 0, 0, kISpElementKind_Button, kISpElementLabel_Btn_Select, 0, 0, 0, 0 }, - { "\pButton 15", 128, 0, 0, kISpElementKind_Button, kISpElementLabel_Btn_Select, 0, 0, 0, 0 }, - { "\pButton 16", 128, 0, 0, kISpElementKind_Button, kISpElementLabel_Btn_Select, 0, 0, 0, 0 }, - { "\pButton 17", 128, 0, 0, kISpElementKind_Button, kISpElementLabel_Btn_Select, 0, 0, 0, 0 }, - { "\pButton 18", 128, 0, 0, kISpElementKind_Button, kISpElementLabel_Btn_Select, 0, 0, 0, 0 }, - { "\pButton 19", 128, 0, 0, kISpElementKind_Button, kISpElementLabel_Btn_Select, 0, 0, 0, 0 }, - { "\pButton 20", 128, 0, 0, kISpElementKind_Button, kISpElementLabel_Btn_Select, 0, 0, 0, 0 }, - { "\pButton 21", 128, 0, 0, kISpElementKind_Button, kISpElementLabel_Btn_Select, 0, 0, 0, 0 }, - { "\pButton 22", 128, 0, 0, kISpElementKind_Button, kISpElementLabel_Btn_Select, 0, 0, 0, 0 }, - { "\pButton 23", 128, 0, 0, kISpElementKind_Button, kISpElementLabel_Btn_Select, 0, 0, 0, 0 }, - { "\pButton 24", 128, 0, 0, kISpElementKind_Button, kISpElementLabel_Btn_Select, 0, 0, 0, 0 }, - { "\pButton 25", 128, 0, 0, kISpElementKind_Button, kISpElementLabel_Btn_Select, 0, 0, 0, 0 }, - { "\pButton 26", 128, 0, 0, kISpElementKind_Button, kISpElementLabel_Btn_Select, 0, 0, 0, 0 }, - { "\pButton 27", 128, 0, 0, kISpElementKind_Button, kISpElementLabel_Btn_Select, 0, 0, 0, 0 }, - { "\pButton 28", 128, 0, 0, kISpElementKind_Button, kISpElementLabel_Btn_Select, 0, 0, 0, 0 }, - { "\pButton 29", 128, 0, 0, kISpElementKind_Button, kISpElementLabel_Btn_Select, 0, 0, 0, 0 }, - { "\pButton 30", 128, 0, 0, kISpElementKind_Button, kISpElementLabel_Btn_Select, 0, 0, 0, 0 }, - { "\pButton 31", 128, 0, 0, kISpElementKind_Button, kISpElementLabel_Btn_Select, 0, 0, 0, 0 }, - }; - - memcpy( joy->isp_needs, temp_isp_needs, sizeof (temp_isp_needs ) ); - - - /* next two calls allow keyboard and mouse to emulate other input - * devices (gamepads, joysticks, etc) - */ - /* - err = ISpDevices_ActivateClass ( kISpDeviceClass_Keyboard ); - ISP_CHECK_ERR(err) - - - err = ISpDevices_ActivateClass ( kISpDeviceClass_Mouse ); - ISP_CHECK_ERR(err) - */ - - err = ISpElement_NewVirtualFromNeeds( joy->isp_num_needs, - joy->isp_needs, joy->isp_elem, - 0 ); - ISP_CHECK_ERR( err ) - - err = ISpInit( joy->isp_num_needs, joy->isp_needs, joy->isp_elem, - 'freeglut', nil, 0, 128, 0 ); - ISP_CHECK_ERR( err ) - - joy->num_buttons = joy->isp_num_needs - joy->isp_num_axis; - joy->num_axes = joy->isp_num_axis; - - for( i = 0; i < joy->num_axes; i++ ) - { - joy->dead_band[ i ] = 0; - joy->saturate [ i ] = 1; - joy->center [ i ] = kISpAxisMiddle; - joy->max [ i ] = kISpAxisMaximum; - joy->min [ i ] = kISpAxisMinimum; - } - - joy->error = GL_FALSE; - } - else - joy->num_buttons = joy->num_axes = 0; -#endif - -#if TARGET_HOST_MAC_OSX - if( joy->id >= numDevices ) - { - fgWarning( "device index out of range in fgJoystickOpen()" ); - return; - } - - /* create device interface */ - rv = IOCreatePlugInInterfaceForService( ioDevices[ joy->id ], - kIOHIDDeviceUserClientTypeID, - kIOCFPlugInInterfaceID, - &plugin, &score ); - - if( rv != kIOReturnSuccess ) - { - fgWarning( "error creating plugin for io device" ); - return; - } - - pluginResult = ( *plugin )->QueryInterface( - plugin, - CFUUIDGetUUIDBytes(kIOHIDDeviceInterfaceID), - &( LPVOID )joy->hidDev - ); - - if( pluginResult != S_OK ) - fgWarning ( "QI-ing IO plugin to HID Device interface failed" ); - - ( *plugin )->Release( plugin ); /* don't leak a ref */ - if( joy->hidDev == NULL ) - return; - - /* store the interface in this instance */ - rv = ( *( joy->hidDev ) )->open( joy->hidDev, 0 ); - if( rv != kIOReturnSuccess ) - { - fgWarning( "error opening device interface"); - return; - } - - props = getCFProperties( ioDevices[ joy->id ] ); - - /* recursively enumerate all the bits */ - CFTypeRef topLevelElement = - CFDictionaryGetValue( props, CFSTR( kIOHIDElementKey ) ); - enumerateElements( topLevelElement ); - - CFRelease( props ); -#endif - -#if TARGET_HOST_MS_WINDOWS && !defined(_WIN32_WCE) - joy->js.dwFlags = JOY_RETURNALL; - joy->js.dwSize = sizeof( joy->js ); - - memset( &joy->jsCaps, 0, sizeof( joy->jsCaps ) ); - - joy->error = - ( joyGetDevCaps( joy->js_id, &joy->jsCaps, sizeof( joy->jsCaps ) ) != - JOYERR_NOERROR ); - - if( joy->jsCaps.wNumAxes == 0 ) - { - joy->num_axes = 0; - joy->error = GL_TRUE; - } - else - { - /* Device name from jsCaps is often "Microsoft PC-joystick driver", - * at least for USB. Try to get the real name from the registry. - */ - if ( ! fghJoystickGetOEMProductName( joy, joy->name, - sizeof( joy->name ) ) ) - { - fgWarning( "JS: Failed to read joystick name from registry" ); - strncpy( joy->name, joy->jsCaps.szPname, sizeof( joy->name ) ); - } - - /* Windows joystick drivers may provide any combination of - * X,Y,Z,R,U,V,POV - not necessarily the first n of these. - */ - if( joy->jsCaps.wCaps & JOYCAPS_HASPOV ) - { - joy->num_axes = _JS_MAX_AXES; - joy->min[ 7 ] = -1.0; joy->max[ 7 ] = 1.0; /* POV Y */ - joy->min[ 6 ] = -1.0; joy->max[ 6 ] = 1.0; /* POV X */ - } - else - joy->num_axes = 6; - - joy->min[ 5 ] = ( float )joy->jsCaps.wVmin; - joy->max[ 5 ] = ( float )joy->jsCaps.wVmax; - joy->min[ 4 ] = ( float )joy->jsCaps.wUmin; - joy->max[ 4 ] = ( float )joy->jsCaps.wUmax; - joy->min[ 3 ] = ( float )joy->jsCaps.wRmin; - joy->max[ 3 ] = ( float )joy->jsCaps.wRmax; - joy->min[ 2 ] = ( float )joy->jsCaps.wZmin; - joy->max[ 2 ] = ( float )joy->jsCaps.wZmax; - joy->min[ 1 ] = ( float )joy->jsCaps.wYmin; - joy->max[ 1 ] = ( float )joy->jsCaps.wYmax; - joy->min[ 0 ] = ( float )joy->jsCaps.wXmin; - joy->max[ 0 ] = ( float )joy->jsCaps.wXmax; - } - - /* Guess all the rest judging on the axes extremals */ - for( i = 0; i < joy->num_axes; i++ ) - { - joy->center [ i ] = ( joy->max[ i ] + joy->min[ i ] ) * 0.5f; - joy->dead_band[ i ] = 0.0f; - joy->saturate [ i ] = 1.0f; - } -#endif - -#if TARGET_HOST_POSIX_X11 -#if defined( __FreeBSD__ ) || defined( __NetBSD__ ) - for( i = 0; i < _JS_MAX_AXES; i++ ) - joy->os->cache_axes[ i ] = 0.0f; - - joy->os->cache_buttons = 0; - - joy->os->fd = open( joy->os->fname, O_RDONLY | O_NONBLOCK); - -#if HAVE_ERRNO - if( joy->os->fd < 0 && errno == EACCES ) - fgWarning ( "%s exists but is not readable by you", joy->os->fname ); -#endif - - joy->error =( joy->os->fd < 0 ); - - if( joy->error ) - return; - - joy->num_axes = 0; - joy->num_buttons = 0; - if( joy->os->is_analog ) - { - FILE *joyfile; - char joyfname[ 1024 ]; - int noargs, in_no_axes; - - float axes [ _JS_MAX_AXES ]; - int buttons[ _JS_MAX_AXES ]; - - joy->num_axes = 2; - joy->num_buttons = 32; - - fghJoystickRawRead( joy, buttons, axes ); - joy->error = axes[ 0 ] < -1000000000.0f; - if( joy->error ) - return; - - snprintf( joyfname, sizeof(joyfname), "%s/.joy%drc", getenv( "HOME" ), joy->id ); - - joyfile = fopen( joyfname, "r" ); - joy->error =( joyfile == NULL ); - if( joy->error ) - return; - - noargs = fscanf( joyfile, "%d%f%f%f%f%f%f", &in_no_axes, - &joy->min[ 0 ], &joy->center[ 0 ], &joy->max[ 0 ], - &joy->min[ 1 ], &joy->center[ 1 ], &joy->max[ 1 ] ); - joy->error = noargs != 7 || in_no_axes != _JS_MAX_AXES; - fclose( joyfile ); - if( joy->error ) - return; - - for( i = 0; i < _JS_MAX_AXES; i++ ) - { - joy->dead_band[ i ] = 0.0f; - joy->saturate [ i ] = 1.0f; - } - - return; /* End of analog code */ - } - -# ifdef HAVE_USB_JS - if( ! fghJoystickInitializeHID( joy->os, &joy->num_axes, - &joy->num_buttons ) ) - { - close( joy->os->fd ); - joy->error = GL_TRUE; - return; - } - - cp = strrchr( joy->os->fname, '/' ); - if( cp ) - { - if( fghJoystickFindUSBdev( &cp[1], joy->name, sizeof( joy->name ) ) == - 0 ) - strcpy( joy->name, &cp[1] ); - } - - if( joy->num_axes > _JS_MAX_AXES ) - joy->num_axes = _JS_MAX_AXES; - - for( i = 0; i < _JS_MAX_AXES; i++ ) - { - /* We really should get this from the HID, but that data seems - * to be quite unreliable for analog-to-USB converters. Punt for - * now. - */ - if( joy->os->axes_usage[ i ] == HUG_HAT_SWITCH ) - { - joy->max [ i ] = 1.0f; - joy->center[ i ] = 0.0f; - joy->min [ i ] = -1.0f; - } - else - { - joy->max [ i ] = 255.0f; - joy->center[ i ] = 127.0f; - joy->min [ i ] = 0.0f; - } - - joy->dead_band[ i ] = 0.0f; - joy->saturate[ i ] = 1.0f; - } -# endif -#endif - -#if defined( __linux__ ) || TARGET_HOST_SOLARIS - /* Default for older Linux systems. */ - joy->num_axes = 2; - joy->num_buttons = 32; - -# ifdef JS_NEW - for( i = 0; i < _JS_MAX_AXES; i++ ) - joy->tmp_axes[ i ] = 0.0f; - - joy->tmp_buttons = 0; -# endif - - joy->fd = open( joy->fname, O_RDONLY ); - - joy->error =( joy->fd < 0 ); - - if( joy->error ) - return; - - /* Set the correct number of axes for the linux driver */ -# ifdef JS_NEW - /* Melchior Franz's fixes for big-endian Linuxes since writing - * to the upper byte of an uninitialized word doesn't work. - * 9 April 2003 - */ - ioctl( joy->fd, JSIOCGAXES, &u ); - joy->num_axes = u; - ioctl( joy->fd, JSIOCGBUTTONS, &u ); - joy->num_buttons = u; - ioctl( joy->fd, JSIOCGNAME( sizeof( joy->name ) ), joy->name ); - fcntl( joy->fd, F_SETFL, O_NONBLOCK ); -# endif - - /* - * The Linux driver seems to return 512 for all axes - * when no stick is present - but there is a chance - * that could happen by accident - so it's gotta happen - * on both axes for at least 100 attempts. - * - * PWO: shouldn't be that done somehow wiser on the kernel level? - */ -# ifndef JS_NEW - counter = 0; - - do - { - fghJoystickRawRead( joy, NULL, joy->center ); - counter++; - } while( !joy->error && - counter < 100 && - joy->center[ 0 ] == 512.0f && - joy->center[ 1 ] == 512.0f ); - - if ( counter >= 100 ) - joy->error = GL_TRUE; -# endif - - for( i = 0; i < _JS_MAX_AXES; i++ ) - { -# ifdef JS_NEW - joy->max [ i ] = 32767.0f; - joy->center[ i ] = 0.0f; - joy->min [ i ] = -32767.0f; -# else - joy->max[ i ] = joy->center[ i ] * 2.0f; - joy->min[ i ] = 0.0f; -# endif - joy->dead_band[ i ] = 0.0f; - joy->saturate [ i ] = 1.0f; - } -#endif -#endif -} - -/* - * This function replaces the constructor method in the JS library. - */ -static void fghJoystickInit( int ident ) -{ - if( ident >= MAX_NUM_JOYSTICKS ) - fgError( "Too large a joystick number: %d", ident ); - - if( fgJoystick[ ident ] ) - fgError( "illegal attempt to initialize joystick device again" ); - - fgJoystick[ ident ] = - ( SFG_Joystick * )calloc( sizeof( SFG_Joystick ), 1 ); - - /* Set defaults */ - fgJoystick[ ident ]->num_axes = fgJoystick[ ident ]->num_buttons = 0; - fgJoystick[ ident ]->error = GL_TRUE; - -#if TARGET_HOST_MACINTOSH - fgJoystick[ ident ]->id = ident; - snprintf( fgJoystick[ ident ]->fname, sizeof(fgJoystick[ ident ]->fname), "/dev/js%d", ident ); /* FIXME */ - fgJoystick[ ident ]->error = GL_FALSE; -#endif - -#if TARGET_HOST_MAC_OSX - fgJoystick[ ident ]->id = ident; - fgJoystick[ ident ]->error = GL_FALSE; - fgJoystick[ ident ]->num_axes = 0; - fgJoystick[ ident ]->num_buttons = 0; - - if( numDevices < 0 ) - { - /* do first-time init (since we can't over-ride jsInit, hmm */ - numDevices = 0; - - mach_port_t masterPort; - IOReturn rv = IOMasterPort( bootstrap_port, &masterPort ); - if( rv != kIOReturnSuccess ) - { - fgWarning( "error getting master Mach port" ); - return; - } - fghJoystickFindDevices( masterPort ); - } - - if ( ident >= numDevices ) - { - fgJoystick[ ident ]->error = GL_TRUE; - return; - } - - /* get the name now too */ - CFDictionaryRef properties = getCFProperties( ioDevices[ ident ] ); - CFTypeRef ref = CFDictionaryGetValue( properties, - CFSTR( kIOHIDProductKey ) ); - if (!ref) - ref = CFDictionaryGetValue(properties, CFSTR( "USB Product Name" ) ); - - if( !ref || - !CFStringGetCString( ( CFStringRef )ref, name, 128, - CFStringGetSystemEncoding( ) ) ) - { - fgWarning( "error getting device name" ); - name[ 0 ] = '\0'; - } -#endif - -#if TARGET_HOST_MS_WINDOWS && !defined(_WIN32_WCE) - switch( ident ) - { - case 0: - fgJoystick[ ident ]->js_id = JOYSTICKID1; - fgJoystick[ ident ]->error = GL_FALSE; - break; - case 1: - fgJoystick[ ident ]->js_id = JOYSTICKID2; - fgJoystick[ ident ]->error = GL_FALSE; - break; - default: - fgJoystick[ ident ]->num_axes = 0; - fgJoystick[ ident ]->error = GL_TRUE; - return; - } -#endif - -#if TARGET_HOST_POSIX_X11 -# if defined( __FreeBSD__ ) || defined( __NetBSD__ ) - fgJoystick[ ident ]->id = ident; - fgJoystick[ ident ]->error = GL_FALSE; - - fgJoystick[ ident ]->os = calloc( 1, sizeof( struct os_specific_s ) ); - memset( fgJoystick[ ident ]->os, 0, sizeof( struct os_specific_s ) ); - if( ident < USB_IDENT_OFFSET ) - fgJoystick[ ident ]->os->is_analog = 1; - if( fgJoystick[ ident ]->os->is_analog ) - snprintf( fgJoystick[ ident ]->os->fname, sizeof(fgJoystick[ ident ]->os->fname), "%s%d", AJSDEV, ident ); - else - snprintf( fgJoystick[ ident ]->os->fname, sizeof(fgJoystick[ ident ]->os->fname), "%s%d", UHIDDEV, - ident - USB_IDENT_OFFSET ); -# elif defined( __linux__ ) - fgJoystick[ ident ]->id = ident; - fgJoystick[ ident ]->error = GL_FALSE; - - snprintf( fgJoystick[ident]->fname, sizeof(fgJoystick[ident]->fname), "/dev/input/js%d", ident ); - - if( access( fgJoystick[ ident ]->fname, F_OK ) != 0 ) - snprintf( fgJoystick[ ident ]->fname, sizeof(fgJoystick[ ident ]->fname), "/dev/js%d", ident ); -# endif -#endif - - fghJoystickOpen( fgJoystick[ ident ] ); -} - -/* - * Try initializing all the joysticks (well, both of them) - */ -void fgInitialiseJoysticks ( void ) -{ - if( !fgState.JoysticksInitialised ) - { - int ident ; - for ( ident = 0; ident < MAX_NUM_JOYSTICKS; ident++ ) - fghJoystickInit( ident ); - - fgState.JoysticksInitialised = GL_TRUE; - } -} - -/* - * - */ -void fgJoystickClose( void ) -{ - int ident ; - for( ident = 0; ident < MAX_NUM_JOYSTICKS; ident++ ) - { - if( fgJoystick[ ident ] ) - { - -#if TARGET_HOST_MACINTOSH - ISpSuspend( ); - ISpStop( ); - ISpShutdown( ); -#endif - -#if TARGET_HOST_MAC_OSX - ( *( fgJoystick[ ident ]->hidDev ) )-> - close( fgJoystick[ ident ]->hidDev ); -#endif - -#if TARGET_HOST_MS_WINDOWS && !defined(_WIN32_WCE) - /* Do nothing special */ -#endif - -#if TARGET_HOST_POSIX_X11 -#if defined( __FreeBSD__ ) || defined( __NetBSD__ ) - if( fgJoystick[ident]->os ) - { - if( ! fgJoystick[ ident ]->error ) - close( fgJoystick[ ident ]->os->fd ); -#ifdef HAVE_USB_JS - if( fgJoystick[ ident ]->os->hids ) - free (fgJoystick[ ident ]->os->hids); - if( fgJoystick[ ident ]->os->hid_data_buf ) - free( fgJoystick[ ident ]->os->hid_data_buf ); -#endif - free( fgJoystick[ident]->os ); - } -#endif - - if( ! fgJoystick[ident]->error ) - close( fgJoystick[ ident ]->fd ); -#endif - - free( fgJoystick[ ident ] ); - fgJoystick[ ident ] = NULL; - /* show joystick has been deinitialized */ - } - } -} - -/* - * Polls the joystick and executes the joystick callback hooked to the - * window specified in the function's parameter: - */ -void fgJoystickPollWindow( SFG_Window* window ) -{ - float axes[ _JS_MAX_AXES ]; - int buttons; - int ident; - - freeglut_return_if_fail( window ); - freeglut_return_if_fail( FETCH_WCB( *window, Joystick ) ); - - for( ident = 0; ident < MAX_NUM_JOYSTICKS; ident++ ) - { - if( fgJoystick[ident] ) - { - fghJoystickRead( fgJoystick[ident], &buttons, axes ); - - if( !fgJoystick[ident]->error ) - INVOKE_WCB( *window, Joystick, - ( buttons, - (int) ( axes[ 0 ] * 1000.0f ), - (int) ( axes[ 1 ] * 1000.0f ), - (int) ( axes[ 2 ] * 1000.0f ) ) - ); - } - } -} - -/* - * Implementation for glutDeviceGet(GLUT_HAS_JOYSTICK) - */ -int fgJoystickDetect( void ) -{ - int ident; - - fgInitialiseJoysticks (); - - if ( !fgState.JoysticksInitialised ) - return 0; - - for( ident=0; identerror ) - return 1; - - return 0; -} - -/* - * Joystick information functions - */ -int glutJoystickGetNumAxes( int ident ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutJoystickGetNumAxes" ); - return fgJoystick[ ident ]->num_axes; -} -int glutJoystickGetNumButtons( int ident ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutJoystickGetNumButtons" ); - return fgJoystick[ ident ]->num_buttons; -} -int glutJoystickNotWorking( int ident ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutJoystickNotWorking" ); - return fgJoystick[ ident ]->error; -} - -float glutJoystickGetDeadBand( int ident, int axis ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutJoystickGetDeadBand" ); - return fgJoystick[ ident ]->dead_band [ axis ]; -} -void glutJoystickSetDeadBand( int ident, int axis, float db ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutJoystickSetDeadBand" ); - fgJoystick[ ident ]->dead_band[ axis ] = db; -} - -float glutJoystickGetSaturation( int ident, int axis ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutJoystickGetSaturation" ); - return fgJoystick[ ident ]->saturate[ axis ]; -} -void glutJoystickSetSaturation( int ident, int axis, float st ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutJoystickSetSaturation" ); - fgJoystick[ ident ]->saturate [ axis ] = st; -} - -void glutJoystickSetMinRange( int ident, float *axes ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutJoystickSetMinRange" ); - memcpy( fgJoystick[ ident ]->min, axes, - fgJoystick[ ident ]->num_axes * sizeof( float ) ); -} -void glutJoystickSetMaxRange( int ident, float *axes ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutJoystickSetMaxRange" ); - memcpy( fgJoystick[ ident ]->max, axes, - fgJoystick[ ident ]->num_axes * sizeof( float ) ); -} -void glutJoystickSetCenter( int ident, float *axes ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutJoystickSetCenter" ); - memcpy( fgJoystick[ ident ]->center, axes, - fgJoystick[ ident ]->num_axes * sizeof( float ) ); -} - -void glutJoystickGetMinRange( int ident, float *axes ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutJoystickGetMinRange" ); - memcpy( axes, fgJoystick[ ident ]->min, - fgJoystick[ ident ]->num_axes * sizeof( float ) ); -} -void glutJoystickGetMaxRange( int ident, float *axes ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutJoystickGetMaxRange" ); - memcpy( axes, fgJoystick[ ident ]->max, - fgJoystick[ ident ]->num_axes * sizeof( float ) ); -} -void glutJoystickGetCenter( int ident, float *axes ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutJoystickGetCenter" ); - memcpy( axes, fgJoystick[ ident ]->center, - fgJoystick[ ident ]->num_axes * sizeof( float ) ); -} - -/*** END OF FILE ***/ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_main.c b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_main.c deleted file mode 100644 index 47043a0..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_main.c +++ /dev/null @@ -1,2296 +0,0 @@ -/* - * freeglut_main.c - * - * The windows message processing methods. - * - * Copyright (c) 1999-2000 Pawel W. Olszta. All Rights Reserved. - * Written by Pawel W. Olszta, - * Creation date: Fri Dec 3 1999 - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included - * in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - * PAWEL W. OLSZTA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER - * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - */ - -#include "freeglut.h" -#include "freeglut_internal.h" -#if HAVE_ERRNO -# include -#endif -#include -#if HAVE_VPRINTF -# define VFPRINTF(s,f,a) vfprintf((s),(f),(a)) -#elif HAVE_DOPRNT -# define VFPRINTF(s,f,a) _doprnt((f),(a),(s)) -#else -# define VFPRINTF(s,f,a) -#endif - -#ifdef _WIN32_WCE - -typedef struct GXDisplayProperties GXDisplayProperties; -typedef struct GXKeyList GXKeyList; -#include - -typedef struct GXKeyList (*GXGETDEFAULTKEYS)(int); -typedef int (*GXOPENINPUT)(); - -GXGETDEFAULTKEYS GXGetDefaultKeys_ = NULL; -GXOPENINPUT GXOpenInput_ = NULL; - -struct GXKeyList gxKeyList; - -#endif /* _WIN32_WCE */ - -/* - * Try to get the maximum value allowed for ints, falling back to the minimum - * guaranteed by ISO C99 if there is no suitable header. - */ -#if HAVE_LIMITS_H -# include -#endif -#ifndef INT_MAX -# define INT_MAX 32767 -#endif - -#ifndef MIN -# define MIN(a,b) (((a)<(b)) ? (a) : (b)) -#endif - - -/* - * TODO BEFORE THE STABLE RELEASE: - * - * There are some issues concerning window redrawing under X11, and maybe - * some events are not handled. The Win32 version lacks some more features, - * but seems acceptable for not demanding purposes. - * - * Need to investigate why the X11 version breaks out with an error when - * closing a window (using the window manager, not glutDestroyWindow)... - */ - -/* -- PRIVATE FUNCTIONS ---------------------------------------------------- */ - -/* - * Handle a window configuration change. When no reshape - * callback is hooked, the viewport size is updated to - * match the new window size. - */ -static void fghReshapeWindow ( SFG_Window *window, int width, int height ) -{ - SFG_Window *current_window = fgStructure.CurrentWindow; - - freeglut_return_if_fail( window != NULL ); - - -#if TARGET_HOST_POSIX_X11 - - XResizeWindow( fgDisplay.Display, window->Window.Handle, - width, height ); - XFlush( fgDisplay.Display ); /* XXX Shouldn't need this */ - -#elif TARGET_HOST_MS_WINDOWS && !defined(_WIN32_WCE) - { - RECT winRect; - int x, y, w, h; - - /* - * For windowed mode, get the current position of the - * window and resize taking the size of the frame - * decorations into account. - */ - - /* "GetWindowRect" returns the pixel coordinates of the outside of the window */ - GetWindowRect( window->Window.Handle, &winRect ); - x = winRect.left; - y = winRect.top; - w = width; - h = height; - - if ( window->Parent == NULL ) - { - if ( ! window->IsMenu && (window != fgStructure.GameModeWindow) ) - { - w += GetSystemMetrics( SM_CXSIZEFRAME ) * 2; - h += GetSystemMetrics( SM_CYSIZEFRAME ) * 2 + - GetSystemMetrics( SM_CYCAPTION ); - } - } - else - { - RECT parentRect; - GetWindowRect( window->Parent->Window.Handle, &parentRect ); - x -= parentRect.left + GetSystemMetrics( SM_CXSIZEFRAME ) * 2; - y -= parentRect.top + GetSystemMetrics( SM_CYSIZEFRAME ) * 2 + - GetSystemMetrics( SM_CYCAPTION ); - } - - /* - * SWP_NOACTIVATE Do not activate the window - * SWP_NOOWNERZORDER Do not change position in z-order - * SWP_NOSENDCHANGING Supress WM_WINDOWPOSCHANGING message - * SWP_NOZORDER Retains the current Z order (ignore 2nd param) - */ - - SetWindowPos( window->Window.Handle, - HWND_TOP, - x, y, w, h, - SWP_NOACTIVATE | SWP_NOOWNERZORDER | SWP_NOSENDCHANGING | - SWP_NOZORDER - ); - } -#endif - - /* - * XXX Should update {window->State.OldWidth, window->State.OldHeight} - * XXX to keep in lockstep with POSIX_X11 code. - */ - if( FETCH_WCB( *window, Reshape ) ) - INVOKE_WCB( *window, Reshape, ( width, height ) ); - else - { - fgSetWindow( window ); - glViewport( 0, 0, width, height ); - } - - /* - * Force a window redraw. In Windows at least this is only a partial - * solution: if the window is increasing in size in either dimension, - * the already-drawn part does not get drawn again and things look funny. - * But without this we get this bad behaviour whenever we resize the - * window. - */ - window->State.Redisplay = GL_TRUE; - - if( window->IsMenu ) - fgSetWindow( current_window ); -} - -/* - * Calls a window's redraw method. This is used when - * a redraw is forced by the incoming window messages. - */ -static void fghRedrawWindow ( SFG_Window *window ) -{ - SFG_Window *current_window = fgStructure.CurrentWindow; - - freeglut_return_if_fail( window ); - freeglut_return_if_fail( FETCH_WCB ( *window, Display ) ); - - window->State.Redisplay = GL_FALSE; - - freeglut_return_if_fail( window->State.Visible ); - - fgSetWindow( window ); - - if( window->State.NeedToResize ) - { - fghReshapeWindow( - window, - window->State.Width, - window->State.Height - ); - - window->State.NeedToResize = GL_FALSE; - } - - INVOKE_WCB( *window, Display, ( ) ); - - fgSetWindow( current_window ); -} - -/* - * A static helper function to execute display callback for a window - */ -static void fghcbDisplayWindow( SFG_Window *window, - SFG_Enumerator *enumerator ) -{ - if( window->State.Redisplay && - window->State.Visible ) - { - window->State.Redisplay = GL_FALSE; - -#if TARGET_HOST_POSIX_X11 - fghRedrawWindow ( window ) ; -#elif TARGET_HOST_MS_WINDOWS - RedrawWindow( - window->Window.Handle, NULL, NULL, - RDW_NOERASE | RDW_INTERNALPAINT | RDW_INVALIDATE | RDW_UPDATENOW - ); -#endif - } - - fgEnumSubWindows( window, fghcbDisplayWindow, enumerator ); -} - -/* - * Make all windows perform a display call - */ -static void fghDisplayAll( void ) -{ - SFG_Enumerator enumerator; - - enumerator.found = GL_FALSE; - enumerator.data = NULL; - - fgEnumWindows( fghcbDisplayWindow, &enumerator ); -} - -/* - * Window enumerator callback to check for the joystick polling code - */ -static void fghcbCheckJoystickPolls( SFG_Window *window, - SFG_Enumerator *enumerator ) -{ - long int checkTime = fgElapsedTime( ); - - if( window->State.JoystickLastPoll + window->State.JoystickPollRate <= - checkTime ) - { -#if !defined(_WIN32_WCE) - fgJoystickPollWindow( window ); -#endif /* !defined(_WIN32_WCE) */ - window->State.JoystickLastPoll = checkTime; - } - - fgEnumSubWindows( window, fghcbCheckJoystickPolls, enumerator ); -} - -/* - * Check all windows for joystick polling - */ -static void fghCheckJoystickPolls( void ) -{ - SFG_Enumerator enumerator; - - enumerator.found = GL_FALSE; - enumerator.data = NULL; - - fgEnumWindows( fghcbCheckJoystickPolls, &enumerator ); -} - -/* - * Check the global timers - */ -static void fghCheckTimers( void ) -{ - long checkTime = fgElapsedTime( ); - - while( fgState.Timers.First ) - { - SFG_Timer *timer = fgState.Timers.First; - - if( timer->TriggerTime > checkTime ) - break; - - fgListRemove( &fgState.Timers, &timer->Node ); - fgListAppend( &fgState.FreeTimers, &timer->Node ); - - timer->Callback( timer->ID ); - } -} - - -/* Platform-dependent time in milliseconds, as an unsigned 32-bit integer. - * This value wraps every 49.7 days, but integer overflows cancel - * when subtracting an initial start time, unless the total time exceeds - * 32-bit, where the GLUT API return value is also overflowed. - */ -unsigned long fgSystemTime(void) { -#if TARGET_HOST_SOLARIS || HAVE_GETTIMEOFDAY - struct timeval now; - gettimeofday( &now, NULL ); - return now.tv_usec/1000 + now.tv_sec*1000; -#elif TARGET_HOST_MS_WINDOWS -# if defined(_WIN32_WCE) - return GetTickCount(); -# else - return timeGetTime(); -# endif -#endif -} - -/* - * Elapsed Time - */ -long fgElapsedTime( void ) -{ - return (long) (fgSystemTime() - fgState.Time); -} - -/* - * Error Messages. - */ -void fgError( const char *fmt, ... ) -{ - va_list ap; - - va_start( ap, fmt ); - - fprintf( stderr, "freeglut "); - if( fgState.ProgramName ) - fprintf( stderr, "(%s): ", fgState.ProgramName ); - VFPRINTF( stderr, fmt, ap ); - fprintf( stderr, "\n" ); - - va_end( ap ); - - if ( fgState.Initialised ) - fgDeinitialize (); - - exit( 1 ); -} - -void fgWarning( const char *fmt, ... ) -{ - va_list ap; - - va_start( ap, fmt ); - - fprintf( stderr, "freeglut "); - if( fgState.ProgramName ) - fprintf( stderr, "(%s): ", fgState.ProgramName ); - VFPRINTF( stderr, fmt, ap ); - fprintf( stderr, "\n" ); - - va_end( ap ); -} - -/* - * Indicates whether Joystick events are being used by ANY window. - * - * The current mechanism is to walk all of the windows and ask if - * there is a joystick callback. We have a short-circuit early - * return if we find any joystick handler registered. - * - * The real way to do this is to make use of the glutTimer() API - * to more cleanly re-implement the joystick API. Then, this code - * and all other "joystick timer" code can be yanked. - * - */ -static void fghCheckJoystickCallback( SFG_Window* w, SFG_Enumerator* e) -{ - if( FETCH_WCB( *w, Joystick ) ) - { - e->found = GL_TRUE; - e->data = w; - } - fgEnumSubWindows( w, fghCheckJoystickCallback, e ); -} -static int fghHaveJoystick( void ) -{ - SFG_Enumerator enumerator; - - enumerator.found = GL_FALSE; - enumerator.data = NULL; - fgEnumWindows( fghCheckJoystickCallback, &enumerator ); - return !!enumerator.data; -} -static void fghHavePendingRedisplaysCallback( SFG_Window* w, SFG_Enumerator* e) -{ - if( w->State.Redisplay && w->State.Visible ) - { - e->found = GL_TRUE; - e->data = w; - } - fgEnumSubWindows( w, fghHavePendingRedisplaysCallback, e ); -} -static int fghHavePendingRedisplays (void) -{ - SFG_Enumerator enumerator; - - enumerator.found = GL_FALSE; - enumerator.data = NULL; - fgEnumWindows( fghHavePendingRedisplaysCallback, &enumerator ); - return !!enumerator.data; -} -/* - * Returns the number of GLUT ticks (milliseconds) till the next timer event. - */ -static long fghNextTimer( void ) -{ - long ret = INT_MAX; - SFG_Timer *timer = fgState.Timers.First; - - if( timer ) - ret = timer->TriggerTime - fgElapsedTime(); - if( ret < 0 ) - ret = 0; - - return ret; -} -/* - * Does the magic required to relinquish the CPU until something interesting - * happens. - */ -static void fghSleepForEvents( void ) -{ - long msec; - - if( fgState.IdleCallback || fghHavePendingRedisplays( ) ) - return; - - msec = fghNextTimer( ); - /* XXX Use GLUT timers for joysticks... */ - /* XXX Dumb; forces granularity to .01sec */ - if( fghHaveJoystick( ) && ( msec > 10 ) ) - msec = 10; - -#if TARGET_HOST_POSIX_X11 - /* - * Possibly due to aggressive use of XFlush() and friends, - * it is possible to have our socket drained but still have - * unprocessed events. (Or, this may just be normal with - * X, anyway?) We do non-trivial processing of X events - * after the event-reading loop, in any case, so we - * need to allow that we may have an empty socket but non- - * empty event queue. - */ - if( ! XPending( fgDisplay.Display ) ) - { - fd_set fdset; - int err; - int socket; - struct timeval wait; - - socket = ConnectionNumber( fgDisplay.Display ); - FD_ZERO( &fdset ); - FD_SET( socket, &fdset ); - wait.tv_sec = msec / 1000; - wait.tv_usec = (msec % 1000) * 1000; - err = select( socket+1, &fdset, NULL, NULL, &wait ); - -#if HAVE_ERRNO - if( ( -1 == err ) && ( errno != EINTR ) ) - fgWarning ( "freeglut select() error: %d", errno ); -#endif - } -#elif TARGET_HOST_MS_WINDOWS - MsgWaitForMultipleObjects( 0, NULL, FALSE, msec, QS_ALLINPUT ); -#endif -} - -#if TARGET_HOST_POSIX_X11 -/* - * Returns GLUT modifier mask for the state field of an X11 event. - */ -static int fghGetXModifiers( int state ) -{ - int ret = 0; - - if( state & ( ShiftMask | LockMask ) ) - ret |= GLUT_ACTIVE_SHIFT; - if( state & ControlMask ) - ret |= GLUT_ACTIVE_CTRL; - if( state & Mod1Mask ) - ret |= GLUT_ACTIVE_ALT; - - return ret; -} -#endif - - -#if TARGET_HOST_POSIX_X11 && _DEBUG - -static const char* fghTypeToString( int type ) -{ - switch( type ) { - case KeyPress: return "KeyPress"; - case KeyRelease: return "KeyRelease"; - case ButtonPress: return "ButtonPress"; - case ButtonRelease: return "ButtonRelease"; - case MotionNotify: return "MotionNotify"; - case EnterNotify: return "EnterNotify"; - case LeaveNotify: return "LeaveNotify"; - case FocusIn: return "FocusIn"; - case FocusOut: return "FocusOut"; - case KeymapNotify: return "KeymapNotify"; - case Expose: return "Expose"; - case GraphicsExpose: return "GraphicsExpose"; - case NoExpose: return "NoExpose"; - case VisibilityNotify: return "VisibilityNotify"; - case CreateNotify: return "CreateNotify"; - case DestroyNotify: return "DestroyNotify"; - case UnmapNotify: return "UnmapNotify"; - case MapNotify: return "MapNotify"; - case MapRequest: return "MapRequest"; - case ReparentNotify: return "ReparentNotify"; - case ConfigureNotify: return "ConfigureNotify"; - case ConfigureRequest: return "ConfigureRequest"; - case GravityNotify: return "GravityNotify"; - case ResizeRequest: return "ResizeRequest"; - case CirculateNotify: return "CirculateNotify"; - case CirculateRequest: return "CirculateRequest"; - case PropertyNotify: return "PropertyNotify"; - case SelectionClear: return "SelectionClear"; - case SelectionRequest: return "SelectionRequest"; - case SelectionNotify: return "SelectionNotify"; - case ColormapNotify: return "ColormapNotify"; - case ClientMessage: return "ClientMessage"; - case MappingNotify: return "MappingNotify"; - default: return "UNKNOWN"; - } -} - -static const char* fghBoolToString( Bool b ) -{ - return b == False ? "False" : "True"; -} - -static const char* fghNotifyHintToString( char is_hint ) -{ - switch( is_hint ) { - case NotifyNormal: return "NotifyNormal"; - case NotifyHint: return "NotifyHint"; - default: return "UNKNOWN"; - } -} - -static const char* fghNotifyModeToString( int mode ) -{ - switch( mode ) { - case NotifyNormal: return "NotifyNormal"; - case NotifyGrab: return "NotifyGrab"; - case NotifyUngrab: return "NotifyUngrab"; - case NotifyWhileGrabbed: return "NotifyWhileGrabbed"; - default: return "UNKNOWN"; - } -} - -static const char* fghNotifyDetailToString( int detail ) -{ - switch( detail ) { - case NotifyAncestor: return "NotifyAncestor"; - case NotifyVirtual: return "NotifyVirtual"; - case NotifyInferior: return "NotifyInferior"; - case NotifyNonlinear: return "NotifyNonlinear"; - case NotifyNonlinearVirtual: return "NotifyNonlinearVirtual"; - case NotifyPointer: return "NotifyPointer"; - case NotifyPointerRoot: return "NotifyPointerRoot"; - case NotifyDetailNone: return "NotifyDetailNone"; - default: return "UNKNOWN"; - } -} - -static const char* fghVisibilityToString( int state ) { - switch( state ) { - case VisibilityUnobscured: return "VisibilityUnobscured"; - case VisibilityPartiallyObscured: return "VisibilityPartiallyObscured"; - case VisibilityFullyObscured: return "VisibilityFullyObscured"; - default: return "UNKNOWN"; - } -} - -static const char* fghConfigureDetailToString( int detail ) -{ - switch( detail ) { - case Above: return "Above"; - case Below: return "Below"; - case TopIf: return "TopIf"; - case BottomIf: return "BottomIf"; - case Opposite: return "Opposite"; - default: return "UNKNOWN"; - } -} - -static const char* fghPlaceToString( int place ) -{ - switch( place ) { - case PlaceOnTop: return "PlaceOnTop"; - case PlaceOnBottom: return "PlaceOnBottom"; - default: return "UNKNOWN"; - } -} - -static const char* fghMappingRequestToString( int request ) -{ - switch( request ) { - case MappingModifier: return "MappingModifier"; - case MappingKeyboard: return "MappingKeyboard"; - case MappingPointer: return "MappingPointer"; - default: return "UNKNOWN"; - } -} - -static const char* fghPropertyStateToString( int state ) -{ - switch( state ) { - case PropertyNewValue: return "PropertyNewValue"; - case PropertyDelete: return "PropertyDelete"; - default: return "UNKNOWN"; - } -} - -static const char* fghColormapStateToString( int state ) -{ - switch( state ) { - case ColormapUninstalled: return "ColormapUninstalled"; - case ColormapInstalled: return "ColormapInstalled"; - default: return "UNKNOWN"; - } -} - -static void fghPrintEvent( XEvent *event ) -{ - switch( event->type ) { - - case KeyPress: - case KeyRelease: { - XKeyEvent *e = &event->xkey; - fgWarning( "%s: window=0x%x, root=0x%x, subwindow=0x%x, time=%lu, " - "(x,y)=(%d,%d), (x_root,y_root)=(%d,%d), state=0x%x, " - "keycode=%u, same_screen=%s", fghTypeToString( e->type ), - e->window, e->root, e->subwindow, (unsigned long)e->time, - e->x, e->y, e->x_root, e->y_root, e->state, e->keycode, - fghBoolToString( e->same_screen ) ); - break; - } - - case ButtonPress: - case ButtonRelease: { - XButtonEvent *e = &event->xbutton; - fgWarning( "%s: window=0x%x, root=0x%x, subwindow=0x%x, time=%lu, " - "(x,y)=(%d,%d), (x_root,y_root)=(%d,%d), state=0x%x, " - "button=%u, same_screen=%d", fghTypeToString( e->type ), - e->window, e->root, e->subwindow, (unsigned long)e->time, - e->x, e->y, e->x_root, e->y_root, e->state, e->button, - fghBoolToString( e->same_screen ) ); - break; - } - - case MotionNotify: { - XMotionEvent *e = &event->xmotion; - fgWarning( "%s: window=0x%x, root=0x%x, subwindow=0x%x, time=%lu, " - "(x,y)=(%d,%d), (x_root,y_root)=(%d,%d), state=0x%x, " - "is_hint=%s, same_screen=%d", fghTypeToString( e->type ), - e->window, e->root, e->subwindow, (unsigned long)e->time, - e->x, e->y, e->x_root, e->y_root, e->state, - fghNotifyHintToString( e->is_hint ), - fghBoolToString( e->same_screen ) ); - break; - } - - case EnterNotify: - case LeaveNotify: { - XCrossingEvent *e = &event->xcrossing; - fgWarning( "%s: window=0x%x, root=0x%x, subwindow=0x%x, time=%lu, " - "(x,y)=(%d,%d), mode=%s, detail=%s, same_screen=%d, " - "focus=%d, state=0x%x", fghTypeToString( e->type ), - e->window, e->root, e->subwindow, (unsigned long)e->time, - e->x, e->y, fghNotifyModeToString( e->mode ), - fghNotifyDetailToString( e->detail ), (int)e->same_screen, - (int)e->focus, e->state ); - break; - } - - case FocusIn: - case FocusOut: { - XFocusChangeEvent *e = &event->xfocus; - fgWarning( "%s: window=0x%x, mode=%s, detail=%s", - fghTypeToString( e->type ), e->window, - fghNotifyModeToString( e->mode ), - fghNotifyDetailToString( e->detail ) ); - break; - } - - case KeymapNotify: { - XKeymapEvent *e = &event->xkeymap; - char buf[32 * 2 + 1]; - int i; - for ( i = 0; i < 32; i++ ) { - snprintf( &buf[ i * 2 ], sizeof( buf ) - i * 2, - "%02x", e->key_vector[ i ] ); - } - buf[ i ] = '\0'; - fgWarning( "%s: window=0x%x, %s", fghTypeToString( e->type ), e->window, - buf ); - break; - } - - case Expose: { - XExposeEvent *e = &event->xexpose; - fgWarning( "%s: window=0x%x, (x,y)=(%d,%d), (width,height)=(%d,%d), " - "count=%d", fghTypeToString( e->type ), e->window, e->x, - e->y, e->width, e->height, e->count ); - break; - } - - case GraphicsExpose: { - XGraphicsExposeEvent *e = &event->xgraphicsexpose; - fgWarning( "%s: drawable=0x%x, (x,y)=(%d,%d), (width,height)=(%d,%d), " - "count=%d, (major_code,minor_code)=(%d,%d)", - fghTypeToString( e->type ), e->drawable, e->x, e->y, - e->width, e->height, e->count, e->major_code, - e->minor_code ); - break; - } - - case NoExpose: { - XNoExposeEvent *e = &event->xnoexpose; - fgWarning( "%s: drawable=0x%x, (major_code,minor_code)=(%d,%d)", - fghTypeToString( e->type ), e->drawable, e->major_code, - e->minor_code ); - break; - } - - case VisibilityNotify: { - XVisibilityEvent *e = &event->xvisibility; - fgWarning( "%s: window=0x%x, state=%s", fghTypeToString( e->type ), - e->window, fghVisibilityToString( e->state) ); - break; - } - - case CreateNotify: { - XCreateWindowEvent *e = &event->xcreatewindow; - fgWarning( "%s: (x,y)=(%d,%d), (width,height)=(%d,%d), border_width=%d, " - "window=0x%x, override_redirect=%s", - fghTypeToString( e->type ), e->x, e->y, e->width, e->height, - e->border_width, e->window, - fghBoolToString( e->override_redirect ) ); - break; - } - - case DestroyNotify: { - XDestroyWindowEvent *e = &event->xdestroywindow; - fgWarning( "%s: event=0x%x, window=0x%x", - fghTypeToString( e->type ), e->event, e->window ); - break; - } - - case UnmapNotify: { - XUnmapEvent *e = &event->xunmap; - fgWarning( "%s: event=0x%x, window=0x%x, from_configure=%s", - fghTypeToString( e->type ), e->event, e->window, - fghBoolToString( e->from_configure ) ); - break; - } - - case MapNotify: { - XMapEvent *e = &event->xmap; - fgWarning( "%s: event=0x%x, window=0x%x, override_redirect=%s", - fghTypeToString( e->type ), e->event, e->window, - fghBoolToString( e->override_redirect ) ); - break; - } - - case MapRequest: { - XMapRequestEvent *e = &event->xmaprequest; - fgWarning( "%s: parent=0x%x, window=0x%x", - fghTypeToString( event->type ), e->parent, e->window ); - break; - } - - case ReparentNotify: { - XReparentEvent *e = &event->xreparent; - fgWarning( "%s: event=0x%x, window=0x%x, parent=0x%x, (x,y)=(%d,%d), " - "override_redirect=%s", fghTypeToString( e->type ), - e->event, e->window, e->parent, e->x, e->y, - fghBoolToString( e->override_redirect ) ); - break; - } - - case ConfigureNotify: { - XConfigureEvent *e = &event->xconfigure; - fgWarning( "%s: event=0x%x, window=0x%x, (x,y)=(%d,%d), " - "(width,height)=(%d,%d), border_width=%d, above=0x%x, " - "override_redirect=%s", fghTypeToString( e->type ), e->event, - e->window, e->x, e->y, e->width, e->height, e->border_width, - e->above, fghBoolToString( e->override_redirect ) ); - break; - } - - case ConfigureRequest: { - XConfigureRequestEvent *e = &event->xconfigurerequest; - fgWarning( "%s: parent=0x%x, window=0x%x, (x,y)=(%d,%d), " - "(width,height)=(%d,%d), border_width=%d, above=0x%x, " - "detail=%s, value_mask=%lx", fghTypeToString( e->type ), - e->parent, e->window, e->x, e->y, e->width, e->height, - e->border_width, e->above, - fghConfigureDetailToString( e->detail ), e->value_mask ); - break; - } - - case GravityNotify: { - XGravityEvent *e = &event->xgravity; - fgWarning( "%s: event=0x%x, window=0x%x, (x,y)=(%d,%d)", - fghTypeToString( e->type ), e->event, e->window, e->x, e->y ); - break; - } - - case ResizeRequest: { - XResizeRequestEvent *e = &event->xresizerequest; - fgWarning( "%s: window=0x%x, (width,height)=(%d,%d)", - fghTypeToString( e->type ), e->window, e->width, e->height ); - break; - } - - case CirculateNotify: { - XCirculateEvent *e = &event->xcirculate; - fgWarning( "%s: event=0x%x, window=0x%x, place=%s", - fghTypeToString( e->type ), e->event, e->window, - fghPlaceToString( e->place ) ); - break; - } - - case CirculateRequest: { - XCirculateRequestEvent *e = &event->xcirculaterequest; - fgWarning( "%s: parent=0x%x, window=0x%x, place=%s", - fghTypeToString( e->type ), e->parent, e->window, - fghPlaceToString( e->place ) ); - break; - } - - case PropertyNotify: { - XPropertyEvent *e = &event->xproperty; - fgWarning( "%s: window=0x%x, atom=%lu, time=%lu, state=%s", - fghTypeToString( e->type ), e->window, - (unsigned long)e->atom, (unsigned long)e->time, - fghPropertyStateToString( e->state ) ); - break; - } - - case SelectionClear: { - XSelectionClearEvent *e = &event->xselectionclear; - fgWarning( "%s: window=0x%x, selection=%lu, time=%lu", - fghTypeToString( e->type ), e->window, - (unsigned long)e->selection, (unsigned long)e->time ); - break; - } - - case SelectionRequest: { - XSelectionRequestEvent *e = &event->xselectionrequest; - fgWarning( "%s: owner=0x%x, requestor=0x%x, selection=0x%x, " - "target=0x%x, property=%lu, time=%lu", - fghTypeToString( e->type ), e->owner, e->requestor, - (unsigned long)e->selection, (unsigned long)e->target, - (unsigned long)e->property, (unsigned long)e->time ); - break; - } - - case SelectionNotify: { - XSelectionEvent *e = &event->xselection; - fgWarning( "%s: requestor=0x%x, selection=0x%x, target=0x%x, " - "property=%lu, time=%lu", fghTypeToString( e->type ), - e->requestor, (unsigned long)e->selection, - (unsigned long)e->target, (unsigned long)e->property, - (unsigned long)e->time ); - break; - } - - case ColormapNotify: { - XColormapEvent *e = &event->xcolormap; - fgWarning( "%s: window=0x%x, colormap=%lu, new=%s, state=%s", - fghTypeToString( e->type ), e->window, - (unsigned long)e->colormap, fghBoolToString( e->new ), - fghColormapStateToString( e->state ) ); - break; - } - - case ClientMessage: { - XClientMessageEvent *e = &event->xclient; - char buf[ 61 ]; - char* p = buf; - char* end = buf + sizeof( buf ); - int i; - switch( e->format ) { - case 8: - for ( i = 0; i < 20; i++, p += 3 ) { - snprintf( p, end - p, " %02x", e->data.b[ i ] ); - } - break; - case 16: - for ( i = 0; i < 10; i++, p += 5 ) { - snprintf( p, end - p, " %04x", e->data.s[ i ] ); - } - break; - case 32: - for ( i = 0; i < 5; i++, p += 9 ) { - snprintf( p, end - p, " %08lx", e->data.l[ i ] ); - } - break; - } - *p = '\0'; - fgWarning( "%s: window=0x%x, message_type=%lu, format=%d, data=(%s )", - fghTypeToString( e->type ), e->window, - (unsigned long)e->message_type, e->format, buf ); - break; - } - - case MappingNotify: { - XMappingEvent *e = &event->xmapping; - fgWarning( "%s: window=0x%x, request=%s, first_keycode=%d, count=%d", - fghTypeToString( e->type ), e->window, - fghMappingRequestToString( e->request ), e->first_keycode, - e->count ); - break; - } - - default: { - fgWarning( "%s", fghTypeToString( event->type ) ); - break; - } - } -} - -#endif - -/* -- INTERFACE FUNCTIONS -------------------------------------------------- */ - -/* - * Executes a single iteration in the freeglut processing loop. - */ -void FGAPIENTRY glutMainLoopEvent( void ) -{ -#if TARGET_HOST_POSIX_X11 - SFG_Window* window; - XEvent event; - - /* This code was repeated constantly, so here it goes into a definition: */ -#define GETWINDOW(a) \ - window = fgWindowByHandle( event.a.window ); \ - if( window == NULL ) \ - break; - -#define GETMOUSE(a) \ - window->State.MouseX = event.a.x; \ - window->State.MouseY = event.a.y; - - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutMainLoopEvent" ); - - while( XPending( fgDisplay.Display ) ) - { - XNextEvent( fgDisplay.Display, &event ); -#if _DEBUG - fghPrintEvent( &event ); -#endif - - switch( event.type ) - { - case ClientMessage: - if(fgIsSpaceballXEvent(&event)) { - fgSpaceballHandleXEvent(&event); - break; - } - /* Destroy the window when the WM_DELETE_WINDOW message arrives */ - if( (Atom) event.xclient.data.l[ 0 ] == fgDisplay.DeleteWindow ) - { - GETWINDOW( xclient ); - - fgDestroyWindow ( window ); - - if( fgState.ActionOnWindowClose == GLUT_ACTION_EXIT ) - { - fgDeinitialize( ); - exit( 0 ); - } - else if( fgState.ActionOnWindowClose == GLUT_ACTION_GLUTMAINLOOP_RETURNS ) - fgState.ExecState = GLUT_EXEC_STATE_STOP; - - return; - } - break; - - /* - * CreateNotify causes a configure-event so that sub-windows are - * handled compatibly with GLUT. Otherwise, your sub-windows - * (in freeglut only) will not get an initial reshape event, - * which can break things. - * - * GLUT presumably does this because it generally tries to treat - * sub-windows the same as windows. - */ - case CreateNotify: - case ConfigureNotify: - { - int width, height; - if( event.type == CreateNotify ) { - GETWINDOW( xcreatewindow ); - width = event.xcreatewindow.width; - height = event.xcreatewindow.height; - } else { - GETWINDOW( xconfigure ); - width = event.xconfigure.width; - height = event.xconfigure.height; - } - - if( ( width != window->State.OldWidth ) || - ( height != window->State.OldHeight ) ) - { - SFG_Window *current_window = fgStructure.CurrentWindow; - - window->State.OldWidth = width; - window->State.OldHeight = height; - if( FETCH_WCB( *window, Reshape ) ) - INVOKE_WCB( *window, Reshape, ( width, height ) ); - else - { - fgSetWindow( window ); - glViewport( 0, 0, width, height ); - } - glutPostRedisplay( ); - if( window->IsMenu ) - fgSetWindow( current_window ); - } - } - break; - - case DestroyNotify: - /* - * This is sent to confirm the XDestroyWindow call. - * - * XXX WHY is this commented out? Should we re-enable it? - */ - /* fgAddToWindowDestroyList ( window ); */ - break; - - case Expose: - /* - * We are too dumb to process partial exposes... - * - * XXX Well, we could do it. However, it seems to only - * XXX be potentially useful for single-buffered (since - * XXX double-buffered does not respect viewport when we - * XXX do a buffer-swap). - * - */ - if( event.xexpose.count == 0 ) - { - GETWINDOW( xexpose ); - window->State.Redisplay = GL_TRUE; - } - break; - - case MapNotify: - break; - - case UnmapNotify: - /* We get this when iconifying a window. */ - GETWINDOW( xunmap ); - INVOKE_WCB( *window, WindowStatus, ( GLUT_HIDDEN ) ); - window->State.Visible = GL_FALSE; - break; - - case MappingNotify: - /* - * Have the client's keyboard knowledge updated (xlib.ps, - * page 206, says that's a good thing to do) - */ - XRefreshKeyboardMapping( (XMappingEvent *) &event ); - break; - - case VisibilityNotify: - { - /* - * Sending this event, the X server can notify us that the window - * has just acquired one of the three possible visibility states: - * VisibilityUnobscured, VisibilityPartiallyObscured or - * VisibilityFullyObscured. Note that we DO NOT receive a - * VisibilityNotify event when iconifying a window, we only get an - * UnmapNotify then. - */ - GETWINDOW( xvisibility ); - switch( event.xvisibility.state ) - { - case VisibilityUnobscured: - INVOKE_WCB( *window, WindowStatus, ( GLUT_FULLY_RETAINED ) ); - window->State.Visible = GL_TRUE; - break; - - case VisibilityPartiallyObscured: - INVOKE_WCB( *window, WindowStatus, - ( GLUT_PARTIALLY_RETAINED ) ); - window->State.Visible = GL_TRUE; - break; - - case VisibilityFullyObscured: - INVOKE_WCB( *window, WindowStatus, ( GLUT_FULLY_COVERED ) ); - window->State.Visible = GL_FALSE; - break; - - default: - fgWarning( "Unknown X visibility state: %d", - event.xvisibility.state ); - break; - } - } - break; - - case EnterNotify: - case LeaveNotify: - GETWINDOW( xcrossing ); - GETMOUSE( xcrossing ); - if( ( event.type == LeaveNotify ) && window->IsMenu && - window->ActiveMenu && window->ActiveMenu->IsActive ) - fgUpdateMenuHighlight( window->ActiveMenu ); - - INVOKE_WCB( *window, Entry, ( ( EnterNotify == event.type ) ? - GLUT_ENTERED : - GLUT_LEFT ) ); - break; - - case MotionNotify: - { - GETWINDOW( xmotion ); - GETMOUSE( xmotion ); - - if( window->ActiveMenu ) - { - if( window == window->ActiveMenu->ParentWindow ) - { - window->ActiveMenu->Window->State.MouseX = - event.xmotion.x_root - window->ActiveMenu->X; - window->ActiveMenu->Window->State.MouseY = - event.xmotion.y_root - window->ActiveMenu->Y; - } - - fgUpdateMenuHighlight( window->ActiveMenu ); - - break; - } - - /* - * XXX For more than 5 buttons, just check {event.xmotion.state}, - * XXX rather than a host of bit-masks? Or maybe we need to - * XXX track ButtonPress/ButtonRelease events in our own - * XXX bit-mask? - */ - fgState.Modifiers = fghGetXModifiers( event.xmotion.state ); - if ( event.xmotion.state & ( Button1Mask | Button2Mask | Button3Mask | Button4Mask | Button5Mask ) ) { - INVOKE_WCB( *window, Motion, ( event.xmotion.x, - event.xmotion.y ) ); - } else { - INVOKE_WCB( *window, Passive, ( event.xmotion.x, - event.xmotion.y ) ); - } - fgState.Modifiers = INVALID_MODIFIERS; - } - break; - - case ButtonRelease: - case ButtonPress: - { - GLboolean pressed = GL_TRUE; - int button; - - if( event.type == ButtonRelease ) - pressed = GL_FALSE ; - - /* - * A mouse button has been pressed or released. Traditionally, - * break if the window was found within the freeglut structures. - */ - GETWINDOW( xbutton ); - GETMOUSE( xbutton ); - - /* - * An X button (at least in XFree86) is numbered from 1. - * A GLUT button is numbered from 0. - * Old GLUT passed through buttons other than just the first - * three, though it only gave symbolic names and official - * support to the first three. - */ - button = event.xbutton.button - 1; - - /* - * Do not execute the application's mouse callback if a menu - * is hooked to this button. In that case an appropriate - * private call should be generated. - */ - if( fgCheckActiveMenu( window, button, pressed, - event.xbutton.x_root, event.xbutton.y_root ) ) - break; - - /* - * Check if there is a mouse or mouse wheel callback hooked to the - * window - */ - if( ! FETCH_WCB( *window, Mouse ) && - ! FETCH_WCB( *window, MouseWheel ) ) - break; - - fgState.Modifiers = fghGetXModifiers( event.xbutton.state ); - - /* Finally execute the mouse or mouse wheel callback */ - if( ( button < glutDeviceGet ( GLUT_NUM_MOUSE_BUTTONS ) ) || ( ! FETCH_WCB( *window, MouseWheel ) ) ) - INVOKE_WCB( *window, Mouse, ( button, - pressed ? GLUT_DOWN : GLUT_UP, - event.xbutton.x, - event.xbutton.y ) - ); - else - { - /* - * Map 4 and 5 to wheel zero; EVEN to +1, ODD to -1 - * " 6 and 7 " " one; ... - * - * XXX This *should* be behind some variables/macros, - * XXX since the order and numbering isn't certain - * XXX See XFree86 configuration docs (even back in the - * XXX 3.x days, and especially with 4.x). - * - * XXX Note that {button} has already been decremeted - * XXX in mapping from X button numbering to GLUT. - */ - int wheel_number = (button - glutDeviceGet ( GLUT_NUM_MOUSE_BUTTONS )) / 2; - int direction = -1; - if( button % 2 ) - direction = 1; - - if( pressed ) - INVOKE_WCB( *window, MouseWheel, ( wheel_number, - direction, - event.xbutton.x, - event.xbutton.y ) - ); - } - fgState.Modifiers = INVALID_MODIFIERS; - } - break; - - case KeyRelease: - case KeyPress: - { - FGCBKeyboard keyboard_cb; - FGCBSpecial special_cb; - - GETWINDOW( xkey ); - GETMOUSE( xkey ); - - /* Detect auto repeated keys, if configured globally or per-window */ - - if ( fgState.KeyRepeat==GLUT_KEY_REPEAT_OFF || window->State.IgnoreKeyRepeat==GL_TRUE ) - { - if (event.type==KeyRelease) - { - /* - * Look at X11 keystate to detect repeat mode. - * While X11 says the key is actually held down, we'll ignore KeyRelease/KeyPress pairs. - */ - - char keys[32]; - XQueryKeymap( fgDisplay.Display, keys ); /* Look at X11 keystate to detect repeat mode */ - - if ( event.xkey.keycode<256 ) /* XQueryKeymap is limited to 256 keycodes */ - { - if ( keys[event.xkey.keycode>>3] & (1<<(event.xkey.keycode%8)) ) - window->State.KeyRepeating = GL_TRUE; - else - window->State.KeyRepeating = GL_FALSE; - } - } - } - else - window->State.KeyRepeating = GL_FALSE; - - /* Cease processing this event if it is auto repeated */ - - if (window->State.KeyRepeating) - { - if (event.type == KeyPress) window->State.KeyRepeating = GL_FALSE; - break; - } - - if( event.type == KeyPress ) - { - keyboard_cb = (FGCBKeyboard)( FETCH_WCB( *window, Keyboard )); - special_cb = (FGCBSpecial) ( FETCH_WCB( *window, Special )); - } - else - { - keyboard_cb = (FGCBKeyboard)( FETCH_WCB( *window, KeyboardUp )); - special_cb = (FGCBSpecial) ( FETCH_WCB( *window, SpecialUp )); - } - - /* Is there a keyboard/special callback hooked for this window? */ - if( keyboard_cb || special_cb ) - { - XComposeStatus composeStatus; - char asciiCode[ 32 ]; - KeySym keySym; - int len; - - /* Check for the ASCII/KeySym codes associated with the event: */ - len = XLookupString( &event.xkey, asciiCode, sizeof(asciiCode), - &keySym, &composeStatus - ); - - /* GLUT API tells us to have two separate callbacks... */ - if( len > 0 ) - { - /* ...one for the ASCII translateable keypresses... */ - if( keyboard_cb ) - { - fgSetWindow( window ); - fgState.Modifiers = fghGetXModifiers( event.xkey.state ); - keyboard_cb( asciiCode[ 0 ], - event.xkey.x, event.xkey.y - ); - fgState.Modifiers = INVALID_MODIFIERS; - } - } - else - { - int special = -1; - - /* - * ...and one for all the others, which need to be - * translated to GLUT_KEY_Xs... - */ - switch( keySym ) - { - case XK_F1: special = GLUT_KEY_F1; break; - case XK_F2: special = GLUT_KEY_F2; break; - case XK_F3: special = GLUT_KEY_F3; break; - case XK_F4: special = GLUT_KEY_F4; break; - case XK_F5: special = GLUT_KEY_F5; break; - case XK_F6: special = GLUT_KEY_F6; break; - case XK_F7: special = GLUT_KEY_F7; break; - case XK_F8: special = GLUT_KEY_F8; break; - case XK_F9: special = GLUT_KEY_F9; break; - case XK_F10: special = GLUT_KEY_F10; break; - case XK_F11: special = GLUT_KEY_F11; break; - case XK_F12: special = GLUT_KEY_F12; break; - - case XK_KP_Left: - case XK_Left: special = GLUT_KEY_LEFT; break; - case XK_KP_Right: - case XK_Right: special = GLUT_KEY_RIGHT; break; - case XK_KP_Up: - case XK_Up: special = GLUT_KEY_UP; break; - case XK_KP_Down: - case XK_Down: special = GLUT_KEY_DOWN; break; - - case XK_KP_Prior: - case XK_Prior: special = GLUT_KEY_PAGE_UP; break; - case XK_KP_Next: - case XK_Next: special = GLUT_KEY_PAGE_DOWN; break; - case XK_KP_Home: - case XK_Home: special = GLUT_KEY_HOME; break; - case XK_KP_End: - case XK_End: special = GLUT_KEY_END; break; - case XK_KP_Insert: - case XK_Insert: special = GLUT_KEY_INSERT; break; - - case XK_Num_Lock : special = GLUT_KEY_NUM_LOCK; break; - case XK_KP_Begin : special = GLUT_KEY_BEGIN; break; - case XK_KP_Delete: special = GLUT_KEY_DELETE; break; - } - - /* - * Execute the callback (if one has been specified), - * given that the special code seems to be valid... - */ - if( special_cb && (special != -1) ) - { - fgSetWindow( window ); - fgState.Modifiers = fghGetXModifiers( event.xkey.state ); - special_cb( special, event.xkey.x, event.xkey.y ); - fgState.Modifiers = INVALID_MODIFIERS; - } - } - } - } - break; - - case ReparentNotify: - break; /* XXX Should disable this event */ - - /* Not handled */ - case GravityNotify: - break; - - default: - fgWarning ("Unknown X event type: %d\n", event.type); - break; - } - } - -#elif TARGET_HOST_MS_WINDOWS - - MSG stMsg; - - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutMainLoopEvent" ); - - while( PeekMessage( &stMsg, NULL, 0, 0, PM_NOREMOVE ) ) - { - if( GetMessage( &stMsg, NULL, 0, 0 ) == 0 ) - { - if( fgState.ActionOnWindowClose == GLUT_ACTION_EXIT ) - { - fgDeinitialize( ); - exit( 0 ); - } - else if( fgState.ActionOnWindowClose == GLUT_ACTION_GLUTMAINLOOP_RETURNS ) - fgState.ExecState = GLUT_EXEC_STATE_STOP; - - return; - } - - TranslateMessage( &stMsg ); - DispatchMessage( &stMsg ); - } -#endif - - if( fgState.Timers.First ) - fghCheckTimers( ); - fghCheckJoystickPolls( ); - fghDisplayAll( ); - - fgCloseWindows( ); -} - -/* - * Enters the freeglut processing loop. - * Stays until the "ExecState" changes to "GLUT_EXEC_STATE_STOP". - */ -void FGAPIENTRY glutMainLoop( void ) -{ - int action; - -#if TARGET_HOST_MS_WINDOWS - SFG_Window *window = (SFG_Window *)fgStructure.Windows.First ; -#endif - - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutMainLoop" ); - -#if TARGET_HOST_MS_WINDOWS - /* - * Processing before the main loop: If there is a window which is open and - * which has a visibility callback, call it. I know this is an ugly hack, - * but I'm not sure what else to do about it. Ideally we should leave - * something uninitialized in the create window code and initialize it in - * the main loop, and have that initialization create a "WM_ACTIVATE" - * message. Then we would put the visibility callback code in the - * "case WM_ACTIVATE" block below. - John Fay -- 10/24/02 - */ - while( window ) - { - if ( FETCH_WCB( *window, Visibility ) ) - { - SFG_Window *current_window = fgStructure.CurrentWindow ; - - INVOKE_WCB( *window, Visibility, ( window->State.Visible ) ); - fgSetWindow( current_window ); - } - - window = (SFG_Window *)window->Node.Next ; - } -#endif - - fgState.ExecState = GLUT_EXEC_STATE_RUNNING ; - while( fgState.ExecState == GLUT_EXEC_STATE_RUNNING ) - { - SFG_Window *window; - - glutMainLoopEvent( ); - /* - * Step through the list of windows, seeing if there are any - * that are not menus - */ - for( window = ( SFG_Window * )fgStructure.Windows.First; - window; - window = ( SFG_Window * )window->Node.Next ) - if ( ! ( window->IsMenu ) ) - break; - - if( ! window ) - fgState.ExecState = GLUT_EXEC_STATE_STOP; - else - { - if( fgState.IdleCallback ) - { - if( fgStructure.CurrentWindow && - fgStructure.CurrentWindow->IsMenu ) - /* fail safe */ - fgSetWindow( window ); - fgState.IdleCallback( ); - } - - fghSleepForEvents( ); - } - } - - /* - * When this loop terminates, destroy the display, state and structure - * of a freeglut session, so that another glutInit() call can happen - * - * Save the "ActionOnWindowClose" because "fgDeinitialize" resets it. - */ - action = fgState.ActionOnWindowClose; - fgDeinitialize( ); - if( action == GLUT_ACTION_EXIT ) - exit( 0 ); -} - -/* - * Leaves the freeglut processing loop. - */ -void FGAPIENTRY glutLeaveMainLoop( void ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutLeaveMainLoop" ); - fgState.ExecState = GLUT_EXEC_STATE_STOP ; -} - - -#if TARGET_HOST_MS_WINDOWS -/* - * Determine a GLUT modifer mask based on MS-WINDOWS system info. - */ -static int fghGetWin32Modifiers (void) -{ - return - ( ( ( GetKeyState( VK_LSHIFT ) < 0 ) || - ( GetKeyState( VK_RSHIFT ) < 0 )) ? GLUT_ACTIVE_SHIFT : 0 ) | - ( ( ( GetKeyState( VK_LCONTROL ) < 0 ) || - ( GetKeyState( VK_RCONTROL ) < 0 )) ? GLUT_ACTIVE_CTRL : 0 ) | - ( ( ( GetKeyState( VK_LMENU ) < 0 ) || - ( GetKeyState( VK_RMENU ) < 0 )) ? GLUT_ACTIVE_ALT : 0 ); -} - -/* - * The window procedure for handling Win32 events - */ -LRESULT CALLBACK fgWindowProc( HWND hWnd, UINT uMsg, WPARAM wParam, - LPARAM lParam ) -{ - SFG_Window* window; - PAINTSTRUCT ps; - LRESULT lRet = 1; - - FREEGLUT_INTERNAL_ERROR_EXIT_IF_NOT_INITIALISED ( "Event Handler" ) ; - - window = fgWindowByHandle( hWnd ); - - if ( ( window == NULL ) && ( uMsg != WM_CREATE ) ) - return DefWindowProc( hWnd, uMsg, wParam, lParam ); - - /* printf ( "Window %3d message <%04x> %12d %12d\n", window?window->ID:0, - uMsg, wParam, lParam ); */ - switch( uMsg ) - { - case WM_CREATE: - /* The window structure is passed as the creation structure paramter... */ - window = (SFG_Window *) (((LPCREATESTRUCT) lParam)->lpCreateParams); - FREEGLUT_INTERNAL_ERROR_EXIT ( ( window != NULL ), "Cannot create window", - "fgWindowProc" ); - - window->Window.Handle = hWnd; - window->Window.Device = GetDC( hWnd ); - if( window->IsMenu ) - { - unsigned int current_DisplayMode = fgState.DisplayMode; - fgState.DisplayMode = GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH; -#if !defined(_WIN32_WCE) - fgSetupPixelFormat( window, GL_FALSE, PFD_MAIN_PLANE ); -#endif - fgState.DisplayMode = current_DisplayMode; - - if( fgStructure.MenuContext ) - wglMakeCurrent( window->Window.Device, - fgStructure.MenuContext->MContext - ); - else - { - fgStructure.MenuContext = - (SFG_MenuContext *)malloc( sizeof(SFG_MenuContext) ); - fgStructure.MenuContext->MContext = - wglCreateContext( window->Window.Device ); - } - - /* window->Window.Context = wglGetCurrentContext (); */ - window->Window.Context = wglCreateContext( window->Window.Device ); - } - else - { -#if !defined(_WIN32_WCE) - fgSetupPixelFormat( window, GL_FALSE, PFD_MAIN_PLANE ); -#endif - - if( ! fgState.UseCurrentContext ) - window->Window.Context = - wglCreateContext( window->Window.Device ); - else - { - window->Window.Context = wglGetCurrentContext( ); - if( ! window->Window.Context ) - window->Window.Context = - wglCreateContext( window->Window.Device ); - } - -#if !defined(_WIN32_WCE) - fgNewWGLCreateContext( window ); -#endif - } - - window->State.NeedToResize = GL_TRUE; - if( ( window->State.Width < 0 ) || ( window->State.Height < 0 ) ) - { - SFG_Window *current_window = fgStructure.CurrentWindow; - - fgSetWindow( window ); - window->State.Width = glutGet( GLUT_WINDOW_WIDTH ); - window->State.Height = glutGet( GLUT_WINDOW_HEIGHT ); - fgSetWindow( current_window ); - } - - ReleaseDC( window->Window.Handle, window->Window.Device ); - -#if defined(_WIN32_WCE) - /* Take over button handling */ - { - HINSTANCE dxDllLib=LoadLibrary(_T("gx.dll")); - if (dxDllLib) - { - GXGetDefaultKeys_=(GXGETDEFAULTKEYS)GetProcAddress(dxDllLib, _T("?GXGetDefaultKeys@@YA?AUGXKeyList@@H@Z")); - GXOpenInput_=(GXOPENINPUT)GetProcAddress(dxDllLib, _T("?GXOpenInput@@YAHXZ")); - } - - if(GXOpenInput_) - (*GXOpenInput_)(); - if(GXGetDefaultKeys_) - gxKeyList = (*GXGetDefaultKeys_)(GX_LANDSCAPEKEYS); - } - -#endif /* defined(_WIN32_WCE) */ - break; - - case WM_SIZE: - /* - * If the window is visible, then it is the user manually resizing it. - * If it is not, then it is the system sending us a dummy resize with - * zero dimensions on a "glutIconifyWindow" call. - */ - if( window->State.Visible ) - { - window->State.NeedToResize = GL_TRUE; -#if defined(_WIN32_WCE) - window->State.Width = HIWORD(lParam); - window->State.Height = LOWORD(lParam); -#else - window->State.Width = LOWORD(lParam); - window->State.Height = HIWORD(lParam); -#endif /* defined(_WIN32_WCE) */ - } - - break; - - case WM_SETFOCUS: -/* printf("WM_SETFOCUS: %p\n", window ); */ - lRet = DefWindowProc( hWnd, uMsg, wParam, lParam ); - INVOKE_WCB( *window, Entry, ( GLUT_ENTERED ) ); - break; - - case WM_KILLFOCUS: -/* printf("WM_KILLFOCUS: %p\n", window ); */ - lRet = DefWindowProc( hWnd, uMsg, wParam, lParam ); - INVOKE_WCB( *window, Entry, ( GLUT_LEFT ) ); - - if( window->IsMenu && - window->ActiveMenu && window->ActiveMenu->IsActive ) - fgUpdateMenuHighlight( window->ActiveMenu ); - - break; - -#if 0 - case WM_ACTIVATE: - if (LOWORD(wParam) != WA_INACTIVE) - { -/* printf("WM_ACTIVATE: fgSetCursor( %p, %d)\n", window, - window->State.Cursor ); */ - fgSetCursor( window, window->State.Cursor ); - } - - lRet = DefWindowProc( hWnd, uMsg, wParam, lParam ); - break; -#endif - - case WM_SETCURSOR: -/* printf ( "Cursor event %x %x %x %x\n", window, window->State.Cursor, lParam, wParam ) ; */ - if( LOWORD( lParam ) == HTCLIENT ) - fgSetCursor ( window, window->State.Cursor ) ; - else - lRet = DefWindowProc( hWnd, uMsg, wParam, lParam ); - break; - - case WM_SHOWWINDOW: - window->State.Visible = GL_TRUE; - window->State.Redisplay = GL_TRUE; - break; - - case WM_PAINT: - /* Turn on the visibility in case it was turned off somehow */ - window->State.Visible = GL_TRUE; - BeginPaint( hWnd, &ps ); - fghRedrawWindow( window ); - EndPaint( hWnd, &ps ); - break; - - case WM_CLOSE: - fgDestroyWindow ( window ); - if ( fgState.ActionOnWindowClose != GLUT_ACTION_CONTINUE_EXECUTION ) - PostQuitMessage(0); - break; - - case WM_DESTROY: - /* - * The window already got destroyed, so don't bother with it. - */ - return 0; - - case WM_MOUSEMOVE: - { -#if defined(_WIN32_WCE) - window->State.MouseX = 320-HIWORD( lParam ); - window->State.MouseY = LOWORD( lParam ); -#else - window->State.MouseX = LOWORD( lParam ); - window->State.MouseY = HIWORD( lParam ); -#endif /* defined(_WIN32_WCE) */ - /* Restrict to [-32768, 32767] to match X11 behaviour */ - /* See comment in "freeglut_developer" mailing list 10/4/04 */ - if ( window->State.MouseX > 32767 ) window->State.MouseX -= 65536; - if ( window->State.MouseY > 32767 ) window->State.MouseY -= 65536; - - if ( window->ActiveMenu ) - { - fgUpdateMenuHighlight( window->ActiveMenu ); - break; - } - - fgState.Modifiers = fghGetWin32Modifiers( ); - - if( ( wParam & MK_LBUTTON ) || - ( wParam & MK_MBUTTON ) || - ( wParam & MK_RBUTTON ) ) - INVOKE_WCB( *window, Motion, ( window->State.MouseX, - window->State.MouseY ) ); - else - INVOKE_WCB( *window, Passive, ( window->State.MouseX, - window->State.MouseY ) ); - - fgState.Modifiers = INVALID_MODIFIERS; - } - break; - - case WM_LBUTTONDOWN: - case WM_MBUTTONDOWN: - case WM_RBUTTONDOWN: - case WM_LBUTTONUP: - case WM_MBUTTONUP: - case WM_RBUTTONUP: - { - GLboolean pressed = GL_TRUE; - int button; - -#if defined(_WIN32_WCE) - window->State.MouseX = 320-HIWORD( lParam ); - window->State.MouseY = LOWORD( lParam ); -#else - window->State.MouseX = LOWORD( lParam ); - window->State.MouseY = HIWORD( lParam ); -#endif /* defined(_WIN32_WCE) */ - - /* Restrict to [-32768, 32767] to match X11 behaviour */ - /* See comment in "freeglut_developer" mailing list 10/4/04 */ - if ( window->State.MouseX > 32767 ) window->State.MouseX -= 65536; - if ( window->State.MouseY > 32767 ) window->State.MouseY -= 65536; - - switch( uMsg ) - { - case WM_LBUTTONDOWN: - pressed = GL_TRUE; - button = GLUT_LEFT_BUTTON; - break; - case WM_MBUTTONDOWN: - pressed = GL_TRUE; - button = GLUT_MIDDLE_BUTTON; - break; - case WM_RBUTTONDOWN: - pressed = GL_TRUE; - button = GLUT_RIGHT_BUTTON; - break; - case WM_LBUTTONUP: - pressed = GL_FALSE; - button = GLUT_LEFT_BUTTON; - break; - case WM_MBUTTONUP: - pressed = GL_FALSE; - button = GLUT_MIDDLE_BUTTON; - break; - case WM_RBUTTONUP: - pressed = GL_FALSE; - button = GLUT_RIGHT_BUTTON; - break; - default: - pressed = GL_FALSE; - button = -1; - break; - } - -#if !defined(_WIN32_WCE) - if( GetSystemMetrics( SM_SWAPBUTTON ) ) - { - if( button == GLUT_LEFT_BUTTON ) - button = GLUT_RIGHT_BUTTON; - else - if( button == GLUT_RIGHT_BUTTON ) - button = GLUT_LEFT_BUTTON; - } -#endif /* !defined(_WIN32_WCE) */ - - if( button == -1 ) - return DefWindowProc( hWnd, uMsg, lParam, wParam ); - - /* - * Do not execute the application's mouse callback if a menu - * is hooked to this button. In that case an appropriate - * private call should be generated. - */ - if( fgCheckActiveMenu( window, button, pressed, - window->State.MouseX, window->State.MouseY ) ) - break; - - /* Set capture so that the window captures all the mouse messages */ - /* - * XXX - Multiple button support: Under X11, the mouse is not released - * XXX - from the window until all buttons have been released, even if the - * XXX - user presses a button in another window. This will take more - * XXX - code changes than I am up to at the moment (10/5/04). The present - * XXX - is a 90 percent solution. - */ - if ( pressed == GL_TRUE ) - SetCapture ( window->Window.Handle ) ; - else - ReleaseCapture () ; - - if( ! FETCH_WCB( *window, Mouse ) ) - break; - - fgSetWindow( window ); - fgState.Modifiers = fghGetWin32Modifiers( ); - - INVOKE_WCB( - *window, Mouse, - ( button, - pressed ? GLUT_DOWN : GLUT_UP, - window->State.MouseX, - window->State.MouseY - ) - ); - - fgState.Modifiers = INVALID_MODIFIERS; - } - break; - - case 0x020a: - /* Should be WM_MOUSEWHEEL but my compiler doesn't recognize it */ - { - /* - * XXX THIS IS SPECULATIVE -- John Fay, 10/2/03 - * XXX Should use WHEEL_DELTA instead of 120 - */ - int wheel_number = LOWORD( wParam ); - short ticks = ( short )HIWORD( wParam ) / 120; - int direction = 1; - - if( ticks < 0 ) - { - direction = -1; - ticks = -ticks; - } - - /* - * The mouse cursor has moved. Remember the new mouse cursor's position - */ - /* window->State.MouseX = LOWORD( lParam ); */ - /* Need to adjust by window position, */ - /* window->State.MouseY = HIWORD( lParam ); */ - /* change "lParam" to other parameter */ - - if( ! FETCH_WCB( *window, MouseWheel ) && - ! FETCH_WCB( *window, Mouse ) ) - break; - - fgSetWindow( window ); - fgState.Modifiers = fghGetWin32Modifiers( ); - - while( ticks-- ) - if( FETCH_WCB( *window, MouseWheel ) ) - INVOKE_WCB( *window, MouseWheel, - ( wheel_number, - direction, - window->State.MouseX, - window->State.MouseY - ) - ); - else /* No mouse wheel, call the mouse button callback twice */ - { - /* - * Map wheel zero to button 3 and 4; +1 to 3, -1 to 4 - * " " one +1 to 5, -1 to 6, ... - * - * XXX The below assumes that you have no more than 3 mouse - * XXX buttons. Sorry. - */ - int button = wheel_number * 2 + 3; - if( direction < 0 ) - ++button; - INVOKE_WCB( *window, Mouse, - ( button, GLUT_DOWN, - window->State.MouseX, window->State.MouseY ) - ); - INVOKE_WCB( *window, Mouse, - ( button, GLUT_UP, - window->State.MouseX, window->State.MouseY ) - ); - } - - fgState.Modifiers = INVALID_MODIFIERS; - } - break ; - - case WM_SYSKEYDOWN: - case WM_KEYDOWN: - { - int keypress = -1; - POINT mouse_pos ; - - if( ( fgState.KeyRepeat==GLUT_KEY_REPEAT_OFF || window->State.IgnoreKeyRepeat==GL_TRUE ) && (HIWORD(lParam) & KF_REPEAT) ) - break; - - /* - * Remember the current modifiers state. This is done here in order - * to make sure the VK_DELETE keyboard callback is executed properly. - */ - fgState.Modifiers = fghGetWin32Modifiers( ); - - GetCursorPos( &mouse_pos ); - ScreenToClient( window->Window.Handle, &mouse_pos ); - - window->State.MouseX = mouse_pos.x; - window->State.MouseY = mouse_pos.y; - - /* Convert the Win32 keystroke codes to GLUTtish way */ -# define KEY(a,b) case a: keypress = b; break; - - switch( wParam ) - { - KEY( VK_F1, GLUT_KEY_F1 ); - KEY( VK_F2, GLUT_KEY_F2 ); - KEY( VK_F3, GLUT_KEY_F3 ); - KEY( VK_F4, GLUT_KEY_F4 ); - KEY( VK_F5, GLUT_KEY_F5 ); - KEY( VK_F6, GLUT_KEY_F6 ); - KEY( VK_F7, GLUT_KEY_F7 ); - KEY( VK_F8, GLUT_KEY_F8 ); - KEY( VK_F9, GLUT_KEY_F9 ); - KEY( VK_F10, GLUT_KEY_F10 ); - KEY( VK_F11, GLUT_KEY_F11 ); - KEY( VK_F12, GLUT_KEY_F12 ); - KEY( VK_PRIOR, GLUT_KEY_PAGE_UP ); - KEY( VK_NEXT, GLUT_KEY_PAGE_DOWN ); - KEY( VK_HOME, GLUT_KEY_HOME ); - KEY( VK_END, GLUT_KEY_END ); - KEY( VK_LEFT, GLUT_KEY_LEFT ); - KEY( VK_UP, GLUT_KEY_UP ); - KEY( VK_RIGHT, GLUT_KEY_RIGHT ); - KEY( VK_DOWN, GLUT_KEY_DOWN ); - KEY( VK_INSERT, GLUT_KEY_INSERT ); - - case VK_DELETE: - /* The delete key should be treated as an ASCII keypress: */ - INVOKE_WCB( *window, Keyboard, - ( 127, window->State.MouseX, window->State.MouseY ) - ); - } - -#if defined(_WIN32_WCE) - if(!(lParam & 0x40000000)) /* Prevent auto-repeat */ - { - if(wParam==(unsigned)gxKeyList.vkRight) - keypress = GLUT_KEY_RIGHT; - else if(wParam==(unsigned)gxKeyList.vkLeft) - keypress = GLUT_KEY_LEFT; - else if(wParam==(unsigned)gxKeyList.vkUp) - keypress = GLUT_KEY_UP; - else if(wParam==(unsigned)gxKeyList.vkDown) - keypress = GLUT_KEY_DOWN; - else if(wParam==(unsigned)gxKeyList.vkA) - keypress = GLUT_KEY_F1; - else if(wParam==(unsigned)gxKeyList.vkB) - keypress = GLUT_KEY_F2; - else if(wParam==(unsigned)gxKeyList.vkC) - keypress = GLUT_KEY_F3; - else if(wParam==(unsigned)gxKeyList.vkStart) - keypress = GLUT_KEY_F4; - } -#endif - - if( keypress != -1 ) - INVOKE_WCB( *window, Special, - ( keypress, - window->State.MouseX, window->State.MouseY ) - ); - - fgState.Modifiers = INVALID_MODIFIERS; - } - break; - - case WM_SYSKEYUP: - case WM_KEYUP: - { - int keypress = -1; - POINT mouse_pos; - - /* - * Remember the current modifiers state. This is done here in order - * to make sure the VK_DELETE keyboard callback is executed properly. - */ - fgState.Modifiers = fghGetWin32Modifiers( ); - - GetCursorPos( &mouse_pos ); - ScreenToClient( window->Window.Handle, &mouse_pos ); - - window->State.MouseX = mouse_pos.x; - window->State.MouseY = mouse_pos.y; - - /* - * Convert the Win32 keystroke codes to GLUTtish way. - * "KEY(a,b)" was defined under "WM_KEYDOWN" - */ - - switch( wParam ) - { - KEY( VK_F1, GLUT_KEY_F1 ); - KEY( VK_F2, GLUT_KEY_F2 ); - KEY( VK_F3, GLUT_KEY_F3 ); - KEY( VK_F4, GLUT_KEY_F4 ); - KEY( VK_F5, GLUT_KEY_F5 ); - KEY( VK_F6, GLUT_KEY_F6 ); - KEY( VK_F7, GLUT_KEY_F7 ); - KEY( VK_F8, GLUT_KEY_F8 ); - KEY( VK_F9, GLUT_KEY_F9 ); - KEY( VK_F10, GLUT_KEY_F10 ); - KEY( VK_F11, GLUT_KEY_F11 ); - KEY( VK_F12, GLUT_KEY_F12 ); - KEY( VK_PRIOR, GLUT_KEY_PAGE_UP ); - KEY( VK_NEXT, GLUT_KEY_PAGE_DOWN ); - KEY( VK_HOME, GLUT_KEY_HOME ); - KEY( VK_END, GLUT_KEY_END ); - KEY( VK_LEFT, GLUT_KEY_LEFT ); - KEY( VK_UP, GLUT_KEY_UP ); - KEY( VK_RIGHT, GLUT_KEY_RIGHT ); - KEY( VK_DOWN, GLUT_KEY_DOWN ); - KEY( VK_INSERT, GLUT_KEY_INSERT ); - - case VK_DELETE: - /* The delete key should be treated as an ASCII keypress: */ - INVOKE_WCB( *window, KeyboardUp, - ( 127, window->State.MouseX, window->State.MouseY ) - ); - break; - - default: - { -#if !defined(_WIN32_WCE) - BYTE state[ 256 ]; - WORD code[ 2 ]; - - GetKeyboardState( state ); - - if( ToAscii( (UINT)wParam, 0, state, code, 0 ) == 1 ) - wParam=code[ 0 ]; - - INVOKE_WCB( *window, KeyboardUp, - ( (char)wParam, - window->State.MouseX, window->State.MouseY ) - ); -#endif /* !defined(_WIN32_WCE) */ - } - } - - if( keypress != -1 ) - INVOKE_WCB( *window, SpecialUp, - ( keypress, - window->State.MouseX, window->State.MouseY ) - ); - - fgState.Modifiers = INVALID_MODIFIERS; - } - break; - - case WM_SYSCHAR: - case WM_CHAR: - { - if( (fgState.KeyRepeat==GLUT_KEY_REPEAT_OFF || window->State.IgnoreKeyRepeat==GL_TRUE) && (HIWORD(lParam) & KF_REPEAT) ) - break; - - fgState.Modifiers = fghGetWin32Modifiers( ); - INVOKE_WCB( *window, Keyboard, - ( (char)wParam, - window->State.MouseX, window->State.MouseY ) - ); - fgState.Modifiers = INVALID_MODIFIERS; - } - break; - - case WM_CAPTURECHANGED: - /* User has finished resizing the window, force a redraw */ - INVOKE_WCB( *window, Display, ( ) ); - - /*lRet = DefWindowProc( hWnd, uMsg, wParam, lParam ); */ - break; - - /* Other messages that I have seen and which are not handled already */ - case WM_SETTEXT: /* 0x000c */ - lRet = DefWindowProc( hWnd, uMsg, wParam, lParam ); - /* Pass it on to "DefWindowProc" to set the window text */ - break; - - case WM_GETTEXT: /* 0x000d */ - /* Ideally we would copy the title of the window into "lParam" */ - /* strncpy ( (char *)lParam, "Window Title", wParam ); - lRet = ( wParam > 12 ) ? 12 : wParam; */ - /* the number of characters copied */ - lRet = DefWindowProc( hWnd, uMsg, wParam, lParam ); - break; - - case WM_GETTEXTLENGTH: /* 0x000e */ - /* Ideally we would get the length of the title of the window */ - lRet = 12; - /* the number of characters in "Window Title\0" (see above) */ - break; - - case WM_ERASEBKGND: /* 0x0014 */ - lRet = DefWindowProc( hWnd, uMsg, wParam, lParam ); - break; - -#if !defined(_WIN32_WCE) - case WM_SYNCPAINT: /* 0x0088 */ - /* Another window has moved, need to update this one */ - window->State.Redisplay = GL_TRUE; - lRet = DefWindowProc( hWnd, uMsg, wParam, lParam ); - /* Help screen says this message must be passed to "DefWindowProc" */ - break; - - case WM_NCPAINT: /* 0x0085 */ - /* Need to update the border of this window */ - lRet = DefWindowProc( hWnd, uMsg, wParam, lParam ); - /* Pass it on to "DefWindowProc" to repaint a standard border */ - break; - - case WM_SYSCOMMAND : /* 0x0112 */ - { - /* - * We have received a system command message. Try to act on it. - * The commands are passed in through the "wParam" parameter: - * The least significant digit seems to be which edge of the window - * is being used for a resize event: - * 4 3 5 - * 1 2 - * 7 6 8 - * Congratulations and thanks to Richard Rauch for figuring this out.. - */ - switch ( wParam & 0xfff0 ) - { - case SC_SIZE : - break ; - - case SC_MOVE : - break ; - - case SC_MINIMIZE : - /* User has clicked on the "-" to minimize the window */ - /* Turn off the visibility */ - window->State.Visible = GL_FALSE ; - - break ; - - case SC_MAXIMIZE : - break ; - - case SC_NEXTWINDOW : - break ; - - case SC_PREVWINDOW : - break ; - - case SC_CLOSE : - /* Followed very closely by a WM_CLOSE message */ - break ; - - case SC_VSCROLL : - break ; - - case SC_HSCROLL : - break ; - - case SC_MOUSEMENU : - break ; - - case SC_KEYMENU : - break ; - - case SC_ARRANGE : - break ; - - case SC_RESTORE : - break ; - - case SC_TASKLIST : - break ; - - case SC_SCREENSAVE : - break ; - - case SC_HOTKEY : - break ; - -#if(WINVER >= 0x0400) - case SC_DEFAULT : - break ; - - case SC_MONITORPOWER : - break ; - - case SC_CONTEXTHELP : - break ; -#endif /* WINVER >= 0x0400 */ - - default: -#if _DEBUG - fgWarning( "Unknown wParam type 0x%x", wParam ); -#endif - break; - } - } -#endif /* !defined(_WIN32_WCE) */ - - /* We need to pass the message on to the operating system as well */ - lRet = DefWindowProc( hWnd, uMsg, wParam, lParam ); - break; - - default: - /* Handle unhandled messages */ - lRet = DefWindowProc( hWnd, uMsg, wParam, lParam ); - break; - } - - return lRet; -} -#endif - -/*** END OF FILE ***/ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_menu.c b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_menu.c deleted file mode 100644 index 9bdf889..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_menu.c +++ /dev/null @@ -1,1002 +0,0 @@ -/* - * freeglut_menu.c - * - * Pull-down menu creation and handling. - * - * Copyright (c) 1999-2000 Pawel W. Olszta. All Rights Reserved. - * Written by Pawel W. Olszta, - * Creation date: Thu Dec 16 1999 - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included - * in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - * PAWEL W. OLSZTA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER - * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - */ - -#define FREEGLUT_BUILDING_LIB -#include "freeglut.h" -#include "freeglut_internal.h" - -/* -- DEFINITIONS ---------------------------------------------------------- */ - -/* - * FREEGLUT_MENU_FONT can be any freeglut bitmapped font. - * (Stroked fonts would not be out of the question, but we'd need to alter - * code, since GLUT (hence freeglut) does not quite unify stroked and - * bitmapped font handling.) - * Old UNIX/X11 GLUT (BSD, UNIX, IRIX, LINUX, HPUX, ...) used a system - * font best approximated by an 18-pixel HELVETICA, I think. MS-WINDOWS - * GLUT used something closest to the 8x13 fixed-width font. (Old - * GLUT apparently uses host-system menus rather than building its own. - * freeglut is building its own menus from scratch.) - * - * FREEGLUT_MENU_HEIGHT gives the height of ONE menu box. This should be - * the distances between two adjacent menu entries. It should scale - * automatically with the font choice, so you needn't alter it---unless you - * use a stroked font. - * - * FREEGLUT_MENU_BORDER says how many pixels to allow around the edge of a - * menu. (It also seems to be the same as the number of pixels used as - * a border around *items* to separate them from neighbors. John says - * that that wasn't the original intent...if not, perhaps we need another - * symbolic constant, FREEGLUT_MENU_ITEM_BORDER, or such.) - */ -#if TARGET_HOST_MS_WINDOWS -#define FREEGLUT_MENU_FONT GLUT_BITMAP_8_BY_13 -#else -#define FREEGLUT_MENU_FONT GLUT_BITMAP_HELVETICA_18 -#endif - -#define FREEGLUT_MENU_HEIGHT (glutBitmapHeight(FREEGLUT_MENU_FONT) + \ - FREEGLUT_MENU_BORDER) -#define FREEGLUT_MENU_BORDER 2 - - -/* - * These variables are for rendering the freeglut menu items. - * - * The choices are fore- and background, with and without h for Highlighting. - * Old GLUT appeared to be system-dependant for its colors (sigh) so we are - * too. These variables should be stuffed into global state and initialized - * via the glutInit*() system. - */ -#if TARGET_HOST_MS_WINDOWS -static float menu_pen_fore [4] = {0.0f, 0.0f, 0.0f, 1.0f}; -static float menu_pen_back [4] = {0.85f, 0.85f, 0.85f, 1.0f}; -static float menu_pen_hfore [4] = {1.0f, 1.0f, 1.0f, 1.0f}; -static float menu_pen_hback [4] = {0.15f, 0.15f, 0.45f, 1.0f}; -#else -static float menu_pen_fore [4] = {0.0f, 0.0f, 0.0f, 1.0f}; -static float menu_pen_back [4] = {0.70f, 0.70f, 0.70f, 1.0f}; -static float menu_pen_hfore [4] = {0.0f, 0.0f, 0.0f, 1.0f}; -static float menu_pen_hback [4] = {1.0f, 1.0f, 1.0f, 1.0f}; -#endif - -/* -- PRIVATE FUNCTIONS ---------------------------------------------------- */ - -/* - * Private function to find a menu entry by index - */ -static SFG_MenuEntry *fghFindMenuEntry( SFG_Menu* menu, int index ) -{ - SFG_MenuEntry *entry; - int i = 1; - - for( entry = (SFG_MenuEntry *)menu->Entries.First; - entry; - entry = (SFG_MenuEntry *)entry->Node.Next ) - { - if( i == index ) - break; - ++i; - } - - return entry; -} - -/* - * Deactivates a menu pointed by the function argument. - */ -static void fghDeactivateSubMenu( SFG_MenuEntry *menuEntry ) -{ - SFG_MenuEntry *subMenuIter; - /* Hide the present menu's window */ - fgSetWindow( menuEntry->SubMenu->Window ); - glutHideWindow( ); - - /* Forget about having that menu active anymore, now: */ - menuEntry->SubMenu->Window->ActiveMenu = NULL; - menuEntry->SubMenu->IsActive = GL_FALSE; - menuEntry->SubMenu->ActiveEntry = NULL; - - /* Hide all submenu windows, and the root menu's window. */ - for ( subMenuIter = (SFG_MenuEntry *)menuEntry->SubMenu->Entries.First; - subMenuIter; - subMenuIter = (SFG_MenuEntry *)subMenuIter->Node.Next ) - { - subMenuIter->IsActive = GL_FALSE; - - /* Is that an active submenu by any case? */ - if( subMenuIter->SubMenu ) - fghDeactivateSubMenu( subMenuIter ); - } - - fgSetWindow ( menuEntry->SubMenu->ParentWindow ) ; -} - -/* - * Private function to get the virtual maximum screen extent - */ -static GLvoid fghGetVMaxExtent( SFG_Window* window, int* x, int* y ) -{ - if( fgStructure.GameModeWindow ) - { -#if TARGET_HOST_POSIX_X11 - int wx, wy; - Window w; - - XTranslateCoordinates( - fgDisplay.Display, - window->Window.Handle, - fgDisplay.RootWindow, - 0, 0, &wx, &wy, &w); - - *x = fgState.GameModeSize.X + wx; - *y = fgState.GameModeSize.Y + wy; -#else - *x = glutGet ( GLUT_SCREEN_WIDTH ); - *y = glutGet ( GLUT_SCREEN_HEIGHT ); -#endif - } - else - { - *x = fgDisplay.ScreenWidth; - *y = fgDisplay.ScreenHeight; - } -} - -/* - * Private function to check for the current menu/sub menu activity state - */ -static GLboolean fghCheckMenuStatus( SFG_Menu* menu ) -{ - SFG_MenuEntry* menuEntry; - int x, y; - - /* First of all check any of the active sub menus... */ - for( menuEntry = (SFG_MenuEntry *)menu->Entries.First; - menuEntry; - menuEntry = (SFG_MenuEntry *)menuEntry->Node.Next ) - { - if( menuEntry->SubMenu && menuEntry->IsActive ) - { - /* - * OK, have the sub-menu checked, too. If it returns GL_TRUE, it - * will mean that it caught the mouse cursor and we do not need - * to regenerate the activity list, and so our parents do... - */ - GLboolean return_status; - - menuEntry->SubMenu->Window->State.MouseX = - menu->Window->State.MouseX + menu->X - menuEntry->SubMenu->X; - menuEntry->SubMenu->Window->State.MouseY = - menu->Window->State.MouseY + menu->Y - menuEntry->SubMenu->Y; - return_status = fghCheckMenuStatus( menuEntry->SubMenu ); - - if ( return_status ) - return GL_TRUE; - } - } - - /* That much about our sub menus, let's get to checking the current menu: */ - x = menu->Window->State.MouseX; - y = menu->Window->State.MouseY; - - /* Check if the mouse cursor is contained within the current menu box */ - if( ( x >= FREEGLUT_MENU_BORDER ) && - ( x < menu->Width - FREEGLUT_MENU_BORDER ) && - ( y >= FREEGLUT_MENU_BORDER ) && - ( y < menu->Height - FREEGLUT_MENU_BORDER ) ) - { - int menuID = ( y - FREEGLUT_MENU_BORDER ) / FREEGLUT_MENU_HEIGHT; - - /* The mouse cursor is somewhere over our box, check it out. */ - menuEntry = fghFindMenuEntry( menu, menuID + 1 ); - FREEGLUT_INTERNAL_ERROR_EXIT( menuEntry, "Cannot find menu entry", - "fghCheckMenuStatus" ); - - menuEntry->IsActive = GL_TRUE; - menuEntry->Ordinal = menuID; - - /* - * If this is not the same as the last active menu entry, deactivate - * the previous entry. Specifically, if the previous active entry - * was a submenu then deactivate it. - */ - if( menu->ActiveEntry && ( menuEntry != menu->ActiveEntry ) ) - if( menu->ActiveEntry->SubMenu ) - fghDeactivateSubMenu( menu->ActiveEntry ); - - if( menuEntry != menu->ActiveEntry ) - { - menu->Window->State.Redisplay = GL_TRUE; - if( menu->ActiveEntry ) - menu->ActiveEntry->IsActive = GL_FALSE; - } - - menu->ActiveEntry = menuEntry; - menu->IsActive = GL_TRUE; /* XXX Do we need this? */ - - /* - * OKi, we have marked that entry as active, but it would be also - * nice to have its contents updated, in case it's a sub menu. - * Also, ignore the return value of the check function: - */ - if( menuEntry->SubMenu ) - { - if ( ! menuEntry->SubMenu->IsActive ) - { - int max_x, max_y; - SFG_Window *current_window = fgStructure.CurrentWindow; - - /* Set up the initial menu position now... */ - menuEntry->SubMenu->IsActive = GL_TRUE; - - /* Set up the initial submenu position now: */ - fghGetVMaxExtent(menu->ParentWindow, &max_x, &max_y); - menuEntry->SubMenu->X = menu->X + menu->Width; - menuEntry->SubMenu->Y = menu->Y + - menuEntry->Ordinal * FREEGLUT_MENU_HEIGHT; - - if( menuEntry->SubMenu->X + menuEntry->SubMenu->Width > max_x ) - menuEntry->SubMenu->X = menu->X - menuEntry->SubMenu->Width; - - if( menuEntry->SubMenu->Y + menuEntry->SubMenu->Height > max_y ) - { - menuEntry->SubMenu->Y -= ( menuEntry->SubMenu->Height - - FREEGLUT_MENU_HEIGHT - - 2 * FREEGLUT_MENU_BORDER ); - if( menuEntry->SubMenu->Y < 0 ) - menuEntry->SubMenu->Y = 0; - } - - fgSetWindow( menuEntry->SubMenu->Window ); - glutPositionWindow( menuEntry->SubMenu->X, - menuEntry->SubMenu->Y ); - glutReshapeWindow( menuEntry->SubMenu->Width, - menuEntry->SubMenu->Height ); - glutPopWindow( ); - glutShowWindow( ); - menuEntry->SubMenu->Window->ActiveMenu = menuEntry->SubMenu; - fgSetWindow( current_window ); - menuEntry->SubMenu->Window->State.MouseX = - x + menu->X - menuEntry->SubMenu->X; - menuEntry->SubMenu->Window->State.MouseY = - y + menu->Y - menuEntry->SubMenu->Y; - fghCheckMenuStatus( menuEntry->SubMenu ); - } - - /* Activate it because its parent entry is active */ - menuEntry->SubMenu->IsActive = GL_TRUE; /* XXX Do we need this? */ - } - - /* Report back that we have caught the menu cursor */ - return GL_TRUE; - } - - /* Looks like the menu cursor is somewhere else... */ - if( menu->ActiveEntry && menu->ActiveEntry->IsActive && - ( !menu->ActiveEntry->SubMenu || - !menu->ActiveEntry->SubMenu->IsActive ) ) - { - menu->Window->State.Redisplay = GL_TRUE; - menu->ActiveEntry->IsActive = GL_FALSE; - menu->ActiveEntry = NULL; - } - - return GL_FALSE; -} - -/* - * Displays a menu box and all of its submenus (if they are active) - */ -static void fghDisplayMenuBox( SFG_Menu* menu ) -{ - SFG_MenuEntry *menuEntry; - int i; - int border = FREEGLUT_MENU_BORDER; - - /* - * Have the menu box drawn first. The +- values are - * here just to make it more nice-looking... - */ - /* a non-black dark version of the below. */ - glColor4f( 1.0f, 1.0f, 1.0f, 1.0f ); - glBegin( GL_QUAD_STRIP ); - glVertex2i( menu->Width , 0 ); - glVertex2i( menu->Width - border, border); - glVertex2i( 0 , 0 ); - glVertex2i( border, border); - glVertex2i( 0 , menu->Height ); - glVertex2i( border, menu->Height - border); - glEnd( ); - - /* a non-black dark version of the below. */ - glColor4f( 0.5f, 0.5f, 0.5f, 1.0f ); - glBegin( GL_QUAD_STRIP ); - glVertex2i( 0 , menu->Height ); - glVertex2i( border, menu->Height - border); - glVertex2i( menu->Width , menu->Height ); - glVertex2i( menu->Width - border, menu->Height - border); - glVertex2i( menu->Width , 0 ); - glVertex2i( menu->Width - border, border); - glEnd( ); - - glColor4fv( menu_pen_back ); - glBegin( GL_QUADS ); - glVertex2i( border, border); - glVertex2i( menu->Width - border, border); - glVertex2i( menu->Width - border, menu->Height - border); - glVertex2i( border, menu->Height - border); - glEnd( ); - - /* Check if any of the submenus is currently active... */ - for( menuEntry = (SFG_MenuEntry *)menu->Entries.First; - menuEntry; - menuEntry = (SFG_MenuEntry *)menuEntry->Node.Next ) - { - /* Has the menu been marked as active, maybe? */ - if( menuEntry->IsActive ) - { - /* - * That's truly right, and we need to have it highlighted. - * There is an assumption that mouse cursor didn't move - * since the last check of menu activity state: - */ - int menuID = menuEntry->Ordinal; - - /* So have the highlight drawn... */ - glColor4fv( menu_pen_hback ); - glBegin( GL_QUADS ); - glVertex2i( border, - (menuID + 0)*FREEGLUT_MENU_HEIGHT + border ); - glVertex2i( menu->Width - border, - (menuID + 0)*FREEGLUT_MENU_HEIGHT + border ); - glVertex2i( menu->Width - border, - (menuID + 1)*FREEGLUT_MENU_HEIGHT + border ); - glVertex2i( border, - (menuID + 1)*FREEGLUT_MENU_HEIGHT + border ); - glEnd( ); - } - } - - /* Print the menu entries now... */ - - glColor4fv( menu_pen_fore ); - - for( menuEntry = (SFG_MenuEntry *)menu->Entries.First, i = 0; - menuEntry; - menuEntry = (SFG_MenuEntry *)menuEntry->Node.Next, ++i ) - { - /* If the menu entry is active, set the color to white */ - if( menuEntry->IsActive ) - glColor4fv( menu_pen_hfore ); - - /* Move the raster into position... */ - /* Try to center the text - JCJ 31 July 2003*/ - glRasterPos2i( - 2 * border, - ( i + 1 )*FREEGLUT_MENU_HEIGHT - - ( int )( FREEGLUT_MENU_HEIGHT*0.3 - border ) - ); - - /* Have the label drawn, character after character: */ - glutBitmapString( FREEGLUT_MENU_FONT, - (unsigned char *)menuEntry->Text); - - /* If it's a submenu, draw a right arrow */ - if( menuEntry->SubMenu ) - { - int width = glutBitmapWidth( FREEGLUT_MENU_FONT, '_' ); - int x_base = menu->Width - 2 - width; - int y_base = i*FREEGLUT_MENU_HEIGHT + border; - glBegin( GL_TRIANGLES ); - glVertex2i( x_base, y_base + 2*border); - glVertex2i( menu->Width - 2, y_base + - ( FREEGLUT_MENU_HEIGHT + border) / 2 ); - glVertex2i( x_base, y_base + FREEGLUT_MENU_HEIGHT - border ); - glEnd( ); - } - - /* If the menu entry is active, reset the color */ - if( menuEntry->IsActive ) - glColor4fv( menu_pen_fore ); - } -} - -/* - * Private static function to set the parent window of a submenu and all - * of its submenus - */ -static void fghSetMenuParentWindow( SFG_Window *window, SFG_Menu *menu ) -{ - SFG_MenuEntry *menuEntry; - - menu->ParentWindow = window; - - for( menuEntry = ( SFG_MenuEntry * )menu->Entries.First; - menuEntry; - menuEntry = ( SFG_MenuEntry * )menuEntry->Node.Next ) - if( menuEntry->SubMenu ) - fghSetMenuParentWindow( window, menuEntry->SubMenu ); -} - -/* - * Function to check for menu entry selection on menu deactivation - */ -static void fghExecuteMenuCallback( SFG_Menu* menu ) -{ - SFG_MenuEntry *menuEntry; - - /* First of all check any of the active sub menus... */ - for( menuEntry = (SFG_MenuEntry *)menu->Entries.First; - menuEntry; - menuEntry = (SFG_MenuEntry *)menuEntry->Node.Next) - { - if( menuEntry->IsActive ) - { - if( menuEntry->SubMenu ) - fghExecuteMenuCallback( menuEntry->SubMenu ); - else - if( menu->Callback ) - { - SFG_Menu *save_menu = fgStructure.CurrentMenu; - fgStructure.CurrentMenu = menu; - menu->Callback( menuEntry->ID ); - fgStructure.CurrentMenu = save_menu; - } - - return; - } - } -} - - -/* - * Displays the currently active menu for the current window - */ -void fgDisplayMenu( void ) -{ - SFG_Window* window = fgStructure.CurrentWindow; - SFG_Menu* menu = NULL; - - FREEGLUT_INTERNAL_ERROR_EXIT ( fgStructure.CurrentWindow, "Displaying menu in nonexistent window", - "fgDisplayMenu" ); - - /* Check if there is an active menu attached to this window... */ - menu = window->ActiveMenu; - freeglut_return_if_fail( menu ); - - fgSetWindow( menu->Window ); - - glPushAttrib( GL_DEPTH_BUFFER_BIT | GL_TEXTURE_BIT | GL_LIGHTING_BIT | - GL_POLYGON_BIT ); - - glDisable( GL_DEPTH_TEST ); - glDisable( GL_TEXTURE_2D ); - glDisable( GL_LIGHTING ); - glDisable( GL_CULL_FACE ); - - glMatrixMode( GL_PROJECTION ); - glPushMatrix( ); - glLoadIdentity( ); - glOrtho( - 0, glutGet( GLUT_WINDOW_WIDTH ), - glutGet( GLUT_WINDOW_HEIGHT ), 0, - -1, 1 - ); - - glMatrixMode( GL_MODELVIEW ); - glPushMatrix( ); - glLoadIdentity( ); - - fghDisplayMenuBox( menu ); - - glPopAttrib( ); - - glMatrixMode( GL_PROJECTION ); - glPopMatrix( ); - glMatrixMode( GL_MODELVIEW ); - glPopMatrix( ); - - glutSwapBuffers( ); - - fgSetWindow ( window ); -} - -/* - * Activates a menu pointed by the function argument - */ -static void fghActivateMenu( SFG_Window* window, int button ) -{ - int max_x, max_y; - - /* We'll be referencing this menu a lot, so remember its address: */ - SFG_Menu* menu = window->Menu[ button ]; - SFG_Window* current_window = fgStructure.CurrentWindow; - - /* If the menu is already active in another window, deactivate it there */ - if ( menu->ParentWindow ) - menu->ParentWindow->ActiveMenu = NULL ; - - /* Mark the menu as active, so that it gets displayed: */ - window->ActiveMenu = menu; - menu->IsActive = GL_TRUE; - fghSetMenuParentWindow ( window, menu ); - fgState.ActiveMenus++; - - /* Set up the initial menu position now: */ - fghGetVMaxExtent(menu->ParentWindow, &max_x, &max_y); - fgSetWindow( window ); - menu->X = window->State.MouseX + glutGet( GLUT_WINDOW_X ); - menu->Y = window->State.MouseY + glutGet( GLUT_WINDOW_Y ); - - if( menu->X + menu->Width > max_x ) - menu->X -=menu->Width; - - if( menu->Y + menu->Height > max_y ) - { - menu->Y -=menu->Height; - if( menu->Y < 0 ) - menu->Y = 0; - } - - menu->Window->State.MouseX = - window->State.MouseX + glutGet( GLUT_WINDOW_X ) - menu->X; - menu->Window->State.MouseY = - window->State.MouseY + glutGet( GLUT_WINDOW_Y ) - menu->Y; - - fgSetWindow( menu->Window ); - glutPositionWindow( menu->X, menu->Y ); - glutReshapeWindow( menu->Width, menu->Height ); - glutPopWindow( ); - glutShowWindow( ); - menu->Window->ActiveMenu = menu; - fghCheckMenuStatus( menu ); - fgSetWindow( current_window ); -} - -/* - * Update Highlight states of the menu - * - * Current mouse position is in menu->Window->State.MouseX/Y. - */ -void fgUpdateMenuHighlight ( SFG_Menu *menu ) -{ - fghCheckMenuStatus( menu ); -} - -/* - * Check whether an active menu absorbs a mouse click - */ -GLboolean fgCheckActiveMenu ( SFG_Window *window, int button, GLboolean pressed, - int mouse_x, int mouse_y ) -{ - /* - * Near as I can tell, this is the menu behaviour: - * - Down-click the menu button, menu not active: activate - * the menu with its upper left-hand corner at the mouse - * location. - * - Down-click any button outside the menu, menu active: - * deactivate the menu - * - Down-click any button inside the menu, menu active: - * select the menu entry and deactivate the menu - * - Up-click the menu button, menu not active: nothing happens - * - Up-click the menu button outside the menu, menu active: - * nothing happens - * - Up-click the menu button inside the menu, menu active: - * select the menu entry and deactivate the menu - * Since menus can have submenus, we need to check this recursively. - */ - if( window->ActiveMenu ) - { - if( window == window->ActiveMenu->ParentWindow ) - { - window->ActiveMenu->Window->State.MouseX = - mouse_x - window->ActiveMenu->X; - window->ActiveMenu->Window->State.MouseY = - mouse_y - window->ActiveMenu->Y; - } - - /* In the menu, invoke the callback and deactivate the menu */ - if( fghCheckMenuStatus( window->ActiveMenu ) ) - { - /* - * Save the current window and menu and set the current - * window to the window whose menu this is - */ - SFG_Window *save_window = fgStructure.CurrentWindow; - SFG_Menu *save_menu = fgStructure.CurrentMenu; - SFG_Window *parent_window = window->ActiveMenu->ParentWindow; - fgSetWindow( parent_window ); - fgStructure.CurrentMenu = window->ActiveMenu; - - /* Execute the menu callback */ - fghExecuteMenuCallback( window->ActiveMenu ); - fgDeactivateMenu( parent_window ); - - /* Restore the current window and menu */ - fgSetWindow( save_window ); - fgStructure.CurrentMenu = save_menu; - } - else if( pressed ) - /* - * Outside the menu, deactivate if it's a downclick - * - * XXX This isn't enough. A downclick outside of - * XXX the interior of our freeglut windows should also - * XXX deactivate the menu. This is more complicated. - */ - fgDeactivateMenu( window->ActiveMenu->ParentWindow ); - - /* - * XXX Why does an active menu require a redisplay at - * XXX this point? If this can come out cleanly, then - * XXX it probably should do so; if not, a comment should - * XXX explain it. - */ - if( ! window->IsMenu ) - window->State.Redisplay = GL_TRUE; - - return GL_TRUE; - } - - /* No active menu, let's check whether we need to activate one. */ - if( ( 0 <= button ) && - ( FREEGLUT_MAX_MENUS > button ) && - ( window->Menu[ button ] ) && - pressed ) - { - /* XXX Posting a requisite Redisplay seems bogus. */ - window->State.Redisplay = GL_TRUE; - fghActivateMenu( window, button ); - return GL_TRUE; - } - - return GL_FALSE; -} - -/* - * Deactivates a menu pointed by the function argument. - */ -void fgDeactivateMenu( SFG_Window *window ) -{ - SFG_Window *parent_window = NULL; - - /* Check if there is an active menu attached to this window... */ - SFG_Menu* menu = window->ActiveMenu; - SFG_MenuEntry *menuEntry; - - /* Did we find an active window? */ - freeglut_return_if_fail( menu ); - - parent_window = menu->ParentWindow; - - /* Hide the present menu's window */ - fgSetWindow( menu->Window ); - glutHideWindow( ); - - /* Forget about having that menu active anymore, now: */ - menu->Window->ActiveMenu = NULL; - menu->ParentWindow->ActiveMenu = NULL; - fghSetMenuParentWindow ( NULL, menu ); - menu->IsActive = GL_FALSE; - menu->ActiveEntry = NULL; - - fgState.ActiveMenus--; - - /* Hide all submenu windows, and the root menu's window. */ - for ( menuEntry = ( SFG_MenuEntry * )menu->Entries.First; - menuEntry; - menuEntry = ( SFG_MenuEntry * )menuEntry->Node.Next ) - { - menuEntry->IsActive = GL_FALSE; - - /* Is that an active submenu by any case? */ - if( menuEntry->SubMenu ) - fghDeactivateSubMenu( menuEntry ); - } - - fgSetWindow ( parent_window ) ; -} - -/* - * Recalculates current menu's box size - */ -void fghCalculateMenuBoxSize( void ) -{ - SFG_MenuEntry* menuEntry; - int width = 0, height = 0; - - /* Make sure there is a current menu set */ - freeglut_return_if_fail( fgStructure.CurrentMenu ); - - /* The menu's box size depends on the menu entries: */ - for( menuEntry = ( SFG_MenuEntry * )fgStructure.CurrentMenu->Entries.First; - menuEntry; - menuEntry = ( SFG_MenuEntry * )menuEntry->Node.Next ) - { - /* Update the menu entry's width value */ - menuEntry->Width = glutBitmapLength( - FREEGLUT_MENU_FONT, - (unsigned char *)menuEntry->Text - ); - - /* - * If the entry is a submenu, then it needs to be wider to - * accomodate the arrow. JCJ 31 July 2003 - */ - if (menuEntry->SubMenu ) - menuEntry->Width += glutBitmapLength( - FREEGLUT_MENU_FONT, - (unsigned char *)"_" - ); - - /* Check if it's the biggest we've found */ - if( menuEntry->Width > width ) - width = menuEntry->Width; - - height += FREEGLUT_MENU_HEIGHT; - } - - /* Store the menu's box size now: */ - fgStructure.CurrentMenu->Height = height + 2 * FREEGLUT_MENU_BORDER; - fgStructure.CurrentMenu->Width = width + 4 * FREEGLUT_MENU_BORDER; -} - - -/* -- INTERFACE FUNCTIONS -------------------------------------------------- */ - -/* - * Creates a new menu object, adding it to the freeglut structure - */ -int FGAPIENTRY glutCreateMenu( void(* callback)( int ) ) -{ - /* The menu object creation code resides in freeglut_structure.c */ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutCreateMenu" ); - return fgCreateMenu( callback )->ID; -} - -#if TARGET_HOST_MS_WINDOWS -int FGAPIENTRY __glutCreateMenuWithExit( void(* callback)( int ), void (__cdecl *exit_function)(int) ) -{ - __glutExitFunc = exit_function; - return glutCreateMenu( callback ); -} -#endif - -/* - * Destroys a menu object, removing all references to it - */ -void FGAPIENTRY glutDestroyMenu( int menuID ) -{ - SFG_Menu* menu; - - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutDestroyMenu" ); - menu = fgMenuByID( menuID ); - - freeglut_return_if_fail( menu ); - - /* The menu object destruction code resides in freeglut_structure.c */ - fgDestroyMenu( menu ); -} - -/* - * Returns the ID number of the currently active menu - */ -int FGAPIENTRY glutGetMenu( void ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutGetMenu" ); - - if( fgStructure.CurrentMenu ) - return fgStructure.CurrentMenu->ID; - - return 0; -} - -/* - * Sets the current menu given its menu ID - */ -void FGAPIENTRY glutSetMenu( int menuID ) -{ - SFG_Menu* menu; - - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutSetMenu" ); - menu = fgMenuByID( menuID ); - - freeglut_return_if_fail( menu ); - - fgStructure.CurrentMenu = menu; -} - -/* - * Adds a menu entry to the bottom of the current menu - */ -void FGAPIENTRY glutAddMenuEntry( const char* label, int value ) -{ - SFG_MenuEntry* menuEntry; - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutAddMenuEntry" ); - menuEntry = (SFG_MenuEntry *)calloc( sizeof(SFG_MenuEntry), 1 ); - freeglut_return_if_fail( fgStructure.CurrentMenu ); - - menuEntry->Text = strdup( label ); - menuEntry->ID = value; - - /* Have the new menu entry attached to the current menu */ - fgListAppend( &fgStructure.CurrentMenu->Entries, &menuEntry->Node ); - - fghCalculateMenuBoxSize( ); -} - -/* - * Add a sub menu to the bottom of the current menu - */ -void FGAPIENTRY glutAddSubMenu( const char *label, int subMenuID ) -{ - SFG_MenuEntry *menuEntry; - SFG_Menu *subMenu; - - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutAddSubMenu" ); - menuEntry = ( SFG_MenuEntry * )calloc( sizeof( SFG_MenuEntry ), 1 ); - subMenu = fgMenuByID( subMenuID ); - - freeglut_return_if_fail( fgStructure.CurrentMenu ); - freeglut_return_if_fail( subMenu ); - - menuEntry->Text = strdup( label ); - menuEntry->SubMenu = subMenu; - menuEntry->ID = -1; - - fgListAppend( &fgStructure.CurrentMenu->Entries, &menuEntry->Node ); - fghCalculateMenuBoxSize( ); -} - -/* - * Changes the specified menu item in the current menu into a menu entry - */ -void FGAPIENTRY glutChangeToMenuEntry( int item, const char* label, int value ) -{ - SFG_MenuEntry* menuEntry = NULL; - - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutChangeToMenuEntry" ); - freeglut_return_if_fail( fgStructure.CurrentMenu ); - - /* Get n-th menu entry in the current menu, starting from one: */ - menuEntry = fghFindMenuEntry( fgStructure.CurrentMenu, item ); - - freeglut_return_if_fail( menuEntry ); - - /* We want it to become a normal menu entry, so: */ - if( menuEntry->Text ) - free( menuEntry->Text ); - - menuEntry->Text = strdup( label ); - menuEntry->ID = value; - menuEntry->SubMenu = NULL; - fghCalculateMenuBoxSize( ); -} - -/* - * Changes the specified menu item in the current menu into a sub-menu trigger. - */ -void FGAPIENTRY glutChangeToSubMenu( int item, const char* label, - int subMenuID ) -{ - SFG_Menu* subMenu; - SFG_MenuEntry* menuEntry; - - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutChangeToSubMenu" ); - subMenu = fgMenuByID( subMenuID ); - menuEntry = NULL; - - freeglut_return_if_fail( fgStructure.CurrentMenu ); - freeglut_return_if_fail( subMenu ); - - /* Get n-th menu entry in the current menu, starting from one: */ - menuEntry = fghFindMenuEntry( fgStructure.CurrentMenu, item ); - - freeglut_return_if_fail( menuEntry ); - - /* We want it to become a sub menu entry, so: */ - if( menuEntry->Text ) - free( menuEntry->Text ); - - menuEntry->Text = strdup( label ); - menuEntry->SubMenu = subMenu; - menuEntry->ID = -1; - fghCalculateMenuBoxSize( ); -} - -/* - * Removes the specified menu item from the current menu - */ -void FGAPIENTRY glutRemoveMenuItem( int item ) -{ - SFG_MenuEntry* menuEntry; - - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutRemoveMenuItem" ); - freeglut_return_if_fail( fgStructure.CurrentMenu ); - - /* Get n-th menu entry in the current menu, starting from one: */ - menuEntry = fghFindMenuEntry( fgStructure.CurrentMenu, item ); - - freeglut_return_if_fail( menuEntry ); - - fgListRemove( &fgStructure.CurrentMenu->Entries, &menuEntry->Node ); - if ( menuEntry->Text ) - free( menuEntry->Text ); - - free( menuEntry ); - fghCalculateMenuBoxSize( ); -} - -/* - * Attaches a menu to the current window - */ -void FGAPIENTRY glutAttachMenu( int button ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutAttachMenu" ); - - freeglut_return_if_fail( fgStructure.CurrentWindow ); - freeglut_return_if_fail( fgStructure.CurrentMenu ); - - freeglut_return_if_fail( button >= 0 ); - freeglut_return_if_fail( button < FREEGLUT_MAX_MENUS ); - - fgStructure.CurrentWindow->Menu[ button ] = fgStructure.CurrentMenu; -} - -/* - * Detaches a menu from the current window - */ -void FGAPIENTRY glutDetachMenu( int button ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutDetachMenu" ); - - freeglut_return_if_fail( fgStructure.CurrentWindow ); - freeglut_return_if_fail( fgStructure.CurrentMenu ); - - freeglut_return_if_fail( button >= 0 ); - freeglut_return_if_fail( button < FREEGLUT_MAX_MENUS ); - - fgStructure.CurrentWindow->Menu[ button ] = NULL; -} - -/* - * A.Donev: Set and retrieve the menu's user data - */ -void* FGAPIENTRY glutGetMenuData( void ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutGetMenuData" ); - return fgStructure.CurrentMenu->UserData; -} - -void FGAPIENTRY glutSetMenuData(void* data) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutSetMenuData" ); - fgStructure.CurrentMenu->UserData=data; -} - -/*** END OF FILE ***/ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_misc.c b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_misc.c deleted file mode 100644 index d0a65bd..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_misc.c +++ /dev/null @@ -1,214 +0,0 @@ -/* - * freeglut_misc.c - * - * Functions that didn't fit anywhere else... - * - * Copyright (c) 1999-2000 Pawel W. Olszta. All Rights Reserved. - * Written by Pawel W. Olszta, - * Creation date: Thu Dec 9 1999 - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included - * in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - * PAWEL W. OLSZTA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER - * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - */ - -#include "freeglut.h" -#include "freeglut_internal.h" - -/* - * TODO BEFORE THE STABLE RELEASE: - * - * glutSetColor() -- - * glutGetColor() -- - * glutCopyColormap() -- - * glutSetKeyRepeat() -- this is evil and should be removed from API - */ - -/* -- INTERFACE FUNCTIONS -------------------------------------------------- */ - -/* - * This functions checks if an OpenGL extension is supported or not - * - * XXX Wouldn't this be simpler and clearer if we used strtok()? - */ -int FGAPIENTRY glutExtensionSupported( const char* extension ) -{ - const char *extensions, *start; - const size_t len = strlen( extension ); - - /* Make sure there is a current window, and thus a current context available */ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutExtensionSupported" ); - freeglut_return_val_if_fail( fgStructure.CurrentWindow != NULL, 0 ); - - if (strchr(extension, ' ')) - return 0; - start = extensions = (const char *) glGetString(GL_EXTENSIONS); - - /* XXX consider printing a warning to stderr that there's no current - * rendering context. - */ - freeglut_return_val_if_fail( extensions != NULL, 0 ); - - while (1) { - const char *p = strstr(extensions, extension); - if (!p) - return 0; /* not found */ - /* check that the match isn't a super string */ - if ((p == start || p[-1] == ' ') && (p[len] == ' ' || p[len] == 0)) - return 1; - /* skip the false match and continue */ - extensions = p + len; - } - - return 0 ; -} - -#ifndef GL_INVALID_FRAMEBUFFER_OPERATION -#ifdef GL_INVALID_FRAMEBUFFER_OPERATION_EXT -#define GL_INVALID_FRAMEBUFFER_OPERATION GL_INVALID_FRAMEBUFFER_OPERATION_EXT -#else -#define GL_INVALID_FRAMEBUFFER_OPERATION 0x0506 -#endif -#endif - -#ifndef GL_TABLE_TOO_LARGE -#ifdef GL_TABLE_TOO_LARGE_EXT -#define GL_TABLE_TOO_LARGE GL_TABLE_TOO_LARGE_EXT -#else -#define GL_TABLE_TOO_LARGE 0x8031 -#endif -#endif - -#ifndef GL_TEXTURE_TOO_LARGE -#ifdef GL_TEXTURE_TOO_LARGE_EXT -#define GL_TEXTURE_TOO_LARGE GL_TEXTURE_TOO_LARGE_EXT -#else -#define GL_TEXTURE_TOO_LARGE 0x8065 -#endif -#endif - -/* - * A cut-down local version of gluErrorString to avoid depending on GLU. - */ -static const char* fghErrorString( GLenum error ) -{ - switch ( error ) { - case GL_INVALID_ENUM: return "invalid enumerant"; - case GL_INVALID_VALUE: return "invalid value"; - case GL_INVALID_OPERATION: return "invalid operation"; - case GL_STACK_OVERFLOW: return "stack overflow"; - case GL_STACK_UNDERFLOW: return "stack underflow"; - case GL_OUT_OF_MEMORY: return "out of memory"; - case GL_TABLE_TOO_LARGE: return "table too large"; - case GL_INVALID_FRAMEBUFFER_OPERATION: return "invalid framebuffer operation"; - case GL_TEXTURE_TOO_LARGE: return "texture too large"; - default: return "unknown GL error"; - } -} - -/* - * This function reports all the OpenGL errors that happened till now - */ -void FGAPIENTRY glutReportErrors( void ) -{ - GLenum error; - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutReportErrors" ); - while( ( error = glGetError() ) != GL_NO_ERROR ) - fgWarning( "GL error: %s", fghErrorString( error ) ); -} - -/* - * Control the auto-repeat of keystrokes to the current window - */ -void FGAPIENTRY glutIgnoreKeyRepeat( int ignore ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutIgnoreKeyRepeat" ); - FREEGLUT_EXIT_IF_NO_WINDOW ( "glutIgnoreKeyRepeat" ); - - fgStructure.CurrentWindow->State.IgnoreKeyRepeat = ignore ? GL_TRUE : GL_FALSE; -} - -/* - * Set global auto-repeat of keystrokes - * - * RepeatMode should be either: - * GLUT_KEY_REPEAT_OFF - * GLUT_KEY_REPEAT_ON - * GLUT_KEY_REPEAT_DEFAULT - */ -void FGAPIENTRY glutSetKeyRepeat( int repeatMode ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutSetKeyRepeat" ); - - switch( repeatMode ) - { - case GLUT_KEY_REPEAT_OFF: - case GLUT_KEY_REPEAT_ON: - fgState.KeyRepeat = repeatMode; - break; - - case GLUT_KEY_REPEAT_DEFAULT: - fgState.KeyRepeat = GLUT_KEY_REPEAT_ON; - break; - - default: - fgError ("Invalid glutSetKeyRepeat mode: %d", repeatMode); - break; - } -} - -/* - * Forces the joystick callback to be executed - */ -void FGAPIENTRY glutForceJoystickFunc( void ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutForceJoystickFunc" ); -#if !defined(_WIN32_WCE) - freeglut_return_if_fail( fgStructure.CurrentWindow != NULL ); - freeglut_return_if_fail( FETCH_WCB( *( fgStructure.CurrentWindow ), Joystick ) ); - fgJoystickPollWindow( fgStructure.CurrentWindow ); -#endif /* !defined(_WIN32_WCE) */ -} - -/* - * - */ -void FGAPIENTRY glutSetColor( int nColor, GLfloat red, GLfloat green, GLfloat blue ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutSetColor" ); - /* We really need to do something here. */ -} - -/* - * - */ -GLfloat FGAPIENTRY glutGetColor( int color, int component ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutGetColor" ); - /* We really need to do something here. */ - return( 0.0f ); -} - -/* - * - */ -void FGAPIENTRY glutCopyColormap( int window ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutCopyColormap" ); - /* We really need to do something here. */ -} - -/*** END OF FILE ***/ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_overlay.c b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_overlay.c deleted file mode 100644 index fbc3250..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_overlay.c +++ /dev/null @@ -1,45 +0,0 @@ -/* - * freeglut_overlay.c - * - * Overlay management functions (as defined by GLUT API) - * - * Copyright (c) 1999-2000 Pawel W. Olszta. All Rights Reserved. - * Written by Pawel W. Olszta, - * Creation date: Thu Dec 16 1999 - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included - * in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - * PAWEL W. OLSZTA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER - * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - */ - -#include "freeglut.h" -#include "freeglut_internal.h" - -/* - * NOTE: functions declared in this file probably will not be implemented. - */ - -/* -- INTERFACE FUNCTIONS -------------------------------------------------- */ - -void FGAPIENTRY glutEstablishOverlay( void ) { /* Not implemented */ } -void FGAPIENTRY glutRemoveOverlay( void ) { /* Not implemented */ } -void FGAPIENTRY glutUseLayer( GLenum layer ) { /* Not implemented */ } -void FGAPIENTRY glutPostOverlayRedisplay( void ) { /* Not implemented */ } -void FGAPIENTRY glutPostWindowOverlayRedisplay( int ID ) { /* Not implemented */ } -void FGAPIENTRY glutShowOverlay( void ) { /* Not implemented */ } -void FGAPIENTRY glutHideOverlay( void ) { /* Not implemented */ } - -/*** END OF FILE ***/ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_spaceball.c b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_spaceball.c deleted file mode 100644 index a92a75c..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_spaceball.c +++ /dev/null @@ -1,454 +0,0 @@ -/* Spaceball support for Linux. - * Written by John Tsiombikas - * - * This code supports 3Dconnexion's 6-dof space-whatever devices. - * It can communicate with either the proprietary 3Dconnexion daemon (3dxsrv) - * free spacenavd (http://spacenav.sourceforge.net), through the "standard" - * magellan X-based protocol. - */ - -#include "freeglut.h" -#include "freeglut_internal.h" - -#if TARGET_HOST_POSIX_X11 -#include - -enum { - SPNAV_EVENT_ANY, /* used by spnav_remove_events() */ - SPNAV_EVENT_MOTION, - SPNAV_EVENT_BUTTON /* includes both press and release */ -}; - -struct spnav_event_motion { - int type; - int x, y, z; - int rx, ry, rz; - unsigned int period; - int *data; -}; - -struct spnav_event_button { - int type; - int press; - int bnum; -}; - -typedef union spnav_event { - int type; - struct spnav_event_motion motion; - struct spnav_event_button button; -} spnav_event; - - -static int spnav_x11_open(Display *dpy, Window win); -static int spnav_x11_window(Window win); -static int spnav_x11_event(const XEvent *xev, spnav_event *event); -static int spnav_close(void); -static int spnav_fd(void); -static int spnav_remove_events(int type); - -static SFG_Window *spnav_win; -#endif - -static int sball_initialized; - - -void fgInitialiseSpaceball(void) -{ - if(sball_initialized) { - return; - } - -#if TARGET_HOST_POSIX_X11 - { - Window w; - - if(!fgStructure.CurrentWindow) - return; - - w = fgStructure.CurrentWindow->Window.Handle; - if(spnav_x11_open(fgDisplay.Display, w) == -1) { - return; - } - } -#endif - - sball_initialized = 1; -} - -void fgSpaceballClose(void) -{ -#if TARGET_HOST_POSIX_X11 - spnav_close(); -#endif -} - -int fgHasSpaceball(void) -{ - if(!sball_initialized) { - fgInitialiseSpaceball(); - if(!sball_initialized) { - fgWarning("fgInitialiseSpaceball failed\n"); - return 0; - } - } - -#if TARGET_HOST_POSIX_X11 - /* XXX this function should somehow query the driver if there's a device - * plugged in, as opposed to just checking if there's a driver to talk to. - */ - return spnav_fd() == -1 ? 0 : 1; -#else - return 0; -#endif -} - -int fgSpaceballNumButtons(void) -{ - if(!sball_initialized) { - fgInitialiseSpaceball(); - if(!sball_initialized) { - fgWarning("fgInitialiseSpaceball failed\n"); - return 0; - } - } - -#if TARGET_HOST_POSIX_X11 - return 2; /* TODO implement this properly */ -#else - return 0; -#endif -} - -void fgSpaceballSetWindow(SFG_Window *window) -{ - if(!sball_initialized) { - fgInitialiseSpaceball(); - if(!sball_initialized) { - return; - } - } - -#if TARGET_HOST_POSIX_X11 - if(spnav_win != window) { - spnav_x11_window(window->Window.Handle); - spnav_win = window; - } -#endif -} - - -#if TARGET_HOST_POSIX_X11 -int fgIsSpaceballXEvent(const XEvent *xev) -{ - spnav_event sev; - - if(!sball_initialized) { - fgInitialiseSpaceball(); - if(!sball_initialized) { - return 0; - } - } - - return spnav_x11_event(xev, &sev); -} - -void fgSpaceballHandleXEvent(const XEvent *xev) -{ - spnav_event sev; - - if(!sball_initialized) { - fgInitialiseSpaceball(); - if(!sball_initialized) { - return; - } - } - - if(spnav_x11_event(xev, &sev)) { - switch(sev.type) { - case SPNAV_EVENT_MOTION: - if(sev.motion.x | sev.motion.y | sev.motion.z) { - INVOKE_WCB(*spnav_win, SpaceMotion, (sev.motion.x, sev.motion.y, sev.motion.z)); - } - if(sev.motion.rx | sev.motion.ry | sev.motion.rz) { - INVOKE_WCB(*spnav_win, SpaceRotation, (sev.motion.rx, sev.motion.ry, sev.motion.rz)); - } - spnav_remove_events(SPNAV_EVENT_MOTION); - break; - - case SPNAV_EVENT_BUTTON: - INVOKE_WCB(*spnav_win, SpaceButton, (sev.button.bnum, sev.button.press ? GLUT_DOWN : GLUT_UP)); - break; - - default: - break; - } - } -} - -/* -The following code is part of libspnav, part of the spacenav project (spacenav.sf.net) -Copyright (C) 2007-2009 John Tsiombikas - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - -1. Redistributions of source code must retain the above copyright notice, this - list of conditions and the following disclaimer. -2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. -3. The name of the author may not be used to endorse or promote products - derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED -WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO -EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, -EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT -OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING -IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY -OF SUCH DAMAGE. -*/ -#include -#include -#include -#include - -#include -#include - -static Window get_daemon_window(Display *dpy); -static int catch_badwin(Display *dpy, XErrorEvent *err); - -static Display *dpy; -static Window app_win; -static Atom motion_event, button_press_event, button_release_event, command_event; - -enum { - CMD_APP_WINDOW = 27695, - CMD_APP_SENS -}; - -#define IS_OPEN dpy - -struct event_node { - spnav_event event; - struct event_node *next; -}; - -static int spnav_x11_open(Display *display, Window win) -{ - if(IS_OPEN) { - return -1; - } - - dpy = display; - - motion_event = XInternAtom(dpy, "MotionEvent", True); - button_press_event = XInternAtom(dpy, "ButtonPressEvent", True); - button_release_event = XInternAtom(dpy, "ButtonReleaseEvent", True); - command_event = XInternAtom(dpy, "CommandEvent", True); - - if(!motion_event || !button_press_event || !button_release_event || !command_event) { - dpy = 0; - return -1; /* daemon not started */ - } - - if(spnav_x11_window(win) == -1) { - dpy = 0; - return -1; /* daemon not started */ - } - - app_win = win; - return 0; -} - -static int spnav_close(void) -{ - if(dpy) { - spnav_x11_window(DefaultRootWindow(dpy)); - app_win = 0; - dpy = 0; - return 0; - } - return -1; -} - -static int spnav_x11_window(Window win) -{ - int (*prev_xerr_handler)(Display*, XErrorEvent*); - XEvent xev; - Window daemon_win; - - if(!IS_OPEN) { - return -1; - } - - if(!(daemon_win = get_daemon_window(dpy))) { - return -1; - } - - prev_xerr_handler = XSetErrorHandler(catch_badwin); - - xev.type = ClientMessage; - xev.xclient.send_event = False; - xev.xclient.display = dpy; - xev.xclient.window = win; - xev.xclient.message_type = command_event; - xev.xclient.format = 16; - xev.xclient.data.s[0] = ((unsigned int)win & 0xffff0000) >> 16; - xev.xclient.data.s[1] = (unsigned int)win & 0xffff; - xev.xclient.data.s[2] = CMD_APP_WINDOW; - - XSendEvent(dpy, daemon_win, False, 0, &xev); - XSync(dpy, False); - - XSetErrorHandler(prev_xerr_handler); - return 0; -} - -static int spnav_fd(void) -{ - if(dpy) { - return ConnectionNumber(dpy); - } - return -1; -} - -/*static int spnav_wait_event(spnav_event *event) -{ - if(dpy) { - for(;;) { - XEvent xev; - XNextEvent(dpy, &xev); - - if(spnav_x11_event(&xev, event) > 0) { - return event->type; - } - } - } - return 0; -} - -static int spnav_poll_event(spnav_event *event) -{ - if(dpy) { - if(XPending(dpy)) { - XEvent xev; - XNextEvent(dpy, &xev); - - return spnav_x11_event(&xev, event); - } - } - return 0; -}*/ - -static Bool match_events(Display *dpy, XEvent *xev, char *arg) -{ - int evtype = *(int*)arg; - - if(xev->type != ClientMessage) { - return False; - } - - if(xev->xclient.message_type == motion_event) { - return !evtype || evtype == SPNAV_EVENT_MOTION ? True : False; - } - if(xev->xclient.message_type == button_press_event || - xev->xclient.message_type == button_release_event) { - return !evtype || evtype == SPNAV_EVENT_BUTTON ? True : False; - } - return False; -} - -static int spnav_remove_events(int type) -{ - int rm_count = 0; - - if(dpy) { - XEvent xev; - - while(XCheckIfEvent(dpy, &xev, match_events, (char*)&type)) { - rm_count++; - } - return rm_count; - } - return 0; -} - -static int spnav_x11_event(const XEvent *xev, spnav_event *event) -{ - int i; - int xmsg_type; - - if(xev->type != ClientMessage) { - return 0; - } - - xmsg_type = xev->xclient.message_type; - - if(xmsg_type != motion_event && xmsg_type != button_press_event && - xmsg_type != button_release_event) { - return 0; - } - - if(xmsg_type == motion_event) { - event->type = SPNAV_EVENT_MOTION; - event->motion.data = &event->motion.x; - - for(i=0; i<6; i++) { - event->motion.data[i] = xev->xclient.data.s[i + 2]; - } - event->motion.period = xev->xclient.data.s[8]; - } else { - event->type = SPNAV_EVENT_BUTTON; - event->button.press = xmsg_type == button_press_event ? 1 : 0; - event->button.bnum = xev->xclient.data.s[2]; - } - return event->type; -} - - -static Window get_daemon_window(Display *dpy) -{ - Window win, root_win; - XTextProperty wname; - Atom type; - int fmt; - unsigned long nitems, bytes_after; - unsigned char *prop; - - root_win = DefaultRootWindow(dpy); - - XGetWindowProperty(dpy, root_win, command_event, 0, 1, False, AnyPropertyType, &type, &fmt, &nitems, &bytes_after, &prop); - if(!prop) { - return 0; - } - - win = *(Window*)prop; - XFree(prop); - - if(!XGetWMName(dpy, win, &wname) || strcmp("Magellan Window", (char*)wname.value) != 0) { - return 0; - } - - return win; -} - -static int catch_badwin(Display *dpy, XErrorEvent *err) -{ - char buf[256]; - - if(err->error_code == BadWindow) { - /* do nothing? */ - } else { - XGetErrorText(dpy, err->error_code, buf, sizeof buf); - fprintf(stderr, "Caught unexpected X error: %s\n", buf); - } - return 0; -} - -#endif /* TARGET_HOST_POSIX_X11 */ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_state.c b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_state.c deleted file mode 100644 index 783e7b4..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_state.c +++ /dev/null @@ -1,895 +0,0 @@ -/* - * freeglut_state.c - * - * Freeglut state query methods. - * - * Copyright (c) 1999-2000 Pawel W. Olszta. All Rights Reserved. - * Written by Pawel W. Olszta, - * Creation date: Thu Dec 16 1999 - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included - * in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - * PAWEL W. OLSZTA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER - * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - */ - -#include "freeglut.h" -#include "freeglut_internal.h" - -/* - * TODO BEFORE THE STABLE RELEASE: - * - * glutGet() -- X11 tests passed, but check if all enums - * handled (what about Win32?) - * glutDeviceGet() -- X11 tests passed, but check if all enums - * handled (what about Win32?) - * glutGetModifiers() -- OK, but could also remove the limitation - * glutLayerGet() -- what about GLUT_NORMAL_DAMAGED? - * - * The fail-on-call policy will help adding the most needed things imho. - */ - -/* -- LOCAL DEFINITIONS ---------------------------------------------------- */ - -/* -- PRIVATE FUNCTIONS ---------------------------------------------------- */ - -#if TARGET_HOST_POSIX_X11 -/* - * Queries the GL context about some attributes - */ -static int fghGetConfig( int attribute ) -{ - int returnValue = 0; - int result; /* Not checked */ - - if( fgStructure.CurrentWindow ) - result = glXGetFBConfigAttrib( fgDisplay.Display, - *(fgStructure.CurrentWindow->Window.FBConfig), - attribute, - &returnValue ); - - return returnValue; -} -#endif - -/* Check if the window is in full screen state. */ -static int fghCheckFullScreen(void) -{ -#if TARGET_HOST_POSIX_X11 - return fgStructure.CurrentWindow->State.IsFullscreen; -#else - return 0; -#endif -} - -/* -- INTERFACE FUNCTIONS -------------------------------------------------- */ - -/* - * General settings assignment method - */ -void FGAPIENTRY glutSetOption( GLenum eWhat, int value ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutSetOption" ); - - /* - * XXX In chronological code add order. (WHY in that order?) - */ - switch( eWhat ) - { - case GLUT_INIT_WINDOW_X: - fgState.Position.X = (GLint)value; - break; - - case GLUT_INIT_WINDOW_Y: - fgState.Position.Y = (GLint)value; - break; - - case GLUT_INIT_WINDOW_WIDTH: - fgState.Size.X = (GLint)value; - break; - - case GLUT_INIT_WINDOW_HEIGHT: - fgState.Size.Y = (GLint)value; - break; - - case GLUT_INIT_DISPLAY_MODE: - fgState.DisplayMode = (unsigned int)value; - break; - - case GLUT_ACTION_ON_WINDOW_CLOSE: - fgState.ActionOnWindowClose = value; - break; - - case GLUT_RENDERING_CONTEXT: - fgState.UseCurrentContext = - ( value == GLUT_USE_CURRENT_CONTEXT ) ? GL_TRUE : GL_FALSE; - break; - - case GLUT_DIRECT_RENDERING: - fgState.DirectContext = value; - break; - - case GLUT_WINDOW_CURSOR: - if( fgStructure.CurrentWindow != NULL ) - fgStructure.CurrentWindow->State.Cursor = value; - break; - - case GLUT_AUX: - fgState.AuxiliaryBufferNumber = value; - break; - - case GLUT_MULTISAMPLE: - fgState.SampleNumber = value; - break; - - default: - fgWarning( "glutSetOption(): missing enum handle %d", eWhat ); - break; - } -} - -#if TARGET_HOST_MS_WINDOWS -/* The following include file is available from SGI but is not standard: - * #include - * So we copy the necessary parts out of it to support the multisampling query - */ -#define WGL_SAMPLES_ARB 0x2042 -#endif - - -/* - * General settings query method - */ -int FGAPIENTRY glutGet( GLenum eWhat ) -{ -#if TARGET_HOST_MS_WINDOWS - int returnValue ; - GLboolean boolValue ; -#endif - - int nsamples = 0; - - switch (eWhat) - { - case GLUT_INIT_STATE: - return fgState.Initialised; - - case GLUT_ELAPSED_TIME: - return fgElapsedTime(); - } - - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutGet" ); - - /* XXX In chronological code add order. (WHY in that order?) */ - switch( eWhat ) - { - /* Following values are stored in fgState and fgDisplay global structures */ - case GLUT_SCREEN_WIDTH: return fgDisplay.ScreenWidth ; - case GLUT_SCREEN_HEIGHT: return fgDisplay.ScreenHeight ; - case GLUT_SCREEN_WIDTH_MM: return fgDisplay.ScreenWidthMM ; - case GLUT_SCREEN_HEIGHT_MM: return fgDisplay.ScreenHeightMM; - case GLUT_INIT_WINDOW_X: return fgState.Position.Use ? - fgState.Position.X : -1 ; - case GLUT_INIT_WINDOW_Y: return fgState.Position.Use ? - fgState.Position.Y : -1 ; - case GLUT_INIT_WINDOW_WIDTH: return fgState.Size.Use ? - fgState.Size.X : -1 ; - case GLUT_INIT_WINDOW_HEIGHT: return fgState.Size.Use ? - fgState.Size.Y : -1 ; - case GLUT_INIT_DISPLAY_MODE: return fgState.DisplayMode ; - case GLUT_INIT_MAJOR_VERSION: return fgState.MajorVersion ; - case GLUT_INIT_MINOR_VERSION: return fgState.MinorVersion ; - case GLUT_INIT_FLAGS: return fgState.ContextFlags ; - case GLUT_INIT_PROFILE: return fgState.ContextProfile ; - -#if TARGET_HOST_POSIX_X11 - /* - * The window/context specific queries are handled mostly by - * fghGetConfig(). - */ - case GLUT_WINDOW_NUM_SAMPLES: -#ifdef GLX_VERSION_1_3 - glGetIntegerv(GL_SAMPLES, &nsamples); -#endif - return nsamples; - - /* - * The rest of GLX queries under X are general enough to use a macro to - * check them - */ -# define GLX_QUERY(a,b) case a: return fghGetConfig( b ); - - GLX_QUERY( GLUT_WINDOW_RGBA, GLX_RGBA ); - GLX_QUERY( GLUT_WINDOW_DOUBLEBUFFER, GLX_DOUBLEBUFFER ); - GLX_QUERY( GLUT_WINDOW_BUFFER_SIZE, GLX_BUFFER_SIZE ); - GLX_QUERY( GLUT_WINDOW_STENCIL_SIZE, GLX_STENCIL_SIZE ); - GLX_QUERY( GLUT_WINDOW_DEPTH_SIZE, GLX_DEPTH_SIZE ); - GLX_QUERY( GLUT_WINDOW_RED_SIZE, GLX_RED_SIZE ); - GLX_QUERY( GLUT_WINDOW_GREEN_SIZE, GLX_GREEN_SIZE ); - GLX_QUERY( GLUT_WINDOW_BLUE_SIZE, GLX_BLUE_SIZE ); - GLX_QUERY( GLUT_WINDOW_ALPHA_SIZE, GLX_ALPHA_SIZE ); - GLX_QUERY( GLUT_WINDOW_ACCUM_RED_SIZE, GLX_ACCUM_RED_SIZE ); - GLX_QUERY( GLUT_WINDOW_ACCUM_GREEN_SIZE, GLX_ACCUM_GREEN_SIZE ); - GLX_QUERY( GLUT_WINDOW_ACCUM_BLUE_SIZE, GLX_ACCUM_BLUE_SIZE ); - GLX_QUERY( GLUT_WINDOW_ACCUM_ALPHA_SIZE, GLX_ACCUM_ALPHA_SIZE ); - GLX_QUERY( GLUT_WINDOW_STEREO, GLX_STEREO ); - -# undef GLX_QUERY - - /* Colormap size is handled in a bit different way than all the rest */ - case GLUT_WINDOW_COLORMAP_SIZE: - if( (fghGetConfig( GLX_RGBA )) || (fgStructure.CurrentWindow == NULL) ) - { - /* - * We've got a RGBA visual, so there is no colormap at all. - * The other possibility is that we have no current window set. - */ - return 0; - } - else - { - const GLXFBConfig * fbconfig = - fgStructure.CurrentWindow->Window.FBConfig; - - XVisualInfo * visualInfo = - glXGetVisualFromFBConfig( fgDisplay.Display, *fbconfig ); - - const int result = visualInfo->visual->map_entries; - - XFree(visualInfo); - - return result; - } - - /* - * Those calls are somewhat similiar, as they use XGetWindowAttributes() - * function - */ - case GLUT_WINDOW_X: - case GLUT_WINDOW_Y: - case GLUT_WINDOW_BORDER_WIDTH: - case GLUT_WINDOW_HEADER_HEIGHT: - { - int x, y; - Window w; - - if( fgStructure.CurrentWindow == NULL ) - return 0; - - XTranslateCoordinates( - fgDisplay.Display, - fgStructure.CurrentWindow->Window.Handle, - fgDisplay.RootWindow, - 0, 0, &x, &y, &w); - - switch ( eWhat ) - { - case GLUT_WINDOW_X: return x; - case GLUT_WINDOW_Y: return y; - } - - if ( w == 0 ) - return 0; - XTranslateCoordinates( - fgDisplay.Display, - fgStructure.CurrentWindow->Window.Handle, - w, 0, 0, &x, &y, &w); - - switch ( eWhat ) - { - case GLUT_WINDOW_BORDER_WIDTH: return x; - case GLUT_WINDOW_HEADER_HEIGHT: return y; - } - } - - case GLUT_WINDOW_WIDTH: - case GLUT_WINDOW_HEIGHT: - { - XWindowAttributes winAttributes; - - if( fgStructure.CurrentWindow == NULL ) - return 0; - XGetWindowAttributes( - fgDisplay.Display, - fgStructure.CurrentWindow->Window.Handle, - &winAttributes - ); - switch ( eWhat ) - { - case GLUT_WINDOW_WIDTH: return winAttributes.width ; - case GLUT_WINDOW_HEIGHT: return winAttributes.height ; - } - } - - /* I do not know yet if there will be a fgChooseVisual() function for Win32 */ - case GLUT_DISPLAY_MODE_POSSIBLE: - { - /* We should not have to call fgChooseFBConfig again here. */ - GLXFBConfig * fbconfig; - int isPossible; - - fbconfig = fgChooseFBConfig(); - - if (fbconfig == NULL) - { - isPossible = 0; - } - else - { - isPossible = 1; - XFree(fbconfig); - } - - return isPossible; - } - - /* This is system-dependant */ - case GLUT_WINDOW_FORMAT_ID: - if( fgStructure.CurrentWindow == NULL ) - return 0; - - return fghGetConfig( GLX_VISUAL_ID ); - -#elif TARGET_HOST_MS_WINDOWS - - case GLUT_WINDOW_NUM_SAMPLES: - glGetIntegerv(WGL_SAMPLES_ARB, &nsamples); - return nsamples; - - /* Handle the OpenGL inquiries */ - case GLUT_WINDOW_RGBA: -#if defined(_WIN32_WCE) - boolValue = (GLboolean)0; /* WinCE doesn't support this feature */ -#else - glGetBooleanv ( GL_RGBA_MODE, &boolValue ); - returnValue = boolValue ? 1 : 0; -#endif - return returnValue; - case GLUT_WINDOW_DOUBLEBUFFER: -#if defined(_WIN32_WCE) - boolValue = (GLboolean)0; /* WinCE doesn't support this feature */ -#else - glGetBooleanv ( GL_DOUBLEBUFFER, &boolValue ); - returnValue = boolValue ? 1 : 0; -#endif - return returnValue; - case GLUT_WINDOW_STEREO: -#if defined(_WIN32_WCE) - boolValue = (GLboolean)0; /* WinCE doesn't support this feature */ -#else - glGetBooleanv ( GL_STEREO, &boolValue ); - returnValue = boolValue ? 1 : 0; -#endif - return returnValue; - - case GLUT_WINDOW_RED_SIZE: - glGetIntegerv ( GL_RED_BITS, &returnValue ); - return returnValue; - case GLUT_WINDOW_GREEN_SIZE: - glGetIntegerv ( GL_GREEN_BITS, &returnValue ); - return returnValue; - case GLUT_WINDOW_BLUE_SIZE: - glGetIntegerv ( GL_BLUE_BITS, &returnValue ); - return returnValue; - case GLUT_WINDOW_ALPHA_SIZE: - glGetIntegerv ( GL_ALPHA_BITS, &returnValue ); - return returnValue; - case GLUT_WINDOW_ACCUM_RED_SIZE: -#if defined(_WIN32_WCE) - returnValue = 0; /* WinCE doesn't support this feature */ -#else - glGetIntegerv ( GL_ACCUM_RED_BITS, &returnValue ); -#endif - return returnValue; - case GLUT_WINDOW_ACCUM_GREEN_SIZE: -#if defined(_WIN32_WCE) - returnValue = 0; /* WinCE doesn't support this feature */ -#else - glGetIntegerv ( GL_ACCUM_GREEN_BITS, &returnValue ); -#endif - return returnValue; - case GLUT_WINDOW_ACCUM_BLUE_SIZE: -#if defined(_WIN32_WCE) - returnValue = 0; /* WinCE doesn't support this feature */ -#else - glGetIntegerv ( GL_ACCUM_BLUE_BITS, &returnValue ); -#endif - return returnValue; - case GLUT_WINDOW_ACCUM_ALPHA_SIZE: -#if defined(_WIN32_WCE) - returnValue = 0; /* WinCE doesn't support this feature */ -#else - glGetIntegerv ( GL_ACCUM_ALPHA_BITS, &returnValue ); -#endif - return returnValue; - case GLUT_WINDOW_DEPTH_SIZE: - glGetIntegerv ( GL_DEPTH_BITS, &returnValue ); - return returnValue; - - case GLUT_WINDOW_BUFFER_SIZE: - returnValue = 1 ; /* ????? */ - return returnValue; - case GLUT_WINDOW_STENCIL_SIZE: - returnValue = 0 ; /* ????? */ - return returnValue; - - case GLUT_WINDOW_X: - case GLUT_WINDOW_Y: - case GLUT_WINDOW_WIDTH: - case GLUT_WINDOW_HEIGHT: - { - /* - * There is considerable confusion about the "right thing to - * do" concerning window size and position. GLUT itself is - * not consistent between Windows and UNIX/X11; since - * platform independence is a virtue for "freeglut", we - * decided to break with GLUT's behaviour. - * - * Under UNIX/X11, it is apparently not possible to get the - * window border sizes in order to subtract them off the - * window's initial position until some time after the window - * has been created. Therefore we decided on the following - * behaviour, both under Windows and under UNIX/X11: - * - When you create a window with position (x,y) and size - * (w,h), the upper left hand corner of the outside of the - * window is at (x,y) and the size of the drawable area is - * (w,h). - * - When you query the size and position of the window--as - * is happening here for Windows--"freeglut" will return - * the size of the drawable area--the (w,h) that you - * specified when you created the window--and the coordinates - * of the upper left hand corner of the drawable - * area--which is NOT the (x,y) you specified. - */ - - RECT winRect; - - freeglut_return_val_if_fail( fgStructure.CurrentWindow != NULL, 0 ); - - /* - * We need to call GetWindowRect() first... - * (this returns the pixel coordinates of the outside of the window) - */ - GetWindowRect( fgStructure.CurrentWindow->Window.Handle, &winRect ); - - /* ...then we've got to correct the results we've just received... */ - -#if !defined(_WIN32_WCE) - if ( ( fgStructure.GameModeWindow != fgStructure.CurrentWindow ) && ( fgStructure.CurrentWindow->Parent == NULL ) && - ( ! fgStructure.CurrentWindow->IsMenu ) ) - { - winRect.left += GetSystemMetrics( SM_CXSIZEFRAME ); - winRect.right -= GetSystemMetrics( SM_CXSIZEFRAME ); - winRect.top += GetSystemMetrics( SM_CYSIZEFRAME ) + GetSystemMetrics( SM_CYCAPTION ); - winRect.bottom -= GetSystemMetrics( SM_CYSIZEFRAME ); - } -#endif /* !defined(_WIN32_WCE) */ - - switch( eWhat ) - { - case GLUT_WINDOW_X: return winRect.left ; - case GLUT_WINDOW_Y: return winRect.top ; - case GLUT_WINDOW_WIDTH: return winRect.right - winRect.left; - case GLUT_WINDOW_HEIGHT: return winRect.bottom - winRect.top; - } - } - break; - - case GLUT_WINDOW_BORDER_WIDTH : -#if defined(_WIN32_WCE) - return 0; -#else - return GetSystemMetrics( SM_CXSIZEFRAME ); -#endif /* !defined(_WIN32_WCE) */ - - case GLUT_WINDOW_HEADER_HEIGHT : -#if defined(_WIN32_WCE) - return 0; -#else - return GetSystemMetrics( SM_CYCAPTION ); -#endif /* defined(_WIN32_WCE) */ - - case GLUT_DISPLAY_MODE_POSSIBLE: -#if defined(_WIN32_WCE) - return 0; -#else - return fgSetupPixelFormat( fgStructure.CurrentWindow, GL_TRUE, - PFD_MAIN_PLANE ); -#endif /* defined(_WIN32_WCE) */ - - - case GLUT_WINDOW_FORMAT_ID: -#if !defined(_WIN32_WCE) - if( fgStructure.CurrentWindow != NULL ) - return GetPixelFormat( fgStructure.CurrentWindow->Window.Device ); -#endif /* defined(_WIN32_WCE) */ - return 0; - -#endif - - /* The window structure queries */ - case GLUT_WINDOW_PARENT: - if( fgStructure.CurrentWindow == NULL ) return 0; - if( fgStructure.CurrentWindow->Parent == NULL ) return 0; - return fgStructure.CurrentWindow->Parent->ID; - - case GLUT_WINDOW_NUM_CHILDREN: - if( fgStructure.CurrentWindow == NULL ) - return 0; - return fgListLength( &fgStructure.CurrentWindow->Children ); - - case GLUT_WINDOW_CURSOR: - if( fgStructure.CurrentWindow == NULL ) - return 0; - return fgStructure.CurrentWindow->State.Cursor; - - case GLUT_MENU_NUM_ITEMS: - if( fgStructure.CurrentMenu == NULL ) - return 0; - return fgListLength( &fgStructure.CurrentMenu->Entries ); - - case GLUT_ACTION_ON_WINDOW_CLOSE: - return fgState.ActionOnWindowClose; - - case GLUT_VERSION : - return VERSION_MAJOR * 10000 + VERSION_MINOR * 100 + VERSION_PATCH; - - case GLUT_RENDERING_CONTEXT: - return fgState.UseCurrentContext ? GLUT_USE_CURRENT_CONTEXT - : GLUT_CREATE_NEW_CONTEXT; - - case GLUT_DIRECT_RENDERING: - return fgState.DirectContext; - - case GLUT_FULL_SCREEN: - return fghCheckFullScreen(); - - case GLUT_AUX: - return fgState.AuxiliaryBufferNumber; - - case GLUT_MULTISAMPLE: - return fgState.SampleNumber; - - default: - fgWarning( "glutGet(): missing enum handle %d", eWhat ); - break; - } - return -1; -} - -/* - * Returns various device information. - */ -int FGAPIENTRY glutDeviceGet( GLenum eWhat ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutDeviceGet" ); - - /* XXX WARNING: we are mostly lying in this function. */ - switch( eWhat ) - { - case GLUT_HAS_KEYBOARD: - /* - * Win32 is assumed a keyboard, and this cannot be queried, - * except for WindowsCE. - * - * X11 has a core keyboard by definition, although it can - * be present as a virtual/dummy keyboard. For now, there - * is no reliable way to tell if a real keyboard is present. - */ -#if defined(_WIN32_CE) - return ( GetKeyboardStatus() & KBDI_KEYBOARD_PRESENT ) ? 1 : 0; -# if FREEGLUT_LIB_PRAGMAS -# pragma comment (lib,"Kbdui.lib") -# endif - -#else - return 1; -#endif - -#if TARGET_HOST_POSIX_X11 - - /* X11 has a mouse by definition */ - case GLUT_HAS_MOUSE: - return 1 ; - - case GLUT_NUM_MOUSE_BUTTONS: - /* We should be able to pass NULL when the last argument is zero, - * but at least one X server has a bug where this causes a segfault. - * - * In XFree86/Xorg servers, a mouse wheel is seen as two buttons - * rather than an Axis; "freeglut_main.c" expects this when - * checking for a wheel event. - */ - { - unsigned char map; - int nbuttons = XGetPointerMapping(fgDisplay.Display, &map,0); - return nbuttons; - } - -#elif TARGET_HOST_MS_WINDOWS - - case GLUT_HAS_MOUSE: - /* - * MS Windows can be booted without a mouse. - */ - return GetSystemMetrics( SM_MOUSEPRESENT ); - - case GLUT_NUM_MOUSE_BUTTONS: -# if defined(_WIN32_WCE) - return 1; -# else - return GetSystemMetrics( SM_CMOUSEBUTTONS ); -# endif -#endif - - case GLUT_HAS_JOYSTICK: - return fgJoystickDetect (); - - case GLUT_OWNS_JOYSTICK: - return fgState.JoysticksInitialised; - - case GLUT_JOYSTICK_POLL_RATE: - return fgStructure.CurrentWindow ? fgStructure.CurrentWindow->State.JoystickPollRate : 0; - - /* XXX The following two are only for Joystick 0 but this is an improvement */ - case GLUT_JOYSTICK_BUTTONS: - return glutJoystickGetNumButtons ( 0 ); - - case GLUT_JOYSTICK_AXES: - return glutJoystickGetNumAxes ( 0 ); - - case GLUT_HAS_DIAL_AND_BUTTON_BOX: - return fgInputDeviceDetect (); - - case GLUT_NUM_DIALS: - if ( fgState.InputDevsInitialised ) return 8; - return 0; - - case GLUT_NUM_BUTTON_BOX_BUTTONS: - return 0; - - case GLUT_HAS_SPACEBALL: - return fgHasSpaceball(); - - case GLUT_HAS_TABLET: - return 0; - - case GLUT_NUM_SPACEBALL_BUTTONS: - return fgSpaceballNumButtons(); - - case GLUT_NUM_TABLET_BUTTONS: - return 0; - - case GLUT_DEVICE_IGNORE_KEY_REPEAT: - return fgStructure.CurrentWindow ? fgStructure.CurrentWindow->State.IgnoreKeyRepeat : 0; - - case GLUT_DEVICE_KEY_REPEAT: - return fgState.KeyRepeat; - - default: - fgWarning( "glutDeviceGet(): missing enum handle %d", eWhat ); - break; - } - - /* And now -- the failure. */ - return -1; -} - -/* - * This should return the current state of ALT, SHIFT and CTRL keys. - */ -int FGAPIENTRY glutGetModifiers( void ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutGetModifiers" ); - if( fgState.Modifiers == INVALID_MODIFIERS ) - { - fgWarning( "glutGetModifiers() called outside an input callback" ); - return 0; - } - - return fgState.Modifiers; -} - -/* - * Return the state of the GLUT API overlay subsystem. A misery ;-) - */ -int FGAPIENTRY glutLayerGet( GLenum eWhat ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutLayerGet" ); - - /* - * This is easy as layers are not implemented ;-) - * - * XXX Can we merge the UNIX/X11 and WIN32 sections? Or - * XXX is overlay support planned? - */ - switch( eWhat ) - { - -#if TARGET_HOST_POSIX_X11 - - case GLUT_OVERLAY_POSSIBLE: - return 0; - - case GLUT_LAYER_IN_USE: - return GLUT_NORMAL; - - case GLUT_HAS_OVERLAY: - return 0; - - case GLUT_TRANSPARENT_INDEX: - /* - * Return just anything, which is always defined as zero - * - * XXX HUH? - */ - return 0; - - case GLUT_NORMAL_DAMAGED: - /* XXX Actually I do not know. Maybe. */ - return 0; - - case GLUT_OVERLAY_DAMAGED: - return -1; - -#elif TARGET_HOST_MS_WINDOWS - - case GLUT_OVERLAY_POSSIBLE: -/* return fgSetupPixelFormat( fgStructure.CurrentWindow, GL_TRUE, - PFD_OVERLAY_PLANE ); */ - return 0 ; - - case GLUT_LAYER_IN_USE: - return GLUT_NORMAL; - - case GLUT_HAS_OVERLAY: - return 0; - - case GLUT_TRANSPARENT_INDEX: - /* - * Return just anything, which is always defined as zero - * - * XXX HUH? - */ - return 0; - - case GLUT_NORMAL_DAMAGED: - /* XXX Actually I do not know. Maybe. */ - return 0; - - case GLUT_OVERLAY_DAMAGED: - return -1; -#endif - - default: - fgWarning( "glutLayerGet(): missing enum handle %d", eWhat ); - break; - } - - /* And fail. That's good. Programs do love failing. */ - return -1; -} - -int * FGAPIENTRY glutGetModeValues(GLenum eWhat, int * size) -{ - int * array; - -#if TARGET_HOST_POSIX_X11 - int attributes[9]; - GLXFBConfig * fbconfigArray; /* Array of FBConfigs */ - int fbconfigArraySize; /* Number of FBConfigs in the array */ - int attribute_name = 0; -#endif - - FREEGLUT_EXIT_IF_NOT_INITIALISED("glutGetModeValues"); - - array = NULL; - *size = 0; - - switch (eWhat) - { -#if TARGET_HOST_POSIX_X11 - case GLUT_AUX: - case GLUT_MULTISAMPLE: - - attributes[0] = GLX_BUFFER_SIZE; - attributes[1] = GLX_DONT_CARE; - - switch (eWhat) - { - case GLUT_AUX: - /* - FBConfigs are now sorted by increasing number of auxiliary - buffers. We want at least one buffer. - */ - attributes[2] = GLX_AUX_BUFFERS; - attributes[3] = 1; - attributes[4] = None; - - attribute_name = GLX_AUX_BUFFERS; - - break; - - - case GLUT_MULTISAMPLE: - attributes[2] = GLX_AUX_BUFFERS; - attributes[3] = GLX_DONT_CARE; - attributes[4] = GLX_SAMPLE_BUFFERS; - attributes[5] = 1; - /* - FBConfigs are now sorted by increasing number of samples per - pixel. We want at least one sample. - */ - attributes[6] = GLX_SAMPLES; - attributes[7] = 1; - attributes[8] = None; - - attribute_name = GLX_SAMPLES; - - break; - } - - fbconfigArray = glXChooseFBConfig(fgDisplay.Display, - fgDisplay.Screen, - attributes, - &fbconfigArraySize); - - if (fbconfigArray != NULL) - { - int * temp_array; - int result; /* Returned by glXGetFBConfigAttrib. Not checked. */ - int previous_value; - int i; - - temp_array = malloc(sizeof(int) * fbconfigArraySize); - previous_value = 0; - - for (i = 0; i < fbconfigArraySize; i++) - { - int value; - - result = glXGetFBConfigAttrib(fgDisplay.Display, - fbconfigArray[i], - attribute_name, - &value); - if (value > previous_value) - { - temp_array[*size] = value; - previous_value = value; - (*size)++; - } - } - - array = malloc(sizeof(int) * (*size)); - for (i = 0; i < *size; i++) - { - array[i] = temp_array[i]; - } - - free(temp_array); - XFree(fbconfigArray); - } - - break; -#endif - - default: - break; - } - - return array; -} - -/*** END OF FILE ***/ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_std.h b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_std.h deleted file mode 100644 index 3a4207f..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_std.h +++ /dev/null @@ -1,583 +0,0 @@ -#ifndef __FREEGLUT_STD_H__ -#define __FREEGLUT_STD_H__ - -/* - * freeglut_std.h - * - * The GLUT-compatible part of the freeglut library include file - * - * Copyright (c) 1999-2000 Pawel W. Olszta. All Rights Reserved. - * Written by Pawel W. Olszta, - * Creation date: Thu Dec 2 1999 - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included - * in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - * PAWEL W. OLSZTA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER - * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - */ - -#ifdef __cplusplus - extern "C" { -#endif - -#define FGAPI -#define FGAPIENTRY - -/* - * Under windows, we have to differentiate between static and dynamic libraries - */ -#ifdef _WIN32 -/* #pragma may not be supported by some compilers. - * Discussion by FreeGLUT developers suggests that - * Visual C++ specific code involving pragmas may - * need to move to a separate header. 24th Dec 2003 - */ - - #ifndef WIN32_LEAN_AND_MEAN - #define WIN32_LEAN_AND_MEAN 1 - #endif - - #define NOMINMAX - #include - -/* Drag in other Windows libraries as required by FreeGLUT */ -// # if FREEGLUT_LIB_PRAGMAS -// # pragma comment (lib, "glu32.lib") /* link OpenGL Utility lib */ -// # pragma comment (lib, "opengl32.lib") /* link Microsoft OpenGL lib */ -// # pragma comment (lib, "gdi32.lib") /* link Windows GDI lib */ -// # pragma comment (lib, "winmm.lib") /* link Windows MultiMedia lib */ -// # pragma comment (lib, "user32.lib") /* link Windows user lib */ -// # endif - -#endif - -/* - * The freeglut and GLUT API versions - */ -#define FREEGLUT 1 -#define GLUT_API_VERSION 4 -#define FREEGLUT_VERSION_2_0 1 -#define GLUT_XLIB_IMPLEMENTATION 13 - -/* - * Always include OpenGL and GLU headers - */ -#include -#include - -/* - * GLUT API macro definitions -- the special key codes: - */ -#define GLUT_KEY_F1 0x0001 -#define GLUT_KEY_F2 0x0002 -#define GLUT_KEY_F3 0x0003 -#define GLUT_KEY_F4 0x0004 -#define GLUT_KEY_F5 0x0005 -#define GLUT_KEY_F6 0x0006 -#define GLUT_KEY_F7 0x0007 -#define GLUT_KEY_F8 0x0008 -#define GLUT_KEY_F9 0x0009 -#define GLUT_KEY_F10 0x000A -#define GLUT_KEY_F11 0x000B -#define GLUT_KEY_F12 0x000C -#define GLUT_KEY_LEFT 0x0064 -#define GLUT_KEY_UP 0x0065 -#define GLUT_KEY_RIGHT 0x0066 -#define GLUT_KEY_DOWN 0x0067 -#define GLUT_KEY_PAGE_UP 0x0068 -#define GLUT_KEY_PAGE_DOWN 0x0069 -#define GLUT_KEY_HOME 0x006A -#define GLUT_KEY_END 0x006B -#define GLUT_KEY_INSERT 0x006C - -/* - * GLUT API macro definitions -- mouse state definitions - */ -#define GLUT_LEFT_BUTTON 0x0000 -#define GLUT_MIDDLE_BUTTON 0x0001 -#define GLUT_RIGHT_BUTTON 0x0002 -#define GLUT_DOWN 0x0000 -#define GLUT_UP 0x0001 -#define GLUT_LEFT 0x0000 -#define GLUT_ENTERED 0x0001 - -/* - * GLUT API macro definitions -- the display mode definitions - */ -#define GLUT_RGB 0x0000 -#define GLUT_RGBA 0x0000 -#define GLUT_INDEX 0x0001 -#define GLUT_SINGLE 0x0000 -#define GLUT_DOUBLE 0x0002 -#define GLUT_ACCUM 0x0004 -#define GLUT_ALPHA 0x0008 -#define GLUT_DEPTH 0x0010 -#define GLUT_STENCIL 0x0020 -#define GLUT_MULTISAMPLE 0x0080 -#define GLUT_STEREO 0x0100 -#define GLUT_LUMINANCE 0x0200 - -/* - * GLUT API macro definitions -- windows and menu related definitions - */ -#define GLUT_MENU_NOT_IN_USE 0x0000 -#define GLUT_MENU_IN_USE 0x0001 -#define GLUT_NOT_VISIBLE 0x0000 -#define GLUT_VISIBLE 0x0001 -#define GLUT_HIDDEN 0x0000 -#define GLUT_FULLY_RETAINED 0x0001 -#define GLUT_PARTIALLY_RETAINED 0x0002 -#define GLUT_FULLY_COVERED 0x0003 - -/* - * GLUT API macro definitions -- fonts definitions - * - * Steve Baker suggested to make it binary compatible with GLUT: - */ -#if defined(_MSC_VER) || defined(__CYGWIN__) || defined(__MINGW32__) || defined(__WATCOMC__) -# define GLUT_STROKE_ROMAN ((void *)0x0000) -# define GLUT_STROKE_MONO_ROMAN ((void *)0x0001) -# define GLUT_BITMAP_9_BY_15 ((void *)0x0002) -# define GLUT_BITMAP_8_BY_13 ((void *)0x0003) -# define GLUT_BITMAP_TIMES_ROMAN_10 ((void *)0x0004) -# define GLUT_BITMAP_TIMES_ROMAN_24 ((void *)0x0005) -# define GLUT_BITMAP_HELVETICA_10 ((void *)0x0006) -# define GLUT_BITMAP_HELVETICA_12 ((void *)0x0007) -# define GLUT_BITMAP_HELVETICA_18 ((void *)0x0008) -#else - /* - * I don't really know if it's a good idea... But here it goes: - */ - extern void* glutStrokeRoman; - extern void* glutStrokeMonoRoman; - extern void* glutBitmap9By15; - extern void* glutBitmap8By13; - extern void* glutBitmapTimesRoman10; - extern void* glutBitmapTimesRoman24; - extern void* glutBitmapHelvetica10; - extern void* glutBitmapHelvetica12; - extern void* glutBitmapHelvetica18; - - /* - * Those pointers will be used by following definitions: - */ -# define GLUT_STROKE_ROMAN ((void *) &glutStrokeRoman) -# define GLUT_STROKE_MONO_ROMAN ((void *) &glutStrokeMonoRoman) -# define GLUT_BITMAP_9_BY_15 ((void *) &glutBitmap9By15) -# define GLUT_BITMAP_8_BY_13 ((void *) &glutBitmap8By13) -# define GLUT_BITMAP_TIMES_ROMAN_10 ((void *) &glutBitmapTimesRoman10) -# define GLUT_BITMAP_TIMES_ROMAN_24 ((void *) &glutBitmapTimesRoman24) -# define GLUT_BITMAP_HELVETICA_10 ((void *) &glutBitmapHelvetica10) -# define GLUT_BITMAP_HELVETICA_12 ((void *) &glutBitmapHelvetica12) -# define GLUT_BITMAP_HELVETICA_18 ((void *) &glutBitmapHelvetica18) -#endif - -/* - * GLUT API macro definitions -- the glutGet parameters - */ -#define GLUT_WINDOW_X 0x0064 -#define GLUT_WINDOW_Y 0x0065 -#define GLUT_WINDOW_WIDTH 0x0066 -#define GLUT_WINDOW_HEIGHT 0x0067 -#define GLUT_WINDOW_BUFFER_SIZE 0x0068 -#define GLUT_WINDOW_STENCIL_SIZE 0x0069 -#define GLUT_WINDOW_DEPTH_SIZE 0x006A -#define GLUT_WINDOW_RED_SIZE 0x006B -#define GLUT_WINDOW_GREEN_SIZE 0x006C -#define GLUT_WINDOW_BLUE_SIZE 0x006D -#define GLUT_WINDOW_ALPHA_SIZE 0x006E -#define GLUT_WINDOW_ACCUM_RED_SIZE 0x006F -#define GLUT_WINDOW_ACCUM_GREEN_SIZE 0x0070 -#define GLUT_WINDOW_ACCUM_BLUE_SIZE 0x0071 -#define GLUT_WINDOW_ACCUM_ALPHA_SIZE 0x0072 -#define GLUT_WINDOW_DOUBLEBUFFER 0x0073 -#define GLUT_WINDOW_RGBA 0x0074 -#define GLUT_WINDOW_PARENT 0x0075 -#define GLUT_WINDOW_NUM_CHILDREN 0x0076 -#define GLUT_WINDOW_COLORMAP_SIZE 0x0077 -#define GLUT_WINDOW_NUM_SAMPLES 0x0078 -#define GLUT_WINDOW_STEREO 0x0079 -#define GLUT_WINDOW_CURSOR 0x007A - -#define GLUT_SCREEN_WIDTH 0x00C8 -#define GLUT_SCREEN_HEIGHT 0x00C9 -#define GLUT_SCREEN_WIDTH_MM 0x00CA -#define GLUT_SCREEN_HEIGHT_MM 0x00CB -#define GLUT_MENU_NUM_ITEMS 0x012C -#define GLUT_DISPLAY_MODE_POSSIBLE 0x0190 -#define GLUT_INIT_WINDOW_X 0x01F4 -#define GLUT_INIT_WINDOW_Y 0x01F5 -#define GLUT_INIT_WINDOW_WIDTH 0x01F6 -#define GLUT_INIT_WINDOW_HEIGHT 0x01F7 -#define GLUT_INIT_DISPLAY_MODE 0x01F8 -#define GLUT_ELAPSED_TIME 0x02BC -#define GLUT_WINDOW_FORMAT_ID 0x007B - -/* - * GLUT API macro definitions -- the glutDeviceGet parameters - */ -#define GLUT_HAS_KEYBOARD 0x0258 -#define GLUT_HAS_MOUSE 0x0259 -#define GLUT_HAS_SPACEBALL 0x025A -#define GLUT_HAS_DIAL_AND_BUTTON_BOX 0x025B -#define GLUT_HAS_TABLET 0x025C -#define GLUT_NUM_MOUSE_BUTTONS 0x025D -#define GLUT_NUM_SPACEBALL_BUTTONS 0x025E -#define GLUT_NUM_BUTTON_BOX_BUTTONS 0x025F -#define GLUT_NUM_DIALS 0x0260 -#define GLUT_NUM_TABLET_BUTTONS 0x0261 -#define GLUT_DEVICE_IGNORE_KEY_REPEAT 0x0262 -#define GLUT_DEVICE_KEY_REPEAT 0x0263 -#define GLUT_HAS_JOYSTICK 0x0264 -#define GLUT_OWNS_JOYSTICK 0x0265 -#define GLUT_JOYSTICK_BUTTONS 0x0266 -#define GLUT_JOYSTICK_AXES 0x0267 -#define GLUT_JOYSTICK_POLL_RATE 0x0268 - -/* - * GLUT API macro definitions -- the glutLayerGet parameters - */ -#define GLUT_OVERLAY_POSSIBLE 0x0320 -#define GLUT_LAYER_IN_USE 0x0321 -#define GLUT_HAS_OVERLAY 0x0322 -#define GLUT_TRANSPARENT_INDEX 0x0323 -#define GLUT_NORMAL_DAMAGED 0x0324 -#define GLUT_OVERLAY_DAMAGED 0x0325 - -/* - * GLUT API macro definitions -- the glutVideoResizeGet parameters - */ -#define GLUT_VIDEO_RESIZE_POSSIBLE 0x0384 -#define GLUT_VIDEO_RESIZE_IN_USE 0x0385 -#define GLUT_VIDEO_RESIZE_X_DELTA 0x0386 -#define GLUT_VIDEO_RESIZE_Y_DELTA 0x0387 -#define GLUT_VIDEO_RESIZE_WIDTH_DELTA 0x0388 -#define GLUT_VIDEO_RESIZE_HEIGHT_DELTA 0x0389 -#define GLUT_VIDEO_RESIZE_X 0x038A -#define GLUT_VIDEO_RESIZE_Y 0x038B -#define GLUT_VIDEO_RESIZE_WIDTH 0x038C -#define GLUT_VIDEO_RESIZE_HEIGHT 0x038D - -/* - * GLUT API macro definitions -- the glutUseLayer parameters - */ -#define GLUT_NORMAL 0x0000 -#define GLUT_OVERLAY 0x0001 - -/* - * GLUT API macro definitions -- the glutGetModifiers parameters - */ -#define GLUT_ACTIVE_SHIFT 0x0001 -#define GLUT_ACTIVE_CTRL 0x0002 -#define GLUT_ACTIVE_ALT 0x0004 - -/* - * GLUT API macro definitions -- the glutSetCursor parameters - */ -#define GLUT_CURSOR_RIGHT_ARROW 0x0000 -#define GLUT_CURSOR_LEFT_ARROW 0x0001 -#define GLUT_CURSOR_INFO 0x0002 -#define GLUT_CURSOR_DESTROY 0x0003 -#define GLUT_CURSOR_HELP 0x0004 -#define GLUT_CURSOR_CYCLE 0x0005 -#define GLUT_CURSOR_SPRAY 0x0006 -#define GLUT_CURSOR_WAIT 0x0007 -#define GLUT_CURSOR_TEXT 0x0008 -#define GLUT_CURSOR_CROSSHAIR 0x0009 -#define GLUT_CURSOR_UP_DOWN 0x000A -#define GLUT_CURSOR_LEFT_RIGHT 0x000B -#define GLUT_CURSOR_TOP_SIDE 0x000C -#define GLUT_CURSOR_BOTTOM_SIDE 0x000D -#define GLUT_CURSOR_LEFT_SIDE 0x000E -#define GLUT_CURSOR_RIGHT_SIDE 0x000F -#define GLUT_CURSOR_TOP_LEFT_CORNER 0x0010 -#define GLUT_CURSOR_TOP_RIGHT_CORNER 0x0011 -#define GLUT_CURSOR_BOTTOM_RIGHT_CORNER 0x0012 -#define GLUT_CURSOR_BOTTOM_LEFT_CORNER 0x0013 -#define GLUT_CURSOR_INHERIT 0x0064 -#define GLUT_CURSOR_NONE 0x0065 -#define GLUT_CURSOR_FULL_CROSSHAIR 0x0066 - -/* - * GLUT API macro definitions -- RGB color component specification definitions - */ -#define GLUT_RED 0x0000 -#define GLUT_GREEN 0x0001 -#define GLUT_BLUE 0x0002 - -/* - * GLUT API macro definitions -- additional keyboard and joystick definitions - */ -#define GLUT_KEY_REPEAT_OFF 0x0000 -#define GLUT_KEY_REPEAT_ON 0x0001 -#define GLUT_KEY_REPEAT_DEFAULT 0x0002 - -#define GLUT_JOYSTICK_BUTTON_A 0x0001 -#define GLUT_JOYSTICK_BUTTON_B 0x0002 -#define GLUT_JOYSTICK_BUTTON_C 0x0004 -#define GLUT_JOYSTICK_BUTTON_D 0x0008 - -/* - * GLUT API macro definitions -- game mode definitions - */ -#define GLUT_GAME_MODE_ACTIVE 0x0000 -#define GLUT_GAME_MODE_POSSIBLE 0x0001 -#define GLUT_GAME_MODE_WIDTH 0x0002 -#define GLUT_GAME_MODE_HEIGHT 0x0003 -#define GLUT_GAME_MODE_PIXEL_DEPTH 0x0004 -#define GLUT_GAME_MODE_REFRESH_RATE 0x0005 -#define GLUT_GAME_MODE_DISPLAY_CHANGED 0x0006 - -/* - * Initialization functions, see fglut_init.c - */ -FGAPI void FGAPIENTRY glutInit( int* pargc, char** argv ); -FGAPI void FGAPIENTRY glutInitWindowPosition( int x, int y ); -FGAPI void FGAPIENTRY glutInitWindowSize( int width, int height ); -FGAPI void FGAPIENTRY glutInitDisplayMode( unsigned int displayMode ); -FGAPI void FGAPIENTRY glutInitDisplayString( const char* displayMode ); - -/* - * Process loop function, see freeglut_main.c - */ -FGAPI void FGAPIENTRY glutMainLoop( void ); - -/* - * Window management functions, see freeglut_window.c - */ -FGAPI int FGAPIENTRY glutCreateWindow( const char* title ); -FGAPI int FGAPIENTRY glutCreateSubWindow( int window, int x, int y, int width, int height ); -FGAPI void FGAPIENTRY glutDestroyWindow( int window ); -FGAPI void FGAPIENTRY glutSetWindow( int window ); -FGAPI int FGAPIENTRY glutGetWindow( void ); -FGAPI void FGAPIENTRY glutSetWindowTitle( const char* title ); -FGAPI void FGAPIENTRY glutSetIconTitle( const char* title ); -FGAPI void FGAPIENTRY glutReshapeWindow( int width, int height ); -FGAPI void FGAPIENTRY glutPositionWindow( int x, int y ); -FGAPI void FGAPIENTRY glutShowWindow( void ); -FGAPI void FGAPIENTRY glutHideWindow( void ); -FGAPI void FGAPIENTRY glutIconifyWindow( void ); -FGAPI void FGAPIENTRY glutPushWindow( void ); -FGAPI void FGAPIENTRY glutPopWindow( void ); -FGAPI void FGAPIENTRY glutFullScreen( void ); - -/* - * Display-connected functions, see freeglut_display.c - */ -FGAPI void FGAPIENTRY glutPostWindowRedisplay( int window ); -FGAPI void FGAPIENTRY glutPostRedisplay( void ); -FGAPI void FGAPIENTRY glutSwapBuffers( void ); - -/* - * Mouse cursor functions, see freeglut_cursor.c - */ -FGAPI void FGAPIENTRY glutWarpPointer( int x, int y ); -FGAPI void FGAPIENTRY glutSetCursor( int cursor ); - -/* - * Overlay stuff, see freeglut_overlay.c - */ -FGAPI void FGAPIENTRY glutEstablishOverlay( void ); -FGAPI void FGAPIENTRY glutRemoveOverlay( void ); -FGAPI void FGAPIENTRY glutUseLayer( GLenum layer ); -FGAPI void FGAPIENTRY glutPostOverlayRedisplay( void ); -FGAPI void FGAPIENTRY glutPostWindowOverlayRedisplay( int window ); -FGAPI void FGAPIENTRY glutShowOverlay( void ); -FGAPI void FGAPIENTRY glutHideOverlay( void ); - -/* - * Menu stuff, see freeglut_menu.c - */ -FGAPI int FGAPIENTRY glutCreateMenu( void (* callback)( int menu ) ); -FGAPI void FGAPIENTRY glutDestroyMenu( int menu ); -FGAPI int FGAPIENTRY glutGetMenu( void ); -FGAPI void FGAPIENTRY glutSetMenu( int menu ); -FGAPI void FGAPIENTRY glutAddMenuEntry( const char* label, int value ); -FGAPI void FGAPIENTRY glutAddSubMenu( const char* label, int subMenu ); -FGAPI void FGAPIENTRY glutChangeToMenuEntry( int item, const char* label, int value ); -FGAPI void FGAPIENTRY glutChangeToSubMenu( int item, const char* label, int value ); -FGAPI void FGAPIENTRY glutRemoveMenuItem( int item ); -FGAPI void FGAPIENTRY glutAttachMenu( int button ); -FGAPI void FGAPIENTRY glutDetachMenu( int button ); - -/* - * Global callback functions, see freeglut_callbacks.c - */ -FGAPI void FGAPIENTRY glutTimerFunc( unsigned int time, void (* callback)( int ), int value ); -FGAPI void FGAPIENTRY glutIdleFunc( void (* callback)( void ) ); - -/* - * Window-specific callback functions, see freeglut_callbacks.c - */ -FGAPI void FGAPIENTRY glutKeyboardFunc( void (* callback)( unsigned char, int, int ) ); -FGAPI void FGAPIENTRY glutSpecialFunc( void (* callback)( int, int, int ) ); -FGAPI void FGAPIENTRY glutReshapeFunc( void (* callback)( int, int ) ); -FGAPI void FGAPIENTRY glutVisibilityFunc( void (* callback)( int ) ); -FGAPI void FGAPIENTRY glutDisplayFunc( void (* callback)( void ) ); -FGAPI void FGAPIENTRY glutMouseFunc( void (* callback)( int, int, int, int ) ); -FGAPI void FGAPIENTRY glutMotionFunc( void (* callback)( int, int ) ); -FGAPI void FGAPIENTRY glutPassiveMotionFunc( void (* callback)( int, int ) ); -FGAPI void FGAPIENTRY glutEntryFunc( void (* callback)( int ) ); - -FGAPI void FGAPIENTRY glutKeyboardUpFunc( void (* callback)( unsigned char, int, int ) ); -FGAPI void FGAPIENTRY glutSpecialUpFunc( void (* callback)( int, int, int ) ); -FGAPI void FGAPIENTRY glutJoystickFunc( void (* callback)( unsigned int, int, int, int ), int pollInterval ); -FGAPI void FGAPIENTRY glutMenuStateFunc( void (* callback)( int ) ); -FGAPI void FGAPIENTRY glutMenuStatusFunc( void (* callback)( int, int, int ) ); -FGAPI void FGAPIENTRY glutOverlayDisplayFunc( void (* callback)( void ) ); -FGAPI void FGAPIENTRY glutWindowStatusFunc( void (* callback)( int ) ); - -FGAPI void FGAPIENTRY glutSpaceballMotionFunc( void (* callback)( int, int, int ) ); -FGAPI void FGAPIENTRY glutSpaceballRotateFunc( void (* callback)( int, int, int ) ); -FGAPI void FGAPIENTRY glutSpaceballButtonFunc( void (* callback)( int, int ) ); -FGAPI void FGAPIENTRY glutButtonBoxFunc( void (* callback)( int, int ) ); -FGAPI void FGAPIENTRY glutDialsFunc( void (* callback)( int, int ) ); -FGAPI void FGAPIENTRY glutTabletMotionFunc( void (* callback)( int, int ) ); -FGAPI void FGAPIENTRY glutTabletButtonFunc( void (* callback)( int, int, int, int ) ); - -/* - * State setting and retrieval functions, see freeglut_state.c - */ -FGAPI int FGAPIENTRY glutGet( GLenum query ); -FGAPI int FGAPIENTRY glutDeviceGet( GLenum query ); -FGAPI int FGAPIENTRY glutGetModifiers( void ); -FGAPI int FGAPIENTRY glutLayerGet( GLenum query ); - -/* - * Font stuff, see freeglut_font.c - */ -FGAPI void FGAPIENTRY glutBitmapCharacter( void* font, int character ); -FGAPI int FGAPIENTRY glutBitmapWidth( void* font, int character ); -FGAPI void FGAPIENTRY glutStrokeCharacter( void* font, int character ); -FGAPI int FGAPIENTRY glutStrokeWidth( void* font, int character ); -FGAPI int FGAPIENTRY glutBitmapLength( void* font, const unsigned char* string ); -FGAPI int FGAPIENTRY glutStrokeLength( void* font, const unsigned char* string ); - -/* - * Geometry functions, see freeglut_geometry.c - */ -FGAPI void FGAPIENTRY glutWireCube( GLdouble size ); -FGAPI void FGAPIENTRY glutSolidCube( GLdouble size ); -FGAPI void FGAPIENTRY glutWireSphere( GLdouble radius, GLint slices, GLint stacks ); -FGAPI void FGAPIENTRY glutSolidSphere( GLdouble radius, GLint slices, GLint stacks ); -FGAPI void FGAPIENTRY glutWireCone( GLdouble base, GLdouble height, GLint slices, GLint stacks ); -FGAPI void FGAPIENTRY glutSolidCone( GLdouble base, GLdouble height, GLint slices, GLint stacks ); - -FGAPI void FGAPIENTRY glutWireTorus( GLdouble innerRadius, GLdouble outerRadius, GLint sides, GLint rings ); -FGAPI void FGAPIENTRY glutSolidTorus( GLdouble innerRadius, GLdouble outerRadius, GLint sides, GLint rings ); -FGAPI void FGAPIENTRY glutWireDodecahedron( void ); -FGAPI void FGAPIENTRY glutSolidDodecahedron( void ); -FGAPI void FGAPIENTRY glutWireOctahedron( void ); -FGAPI void FGAPIENTRY glutSolidOctahedron( void ); -FGAPI void FGAPIENTRY glutWireTetrahedron( void ); -FGAPI void FGAPIENTRY glutSolidTetrahedron( void ); -FGAPI void FGAPIENTRY glutWireIcosahedron( void ); -FGAPI void FGAPIENTRY glutSolidIcosahedron( void ); - -/* - * Teapot rendering functions, found in freeglut_teapot.c - */ -FGAPI void FGAPIENTRY glutWireTeapot( GLdouble size ); -FGAPI void FGAPIENTRY glutSolidTeapot( GLdouble size ); - -/* - * Game mode functions, see freeglut_gamemode.c - */ -FGAPI void FGAPIENTRY glutGameModeString( const char* string ); -FGAPI int FGAPIENTRY glutEnterGameMode( void ); -FGAPI void FGAPIENTRY glutLeaveGameMode( void ); -FGAPI int FGAPIENTRY glutGameModeGet( GLenum query ); - -/* - * Video resize functions, see freeglut_videoresize.c - */ -FGAPI int FGAPIENTRY glutVideoResizeGet( GLenum query ); -FGAPI void FGAPIENTRY glutSetupVideoResizing( void ); -FGAPI void FGAPIENTRY glutStopVideoResizing( void ); -FGAPI void FGAPIENTRY glutVideoResize( int x, int y, int width, int height ); -FGAPI void FGAPIENTRY glutVideoPan( int x, int y, int width, int height ); - -/* - * Colormap functions, see freeglut_misc.c - */ -FGAPI void FGAPIENTRY glutSetColor( int color, GLfloat red, GLfloat green, GLfloat blue ); -FGAPI GLfloat FGAPIENTRY glutGetColor( int color, int component ); -FGAPI void FGAPIENTRY glutCopyColormap( int window ); - -/* - * Misc keyboard and joystick functions, see freeglut_misc.c - */ -FGAPI void FGAPIENTRY glutIgnoreKeyRepeat( int ignore ); -FGAPI void FGAPIENTRY glutSetKeyRepeat( int repeatMode ); -FGAPI void FGAPIENTRY glutForceJoystickFunc( void ); - -/* - * Misc functions, see freeglut_misc.c - */ -FGAPI int FGAPIENTRY glutExtensionSupported( const char* extension ); -FGAPI void FGAPIENTRY glutReportErrors( void ); - -/* Comment from glut.h of classic GLUT: - - Win32 has an annoying issue where there are multiple C run-time - libraries (CRTs). If the executable is linked with a different CRT - from the GLUT DLL, the GLUT DLL will not share the same CRT static - data seen by the executable. In particular, atexit callbacks registered - in the executable will not be called if GLUT calls its (different) - exit routine). GLUT is typically built with the - "/MD" option (the CRT with multithreading DLL support), but the Visual - C++ linker default is "/ML" (the single threaded CRT). - - One workaround to this issue is requiring users to always link with - the same CRT as GLUT is compiled with. That requires users supply a - non-standard option. GLUT 3.7 has its own built-in workaround where - the executable's "exit" function pointer is covertly passed to GLUT. - GLUT then calls the executable's exit function pointer to ensure that - any "atexit" calls registered by the application are called if GLUT - needs to exit. - - Note that the __glut*WithExit routines should NEVER be called directly. - To avoid the atexit workaround, #define GLUT_DISABLE_ATEXIT_HACK. */ - -/* to get the prototype for exit() */ -#include - -#if defined(_WIN32) && !defined(GLUT_DISABLE_ATEXIT_HACK) && !defined(__WATCOMC__) -FGAPI void FGAPIENTRY __glutInitWithExit(int *argcp, char **argv, void (__cdecl *exitfunc)(int)); -FGAPI int FGAPIENTRY __glutCreateWindowWithExit(const char *title, void (__cdecl *exitfunc)(int)); -FGAPI int FGAPIENTRY __glutCreateMenuWithExit(void (* func)(int), void (__cdecl *exitfunc)(int)); -#ifndef FREEGLUT_BUILDING_LIB -#if defined(__GNUC__) -#define FGUNUSED __attribute__((unused)) -#else -#define FGUNUSED -#endif -static void FGAPIENTRY FGUNUSED glutInit_ATEXIT_HACK(int *argcp, char **argv) { __glutInitWithExit(argcp, argv, exit); } -#define glutInit glutInit_ATEXIT_HACK -static int FGAPIENTRY FGUNUSED glutCreateWindow_ATEXIT_HACK(const char *title) { return __glutCreateWindowWithExit(title, exit); } -#define glutCreateWindow glutCreateWindow_ATEXIT_HACK -static int FGAPIENTRY FGUNUSED glutCreateMenu_ATEXIT_HACK(void (* func)(int)) { return __glutCreateMenuWithExit(func, exit); } -#define glutCreateMenu glutCreateMenu_ATEXIT_HACK -#endif -#endif - -#ifdef __cplusplus - } -#endif - -/*** END OF FILE ***/ - -#endif /* __FREEGLUT_STD_H__ */ - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_stroke_mono_roman.c b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_stroke_mono_roman.c deleted file mode 100644 index f2a0d6d..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_stroke_mono_roman.c +++ /dev/null @@ -1,2849 +0,0 @@ -/* - * freeglut_stroke_mono_roman.c - * - * freeglut Monospace Roman stroke font definition - * - * Copyright (c) 1999-2000 Pawel W. Olszta. All Rights Reserved. - * Written by Pawel W. Olszta, - * Creation date: Thu Dec 16 1999 - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included - * in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - * PAWEL W. OLSZTA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER - * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - */ - - -/* This file has been automatically generated by the genstroke utility. */ - -#include "freeglut.h" -#include "freeglut_internal.h" - -/* char: 0x20 */ - -static const SFG_StrokeStrip ch32st[] = -{ - { 0, NULL } -}; - -static const SFG_StrokeChar ch32 = {104.762f,0,ch32st}; - -/* char: 0x21 */ - -static const SFG_StrokeVertex ch33st0[] = -{ - {52.381f,100.0f}, - {52.381f,33.3333f} -}; - -static const SFG_StrokeVertex ch33st1[] = -{ - {52.381f,9.5238f}, - {47.6191f,4.7619f}, - {52.381f,0.0f}, - {57.1429f,4.7619f}, - {52.381f,9.5238f} -}; - -static const SFG_StrokeStrip ch33st[] = -{ - {2,ch33st0}, - {5,ch33st1} -}; - -static const SFG_StrokeChar ch33 = {104.762f,2,ch33st}; - -/* char: 0x22 */ - -static const SFG_StrokeVertex ch34st0[] = -{ - {33.3334f,100.0f}, - {33.3334f,66.6667f} -}; - -static const SFG_StrokeVertex ch34st1[] = -{ - {71.4286f,100.0f}, - {71.4286f,66.6667f} -}; - -static const SFG_StrokeStrip ch34st[] = -{ - {2,ch34st0}, - {2,ch34st1} -}; - -static const SFG_StrokeChar ch34 = {104.762f,2,ch34st}; - -/* char: 0x23 */ - -static const SFG_StrokeVertex ch35st0[] = -{ - {54.7619f,119.048f}, - {21.4286f,-33.3333f} -}; - -static const SFG_StrokeVertex ch35st1[] = -{ - {83.3334f,119.048f}, - {50.0f,-33.3333f} -}; - -static const SFG_StrokeVertex ch35st2[] = -{ - {21.4286f,57.1429f}, - {88.0952f,57.1429f} -}; - -static const SFG_StrokeVertex ch35st3[] = -{ - {16.6667f,28.5714f}, - {83.3334f,28.5714f} -}; - -static const SFG_StrokeStrip ch35st[] = -{ - {2,ch35st0}, - {2,ch35st1}, - {2,ch35st2}, - {2,ch35st3} -}; - -static const SFG_StrokeChar ch35 = {104.762f,4,ch35st}; - -/* char: 0x24 */ - -static const SFG_StrokeVertex ch36st0[] = -{ - {42.8571f,119.048f}, - {42.8571f,-19.0476f} -}; - -static const SFG_StrokeVertex ch36st1[] = -{ - {61.9047f,119.048f}, - {61.9047f,-19.0476f} -}; - -static const SFG_StrokeVertex ch36st2[] = -{ - {85.7143f,85.7143f}, - {76.1905f,95.2381f}, - {61.9047f,100.0f}, - {42.8571f,100.0f}, - {28.5714f,95.2381f}, - {19.0476f,85.7143f}, - {19.0476f,76.1905f}, - {23.8095f,66.6667f}, - {28.5714f,61.9048f}, - {38.0952f,57.1429f}, - {66.6666f,47.619f}, - {76.1905f,42.8571f}, - {80.9524f,38.0952f}, - {85.7143f,28.5714f}, - {85.7143f,14.2857f}, - {76.1905f,4.7619f}, - {61.9047f,0.0f}, - {42.8571f,0.0f}, - {28.5714f,4.7619f}, - {19.0476f,14.2857f} -}; - -static const SFG_StrokeStrip ch36st[] = -{ - {2,ch36st0}, - {2,ch36st1}, - {20,ch36st2} -}; - -static const SFG_StrokeChar ch36 = {104.762f,3,ch36st}; - -/* char: 0x25 */ - -static const SFG_StrokeVertex ch37st0[] = -{ - {95.2381f,100.0f}, - {9.5238f,0.0f} -}; - -static const SFG_StrokeVertex ch37st1[] = -{ - {33.3333f,100.0f}, - {42.8571f,90.4762f}, - {42.8571f,80.9524f}, - {38.0952f,71.4286f}, - {28.5714f,66.6667f}, - {19.0476f,66.6667f}, - {9.5238f,76.1905f}, - {9.5238f,85.7143f}, - {14.2857f,95.2381f}, - {23.8095f,100.0f}, - {33.3333f,100.0f}, - {42.8571f,95.2381f}, - {57.1428f,90.4762f}, - {71.4286f,90.4762f}, - {85.7143f,95.2381f}, - {95.2381f,100.0f} -}; - -static const SFG_StrokeVertex ch37st2[] = -{ - {76.1905f,33.3333f}, - {66.6667f,28.5714f}, - {61.9048f,19.0476f}, - {61.9048f,9.5238f}, - {71.4286f,0.0f}, - {80.9524f,0.0f}, - {90.4762f,4.7619f}, - {95.2381f,14.2857f}, - {95.2381f,23.8095f}, - {85.7143f,33.3333f}, - {76.1905f,33.3333f} -}; - -static const SFG_StrokeStrip ch37st[] = -{ - {2,ch37st0}, - {16,ch37st1}, - {11,ch37st2} -}; - -static const SFG_StrokeChar ch37 = {104.762f,3,ch37st}; - -/* char: 0x26 */ - -static const SFG_StrokeVertex ch38st0[] = -{ - {100.0f,57.1429f}, - {100.0f,61.9048f}, - {95.2381f,66.6667f}, - {90.4762f,66.6667f}, - {85.7143f,61.9048f}, - {80.9524f,52.381f}, - {71.4286f,28.5714f}, - {61.9048f,14.2857f}, - {52.3809f,4.7619f}, - {42.8571f,0.0f}, - {23.8095f,0.0f}, - {14.2857f,4.7619f}, - {9.5238f,9.5238f}, - {4.7619f,19.0476f}, - {4.7619f,28.5714f}, - {9.5238f,38.0952f}, - {14.2857f,42.8571f}, - {47.619f,61.9048f}, - {52.3809f,66.6667f}, - {57.1429f,76.1905f}, - {57.1429f,85.7143f}, - {52.3809f,95.2381f}, - {42.8571f,100.0f}, - {33.3333f,95.2381f}, - {28.5714f,85.7143f}, - {28.5714f,76.1905f}, - {33.3333f,61.9048f}, - {42.8571f,47.619f}, - {66.6667f,14.2857f}, - {76.1905f,4.7619f}, - {85.7143f,0.0f}, - {95.2381f,0.0f}, - {100.0f,4.7619f}, - {100.0f,9.5238f} -}; - -static const SFG_StrokeStrip ch38st[] = -{ - {34,ch38st0} -}; - -static const SFG_StrokeChar ch38 = {104.762f,1,ch38st}; - -/* char: 0x27 */ - -static const SFG_StrokeVertex ch39st0[] = -{ - {52.381f,100.0f}, - {52.381f,66.6667f} -}; - -static const SFG_StrokeStrip ch39st[] = -{ - {2,ch39st0} -}; - -static const SFG_StrokeChar ch39 = {104.762f,1,ch39st}; - -/* char: 0x28 */ - -static const SFG_StrokeVertex ch40st0[] = -{ - {69.0476f,119.048f}, - {59.5238f,109.524f}, - {50.0f,95.2381f}, - {40.4762f,76.1905f}, - {35.7143f,52.381f}, - {35.7143f,33.3333f}, - {40.4762f,9.5238f}, - {50.0f,-9.5238f}, - {59.5238f,-23.8095f}, - {69.0476f,-33.3333f} -}; - -static const SFG_StrokeStrip ch40st[] = -{ - {10,ch40st0} -}; - -static const SFG_StrokeChar ch40 = {104.762f,1,ch40st}; - -/* char: 0x29 */ - -static const SFG_StrokeVertex ch41st0[] = -{ - {35.7143f,119.048f}, - {45.2381f,109.524f}, - {54.7619f,95.2381f}, - {64.2857f,76.1905f}, - {69.0476f,52.381f}, - {69.0476f,33.3333f}, - {64.2857f,9.5238f}, - {54.7619f,-9.5238f}, - {45.2381f,-23.8095f}, - {35.7143f,-33.3333f} -}; - -static const SFG_StrokeStrip ch41st[] = -{ - {10,ch41st0} -}; - -static const SFG_StrokeChar ch41 = {104.762f,1,ch41st}; - -/* char: 0x2a */ - -static const SFG_StrokeVertex ch42st0[] = -{ - {52.381f,71.4286f}, - {52.381f,14.2857f} -}; - -static const SFG_StrokeVertex ch42st1[] = -{ - {28.5715f,57.1429f}, - {76.1905f,28.5714f} -}; - -static const SFG_StrokeVertex ch42st2[] = -{ - {76.1905f,57.1429f}, - {28.5715f,28.5714f} -}; - -static const SFG_StrokeStrip ch42st[] = -{ - {2,ch42st0}, - {2,ch42st1}, - {2,ch42st2} -}; - -static const SFG_StrokeChar ch42 = {104.762f,3,ch42st}; - -/* char: 0x2b */ - -static const SFG_StrokeVertex ch43st0[] = -{ - {52.3809f,85.7143f}, - {52.3809f,0.0f} -}; - -static const SFG_StrokeVertex ch43st1[] = -{ - {9.5238f,42.8571f}, - {95.2381f,42.8571f} -}; - -static const SFG_StrokeStrip ch43st[] = -{ - {2,ch43st0}, - {2,ch43st1} -}; - -static const SFG_StrokeChar ch43 = {104.762f,2,ch43st}; - -/* char: 0x2c */ - -static const SFG_StrokeVertex ch44st0[] = -{ - {57.1429f,4.7619f}, - {52.381f,0.0f}, - {47.6191f,4.7619f}, - {52.381f,9.5238f}, - {57.1429f,4.7619f}, - {57.1429f,-4.7619f}, - {52.381f,-14.2857f}, - {47.6191f,-19.0476f} -}; - -static const SFG_StrokeStrip ch44st[] = -{ - {8,ch44st0} -}; - -static const SFG_StrokeChar ch44 = {104.762f,1,ch44st}; - -/* char: 0x2d */ - -static const SFG_StrokeVertex ch45st0[] = -{ - {9.5238f,42.8571f}, - {95.2381f,42.8571f} -}; - -static const SFG_StrokeStrip ch45st[] = -{ - {2,ch45st0} -}; - -static const SFG_StrokeChar ch45 = {104.762f,1,ch45st}; - -/* char: 0x2e */ - -static const SFG_StrokeVertex ch46st0[] = -{ - {52.381f,9.5238f}, - {47.6191f,4.7619f}, - {52.381f,0.0f}, - {57.1429f,4.7619f}, - {52.381f,9.5238f} -}; - -static const SFG_StrokeStrip ch46st[] = -{ - {5,ch46st0} -}; - -static const SFG_StrokeChar ch46 = {104.762f,1,ch46st}; - -/* char: 0x2f */ - -static const SFG_StrokeVertex ch47st0[] = -{ - {19.0476f,-14.2857f}, - {85.7143f,100.0f} -}; - -static const SFG_StrokeStrip ch47st[] = -{ - {2,ch47st0} -}; - -static const SFG_StrokeChar ch47 = {104.762f,1,ch47st}; - -/* char: 0x30 */ - -static const SFG_StrokeVertex ch48st0[] = -{ - {47.619f,100.0f}, - {33.3333f,95.2381f}, - {23.8095f,80.9524f}, - {19.0476f,57.1429f}, - {19.0476f,42.8571f}, - {23.8095f,19.0476f}, - {33.3333f,4.7619f}, - {47.619f,0.0f}, - {57.1428f,0.0f}, - {71.4286f,4.7619f}, - {80.9524f,19.0476f}, - {85.7143f,42.8571f}, - {85.7143f,57.1429f}, - {80.9524f,80.9524f}, - {71.4286f,95.2381f}, - {57.1428f,100.0f}, - {47.619f,100.0f} -}; - -static const SFG_StrokeStrip ch48st[] = -{ - {17,ch48st0} -}; - -static const SFG_StrokeChar ch48 = {104.762f,1,ch48st}; - -/* char: 0x31 */ - -static const SFG_StrokeVertex ch49st0[] = -{ - {40.4762f,80.9524f}, - {50.0f,85.7143f}, - {64.2857f,100.0f}, - {64.2857f,0.0f} -}; - -static const SFG_StrokeStrip ch49st[] = -{ - {4,ch49st0} -}; - -static const SFG_StrokeChar ch49 = {104.762f,1,ch49st}; - -/* char: 0x32 */ - -static const SFG_StrokeVertex ch50st0[] = -{ - {23.8095f,76.1905f}, - {23.8095f,80.9524f}, - {28.5714f,90.4762f}, - {33.3333f,95.2381f}, - {42.8571f,100.0f}, - {61.9047f,100.0f}, - {71.4286f,95.2381f}, - {76.1905f,90.4762f}, - {80.9524f,80.9524f}, - {80.9524f,71.4286f}, - {76.1905f,61.9048f}, - {66.6666f,47.619f}, - {19.0476f,0.0f}, - {85.7143f,0.0f} -}; - -static const SFG_StrokeStrip ch50st[] = -{ - {14,ch50st0} -}; - -static const SFG_StrokeChar ch50 = {104.762f,1,ch50st}; - -/* char: 0x33 */ - -static const SFG_StrokeVertex ch51st0[] = -{ - {28.5714f,100.0f}, - {80.9524f,100.0f}, - {52.3809f,61.9048f}, - {66.6666f,61.9048f}, - {76.1905f,57.1429f}, - {80.9524f,52.381f}, - {85.7143f,38.0952f}, - {85.7143f,28.5714f}, - {80.9524f,14.2857f}, - {71.4286f,4.7619f}, - {57.1428f,0.0f}, - {42.8571f,0.0f}, - {28.5714f,4.7619f}, - {23.8095f,9.5238f}, - {19.0476f,19.0476f} -}; - -static const SFG_StrokeStrip ch51st[] = -{ - {15,ch51st0} -}; - -static const SFG_StrokeChar ch51 = {104.762f,1,ch51st}; - -/* char: 0x34 */ - -static const SFG_StrokeVertex ch52st0[] = -{ - {64.2857f,100.0f}, - {16.6667f,33.3333f}, - {88.0952f,33.3333f} -}; - -static const SFG_StrokeVertex ch52st1[] = -{ - {64.2857f,100.0f}, - {64.2857f,0.0f} -}; - -static const SFG_StrokeStrip ch52st[] = -{ - {3,ch52st0}, - {2,ch52st1} -}; - -static const SFG_StrokeChar ch52 = {104.762f,2,ch52st}; - -/* char: 0x35 */ - -static const SFG_StrokeVertex ch53st0[] = -{ - {76.1905f,100.0f}, - {28.5714f,100.0f}, - {23.8095f,57.1429f}, - {28.5714f,61.9048f}, - {42.8571f,66.6667f}, - {57.1428f,66.6667f}, - {71.4286f,61.9048f}, - {80.9524f,52.381f}, - {85.7143f,38.0952f}, - {85.7143f,28.5714f}, - {80.9524f,14.2857f}, - {71.4286f,4.7619f}, - {57.1428f,0.0f}, - {42.8571f,0.0f}, - {28.5714f,4.7619f}, - {23.8095f,9.5238f}, - {19.0476f,19.0476f} -}; - -static const SFG_StrokeStrip ch53st[] = -{ - {17,ch53st0} -}; - -static const SFG_StrokeChar ch53 = {104.762f,1,ch53st}; - -/* char: 0x36 */ - -static const SFG_StrokeVertex ch54st0[] = -{ - {78.5714f,85.7143f}, - {73.8096f,95.2381f}, - {59.5238f,100.0f}, - {50.0f,100.0f}, - {35.7143f,95.2381f}, - {26.1905f,80.9524f}, - {21.4286f,57.1429f}, - {21.4286f,33.3333f}, - {26.1905f,14.2857f}, - {35.7143f,4.7619f}, - {50.0f,0.0f}, - {54.7619f,0.0f}, - {69.0476f,4.7619f}, - {78.5714f,14.2857f}, - {83.3334f,28.5714f}, - {83.3334f,33.3333f}, - {78.5714f,47.619f}, - {69.0476f,57.1429f}, - {54.7619f,61.9048f}, - {50.0f,61.9048f}, - {35.7143f,57.1429f}, - {26.1905f,47.619f}, - {21.4286f,33.3333f} -}; - -static const SFG_StrokeStrip ch54st[] = -{ - {23,ch54st0} -}; - -static const SFG_StrokeChar ch54 = {104.762f,1,ch54st}; - -/* char: 0x37 */ - -static const SFG_StrokeVertex ch55st0[] = -{ - {85.7143f,100.0f}, - {38.0952f,0.0f} -}; - -static const SFG_StrokeVertex ch55st1[] = -{ - {19.0476f,100.0f}, - {85.7143f,100.0f} -}; - -static const SFG_StrokeStrip ch55st[] = -{ - {2,ch55st0}, - {2,ch55st1} -}; - -static const SFG_StrokeChar ch55 = {104.762f,2,ch55st}; - -/* char: 0x38 */ - -static const SFG_StrokeVertex ch56st0[] = -{ - {42.8571f,100.0f}, - {28.5714f,95.2381f}, - {23.8095f,85.7143f}, - {23.8095f,76.1905f}, - {28.5714f,66.6667f}, - {38.0952f,61.9048f}, - {57.1428f,57.1429f}, - {71.4286f,52.381f}, - {80.9524f,42.8571f}, - {85.7143f,33.3333f}, - {85.7143f,19.0476f}, - {80.9524f,9.5238f}, - {76.1905f,4.7619f}, - {61.9047f,0.0f}, - {42.8571f,0.0f}, - {28.5714f,4.7619f}, - {23.8095f,9.5238f}, - {19.0476f,19.0476f}, - {19.0476f,33.3333f}, - {23.8095f,42.8571f}, - {33.3333f,52.381f}, - {47.619f,57.1429f}, - {66.6666f,61.9048f}, - {76.1905f,66.6667f}, - {80.9524f,76.1905f}, - {80.9524f,85.7143f}, - {76.1905f,95.2381f}, - {61.9047f,100.0f}, - {42.8571f,100.0f} -}; - -static const SFG_StrokeStrip ch56st[] = -{ - {29,ch56st0} -}; - -static const SFG_StrokeChar ch56 = {104.762f,1,ch56st}; - -/* char: 0x39 */ - -static const SFG_StrokeVertex ch57st0[] = -{ - {83.3334f,66.6667f}, - {78.5714f,52.381f}, - {69.0476f,42.8571f}, - {54.7619f,38.0952f}, - {50.0f,38.0952f}, - {35.7143f,42.8571f}, - {26.1905f,52.381f}, - {21.4286f,66.6667f}, - {21.4286f,71.4286f}, - {26.1905f,85.7143f}, - {35.7143f,95.2381f}, - {50.0f,100.0f}, - {54.7619f,100.0f}, - {69.0476f,95.2381f}, - {78.5714f,85.7143f}, - {83.3334f,66.6667f}, - {83.3334f,42.8571f}, - {78.5714f,19.0476f}, - {69.0476f,4.7619f}, - {54.7619f,0.0f}, - {45.2381f,0.0f}, - {30.9524f,4.7619f}, - {26.1905f,14.2857f} -}; - -static const SFG_StrokeStrip ch57st[] = -{ - {23,ch57st0} -}; - -static const SFG_StrokeChar ch57 = {104.762f,1,ch57st}; - -/* char: 0x3a */ - -static const SFG_StrokeVertex ch58st0[] = -{ - {52.381f,66.6667f}, - {47.6191f,61.9048f}, - {52.381f,57.1429f}, - {57.1429f,61.9048f}, - {52.381f,66.6667f} -}; - -static const SFG_StrokeVertex ch58st1[] = -{ - {52.381f,9.5238f}, - {47.6191f,4.7619f}, - {52.381f,0.0f}, - {57.1429f,4.7619f}, - {52.381f,9.5238f} -}; - -static const SFG_StrokeStrip ch58st[] = -{ - {5,ch58st0}, - {5,ch58st1} -}; - -static const SFG_StrokeChar ch58 = {104.762f,2,ch58st}; - -/* char: 0x3b */ - -static const SFG_StrokeVertex ch59st0[] = -{ - {52.381f,66.6667f}, - {47.6191f,61.9048f}, - {52.381f,57.1429f}, - {57.1429f,61.9048f}, - {52.381f,66.6667f} -}; - -static const SFG_StrokeVertex ch59st1[] = -{ - {57.1429f,4.7619f}, - {52.381f,0.0f}, - {47.6191f,4.7619f}, - {52.381f,9.5238f}, - {57.1429f,4.7619f}, - {57.1429f,-4.7619f}, - {52.381f,-14.2857f}, - {47.6191f,-19.0476f} -}; - -static const SFG_StrokeStrip ch59st[] = -{ - {5,ch59st0}, - {8,ch59st1} -}; - -static const SFG_StrokeChar ch59 = {104.762f,2,ch59st}; - -/* char: 0x3c */ - -static const SFG_StrokeVertex ch60st0[] = -{ - {90.4762f,85.7143f}, - {14.2857f,42.8571f}, - {90.4762f,0.0f} -}; - -static const SFG_StrokeStrip ch60st[] = -{ - {3,ch60st0} -}; - -static const SFG_StrokeChar ch60 = {104.762f,1,ch60st}; - -/* char: 0x3d */ - -static const SFG_StrokeVertex ch61st0[] = -{ - {9.5238f,57.1429f}, - {95.2381f,57.1429f} -}; - -static const SFG_StrokeVertex ch61st1[] = -{ - {9.5238f,28.5714f}, - {95.2381f,28.5714f} -}; - -static const SFG_StrokeStrip ch61st[] = -{ - {2,ch61st0}, - {2,ch61st1} -}; - -static const SFG_StrokeChar ch61 = {104.762f,2,ch61st}; - -/* char: 0x3e */ - -static const SFG_StrokeVertex ch62st0[] = -{ - {14.2857f,85.7143f}, - {90.4762f,42.8571f}, - {14.2857f,0.0f} -}; - -static const SFG_StrokeStrip ch62st[] = -{ - {3,ch62st0} -}; - -static const SFG_StrokeChar ch62 = {104.762f,1,ch62st}; - -/* char: 0x3f */ - -static const SFG_StrokeVertex ch63st0[] = -{ - {23.8095f,76.1905f}, - {23.8095f,80.9524f}, - {28.5714f,90.4762f}, - {33.3333f,95.2381f}, - {42.8571f,100.0f}, - {61.9047f,100.0f}, - {71.4285f,95.2381f}, - {76.1905f,90.4762f}, - {80.9524f,80.9524f}, - {80.9524f,71.4286f}, - {76.1905f,61.9048f}, - {71.4285f,57.1429f}, - {52.3809f,47.619f}, - {52.3809f,33.3333f} -}; - -static const SFG_StrokeVertex ch63st1[] = -{ - {52.3809f,9.5238f}, - {47.619f,4.7619f}, - {52.3809f,0.0f}, - {57.1428f,4.7619f}, - {52.3809f,9.5238f} -}; - -static const SFG_StrokeStrip ch63st[] = -{ - {14,ch63st0}, - {5,ch63st1} -}; - -static const SFG_StrokeChar ch63 = {104.762f,2,ch63st}; - -/* char: 0x40 */ - -static const SFG_StrokeVertex ch64st0[] = -{ - {64.2857f,52.381f}, - {54.7619f,57.1429f}, - {45.2381f,57.1429f}, - {40.4762f,47.619f}, - {40.4762f,42.8571f}, - {45.2381f,33.3333f}, - {54.7619f,33.3333f}, - {64.2857f,38.0952f} -}; - -static const SFG_StrokeVertex ch64st1[] = -{ - {64.2857f,57.1429f}, - {64.2857f,38.0952f}, - {69.0476f,33.3333f}, - {78.5714f,33.3333f}, - {83.3334f,42.8571f}, - {83.3334f,47.619f}, - {78.5714f,61.9048f}, - {69.0476f,71.4286f}, - {54.7619f,76.1905f}, - {50.0f,76.1905f}, - {35.7143f,71.4286f}, - {26.1905f,61.9048f}, - {21.4286f,47.619f}, - {21.4286f,42.8571f}, - {26.1905f,28.5714f}, - {35.7143f,19.0476f}, - {50.0f,14.2857f}, - {54.7619f,14.2857f}, - {69.0476f,19.0476f} -}; - -static const SFG_StrokeStrip ch64st[] = -{ - {8,ch64st0}, - {19,ch64st1} -}; - -static const SFG_StrokeChar ch64 = {104.762f,2,ch64st}; - -/* char: 0x41 */ - -static const SFG_StrokeVertex ch65st0[] = -{ - {52.3809f,100.0f}, - {14.2857f,0.0f} -}; - -static const SFG_StrokeVertex ch65st1[] = -{ - {52.3809f,100.0f}, - {90.4762f,0.0f} -}; - -static const SFG_StrokeVertex ch65st2[] = -{ - {28.5714f,33.3333f}, - {76.1905f,33.3333f} -}; - -static const SFG_StrokeStrip ch65st[] = -{ - {2,ch65st0}, - {2,ch65st1}, - {2,ch65st2} -}; - -static const SFG_StrokeChar ch65 = {104.762f,3,ch65st}; - -/* char: 0x42 */ - -static const SFG_StrokeVertex ch66st0[] = -{ - {19.0476f,100.0f}, - {19.0476f,0.0f} -}; - -static const SFG_StrokeVertex ch66st1[] = -{ - {19.0476f,100.0f}, - {61.9047f,100.0f}, - {76.1905f,95.2381f}, - {80.9524f,90.4762f}, - {85.7143f,80.9524f}, - {85.7143f,71.4286f}, - {80.9524f,61.9048f}, - {76.1905f,57.1429f}, - {61.9047f,52.381f} -}; - -static const SFG_StrokeVertex ch66st2[] = -{ - {19.0476f,52.381f}, - {61.9047f,52.381f}, - {76.1905f,47.619f}, - {80.9524f,42.8571f}, - {85.7143f,33.3333f}, - {85.7143f,19.0476f}, - {80.9524f,9.5238f}, - {76.1905f,4.7619f}, - {61.9047f,0.0f}, - {19.0476f,0.0f} -}; - -static const SFG_StrokeStrip ch66st[] = -{ - {2,ch66st0}, - {9,ch66st1}, - {10,ch66st2} -}; - -static const SFG_StrokeChar ch66 = {104.762f,3,ch66st}; - -/* char: 0x43 */ - -static const SFG_StrokeVertex ch67st0[] = -{ - {88.0952f,76.1905f}, - {83.3334f,85.7143f}, - {73.8096f,95.2381f}, - {64.2857f,100.0f}, - {45.2381f,100.0f}, - {35.7143f,95.2381f}, - {26.1905f,85.7143f}, - {21.4286f,76.1905f}, - {16.6667f,61.9048f}, - {16.6667f,38.0952f}, - {21.4286f,23.8095f}, - {26.1905f,14.2857f}, - {35.7143f,4.7619f}, - {45.2381f,0.0f}, - {64.2857f,0.0f}, - {73.8096f,4.7619f}, - {83.3334f,14.2857f}, - {88.0952f,23.8095f} -}; - -static const SFG_StrokeStrip ch67st[] = -{ - {18,ch67st0} -}; - -static const SFG_StrokeChar ch67 = {104.762f,1,ch67st}; - -/* char: 0x44 */ - -static const SFG_StrokeVertex ch68st0[] = -{ - {19.0476f,100.0f}, - {19.0476f,0.0f} -}; - -static const SFG_StrokeVertex ch68st1[] = -{ - {19.0476f,100.0f}, - {52.3809f,100.0f}, - {66.6666f,95.2381f}, - {76.1905f,85.7143f}, - {80.9524f,76.1905f}, - {85.7143f,61.9048f}, - {85.7143f,38.0952f}, - {80.9524f,23.8095f}, - {76.1905f,14.2857f}, - {66.6666f,4.7619f}, - {52.3809f,0.0f}, - {19.0476f,0.0f} -}; - -static const SFG_StrokeStrip ch68st[] = -{ - {2,ch68st0}, - {12,ch68st1} -}; - -static const SFG_StrokeChar ch68 = {104.762f,2,ch68st}; - -/* char: 0x45 */ - -static const SFG_StrokeVertex ch69st0[] = -{ - {21.4286f,100.0f}, - {21.4286f,0.0f} -}; - -static const SFG_StrokeVertex ch69st1[] = -{ - {21.4286f,100.0f}, - {83.3334f,100.0f} -}; - -static const SFG_StrokeVertex ch69st2[] = -{ - {21.4286f,52.381f}, - {59.5238f,52.381f} -}; - -static const SFG_StrokeVertex ch69st3[] = -{ - {21.4286f,0.0f}, - {83.3334f,0.0f} -}; - -static const SFG_StrokeStrip ch69st[] = -{ - {2,ch69st0}, - {2,ch69st1}, - {2,ch69st2}, - {2,ch69st3} -}; - -static const SFG_StrokeChar ch69 = {104.762f,4,ch69st}; - -/* char: 0x46 */ - -static const SFG_StrokeVertex ch70st0[] = -{ - {21.4286f,100.0f}, - {21.4286f,0.0f} -}; - -static const SFG_StrokeVertex ch70st1[] = -{ - {21.4286f,100.0f}, - {83.3334f,100.0f} -}; - -static const SFG_StrokeVertex ch70st2[] = -{ - {21.4286f,52.381f}, - {59.5238f,52.381f} -}; - -static const SFG_StrokeStrip ch70st[] = -{ - {2,ch70st0}, - {2,ch70st1}, - {2,ch70st2} -}; - -static const SFG_StrokeChar ch70 = {104.762f,3,ch70st}; - -/* char: 0x47 */ - -static const SFG_StrokeVertex ch71st0[] = -{ - {88.0952f,76.1905f}, - {83.3334f,85.7143f}, - {73.8096f,95.2381f}, - {64.2857f,100.0f}, - {45.2381f,100.0f}, - {35.7143f,95.2381f}, - {26.1905f,85.7143f}, - {21.4286f,76.1905f}, - {16.6667f,61.9048f}, - {16.6667f,38.0952f}, - {21.4286f,23.8095f}, - {26.1905f,14.2857f}, - {35.7143f,4.7619f}, - {45.2381f,0.0f}, - {64.2857f,0.0f}, - {73.8096f,4.7619f}, - {83.3334f,14.2857f}, - {88.0952f,23.8095f}, - {88.0952f,38.0952f} -}; - -static const SFG_StrokeVertex ch71st1[] = -{ - {64.2857f,38.0952f}, - {88.0952f,38.0952f} -}; - -static const SFG_StrokeStrip ch71st[] = -{ - {19,ch71st0}, - {2,ch71st1} -}; - -static const SFG_StrokeChar ch71 = {104.762f,2,ch71st}; - -/* char: 0x48 */ - -static const SFG_StrokeVertex ch72st0[] = -{ - {19.0476f,100.0f}, - {19.0476f,0.0f} -}; - -static const SFG_StrokeVertex ch72st1[] = -{ - {85.7143f,100.0f}, - {85.7143f,0.0f} -}; - -static const SFG_StrokeVertex ch72st2[] = -{ - {19.0476f,52.381f}, - {85.7143f,52.381f} -}; - -static const SFG_StrokeStrip ch72st[] = -{ - {2,ch72st0}, - {2,ch72st1}, - {2,ch72st2} -}; - -static const SFG_StrokeChar ch72 = {104.762f,3,ch72st}; - -/* char: 0x49 */ - -static const SFG_StrokeVertex ch73st0[] = -{ - {52.381f,100.0f}, - {52.381f,0.0f} -}; - -static const SFG_StrokeStrip ch73st[] = -{ - {2,ch73st0} -}; - -static const SFG_StrokeChar ch73 = {104.762f,1,ch73st}; - -/* char: 0x4a */ - -static const SFG_StrokeVertex ch74st0[] = -{ - {76.1905f,100.0f}, - {76.1905f,23.8095f}, - {71.4286f,9.5238f}, - {66.6667f,4.7619f}, - {57.1429f,0.0f}, - {47.6191f,0.0f}, - {38.0953f,4.7619f}, - {33.3334f,9.5238f}, - {28.5715f,23.8095f}, - {28.5715f,33.3333f} -}; - -static const SFG_StrokeStrip ch74st[] = -{ - {10,ch74st0} -}; - -static const SFG_StrokeChar ch74 = {104.762f,1,ch74st}; - -/* char: 0x4b */ - -static const SFG_StrokeVertex ch75st0[] = -{ - {19.0476f,100.0f}, - {19.0476f,0.0f} -}; - -static const SFG_StrokeVertex ch75st1[] = -{ - {85.7143f,100.0f}, - {19.0476f,33.3333f} -}; - -static const SFG_StrokeVertex ch75st2[] = -{ - {42.8571f,57.1429f}, - {85.7143f,0.0f} -}; - -static const SFG_StrokeStrip ch75st[] = -{ - {2,ch75st0}, - {2,ch75st1}, - {2,ch75st2} -}; - -static const SFG_StrokeChar ch75 = {104.762f,3,ch75st}; - -/* char: 0x4c */ - -static const SFG_StrokeVertex ch76st0[] = -{ - {23.8095f,100.0f}, - {23.8095f,0.0f} -}; - -static const SFG_StrokeVertex ch76st1[] = -{ - {23.8095f,0.0f}, - {80.9524f,0.0f} -}; - -static const SFG_StrokeStrip ch76st[] = -{ - {2,ch76st0}, - {2,ch76st1} -}; - -static const SFG_StrokeChar ch76 = {104.762f,2,ch76st}; - -/* char: 0x4d */ - -static const SFG_StrokeVertex ch77st0[] = -{ - {14.2857f,100.0f}, - {14.2857f,0.0f} -}; - -static const SFG_StrokeVertex ch77st1[] = -{ - {14.2857f,100.0f}, - {52.3809f,0.0f} -}; - -static const SFG_StrokeVertex ch77st2[] = -{ - {90.4762f,100.0f}, - {52.3809f,0.0f} -}; - -static const SFG_StrokeVertex ch77st3[] = -{ - {90.4762f,100.0f}, - {90.4762f,0.0f} -}; - -static const SFG_StrokeStrip ch77st[] = -{ - {2,ch77st0}, - {2,ch77st1}, - {2,ch77st2}, - {2,ch77st3} -}; - -static const SFG_StrokeChar ch77 = {104.762f,4,ch77st}; - -/* char: 0x4e */ - -static const SFG_StrokeVertex ch78st0[] = -{ - {19.0476f,100.0f}, - {19.0476f,0.0f} -}; - -static const SFG_StrokeVertex ch78st1[] = -{ - {19.0476f,100.0f}, - {85.7143f,0.0f} -}; - -static const SFG_StrokeVertex ch78st2[] = -{ - {85.7143f,100.0f}, - {85.7143f,0.0f} -}; - -static const SFG_StrokeStrip ch78st[] = -{ - {2,ch78st0}, - {2,ch78st1}, - {2,ch78st2} -}; - -static const SFG_StrokeChar ch78 = {104.762f,3,ch78st}; - -/* char: 0x4f */ - -static const SFG_StrokeVertex ch79st0[] = -{ - {42.8571f,100.0f}, - {33.3333f,95.2381f}, - {23.8095f,85.7143f}, - {19.0476f,76.1905f}, - {14.2857f,61.9048f}, - {14.2857f,38.0952f}, - {19.0476f,23.8095f}, - {23.8095f,14.2857f}, - {33.3333f,4.7619f}, - {42.8571f,0.0f}, - {61.9047f,0.0f}, - {71.4286f,4.7619f}, - {80.9524f,14.2857f}, - {85.7143f,23.8095f}, - {90.4762f,38.0952f}, - {90.4762f,61.9048f}, - {85.7143f,76.1905f}, - {80.9524f,85.7143f}, - {71.4286f,95.2381f}, - {61.9047f,100.0f}, - {42.8571f,100.0f} -}; - -static const SFG_StrokeStrip ch79st[] = -{ - {21,ch79st0} -}; - -static const SFG_StrokeChar ch79 = {104.762f,1,ch79st}; - -/* char: 0x50 */ - -static const SFG_StrokeVertex ch80st0[] = -{ - {19.0476f,100.0f}, - {19.0476f,0.0f} -}; - -static const SFG_StrokeVertex ch80st1[] = -{ - {19.0476f,100.0f}, - {61.9047f,100.0f}, - {76.1905f,95.2381f}, - {80.9524f,90.4762f}, - {85.7143f,80.9524f}, - {85.7143f,66.6667f}, - {80.9524f,57.1429f}, - {76.1905f,52.381f}, - {61.9047f,47.619f}, - {19.0476f,47.619f} -}; - -static const SFG_StrokeStrip ch80st[] = -{ - {2,ch80st0}, - {10,ch80st1} -}; - -static const SFG_StrokeChar ch80 = {104.762f,2,ch80st}; - -/* char: 0x51 */ - -static const SFG_StrokeVertex ch81st0[] = -{ - {42.8571f,100.0f}, - {33.3333f,95.2381f}, - {23.8095f,85.7143f}, - {19.0476f,76.1905f}, - {14.2857f,61.9048f}, - {14.2857f,38.0952f}, - {19.0476f,23.8095f}, - {23.8095f,14.2857f}, - {33.3333f,4.7619f}, - {42.8571f,0.0f}, - {61.9047f,0.0f}, - {71.4286f,4.7619f}, - {80.9524f,14.2857f}, - {85.7143f,23.8095f}, - {90.4762f,38.0952f}, - {90.4762f,61.9048f}, - {85.7143f,76.1905f}, - {80.9524f,85.7143f}, - {71.4286f,95.2381f}, - {61.9047f,100.0f}, - {42.8571f,100.0f} -}; - -static const SFG_StrokeVertex ch81st1[] = -{ - {57.1428f,19.0476f}, - {85.7143f,-9.5238f} -}; - -static const SFG_StrokeStrip ch81st[] = -{ - {21,ch81st0}, - {2,ch81st1} -}; - -static const SFG_StrokeChar ch81 = {104.762f,2,ch81st}; - -/* char: 0x52 */ - -static const SFG_StrokeVertex ch82st0[] = -{ - {19.0476f,100.0f}, - {19.0476f,0.0f} -}; - -static const SFG_StrokeVertex ch82st1[] = -{ - {19.0476f,100.0f}, - {61.9047f,100.0f}, - {76.1905f,95.2381f}, - {80.9524f,90.4762f}, - {85.7143f,80.9524f}, - {85.7143f,71.4286f}, - {80.9524f,61.9048f}, - {76.1905f,57.1429f}, - {61.9047f,52.381f}, - {19.0476f,52.381f} -}; - -static const SFG_StrokeVertex ch82st2[] = -{ - {52.3809f,52.381f}, - {85.7143f,0.0f} -}; - -static const SFG_StrokeStrip ch82st[] = -{ - {2,ch82st0}, - {10,ch82st1}, - {2,ch82st2} -}; - -static const SFG_StrokeChar ch82 = {104.762f,3,ch82st}; - -/* char: 0x53 */ - -static const SFG_StrokeVertex ch83st0[] = -{ - {85.7143f,85.7143f}, - {76.1905f,95.2381f}, - {61.9047f,100.0f}, - {42.8571f,100.0f}, - {28.5714f,95.2381f}, - {19.0476f,85.7143f}, - {19.0476f,76.1905f}, - {23.8095f,66.6667f}, - {28.5714f,61.9048f}, - {38.0952f,57.1429f}, - {66.6666f,47.619f}, - {76.1905f,42.8571f}, - {80.9524f,38.0952f}, - {85.7143f,28.5714f}, - {85.7143f,14.2857f}, - {76.1905f,4.7619f}, - {61.9047f,0.0f}, - {42.8571f,0.0f}, - {28.5714f,4.7619f}, - {19.0476f,14.2857f} -}; - -static const SFG_StrokeStrip ch83st[] = -{ - {20,ch83st0} -}; - -static const SFG_StrokeChar ch83 = {104.762f,1,ch83st}; - -/* char: 0x54 */ - -static const SFG_StrokeVertex ch84st0[] = -{ - {52.3809f,100.0f}, - {52.3809f,0.0f} -}; - -static const SFG_StrokeVertex ch84st1[] = -{ - {19.0476f,100.0f}, - {85.7143f,100.0f} -}; - -static const SFG_StrokeStrip ch84st[] = -{ - {2,ch84st0}, - {2,ch84st1} -}; - -static const SFG_StrokeChar ch84 = {104.762f,2,ch84st}; - -/* char: 0x55 */ - -static const SFG_StrokeVertex ch85st0[] = -{ - {19.0476f,100.0f}, - {19.0476f,28.5714f}, - {23.8095f,14.2857f}, - {33.3333f,4.7619f}, - {47.619f,0.0f}, - {57.1428f,0.0f}, - {71.4286f,4.7619f}, - {80.9524f,14.2857f}, - {85.7143f,28.5714f}, - {85.7143f,100.0f} -}; - -static const SFG_StrokeStrip ch85st[] = -{ - {10,ch85st0} -}; - -static const SFG_StrokeChar ch85 = {104.762f,1,ch85st}; - -/* char: 0x56 */ - -static const SFG_StrokeVertex ch86st0[] = -{ - {14.2857f,100.0f}, - {52.3809f,0.0f} -}; - -static const SFG_StrokeVertex ch86st1[] = -{ - {90.4762f,100.0f}, - {52.3809f,0.0f} -}; - -static const SFG_StrokeStrip ch86st[] = -{ - {2,ch86st0}, - {2,ch86st1} -}; - -static const SFG_StrokeChar ch86 = {104.762f,2,ch86st}; - -/* char: 0x57 */ - -static const SFG_StrokeVertex ch87st0[] = -{ - {4.7619f,100.0f}, - {28.5714f,0.0f} -}; - -static const SFG_StrokeVertex ch87st1[] = -{ - {52.3809f,100.0f}, - {28.5714f,0.0f} -}; - -static const SFG_StrokeVertex ch87st2[] = -{ - {52.3809f,100.0f}, - {76.1905f,0.0f} -}; - -static const SFG_StrokeVertex ch87st3[] = -{ - {100.0f,100.0f}, - {76.1905f,0.0f} -}; - -static const SFG_StrokeStrip ch87st[] = -{ - {2,ch87st0}, - {2,ch87st1}, - {2,ch87st2}, - {2,ch87st3} -}; - -static const SFG_StrokeChar ch87 = {104.762f,4,ch87st}; - -/* char: 0x58 */ - -static const SFG_StrokeVertex ch88st0[] = -{ - {19.0476f,100.0f}, - {85.7143f,0.0f} -}; - -static const SFG_StrokeVertex ch88st1[] = -{ - {85.7143f,100.0f}, - {19.0476f,0.0f} -}; - -static const SFG_StrokeStrip ch88st[] = -{ - {2,ch88st0}, - {2,ch88st1} -}; - -static const SFG_StrokeChar ch88 = {104.762f,2,ch88st}; - -/* char: 0x59 */ - -static const SFG_StrokeVertex ch89st0[] = -{ - {14.2857f,100.0f}, - {52.3809f,52.381f}, - {52.3809f,0.0f} -}; - -static const SFG_StrokeVertex ch89st1[] = -{ - {90.4762f,100.0f}, - {52.3809f,52.381f} -}; - -static const SFG_StrokeStrip ch89st[] = -{ - {3,ch89st0}, - {2,ch89st1} -}; - -static const SFG_StrokeChar ch89 = {104.762f,2,ch89st}; - -/* char: 0x5a */ - -static const SFG_StrokeVertex ch90st0[] = -{ - {85.7143f,100.0f}, - {19.0476f,0.0f} -}; - -static const SFG_StrokeVertex ch90st1[] = -{ - {19.0476f,100.0f}, - {85.7143f,100.0f} -}; - -static const SFG_StrokeVertex ch90st2[] = -{ - {19.0476f,0.0f}, - {85.7143f,0.0f} -}; - -static const SFG_StrokeStrip ch90st[] = -{ - {2,ch90st0}, - {2,ch90st1}, - {2,ch90st2} -}; - -static const SFG_StrokeChar ch90 = {104.762f,3,ch90st}; - -/* char: 0x5b */ - -static const SFG_StrokeVertex ch91st0[] = -{ - {35.7143f,119.048f}, - {35.7143f,-33.3333f} -}; - -static const SFG_StrokeVertex ch91st1[] = -{ - {40.4762f,119.048f}, - {40.4762f,-33.3333f} -}; - -static const SFG_StrokeVertex ch91st2[] = -{ - {35.7143f,119.048f}, - {69.0476f,119.048f} -}; - -static const SFG_StrokeVertex ch91st3[] = -{ - {35.7143f,-33.3333f}, - {69.0476f,-33.3333f} -}; - -static const SFG_StrokeStrip ch91st[] = -{ - {2,ch91st0}, - {2,ch91st1}, - {2,ch91st2}, - {2,ch91st3} -}; - -static const SFG_StrokeChar ch91 = {104.762f,4,ch91st}; - -/* char: 0x5c */ - -static const SFG_StrokeVertex ch92st0[] = -{ - {19.0476f,100.0f}, - {85.7143f,-14.2857f} -}; - -static const SFG_StrokeStrip ch92st[] = -{ - {2,ch92st0} -}; - -static const SFG_StrokeChar ch92 = {104.762f,1,ch92st}; - -/* char: 0x5d */ - -static const SFG_StrokeVertex ch93st0[] = -{ - {64.2857f,119.048f}, - {64.2857f,-33.3333f} -}; - -static const SFG_StrokeVertex ch93st1[] = -{ - {69.0476f,119.048f}, - {69.0476f,-33.3333f} -}; - -static const SFG_StrokeVertex ch93st2[] = -{ - {35.7143f,119.048f}, - {69.0476f,119.048f} -}; - -static const SFG_StrokeVertex ch93st3[] = -{ - {35.7143f,-33.3333f}, - {69.0476f,-33.3333f} -}; - -static const SFG_StrokeStrip ch93st[] = -{ - {2,ch93st0}, - {2,ch93st1}, - {2,ch93st2}, - {2,ch93st3} -}; - -static const SFG_StrokeChar ch93 = {104.762f,4,ch93st}; - -/* char: 0x5e */ - -static const SFG_StrokeVertex ch94st0[] = -{ - {52.3809f,109.524f}, - {14.2857f,42.8571f} -}; - -static const SFG_StrokeVertex ch94st1[] = -{ - {52.3809f,109.524f}, - {90.4762f,42.8571f} -}; - -static const SFG_StrokeStrip ch94st[] = -{ - {2,ch94st0}, - {2,ch94st1} -}; - -static const SFG_StrokeChar ch94 = {104.762f,2,ch94st}; - -/* char: 0x5f */ - -static const SFG_StrokeVertex ch95st0[] = -{ - {0,-33.3333f}, - {104.762f,-33.3333f}, - {104.762f,-28.5714f}, - {0,-28.5714f}, - {0,-33.3333f} -}; - -static const SFG_StrokeStrip ch95st[] = -{ - {5,ch95st0} -}; - -static const SFG_StrokeChar ch95 = {104.762f,1,ch95st}; - -/* char: 0x60 */ - -static const SFG_StrokeVertex ch96st0[] = -{ - {42.8572f,100.0f}, - {66.6667f,71.4286f} -}; - -static const SFG_StrokeVertex ch96st1[] = -{ - {42.8572f,100.0f}, - {38.0953f,95.2381f}, - {66.6667f,71.4286f} -}; - -static const SFG_StrokeStrip ch96st[] = -{ - {2,ch96st0}, - {3,ch96st1} -}; - -static const SFG_StrokeChar ch96 = {104.762f,2,ch96st}; - -/* char: 0x61 */ - -static const SFG_StrokeVertex ch97st0[] = -{ - {80.9524f,66.6667f}, - {80.9524f,0.0f} -}; - -static const SFG_StrokeVertex ch97st1[] = -{ - {80.9524f,52.381f}, - {71.4285f,61.9048f}, - {61.9047f,66.6667f}, - {47.619f,66.6667f}, - {38.0952f,61.9048f}, - {28.5714f,52.381f}, - {23.8095f,38.0952f}, - {23.8095f,28.5714f}, - {28.5714f,14.2857f}, - {38.0952f,4.7619f}, - {47.619f,0.0f}, - {61.9047f,0.0f}, - {71.4285f,4.7619f}, - {80.9524f,14.2857f} -}; - -static const SFG_StrokeStrip ch97st[] = -{ - {2,ch97st0}, - {14,ch97st1} -}; - -static const SFG_StrokeChar ch97 = {104.762f,2,ch97st}; - -/* char: 0x62 */ - -static const SFG_StrokeVertex ch98st0[] = -{ - {23.8095f,100.0f}, - {23.8095f,0.0f} -}; - -static const SFG_StrokeVertex ch98st1[] = -{ - {23.8095f,52.381f}, - {33.3333f,61.9048f}, - {42.8571f,66.6667f}, - {57.1428f,66.6667f}, - {66.6666f,61.9048f}, - {76.1905f,52.381f}, - {80.9524f,38.0952f}, - {80.9524f,28.5714f}, - {76.1905f,14.2857f}, - {66.6666f,4.7619f}, - {57.1428f,0.0f}, - {42.8571f,0.0f}, - {33.3333f,4.7619f}, - {23.8095f,14.2857f} -}; - -static const SFG_StrokeStrip ch98st[] = -{ - {2,ch98st0}, - {14,ch98st1} -}; - -static const SFG_StrokeChar ch98 = {104.762f,2,ch98st}; - -/* char: 0x63 */ - -static const SFG_StrokeVertex ch99st0[] = -{ - {80.9524f,52.381f}, - {71.4285f,61.9048f}, - {61.9047f,66.6667f}, - {47.619f,66.6667f}, - {38.0952f,61.9048f}, - {28.5714f,52.381f}, - {23.8095f,38.0952f}, - {23.8095f,28.5714f}, - {28.5714f,14.2857f}, - {38.0952f,4.7619f}, - {47.619f,0.0f}, - {61.9047f,0.0f}, - {71.4285f,4.7619f}, - {80.9524f,14.2857f} -}; - -static const SFG_StrokeStrip ch99st[] = -{ - {14,ch99st0} -}; - -static const SFG_StrokeChar ch99 = {104.762f,1,ch99st}; - -/* char: 0x64 */ - -static const SFG_StrokeVertex ch100st0[] = -{ - {80.9524f,100.0f}, - {80.9524f,0.0f} -}; - -static const SFG_StrokeVertex ch100st1[] = -{ - {80.9524f,52.381f}, - {71.4285f,61.9048f}, - {61.9047f,66.6667f}, - {47.619f,66.6667f}, - {38.0952f,61.9048f}, - {28.5714f,52.381f}, - {23.8095f,38.0952f}, - {23.8095f,28.5714f}, - {28.5714f,14.2857f}, - {38.0952f,4.7619f}, - {47.619f,0.0f}, - {61.9047f,0.0f}, - {71.4285f,4.7619f}, - {80.9524f,14.2857f} -}; - -static const SFG_StrokeStrip ch100st[] = -{ - {2,ch100st0}, - {14,ch100st1} -}; - -static const SFG_StrokeChar ch100 = {104.762f,2,ch100st}; - -/* char: 0x65 */ - -static const SFG_StrokeVertex ch101st0[] = -{ - {23.8095f,38.0952f}, - {80.9524f,38.0952f}, - {80.9524f,47.619f}, - {76.1905f,57.1429f}, - {71.4285f,61.9048f}, - {61.9047f,66.6667f}, - {47.619f,66.6667f}, - {38.0952f,61.9048f}, - {28.5714f,52.381f}, - {23.8095f,38.0952f}, - {23.8095f,28.5714f}, - {28.5714f,14.2857f}, - {38.0952f,4.7619f}, - {47.619f,0.0f}, - {61.9047f,0.0f}, - {71.4285f,4.7619f}, - {80.9524f,14.2857f} -}; - -static const SFG_StrokeStrip ch101st[] = -{ - {17,ch101st0} -}; - -static const SFG_StrokeChar ch101 = {104.762f,1,ch101st}; - -/* char: 0x66 */ - -static const SFG_StrokeVertex ch102st0[] = -{ - {71.4286f,100.0f}, - {61.9048f,100.0f}, - {52.381f,95.2381f}, - {47.6191f,80.9524f}, - {47.6191f,0.0f} -}; - -static const SFG_StrokeVertex ch102st1[] = -{ - {33.3334f,66.6667f}, - {66.6667f,66.6667f} -}; - -static const SFG_StrokeStrip ch102st[] = -{ - {5,ch102st0}, - {2,ch102st1} -}; - -static const SFG_StrokeChar ch102 = {104.762f,2,ch102st}; - -/* char: 0x67 */ - -static const SFG_StrokeVertex ch103st0[] = -{ - {80.9524f,66.6667f}, - {80.9524f,-9.5238f}, - {76.1905f,-23.8095f}, - {71.4285f,-28.5714f}, - {61.9047f,-33.3333f}, - {47.619f,-33.3333f}, - {38.0952f,-28.5714f} -}; - -static const SFG_StrokeVertex ch103st1[] = -{ - {80.9524f,52.381f}, - {71.4285f,61.9048f}, - {61.9047f,66.6667f}, - {47.619f,66.6667f}, - {38.0952f,61.9048f}, - {28.5714f,52.381f}, - {23.8095f,38.0952f}, - {23.8095f,28.5714f}, - {28.5714f,14.2857f}, - {38.0952f,4.7619f}, - {47.619f,0.0f}, - {61.9047f,0.0f}, - {71.4285f,4.7619f}, - {80.9524f,14.2857f} -}; - -static const SFG_StrokeStrip ch103st[] = -{ - {7,ch103st0}, - {14,ch103st1} -}; - -static const SFG_StrokeChar ch103 = {104.762f,2,ch103st}; - -/* char: 0x68 */ - -static const SFG_StrokeVertex ch104st0[] = -{ - {26.1905f,100.0f}, - {26.1905f,0.0f} -}; - -static const SFG_StrokeVertex ch104st1[] = -{ - {26.1905f,47.619f}, - {40.4762f,61.9048f}, - {50.0f,66.6667f}, - {64.2857f,66.6667f}, - {73.8095f,61.9048f}, - {78.5715f,47.619f}, - {78.5715f,0.0f} -}; - -static const SFG_StrokeStrip ch104st[] = -{ - {2,ch104st0}, - {7,ch104st1} -}; - -static const SFG_StrokeChar ch104 = {104.762f,2,ch104st}; - -/* char: 0x69 */ - -static const SFG_StrokeVertex ch105st0[] = -{ - {47.6191f,100.0f}, - {52.381f,95.2381f}, - {57.1429f,100.0f}, - {52.381f,104.762f}, - {47.6191f,100.0f} -}; - -static const SFG_StrokeVertex ch105st1[] = -{ - {52.381f,66.6667f}, - {52.381f,0.0f} -}; - -static const SFG_StrokeStrip ch105st[] = -{ - {5,ch105st0}, - {2,ch105st1} -}; - -static const SFG_StrokeChar ch105 = {104.762f,2,ch105st}; - -/* char: 0x6a */ - -static const SFG_StrokeVertex ch106st0[] = -{ - {57.1429f,100.0f}, - {61.9048f,95.2381f}, - {66.6667f,100.0f}, - {61.9048f,104.762f}, - {57.1429f,100.0f} -}; - -static const SFG_StrokeVertex ch106st1[] = -{ - {61.9048f,66.6667f}, - {61.9048f,-14.2857f}, - {57.1429f,-28.5714f}, - {47.6191f,-33.3333f}, - {38.0953f,-33.3333f} -}; - -static const SFG_StrokeStrip ch106st[] = -{ - {5,ch106st0}, - {5,ch106st1} -}; - -static const SFG_StrokeChar ch106 = {104.762f,2,ch106st}; - -/* char: 0x6b */ - -static const SFG_StrokeVertex ch107st0[] = -{ - {26.1905f,100.0f}, - {26.1905f,0.0f} -}; - -static const SFG_StrokeVertex ch107st1[] = -{ - {73.8095f,66.6667f}, - {26.1905f,19.0476f} -}; - -static const SFG_StrokeVertex ch107st2[] = -{ - {45.2381f,38.0952f}, - {78.5715f,0.0f} -}; - -static const SFG_StrokeStrip ch107st[] = -{ - {2,ch107st0}, - {2,ch107st1}, - {2,ch107st2} -}; - -static const SFG_StrokeChar ch107 = {104.762f,3,ch107st}; - -/* char: 0x6c */ - -static const SFG_StrokeVertex ch108st0[] = -{ - {52.381f,100.0f}, - {52.381f,0.0f} -}; - -static const SFG_StrokeStrip ch108st[] = -{ - {2,ch108st0} -}; - -static const SFG_StrokeChar ch108 = {104.762f,1,ch108st}; - -/* char: 0x6d */ - -static const SFG_StrokeVertex ch109st0[] = -{ - {0,66.6667f}, - {0,0.0f} -}; - -static const SFG_StrokeVertex ch109st1[] = -{ - {0,47.619f}, - {14.2857f,61.9048f}, - {23.8095f,66.6667f}, - {38.0952f,66.6667f}, - {47.619f,61.9048f}, - {52.381f,47.619f}, - {52.381f,0.0f} -}; - -static const SFG_StrokeVertex ch109st2[] = -{ - {52.381f,47.619f}, - {66.6667f,61.9048f}, - {76.1905f,66.6667f}, - {90.4762f,66.6667f}, - {100.0f,61.9048f}, - {104.762f,47.619f}, - {104.762f,0.0f} -}; - -static const SFG_StrokeStrip ch109st[] = -{ - {2,ch109st0}, - {7,ch109st1}, - {7,ch109st2} -}; - -static const SFG_StrokeChar ch109 = {104.762f,3,ch109st}; - -/* char: 0x6e */ - -static const SFG_StrokeVertex ch110st0[] = -{ - {26.1905f,66.6667f}, - {26.1905f,0.0f} -}; - -static const SFG_StrokeVertex ch110st1[] = -{ - {26.1905f,47.619f}, - {40.4762f,61.9048f}, - {50.0f,66.6667f}, - {64.2857f,66.6667f}, - {73.8095f,61.9048f}, - {78.5715f,47.619f}, - {78.5715f,0.0f} -}; - -static const SFG_StrokeStrip ch110st[] = -{ - {2,ch110st0}, - {7,ch110st1} -}; - -static const SFG_StrokeChar ch110 = {104.762f,2,ch110st}; - -/* char: 0x6f */ - -static const SFG_StrokeVertex ch111st0[] = -{ - {45.2381f,66.6667f}, - {35.7143f,61.9048f}, - {26.1905f,52.381f}, - {21.4286f,38.0952f}, - {21.4286f,28.5714f}, - {26.1905f,14.2857f}, - {35.7143f,4.7619f}, - {45.2381f,0.0f}, - {59.5238f,0.0f}, - {69.0476f,4.7619f}, - {78.5714f,14.2857f}, - {83.3334f,28.5714f}, - {83.3334f,38.0952f}, - {78.5714f,52.381f}, - {69.0476f,61.9048f}, - {59.5238f,66.6667f}, - {45.2381f,66.6667f} -}; - -static const SFG_StrokeStrip ch111st[] = -{ - {17,ch111st0} -}; - -static const SFG_StrokeChar ch111 = {104.762f,1,ch111st}; - -/* char: 0x70 */ - -static const SFG_StrokeVertex ch112st0[] = -{ - {23.8095f,66.6667f}, - {23.8095f,-33.3333f} -}; - -static const SFG_StrokeVertex ch112st1[] = -{ - {23.8095f,52.381f}, - {33.3333f,61.9048f}, - {42.8571f,66.6667f}, - {57.1428f,66.6667f}, - {66.6666f,61.9048f}, - {76.1905f,52.381f}, - {80.9524f,38.0952f}, - {80.9524f,28.5714f}, - {76.1905f,14.2857f}, - {66.6666f,4.7619f}, - {57.1428f,0.0f}, - {42.8571f,0.0f}, - {33.3333f,4.7619f}, - {23.8095f,14.2857f} -}; - -static const SFG_StrokeStrip ch112st[] = -{ - {2,ch112st0}, - {14,ch112st1} -}; - -static const SFG_StrokeChar ch112 = {104.762f,2,ch112st}; - -/* char: 0x71 */ - -static const SFG_StrokeVertex ch113st0[] = -{ - {80.9524f,66.6667f}, - {80.9524f,-33.3333f} -}; - -static const SFG_StrokeVertex ch113st1[] = -{ - {80.9524f,52.381f}, - {71.4285f,61.9048f}, - {61.9047f,66.6667f}, - {47.619f,66.6667f}, - {38.0952f,61.9048f}, - {28.5714f,52.381f}, - {23.8095f,38.0952f}, - {23.8095f,28.5714f}, - {28.5714f,14.2857f}, - {38.0952f,4.7619f}, - {47.619f,0.0f}, - {61.9047f,0.0f}, - {71.4285f,4.7619f}, - {80.9524f,14.2857f} -}; - -static const SFG_StrokeStrip ch113st[] = -{ - {2,ch113st0}, - {14,ch113st1} -}; - -static const SFG_StrokeChar ch113 = {104.762f,2,ch113st}; - -/* char: 0x72 */ - -static const SFG_StrokeVertex ch114st0[] = -{ - {33.3334f,66.6667f}, - {33.3334f,0.0f} -}; - -static const SFG_StrokeVertex ch114st1[] = -{ - {33.3334f,38.0952f}, - {38.0953f,52.381f}, - {47.6191f,61.9048f}, - {57.1429f,66.6667f}, - {71.4286f,66.6667f} -}; - -static const SFG_StrokeStrip ch114st[] = -{ - {2,ch114st0}, - {5,ch114st1} -}; - -static const SFG_StrokeChar ch114 = {104.762f,2,ch114st}; - -/* char: 0x73 */ - -static const SFG_StrokeVertex ch115st0[] = -{ - {78.5715f,52.381f}, - {73.8095f,61.9048f}, - {59.5238f,66.6667f}, - {45.2381f,66.6667f}, - {30.9524f,61.9048f}, - {26.1905f,52.381f}, - {30.9524f,42.8571f}, - {40.4762f,38.0952f}, - {64.2857f,33.3333f}, - {73.8095f,28.5714f}, - {78.5715f,19.0476f}, - {78.5715f,14.2857f}, - {73.8095f,4.7619f}, - {59.5238f,0.0f}, - {45.2381f,0.0f}, - {30.9524f,4.7619f}, - {26.1905f,14.2857f} -}; - -static const SFG_StrokeStrip ch115st[] = -{ - {17,ch115st0} -}; - -static const SFG_StrokeChar ch115 = {104.762f,1,ch115st}; - -/* char: 0x74 */ - -static const SFG_StrokeVertex ch116st0[] = -{ - {47.6191f,100.0f}, - {47.6191f,19.0476f}, - {52.381f,4.7619f}, - {61.9048f,0.0f}, - {71.4286f,0.0f} -}; - -static const SFG_StrokeVertex ch116st1[] = -{ - {33.3334f,66.6667f}, - {66.6667f,66.6667f} -}; - -static const SFG_StrokeStrip ch116st[] = -{ - {5,ch116st0}, - {2,ch116st1} -}; - -static const SFG_StrokeChar ch116 = {104.762f,2,ch116st}; - -/* char: 0x75 */ - -static const SFG_StrokeVertex ch117st0[] = -{ - {26.1905f,66.6667f}, - {26.1905f,19.0476f}, - {30.9524f,4.7619f}, - {40.4762f,0.0f}, - {54.7619f,0.0f}, - {64.2857f,4.7619f}, - {78.5715f,19.0476f} -}; - -static const SFG_StrokeVertex ch117st1[] = -{ - {78.5715f,66.6667f}, - {78.5715f,0.0f} -}; - -static const SFG_StrokeStrip ch117st[] = -{ - {7,ch117st0}, - {2,ch117st1} -}; - -static const SFG_StrokeChar ch117 = {104.762f,2,ch117st}; - -/* char: 0x76 */ - -static const SFG_StrokeVertex ch118st0[] = -{ - {23.8095f,66.6667f}, - {52.3809f,0.0f} -}; - -static const SFG_StrokeVertex ch118st1[] = -{ - {80.9524f,66.6667f}, - {52.3809f,0.0f} -}; - -static const SFG_StrokeStrip ch118st[] = -{ - {2,ch118st0}, - {2,ch118st1} -}; - -static const SFG_StrokeChar ch118 = {104.762f,2,ch118st}; - -/* char: 0x77 */ - -static const SFG_StrokeVertex ch119st0[] = -{ - {14.2857f,66.6667f}, - {33.3333f,0.0f} -}; - -static const SFG_StrokeVertex ch119st1[] = -{ - {52.3809f,66.6667f}, - {33.3333f,0.0f} -}; - -static const SFG_StrokeVertex ch119st2[] = -{ - {52.3809f,66.6667f}, - {71.4286f,0.0f} -}; - -static const SFG_StrokeVertex ch119st3[] = -{ - {90.4762f,66.6667f}, - {71.4286f,0.0f} -}; - -static const SFG_StrokeStrip ch119st[] = -{ - {2,ch119st0}, - {2,ch119st1}, - {2,ch119st2}, - {2,ch119st3} -}; - -static const SFG_StrokeChar ch119 = {104.762f,4,ch119st}; - -/* char: 0x78 */ - -static const SFG_StrokeVertex ch120st0[] = -{ - {26.1905f,66.6667f}, - {78.5715f,0.0f} -}; - -static const SFG_StrokeVertex ch120st1[] = -{ - {78.5715f,66.6667f}, - {26.1905f,0.0f} -}; - -static const SFG_StrokeStrip ch120st[] = -{ - {2,ch120st0}, - {2,ch120st1} -}; - -static const SFG_StrokeChar ch120 = {104.762f,2,ch120st}; - -/* char: 0x79 */ - -static const SFG_StrokeVertex ch121st0[] = -{ - {26.1905f,66.6667f}, - {54.7619f,0.0f} -}; - -static const SFG_StrokeVertex ch121st1[] = -{ - {83.3334f,66.6667f}, - {54.7619f,0.0f}, - {45.2381f,-19.0476f}, - {35.7143f,-28.5714f}, - {26.1905f,-33.3333f}, - {21.4286f,-33.3333f} -}; - -static const SFG_StrokeStrip ch121st[] = -{ - {2,ch121st0}, - {6,ch121st1} -}; - -static const SFG_StrokeChar ch121 = {104.762f,2,ch121st}; - -/* char: 0x7a */ - -static const SFG_StrokeVertex ch122st0[] = -{ - {78.5715f,66.6667f}, - {26.1905f,0.0f} -}; - -static const SFG_StrokeVertex ch122st1[] = -{ - {26.1905f,66.6667f}, - {78.5715f,66.6667f} -}; - -static const SFG_StrokeVertex ch122st2[] = -{ - {26.1905f,0.0f}, - {78.5715f,0.0f} -}; - -static const SFG_StrokeStrip ch122st[] = -{ - {2,ch122st0}, - {2,ch122st1}, - {2,ch122st2} -}; - -static const SFG_StrokeChar ch122 = {104.762f,3,ch122st}; - -/* char: 0x7b */ - -static const SFG_StrokeVertex ch123st0[] = -{ - {64.2857f,119.048f}, - {54.7619f,114.286f}, - {50.0f,109.524f}, - {45.2381f,100.0f}, - {45.2381f,90.4762f}, - {50.0f,80.9524f}, - {54.7619f,76.1905f}, - {59.5238f,66.6667f}, - {59.5238f,57.1429f}, - {50.0f,47.619f} -}; - -static const SFG_StrokeVertex ch123st1[] = -{ - {54.7619f,114.286f}, - {50.0f,104.762f}, - {50.0f,95.2381f}, - {54.7619f,85.7143f}, - {59.5238f,80.9524f}, - {64.2857f,71.4286f}, - {64.2857f,61.9048f}, - {59.5238f,52.381f}, - {40.4762f,42.8571f}, - {59.5238f,33.3333f}, - {64.2857f,23.8095f}, - {64.2857f,14.2857f}, - {59.5238f,4.7619f}, - {54.7619f,0.0f}, - {50.0f,-9.5238f}, - {50.0f,-19.0476f}, - {54.7619f,-28.5714f} -}; - -static const SFG_StrokeVertex ch123st2[] = -{ - {50.0f,38.0952f}, - {59.5238f,28.5714f}, - {59.5238f,19.0476f}, - {54.7619f,9.5238f}, - {50.0f,4.7619f}, - {45.2381f,-4.7619f}, - {45.2381f,-14.2857f}, - {50.0f,-23.8095f}, - {54.7619f,-28.5714f}, - {64.2857f,-33.3333f} -}; - -static const SFG_StrokeStrip ch123st[] = -{ - {10,ch123st0}, - {17,ch123st1}, - {10,ch123st2} -}; - -static const SFG_StrokeChar ch123 = {104.762f,3,ch123st}; - -/* char: 0x7c */ - -static const SFG_StrokeVertex ch124st0[] = -{ - {52.381f,119.048f}, - {52.381f,-33.3333f} -}; - -static const SFG_StrokeStrip ch124st[] = -{ - {2,ch124st0} -}; - -static const SFG_StrokeChar ch124 = {104.762f,1,ch124st}; - -/* char: 0x7d */ - -static const SFG_StrokeVertex ch125st0[] = -{ - {40.4762f,119.048f}, - {50.0f,114.286f}, - {54.7619f,109.524f}, - {59.5238f,100.0f}, - {59.5238f,90.4762f}, - {54.7619f,80.9524f}, - {50.0f,76.1905f}, - {45.2381f,66.6667f}, - {45.2381f,57.1429f}, - {54.7619f,47.619f} -}; - -static const SFG_StrokeVertex ch125st1[] = -{ - {50.0f,114.286f}, - {54.7619f,104.762f}, - {54.7619f,95.2381f}, - {50.0f,85.7143f}, - {45.2381f,80.9524f}, - {40.4762f,71.4286f}, - {40.4762f,61.9048f}, - {45.2381f,52.381f}, - {64.2857f,42.8571f}, - {45.2381f,33.3333f}, - {40.4762f,23.8095f}, - {40.4762f,14.2857f}, - {45.2381f,4.7619f}, - {50.0f,0.0f}, - {54.7619f,-9.5238f}, - {54.7619f,-19.0476f}, - {50.0f,-28.5714f} -}; - -static const SFG_StrokeVertex ch125st2[] = -{ - {54.7619f,38.0952f}, - {45.2381f,28.5714f}, - {45.2381f,19.0476f}, - {50.0f,9.5238f}, - {54.7619f,4.7619f}, - {59.5238f,-4.7619f}, - {59.5238f,-14.2857f}, - {54.7619f,-23.8095f}, - {50.0f,-28.5714f}, - {40.4762f,-33.3333f} -}; - -static const SFG_StrokeStrip ch125st[] = -{ - {10,ch125st0}, - {17,ch125st1}, - {10,ch125st2} -}; - -static const SFG_StrokeChar ch125 = {104.762f,3,ch125st}; - -/* char: 0x7e */ - -static const SFG_StrokeVertex ch126st0[] = -{ - {9.5238f,28.5714f}, - {9.5238f,38.0952f}, - {14.2857f,52.381f}, - {23.8095f,57.1429f}, - {33.3333f,57.1429f}, - {42.8571f,52.381f}, - {61.9048f,38.0952f}, - {71.4286f,33.3333f}, - {80.9524f,33.3333f}, - {90.4762f,38.0952f}, - {95.2381f,47.619f} -}; - -static const SFG_StrokeVertex ch126st1[] = -{ - {9.5238f,38.0952f}, - {14.2857f,47.619f}, - {23.8095f,52.381f}, - {33.3333f,52.381f}, - {42.8571f,47.619f}, - {61.9048f,33.3333f}, - {71.4286f,28.5714f}, - {80.9524f,28.5714f}, - {90.4762f,33.3333f}, - {95.2381f,47.619f}, - {95.2381f,57.1429f} -}; - -static const SFG_StrokeStrip ch126st[] = -{ - {11,ch126st0}, - {11,ch126st1} -}; - -static const SFG_StrokeChar ch126 = {104.762f,2,ch126st}; - -/* char: 0x7f */ - -static const SFG_StrokeVertex ch127st0[] = -{ - {71.4286f,100.0f}, - {33.3333f,-33.3333f} -}; - -static const SFG_StrokeVertex ch127st1[] = -{ - {47.619f,66.6667f}, - {33.3333f,61.9048f}, - {23.8095f,52.381f}, - {19.0476f,38.0952f}, - {19.0476f,23.8095f}, - {23.8095f,14.2857f}, - {33.3333f,4.7619f}, - {47.619f,0.0f}, - {57.1428f,0.0f}, - {71.4286f,4.7619f}, - {80.9524f,14.2857f}, - {85.7143f,28.5714f}, - {85.7143f,42.8571f}, - {80.9524f,52.381f}, - {71.4286f,61.9048f}, - {57.1428f,66.6667f}, - {47.619f,66.6667f} -}; - -static const SFG_StrokeStrip ch127st[] = -{ - {2,ch127st0}, - {17,ch127st1} -}; - -static const SFG_StrokeChar ch127 = {104.762f,2,ch127st}; - -static const SFG_StrokeChar *chars[] = -{ - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - &ch32, &ch33, &ch34, &ch35, &ch36, &ch37, &ch38, &ch39, - &ch40, &ch41, &ch42, &ch43, &ch44, &ch45, &ch46, &ch47, - &ch48, &ch49, &ch50, &ch51, &ch52, &ch53, &ch54, &ch55, - &ch56, &ch57, &ch58, &ch59, &ch60, &ch61, &ch62, &ch63, - &ch64, &ch65, &ch66, &ch67, &ch68, &ch69, &ch70, &ch71, - &ch72, &ch73, &ch74, &ch75, &ch76, &ch77, &ch78, &ch79, - &ch80, &ch81, &ch82, &ch83, &ch84, &ch85, &ch86, &ch87, - &ch88, &ch89, &ch90, &ch91, &ch92, &ch93, &ch94, &ch95, - &ch96, &ch97, &ch98, &ch99, &ch100, &ch101, &ch102, &ch103, - &ch104, &ch105, &ch106, &ch107, &ch108, &ch109, &ch110, &ch111, - &ch112, &ch113, &ch114, &ch115, &ch116, &ch117, &ch118, &ch119, - &ch120, &ch121, &ch122, &ch123, &ch124, &ch125, &ch126, &ch127 -}; - -const SFG_StrokeFont fgStrokeMonoRoman = {"MonoRoman",128,152.381f,chars}; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_stroke_roman.c b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_stroke_roman.c deleted file mode 100644 index 619a904..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_stroke_roman.c +++ /dev/null @@ -1,2849 +0,0 @@ -/* - * freeglut_stroke_roman.c - * - * freeglut Roman stroke font definition - * - * Copyright (c) 1999-2000 Pawel W. Olszta. All Rights Reserved. - * Written by Pawel W. Olszta, - * Creation date: Thu Dec 16 1999 - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included - * in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - * PAWEL W. OLSZTA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER - * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - */ - - -/* This file has been automatically generated by the genstroke utility. */ - -#include "freeglut.h" -#include "freeglut_internal.h" - -/* char: 0x20 */ - -static const SFG_StrokeStrip ch32st[] = -{ - { 0, NULL } -}; - -static const SFG_StrokeChar ch32 = {104.762f,0,ch32st}; - -/* char: 0x21 */ - -static const SFG_StrokeVertex ch33st0[] = -{ - {13.3819f,100.0f}, - {13.3819f,33.3333f} -}; - -static const SFG_StrokeVertex ch33st1[] = -{ - {13.3819f,9.5238f}, - {8.62f,4.7619f}, - {13.3819f,0.0f}, - {18.1438f,4.7619f}, - {13.3819f,9.5238f} -}; - -static const SFG_StrokeStrip ch33st[] = -{ - {2,ch33st0}, - {5,ch33st1} -}; - -static const SFG_StrokeChar ch33 = {26.6238f,2,ch33st}; - -/* char: 0x22 */ - -static const SFG_StrokeVertex ch34st0[] = -{ - {4.02f,100.0f}, - {4.02f,66.6667f} -}; - -static const SFG_StrokeVertex ch34st1[] = -{ - {42.1152f,100.0f}, - {42.1152f,66.6667f} -}; - -static const SFG_StrokeStrip ch34st[] = -{ - {2,ch34st0}, - {2,ch34st1} -}; - -static const SFG_StrokeChar ch34 = {51.4352f,2,ch34st}; - -/* char: 0x23 */ - -static const SFG_StrokeVertex ch35st0[] = -{ - {41.2952f,119.048f}, - {7.9619f,-33.3333f} -}; - -static const SFG_StrokeVertex ch35st1[] = -{ - {69.8667f,119.048f}, - {36.5333f,-33.3333f} -}; - -static const SFG_StrokeVertex ch35st2[] = -{ - {7.9619f,57.1429f}, - {74.6286f,57.1429f} -}; - -static const SFG_StrokeVertex ch35st3[] = -{ - {3.2f,28.5714f}, - {69.8667f,28.5714f} -}; - -static const SFG_StrokeStrip ch35st[] = -{ - {2,ch35st0}, - {2,ch35st1}, - {2,ch35st2}, - {2,ch35st3} -}; - -static const SFG_StrokeChar ch35 = {79.4886f,4,ch35st}; - -/* char: 0x24 */ - -static const SFG_StrokeVertex ch36st0[] = -{ - {28.6295f,119.048f}, - {28.6295f,-19.0476f} -}; - -static const SFG_StrokeVertex ch36st1[] = -{ - {47.6771f,119.048f}, - {47.6771f,-19.0476f} -}; - -static const SFG_StrokeVertex ch36st2[] = -{ - {71.4867f,85.7143f}, - {61.9629f,95.2381f}, - {47.6771f,100.0f}, - {28.6295f,100.0f}, - {14.3438f,95.2381f}, - {4.82f,85.7143f}, - {4.82f,76.1905f}, - {9.5819f,66.6667f}, - {14.3438f,61.9048f}, - {23.8676f,57.1429f}, - {52.439f,47.619f}, - {61.9629f,42.8571f}, - {66.7248f,38.0952f}, - {71.4867f,28.5714f}, - {71.4867f,14.2857f}, - {61.9629f,4.7619f}, - {47.6771f,0.0f}, - {28.6295f,0.0f}, - {14.3438f,4.7619f}, - {4.82f,14.2857f} -}; - -static const SFG_StrokeStrip ch36st[] = -{ - {2,ch36st0}, - {2,ch36st1}, - {20,ch36st2} -}; - -static const SFG_StrokeChar ch36 = {76.2067f,3,ch36st}; - -/* char: 0x25 */ - -static const SFG_StrokeVertex ch37st0[] = -{ - {92.0743f,100.0f}, - {6.36f,0.0f} -}; - -static const SFG_StrokeVertex ch37st1[] = -{ - {30.1695f,100.0f}, - {39.6933f,90.4762f}, - {39.6933f,80.9524f}, - {34.9314f,71.4286f}, - {25.4076f,66.6667f}, - {15.8838f,66.6667f}, - {6.36f,76.1905f}, - {6.36f,85.7143f}, - {11.1219f,95.2381f}, - {20.6457f,100.0f}, - {30.1695f,100.0f}, - {39.6933f,95.2381f}, - {53.979f,90.4762f}, - {68.2648f,90.4762f}, - {82.5505f,95.2381f}, - {92.0743f,100.0f} -}; - -static const SFG_StrokeVertex ch37st2[] = -{ - {73.0267f,33.3333f}, - {63.5029f,28.5714f}, - {58.741f,19.0476f}, - {58.741f,9.5238f}, - {68.2648f,0.0f}, - {77.7886f,0.0f}, - {87.3124f,4.7619f}, - {92.0743f,14.2857f}, - {92.0743f,23.8095f}, - {82.5505f,33.3333f}, - {73.0267f,33.3333f} -}; - -static const SFG_StrokeStrip ch37st[] = -{ - {2,ch37st0}, - {16,ch37st1}, - {11,ch37st2} -}; - -static const SFG_StrokeChar ch37 = {96.5743f,3,ch37st}; - -/* char: 0x26 */ - -static const SFG_StrokeVertex ch38st0[] = -{ - {101.218f,57.1429f}, - {101.218f,61.9048f}, - {96.4562f,66.6667f}, - {91.6943f,66.6667f}, - {86.9324f,61.9048f}, - {82.1705f,52.381f}, - {72.6467f,28.5714f}, - {63.1229f,14.2857f}, - {53.599f,4.7619f}, - {44.0752f,0.0f}, - {25.0276f,0.0f}, - {15.5038f,4.7619f}, - {10.7419f,9.5238f}, - {5.98f,19.0476f}, - {5.98f,28.5714f}, - {10.7419f,38.0952f}, - {15.5038f,42.8571f}, - {48.8371f,61.9048f}, - {53.599f,66.6667f}, - {58.361f,76.1905f}, - {58.361f,85.7143f}, - {53.599f,95.2381f}, - {44.0752f,100.0f}, - {34.5514f,95.2381f}, - {29.7895f,85.7143f}, - {29.7895f,76.1905f}, - {34.5514f,61.9048f}, - {44.0752f,47.619f}, - {67.8848f,14.2857f}, - {77.4086f,4.7619f}, - {86.9324f,0.0f}, - {96.4562f,0.0f}, - {101.218f,4.7619f}, - {101.218f,9.5238f} -}; - -static const SFG_StrokeStrip ch38st[] = -{ - {34,ch38st0} -}; - -static const SFG_StrokeChar ch38 = {101.758f,1,ch38st}; - -/* char: 0x27 */ - -static const SFG_StrokeVertex ch39st0[] = -{ - {4.44f,100.0f}, - {4.44f,66.6667f} -}; - -static const SFG_StrokeStrip ch39st[] = -{ - {2,ch39st0} -}; - -static const SFG_StrokeChar ch39 = {13.62f,1,ch39st}; - -/* char: 0x28 */ - -static const SFG_StrokeVertex ch40st0[] = -{ - {40.9133f,119.048f}, - {31.3895f,109.524f}, - {21.8657f,95.2381f}, - {12.3419f,76.1905f}, - {7.58f,52.381f}, - {7.58f,33.3333f}, - {12.3419f,9.5238f}, - {21.8657f,-9.5238f}, - {31.3895f,-23.8095f}, - {40.9133f,-33.3333f} -}; - -static const SFG_StrokeStrip ch40st[] = -{ - {10,ch40st0} -}; - -static const SFG_StrokeChar ch40 = {47.1733f,1,ch40st}; - -/* char: 0x29 */ - -static const SFG_StrokeVertex ch41st0[] = -{ - {5.28f,119.048f}, - {14.8038f,109.524f}, - {24.3276f,95.2381f}, - {33.8514f,76.1905f}, - {38.6133f,52.381f}, - {38.6133f,33.3333f}, - {33.8514f,9.5238f}, - {24.3276f,-9.5238f}, - {14.8038f,-23.8095f}, - {5.28f,-33.3333f} -}; - -static const SFG_StrokeStrip ch41st[] = -{ - {10,ch41st0} -}; - -static const SFG_StrokeChar ch41 = {47.5333f,1,ch41st}; - -/* char: 0x2a */ - -static const SFG_StrokeVertex ch42st0[] = -{ - {30.7695f,71.4286f}, - {30.7695f,14.2857f} -}; - -static const SFG_StrokeVertex ch42st1[] = -{ - {6.96f,57.1429f}, - {54.579f,28.5714f} -}; - -static const SFG_StrokeVertex ch42st2[] = -{ - {54.579f,57.1429f}, - {6.96f,28.5714f} -}; - -static const SFG_StrokeStrip ch42st[] = -{ - {2,ch42st0}, - {2,ch42st1}, - {2,ch42st2} -}; - -static const SFG_StrokeChar ch42 = {59.439f,3,ch42st}; - -/* char: 0x2b */ - -static const SFG_StrokeVertex ch43st0[] = -{ - {48.8371f,85.7143f}, - {48.8371f,0.0f} -}; - -static const SFG_StrokeVertex ch43st1[] = -{ - {5.98f,42.8571f}, - {91.6943f,42.8571f} -}; - -static const SFG_StrokeStrip ch43st[] = -{ - {2,ch43st0}, - {2,ch43st1} -}; - -static const SFG_StrokeChar ch43 = {97.2543f,2,ch43st}; - -/* char: 0x2c */ - -static const SFG_StrokeVertex ch44st0[] = -{ - {18.2838f,4.7619f}, - {13.5219f,0.0f}, - {8.76f,4.7619f}, - {13.5219f,9.5238f}, - {18.2838f,4.7619f}, - {18.2838f,-4.7619f}, - {13.5219f,-14.2857f}, - {8.76f,-19.0476f} -}; - -static const SFG_StrokeStrip ch44st[] = -{ - {8,ch44st0} -}; - -static const SFG_StrokeChar ch44 = {26.0638f,1,ch44st}; - -/* char: 0x2d */ - -static const SFG_StrokeVertex ch45st0[] = -{ - {7.38f,42.8571f}, - {93.0943f,42.8571f} -}; - -static const SFG_StrokeStrip ch45st[] = -{ - {2,ch45st0} -}; - -static const SFG_StrokeChar ch45 = {100.754f,1,ch45st}; - -/* char: 0x2e */ - -static const SFG_StrokeVertex ch46st0[] = -{ - {13.1019f,9.5238f}, - {8.34f,4.7619f}, - {13.1019f,0.0f}, - {17.8638f,4.7619f}, - {13.1019f,9.5238f} -}; - -static const SFG_StrokeStrip ch46st[] = -{ - {5,ch46st0} -}; - -static const SFG_StrokeChar ch46 = {26.4838f,1,ch46st}; - -/* char: 0x2f */ - -static const SFG_StrokeVertex ch47st0[] = -{ - {7.24f,-14.2857f}, - {73.9067f,100.0f} -}; - -static const SFG_StrokeStrip ch47st[] = -{ - {2,ch47st0} -}; - -static const SFG_StrokeChar ch47 = {82.1067f,1,ch47st}; - -/* char: 0x30 */ - -static const SFG_StrokeVertex ch48st0[] = -{ - {33.5514f,100.0f}, - {19.2657f,95.2381f}, - {9.7419f,80.9524f}, - {4.98f,57.1429f}, - {4.98f,42.8571f}, - {9.7419f,19.0476f}, - {19.2657f,4.7619f}, - {33.5514f,0.0f}, - {43.0752f,0.0f}, - {57.361f,4.7619f}, - {66.8848f,19.0476f}, - {71.6467f,42.8571f}, - {71.6467f,57.1429f}, - {66.8848f,80.9524f}, - {57.361f,95.2381f}, - {43.0752f,100.0f}, - {33.5514f,100.0f} -}; - -static const SFG_StrokeStrip ch48st[] = -{ - {17,ch48st0} -}; - -static const SFG_StrokeChar ch48 = {77.0667f,1,ch48st}; - -/* char: 0x31 */ - -static const SFG_StrokeVertex ch49st0[] = -{ - {11.82f,80.9524f}, - {21.3438f,85.7143f}, - {35.6295f,100.0f}, - {35.6295f,0.0f} -}; - -static const SFG_StrokeStrip ch49st[] = -{ - {4,ch49st0} -}; - -static const SFG_StrokeChar ch49 = {66.5295f,1,ch49st}; - -/* char: 0x32 */ - -static const SFG_StrokeVertex ch50st0[] = -{ - {10.1819f,76.1905f}, - {10.1819f,80.9524f}, - {14.9438f,90.4762f}, - {19.7057f,95.2381f}, - {29.2295f,100.0f}, - {48.2771f,100.0f}, - {57.801f,95.2381f}, - {62.5629f,90.4762f}, - {67.3248f,80.9524f}, - {67.3248f,71.4286f}, - {62.5629f,61.9048f}, - {53.039f,47.619f}, - {5.42f,0.0f}, - {72.0867f,0.0f} -}; - -static const SFG_StrokeStrip ch50st[] = -{ - {14,ch50st0} -}; - -static const SFG_StrokeChar ch50 = {77.6467f,1,ch50st}; - -/* char: 0x33 */ - -static const SFG_StrokeVertex ch51st0[] = -{ - {14.5238f,100.0f}, - {66.9048f,100.0f}, - {38.3333f,61.9048f}, - {52.619f,61.9048f}, - {62.1429f,57.1429f}, - {66.9048f,52.381f}, - {71.6667f,38.0952f}, - {71.6667f,28.5714f}, - {66.9048f,14.2857f}, - {57.381f,4.7619f}, - {43.0952f,0.0f}, - {28.8095f,0.0f}, - {14.5238f,4.7619f}, - {9.7619f,9.5238f}, - {5.0f,19.0476f} -}; - -static const SFG_StrokeStrip ch51st[] = -{ - {15,ch51st0} -}; - -static const SFG_StrokeChar ch51 = {77.0467f,1,ch51st}; - -/* char: 0x34 */ - -static const SFG_StrokeVertex ch52st0[] = -{ - {51.499f,100.0f}, - {3.88f,33.3333f}, - {75.3086f,33.3333f} -}; - -static const SFG_StrokeVertex ch52st1[] = -{ - {51.499f,100.0f}, - {51.499f,0.0f} -}; - -static const SFG_StrokeStrip ch52st[] = -{ - {3,ch52st0}, - {2,ch52st1} -}; - -static const SFG_StrokeChar ch52 = {80.1686f,2,ch52st}; - -/* char: 0x35 */ - -static const SFG_StrokeVertex ch53st0[] = -{ - {62.0029f,100.0f}, - {14.3838f,100.0f}, - {9.6219f,57.1429f}, - {14.3838f,61.9048f}, - {28.6695f,66.6667f}, - {42.9552f,66.6667f}, - {57.241f,61.9048f}, - {66.7648f,52.381f}, - {71.5267f,38.0952f}, - {71.5267f,28.5714f}, - {66.7648f,14.2857f}, - {57.241f,4.7619f}, - {42.9552f,0.0f}, - {28.6695f,0.0f}, - {14.3838f,4.7619f}, - {9.6219f,9.5238f}, - {4.86f,19.0476f} -}; - -static const SFG_StrokeStrip ch53st[] = -{ - {17,ch53st0} -}; - -static const SFG_StrokeChar ch53 = {77.6867f,1,ch53st}; - -/* char: 0x36 */ - -static const SFG_StrokeVertex ch54st0[] = -{ - {62.7229f,85.7143f}, - {57.961f,95.2381f}, - {43.6752f,100.0f}, - {34.1514f,100.0f}, - {19.8657f,95.2381f}, - {10.3419f,80.9524f}, - {5.58f,57.1429f}, - {5.58f,33.3333f}, - {10.3419f,14.2857f}, - {19.8657f,4.7619f}, - {34.1514f,0.0f}, - {38.9133f,0.0f}, - {53.199f,4.7619f}, - {62.7229f,14.2857f}, - {67.4848f,28.5714f}, - {67.4848f,33.3333f}, - {62.7229f,47.619f}, - {53.199f,57.1429f}, - {38.9133f,61.9048f}, - {34.1514f,61.9048f}, - {19.8657f,57.1429f}, - {10.3419f,47.619f}, - {5.58f,33.3333f} -}; - -static const SFG_StrokeStrip ch54st[] = -{ - {23,ch54st0} -}; - -static const SFG_StrokeChar ch54 = {73.8048f,1,ch54st}; - -/* char: 0x37 */ - -static const SFG_StrokeVertex ch55st0[] = -{ - {72.2267f,100.0f}, - {24.6076f,0.0f} -}; - -static const SFG_StrokeVertex ch55st1[] = -{ - {5.56f,100.0f}, - {72.2267f,100.0f} -}; - -static const SFG_StrokeStrip ch55st[] = -{ - {2,ch55st0}, - {2,ch55st1} -}; - -static const SFG_StrokeChar ch55 = {77.2267f,2,ch55st}; - -/* char: 0x38 */ - -static const SFG_StrokeVertex ch56st0[] = -{ - {29.4095f,100.0f}, - {15.1238f,95.2381f}, - {10.3619f,85.7143f}, - {10.3619f,76.1905f}, - {15.1238f,66.6667f}, - {24.6476f,61.9048f}, - {43.6952f,57.1429f}, - {57.981f,52.381f}, - {67.5048f,42.8571f}, - {72.2667f,33.3333f}, - {72.2667f,19.0476f}, - {67.5048f,9.5238f}, - {62.7429f,4.7619f}, - {48.4571f,0.0f}, - {29.4095f,0.0f}, - {15.1238f,4.7619f}, - {10.3619f,9.5238f}, - {5.6f,19.0476f}, - {5.6f,33.3333f}, - {10.3619f,42.8571f}, - {19.8857f,52.381f}, - {34.1714f,57.1429f}, - {53.219f,61.9048f}, - {62.7429f,66.6667f}, - {67.5048f,76.1905f}, - {67.5048f,85.7143f}, - {62.7429f,95.2381f}, - {48.4571f,100.0f}, - {29.4095f,100.0f} -}; - -static const SFG_StrokeStrip ch56st[] = -{ - {29,ch56st0} -}; - -static const SFG_StrokeChar ch56 = {77.6667f,1,ch56st}; - -/* char: 0x39 */ - -static const SFG_StrokeVertex ch57st0[] = -{ - {68.5048f,66.6667f}, - {63.7429f,52.381f}, - {54.219f,42.8571f}, - {39.9333f,38.0952f}, - {35.1714f,38.0952f}, - {20.8857f,42.8571f}, - {11.3619f,52.381f}, - {6.6f,66.6667f}, - {6.6f,71.4286f}, - {11.3619f,85.7143f}, - {20.8857f,95.2381f}, - {35.1714f,100.0f}, - {39.9333f,100.0f}, - {54.219f,95.2381f}, - {63.7429f,85.7143f}, - {68.5048f,66.6667f}, - {68.5048f,42.8571f}, - {63.7429f,19.0476f}, - {54.219f,4.7619f}, - {39.9333f,0.0f}, - {30.4095f,0.0f}, - {16.1238f,4.7619f}, - {11.3619f,14.2857f} -}; - -static const SFG_StrokeStrip ch57st[] = -{ - {23,ch57st0} -}; - -static const SFG_StrokeChar ch57 = {74.0648f,1,ch57st}; - -/* char: 0x3a */ - -static const SFG_StrokeVertex ch58st0[] = -{ - {14.0819f,66.6667f}, - {9.32f,61.9048f}, - {14.0819f,57.1429f}, - {18.8438f,61.9048f}, - {14.0819f,66.6667f} -}; - -static const SFG_StrokeVertex ch58st1[] = -{ - {14.0819f,9.5238f}, - {9.32f,4.7619f}, - {14.0819f,0.0f}, - {18.8438f,4.7619f}, - {14.0819f,9.5238f} -}; - -static const SFG_StrokeStrip ch58st[] = -{ - {5,ch58st0}, - {5,ch58st1} -}; - -static const SFG_StrokeChar ch58 = {26.2238f,2,ch58st}; - -/* char: 0x3b */ - -static const SFG_StrokeVertex ch59st0[] = -{ - {12.9619f,66.6667f}, - {8.2f,61.9048f}, - {12.9619f,57.1429f}, - {17.7238f,61.9048f}, - {12.9619f,66.6667f} -}; - -static const SFG_StrokeVertex ch59st1[] = -{ - {17.7238f,4.7619f}, - {12.9619f,0.0f}, - {8.2f,4.7619f}, - {12.9619f,9.5238f}, - {17.7238f,4.7619f}, - {17.7238f,-4.7619f}, - {12.9619f,-14.2857f}, - {8.2f,-19.0476f} -}; - -static const SFG_StrokeStrip ch59st[] = -{ - {5,ch59st0}, - {8,ch59st1} -}; - -static const SFG_StrokeChar ch59 = {26.3038f,2,ch59st}; - -/* char: 0x3c */ - -static const SFG_StrokeVertex ch60st0[] = -{ - {79.2505f,85.7143f}, - {3.06f,42.8571f}, - {79.2505f,0.0f} -}; - -static const SFG_StrokeStrip ch60st[] = -{ - {3,ch60st0} -}; - -static const SFG_StrokeChar ch60 = {81.6105f,1,ch60st}; - -/* char: 0x3d */ - -static const SFG_StrokeVertex ch61st0[] = -{ - {5.7f,57.1429f}, - {91.4143f,57.1429f} -}; - -static const SFG_StrokeVertex ch61st1[] = -{ - {5.7f,28.5714f}, - {91.4143f,28.5714f} -}; - -static const SFG_StrokeStrip ch61st[] = -{ - {2,ch61st0}, - {2,ch61st1} -}; - -static const SFG_StrokeChar ch61 = {97.2543f,2,ch61st}; - -/* char: 0x3e */ - -static const SFG_StrokeVertex ch62st0[] = -{ - {2.78f,85.7143f}, - {78.9705f,42.8571f}, - {2.78f,0.0f} -}; - -static const SFG_StrokeStrip ch62st[] = -{ - {3,ch62st0} -}; - -static const SFG_StrokeChar ch62 = {81.6105f,1,ch62st}; - -/* char: 0x3f */ - -static const SFG_StrokeVertex ch63st0[] = -{ - {8.42f,76.1905f}, - {8.42f,80.9524f}, - {13.1819f,90.4762f}, - {17.9438f,95.2381f}, - {27.4676f,100.0f}, - {46.5152f,100.0f}, - {56.039f,95.2381f}, - {60.801f,90.4762f}, - {65.5629f,80.9524f}, - {65.5629f,71.4286f}, - {60.801f,61.9048f}, - {56.039f,57.1429f}, - {36.9914f,47.619f}, - {36.9914f,33.3333f} -}; - -static const SFG_StrokeVertex ch63st1[] = -{ - {36.9914f,9.5238f}, - {32.2295f,4.7619f}, - {36.9914f,0.0f}, - {41.7533f,4.7619f}, - {36.9914f,9.5238f} -}; - -static const SFG_StrokeStrip ch63st[] = -{ - {14,ch63st0}, - {5,ch63st1} -}; - -static const SFG_StrokeChar ch63 = {73.9029f,2,ch63st}; - -/* char: 0x40 */ - -static const SFG_StrokeVertex ch64st0[] = -{ - {49.2171f,52.381f}, - {39.6933f,57.1429f}, - {30.1695f,57.1429f}, - {25.4076f,47.619f}, - {25.4076f,42.8571f}, - {30.1695f,33.3333f}, - {39.6933f,33.3333f}, - {49.2171f,38.0952f} -}; - -static const SFG_StrokeVertex ch64st1[] = -{ - {49.2171f,57.1429f}, - {49.2171f,38.0952f}, - {53.979f,33.3333f}, - {63.5029f,33.3333f}, - {68.2648f,42.8571f}, - {68.2648f,47.619f}, - {63.5029f,61.9048f}, - {53.979f,71.4286f}, - {39.6933f,76.1905f}, - {34.9314f,76.1905f}, - {20.6457f,71.4286f}, - {11.1219f,61.9048f}, - {6.36f,47.619f}, - {6.36f,42.8571f}, - {11.1219f,28.5714f}, - {20.6457f,19.0476f}, - {34.9314f,14.2857f}, - {39.6933f,14.2857f}, - {53.979f,19.0476f} -}; - -static const SFG_StrokeStrip ch64st[] = -{ - {8,ch64st0}, - {19,ch64st1} -}; - -static const SFG_StrokeChar ch64 = {74.3648f,2,ch64st}; - -/* char: 0x41 */ - -static const SFG_StrokeVertex ch65st0[] = -{ - {40.5952f,100.0f}, - {2.5f,0.0f} -}; - -static const SFG_StrokeVertex ch65st1[] = -{ - {40.5952f,100.0f}, - {78.6905f,0.0f} -}; - -static const SFG_StrokeVertex ch65st2[] = -{ - {16.7857f,33.3333f}, - {64.4048f,33.3333f} -}; - -static const SFG_StrokeStrip ch65st[] = -{ - {2,ch65st0}, - {2,ch65st1}, - {2,ch65st2} -}; - -static const SFG_StrokeChar ch65 = {80.4905f,3,ch65st}; - -/* char: 0x42 */ - -static const SFG_StrokeVertex ch66st0[] = -{ - {11.42f,100.0f}, - {11.42f,0.0f} -}; - -static const SFG_StrokeVertex ch66st1[] = -{ - {11.42f,100.0f}, - {54.2771f,100.0f}, - {68.5629f,95.2381f}, - {73.3248f,90.4762f}, - {78.0867f,80.9524f}, - {78.0867f,71.4286f}, - {73.3248f,61.9048f}, - {68.5629f,57.1429f}, - {54.2771f,52.381f} -}; - -static const SFG_StrokeVertex ch66st2[] = -{ - {11.42f,52.381f}, - {54.2771f,52.381f}, - {68.5629f,47.619f}, - {73.3248f,42.8571f}, - {78.0867f,33.3333f}, - {78.0867f,19.0476f}, - {73.3248f,9.5238f}, - {68.5629f,4.7619f}, - {54.2771f,0.0f}, - {11.42f,0.0f} -}; - -static const SFG_StrokeStrip ch66st[] = -{ - {2,ch66st0}, - {9,ch66st1}, - {10,ch66st2} -}; - -static const SFG_StrokeChar ch66 = {83.6267f,3,ch66st}; - -/* char: 0x43 */ - -static const SFG_StrokeVertex ch67st0[] = -{ - {78.0886f,76.1905f}, - {73.3267f,85.7143f}, - {63.8029f,95.2381f}, - {54.279f,100.0f}, - {35.2314f,100.0f}, - {25.7076f,95.2381f}, - {16.1838f,85.7143f}, - {11.4219f,76.1905f}, - {6.66f,61.9048f}, - {6.66f,38.0952f}, - {11.4219f,23.8095f}, - {16.1838f,14.2857f}, - {25.7076f,4.7619f}, - {35.2314f,0.0f}, - {54.279f,0.0f}, - {63.8029f,4.7619f}, - {73.3267f,14.2857f}, - {78.0886f,23.8095f} -}; - -static const SFG_StrokeStrip ch67st[] = -{ - {18,ch67st0} -}; - -static const SFG_StrokeChar ch67 = {84.4886f,1,ch67st}; - -/* char: 0x44 */ - -static const SFG_StrokeVertex ch68st0[] = -{ - {11.96f,100.0f}, - {11.96f,0.0f} -}; - -static const SFG_StrokeVertex ch68st1[] = -{ - {11.96f,100.0f}, - {45.2933f,100.0f}, - {59.579f,95.2381f}, - {69.1029f,85.7143f}, - {73.8648f,76.1905f}, - {78.6267f,61.9048f}, - {78.6267f,38.0952f}, - {73.8648f,23.8095f}, - {69.1029f,14.2857f}, - {59.579f,4.7619f}, - {45.2933f,0.0f}, - {11.96f,0.0f} -}; - -static const SFG_StrokeStrip ch68st[] = -{ - {2,ch68st0}, - {12,ch68st1} -}; - -static const SFG_StrokeChar ch68 = {85.2867f,2,ch68st}; - -/* char: 0x45 */ - -static const SFG_StrokeVertex ch69st0[] = -{ - {11.42f,100.0f}, - {11.42f,0.0f} -}; - -static const SFG_StrokeVertex ch69st1[] = -{ - {11.42f,100.0f}, - {73.3248f,100.0f} -}; - -static const SFG_StrokeVertex ch69st2[] = -{ - {11.42f,52.381f}, - {49.5152f,52.381f} -}; - -static const SFG_StrokeVertex ch69st3[] = -{ - {11.42f,0.0f}, - {73.3248f,0.0f} -}; - -static const SFG_StrokeStrip ch69st[] = -{ - {2,ch69st0}, - {2,ch69st1}, - {2,ch69st2}, - {2,ch69st3} -}; - -static const SFG_StrokeChar ch69 = {78.1848f,4,ch69st}; - -/* char: 0x46 */ - -static const SFG_StrokeVertex ch70st0[] = -{ - {11.42f,100.0f}, - {11.42f,0.0f} -}; - -static const SFG_StrokeVertex ch70st1[] = -{ - {11.42f,100.0f}, - {73.3248f,100.0f} -}; - -static const SFG_StrokeVertex ch70st2[] = -{ - {11.42f,52.381f}, - {49.5152f,52.381f} -}; - -static const SFG_StrokeStrip ch70st[] = -{ - {2,ch70st0}, - {2,ch70st1}, - {2,ch70st2} -}; - -static const SFG_StrokeChar ch70 = {78.7448f,3,ch70st}; - -/* char: 0x47 */ - -static const SFG_StrokeVertex ch71st0[] = -{ - {78.4886f,76.1905f}, - {73.7267f,85.7143f}, - {64.2029f,95.2381f}, - {54.679f,100.0f}, - {35.6314f,100.0f}, - {26.1076f,95.2381f}, - {16.5838f,85.7143f}, - {11.8219f,76.1905f}, - {7.06f,61.9048f}, - {7.06f,38.0952f}, - {11.8219f,23.8095f}, - {16.5838f,14.2857f}, - {26.1076f,4.7619f}, - {35.6314f,0.0f}, - {54.679f,0.0f}, - {64.2029f,4.7619f}, - {73.7267f,14.2857f}, - {78.4886f,23.8095f}, - {78.4886f,38.0952f} -}; - -static const SFG_StrokeVertex ch71st1[] = -{ - {54.679f,38.0952f}, - {78.4886f,38.0952f} -}; - -static const SFG_StrokeStrip ch71st[] = -{ - {19,ch71st0}, - {2,ch71st1} -}; - -static const SFG_StrokeChar ch71 = {89.7686f,2,ch71st}; - -/* char: 0x48 */ - -static const SFG_StrokeVertex ch72st0[] = -{ - {11.42f,100.0f}, - {11.42f,0.0f} -}; - -static const SFG_StrokeVertex ch72st1[] = -{ - {78.0867f,100.0f}, - {78.0867f,0.0f} -}; - -static const SFG_StrokeVertex ch72st2[] = -{ - {11.42f,52.381f}, - {78.0867f,52.381f} -}; - -static const SFG_StrokeStrip ch72st[] = -{ - {2,ch72st0}, - {2,ch72st1}, - {2,ch72st2} -}; - -static const SFG_StrokeChar ch72 = {89.0867f,3,ch72st}; - -/* char: 0x49 */ - -static const SFG_StrokeVertex ch73st0[] = -{ - {10.86f,100.0f}, - {10.86f,0.0f} -}; - -static const SFG_StrokeStrip ch73st[] = -{ - {2,ch73st0} -}; - -static const SFG_StrokeChar ch73 = {21.3f,1,ch73st}; - -/* char: 0x4a */ - -static const SFG_StrokeVertex ch74st0[] = -{ - {50.119f,100.0f}, - {50.119f,23.8095f}, - {45.3571f,9.5238f}, - {40.5952f,4.7619f}, - {31.0714f,0.0f}, - {21.5476f,0.0f}, - {12.0238f,4.7619f}, - {7.2619f,9.5238f}, - {2.5f,23.8095f}, - {2.5f,33.3333f} -}; - -static const SFG_StrokeStrip ch74st[] = -{ - {10,ch74st0} -}; - -static const SFG_StrokeChar ch74 = {59.999f,1,ch74st}; - -/* char: 0x4b */ - -static const SFG_StrokeVertex ch75st0[] = -{ - {11.28f,100.0f}, - {11.28f,0.0f} -}; - -static const SFG_StrokeVertex ch75st1[] = -{ - {77.9467f,100.0f}, - {11.28f,33.3333f} -}; - -static const SFG_StrokeVertex ch75st2[] = -{ - {35.0895f,57.1429f}, - {77.9467f,0.0f} -}; - -static const SFG_StrokeStrip ch75st[] = -{ - {2,ch75st0}, - {2,ch75st1}, - {2,ch75st2} -}; - -static const SFG_StrokeChar ch75 = {79.3267f,3,ch75st}; - -/* char: 0x4c */ - -static const SFG_StrokeVertex ch76st0[] = -{ - {11.68f,100.0f}, - {11.68f,0.0f} -}; - -static const SFG_StrokeVertex ch76st1[] = -{ - {11.68f,0.0f}, - {68.8229f,0.0f} -}; - -static const SFG_StrokeStrip ch76st[] = -{ - {2,ch76st0}, - {2,ch76st1} -}; - -static const SFG_StrokeChar ch76 = {71.3229f,2,ch76st}; - -/* char: 0x4d */ - -static const SFG_StrokeVertex ch77st0[] = -{ - {10.86f,100.0f}, - {10.86f,0.0f} -}; - -static const SFG_StrokeVertex ch77st1[] = -{ - {10.86f,100.0f}, - {48.9552f,0.0f} -}; - -static const SFG_StrokeVertex ch77st2[] = -{ - {87.0505f,100.0f}, - {48.9552f,0.0f} -}; - -static const SFG_StrokeVertex ch77st3[] = -{ - {87.0505f,100.0f}, - {87.0505f,0.0f} -}; - -static const SFG_StrokeStrip ch77st[] = -{ - {2,ch77st0}, - {2,ch77st1}, - {2,ch77st2}, - {2,ch77st3} -}; - -static const SFG_StrokeChar ch77 = {97.2105f,4,ch77st}; - -/* char: 0x4e */ - -static const SFG_StrokeVertex ch78st0[] = -{ - {11.14f,100.0f}, - {11.14f,0.0f} -}; - -static const SFG_StrokeVertex ch78st1[] = -{ - {11.14f,100.0f}, - {77.8067f,0.0f} -}; - -static const SFG_StrokeVertex ch78st2[] = -{ - {77.8067f,100.0f}, - {77.8067f,0.0f} -}; - -static const SFG_StrokeStrip ch78st[] = -{ - {2,ch78st0}, - {2,ch78st1}, - {2,ch78st2} -}; - -static const SFG_StrokeChar ch78 = {88.8067f,3,ch78st}; - -/* char: 0x4f */ - -static const SFG_StrokeVertex ch79st0[] = -{ - {34.8114f,100.0f}, - {25.2876f,95.2381f}, - {15.7638f,85.7143f}, - {11.0019f,76.1905f}, - {6.24f,61.9048f}, - {6.24f,38.0952f}, - {11.0019f,23.8095f}, - {15.7638f,14.2857f}, - {25.2876f,4.7619f}, - {34.8114f,0.0f}, - {53.859f,0.0f}, - {63.3829f,4.7619f}, - {72.9067f,14.2857f}, - {77.6686f,23.8095f}, - {82.4305f,38.0952f}, - {82.4305f,61.9048f}, - {77.6686f,76.1905f}, - {72.9067f,85.7143f}, - {63.3829f,95.2381f}, - {53.859f,100.0f}, - {34.8114f,100.0f} -}; - -static const SFG_StrokeStrip ch79st[] = -{ - {21,ch79st0} -}; - -static const SFG_StrokeChar ch79 = {88.8305f,1,ch79st}; - -/* char: 0x50 */ - -static const SFG_StrokeVertex ch80st0[] = -{ - {12.1f,100.0f}, - {12.1f,0.0f} -}; - -static const SFG_StrokeVertex ch80st1[] = -{ - {12.1f,100.0f}, - {54.9571f,100.0f}, - {69.2429f,95.2381f}, - {74.0048f,90.4762f}, - {78.7667f,80.9524f}, - {78.7667f,66.6667f}, - {74.0048f,57.1429f}, - {69.2429f,52.381f}, - {54.9571f,47.619f}, - {12.1f,47.619f} -}; - -static const SFG_StrokeStrip ch80st[] = -{ - {2,ch80st0}, - {10,ch80st1} -}; - -static const SFG_StrokeChar ch80 = {85.6667f,2,ch80st}; - -/* char: 0x51 */ - -static const SFG_StrokeVertex ch81st0[] = -{ - {33.8714f,100.0f}, - {24.3476f,95.2381f}, - {14.8238f,85.7143f}, - {10.0619f,76.1905f}, - {5.3f,61.9048f}, - {5.3f,38.0952f}, - {10.0619f,23.8095f}, - {14.8238f,14.2857f}, - {24.3476f,4.7619f}, - {33.8714f,0.0f}, - {52.919f,0.0f}, - {62.4429f,4.7619f}, - {71.9667f,14.2857f}, - {76.7286f,23.8095f}, - {81.4905f,38.0952f}, - {81.4905f,61.9048f}, - {76.7286f,76.1905f}, - {71.9667f,85.7143f}, - {62.4429f,95.2381f}, - {52.919f,100.0f}, - {33.8714f,100.0f} -}; - -static const SFG_StrokeVertex ch81st1[] = -{ - {48.1571f,19.0476f}, - {76.7286f,-9.5238f} -}; - -static const SFG_StrokeStrip ch81st[] = -{ - {21,ch81st0}, - {2,ch81st1} -}; - -static const SFG_StrokeChar ch81 = {88.0905f,2,ch81st}; - -/* char: 0x52 */ - -static const SFG_StrokeVertex ch82st0[] = -{ - {11.68f,100.0f}, - {11.68f,0.0f} -}; - -static const SFG_StrokeVertex ch82st1[] = -{ - {11.68f,100.0f}, - {54.5371f,100.0f}, - {68.8229f,95.2381f}, - {73.5848f,90.4762f}, - {78.3467f,80.9524f}, - {78.3467f,71.4286f}, - {73.5848f,61.9048f}, - {68.8229f,57.1429f}, - {54.5371f,52.381f}, - {11.68f,52.381f} -}; - -static const SFG_StrokeVertex ch82st2[] = -{ - {45.0133f,52.381f}, - {78.3467f,0.0f} -}; - -static const SFG_StrokeStrip ch82st[] = -{ - {2,ch82st0}, - {10,ch82st1}, - {2,ch82st2} -}; - -static const SFG_StrokeChar ch82 = {82.3667f,3,ch82st}; - -/* char: 0x53 */ - -static const SFG_StrokeVertex ch83st0[] = -{ - {74.6667f,85.7143f}, - {65.1429f,95.2381f}, - {50.8571f,100.0f}, - {31.8095f,100.0f}, - {17.5238f,95.2381f}, - {8.0f,85.7143f}, - {8.0f,76.1905f}, - {12.7619f,66.6667f}, - {17.5238f,61.9048f}, - {27.0476f,57.1429f}, - {55.619f,47.619f}, - {65.1429f,42.8571f}, - {69.9048f,38.0952f}, - {74.6667f,28.5714f}, - {74.6667f,14.2857f}, - {65.1429f,4.7619f}, - {50.8571f,0.0f}, - {31.8095f,0.0f}, - {17.5238f,4.7619f}, - {8.0f,14.2857f} -}; - -static const SFG_StrokeStrip ch83st[] = -{ - {20,ch83st0} -}; - -static const SFG_StrokeChar ch83 = {80.8267f,1,ch83st}; - -/* char: 0x54 */ - -static const SFG_StrokeVertex ch84st0[] = -{ - {35.6933f,100.0f}, - {35.6933f,0.0f} -}; - -static const SFG_StrokeVertex ch84st1[] = -{ - {2.36f,100.0f}, - {69.0267f,100.0f} -}; - -static const SFG_StrokeStrip ch84st[] = -{ - {2,ch84st0}, - {2,ch84st1} -}; - -static const SFG_StrokeChar ch84 = {71.9467f,2,ch84st}; - -/* char: 0x55 */ - -static const SFG_StrokeVertex ch85st0[] = -{ - {11.54f,100.0f}, - {11.54f,28.5714f}, - {16.3019f,14.2857f}, - {25.8257f,4.7619f}, - {40.1114f,0.0f}, - {49.6352f,0.0f}, - {63.921f,4.7619f}, - {73.4448f,14.2857f}, - {78.2067f,28.5714f}, - {78.2067f,100.0f} -}; - -static const SFG_StrokeStrip ch85st[] = -{ - {10,ch85st0} -}; - -static const SFG_StrokeChar ch85 = {89.4867f,1,ch85st}; - -/* char: 0x56 */ - -static const SFG_StrokeVertex ch86st0[] = -{ - {2.36f,100.0f}, - {40.4552f,0.0f} -}; - -static const SFG_StrokeVertex ch86st1[] = -{ - {78.5505f,100.0f}, - {40.4552f,0.0f} -}; - -static const SFG_StrokeStrip ch86st[] = -{ - {2,ch86st0}, - {2,ch86st1} -}; - -static const SFG_StrokeChar ch86 = {81.6105f,2,ch86st}; - -/* char: 0x57 */ - -static const SFG_StrokeVertex ch87st0[] = -{ - {2.22f,100.0f}, - {26.0295f,0.0f} -}; - -static const SFG_StrokeVertex ch87st1[] = -{ - {49.839f,100.0f}, - {26.0295f,0.0f} -}; - -static const SFG_StrokeVertex ch87st2[] = -{ - {49.839f,100.0f}, - {73.6486f,0.0f} -}; - -static const SFG_StrokeVertex ch87st3[] = -{ - {97.4581f,100.0f}, - {73.6486f,0.0f} -}; - -static const SFG_StrokeStrip ch87st[] = -{ - {2,ch87st0}, - {2,ch87st1}, - {2,ch87st2}, - {2,ch87st3} -}; - -static const SFG_StrokeChar ch87 = {100.518f,4,ch87st}; - -/* char: 0x58 */ - -static const SFG_StrokeVertex ch88st0[] = -{ - {2.5f,100.0f}, - {69.1667f,0.0f} -}; - -static const SFG_StrokeVertex ch88st1[] = -{ - {69.1667f,100.0f}, - {2.5f,0.0f} -}; - -static const SFG_StrokeStrip ch88st[] = -{ - {2,ch88st0}, - {2,ch88st1} -}; - -static const SFG_StrokeChar ch88 = {72.3667f,2,ch88st}; - -/* char: 0x59 */ - -static const SFG_StrokeVertex ch89st0[] = -{ - {1.52f,100.0f}, - {39.6152f,52.381f}, - {39.6152f,0.0f} -}; - -static const SFG_StrokeVertex ch89st1[] = -{ - {77.7105f,100.0f}, - {39.6152f,52.381f} -}; - -static const SFG_StrokeStrip ch89st[] = -{ - {3,ch89st0}, - {2,ch89st1} -}; - -static const SFG_StrokeChar ch89 = {79.6505f,2,ch89st}; - -/* char: 0x5a */ - -static const SFG_StrokeVertex ch90st0[] = -{ - {69.1667f,100.0f}, - {2.5f,0.0f} -}; - -static const SFG_StrokeVertex ch90st1[] = -{ - {2.5f,100.0f}, - {69.1667f,100.0f} -}; - -static const SFG_StrokeVertex ch90st2[] = -{ - {2.5f,0.0f}, - {69.1667f,0.0f} -}; - -static const SFG_StrokeStrip ch90st[] = -{ - {2,ch90st0}, - {2,ch90st1}, - {2,ch90st2} -}; - -static const SFG_StrokeChar ch90 = {73.7467f,3,ch90st}; - -/* char: 0x5b */ - -static const SFG_StrokeVertex ch91st0[] = -{ - {7.78f,119.048f}, - {7.78f,-33.3333f} -}; - -static const SFG_StrokeVertex ch91st1[] = -{ - {12.5419f,119.048f}, - {12.5419f,-33.3333f} -}; - -static const SFG_StrokeVertex ch91st2[] = -{ - {7.78f,119.048f}, - {41.1133f,119.048f} -}; - -static const SFG_StrokeVertex ch91st3[] = -{ - {7.78f,-33.3333f}, - {41.1133f,-33.3333f} -}; - -static const SFG_StrokeStrip ch91st[] = -{ - {2,ch91st0}, - {2,ch91st1}, - {2,ch91st2}, - {2,ch91st3} -}; - -static const SFG_StrokeChar ch91 = {46.1133f,4,ch91st}; - -/* char: 0x5c */ - -static const SFG_StrokeVertex ch92st0[] = -{ - {5.84f,100.0f}, - {72.5067f,-14.2857f} -}; - -static const SFG_StrokeStrip ch92st[] = -{ - {2,ch92st0} -}; - -static const SFG_StrokeChar ch92 = {78.2067f,1,ch92st}; - -/* char: 0x5d */ - -static const SFG_StrokeVertex ch93st0[] = -{ - {33.0114f,119.048f}, - {33.0114f,-33.3333f} -}; - -static const SFG_StrokeVertex ch93st1[] = -{ - {37.7733f,119.048f}, - {37.7733f,-33.3333f} -}; - -static const SFG_StrokeVertex ch93st2[] = -{ - {4.44f,119.048f}, - {37.7733f,119.048f} -}; - -static const SFG_StrokeVertex ch93st3[] = -{ - {4.44f,-33.3333f}, - {37.7733f,-33.3333f} -}; - -static const SFG_StrokeStrip ch93st[] = -{ - {2,ch93st0}, - {2,ch93st1}, - {2,ch93st2}, - {2,ch93st3} -}; - -static const SFG_StrokeChar ch93 = {46.3933f,4,ch93st}; - -/* char: 0x5e */ - -static const SFG_StrokeVertex ch94st0[] = -{ - {44.0752f,109.524f}, - {5.98f,42.8571f} -}; - -static const SFG_StrokeVertex ch94st1[] = -{ - {44.0752f,109.524f}, - {82.1705f,42.8571f} -}; - -static const SFG_StrokeStrip ch94st[] = -{ - {2,ch94st0}, - {2,ch94st1} -}; - -static const SFG_StrokeChar ch94 = {90.2305f,2,ch94st}; - -/* char: 0x5f */ - -static const SFG_StrokeVertex ch95st0[] = -{ - {-1.1f,-33.3333f}, - {103.662f,-33.3333f}, - {103.662f,-28.5714f}, - {-1.1f,-28.5714f}, - {-1.1f,-33.3333f} -}; - -static const SFG_StrokeStrip ch95st[] = -{ - {5,ch95st0} -}; - -static const SFG_StrokeChar ch95 = {104.062f,1,ch95st}; - -/* char: 0x60 */ - -static const SFG_StrokeVertex ch96st0[] = -{ - {33.0219f,100.0f}, - {56.8314f,71.4286f} -}; - -static const SFG_StrokeVertex ch96st1[] = -{ - {33.0219f,100.0f}, - {28.26f,95.2381f}, - {56.8314f,71.4286f} -}; - -static const SFG_StrokeStrip ch96st[] = -{ - {2,ch96st0}, - {3,ch96st1} -}; - -static const SFG_StrokeChar ch96 = {83.5714f,2,ch96st}; - -/* char: 0x61 */ - -static const SFG_StrokeVertex ch97st0[] = -{ - {63.8229f,66.6667f}, - {63.8229f,0.0f} -}; - -static const SFG_StrokeVertex ch97st1[] = -{ - {63.8229f,52.381f}, - {54.299f,61.9048f}, - {44.7752f,66.6667f}, - {30.4895f,66.6667f}, - {20.9657f,61.9048f}, - {11.4419f,52.381f}, - {6.68f,38.0952f}, - {6.68f,28.5714f}, - {11.4419f,14.2857f}, - {20.9657f,4.7619f}, - {30.4895f,0.0f}, - {44.7752f,0.0f}, - {54.299f,4.7619f}, - {63.8229f,14.2857f} -}; - -static const SFG_StrokeStrip ch97st[] = -{ - {2,ch97st0}, - {14,ch97st1} -}; - -static const SFG_StrokeChar ch97 = {66.6029f,2,ch97st}; - -/* char: 0x62 */ - -static const SFG_StrokeVertex ch98st0[] = -{ - {8.76f,100.0f}, - {8.76f,0.0f} -}; - -static const SFG_StrokeVertex ch98st1[] = -{ - {8.76f,52.381f}, - {18.2838f,61.9048f}, - {27.8076f,66.6667f}, - {42.0933f,66.6667f}, - {51.6171f,61.9048f}, - {61.141f,52.381f}, - {65.9029f,38.0952f}, - {65.9029f,28.5714f}, - {61.141f,14.2857f}, - {51.6171f,4.7619f}, - {42.0933f,0.0f}, - {27.8076f,0.0f}, - {18.2838f,4.7619f}, - {8.76f,14.2857f} -}; - -static const SFG_StrokeStrip ch98st[] = -{ - {2,ch98st0}, - {14,ch98st1} -}; - -static const SFG_StrokeChar ch98 = {70.4629f,2,ch98st}; - -/* char: 0x63 */ - -static const SFG_StrokeVertex ch99st0[] = -{ - {62.6629f,52.381f}, - {53.139f,61.9048f}, - {43.6152f,66.6667f}, - {29.3295f,66.6667f}, - {19.8057f,61.9048f}, - {10.2819f,52.381f}, - {5.52f,38.0952f}, - {5.52f,28.5714f}, - {10.2819f,14.2857f}, - {19.8057f,4.7619f}, - {29.3295f,0.0f}, - {43.6152f,0.0f}, - {53.139f,4.7619f}, - {62.6629f,14.2857f} -}; - -static const SFG_StrokeStrip ch99st[] = -{ - {14,ch99st0} -}; - -static const SFG_StrokeChar ch99 = {68.9229f,1,ch99st}; - -/* char: 0x64 */ - -static const SFG_StrokeVertex ch100st0[] = -{ - {61.7829f,100.0f}, - {61.7829f,0.0f} -}; - -static const SFG_StrokeVertex ch100st1[] = -{ - {61.7829f,52.381f}, - {52.259f,61.9048f}, - {42.7352f,66.6667f}, - {28.4495f,66.6667f}, - {18.9257f,61.9048f}, - {9.4019f,52.381f}, - {4.64f,38.0952f}, - {4.64f,28.5714f}, - {9.4019f,14.2857f}, - {18.9257f,4.7619f}, - {28.4495f,0.0f}, - {42.7352f,0.0f}, - {52.259f,4.7619f}, - {61.7829f,14.2857f} -}; - -static const SFG_StrokeStrip ch100st[] = -{ - {2,ch100st0}, - {14,ch100st1} -}; - -static const SFG_StrokeChar ch100 = {70.2629f,2,ch100st}; - -/* char: 0x65 */ - -static const SFG_StrokeVertex ch101st0[] = -{ - {5.72f,38.0952f}, - {62.8629f,38.0952f}, - {62.8629f,47.619f}, - {58.101f,57.1429f}, - {53.339f,61.9048f}, - {43.8152f,66.6667f}, - {29.5295f,66.6667f}, - {20.0057f,61.9048f}, - {10.4819f,52.381f}, - {5.72f,38.0952f}, - {5.72f,28.5714f}, - {10.4819f,14.2857f}, - {20.0057f,4.7619f}, - {29.5295f,0.0f}, - {43.8152f,0.0f}, - {53.339f,4.7619f}, - {62.8629f,14.2857f} -}; - -static const SFG_StrokeStrip ch101st[] = -{ - {17,ch101st0} -}; - -static const SFG_StrokeChar ch101 = {68.5229f,1,ch101st}; - -/* char: 0x66 */ - -static const SFG_StrokeVertex ch102st0[] = -{ - {38.7752f,100.0f}, - {29.2514f,100.0f}, - {19.7276f,95.2381f}, - {14.9657f,80.9524f}, - {14.9657f,0.0f} -}; - -static const SFG_StrokeVertex ch102st1[] = -{ - {0.68f,66.6667f}, - {34.0133f,66.6667f} -}; - -static const SFG_StrokeStrip ch102st[] = -{ - {5,ch102st0}, - {2,ch102st1} -}; - -static const SFG_StrokeChar ch102 = {38.6552f,2,ch102st}; - -/* char: 0x67 */ - -static const SFG_StrokeVertex ch103st0[] = -{ - {62.5029f,66.6667f}, - {62.5029f,-9.5238f}, - {57.741f,-23.8095f}, - {52.979f,-28.5714f}, - {43.4552f,-33.3333f}, - {29.1695f,-33.3333f}, - {19.6457f,-28.5714f} -}; - -static const SFG_StrokeVertex ch103st1[] = -{ - {62.5029f,52.381f}, - {52.979f,61.9048f}, - {43.4552f,66.6667f}, - {29.1695f,66.6667f}, - {19.6457f,61.9048f}, - {10.1219f,52.381f}, - {5.36f,38.0952f}, - {5.36f,28.5714f}, - {10.1219f,14.2857f}, - {19.6457f,4.7619f}, - {29.1695f,0.0f}, - {43.4552f,0.0f}, - {52.979f,4.7619f}, - {62.5029f,14.2857f} -}; - -static const SFG_StrokeStrip ch103st[] = -{ - {7,ch103st0}, - {14,ch103st1} -}; - -static const SFG_StrokeChar ch103 = {70.9829f,2,ch103st}; - -/* char: 0x68 */ - -static const SFG_StrokeVertex ch104st0[] = -{ - {9.6f,100.0f}, - {9.6f,0.0f} -}; - -static const SFG_StrokeVertex ch104st1[] = -{ - {9.6f,47.619f}, - {23.8857f,61.9048f}, - {33.4095f,66.6667f}, - {47.6952f,66.6667f}, - {57.219f,61.9048f}, - {61.981f,47.619f}, - {61.981f,0.0f} -}; - -static const SFG_StrokeStrip ch104st[] = -{ - {2,ch104st0}, - {7,ch104st1} -}; - -static const SFG_StrokeChar ch104 = {71.021f,2,ch104st}; - -/* char: 0x69 */ - -static const SFG_StrokeVertex ch105st0[] = -{ - {10.02f,100.0f}, - {14.7819f,95.2381f}, - {19.5438f,100.0f}, - {14.7819f,104.762f}, - {10.02f,100.0f} -}; - -static const SFG_StrokeVertex ch105st1[] = -{ - {14.7819f,66.6667f}, - {14.7819f,0.0f} -}; - -static const SFG_StrokeStrip ch105st[] = -{ - {5,ch105st0}, - {2,ch105st1} -}; - -static const SFG_StrokeChar ch105 = {28.8638f,2,ch105st}; - -/* char: 0x6a */ - -static const SFG_StrokeVertex ch106st0[] = -{ - {17.3876f,100.0f}, - {22.1495f,95.2381f}, - {26.9114f,100.0f}, - {22.1495f,104.762f}, - {17.3876f,100.0f} -}; - -static const SFG_StrokeVertex ch106st1[] = -{ - {22.1495f,66.6667f}, - {22.1495f,-14.2857f}, - {17.3876f,-28.5714f}, - {7.8638f,-33.3333f}, - {-1.66f,-33.3333f} -}; - -static const SFG_StrokeStrip ch106st[] = -{ - {5,ch106st0}, - {5,ch106st1} -}; - -static const SFG_StrokeChar ch106 = {36.2314f,2,ch106st}; - -/* char: 0x6b */ - -static const SFG_StrokeVertex ch107st0[] = -{ - {9.6f,100.0f}, - {9.6f,0.0f} -}; - -static const SFG_StrokeVertex ch107st1[] = -{ - {57.219f,66.6667f}, - {9.6f,19.0476f} -}; - -static const SFG_StrokeVertex ch107st2[] = -{ - {28.6476f,38.0952f}, - {61.981f,0.0f} -}; - -static const SFG_StrokeStrip ch107st[] = -{ - {2,ch107st0}, - {2,ch107st1}, - {2,ch107st2} -}; - -static const SFG_StrokeChar ch107 = {62.521f,3,ch107st}; - -/* char: 0x6c */ - -static const SFG_StrokeVertex ch108st0[] = -{ - {10.02f,100.0f}, - {10.02f,0.0f} -}; - -static const SFG_StrokeStrip ch108st[] = -{ - {2,ch108st0} -}; - -static const SFG_StrokeChar ch108 = {19.34f,1,ch108st}; - -/* char: 0x6d */ - -static const SFG_StrokeVertex ch109st0[] = -{ - {9.6f,66.6667f}, - {9.6f,0.0f} -}; - -static const SFG_StrokeVertex ch109st1[] = -{ - {9.6f,47.619f}, - {23.8857f,61.9048f}, - {33.4095f,66.6667f}, - {47.6952f,66.6667f}, - {57.219f,61.9048f}, - {61.981f,47.619f}, - {61.981f,0.0f} -}; - -static const SFG_StrokeVertex ch109st2[] = -{ - {61.981f,47.619f}, - {76.2667f,61.9048f}, - {85.7905f,66.6667f}, - {100.076f,66.6667f}, - {109.6f,61.9048f}, - {114.362f,47.619f}, - {114.362f,0.0f} -}; - -static const SFG_StrokeStrip ch109st[] = -{ - {2,ch109st0}, - {7,ch109st1}, - {7,ch109st2} -}; - -static const SFG_StrokeChar ch109 = {123.962f,3,ch109st}; - -/* char: 0x6e */ - -static const SFG_StrokeVertex ch110st0[] = -{ - {9.18f,66.6667f}, - {9.18f,0.0f} -}; - -static const SFG_StrokeVertex ch110st1[] = -{ - {9.18f,47.619f}, - {23.4657f,61.9048f}, - {32.9895f,66.6667f}, - {47.2752f,66.6667f}, - {56.799f,61.9048f}, - {61.561f,47.619f}, - {61.561f,0.0f} -}; - -static const SFG_StrokeStrip ch110st[] = -{ - {2,ch110st0}, - {7,ch110st1} -}; - -static const SFG_StrokeChar ch110 = {70.881f,2,ch110st}; - -/* char: 0x6f */ - -static const SFG_StrokeVertex ch111st0[] = -{ - {28.7895f,66.6667f}, - {19.2657f,61.9048f}, - {9.7419f,52.381f}, - {4.98f,38.0952f}, - {4.98f,28.5714f}, - {9.7419f,14.2857f}, - {19.2657f,4.7619f}, - {28.7895f,0.0f}, - {43.0752f,0.0f}, - {52.599f,4.7619f}, - {62.1229f,14.2857f}, - {66.8848f,28.5714f}, - {66.8848f,38.0952f}, - {62.1229f,52.381f}, - {52.599f,61.9048f}, - {43.0752f,66.6667f}, - {28.7895f,66.6667f} -}; - -static const SFG_StrokeStrip ch111st[] = -{ - {17,ch111st0} -}; - -static const SFG_StrokeChar ch111 = {71.7448f,1,ch111st}; - -/* char: 0x70 */ - -static const SFG_StrokeVertex ch112st0[] = -{ - {9.46f,66.6667f}, - {9.46f,-33.3333f} -}; - -static const SFG_StrokeVertex ch112st1[] = -{ - {9.46f,52.381f}, - {18.9838f,61.9048f}, - {28.5076f,66.6667f}, - {42.7933f,66.6667f}, - {52.3171f,61.9048f}, - {61.841f,52.381f}, - {66.6029f,38.0952f}, - {66.6029f,28.5714f}, - {61.841f,14.2857f}, - {52.3171f,4.7619f}, - {42.7933f,0.0f}, - {28.5076f,0.0f}, - {18.9838f,4.7619f}, - {9.46f,14.2857f} -}; - -static const SFG_StrokeStrip ch112st[] = -{ - {2,ch112st0}, - {14,ch112st1} -}; - -static const SFG_StrokeChar ch112 = {70.8029f,2,ch112st}; - -/* char: 0x71 */ - -static const SFG_StrokeVertex ch113st0[] = -{ - {61.9829f,66.6667f}, - {61.9829f,-33.3333f} -}; - -static const SFG_StrokeVertex ch113st1[] = -{ - {61.9829f,52.381f}, - {52.459f,61.9048f}, - {42.9352f,66.6667f}, - {28.6495f,66.6667f}, - {19.1257f,61.9048f}, - {9.6019f,52.381f}, - {4.84f,38.0952f}, - {4.84f,28.5714f}, - {9.6019f,14.2857f}, - {19.1257f,4.7619f}, - {28.6495f,0.0f}, - {42.9352f,0.0f}, - {52.459f,4.7619f}, - {61.9829f,14.2857f} -}; - -static const SFG_StrokeStrip ch113st[] = -{ - {2,ch113st0}, - {14,ch113st1} -}; - -static const SFG_StrokeChar ch113 = {70.7429f,2,ch113st}; - -/* char: 0x72 */ - -static const SFG_StrokeVertex ch114st0[] = -{ - {9.46f,66.6667f}, - {9.46f,0.0f} -}; - -static const SFG_StrokeVertex ch114st1[] = -{ - {9.46f,38.0952f}, - {14.2219f,52.381f}, - {23.7457f,61.9048f}, - {33.2695f,66.6667f}, - {47.5552f,66.6667f} -}; - -static const SFG_StrokeStrip ch114st[] = -{ - {2,ch114st0}, - {5,ch114st1} -}; - -static const SFG_StrokeChar ch114 = {49.4952f,2,ch114st}; - -/* char: 0x73 */ - -static const SFG_StrokeVertex ch115st0[] = -{ - {57.081f,52.381f}, - {52.319f,61.9048f}, - {38.0333f,66.6667f}, - {23.7476f,66.6667f}, - {9.4619f,61.9048f}, - {4.7f,52.381f}, - {9.4619f,42.8571f}, - {18.9857f,38.0952f}, - {42.7952f,33.3333f}, - {52.319f,28.5714f}, - {57.081f,19.0476f}, - {57.081f,14.2857f}, - {52.319f,4.7619f}, - {38.0333f,0.0f}, - {23.7476f,0.0f}, - {9.4619f,4.7619f}, - {4.7f,14.2857f} -}; - -static const SFG_StrokeStrip ch115st[] = -{ - {17,ch115st0} -}; - -static const SFG_StrokeChar ch115 = {62.321f,1,ch115st}; - -/* char: 0x74 */ - -static const SFG_StrokeVertex ch116st0[] = -{ - {14.8257f,100.0f}, - {14.8257f,19.0476f}, - {19.5876f,4.7619f}, - {29.1114f,0.0f}, - {38.6352f,0.0f} -}; - -static const SFG_StrokeVertex ch116st1[] = -{ - {0.54f,66.6667f}, - {33.8733f,66.6667f} -}; - -static const SFG_StrokeStrip ch116st[] = -{ - {5,ch116st0}, - {2,ch116st1} -}; - -static const SFG_StrokeChar ch116 = {39.3152f,2,ch116st}; - -/* char: 0x75 */ - -static const SFG_StrokeVertex ch117st0[] = -{ - {9.46f,66.6667f}, - {9.46f,19.0476f}, - {14.2219f,4.7619f}, - {23.7457f,0.0f}, - {38.0314f,0.0f}, - {47.5552f,4.7619f}, - {61.841f,19.0476f} -}; - -static const SFG_StrokeVertex ch117st1[] = -{ - {61.841f,66.6667f}, - {61.841f,0.0f} -}; - -static const SFG_StrokeStrip ch117st[] = -{ - {7,ch117st0}, - {2,ch117st1} -}; - -static const SFG_StrokeChar ch117 = {71.161f,2,ch117st}; - -/* char: 0x76 */ - -static const SFG_StrokeVertex ch118st0[] = -{ - {1.8f,66.6667f}, - {30.3714f,0.0f} -}; - -static const SFG_StrokeVertex ch118st1[] = -{ - {58.9429f,66.6667f}, - {30.3714f,0.0f} -}; - -static const SFG_StrokeStrip ch118st[] = -{ - {2,ch118st0}, - {2,ch118st1} -}; - -static const SFG_StrokeChar ch118 = {60.6029f,2,ch118st}; - -/* char: 0x77 */ - -static const SFG_StrokeVertex ch119st0[] = -{ - {2.5f,66.6667f}, - {21.5476f,0.0f} -}; - -static const SFG_StrokeVertex ch119st1[] = -{ - {40.5952f,66.6667f}, - {21.5476f,0.0f} -}; - -static const SFG_StrokeVertex ch119st2[] = -{ - {40.5952f,66.6667f}, - {59.6429f,0.0f} -}; - -static const SFG_StrokeVertex ch119st3[] = -{ - {78.6905f,66.6667f}, - {59.6429f,0.0f} -}; - -static const SFG_StrokeStrip ch119st[] = -{ - {2,ch119st0}, - {2,ch119st1}, - {2,ch119st2}, - {2,ch119st3} -}; - -static const SFG_StrokeChar ch119 = {80.4905f,4,ch119st}; - -/* char: 0x78 */ - -static const SFG_StrokeVertex ch120st0[] = -{ - {1.66f,66.6667f}, - {54.041f,0.0f} -}; - -static const SFG_StrokeVertex ch120st1[] = -{ - {54.041f,66.6667f}, - {1.66f,0.0f} -}; - -static const SFG_StrokeStrip ch120st[] = -{ - {2,ch120st0}, - {2,ch120st1} -}; - -static const SFG_StrokeChar ch120 = {56.401f,2,ch120st}; - -/* char: 0x79 */ - -static const SFG_StrokeVertex ch121st0[] = -{ - {6.5619f,66.6667f}, - {35.1333f,0.0f} -}; - -static const SFG_StrokeVertex ch121st1[] = -{ - {63.7048f,66.6667f}, - {35.1333f,0.0f}, - {25.6095f,-19.0476f}, - {16.0857f,-28.5714f}, - {6.5619f,-33.3333f}, - {1.8f,-33.3333f} -}; - -static const SFG_StrokeStrip ch121st[] = -{ - {2,ch121st0}, - {6,ch121st1} -}; - -static const SFG_StrokeChar ch121 = {66.0648f,2,ch121st}; - -/* char: 0x7a */ - -static const SFG_StrokeVertex ch122st0[] = -{ - {56.821f,66.6667f}, - {4.44f,0.0f} -}; - -static const SFG_StrokeVertex ch122st1[] = -{ - {4.44f,66.6667f}, - {56.821f,66.6667f} -}; - -static const SFG_StrokeVertex ch122st2[] = -{ - {4.44f,0.0f}, - {56.821f,0.0f} -}; - -static const SFG_StrokeStrip ch122st[] = -{ - {2,ch122st0}, - {2,ch122st1}, - {2,ch122st2} -}; - -static const SFG_StrokeChar ch122 = {61.821f,3,ch122st}; - -/* char: 0x7b */ - -static const SFG_StrokeVertex ch123st0[] = -{ - {31.1895f,119.048f}, - {21.6657f,114.286f}, - {16.9038f,109.524f}, - {12.1419f,100.0f}, - {12.1419f,90.4762f}, - {16.9038f,80.9524f}, - {21.6657f,76.1905f}, - {26.4276f,66.6667f}, - {26.4276f,57.1429f}, - {16.9038f,47.619f} -}; - -static const SFG_StrokeVertex ch123st1[] = -{ - {21.6657f,114.286f}, - {16.9038f,104.762f}, - {16.9038f,95.2381f}, - {21.6657f,85.7143f}, - {26.4276f,80.9524f}, - {31.1895f,71.4286f}, - {31.1895f,61.9048f}, - {26.4276f,52.381f}, - {7.38f,42.8571f}, - {26.4276f,33.3333f}, - {31.1895f,23.8095f}, - {31.1895f,14.2857f}, - {26.4276f,4.7619f}, - {21.6657f,0.0f}, - {16.9038f,-9.5238f}, - {16.9038f,-19.0476f}, - {21.6657f,-28.5714f} -}; - -static const SFG_StrokeVertex ch123st2[] = -{ - {16.9038f,38.0952f}, - {26.4276f,28.5714f}, - {26.4276f,19.0476f}, - {21.6657f,9.5238f}, - {16.9038f,4.7619f}, - {12.1419f,-4.7619f}, - {12.1419f,-14.2857f}, - {16.9038f,-23.8095f}, - {21.6657f,-28.5714f}, - {31.1895f,-33.3333f} -}; - -static const SFG_StrokeStrip ch123st[] = -{ - {10,ch123st0}, - {17,ch123st1}, - {10,ch123st2} -}; - -static const SFG_StrokeChar ch123 = {41.6295f,3,ch123st}; - -/* char: 0x7c */ - -static const SFG_StrokeVertex ch124st0[] = -{ - {11.54f,119.048f}, - {11.54f,-33.3333f} -}; - -static const SFG_StrokeStrip ch124st[] = -{ - {2,ch124st0} -}; - -static const SFG_StrokeChar ch124 = {23.78f,1,ch124st}; - -/* char: 0x7d */ - -static const SFG_StrokeVertex ch125st0[] = -{ - {9.18f,119.048f}, - {18.7038f,114.286f}, - {23.4657f,109.524f}, - {28.2276f,100.0f}, - {28.2276f,90.4762f}, - {23.4657f,80.9524f}, - {18.7038f,76.1905f}, - {13.9419f,66.6667f}, - {13.9419f,57.1429f}, - {23.4657f,47.619f} -}; - -static const SFG_StrokeVertex ch125st1[] = -{ - {18.7038f,114.286f}, - {23.4657f,104.762f}, - {23.4657f,95.2381f}, - {18.7038f,85.7143f}, - {13.9419f,80.9524f}, - {9.18f,71.4286f}, - {9.18f,61.9048f}, - {13.9419f,52.381f}, - {32.9895f,42.8571f}, - {13.9419f,33.3333f}, - {9.18f,23.8095f}, - {9.18f,14.2857f}, - {13.9419f,4.7619f}, - {18.7038f,0.0f}, - {23.4657f,-9.5238f}, - {23.4657f,-19.0476f}, - {18.7038f,-28.5714f} -}; - -static const SFG_StrokeVertex ch125st2[] = -{ - {23.4657f,38.0952f}, - {13.9419f,28.5714f}, - {13.9419f,19.0476f}, - {18.7038f,9.5238f}, - {23.4657f,4.7619f}, - {28.2276f,-4.7619f}, - {28.2276f,-14.2857f}, - {23.4657f,-23.8095f}, - {18.7038f,-28.5714f}, - {9.18f,-33.3333f} -}; - -static const SFG_StrokeStrip ch125st[] = -{ - {10,ch125st0}, - {17,ch125st1}, - {10,ch125st2} -}; - -static const SFG_StrokeChar ch125 = {41.4695f,3,ch125st}; - -/* char: 0x7e */ - -static const SFG_StrokeVertex ch126st0[] = -{ - {2.92f,28.5714f}, - {2.92f,38.0952f}, - {7.6819f,52.381f}, - {17.2057f,57.1429f}, - {26.7295f,57.1429f}, - {36.2533f,52.381f}, - {55.301f,38.0952f}, - {64.8248f,33.3333f}, - {74.3486f,33.3333f}, - {83.8724f,38.0952f}, - {88.6343f,47.619f} -}; - -static const SFG_StrokeVertex ch126st1[] = -{ - {2.92f,38.0952f}, - {7.6819f,47.619f}, - {17.2057f,52.381f}, - {26.7295f,52.381f}, - {36.2533f,47.619f}, - {55.301f,33.3333f}, - {64.8248f,28.5714f}, - {74.3486f,28.5714f}, - {83.8724f,33.3333f}, - {88.6343f,47.619f}, - {88.6343f,57.1429f} -}; - -static const SFG_StrokeStrip ch126st[] = -{ - {11,ch126st0}, - {11,ch126st1} -}; - -static const SFG_StrokeChar ch126 = {91.2743f,2,ch126st}; - -/* char: 0x7f */ - -static const SFG_StrokeVertex ch127st0[] = -{ - {52.381f,100.0f}, - {14.2857f,-33.3333f} -}; - -static const SFG_StrokeVertex ch127st1[] = -{ - {28.5714f,66.6667f}, - {14.2857f,61.9048f}, - {4.7619f,52.381f}, - {0.0f,38.0952f}, - {0.0f,23.8095f}, - {4.7619f,14.2857f}, - {14.2857f,4.7619f}, - {28.5714f,0.0f}, - {38.0952f,0.0f}, - {52.381f,4.7619f}, - {61.9048f,14.2857f}, - {66.6667f,28.5714f}, - {66.6667f,42.8571f}, - {61.9048f,52.381f}, - {52.381f,61.9048f}, - {38.0952f,66.6667f}, - {28.5714f,66.6667f} -}; - -static const SFG_StrokeStrip ch127st[] = -{ - {2,ch127st0}, - {17,ch127st1} -}; - -static const SFG_StrokeChar ch127 = {66.6667f,2,ch127st}; - -static const SFG_StrokeChar *chars[] = -{ - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - &ch32, &ch33, &ch34, &ch35, &ch36, &ch37, &ch38, &ch39, - &ch40, &ch41, &ch42, &ch43, &ch44, &ch45, &ch46, &ch47, - &ch48, &ch49, &ch50, &ch51, &ch52, &ch53, &ch54, &ch55, - &ch56, &ch57, &ch58, &ch59, &ch60, &ch61, &ch62, &ch63, - &ch64, &ch65, &ch66, &ch67, &ch68, &ch69, &ch70, &ch71, - &ch72, &ch73, &ch74, &ch75, &ch76, &ch77, &ch78, &ch79, - &ch80, &ch81, &ch82, &ch83, &ch84, &ch85, &ch86, &ch87, - &ch88, &ch89, &ch90, &ch91, &ch92, &ch93, &ch94, &ch95, - &ch96, &ch97, &ch98, &ch99, &ch100, &ch101, &ch102, &ch103, - &ch104, &ch105, &ch106, &ch107, &ch108, &ch109, &ch110, &ch111, - &ch112, &ch113, &ch114, &ch115, &ch116, &ch117, &ch118, &ch119, - &ch120, &ch121, &ch122, &ch123, &ch124, &ch125, &ch126, &ch127 -}; - -const SFG_StrokeFont fgStrokeRoman = {"Roman",128,152.381f,chars}; diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_structure.c b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_structure.c deleted file mode 100644 index 524242c..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_structure.c +++ /dev/null @@ -1,596 +0,0 @@ -/* - * freeglut_structure.c - * - * Windows and menus need tree structure - * - * Copyright (c) 1999-2000 Pawel W. Olszta. All Rights Reserved. - * Written by Pawel W. Olszta, - * Creation date: Sat Dec 18 1999 - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included - * in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - * PAWEL W. OLSZTA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER - * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - */ - -#include "freeglut.h" -#include "freeglut_internal.h" - -/* -- GLOBAL EXPORTS ------------------------------------------------------- */ - -/* - * The SFG_Structure container holds information about windows and menus - * created between glutInit() and glutMainLoop() return. - */ - -SFG_Structure fgStructure = { { NULL, NULL }, /* The list of windows */ - { NULL, NULL }, /* The list of menus */ - { NULL, NULL }, /* Windows to Destroy list */ - NULL, /* The current window */ - NULL, /* The current menu */ - NULL, /* The menu OpenGL context */ - NULL, /* The game mode window */ - 0, /* The current new window ID */ - 0 }; /* The current new menu ID */ - - -/* -- PRIVATE FUNCTIONS ---------------------------------------------------- */ - -static void fghClearCallBacks( SFG_Window *window ) -{ - if( window ) - { - int i; - for( i = 0; i < TOTAL_CALLBACKS; ++i ) - window->CallBacks[ i ] = NULL; - } -} - -/* - * This private function creates, opens and adds to the hierarchy - * a freeglut window complete with OpenGL context and stuff... - * - * If parent is set to NULL, the window created will be a topmost one. - */ -SFG_Window* fgCreateWindow( SFG_Window* parent, const char* title, - GLboolean positionUse, int x, int y, - GLboolean sizeUse, int w, int h, - GLboolean gameMode, GLboolean isMenu ) -{ - /* Have the window object created */ - SFG_Window *window = (SFG_Window *)calloc( sizeof(SFG_Window), 1 ); - -#if TARGET_HOST_UNIX_X11 - window->Window.FBConfig = NULL; -#endif - fghClearCallBacks( window ); - - /* Initialize the object properties */ - window->ID = ++fgStructure.WindowID; - window->State.OldHeight = window->State.OldWidth = -1; - - fgListInit( &window->Children ); - if( parent ) - { - fgListAppend( &parent->Children, &window->Node ); - window->Parent = parent; - } - else - fgListAppend( &fgStructure.Windows, &window->Node ); - - /* Set the default mouse cursor and reset the modifiers value */ - window->State.Cursor = GLUT_CURSOR_INHERIT; - - window->IsMenu = isMenu; - - window->State.IgnoreKeyRepeat = GL_FALSE; - window->State.KeyRepeating = GL_FALSE; - window->State.IsFullscreen = GL_FALSE; - - /* - * Open the window now. The fgOpenWindow() function is system - * dependant, and resides in freeglut_window.c. Uses fgState. - */ - fgOpenWindow( window, title, positionUse, x, y, sizeUse, w, h, gameMode, - (GLboolean)(parent ? GL_TRUE : GL_FALSE) ); - - return window; -} - -/* - * This private function creates a menu and adds it to the menus list - */ -SFG_Menu* fgCreateMenu( FGCBMenu menuCallback ) -{ - int x = 100, y = 100, w = 100, h = 100; - SFG_Window *current_window = fgStructure.CurrentWindow; - - /* Have the menu object created */ - SFG_Menu* menu = (SFG_Menu *)calloc( sizeof(SFG_Menu), 1 ); - - menu->ParentWindow = NULL; - - /* Create a window for the menu to reside in. */ - - fgCreateWindow( NULL, "freeglut menu", GL_TRUE, x, y, GL_TRUE, w, h, - GL_FALSE, GL_TRUE ); - menu->Window = fgStructure.CurrentWindow; - glutDisplayFunc( fgDisplayMenu ); - - glutHideWindow( ); /* Hide the window for now */ - fgSetWindow( current_window ); - - /* Initialize the object properties: */ - menu->ID = ++fgStructure.MenuID; - menu->Callback = menuCallback; - menu->ActiveEntry = NULL; - - fgListInit( &menu->Entries ); - fgListAppend( &fgStructure.Menus, &menu->Node ); - - /* Newly created menus implicitly become current ones */ - fgStructure.CurrentMenu = menu; - - return menu; -} - -/* - * Function to add a window to the linked list of windows to destroy. - * Subwindows are automatically added because they hang from the window - * structure. - */ -void fgAddToWindowDestroyList( SFG_Window* window ) -{ - SFG_WindowList *new_list_entry = - ( SFG_WindowList* )malloc( sizeof(SFG_WindowList ) ); - new_list_entry->window = window; - fgListAppend( &fgStructure.WindowsToDestroy, &new_list_entry->node ); - - /* Check if the window is the current one... */ - if( fgStructure.CurrentWindow == window ) - fgStructure.CurrentWindow = NULL; - - /* - * Clear all window callbacks except Destroy, which will - * be invoked later. Right now, we are potentially carrying - * out a freeglut operation at the behest of a client callback, - * so we are reluctant to re-enter the client with the Destroy - * callback, right now. The others are all wiped out, however, - * to ensure that they are no longer called after this point. - */ - { - FGCBDestroy destroy = (FGCBDestroy)FETCH_WCB( *window, Destroy ); - fghClearCallBacks( window ); - SET_WCB( *window, Destroy, destroy ); - } -} - -/* - * Function to close down all the windows in the "WindowsToDestroy" list - */ -void fgCloseWindows( ) -{ - while( fgStructure.WindowsToDestroy.First ) - { - SFG_WindowList *window_ptr = fgStructure.WindowsToDestroy.First; - fgDestroyWindow( window_ptr->window ); - fgListRemove( &fgStructure.WindowsToDestroy, &window_ptr->node ); - free( window_ptr ); - } -} - -/* - * This function destroys a window and all of its subwindows. Actually, - * another function, defined in freeglut_window.c is called, but this is - * a whole different story... - */ -void fgDestroyWindow( SFG_Window* window ) -{ - FREEGLUT_INTERNAL_ERROR_EXIT ( window, "Window destroy function called with null window", - "fgDestroyWindow" ); - - while( window->Children.First ) - fgDestroyWindow( ( SFG_Window * )window->Children.First ); - - { - SFG_Window *activeWindow = fgStructure.CurrentWindow; - INVOKE_WCB( *window, Destroy, ( ) ); - fgSetWindow( activeWindow ); - } - - if( window->Parent ) - fgListRemove( &window->Parent->Children, &window->Node ); - else - fgListRemove( &fgStructure.Windows, &window->Node ); - - if( window->ActiveMenu ) - fgDeactivateMenu( window ); - - fghClearCallBacks( window ); - fgCloseWindow( window ); - free( window ); - if( fgStructure.CurrentWindow == window ) - fgStructure.CurrentWindow = NULL; -} - -/* - * This is a helper static function that removes a menu (given its pointer) - * from any windows that can be accessed from a given parent... - */ -static void fghRemoveMenuFromWindow( SFG_Window* window, SFG_Menu* menu ) -{ - SFG_Window *subWindow; - int i; - - /* Check whether this is the active menu in the window */ - if ( menu == window->ActiveMenu ) - window->ActiveMenu = NULL ; - - /* - * Check if the menu is attached to the current window, - * if so, have it detached (by overwriting with a NULL): - */ - for( i = 0; i < FREEGLUT_MAX_MENUS; i++ ) - if( window->Menu[ i ] == menu ) - window->Menu[ i ] = NULL; - - /* Call this function for all of the window's children recursively: */ - for( subWindow = (SFG_Window *)window->Children.First; - subWindow; - subWindow = (SFG_Window *)subWindow->Node.Next) - fghRemoveMenuFromWindow( subWindow, menu ); -} - -/* - * This is a static helper function that removes menu references - * from another menu, given two pointers to them... - */ -static void fghRemoveMenuFromMenu( SFG_Menu* from, SFG_Menu* menu ) -{ - SFG_MenuEntry *entry; - - for( entry = (SFG_MenuEntry *)from->Entries.First; - entry; - entry = ( SFG_MenuEntry * )entry->Node.Next ) - if( entry->SubMenu == menu ) - entry->SubMenu = NULL; -} - -/* - * This function destroys a menu specified by the parameter. All menus - * and windows are updated to make sure no ill pointers hang around. - */ -void fgDestroyMenu( SFG_Menu* menu ) -{ - SFG_Window *window; - SFG_Menu *from; - - FREEGLUT_INTERNAL_ERROR_EXIT ( menu, "Menu destroy function called with null menu", - "fgDestroyMenu" ); - - /* First of all, have all references to this menu removed from all windows: */ - for( window = (SFG_Window *)fgStructure.Windows.First; - window; - window = (SFG_Window *)window->Node.Next ) - fghRemoveMenuFromWindow( window, menu ); - - /* Now proceed with removing menu entries that lead to this menu */ - for( from = ( SFG_Menu * )fgStructure.Menus.First; - from; - from = ( SFG_Menu * )from->Node.Next ) - fghRemoveMenuFromMenu( from, menu ); - - /* - * If the programmer defined a destroy callback, call it - * A. Donev: But first make this the active menu - */ - if( menu->Destroy ) - { - SFG_Menu *activeMenu=fgStructure.CurrentMenu; - fgStructure.CurrentMenu = menu; - menu->Destroy( ); - fgStructure.CurrentMenu = activeMenu; - } - - /* - * Now we are pretty sure the menu is not used anywhere - * and that we can remove all of its entries - */ - while( menu->Entries.First ) - { - SFG_MenuEntry *entry = ( SFG_MenuEntry * ) menu->Entries.First; - - fgListRemove( &menu->Entries, &entry->Node ); - - if( entry->Text ) - free( entry->Text ); - entry->Text = NULL; - - free( entry ); - } - - if( fgStructure.CurrentWindow == menu->Window ) - fgSetWindow( NULL ); - fgDestroyWindow( menu->Window ); - fgListRemove( &fgStructure.Menus, &menu->Node ); - if( fgStructure.CurrentMenu == menu ) - fgStructure.CurrentMenu = NULL; - - free( menu ); -} - -/* - * This function should be called on glutInit(). It will prepare the internal - * structure of freeglut to be used in the application. The structure will be - * destroyed using fgDestroyStructure() on glutMainLoop() return. In that - * case further use of freeglut should be preceeded with a glutInit() call. - */ -void fgCreateStructure( void ) -{ - /* - * We will be needing two lists: the first containing windows, - * and the second containing the user-defined menus. - * Also, no current window/menu is set, as none has been created yet. - */ - - fgListInit(&fgStructure.Windows); - fgListInit(&fgStructure.Menus); - fgListInit(&fgStructure.WindowsToDestroy); - - fgStructure.CurrentWindow = NULL; - fgStructure.CurrentMenu = NULL; - fgStructure.MenuContext = NULL; - fgStructure.GameModeWindow = NULL; - fgStructure.WindowID = 0; - fgStructure.MenuID = 0; -} - -/* - * This function is automatically called on glutMainLoop() return. - * It should deallocate and destroy all remnants of previous - * glutInit()-enforced structure initialization... - */ -void fgDestroyStructure( void ) -{ - /* Clean up the WindowsToDestroy list. */ - fgCloseWindows( ); - - /* Make sure all windows and menus have been deallocated */ - while( fgStructure.Menus.First ) - fgDestroyMenu( ( SFG_Menu * )fgStructure.Menus.First ); - - while( fgStructure.Windows.First ) - fgDestroyWindow( ( SFG_Window * )fgStructure.Windows.First ); -} - -/* - * Helper function to enumerate through all registered top-level windows - */ -void fgEnumWindows( FGCBenumerator enumCallback, SFG_Enumerator* enumerator ) -{ - SFG_Window *window; - - FREEGLUT_INTERNAL_ERROR_EXIT ( enumCallback && enumerator, - "Enumerator or callback missing from window enumerator call", - "fgEnumWindows" ); - - /* Check every of the top-level windows */ - for( window = ( SFG_Window * )fgStructure.Windows.First; - window; - window = ( SFG_Window * )window->Node.Next ) - { - enumCallback( window, enumerator ); - if( enumerator->found ) - return; - } -} - -/* - * Helper function to enumerate through all a window's subwindows - * (single level descent) - */ -void fgEnumSubWindows( SFG_Window* window, FGCBenumerator enumCallback, - SFG_Enumerator* enumerator ) -{ - SFG_Window *child; - - FREEGLUT_INTERNAL_ERROR_EXIT ( enumCallback && enumerator, - "Enumerator or callback missing from subwindow enumerator call", - "fgEnumSubWindows" ); - FREEGLUT_INTERNAL_ERROR_EXIT_IF_NOT_INITIALISED ( "Window Enumeration" ); - - for( child = ( SFG_Window * )window->Children.First; - child; - child = ( SFG_Window * )child->Node.Next ) - { - enumCallback( child, enumerator ); - if( enumerator->found ) - return; - } -} - -/* - * A static helper function to look for a window given its handle - */ -static void fghcbWindowByHandle( SFG_Window *window, - SFG_Enumerator *enumerator ) -{ - if ( enumerator->found ) - return; - - /* Check the window's handle. Hope this works. Looks ugly. That's for sure. */ - if( window->Window.Handle == (SFG_WindowHandleType) (enumerator->data) ) - { - enumerator->found = GL_TRUE; - enumerator->data = window; - - return; - } - - /* Otherwise, check this window's children */ - fgEnumSubWindows( window, fghcbWindowByHandle, enumerator ); -} - -/* - * fgWindowByHandle returns a (SFG_Window *) value pointing to the - * first window in the queue matching the specified window handle. - * The function is defined in freeglut_structure.c file. - */ -SFG_Window* fgWindowByHandle ( SFG_WindowHandleType hWindow ) -{ - SFG_Enumerator enumerator; - - /* This is easy and makes use of the windows enumeration defined above */ - enumerator.found = GL_FALSE; - enumerator.data = (void *)hWindow; - fgEnumWindows( fghcbWindowByHandle, &enumerator ); - - if( enumerator.found ) - return( SFG_Window *) enumerator.data; - return NULL; -} - -/* - * A static helper function to look for a window given its ID - */ -static void fghcbWindowByID( SFG_Window *window, SFG_Enumerator *enumerator ) -{ - /* Make sure we do not overwrite our precious results... */ - if( enumerator->found ) - return; - - /* Check the window's handle. Hope this works. Looks ugly. That's for sure. */ - if( window->ID == *( int *)(enumerator->data) ) - { - enumerator->found = GL_TRUE; - enumerator->data = window; - - return; - } - - /* Otherwise, check this window's children */ - fgEnumSubWindows( window, fghcbWindowByID, enumerator ); -} - -/* - * This function is similiar to the previous one, except it is - * looking for a specified (sub)window identifier. The function - * is defined in freeglut_structure.c file. - */ -SFG_Window* fgWindowByID( int windowID ) -{ - SFG_Enumerator enumerator; - - /* Uses a method very similiar for fgWindowByHandle... */ - enumerator.found = GL_FALSE; - enumerator.data = ( void * )&windowID; - fgEnumWindows( fghcbWindowByID, &enumerator ); - if( enumerator.found ) - return ( SFG_Window * )enumerator.data; - return NULL; -} - -/* - * Looks up a menu given its ID. This is easier that fgWindowByXXX - * as all menus are placed in one doubly linked list... - */ -SFG_Menu* fgMenuByID( int menuID ) -{ - SFG_Menu *menu = NULL; - - /* It's enough to check all entries in fgStructure.Menus... */ - for( menu = (SFG_Menu *)fgStructure.Menus.First; - menu; - menu = (SFG_Menu *)menu->Node.Next ) - if( menu->ID == menuID ) - return menu; - return NULL; -} - -/* - * List functions... - */ -void fgListInit(SFG_List *list) -{ - list->First = NULL; - list->Last = NULL; -} - -void fgListAppend(SFG_List *list, SFG_Node *node) -{ - if ( list->Last ) - { - SFG_Node *ln = (SFG_Node *) list->Last; - ln->Next = node; - node->Prev = ln; - } - else - { - node->Prev = NULL; - list->First = node; - } - - node->Next = NULL; - list->Last = node; -} - -void fgListRemove(SFG_List *list, SFG_Node *node) -{ - if( node->Next ) - ( ( SFG_Node * )node->Next )->Prev = node->Prev; - if( node->Prev ) - ( ( SFG_Node * )node->Prev )->Next = node->Next; - if( ( ( SFG_Node * )list->First ) == node ) - list->First = node->Next; - if( ( ( SFG_Node * )list->Last ) == node ) - list->Last = node->Prev; -} - -int fgListLength(SFG_List *list) -{ - SFG_Node *node; - int length = 0; - - for( node =( SFG_Node * )list->First; - node; - node = ( SFG_Node * )node->Next ) - ++length; - - return length; -} - - -void fgListInsert(SFG_List *list, SFG_Node *next, SFG_Node *node) -{ - SFG_Node *prev; - - if( (node->Next = next) ) - { - prev = next->Prev; - next->Prev = node; - } - else - { - prev = list->Last; - list->Last = node; - } - - if( (node->Prev = prev) ) - prev->Next = node; - else - list->First = node; -} - -/*** END OF FILE ***/ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_teapot.c b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_teapot.c deleted file mode 100644 index 2b4fc24..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_teapot.c +++ /dev/null @@ -1,200 +0,0 @@ -/* - * freeglut_teapot.c - * - * Teapot(tm) rendering code. - * - * Copyright (c) 1999-2000 Pawel W. Olszta. All Rights Reserved. - * Written by Pawel W. Olszta, - * Creation date: Fri Dec 24 1999 - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included - * in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - * PAWEL W. OLSZTA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER - * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - */ - -/* - * Original teapot code copyright follows: - */ - -/* - * (c) Copyright 1993, Silicon Graphics, Inc. - * - * ALL RIGHTS RESERVED - * - * Permission to use, copy, modify, and distribute this software - * for any purpose and without fee is hereby granted, provided - * that the above copyright notice appear in all copies and that - * both the copyright notice and this permission notice appear in - * supporting documentation, and that the name of Silicon - * Graphics, Inc. not be used in advertising or publicity - * pertaining to distribution of the software without specific, - * written prior permission. - * - * THE MATERIAL EMBODIED ON THIS SOFTWARE IS PROVIDED TO YOU - * "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR - * OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF - * MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO - * EVENT SHALL SILICON GRAPHICS, INC. BE LIABLE TO YOU OR ANYONE - * ELSE FOR ANY DIRECT, SPECIAL, INCIDENTAL, INDIRECT OR - * CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER, - * INCLUDING WITHOUT LIMITATION, LOSS OF PROFIT, LOSS OF USE, - * SAVINGS OR REVENUE, OR THE CLAIMS OF THIRD PARTIES, WHETHER OR - * NOT SILICON GRAPHICS, INC. HAS BEEN ADVISED OF THE POSSIBILITY - * OF SUCH LOSS, HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, - * ARISING OUT OF OR IN CONNECTION WITH THE POSSESSION, USE OR - * PERFORMANCE OF THIS SOFTWARE. - * - * US Government Users Restricted Rights - * - * Use, duplication, or disclosure by the Government is subject to - * restrictions set forth in FAR 52.227.19(c)(2) or subparagraph - * (c)(1)(ii) of the Rights in Technical Data and Computer - * Software clause at DFARS 252.227-7013 and/or in similar or - * successor clauses in the FAR or the DOD or NASA FAR - * Supplement. Unpublished-- rights reserved under the copyright - * laws of the United States. Contractor/manufacturer is Silicon - * Graphics, Inc., 2011 N. Shoreline Blvd., Mountain View, CA - * 94039-7311. - * - * OpenGL(TM) is a trademark of Silicon Graphics, Inc. - */ - -#include "freeglut.h" -#include "freeglut_internal.h" -#include "freeglut_teapot_data.h" - -/* -- PRIVATE FUNCTIONS ---------------------------------------------------- */ - - -static void fghTeapot( GLint grid, GLdouble scale, GLenum type ) -{ -#if defined(_WIN32_WCE) - int i, numV=sizeof(strip_vertices)/4, numI=sizeof(strip_normals)/4; -#else - double p[4][4][3], q[4][4][3], r[4][4][3], s[4][4][3]; - long i, j, k, l; -#endif - - glPushAttrib( GL_ENABLE_BIT | GL_EVAL_BIT ); - glEnable( GL_AUTO_NORMAL ); - glEnable( GL_NORMALIZE ); - glEnable( GL_MAP2_VERTEX_3 ); - glEnable( GL_MAP2_TEXTURE_COORD_2 ); - - glPushMatrix(); - glRotated( 270.0, 1.0, 0.0, 0.0 ); - glScaled( 0.5 * scale, 0.5 * scale, 0.5 * scale ); - glTranslated( 0.0, 0.0, -1.5 ); - -#if defined(_WIN32_WCE) - glRotated( 90.0, 1.0, 0.0, 0.0 ); - glBegin( GL_TRIANGLE_STRIP ); - - for( i = 0; i < numV-1; i++ ) - { - int vidx = strip_vertices[i], - nidx = strip_normals[i]; - - if( vidx != -1 ) - { - glNormal3fv( normals[nidx] ); - glVertex3fv( vertices[vidx] ); - } - else - { - glEnd(); - glBegin( GL_TRIANGLE_STRIP ); - } - } - - glEnd(); -#else - for (i = 0; i < 10; i++) { - for (j = 0; j < 4; j++) { - for (k = 0; k < 4; k++) { - for (l = 0; l < 3; l++) { - p[j][k][l] = cpdata[patchdata[i][j * 4 + k]][l]; - q[j][k][l] = cpdata[patchdata[i][j * 4 + (3 - k)]][l]; - if (l == 1) - q[j][k][l] *= -1.0; - if (i < 6) { - r[j][k][l] = - cpdata[patchdata[i][j * 4 + (3 - k)]][l]; - if (l == 0) - r[j][k][l] *= -1.0; - s[j][k][l] = cpdata[patchdata[i][j * 4 + k]][l]; - if (l == 0) - s[j][k][l] *= -1.0; - if (l == 1) - s[j][k][l] *= -1.0; - } - } - } - } - - glMap2d(GL_MAP2_TEXTURE_COORD_2, 0.0, 1.0, 2, 2, 0.0, 1.0, 4, 2, - &tex[0][0][0]); - glMap2d(GL_MAP2_VERTEX_3, 0.0, 1.0, 3, 4, 0.0, 1.0, 12, 4, - &p[0][0][0]); - glMapGrid2d(grid, 0.0, 1.0, grid, 0.0, 1.0); - glEvalMesh2(type, 0, grid, 0, grid); - glMap2d(GL_MAP2_VERTEX_3, 0.0, 1.0, 3, 4, 0.0, 1.0, 12, 4, - &q[0][0][0]); - glEvalMesh2(type, 0, grid, 0, grid); - if (i < 6) { - glMap2d(GL_MAP2_VERTEX_3, 0.0, 1.0, 3, 4, 0.0, 1.0, 12, 4, - &r[0][0][0]); - glEvalMesh2(type, 0, grid, 0, grid); - glMap2d(GL_MAP2_VERTEX_3, 0.0, 1.0, 3, 4, 0.0, 1.0, 12, 4, - &s[0][0][0]); - glEvalMesh2(type, 0, grid, 0, grid); - } - } -#endif /* defined(_WIN32_WCE) */ - - glPopMatrix(); - glPopAttrib(); -} - - -/* -- INTERFACE FUNCTIONS -------------------------------------------------- */ - -/* - * Renders a beautiful wired teapot... - */ -void FGAPIENTRY glutWireTeapot( GLdouble size ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutWireTeapot" ); - /* We will use the general teapot rendering code */ - fghTeapot( 10, size, GL_LINE ); -} - -/* - * Renders a beautiful filled teapot... - */ -void FGAPIENTRY glutSolidTeapot( GLdouble size ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutSolidTeapot" ); - /* We will use the general teapot rendering code */ - fghTeapot( 7, size, GL_FILL ); -} - -/*** END OF FILE ***/ - - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_teapot_data.h b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_teapot_data.h deleted file mode 100644 index 3bf83e1..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_teapot_data.h +++ /dev/null @@ -1,2429 +0,0 @@ -/* - * freeglut_teapot_data.h - * - * The freeglut library teapot data include file. - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included - * in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - * PAWEL W. OLSZTA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER - * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - */ - -#ifndef FREEGLUT_TEAPOT_DATA_H -#define FREEGLUT_TEAPOT_DATA_H - -#if defined(_WIN32_WCE) -/* - * Submitted through the kind offices of Daniel Wagner (daniel@ims.tuwien.ac.at) - */ - -/* 530 vertices */ - -const int numVertices = 530; -const float vertices[530][3] = { -2.1f, 3.6f, 0.0f, -2.071f, 3.711f, 0.0f, -2.105f, 3.748f, 0.0f, -2.174f, 3.711f, 0.0f, -2.25f, 3.6f, 0.0f, -1.937f, 3.6f, 0.8242f, -1.91f, 3.711f, 0.8128f, -1.942f, 3.748f, 0.8261f, -2.005f, 3.711f, 0.8532f, -2.076f, 3.6f, 0.8831f, -1.491f, 3.6f, 1.491f, -1.47f, 3.711f, 1.47f, -1.494f, 3.748f, 1.494f, -1.543f, 3.711f, 1.543f, -1.597f, 3.6f, 1.597f, -0.8242f, 3.6f, 1.937f, -0.8128f, 3.711f, 1.91f, -0.8261f, 3.748f, 1.942f, -0.8532f, 3.711f, 2.005f, -0.8831f, 3.6f, 2.076f, -0.0f, 3.6f, 2.1f, -0.0f, 3.711f, 2.071f, -0.0f, 3.748f, 2.105f, -0.0f, 3.711f, 2.174f, -0.0f, 3.6f, 2.25f, --0.8812f, 3.6f, 1.937f, --0.8368f, 3.711f, 1.91f, --0.8332f, 3.748f, 1.942f, --0.8541f, 3.711f, 2.005f, --0.8831f, 3.6f, 2.076f, --1.542f, 3.6f, 1.491f, --1.492f, 3.711f, 1.47f, --1.501f, 3.748f, 1.494f, --1.544f, 3.711f, 1.543f, --1.597f, 3.6f, 1.597f, --1.956f, 3.6f, 0.8242f, --1.918f, 3.711f, 0.8128f, --1.944f, 3.748f, 0.8261f, --2.006f, 3.711f, 0.8532f, --2.076f, 3.6f, 0.8831f, --2.1f, 3.6f, 0.0f, --2.071f, 3.711f, 0.0f, --2.105f, 3.748f, 0.0f, --2.174f, 3.711f, 0.0f, --2.25f, 3.6f, 0.0f, --1.937f, 3.6f, -0.8242f, --1.91f, 3.711f, -0.8128f, --1.942f, 3.748f, -0.8261f, --2.005f, 3.711f, -0.8532f, --2.076f, 3.6f, -0.8831f, --1.491f, 3.6f, -1.491f, --1.47f, 3.711f, -1.47f, --1.494f, 3.748f, -1.494f, --1.543f, 3.711f, -1.543f, --1.597f, 3.6f, -1.597f, --0.8242f, 3.6f, -1.937f, --0.8128f, 3.711f, -1.91f, --0.8261f, 3.748f, -1.942f, --0.8532f, 3.711f, -2.005f, --0.8831f, 3.6f, -2.076f, -0.0f, 3.6f, -2.1f, -0.0f, 3.711f, -2.071f, -0.0f, 3.748f, -2.105f, -0.0f, 3.711f, -2.174f, -0.0f, 3.6f, -2.25f, -0.8242f, 3.6f, -1.937f, -0.8128f, 3.711f, -1.91f, -0.8261f, 3.748f, -1.942f, -0.8532f, 3.711f, -2.005f, -0.8831f, 3.6f, -2.076f, -1.491f, 3.6f, -1.491f, -1.47f, 3.711f, -1.47f, -1.494f, 3.748f, -1.494f, -1.543f, 3.711f, -1.543f, -1.597f, 3.6f, -1.597f, -1.937f, 3.6f, -0.8242f, -1.91f, 3.711f, -0.8128f, -1.942f, 3.748f, -0.8261f, -2.005f, 3.711f, -0.8532f, -2.076f, 3.6f, -0.8831f, -2.525f, 3.011f, 0.0f, -2.766f, 2.433f, 0.0f, -2.936f, 1.876f, 0.0f, -3.0f, 1.35f, 0.0f, -2.33f, 3.011f, 0.9912f, -2.551f, 2.433f, 1.086f, -2.708f, 1.876f, 1.152f, -2.767f, 1.35f, 1.178f, -1.793f, 3.011f, 1.793f, -1.964f, 2.433f, 1.964f, -2.084f, 1.876f, 2.084f, -2.13f, 1.35f, 2.13f, -0.9912f, 3.011f, 2.33f, -1.086f, 2.433f, 2.551f, -1.152f, 1.876f, 2.708f, -1.178f, 1.35f, 2.767f, -0.0f, 3.011f, 2.525f, -0.0f, 2.433f, 2.766f, -0.0f, 1.876f, 2.936f, -0.0f, 1.35f, 3.0f, --0.9912f, 3.011f, 2.33f, --1.086f, 2.433f, 2.551f, --1.152f, 1.876f, 2.708f, --1.178f, 1.35f, 2.767f, --1.793f, 3.011f, 1.793f, --1.964f, 2.433f, 1.964f, --2.084f, 1.876f, 2.084f, --2.13f, 1.35f, 2.13f, --2.33f, 3.011f, 0.9912f, --2.551f, 2.433f, 1.086f, --2.708f, 1.876f, 1.152f, --2.767f, 1.35f, 1.178f, --2.525f, 3.011f, 0.0f, --2.766f, 2.433f, 0.0f, --2.936f, 1.876f, 0.0f, --3.0f, 1.35f, 0.0f, --2.33f, 3.011f, -0.9912f, --2.551f, 2.433f, -1.086f, --2.708f, 1.876f, -1.152f, --2.767f, 1.35f, -1.178f, --1.793f, 3.011f, -1.793f, --1.964f, 2.433f, -1.964f, --2.084f, 1.876f, -2.084f, --2.13f, 1.35f, -2.13f, --0.9912f, 3.011f, -2.33f, --1.086f, 2.433f, -2.551f, --1.152f, 1.876f, -2.708f, --1.178f, 1.35f, -2.767f, -0.0f, 3.011f, -2.525f, -0.0f, 2.433f, -2.766f, -0.0f, 1.876f, -2.936f, -0.0f, 1.35f, -3.0f, -0.9912f, 3.011f, -2.33f, -1.086f, 2.433f, -2.551f, -1.152f, 1.876f, -2.708f, -1.178f, 1.35f, -2.767f, -1.793f, 3.011f, -1.793f, -1.964f, 2.433f, -1.964f, -2.084f, 1.876f, -2.084f, -2.13f, 1.35f, -2.13f, -2.33f, 3.011f, -0.9912f, -2.551f, 2.433f, -1.086f, -2.708f, 1.876f, -1.152f, -2.767f, 1.35f, -1.178f, -2.883f, 0.9053f, 0.0f, -2.625f, 0.5766f, 0.0f, -2.367f, 0.3533f, 0.0f, -2.25f, 0.225f, 0.0f, -2.659f, 0.9053f, 1.132f, -2.422f, 0.5766f, 1.03f, -2.184f, 0.3533f, 0.9291f, -2.076f, 0.225f, 0.8831f, -2.047f, 0.9053f, 2.047f, -1.864f, 0.5766f, 1.864f, -1.681f, 0.3533f, 1.681f, -1.597f, 0.225f, 1.597f, -1.132f, 0.9053f, 2.659f, -1.03f, 0.5766f, 2.422f, -0.9291f, 0.3533f, 2.184f, -0.8831f, 0.225f, 2.076f, -0.0f, 0.9053f, 2.883f, -0.0f, 0.5766f, 2.625f, -0.0f, 0.3533f, 2.367f, -0.0f, 0.225f, 2.25f, --1.132f, 0.9053f, 2.659f, --1.03f, 0.5766f, 2.422f, --0.9291f, 0.3533f, 2.184f, --0.8831f, 0.225f, 2.076f, --2.047f, 0.9053f, 2.047f, --1.864f, 0.5766f, 1.864f, --1.681f, 0.3533f, 1.681f, --1.597f, 0.225f, 1.597f, --2.659f, 0.9053f, 1.132f, --2.422f, 0.5766f, 1.03f, --2.184f, 0.3533f, 0.9291f, --2.076f, 0.225f, 0.8831f, --2.883f, 0.9053f, 0.0f, --2.625f, 0.5766f, 0.0f, --2.367f, 0.3533f, 0.0f, --2.25f, 0.225f, 0.0f, --2.659f, 0.9053f, -1.132f, --2.422f, 0.5766f, -1.03f, --2.184f, 0.3533f, -0.9291f, --2.076f, 0.225f, -0.8831f, --2.047f, 0.9053f, -2.047f, --1.864f, 0.5766f, -1.864f, --1.681f, 0.3533f, -1.681f, --1.597f, 0.225f, -1.597f, --1.132f, 0.9053f, -2.659f, --1.03f, 0.5766f, -2.422f, --0.9291f, 0.3533f, -2.184f, --0.8831f, 0.225f, -2.076f, -0.0f, 0.9053f, -2.883f, -0.0f, 0.5766f, -2.625f, -0.0f, 0.3533f, -2.367f, -0.0f, 0.225f, -2.25f, -1.132f, 0.9053f, -2.659f, -1.03f, 0.5766f, -2.422f, -0.9291f, 0.3533f, -2.184f, -0.8831f, 0.225f, -2.076f, -2.047f, 0.9053f, -2.047f, -1.864f, 0.5766f, -1.864f, -1.681f, 0.3533f, -1.681f, -1.597f, 0.225f, -1.597f, -2.659f, 0.9053f, -1.132f, -2.422f, 0.5766f, -1.03f, -2.184f, 0.3533f, -0.9291f, -2.076f, 0.225f, -0.8831f, -2.199f, 0.1424f, 0.0f, -1.927f, 0.07031f, 0.0f, -1.253f, 0.01934f, 0.0f, -0.0f, 0.0f, 0.0f, -2.029f, 0.1424f, 0.8631f, -1.777f, 0.07031f, 0.7562f, -1.156f, 0.01934f, 0.4919f, -1.561f, 0.1424f, 1.561f, -1.368f, 0.07031f, 1.368f, -0.8899f, 0.01934f, 0.8899f, -0.8631f, 0.1424f, 2.029f, -0.7562f, 0.07031f, 1.777f, -0.4919f, 0.01934f, 1.156f, -0.0f, 0.1424f, 2.199f, -0.0f, 0.07031f, 1.927f, -0.0f, 0.01934f, 1.253f, --0.8631f, 0.1424f, 2.029f, --0.7562f, 0.07031f, 1.777f, --0.4919f, 0.01934f, 1.156f, --1.561f, 0.1424f, 1.561f, --1.368f, 0.07031f, 1.368f, --0.8899f, 0.01934f, 0.8899f, --2.029f, 0.1424f, 0.8631f, --1.777f, 0.07031f, 0.7562f, --1.156f, 0.01934f, 0.4919f, --2.199f, 0.1424f, 0.0f, --1.927f, 0.07031f, 0.0f, --1.253f, 0.01934f, 0.0f, --2.029f, 0.1424f, -0.8631f, --1.777f, 0.07031f, -0.7562f, --1.156f, 0.01934f, -0.4919f, --1.561f, 0.1424f, -1.561f, --1.368f, 0.07031f, -1.368f, --0.8899f, 0.01934f, -0.8899f, --0.8631f, 0.1424f, -2.029f, --0.7562f, 0.07031f, -1.777f, --0.4919f, 0.01934f, -1.156f, -0.0f, 0.1424f, -2.199f, -0.0f, 0.07031f, -1.927f, -0.0f, 0.01934f, -1.253f, -0.8631f, 0.1424f, -2.029f, -0.7562f, 0.07031f, -1.777f, -0.4919f, 0.01934f, -1.156f, -1.561f, 0.1424f, -1.561f, -1.368f, 0.07031f, -1.368f, -0.8899f, 0.01934f, -0.8899f, -2.029f, 0.1424f, -0.8631f, -1.777f, 0.07031f, -0.7562f, -1.156f, 0.01934f, -0.4919f, --2.4f, 3.038f, 0.0f, --3.101f, 3.032f, 0.0f, --3.619f, 2.995f, 0.0f, --3.94f, 2.895f, 0.0f, --4.05f, 2.7f, 0.0f, --2.377f, 3.09f, 0.2531f, --3.122f, 3.084f, 0.2531f, --3.669f, 3.041f, 0.2531f, --4.005f, 2.926f, 0.2531f, --4.12f, 2.7f, 0.2531f, --2.325f, 3.206f, 0.3375f, --3.168f, 3.198f, 0.3375f, --3.778f, 3.143f, 0.3375f, --4.15f, 2.993f, 0.3375f, --4.275f, 2.7f, 0.3375f, --2.273f, 3.322f, 0.2531f, --3.214f, 3.313f, 0.2531f, --3.888f, 3.244f, 0.2531f, --4.294f, 3.06f, 0.2531f, --4.43f, 2.7f, 0.2531f, --2.25f, 3.375f, 0.0f, --3.234f, 3.364f, 0.0f, --3.938f, 3.291f, 0.0f, --4.359f, 3.09f, 0.0f, --4.5f, 2.7f, 0.0f, --2.273f, 3.322f, -0.2531f, --3.214f, 3.313f, -0.2531f, --3.888f, 3.244f, -0.2531f, --4.294f, 3.06f, -0.2531f, --4.43f, 2.7f, -0.2531f, --2.325f, 3.206f, -0.3375f, --3.168f, 3.198f, -0.3375f, --3.778f, 3.143f, -0.3375f, --4.15f, 2.993f, -0.3375f, --4.275f, 2.7f, -0.3375f, --2.377f, 3.09f, -0.2531f, --3.122f, 3.084f, -0.2531f, --3.669f, 3.041f, -0.2531f, --4.005f, 2.926f, -0.2531f, --4.12f, 2.7f, -0.2531f, --3.991f, 2.394f, 0.0f, --3.806f, 2.025f, 0.0f, --3.48f, 1.656f, 0.0f, --3.0f, 1.35f, 0.0f, --4.055f, 2.365f, 0.2531f, --3.852f, 1.98f, 0.2531f, --3.496f, 1.6f, 0.2531f, --2.977f, 1.28f, 0.2531f, --4.196f, 2.3f, 0.3375f, --3.952f, 1.881f, 0.3375f, --3.531f, 1.478f, 0.3375f, --2.925f, 1.125f, 0.3375f, --4.336f, 2.235f, 0.2531f, --4.051f, 1.782f, 0.2531f, --3.566f, 1.356f, 0.2531f, --2.873f, 0.9703f, 0.2531f, --4.4f, 2.205f, 0.0f, --4.097f, 1.737f, 0.0f, --3.582f, 1.3f, 0.0f, --2.85f, 0.9f, 0.0f, --4.336f, 2.235f, -0.2531f, --4.051f, 1.782f, -0.2531f, --3.566f, 1.356f, -0.2531f, --2.873f, 0.9703f, -0.2531f, --4.196f, 2.3f, -0.3375f, --3.952f, 1.881f, -0.3375f, --3.531f, 1.478f, -0.3375f, --2.925f, 1.125f, -0.3375f, --4.055f, 2.365f, -0.2531f, --3.852f, 1.98f, -0.2531f, --3.496f, 1.6f, -0.2531f, --2.977f, 1.28f, -0.2531f, -2.55f, 2.137f, 0.0f, -3.27f, 2.303f, 0.0f, -3.581f, 2.7f, 0.0f, -3.752f, 3.182f, 0.0f, -4.05f, 3.6f, 0.0f, -2.55f, 1.944f, 0.5569f, -3.324f, 2.159f, 0.5028f, -3.652f, 2.617f, 0.3839f, -3.838f, 3.151f, 0.265f, -4.191f, 3.6f, 0.2109f, -2.55f, 1.519f, 0.7425f, -3.445f, 1.844f, 0.6704f, -3.806f, 2.433f, 0.5119f, -4.027f, 3.085f, 0.3533f, -4.5f, 3.6f, 0.2813f, -2.55f, 1.093f, 0.5569f, -3.566f, 1.529f, 0.5028f, -3.961f, 2.249f, 0.3839f, -4.215f, 3.018f, 0.265f, -4.809f, 3.6f, 0.2109f, -2.55f, 0.9f, 0.0f, -3.621f, 1.385f, 0.0f, -4.031f, 2.166f, 0.0f, -4.301f, 2.988f, 0.0f, -4.95f, 3.6f, 0.0f, -2.55f, 1.093f, -0.5569f, -3.566f, 1.529f, -0.5028f, -3.961f, 2.249f, -0.3839f, -4.215f, 3.018f, -0.265f, -4.809f, 3.6f, -0.2109f, -2.55f, 1.519f, -0.7425f, -3.445f, 1.844f, -0.6704f, -3.806f, 2.433f, -0.5119f, -4.027f, 3.085f, -0.3533f, -4.5f, 3.6f, -0.2813f, -2.55f, 1.944f, -0.5569f, -3.324f, 2.159f, -0.5028f, -3.652f, 2.617f, -0.3839f, -3.838f, 3.151f, -0.265f, -4.191f, 3.6f, -0.2109f, -4.158f, 3.663f, 0.0f, -4.238f, 3.684f, 0.0f, -4.261f, 3.663f, 0.0f, -4.2f, 3.6f, 0.0f, -4.308f, 3.666f, 0.1978f, -4.379f, 3.689f, 0.1687f, -4.381f, 3.668f, 0.1397f, -4.294f, 3.6f, 0.1266f, -4.64f, 3.673f, 0.2637f, -4.69f, 3.7f, 0.225f, -4.645f, 3.677f, 0.1863f, -4.5f, 3.6f, 0.1688f, -4.971f, 3.68f, 0.1978f, -5.001f, 3.711f, 0.1687f, -4.909f, 3.687f, 0.1397f, -4.706f, 3.6f, 0.1266f, -5.122f, 3.683f, 0.0f, -5.142f, 3.716f, 0.0f, -5.029f, 3.691f, 0.0f, -4.8f, 3.6f, 0.0f, -4.971f, 3.68f, -0.1978f, -5.001f, 3.711f, -0.1687f, -4.909f, 3.687f, -0.1397f, -4.706f, 3.6f, -0.1266f, -4.64f, 3.673f, -0.2637f, -4.69f, 3.7f, -0.225f, -4.645f, 3.677f, -0.1863f, -4.5f, 3.6f, -0.1688f, -4.308f, 3.666f, -0.1978f, -4.379f, 3.689f, -0.1687f, -4.381f, 3.668f, -0.1397f, -4.294f, 3.6f, -0.1266f, -0.0f, 4.725f, 0.0f, -0.5109f, 4.651f, 0.0f, -0.4875f, 4.472f, 0.0f, -0.2953f, 4.25f, 0.0f, -0.3f, 4.05f, 0.0f, -0.4715f, 4.651f, 0.2011f, -0.4499f, 4.472f, 0.1918f, -0.2725f, 4.25f, 0.1161f, -0.2768f, 4.05f, 0.1178f, -0.3632f, 4.651f, 0.3632f, -0.3465f, 4.472f, 0.3465f, -0.2098f, 4.25f, 0.2098f, -0.213f, 4.05f, 0.213f, -0.2011f, 4.651f, 0.4715f, -0.1918f, 4.472f, 0.4499f, -0.1161f, 4.25f, 0.2725f, -0.1178f, 4.05f, 0.2768f, -0.0f, 4.651f, 0.5109f, -0.0f, 4.472f, 0.4875f, -0.0f, 4.25f, 0.2953f, -0.0f, 4.05f, 0.3f, --0.2011f, 4.651f, 0.4715f, --0.1918f, 4.472f, 0.4499f, --0.1161f, 4.25f, 0.2725f, --0.1178f, 4.05f, 0.2768f, --0.3632f, 4.651f, 0.3632f, --0.3465f, 4.472f, 0.3465f, --0.2098f, 4.25f, 0.2098f, --0.213f, 4.05f, 0.213f, --0.4715f, 4.651f, 0.2011f, --0.4499f, 4.472f, 0.1918f, --0.2725f, 4.25f, 0.1161f, --0.2768f, 4.05f, 0.1178f, --0.5109f, 4.651f, 0.0f, --0.4875f, 4.472f, 0.0f, --0.2953f, 4.25f, 0.0f, --0.3f, 4.05f, 0.0f, --0.4715f, 4.651f, -0.2011f, --0.4499f, 4.472f, -0.1918f, --0.2725f, 4.25f, -0.1161f, --0.2768f, 4.05f, -0.1178f, --0.3632f, 4.651f, -0.3632f, --0.3465f, 4.472f, -0.3465f, --0.2098f, 4.25f, -0.2098f, --0.213f, 4.05f, -0.213f, --0.2011f, 4.651f, -0.4715f, --0.1918f, 4.472f, -0.4499f, --0.1161f, 4.25f, -0.2725f, --0.1178f, 4.05f, -0.2768f, -0.0f, 4.651f, -0.5109f, -0.0f, 4.472f, -0.4875f, -0.0f, 4.25f, -0.2953f, -0.0f, 4.05f, -0.3f, -0.2011f, 4.651f, -0.4715f, -0.1918f, 4.472f, -0.4499f, -0.1161f, 4.25f, -0.2725f, -0.1178f, 4.05f, -0.2768f, -0.3632f, 4.651f, -0.3632f, -0.3465f, 4.472f, -0.3465f, -0.2098f, 4.25f, -0.2098f, -0.213f, 4.05f, -0.213f, -0.4715f, 4.651f, -0.2011f, -0.4499f, 4.472f, -0.1918f, -0.2725f, 4.25f, -0.1161f, -0.2768f, 4.05f, -0.1178f, -0.6844f, 3.916f, 0.0f, -1.237f, 3.825f, 0.0f, -1.734f, 3.734f, 0.0f, -1.95f, 3.6f, 0.0f, -0.6313f, 3.916f, 0.2686f, -1.142f, 3.825f, 0.4857f, -1.6f, 3.734f, 0.6807f, -1.799f, 3.6f, 0.7654f, -0.4859f, 3.916f, 0.4859f, -0.8786f, 3.825f, 0.8786f, -1.231f, 3.734f, 1.231f, -1.385f, 3.6f, 1.385f, -0.2686f, 3.916f, 0.6313f, -0.4857f, 3.825f, 1.142f, -0.6807f, 3.734f, 1.6f, -0.7654f, 3.6f, 1.799f, -0.0f, 3.916f, 0.6844f, -0.0f, 3.825f, 1.237f, -0.0f, 3.734f, 1.734f, -0.0f, 3.6f, 1.95f, --0.2686f, 3.916f, 0.6313f, --0.4857f, 3.825f, 1.142f, --0.6807f, 3.734f, 1.6f, --0.7654f, 3.6f, 1.799f, --0.4859f, 3.916f, 0.4859f, --0.8786f, 3.825f, 0.8786f, --1.231f, 3.734f, 1.231f, --1.385f, 3.6f, 1.385f, --0.6313f, 3.916f, 0.2686f, --1.142f, 3.825f, 0.4857f, --1.6f, 3.734f, 0.6807f, --1.799f, 3.6f, 0.7654f, --0.6844f, 3.916f, 0.0f, --1.237f, 3.825f, 0.0f, --1.734f, 3.734f, 0.0f, --1.95f, 3.6f, 0.0f, --0.6313f, 3.916f, -0.2686f, --1.142f, 3.825f, -0.4857f, --1.6f, 3.734f, -0.6807f, --1.799f, 3.6f, -0.7654f, --0.4859f, 3.916f, -0.4859f, --0.8786f, 3.825f, -0.8786f, --1.231f, 3.734f, -1.231f, --1.385f, 3.6f, -1.385f, --0.2686f, 3.916f, -0.6313f, --0.4857f, 3.825f, -1.142f, --0.6807f, 3.734f, -1.6f, --0.7654f, 3.6f, -1.799f, -0.0f, 3.916f, -0.6844f, -0.0f, 3.825f, -1.237f, -0.0f, 3.734f, -1.734f, -0.0f, 3.6f, -1.95f, -0.2686f, 3.916f, -0.6313f, -0.4857f, 3.825f, -1.142f, -0.6807f, 3.734f, -1.6f, -0.7654f, 3.6f, -1.799f, -0.4859f, 3.916f, -0.4859f, -0.8786f, 3.825f, -0.8786f, -1.231f, 3.734f, -1.231f, -1.385f, 3.6f, -1.385f, -0.6313f, 3.916f, -0.2686f, -1.142f, 3.825f, -0.4857f, -1.6f, 3.734f, -0.6807f, -1.799f, 3.6f, -0.7654f -}; - - -/* 530 normals */ -const int numNormals = 530; -const float normals[530][3] = { -0.0486f, -0.9986f, 0.0168f, -0.9976f, -0.0678f, -0.0008f, --0.233f, 0.8502f, -0.4719f, --0.2299f, 0.9679f, 0.1004f, --0.1648f, 0.985f, 0.0501f, --0.0117f, 0.7461f, 0.6656f, --0.0888f, 0.9692f, 0.2294f, -0.6449f, -0.7172f, -0.2637f, --0.066f, 0.9851f, 0.1583f, --0.6585f, -0.342f, -0.6703f, --0.293f, 0.9558f, 0.0209f, -0.179f, 0.9825f, -0.0513f, --0.0094f, 0.903f, 0.4295f, --0.0059f, -0.986f, -0.1662f, --0.7355f, 0.6774f, -0.0026f, --0.997f, 0.0763f, 0.0019f, --0.1478f, 0.9333f, 0.3271f, --0.3014f, -0.6034f, -0.7382f, --0.7048f, -0.0681f, 0.706f, --0.3361f, 0.9332f, 0.1263f, -0.3709f, 0.1524f, -0.916f, --0.3399f, -0.4121f, 0.8453f, -0.1921f, 0.9724f, -0.1316f, --0.2671f, 0.7429f, 0.6137f, -0.0888f, 0.9692f, -0.2294f, -0.066f, 0.9851f, -0.1583f, -0.9411f, 0.338f, 0.001f, -0.8666f, -0.2559f, 0.4282f, --0.8029f, 0.4968f, 0.3293f, --0.0008f, -0.0678f, -0.9976f, --0.8453f, -0.4121f, -0.3399f, --0.4801f, -0.8741f, 0.0733f, -0.6355f, -0.772f, 0.0006f, --0.9215f, -0.0678f, 0.3822f, --0.6698f, -0.6907f, -0.2723f, -0.3734f, 0.876f, -0.3051f, -0.3548f, -0.4118f, 0.8393f, --0.3629f, 0.2429f, 0.8995f, -0.9033f, 0.2079f, 0.375f, --0.2824f, 0.5939f, 0.7532f, -0.8938f, 0.4452f, 0.0532f, -0.1478f, 0.9333f, -0.3271f, -0.0085f, -0.0031f, -0.9999f, -0.3595f, 0.933f, 0.0115f, -0.8995f, 0.2429f, 0.3629f, -0.7048f, -0.0681f, -0.706f, --0.6428f, -0.7172f, -0.2688f, -0.6366f, -0.447f, 0.6283f, --0.1213f, -0.9861f, -0.1128f, -0.8003f, 0.4978f, 0.334f, -0.3361f, 0.9332f, -0.1263f, -0.3399f, -0.4121f, -0.8453f, --0.3909f, 0.4452f, 0.8055f, -0.0117f, 0.7462f, -0.6655f, -0.9215f, -0.0678f, -0.3822f, -0.3582f, -0.7656f, 0.5343f, --0.9782f, 0.2075f, -0.0011f, -0.2824f, 0.5939f, -0.7532f, -0.035f, -0.8413f, 0.5393f, --0.8044f, 0.5934f, 0.0262f, --0.1128f, -0.9861f, 0.1213f, -0.13f, -0.1396f, 0.9816f, -0.6644f, 0.3392f, 0.6659f, --0.0042f, -0.6898f, -0.7239f, --0.1587f, 0.9851f, 0.065f, --0.8719f, -0.3415f, 0.3508f, -0.6486f, 0.4756f, -0.5941f, --0.4991f, 0.8499f, -0.1684f, --0.3969f, 0.6342f, -0.6634f, -0.7041f, -0.3863f, -0.5956f, -0.3909f, 0.4452f, -0.8055f, --0.0391f, -0.0113f, 0.9991f, --0.3321f, 0.5936f, -0.733f, -0.8523f, -0.5219f, -0.0338f, -0.329f, 0.4978f, 0.8023f, -0.8044f, 0.5934f, -0.0262f, -0.1128f, -0.9861f, -0.1213f, -0.0178f, 0.9861f, -0.1651f, -0.3491f, 0.4045f, 0.8452f, --0.2727f, 0.8505f, 0.4496f, -0.065f, 0.9851f, 0.1587f, --0.0005f, 0.4037f, 0.9148f, --0.0077f, -0.4109f, -0.9116f, -0.5609f, -0.604f, 0.5661f, -0.8236f, 0.5668f, -0.0138f, -0.1587f, 0.9851f, -0.065f, -0.8719f, -0.3415f, -0.3508f, --0.7382f, -0.6034f, 0.3014f, -0.0346f, 0.8495f, 0.5263f, --0.4373f, -0.7921f, -0.4257f, --0.0532f, 0.4452f, 0.8938f, -0.0689f, -0.9861f, 0.1509f, --0.1509f, -0.9861f, 0.0689f, -0.7706f, -0.2424f, -0.5893f, --0.7543f, -0.6564f, 0.0105f, -0.0005f, 0.4037f, -0.9148f, --0.9116f, -0.4109f, 0.0077f, -0.0058f, -0.0438f, 0.999f, -0.1719f, 0.985f, 0.0005f, --0.1697f, 0.9693f, 0.1774f, -0.5874f, -0.5124f, 0.6263f, -0.7382f, -0.6034f, -0.3014f, --0.1518f, 0.985f, -0.081f, -0.646f, 0.4051f, 0.6468f, -0.334f, 0.4978f, -0.8003f, --0.7354f, -0.6034f, -0.3082f, --0.6919f, 0.2428f, -0.6798f, -0.0532f, 0.4452f, -0.8938f, -0.3547f, -0.3173f, 0.8794f, -0.9879f, -0.1547f, -0.0033f, --0.0462f, -0.9986f, 0.0223f, --0.6088f, 0.4806f, 0.6311f, --0.109f, -0.1969f, -0.9743f, -0.1509f, -0.9861f, -0.0689f, --0.0568f, 0.9983f, 0.0009f, -0.9074f, -0.3096f, -0.2839f, -0.8677f, 0.4969f, 0.0026f, --0.2723f, -0.6907f, 0.6698f, --0.4734f, -0.6798f, 0.5599f, -0.9116f, -0.4109f, -0.0077f, -0.1697f, 0.9693f, -0.1774f, -0.5875f, 0.5937f, 0.5497f, --0.3232f, 0.6846f, 0.6533f, --0.5078f, -0.6913f, 0.5139f, --0.4612f, 0.7474f, -0.478f, --0.2071f, -0.8049f, 0.556f, --0.6976f, -0.7164f, -0.0027f, --0.8697f, 0.3388f, 0.3587f, -0.0462f, -0.9986f, -0.0223f, -0.2723f, -0.6907f, -0.6698f, --0.829f, -0.4466f, -0.3365f, -0.9148f, 0.4037f, 0.0005f, --0.1583f, 0.9851f, -0.066f, -0.148f, 0.9838f, 0.1002f, --0.1717f, 0.985f, -0.0162f, --0.4282f, -0.2559f, 0.8666f, -0.3094f, -0.2556f, 0.9159f, -0.2803f, -0.6907f, 0.6665f, --0.6154f, 0.497f, 0.6117f, --0.0262f, 0.5934f, -0.8044f, -0.0286f, 0.1639f, -0.986f, --0.6924f, 0.2083f, 0.6907f, --0.0105f, 0.9975f, -0.0685f, -0.5078f, -0.6913f, -0.5139f, -0.2071f, -0.8049f, -0.556f, --0.4903f, -0.7178f, -0.4942f, --0.2637f, -0.7172f, -0.6449f, --0.3822f, -0.0678f, -0.9215f, -0.8697f, 0.3388f, -0.3587f, -0.2461f, -0.805f, 0.5397f, --0.2615f, 0.9334f, 0.2452f, -0.6187f, 0.747f, -0.243f, -0.0375f, -0.8401f, -0.5411f, -0.0054f, 0.9691f, 0.2464f, -0.3587f, 0.3388f, 0.8697f, -0.3993f, 0.6582f, -0.6381f, --0.3476f, -0.4464f, -0.8245f, -0.099f, 0.9692f, 0.2251f, --0.3666f, -0.3412f, 0.8655f, -0.0396f, 0.153f, -0.9874f, -0.0349f, 0.9969f, -0.0698f, -0.1096f, 0.985f, 0.1324f, --0.0578f, -0.9861f, 0.1556f, -0.4479f, -0.5145f, -0.7311f, -0.6924f, 0.2083f, -0.6907f, -0.6096f, 0.747f, 0.265f, --0.3508f, -0.3415f, -0.8719f, --0.6215f, 0.4454f, -0.6443f, --0.4942f, -0.7178f, 0.4903f, --0.9402f, -0.3403f, -0.0085f, -0.0056f, -0.0358f, 0.9993f, -0.2615f, 0.9334f, -0.2452f, --0.0024f, 0.0291f, -0.9995f, --0.2667f, 0.9637f, -0.001f, -0.0569f, -0.2712f, -0.9608f, -0.7463f, 0.254f, 0.615f, -0.5153f, 0.6516f, -0.5564f, -0.0223f, -0.9986f, 0.0462f, -0.3666f, -0.3412f, -0.8655f, -0.0578f, -0.9861f, -0.1556f, -0.6111f, 0.4984f, 0.6148f, --0.243f, 0.747f, -0.6187f, --0.0092f, 0.2338f, -0.9722f, -0.478f, 0.7474f, -0.4612f, --0.0058f, -0.4457f, -0.8951f, --0.4856f, -0.6774f, -0.5524f, -0.54f, 0.6414f, 0.5448f, --0.3365f, -0.4466f, 0.829f, --0.2257f, 0.795f, 0.5629f, -0.8055f, 0.4452f, 0.3909f, -0.3729f, 0.208f, 0.9042f, --0.727f, -0.2562f, 0.6369f, --0.0514f, -0.9986f, 0.0029f, -0.9159f, 0.1555f, -0.3699f, -0.0019f, -0.2377f, -0.9713f, -0.4942f, -0.7178f, -0.4903f, -0.6497f, -0.4127f, 0.6383f, -0.0089f, 0.0486f, -0.9987f, --0.0213f, 0.6301f, -0.7761f, --0.9269f, -0.3751f, 0.0038f, --0.1215f, 0.9852f, 0.1207f, --0.5856f, 0.5198f, 0.6218f, -0.8655f, -0.3412f, 0.3666f, --0.2464f, 0.9691f, 0.0054f, -0.0123f, 0.1386f, 0.9902f, -0.0179f, -0.0369f, 0.9991f, --0.1207f, 0.9852f, -0.1215f, --0.0081f, 0.5671f, 0.8235f, --0.8689f, 0.3387f, -0.3607f, -0.0062f, 0.0309f, -0.9995f, -0.3365f, -0.4466f, -0.829f, --0.3787f, 0.2424f, -0.8931f, --0.2904f, 0.4454f, -0.8468f, --0.8707f, 0.4915f, 0.0133f, -0.163f, -0.8182f, 0.5512f, -0.4337f, -0.8052f, 0.4041f, -0.0514f, -0.9986f, -0.0029f, --0.0084f, 0.1303f, 0.9914f, --0.706f, -0.0681f, -0.7048f, --0.556f, -0.8049f, -0.2071f, -0.8448f, 0.4045f, 0.3501f, -0.4259f, -0.5474f, 0.7203f, --0.6907f, 0.2083f, -0.6924f, -0.1215f, 0.9852f, -0.1207f, --0.1263f, 0.9332f, -0.3361f, -0.7711f, -0.0741f, -0.6323f, -0.2464f, 0.9691f, -0.0054f, -0.1774f, 0.9693f, 0.1697f, --0.9042f, 0.208f, 0.3729f, --0.8393f, -0.4118f, 0.3548f, -0.6888f, -0.7219f, -0.0648f, -0.1556f, -0.9861f, 0.0578f, -0.3271f, 0.9333f, 0.1478f, --0.0024f, 0.2379f, 0.9712f, --0.0026f, 0.4969f, 0.8677f, -0.0f, 1.0f, 0.0f, -0.1912f, -0.9815f, -0.0025f, --0.3762f, -0.6681f, 0.6418f, --0.7759f, 0.0432f, 0.6292f, --0.0208f, -0.8044f, -0.5936f, --0.2274f, 0.8822f, -0.4122f, -0.7532f, 0.5939f, 0.2824f, --0.9221f, -0.0681f, -0.3807f, --0.2198f, 0.8494f, 0.4796f, -0.0065f, -0.7656f, 0.6431f, --0.5876f, 0.4472f, -0.6742f, -0.7981f, -0.6024f, 0.0036f, --0.0383f, -0.9986f, -0.0341f, --0.6369f, -0.2562f, -0.727f, --0.5497f, 0.5937f, 0.5875f, -0.1084f, 0.9431f, 0.314f, -0.9042f, 0.208f, -0.3729f, --0.6659f, 0.3392f, 0.6644f, -0.8393f, -0.4118f, -0.3548f, -0.0029f, -0.9986f, 0.0514f, --0.9647f, -0.2552f, -0.0635f, --0.2294f, 0.9692f, -0.0888f, -0.0026f, 0.4969f, -0.8677f, -0.2452f, 0.9334f, 0.2615f, -0.5171f, -0.4876f, -0.7033f, --0.8951f, -0.4457f, 0.0058f, --0.5936f, -0.8044f, 0.0208f, -0.5642f, -0.5426f, -0.6222f, -0.5938f, 0.4451f, 0.6702f, -0.5497f, 0.5937f, -0.5875f, -0.6657f, 0.4653f, 0.5832f, -0.4857f, -0.6243f, 0.6117f, --0.0486f, -0.9986f, -0.0168f, --0.6468f, 0.4051f, 0.646f, -0.6659f, 0.3392f, -0.6644f, -0.1833f, 0.9735f, -0.1365f, -0.3955f, 0.8505f, 0.3465f, -0.5139f, -0.6913f, 0.5078f, -0.8023f, 0.4978f, -0.329f, --0.001f, 0.338f, 0.9411f, --0.2496f, 0.8321f, -0.4951f, -0.8951f, -0.4457f, -0.0058f, -0.233f, 0.8502f, 0.4719f, --0.0168f, -0.9986f, 0.0486f, -0.5936f, -0.8044f, -0.0208f, --0.05f, 0.3155f, 0.9475f, -0.6585f, -0.342f, 0.6703f, -0.4909f, -0.1864f, -0.8509f, --0.37f, 0.9238f, -0.0973f, -0.6468f, 0.4051f, -0.646f, -0.0059f, -0.986f, 0.1662f, --0.3724f, 0.9278f, -0.0202f, --0.3501f, 0.4045f, 0.8448f, --0.0425f, 0.8398f, -0.5411f, --0.1684f, 0.8499f, 0.4991f, --0.6665f, -0.6907f, 0.2803f, --0.2251f, 0.9692f, 0.099f, -0.9241f, -0.3816f, -0.0169f, -0.001f, 0.338f, -0.9411f, --0.9411f, 0.338f, -0.001f, --0.8666f, -0.2559f, -0.4282f, -0.0262f, 0.5183f, -0.8547f, -0.3014f, -0.6034f, 0.7382f, -0.0168f, -0.9986f, -0.0486f, --0.3548f, -0.4118f, -0.8393f, --0.6023f, -0.5297f, 0.5971f, --0.9033f, 0.2079f, -0.375f, --0.8938f, 0.4452f, -0.0532f, -0.6044f, 0.7397f, 0.2957f, -0.0008f, -0.0678f, 0.9976f, -0.7058f, 0.0906f, -0.7025f, -0.8453f, -0.4121f, 0.3399f, --0.3595f, 0.933f, -0.0115f, -0.6698f, -0.6907f, 0.2723f, --0.8995f, 0.2429f, -0.3629f, --0.6366f, -0.447f, -0.6283f, -0.3501f, 0.4045f, -0.8448f, --0.01f, -0.0605f, 0.9981f, --0.8003f, 0.4978f, -0.334f, -0.1684f, 0.8499f, -0.4991f, -0.6665f, -0.6907f, -0.2803f, -0.2251f, 0.9692f, -0.099f, --0.0036f, -0.6024f, 0.7981f, -0.6637f, -0.2967f, -0.6865f, --0.081f, 0.985f, 0.1518f, -0.0084f, 0.2423f, 0.9701f, -0.0071f, -0.9029f, -0.4296f, --0.8679f, 0.4966f, -0.0026f, -0.0123f, 0.5735f, 0.819f, --0.0005f, 0.985f, 0.1719f, -0.6428f, -0.7172f, 0.2688f, -0.6588f, -0.3366f, 0.6727f, -0.1213f, -0.9861f, 0.1128f, --0.8931f, 0.2424f, 0.3787f, --0.1662f, -0.986f, 0.0059f, -0.9994f, 0.0313f, 0.0095f, -0.762f, -0.146f, 0.6308f, --0.7731f, 0.0861f, -0.6283f, --0.6644f, 0.3392f, -0.6659f, --0.0027f, -0.7164f, 0.6976f, -0.0036f, -0.6024f, -0.7981f, -0.9782f, 0.2075f, 0.0011f, -0.0405f, -0.9991f, -0.0018f, -0.6882f, -0.703f, 0.179f, --0.0115f, 0.933f, 0.3595f, -0.0911f, 0.0518f, -0.9944f, -0.0005f, 0.985f, -0.1719f, -0.5337f, -0.5852f, -0.6104f, -0.0042f, -0.6898f, 0.7239f, -0.4863f, 0.2366f, 0.8411f, -0.4991f, 0.8499f, 0.1684f, --0.6543f, 0.7561f, 0.0071f, -0.265f, 0.747f, -0.6096f, --0.329f, 0.4978f, -0.8023f, -0.1662f, -0.986f, -0.0059f, --0.3491f, 0.4045f, -0.8452f, -0.3321f, 0.5936f, 0.733f, --0.065f, 0.9851f, -0.1587f, --0.6283f, -0.447f, 0.6366f, -0.0027f, -0.7164f, -0.6976f, --0.1316f, 0.6339f, 0.762f, --0.5609f, -0.604f, -0.5661f, --0.8452f, 0.4045f, 0.3491f, --0.5263f, 0.8495f, 0.0346f, -0.0115f, 0.933f, -0.3595f, --0.0346f, 0.8495f, -0.5263f, -0.0077f, -0.4109f, 0.9116f, -0.5758f, -0.8175f, -0.0017f, --0.0011f, 0.2075f, 0.9782f, --0.0689f, -0.9861f, -0.1509f, -0.2934f, -0.5928f, -0.7499f, -0.0724f, 0.1198f, -0.9901f, --0.7367f, -0.275f, -0.6176f, --0.3131f, 0.8154f, 0.4868f, --0.0114f, 0.0022f, 0.9999f, -0.6283f, -0.447f, -0.6366f, -0.8452f, 0.4045f, -0.3491f, -0.5263f, 0.8495f, -0.0346f, --0.6383f, -0.4127f, 0.6497f, --0.1719f, 0.985f, -0.0005f, --0.6703f, -0.342f, 0.6585f, --0.0085f, -0.3403f, 0.9402f, --0.646f, 0.4051f, -0.6468f, -0.0011f, 0.2075f, -0.9782f, --0.7216f, -0.3071f, 0.6204f, -0.0282f, 0.0023f, -0.9995f, --0.2483f, 0.6806f, -0.6892f, -0.1518f, 0.985f, 0.081f, -0.047f, 0.0466f, -0.9978f, -0.7354f, -0.6034f, 0.3082f, -0.6919f, 0.2428f, 0.6798f, -0.4086f, -0.3626f, -0.8375f, -0.6383f, -0.4127f, -0.6497f, --0.5875f, 0.5937f, -0.5497f, -0.6703f, -0.342f, -0.6585f, --0.8245f, -0.4464f, 0.3476f, -0.0085f, -0.3403f, -0.9402f, --0.0591f, -0.0663f, 0.996f, -0.0f, -1.0f, 0.0f, -0.4612f, 0.7474f, 0.478f, -0.6976f, -0.7164f, 0.0027f, --0.9148f, 0.4037f, -0.0005f, -0.173f, -0.8158f, -0.5518f, --0.3607f, 0.3387f, 0.8689f, -0.7836f, -0.2411f, 0.5724f, --0.1985f, 0.8026f, -0.5623f, --0.3094f, -0.2556f, -0.9159f, --0.2803f, -0.6907f, -0.6665f, -0.8245f, -0.4464f, -0.3476f, -0.829f, -0.4466f, 0.3365f, --0.4848f, 0.7385f, 0.4683f, -0.1583f, 0.9851f, 0.066f, --0.0077f, 0.7656f, -0.6432f, --0.0162f, 0.985f, 0.1717f, -0.1717f, 0.985f, 0.0162f, -0.0244f, 0.9805f, -0.1949f, --0.2461f, -0.805f, -0.5397f, -0.0262f, 0.5934f, 0.8044f, -0.142f, 0.1881f, 0.9718f, -0.1846f, 0.1002f, 0.9776f, -0.4903f, -0.7178f, 0.4942f, -0.2637f, -0.7172f, 0.6449f, -0.3822f, -0.0678f, 0.9215f, --0.0054f, 0.9691f, -0.2464f, -0.3607f, 0.3387f, -0.8689f, --0.3587f, 0.3388f, -0.8697f, --0.5694f, -0.8219f, 0.0081f, --0.1324f, 0.985f, 0.1096f, --0.099f, 0.9692f, -0.2251f, --0.6702f, 0.4451f, 0.5938f, -0.0077f, -0.9976f, 0.0684f, --0.5661f, -0.604f, 0.5609f, --0.1096f, 0.985f, -0.1324f, --0.6096f, 0.747f, -0.265f, --0.0015f, 0.0295f, -0.9995f, -0.3476f, -0.4464f, 0.8245f, --0.0635f, -0.2552f, 0.9647f, --0.8468f, 0.4454f, 0.2904f, --0.4719f, 0.8502f, 0.233f, --0.0502f, 0.8385f, 0.5425f, --0.6671f, 0.7448f, -0.0116f, -0.3508f, -0.3415f, 0.8719f, --0.4119f, 0.6135f, -0.6736f, --0.2688f, -0.7172f, 0.6428f, --0.4041f, -0.8052f, 0.4337f, --0.375f, 0.2079f, 0.9033f, --0.0223f, -0.9986f, -0.0462f, -0.6702f, 0.4451f, -0.5938f, -0.9402f, -0.3403f, 0.0085f, -0.5661f, -0.604f, -0.5609f, --0.6252f, 0.7406f, 0.246f, --0.0341f, -0.9986f, 0.0383f, --0.6111f, 0.4984f, -0.6148f, -0.6655f, 0.7462f, 0.0117f, -0.1233f, 0.199f, 0.9722f, -0.8468f, 0.4454f, -0.2904f, -0.7383f, 0.2702f, -0.6179f, --0.8055f, 0.4452f, -0.3909f, --0.3729f, 0.208f, -0.9042f, -0.4719f, 0.8502f, -0.233f, -0.243f, 0.747f, 0.6187f, --0.6497f, -0.4127f, -0.6383f, --0.5406f, 0.5651f, -0.623f, -0.0058f, -0.4457f, 0.8951f, --0.3082f, -0.6034f, 0.7354f, --0.8655f, -0.3412f, -0.3666f, -0.2688f, -0.7172f, -0.6428f, -0.4041f, -0.8052f, -0.4337f, -0.375f, 0.2079f, -0.9033f, -0.0341f, -0.9986f, -0.0383f, --0.9701f, 0.2423f, 0.0084f, --0.3807f, -0.0681f, 0.9221f, -0.9643f, -0.2551f, 0.0705f, --0.8758f, 0.4808f, 0.0415f, -0.1207f, 0.9852f, 0.1215f, -0.4821f, 0.7724f, 0.4133f, --0.0522f, 0.9982f, 0.0278f, --0.4337f, -0.8052f, -0.4041f, --0.6164f, 0.4198f, 0.6661f, --0.8448f, 0.4045f, -0.3501f, -0.3082f, -0.6034f, -0.7354f, -0.8689f, 0.3387f, 0.3607f, -0.6894f, -0.7242f, 0.0091f, -0.3787f, 0.2424f, 0.8931f, -0.2904f, 0.4454f, 0.8468f, -0.6148f, 0.4984f, -0.6111f, -0.0501f, 0.985f, 0.1648f, --0.5397f, -0.805f, 0.2461f, --0.9159f, -0.2556f, 0.3094f, -0.706f, -0.0681f, 0.7048f, --0.3341f, 0.4972f, 0.8006f, -0.556f, -0.8049f, 0.2071f, --0.1774f, 0.9693f, -0.1697f, -0.6907f, 0.2083f, 0.6924f, -0.1263f, 0.9332f, 0.3361f, -0.3807f, -0.0681f, -0.9221f, --0.1556f, -0.9861f, -0.0578f, --0.3271f, 0.9333f, -0.1478f, --0.3465f, 0.8505f, 0.3955f, -0.5315f, 0.8438f, -0.0735f, -0.9737f, 0.2276f, -0.0003f, -0.6441f, 0.7648f, -0.0112f, --0.7239f, -0.6898f, 0.0042f, --0.7532f, 0.5939f, -0.2824f, -0.1093f, 0.1415f, -0.9838f, -0.5397f, -0.805f, -0.2461f, --0.7981f, -0.6024f, -0.0036f, -0.9456f, 0.3251f, -0.0052f, -0.1278f, 0.9696f, -0.2085f, -0.0208f, -0.8044f, 0.5936f, -0.1635f, 0.1348f, -0.9772f, --0.733f, 0.5936f, 0.3321f, --0.0505f, 0.9852f, -0.1635f, -0.4089f, -0.9069f, -0.1015f, --0.0029f, -0.9986f, -0.0514f, --0.1796f, 0.814f, -0.5522f, -0.9221f, -0.0681f, 0.3807f, -0.0383f, -0.9986f, 0.0341f, -0.6369f, -0.2562f, 0.727f, -0.3465f, 0.8505f, -0.3955f, --0.2452f, 0.9334f, -0.2615f, -0.4921f, -0.247f, 0.8346f, --0.9976f, -0.0678f, 0.0008f, --0.5396f, 0.8418f, -0.0094f, -0.2294f, 0.9692f, 0.0888f, -0.7239f, -0.6898f, -0.0042f, --0.4472f, 0.5952f, 0.6675f, --0.6449f, -0.7172f, 0.2637f, -0.4543f, 0.2732f, -0.8478f, --0.6798f, 0.2428f, 0.6919f, --0.5938f, 0.4451f, -0.6702f, -0.733f, 0.5936f, -0.3321f, --0.3955f, 0.8505f, -0.3465f, --0.5139f, -0.6913f, -0.5078f, --0.623f, -0.5156f, -0.5881f -}; - -/* 1 color */ -/*255 255 0 */ - -/* 1024 faces */ -/* numIdx fidx0 fidx1 fidx2 nidx0 nidx1 nidx2 coloridx */ - -const int numFaces = 1024; -const int faces[1024][8] = { -3, 0, 5, 6, 255, 295, 309, 0, -3, 6, 1, 0, 309, 465, 255, 0, -3, 1, 6, 7, 465, 309, 134, 0, -3, 7, 2, 1, 134, 4, 465, 0, -3, 2, 7, 8, 4, 134, 165, 0, -3, 8, 3, 2, 165, 448, 4, 0, -3, 3, 8, 9, 448, 165, 49, 0, -3, 9, 4, 3, 49, 116, 448, 0, -3, 5, 10, 11, 295, 248, 106, 0, -3, 11, 6, 5, 106, 309, 295, 0, -3, 6, 11, 12, 309, 106, 102, 0, -3, 12, 7, 6, 102, 134, 309, 0, -3, 7, 12, 13, 134, 102, 394, 0, -3, 13, 8, 7, 394, 165, 134, 0, -3, 8, 13, 14, 165, 394, 180, 0, -3, 14, 9, 8, 180, 49, 165, 0, -3, 10, 15, 16, 248, 401, 211, 0, -3, 16, 11, 10, 211, 106, 248, 0, -3, 11, 16, 17, 106, 211, 427, 0, -3, 17, 12, 11, 427, 102, 106, 0, -3, 12, 17, 18, 102, 427, 455, 0, -3, 18, 13, 12, 455, 394, 102, 0, -3, 13, 18, 19, 394, 455, 74, 0, -3, 19, 14, 13, 74, 180, 394, 0, -3, 15, 20, 21, 401, 174, 182, 0, -3, 21, 16, 15, 182, 211, 401, 0, -3, 16, 21, 22, 211, 182, 507, 0, -3, 22, 17, 16, 507, 427, 211, 0, -3, 17, 22, 23, 427, 507, 5, 0, -3, 23, 18, 17, 5, 455, 427, 0, -3, 18, 23, 24, 455, 5, 234, 0, -3, 24, 19, 18, 234, 74, 455, 0, -3, 20, 25, 26, 174, 386, 20, 0, -3, 26, 21, 20, 20, 182, 174, 0, -3, 21, 26, 27, 182, 20, 410, 0, -3, 27, 22, 21, 410, 507, 182, 0, -3, 22, 27, 28, 507, 410, 23, 0, -3, 28, 23, 22, 23, 5, 507, 0, -3, 23, 28, 29, 5, 23, 485, 0, -3, 29, 24, 23, 485, 234, 5, 0, -3, 25, 30, 31, 386, 69, 305, 0, -3, 31, 26, 25, 305, 20, 386, 0, -3, 26, 31, 32, 20, 305, 503, 0, -3, 32, 27, 26, 503, 410, 20, 0, -3, 27, 32, 33, 410, 503, 405, 0, -3, 33, 28, 27, 405, 23, 410, 0, -3, 28, 33, 34, 23, 405, 138, 0, -3, 34, 29, 28, 138, 485, 23, 0, -3, 30, 35, 36, 69, 115, 193, 0, -3, 36, 31, 30, 193, 305, 69, 0, -3, 31, 36, 37, 305, 193, 270, 0, -3, 37, 32, 31, 270, 503, 305, 0, -3, 32, 37, 38, 503, 270, 445, 0, -3, 38, 33, 32, 445, 405, 503, 0, -3, 33, 38, 39, 405, 445, 28, 0, -3, 39, 34, 33, 28, 138, 405, 0, -3, 35, 40, 41, 115, 467, 495, 0, -3, 41, 36, 35, 495, 193, 115, 0, -3, 36, 41, 42, 193, 495, 11, 0, -3, 42, 37, 36, 11, 270, 193, 0, -3, 37, 42, 43, 270, 11, 435, 0, -3, 43, 38, 37, 435, 445, 270, 0, -3, 38, 43, 44, 445, 435, 322, 0, -3, 44, 39, 38, 322, 28, 445, 0, -3, 40, 45, 46, 467, 27, 44, 0, -3, 46, 41, 40, 44, 495, 467, 0, -3, 41, 46, 47, 495, 44, 409, 0, -3, 47, 42, 41, 409, 11, 495, 0, -3, 42, 47, 48, 11, 409, 428, 0, -3, 48, 43, 42, 428, 435, 11, 0, -3, 43, 48, 49, 435, 428, 313, 0, -3, 49, 44, 43, 313, 322, 435, 0, -3, 45, 50, 51, 27, 513, 385, 0, -3, 51, 46, 45, 385, 44, 27, 0, -3, 46, 51, 52, 44, 385, 382, 0, -3, 52, 47, 46, 382, 409, 44, 0, -3, 47, 52, 53, 409, 382, 124, 0, -3, 53, 48, 47, 124, 428, 409, 0, -3, 48, 53, 54, 428, 124, 447, 0, -3, 54, 49, 48, 447, 313, 428, 0, -3, 50, 55, 56, 513, 136, 478, 0, -3, 56, 51, 50, 478, 385, 513, 0, -3, 51, 56, 57, 385, 478, 161, 0, -3, 57, 52, 51, 161, 382, 385, 0, -3, 52, 57, 58, 382, 161, 181, 0, -3, 58, 53, 52, 181, 124, 382, 0, -3, 53, 58, 59, 124, 181, 348, 0, -3, 59, 54, 53, 348, 447, 124, 0, -3, 55, 60, 61, 136, 431, 320, 0, -3, 61, 56, 55, 320, 478, 136, 0, -3, 56, 61, 62, 478, 320, 481, 0, -3, 62, 57, 56, 481, 161, 478, 0, -3, 57, 62, 63, 161, 481, 53, 0, -3, 63, 58, 57, 53, 181, 161, 0, -3, 58, 63, 64, 181, 53, 257, 0, -3, 64, 59, 58, 257, 348, 181, 0, -3, 60, 65, 66, 431, 135, 37, 0, -3, 66, 61, 60, 37, 320, 431, 0, -3, 61, 66, 67, 320, 37, 408, 0, -3, 67, 62, 61, 408, 481, 320, 0, -3, 62, 67, 68, 481, 408, 347, 0, -3, 68, 63, 62, 347, 53, 481, 0, -3, 63, 68, 69, 53, 347, 104, 0, -3, 69, 64, 63, 104, 257, 53, 0, -3, 65, 70, 71, 135, 191, 524, 0, -3, 71, 66, 65, 524, 37, 135, 0, -3, 66, 71, 72, 37, 524, 319, 0, -3, 72, 67, 66, 319, 408, 37, 0, -3, 67, 72, 73, 408, 319, 183, 0, -3, 73, 68, 67, 183, 347, 408, 0, -3, 68, 73, 74, 347, 183, 480, 0, -3, 74, 69, 68, 480, 104, 347, 0, -3, 70, 75, 76, 191, 483, 328, 0, -3, 76, 71, 70, 328, 524, 191, 0, -3, 71, 76, 77, 524, 328, 422, 0, -3, 77, 72, 71, 422, 319, 524, 0, -3, 72, 77, 78, 319, 422, 151, 0, -3, 78, 73, 72, 151, 183, 319, 0, -3, 73, 78, 79, 183, 151, 273, 0, -3, 79, 74, 73, 273, 480, 183, 0, -3, 75, 0, 1, 483, 255, 465, 0, -3, 1, 76, 75, 465, 328, 483, 0, -3, 76, 1, 2, 328, 465, 4, 0, -3, 2, 77, 76, 4, 422, 328, 0, -3, 77, 2, 3, 422, 4, 448, 0, -3, 3, 78, 77, 448, 151, 422, 0, -3, 78, 3, 4, 151, 448, 116, 0, -3, 4, 79, 78, 116, 273, 151, 0, -3, 4, 9, 84, 116, 49, 220, 0, -3, 84, 80, 4, 220, 131, 116, 0, -3, 80, 84, 85, 131, 220, 476, 0, -3, 85, 81, 80, 476, 26, 131, 0, -3, 81, 85, 86, 26, 476, 38, 0, -3, 86, 82, 81, 38, 336, 26, 0, -3, 82, 86, 87, 336, 38, 511, 0, -3, 87, 83, 82, 511, 1, 336, 0, -3, 9, 14, 88, 49, 180, 103, 0, -3, 88, 84, 9, 103, 220, 49, 0, -3, 84, 88, 89, 220, 103, 62, 0, -3, 89, 85, 84, 62, 476, 220, 0, -3, 85, 89, 90, 476, 62, 488, 0, -3, 90, 86, 85, 488, 38, 476, 0, -3, 86, 90, 91, 38, 488, 484, 0, -3, 91, 87, 86, 484, 511, 38, 0, -3, 14, 19, 92, 180, 74, 78, 0, -3, 92, 88, 14, 78, 103, 180, 0, -3, 88, 92, 93, 103, 78, 154, 0, -3, 93, 89, 88, 154, 62, 103, 0, -3, 89, 93, 94, 62, 154, 190, 0, -3, 94, 90, 89, 190, 488, 62, 0, -3, 90, 94, 95, 488, 190, 417, 0, -3, 95, 91, 90, 417, 484, 488, 0, -3, 19, 24, 96, 74, 234, 81, 0, -3, 96, 92, 19, 81, 78, 74, 0, -3, 92, 96, 97, 78, 81, 274, 0, -3, 97, 93, 92, 274, 154, 78, 0, -3, 93, 97, 98, 154, 274, 363, 0, -3, 98, 94, 93, 363, 190, 154, 0, -3, 94, 98, 99, 190, 363, 304, 0, -3, 99, 95, 94, 304, 417, 190, 0, -3, 24, 29, 100, 234, 485, 287, 0, -3, 100, 96, 24, 287, 81, 234, 0, -3, 96, 100, 101, 81, 287, 398, 0, -3, 101, 97, 96, 398, 274, 81, 0, -3, 97, 101, 102, 274, 398, 440, 0, -3, 102, 98, 97, 440, 363, 274, 0, -3, 98, 102, 103, 363, 440, 466, 0, -3, 103, 99, 98, 466, 304, 363, 0, -3, 29, 34, 104, 485, 138, 268, 0, -3, 104, 100, 29, 268, 287, 485, 0, -3, 100, 104, 105, 287, 268, 252, 0, -3, 105, 101, 100, 252, 398, 287, 0, -3, 101, 105, 106, 398, 252, 141, 0, -3, 106, 102, 101, 141, 440, 398, 0, -3, 102, 106, 107, 440, 141, 18, 0, -3, 107, 103, 102, 18, 466, 440, 0, -3, 34, 39, 108, 138, 28, 357, 0, -3, 108, 104, 34, 357, 268, 138, 0, -3, 104, 108, 109, 268, 357, 127, 0, -3, 109, 105, 104, 127, 252, 268, 0, -3, 105, 109, 110, 252, 127, 228, 0, -3, 110, 106, 105, 228, 141, 252, 0, -3, 106, 110, 111, 141, 228, 33, 0, -3, 111, 107, 106, 33, 18, 141, 0, -3, 39, 44, 112, 28, 322, 396, 0, -3, 112, 108, 39, 396, 357, 28, 0, -3, 108, 112, 113, 357, 396, 294, 0, -3, 113, 109, 108, 294, 127, 357, 0, -3, 109, 113, 114, 127, 294, 56, 0, -3, 114, 110, 109, 56, 228, 127, 0, -3, 110, 114, 115, 228, 56, 517, 0, -3, 115, 111, 110, 517, 33, 228, 0, -3, 44, 49, 116, 322, 313, 474, 0, -3, 116, 112, 44, 474, 396, 322, 0, -3, 112, 116, 117, 396, 474, 208, 0, -3, 117, 113, 112, 208, 294, 396, 0, -3, 113, 117, 118, 294, 208, 301, 0, -3, 118, 114, 113, 301, 56, 294, 0, -3, 114, 118, 119, 56, 301, 242, 0, -3, 119, 115, 114, 242, 517, 56, 0, -3, 49, 54, 120, 313, 447, 377, 0, -3, 120, 116, 49, 377, 474, 313, 0, -3, 116, 120, 121, 474, 377, 333, 0, -3, 121, 117, 116, 333, 208, 474, 0, -3, 117, 121, 122, 208, 333, 222, 0, -3, 122, 118, 117, 222, 301, 208, 0, -3, 118, 122, 123, 301, 222, 218, 0, -3, 123, 119, 118, 218, 242, 301, 0, -3, 54, 59, 124, 447, 348, 350, 0, -3, 124, 120, 54, 350, 377, 447, 0, -3, 120, 124, 125, 377, 350, 420, 0, -3, 125, 121, 120, 420, 333, 377, 0, -3, 121, 125, 126, 333, 420, 453, 0, -3, 126, 122, 121, 453, 222, 333, 0, -3, 122, 126, 127, 222, 453, 147, 0, -3, 127, 123, 122, 147, 218, 222, 0, -3, 59, 64, 128, 348, 257, 95, 0, -3, 128, 124, 59, 95, 350, 348, 0, -3, 124, 128, 129, 350, 95, 293, 0, -3, 129, 125, 124, 293, 420, 350, 0, -3, 125, 129, 130, 420, 293, 378, 0, -3, 130, 126, 125, 378, 453, 420, 0, -3, 126, 130, 131, 453, 378, 29, 0, -3, 131, 127, 126, 29, 147, 453, 0, -3, 64, 69, 132, 257, 104, 311, 0, -3, 132, 128, 64, 311, 95, 257, 0, -3, 128, 132, 133, 95, 311, 419, 0, -3, 133, 129, 128, 419, 293, 95, 0, -3, 129, 133, 134, 293, 419, 463, 0, -3, 134, 130, 129, 463, 378, 293, 0, -3, 130, 134, 135, 378, 463, 490, 0, -3, 135, 131, 130, 490, 29, 378, 0, -3, 69, 74, 136, 104, 480, 284, 0, -3, 136, 132, 69, 284, 311, 104, 0, -3, 132, 136, 137, 311, 284, 269, 0, -3, 137, 133, 132, 269, 419, 311, 0, -3, 133, 137, 138, 419, 269, 164, 0, -3, 138, 134, 133, 164, 463, 419, 0, -3, 134, 138, 139, 463, 164, 45, 0, -3, 139, 135, 134, 45, 490, 463, 0, -3, 74, 79, 140, 480, 273, 371, 0, -3, 140, 136, 74, 371, 284, 480, 0, -3, 136, 140, 141, 284, 371, 148, 0, -3, 141, 137, 136, 148, 269, 284, 0, -3, 137, 141, 142, 269, 148, 251, 0, -3, 142, 138, 137, 251, 164, 269, 0, -3, 138, 142, 143, 164, 251, 54, 0, -3, 143, 139, 138, 54, 45, 164, 0, -3, 79, 4, 80, 273, 116, 131, 0, -3, 80, 140, 79, 131, 371, 273, 0, -3, 140, 80, 81, 371, 131, 26, 0, -3, 81, 141, 140, 26, 148, 371, 0, -3, 141, 81, 82, 148, 26, 336, 0, -3, 82, 142, 141, 336, 251, 148, 0, -3, 142, 82, 83, 251, 336, 1, 0, -3, 83, 143, 142, 1, 54, 251, 0, -3, 83, 87, 148, 1, 511, 404, 0, -3, 148, 144, 83, 404, 276, 1, 0, -3, 144, 148, 149, 276, 404, 308, 0, -3, 149, 145, 144, 308, 520, 276, 0, -3, 145, 149, 150, 520, 308, 325, 0, -3, 150, 146, 145, 325, 395, 520, 0, -3, 146, 150, 151, 395, 325, 384, 0, -3, 151, 147, 146, 384, 246, 395, 0, -3, 87, 91, 152, 511, 484, 47, 0, -3, 152, 148, 87, 47, 404, 511, 0, -3, 148, 152, 153, 404, 47, 272, 0, -3, 153, 149, 148, 272, 308, 404, 0, -3, 149, 153, 154, 308, 272, 415, 0, -3, 154, 150, 149, 415, 325, 308, 0, -3, 150, 154, 155, 325, 415, 83, 0, -3, 155, 151, 150, 83, 384, 325, 0, -3, 91, 95, 156, 484, 417, 430, 0, -3, 156, 152, 91, 430, 47, 484, 0, -3, 152, 156, 157, 47, 430, 137, 0, -3, 157, 153, 152, 137, 272, 47, 0, -3, 153, 157, 158, 272, 137, 416, 0, -3, 158, 154, 153, 416, 415, 272, 0, -3, 154, 158, 159, 415, 416, 297, 0, -3, 159, 155, 154, 297, 83, 415, 0, -3, 95, 99, 160, 417, 304, 458, 0, -3, 160, 156, 95, 458, 430, 417, 0, -3, 156, 160, 161, 430, 458, 343, 0, -3, 161, 157, 156, 343, 137, 430, 0, -3, 157, 161, 162, 137, 343, 334, 0, -3, 162, 158, 157, 334, 416, 137, 0, -3, 158, 162, 163, 416, 334, 317, 0, -3, 163, 159, 158, 317, 297, 416, 0, -3, 99, 103, 164, 304, 466, 187, 0, -3, 164, 160, 99, 187, 458, 304, 0, -3, 160, 164, 165, 458, 187, 117, 0, -3, 165, 161, 160, 117, 343, 458, 0, -3, 161, 165, 166, 343, 117, 438, 0, -3, 166, 162, 161, 438, 334, 343, 0, -3, 162, 166, 167, 334, 438, 459, 0, -3, 167, 163, 162, 459, 317, 334, 0, -3, 103, 107, 168, 466, 18, 353, 0, -3, 168, 164, 103, 353, 187, 466, 0, -3, 164, 168, 169, 187, 353, 123, 0, -3, 169, 165, 164, 123, 117, 187, 0, -3, 165, 169, 170, 117, 123, 168, 0, -3, 170, 166, 165, 168, 438, 117, 0, -3, 166, 170, 171, 438, 168, 426, 0, -3, 171, 167, 166, 426, 459, 438, 0, -3, 107, 111, 172, 18, 33, 390, 0, -3, 172, 168, 107, 390, 353, 18, 0, -3, 168, 172, 173, 353, 390, 290, 0, -3, 173, 169, 168, 290, 123, 353, 0, -3, 169, 173, 174, 123, 290, 522, 0, -3, 174, 170, 169, 522, 168, 123, 0, -3, 170, 174, 175, 168, 522, 87, 0, -3, 175, 171, 170, 87, 426, 168, 0, -3, 111, 115, 176, 33, 517, 260, 0, -3, 176, 172, 111, 260, 390, 33, 0, -3, 172, 176, 177, 390, 260, 497, 0, -3, 177, 173, 172, 497, 290, 390, 0, -3, 173, 177, 178, 290, 497, 126, 0, -3, 178, 174, 173, 126, 522, 290, 0, -3, 174, 178, 179, 522, 126, 501, 0, -3, 179, 175, 174, 501, 87, 522, 0, -3, 115, 119, 180, 517, 242, 130, 0, -3, 180, 176, 115, 130, 260, 517, 0, -3, 176, 180, 181, 260, 130, 34, 0, -3, 181, 177, 176, 34, 497, 260, 0, -3, 177, 181, 182, 497, 34, 46, 0, -3, 182, 178, 177, 46, 126, 497, 0, -3, 178, 182, 183, 126, 46, 105, 0, -3, 183, 179, 178, 105, 501, 126, 0, -3, 119, 123, 184, 242, 218, 310, 0, -3, 184, 180, 119, 310, 130, 242, 0, -3, 180, 184, 185, 130, 310, 528, 0, -3, 185, 181, 180, 528, 34, 130, 0, -3, 181, 185, 186, 34, 528, 145, 0, -3, 186, 182, 181, 145, 46, 34, 0, -3, 182, 186, 187, 46, 145, 356, 0, -3, 187, 183, 182, 356, 105, 46, 0, -3, 123, 127, 188, 218, 147, 156, 0, -3, 188, 184, 123, 156, 310, 218, 0, -3, 184, 188, 189, 310, 156, 402, 0, -3, 189, 185, 184, 402, 528, 310, 0, -3, 185, 189, 190, 528, 402, 146, 0, -3, 190, 186, 185, 146, 145, 528, 0, -3, 186, 190, 191, 145, 146, 17, 0, -3, 191, 187, 186, 17, 356, 145, 0, -3, 127, 131, 192, 147, 29, 184, 0, -3, 192, 188, 127, 184, 156, 147, 0, -3, 188, 192, 193, 156, 184, 63, 0, -3, 193, 189, 188, 63, 402, 156, 0, -3, 189, 193, 194, 402, 63, 354, 0, -3, 194, 190, 189, 354, 146, 402, 0, -3, 190, 194, 195, 146, 354, 335, 0, -3, 195, 191, 190, 335, 17, 146, 0, -3, 131, 135, 196, 29, 490, 210, 0, -3, 196, 192, 131, 210, 184, 29, 0, -3, 192, 196, 197, 184, 210, 129, 0, -3, 197, 193, 192, 129, 63, 184, 0, -3, 193, 197, 198, 63, 129, 461, 0, -3, 198, 194, 193, 461, 354, 63, 0, -3, 194, 198, 199, 354, 461, 475, 0, -3, 199, 195, 194, 475, 335, 354, 0, -3, 135, 139, 200, 490, 45, 370, 0, -3, 200, 196, 135, 370, 210, 490, 0, -3, 196, 200, 201, 210, 370, 143, 0, -3, 201, 197, 196, 143, 129, 210, 0, -3, 197, 201, 202, 129, 143, 195, 0, -3, 202, 198, 197, 195, 461, 129, 0, -3, 198, 202, 203, 461, 195, 444, 0, -3, 203, 199, 198, 444, 475, 461, 0, -3, 139, 143, 204, 45, 54, 403, 0, -3, 204, 200, 139, 403, 370, 45, 0, -3, 200, 204, 205, 370, 403, 315, 0, -3, 205, 201, 200, 315, 143, 370, 0, -3, 201, 205, 206, 143, 315, 7, 0, -3, 206, 202, 201, 7, 195, 143, 0, -3, 202, 206, 207, 195, 7, 101, 0, -3, 207, 203, 202, 101, 444, 195, 0, -3, 143, 83, 144, 54, 1, 276, 0, -3, 144, 204, 143, 276, 403, 54, 0, -3, 204, 144, 145, 403, 276, 520, 0, -3, 145, 205, 204, 520, 315, 403, 0, -3, 205, 145, 146, 315, 520, 395, 0, -3, 146, 206, 205, 395, 7, 315, 0, -3, 206, 146, 147, 7, 395, 246, 0, -3, 147, 207, 206, 246, 101, 7, 0, -3, 147, 151, 212, 246, 384, 486, 0, -3, 212, 208, 147, 486, 279, 246, 0, -3, 208, 212, 213, 279, 486, 231, 0, -3, 213, 209, 208, 231, 349, 279, 0, -3, 209, 213, 214, 349, 231, 0, 0, -3, 214, 210, 209, 0, 216, 349, 0, -3, 210, 214, 211, 216, 0, 393, 0, -3, 211, 211, 210, 393, 393, 216, 0, -3, 151, 155, 215, 384, 83, 215, 0, -3, 215, 212, 151, 215, 486, 384, 0, -3, 212, 215, 216, 486, 215, 327, 0, -3, 216, 213, 212, 327, 231, 486, 0, -3, 213, 216, 217, 231, 327, 512, 0, -3, 217, 214, 213, 512, 0, 231, 0, -3, 214, 217, 211, 0, 512, 393, 0, -3, 211, 211, 214, 393, 393, 0, 0, -3, 155, 159, 218, 83, 297, 149, 0, -3, 218, 215, 155, 149, 215, 83, 0, -3, 215, 218, 219, 215, 149, 91, 0, -3, 219, 216, 215, 91, 327, 215, 0, -3, 216, 219, 220, 327, 91, 177, 0, -3, 220, 217, 216, 177, 512, 327, 0, -3, 217, 220, 211, 512, 177, 393, 0, -3, 211, 211, 217, 393, 393, 512, 0, -3, 159, 163, 221, 297, 317, 504, 0, -3, 221, 218, 159, 504, 149, 297, 0, -3, 218, 221, 222, 149, 504, 285, 0, -3, 222, 219, 218, 285, 91, 149, 0, -3, 219, 222, 223, 91, 285, 254, 0, -3, 223, 220, 219, 254, 177, 91, 0, -3, 220, 223, 211, 177, 254, 393, 0, -3, 211, 211, 220, 393, 393, 177, 0, -3, 163, 167, 224, 317, 459, 125, 0, -3, 224, 221, 163, 125, 504, 317, 0, -3, 221, 224, 225, 504, 125, 162, 0, -3, 225, 222, 221, 162, 285, 504, 0, -3, 222, 225, 226, 285, 162, 278, 0, -3, 226, 223, 222, 278, 254, 285, 0, -3, 223, 226, 211, 254, 278, 393, 0, -3, 211, 211, 223, 393, 393, 254, 0, -3, 167, 171, 227, 459, 426, 439, 0, -3, 227, 224, 167, 439, 125, 459, 0, -3, 224, 227, 228, 125, 439, 60, 0, -3, 228, 225, 224, 60, 162, 125, 0, -3, 225, 228, 229, 162, 60, 446, 0, -3, 229, 226, 225, 446, 278, 162, 0, -3, 226, 229, 211, 278, 446, 393, 0, -3, 211, 211, 226, 393, 393, 278, 0, -3, 171, 175, 230, 426, 87, 482, 0, -3, 230, 227, 171, 482, 439, 426, 0, -3, 227, 230, 231, 439, 482, 92, 0, -3, 231, 228, 227, 92, 60, 439, 0, -3, 228, 231, 232, 60, 92, 110, 0, -3, 232, 229, 228, 110, 446, 60, 0, -3, 229, 232, 211, 446, 110, 393, 0, -3, 211, 211, 229, 393, 393, 446, 0, -3, 175, 179, 233, 87, 501, 261, 0, -3, 233, 230, 175, 261, 482, 87, 0, -3, 230, 233, 234, 482, 261, 329, 0, -3, 234, 231, 230, 329, 92, 482, 0, -3, 231, 234, 235, 92, 329, 192, 0, -3, 235, 232, 231, 192, 110, 92, 0, -3, 232, 235, 211, 110, 192, 393, 0, -3, 211, 211, 232, 393, 393, 110, 0, -3, 179, 183, 236, 501, 105, 219, 0, -3, 236, 233, 179, 219, 261, 501, 0, -3, 233, 236, 237, 261, 219, 491, 0, -3, 237, 234, 233, 491, 329, 261, 0, -3, 234, 237, 238, 329, 491, 267, 0, -3, 238, 235, 234, 267, 192, 329, 0, -3, 235, 238, 211, 192, 267, 393, 0, -3, 211, 211, 235, 393, 393, 192, 0, -3, 183, 187, 239, 105, 356, 472, 0, -3, 239, 236, 183, 472, 219, 105, 0, -3, 236, 239, 240, 219, 472, 48, 0, -3, 240, 237, 236, 48, 491, 219, 0, -3, 237, 240, 241, 491, 48, 247, 0, -3, 241, 238, 237, 247, 267, 491, 0, -3, 238, 241, 211, 267, 247, 393, 0, -3, 211, 211, 238, 393, 393, 267, 0, -3, 187, 191, 242, 356, 17, 411, 0, -3, 242, 239, 187, 411, 472, 356, 0, -3, 239, 242, 243, 472, 411, 364, 0, -3, 243, 240, 239, 364, 48, 472, 0, -3, 240, 243, 244, 48, 364, 441, 0, -3, 244, 241, 240, 441, 247, 48, 0, -3, 241, 244, 211, 247, 441, 393, 0, -3, 211, 211, 241, 393, 393, 247, 0, -3, 191, 195, 245, 17, 335, 239, 0, -3, 245, 242, 191, 239, 411, 17, 0, -3, 242, 245, 246, 411, 239, 13, 0, -3, 246, 243, 242, 13, 364, 411, 0, -3, 243, 246, 247, 364, 13, 509, 0, -3, 247, 244, 243, 509, 441, 364, 0, -3, 244, 247, 211, 441, 509, 393, 0, -3, 211, 211, 244, 393, 393, 441, 0, -3, 195, 199, 248, 335, 475, 144, 0, -3, 248, 245, 195, 144, 239, 335, 0, -3, 245, 248, 249, 239, 144, 179, 0, -3, 249, 246, 245, 179, 13, 239, 0, -3, 246, 249, 250, 13, 179, 298, 0, -3, 250, 247, 246, 298, 509, 13, 0, -3, 247, 250, 211, 509, 298, 393, 0, -3, 211, 211, 247, 393, 393, 509, 0, -3, 199, 203, 251, 475, 444, 462, 0, -3, 251, 248, 199, 462, 144, 475, 0, -3, 248, 251, 252, 144, 462, 76, 0, -3, 252, 249, 248, 76, 179, 144, 0, -3, 249, 252, 253, 179, 76, 464, 0, -3, 253, 250, 249, 464, 298, 179, 0, -3, 250, 253, 211, 298, 464, 393, 0, -3, 211, 211, 250, 393, 393, 298, 0, -3, 203, 207, 254, 444, 101, 500, 0, -3, 254, 251, 203, 500, 462, 444, 0, -3, 251, 254, 255, 462, 500, 113, 0, -3, 255, 252, 251, 113, 76, 462, 0, -3, 252, 255, 256, 76, 113, 128, 0, -3, 256, 253, 252, 128, 464, 76, 0, -3, 253, 256, 211, 464, 128, 393, 0, -3, 211, 211, 253, 393, 393, 464, 0, -3, 207, 147, 208, 101, 246, 279, 0, -3, 208, 254, 207, 279, 500, 101, 0, -3, 254, 208, 209, 500, 279, 349, 0, -3, 209, 255, 254, 349, 113, 500, 0, -3, 255, 209, 210, 113, 349, 216, 0, -3, 210, 256, 255, 216, 128, 113, 0, -3, 256, 210, 211, 128, 216, 393, 0, -3, 211, 211, 256, 393, 393, 128, 0, -3, 257, 262, 263, 425, 244, 58, 0, -3, 263, 258, 257, 58, 337, 425, 0, -3, 258, 263, 264, 337, 58, 214, 0, -3, 264, 259, 258, 214, 236, 337, 0, -3, 259, 264, 265, 236, 214, 266, 0, -3, 265, 260, 259, 266, 32, 236, 0, -3, 260, 265, 266, 32, 266, 331, 0, -3, 266, 261, 260, 331, 109, 32, 0, -3, 262, 267, 268, 244, 233, 369, 0, -3, 268, 263, 262, 369, 58, 244, 0, -3, 263, 268, 269, 58, 369, 71, 0, -3, 269, 264, 263, 71, 214, 58, 0, -3, 264, 269, 270, 214, 71, 392, 0, -3, 270, 265, 264, 392, 266, 214, 0, -3, 265, 270, 271, 266, 392, 312, 0, -3, 271, 266, 265, 312, 331, 266, 0, -3, 267, 272, 273, 233, 12, 434, 0, -3, 273, 268, 267, 434, 369, 233, 0, -3, 268, 273, 274, 369, 434, 188, 0, -3, 274, 269, 268, 188, 71, 369, 0, -3, 269, 274, 275, 71, 188, 201, 0, -3, 275, 270, 269, 201, 392, 71, 0, -3, 270, 275, 276, 392, 201, 238, 0, -3, 276, 271, 270, 238, 312, 392, 0, -3, 272, 277, 278, 12, 142, 114, 0, -3, 278, 273, 272, 114, 434, 12, 0, -3, 273, 278, 279, 434, 114, 173, 0, -3, 279, 274, 273, 173, 188, 434, 0, -3, 274, 279, 280, 188, 173, 14, 0, -3, 280, 275, 274, 14, 201, 188, 0, -3, 275, 280, 281, 201, 14, 15, 0, -3, 281, 276, 275, 15, 238, 201, 0, -3, 277, 282, 283, 142, 407, 288, 0, -3, 283, 278, 277, 288, 114, 142, 0, -3, 278, 283, 284, 114, 288, 400, 0, -3, 284, 279, 278, 400, 173, 114, 0, -3, 279, 284, 285, 173, 400, 457, 0, -3, 285, 280, 279, 457, 14, 173, 0, -3, 280, 285, 286, 14, 457, 332, 0, -3, 286, 281, 280, 332, 15, 14, 0, -3, 282, 287, 288, 407, 194, 42, 0, -3, 288, 283, 282, 42, 288, 407, 0, -3, 283, 288, 289, 288, 42, 380, 0, -3, 289, 284, 283, 380, 400, 288, 0, -3, 284, 289, 290, 400, 380, 383, 0, -3, 290, 285, 284, 383, 457, 400, 0, -3, 285, 290, 291, 457, 383, 197, 0, -3, 291, 286, 285, 197, 332, 457, 0, -3, 287, 292, 293, 194, 321, 152, 0, -3, 293, 288, 287, 152, 42, 194, 0, -3, 288, 293, 294, 42, 152, 397, 0, -3, 294, 289, 288, 397, 380, 42, 0, -3, 289, 294, 295, 380, 397, 342, 0, -3, 295, 290, 289, 342, 383, 380, 0, -3, 290, 295, 296, 383, 342, 225, 0, -3, 296, 291, 290, 225, 197, 383, 0, -3, 292, 257, 258, 321, 425, 337, 0, -3, 258, 293, 292, 337, 152, 321, 0, -3, 293, 258, 259, 152, 337, 236, 0, -3, 259, 294, 293, 236, 397, 152, 0, -3, 294, 259, 260, 397, 236, 32, 0, -3, 260, 295, 294, 32, 342, 397, 0, -3, 295, 260, 261, 342, 32, 109, 0, -3, 261, 296, 295, 109, 225, 342, 0, -3, 261, 266, 301, 109, 331, 175, 0, -3, 301, 297, 261, 175, 502, 109, 0, -3, 297, 301, 302, 502, 175, 265, 0, -3, 302, 298, 297, 265, 84, 502, 0, -3, 298, 302, 303, 84, 265, 186, 0, -3, 303, 299, 298, 186, 496, 84, 0, -3, 299, 303, 304, 496, 186, 470, 0, -3, 304, 300, 299, 470, 494, 496, 0, -3, 266, 271, 305, 331, 312, 170, 0, -3, 305, 301, 266, 170, 175, 331, 0, -3, 301, 305, 306, 175, 170, 97, 0, -3, 306, 302, 301, 97, 265, 175, 0, -3, 302, 306, 307, 265, 97, 205, 0, -3, 307, 303, 302, 205, 186, 265, 0, -3, 303, 307, 308, 186, 205, 449, 0, -3, 308, 304, 303, 449, 470, 186, 0, -3, 271, 276, 309, 312, 238, 379, 0, -3, 309, 305, 271, 379, 170, 312, 0, -3, 305, 309, 310, 170, 379, 300, 0, -3, 310, 306, 305, 300, 97, 170, 0, -3, 306, 310, 311, 97, 300, 118, 0, -3, 311, 307, 306, 118, 205, 97, 0, -3, 307, 311, 312, 205, 118, 237, 0, -3, 312, 308, 307, 237, 449, 205, 0, -3, 276, 281, 313, 238, 15, 199, 0, -3, 313, 309, 276, 199, 379, 238, 0, -3, 309, 313, 314, 379, 199, 94, 0, -3, 314, 310, 309, 94, 300, 379, 0, -3, 310, 314, 315, 300, 94, 421, 0, -3, 315, 311, 310, 421, 118, 300, 0, -3, 311, 315, 316, 118, 421, 31, 0, -3, 316, 312, 311, 31, 237, 118, 0, -3, 281, 286, 317, 15, 332, 367, 0, -3, 317, 313, 281, 367, 199, 15, 0, -3, 313, 317, 318, 199, 367, 529, 0, -3, 318, 314, 313, 529, 94, 199, 0, -3, 314, 318, 319, 94, 529, 185, 0, -3, 319, 315, 314, 185, 421, 94, 0, -3, 315, 319, 320, 421, 185, 89, 0, -3, 320, 316, 315, 89, 31, 421, 0, -3, 286, 291, 321, 332, 197, 172, 0, -3, 321, 317, 286, 172, 367, 332, 0, -3, 317, 321, 322, 367, 172, 209, 0, -3, 322, 318, 317, 209, 529, 367, 0, -3, 318, 322, 323, 529, 209, 429, 0, -3, 323, 319, 318, 429, 185, 529, 0, -3, 319, 323, 324, 185, 429, 112, 0, -3, 324, 320, 319, 112, 89, 185, 0, -3, 291, 296, 325, 197, 225, 451, 0, -3, 325, 321, 291, 451, 172, 197, 0, -3, 321, 325, 326, 172, 451, 66, 0, -3, 326, 322, 321, 66, 209, 172, 0, -3, 322, 326, 327, 209, 66, 176, 0, -3, 327, 323, 322, 176, 429, 209, 0, -3, 323, 327, 328, 429, 176, 155, 0, -3, 328, 324, 323, 155, 112, 429, 0, -3, 296, 261, 297, 225, 109, 502, 0, -3, 297, 325, 296, 502, 451, 225, 0, -3, 325, 297, 298, 451, 502, 84, 0, -3, 298, 326, 325, 84, 66, 451, 0, -3, 326, 298, 299, 66, 84, 496, 0, -3, 299, 327, 326, 496, 176, 66, 0, -3, 327, 299, 300, 176, 496, 494, 0, -3, 300, 328, 327, 494, 155, 176, 0, -3, 329, 334, 335, 3, 355, 122, 0, -3, 335, 330, 329, 122, 518, 3, 0, -3, 330, 335, 336, 518, 122, 111, 0, -3, 336, 331, 330, 111, 213, 518, 0, -3, 331, 336, 337, 213, 111, 473, 0, -3, 337, 332, 331, 473, 468, 213, 0, -3, 332, 337, 338, 468, 473, 521, 0, -3, 338, 333, 332, 521, 346, 468, 0, -3, 334, 339, 340, 355, 61, 414, 0, -3, 340, 335, 334, 414, 122, 355, 0, -3, 335, 340, 341, 122, 414, 413, 0, -3, 341, 336, 335, 413, 111, 122, 0, -3, 336, 341, 342, 111, 413, 204, 0, -3, 342, 337, 336, 204, 473, 111, 0, -3, 337, 342, 343, 473, 204, 217, 0, -3, 343, 338, 337, 217, 521, 473, 0, -3, 339, 344, 345, 61, 55, 100, 0, -3, 345, 340, 339, 100, 414, 61, 0, -3, 340, 345, 346, 414, 100, 399, 0, -3, 346, 341, 340, 399, 413, 414, 0, -3, 341, 346, 347, 413, 399, 326, 0, -3, 347, 342, 341, 326, 204, 413, 0, -3, 342, 347, 348, 204, 326, 221, 0, -3, 348, 343, 342, 221, 217, 204, 0, -3, 344, 349, 350, 55, 508, 477, 0, -3, 350, 345, 344, 477, 100, 55, 0, -3, 345, 350, 351, 100, 477, 292, 0, -3, 351, 346, 345, 292, 399, 100, 0, -3, 346, 351, 352, 399, 292, 73, 0, -3, 352, 347, 346, 73, 326, 399, 0, -3, 347, 352, 353, 326, 73, 362, 0, -3, 353, 348, 347, 362, 221, 326, 0, -3, 349, 354, 355, 508, 365, 262, 0, -3, 355, 350, 349, 262, 477, 508, 0, -3, 350, 355, 356, 477, 262, 93, 0, -3, 356, 351, 350, 93, 292, 477, 0, -3, 351, 356, 357, 292, 93, 318, 0, -3, 357, 352, 351, 318, 73, 292, 0, -3, 352, 357, 358, 73, 318, 163, 0, -3, 358, 353, 352, 163, 362, 73, 0, -3, 354, 359, 360, 365, 140, 340, 0, -3, 360, 355, 354, 340, 262, 365, 0, -3, 355, 360, 361, 262, 340, 505, 0, -3, 361, 356, 355, 505, 93, 262, 0, -3, 356, 361, 362, 93, 505, 499, 0, -3, 362, 357, 356, 499, 318, 93, 0, -3, 357, 362, 363, 318, 499, 159, 0, -3, 363, 358, 357, 159, 163, 318, 0, -3, 359, 364, 365, 140, 510, 68, 0, -3, 365, 360, 359, 68, 340, 140, 0, -3, 360, 365, 366, 340, 68, 167, 0, -3, 366, 361, 360, 167, 505, 340, 0, -3, 361, 366, 367, 505, 167, 245, 0, -3, 367, 362, 361, 245, 499, 505, 0, -3, 362, 367, 368, 499, 245, 437, 0, -3, 368, 363, 362, 437, 159, 499, 0, -3, 364, 329, 330, 510, 3, 518, 0, -3, 330, 365, 364, 518, 68, 510, 0, -3, 365, 330, 331, 68, 518, 213, 0, -3, 331, 366, 365, 213, 167, 68, 0, -3, 366, 331, 332, 167, 213, 468, 0, -3, 332, 367, 366, 468, 245, 167, 0, -3, 367, 332, 333, 245, 468, 346, 0, -3, 333, 368, 367, 346, 437, 245, 0, -3, 333, 338, 373, 346, 521, 79, 0, -3, 373, 369, 333, 79, 286, 346, 0, -3, 369, 373, 374, 286, 79, 77, 0, -3, 374, 370, 369, 77, 22, 286, 0, -3, 370, 374, 375, 22, 77, 523, 0, -3, 375, 371, 370, 523, 330, 22, 0, -3, 371, 375, 376, 330, 523, 259, 0, -3, 376, 372, 371, 259, 338, 330, 0, -3, 338, 343, 377, 521, 217, 207, 0, -3, 377, 373, 338, 207, 79, 521, 0, -3, 373, 377, 378, 79, 207, 471, 0, -3, 378, 374, 373, 471, 77, 79, 0, -3, 374, 378, 379, 77, 471, 198, 0, -3, 379, 375, 374, 198, 523, 77, 0, -3, 375, 379, 380, 523, 198, 366, 0, -3, 380, 376, 375, 366, 259, 523, 0, -3, 343, 348, 381, 217, 221, 516, 0, -3, 381, 377, 343, 516, 207, 217, 0, -3, 377, 381, 382, 207, 516, 250, 0, -3, 382, 378, 377, 250, 471, 207, 0, -3, 378, 382, 383, 471, 250, 240, 0, -3, 383, 379, 378, 240, 198, 471, 0, -3, 379, 383, 384, 198, 240, 381, 0, -3, 384, 380, 379, 381, 366, 198, 0, -3, 348, 353, 385, 221, 362, 230, 0, -3, 385, 381, 348, 230, 516, 221, 0, -3, 381, 385, 386, 516, 230, 303, 0, -3, 386, 382, 381, 303, 250, 516, 0, -3, 382, 386, 387, 250, 303, 10, 0, -3, 387, 383, 382, 10, 240, 250, 0, -3, 383, 387, 388, 240, 10, 283, 0, -3, 388, 384, 383, 283, 381, 240, 0, -3, 353, 358, 389, 362, 163, 282, 0, -3, 389, 385, 353, 282, 230, 362, 0, -3, 385, 389, 390, 230, 282, 35, 0, -3, 390, 386, 385, 35, 303, 230, 0, -3, 386, 390, 391, 303, 35, 243, 0, -3, 391, 387, 386, 243, 10, 303, 0, -3, 387, 391, 392, 10, 243, 368, 0, -3, 392, 388, 387, 368, 283, 10, 0, -3, 358, 363, 393, 163, 159, 296, 0, -3, 393, 389, 358, 296, 282, 163, 0, -3, 389, 393, 394, 282, 296, 160, 0, -3, 394, 390, 389, 160, 35, 282, 0, -3, 390, 394, 395, 35, 160, 323, 0, -3, 395, 391, 390, 323, 243, 35, 0, -3, 391, 395, 396, 243, 323, 280, 0, -3, 396, 392, 391, 280, 368, 243, 0, -3, 363, 368, 397, 159, 437, 275, 0, -3, 397, 393, 363, 275, 296, 159, 0, -3, 393, 397, 398, 296, 275, 133, 0, -3, 398, 394, 393, 133, 160, 296, 0, -3, 394, 398, 399, 160, 133, 344, 0, -3, 399, 395, 394, 344, 323, 160, 0, -3, 395, 399, 400, 323, 344, 108, 0, -3, 400, 396, 395, 108, 280, 323, 0, -3, 368, 333, 369, 437, 346, 286, 0, -3, 369, 397, 368, 286, 275, 437, 0, -3, 397, 369, 370, 275, 286, 22, 0, -3, 370, 398, 397, 22, 133, 275, 0, -3, 398, 370, 371, 133, 22, 330, 0, -3, 371, 399, 398, 330, 344, 133, 0, -3, 399, 371, 372, 344, 330, 338, 0, -3, 372, 400, 399, 338, 108, 344, 0, -3, 401, 401, 406, 235, 235, 189, 0, -3, 406, 402, 401, 189, 40, 235, 0, -3, 402, 406, 407, 40, 189, 306, 0, -3, 407, 403, 402, 306, 119, 40, 0, -3, 403, 407, 408, 119, 306, 202, 0, -3, 408, 404, 403, 202, 443, 119, 0, -3, 404, 408, 409, 443, 202, 241, 0, -3, 409, 405, 404, 241, 75, 443, 0, -3, 401, 401, 410, 235, 235, 263, 0, -3, 410, 406, 401, 263, 189, 235, 0, -3, 406, 410, 411, 189, 263, 196, 0, -3, 411, 407, 406, 196, 306, 189, 0, -3, 407, 411, 412, 306, 196, 281, 0, -3, 412, 408, 407, 281, 202, 306, 0, -3, 408, 412, 413, 202, 281, 121, 0, -3, 413, 409, 408, 121, 241, 202, 0, -3, 401, 401, 414, 235, 235, 479, 0, -3, 414, 410, 401, 479, 263, 235, 0, -3, 410, 414, 415, 263, 479, 36, 0, -3, 415, 411, 410, 36, 196, 263, 0, -3, 411, 415, 416, 196, 36, 436, 0, -3, 416, 412, 411, 436, 281, 196, 0, -3, 412, 416, 417, 281, 436, 351, 0, -3, 417, 413, 412, 351, 121, 281, 0, -3, 401, 401, 418, 235, 235, 90, 0, -3, 418, 414, 401, 90, 479, 235, 0, -3, 414, 418, 419, 479, 90, 361, 0, -3, 419, 415, 414, 361, 36, 479, 0, -3, 415, 419, 420, 36, 361, 376, 0, -3, 420, 416, 415, 376, 436, 36, 0, -3, 416, 420, 421, 436, 376, 412, 0, -3, 421, 417, 416, 412, 351, 436, 0, -3, 401, 401, 422, 235, 235, 52, 0, -3, 422, 418, 401, 52, 90, 235, 0, -3, 418, 422, 423, 90, 52, 21, 0, -3, 423, 419, 418, 21, 361, 90, 0, -3, 419, 423, 424, 361, 21, 158, 0, -3, 424, 420, 419, 158, 376, 361, 0, -3, 420, 424, 425, 376, 158, 39, 0, -3, 425, 421, 420, 39, 412, 376, 0, -3, 401, 401, 426, 235, 235, 424, 0, -3, 426, 422, 401, 424, 52, 235, 0, -3, 422, 426, 427, 52, 424, 373, 0, -3, 427, 423, 422, 373, 21, 52, 0, -3, 423, 427, 428, 21, 373, 375, 0, -3, 428, 424, 423, 375, 158, 21, 0, -3, 424, 428, 429, 158, 375, 249, 0, -3, 429, 425, 424, 249, 39, 158, 0, -3, 401, 401, 430, 235, 235, 432, 0, -3, 430, 426, 401, 432, 424, 235, 0, -3, 426, 430, 431, 424, 432, 229, 0, -3, 431, 427, 426, 229, 373, 424, 0, -3, 427, 431, 432, 373, 229, 65, 0, -3, 432, 428, 427, 65, 375, 373, 0, -3, 428, 432, 433, 375, 65, 506, 0, -3, 433, 429, 428, 506, 249, 375, 0, -3, 401, 401, 434, 235, 235, 302, 0, -3, 434, 430, 401, 302, 432, 235, 0, -3, 430, 434, 435, 432, 302, 96, 0, -3, 435, 431, 430, 96, 229, 432, 0, -3, 431, 435, 436, 229, 96, 169, 0, -3, 436, 432, 431, 169, 65, 229, 0, -3, 432, 436, 437, 65, 169, 59, 0, -3, 437, 433, 432, 59, 506, 65, 0, -3, 401, 401, 438, 235, 235, 452, 0, -3, 438, 434, 401, 452, 302, 235, 0, -3, 434, 438, 439, 302, 452, 30, 0, -3, 439, 435, 434, 30, 96, 302, 0, -3, 435, 439, 440, 96, 30, 460, 0, -3, 440, 436, 435, 460, 169, 96, 0, -3, 436, 440, 441, 169, 460, 498, 0, -3, 441, 437, 436, 498, 59, 169, 0, -3, 401, 401, 442, 235, 235, 525, 0, -3, 442, 438, 401, 525, 452, 235, 0, -3, 438, 442, 443, 452, 525, 456, 0, -3, 443, 439, 438, 456, 30, 452, 0, -3, 439, 443, 444, 30, 456, 9, 0, -3, 444, 440, 439, 9, 460, 30, 0, -3, 440, 444, 445, 460, 9, 388, 0, -3, 445, 441, 440, 388, 498, 460, 0, -3, 401, 401, 446, 235, 235, 212, 0, -3, 446, 442, 401, 212, 525, 235, 0, -3, 442, 446, 447, 525, 212, 299, 0, -3, 447, 443, 442, 299, 456, 525, 0, -3, 443, 447, 448, 456, 299, 166, 0, -3, 448, 444, 443, 166, 9, 456, 0, -3, 444, 448, 449, 9, 166, 72, 0, -3, 449, 445, 444, 72, 388, 9, 0, -3, 401, 401, 450, 235, 235, 107, 0, -3, 450, 446, 401, 107, 212, 235, 0, -3, 446, 450, 451, 212, 107, 82, 0, -3, 451, 447, 446, 82, 299, 212, 0, -3, 447, 451, 452, 299, 82, 391, 0, -3, 452, 448, 447, 391, 166, 299, 0, -3, 448, 452, 453, 166, 391, 139, 0, -3, 453, 449, 448, 139, 72, 166, 0, -3, 401, 401, 454, 235, 235, 70, 0, -3, 454, 450, 401, 70, 107, 235, 0, -3, 450, 454, 455, 107, 70, 51, 0, -3, 455, 451, 450, 51, 82, 107, 0, -3, 451, 455, 456, 82, 51, 178, 0, -3, 456, 452, 451, 178, 391, 82, 0, -3, 452, 456, 457, 391, 178, 57, 0, -3, 457, 453, 452, 57, 139, 391, 0, -3, 401, 401, 458, 235, 235, 442, 0, -3, 458, 454, 401, 442, 70, 235, 0, -3, 454, 458, 459, 70, 442, 387, 0, -3, 459, 455, 454, 387, 51, 70, 0, -3, 455, 459, 460, 51, 387, 389, 0, -3, 460, 456, 455, 389, 178, 51, 0, -3, 456, 460, 461, 178, 389, 264, 0, -3, 461, 457, 456, 264, 57, 178, 0, -3, 401, 401, 462, 235, 235, 450, 0, -3, 462, 458, 401, 450, 442, 235, 0, -3, 458, 462, 463, 442, 450, 253, 0, -3, 463, 459, 458, 253, 387, 442, 0, -3, 459, 463, 464, 387, 253, 86, 0, -3, 464, 460, 459, 86, 389, 387, 0, -3, 460, 464, 465, 389, 86, 526, 0, -3, 465, 461, 460, 526, 264, 389, 0, -3, 401, 401, 402, 235, 235, 40, 0, -3, 402, 462, 401, 40, 450, 235, 0, -3, 462, 402, 403, 450, 40, 119, 0, -3, 403, 463, 462, 119, 253, 450, 0, -3, 463, 403, 404, 253, 119, 443, 0, -3, 404, 464, 463, 443, 86, 253, 0, -3, 464, 404, 405, 86, 443, 75, 0, -3, 405, 465, 464, 75, 526, 86, 0, -3, 405, 409, 470, 75, 241, 519, 0, -3, 470, 466, 405, 519, 226, 75, 0, -3, 466, 470, 471, 226, 519, 406, 0, -3, 471, 467, 466, 406, 98, 226, 0, -3, 467, 471, 472, 98, 406, 232, 0, -3, 472, 468, 467, 232, 43, 98, 0, -3, 468, 472, 473, 43, 232, 345, 0, -3, 473, 469, 468, 345, 372, 43, 0, -3, 409, 413, 474, 241, 121, 227, 0, -3, 474, 470, 409, 227, 519, 241, 0, -3, 470, 474, 475, 519, 227, 469, 0, -3, 475, 471, 470, 469, 406, 519, 0, -3, 471, 475, 476, 406, 469, 258, 0, -3, 476, 472, 471, 258, 232, 406, 0, -3, 472, 476, 477, 232, 258, 271, 0, -3, 477, 473, 472, 271, 345, 232, 0, -3, 413, 417, 478, 121, 351, 157, 0, -3, 478, 474, 413, 157, 227, 121, 0, -3, 474, 478, 479, 227, 157, 80, 0, -3, 479, 475, 474, 80, 469, 227, 0, -3, 475, 479, 480, 469, 80, 489, 0, -3, 480, 476, 475, 489, 258, 469, 0, -3, 476, 480, 481, 258, 489, 277, 0, -3, 481, 477, 476, 277, 271, 258, 0, -3, 417, 421, 482, 351, 412, 153, 0, -3, 482, 478, 417, 153, 157, 351, 0, -3, 478, 482, 483, 157, 153, 324, 0, -3, 483, 479, 478, 324, 80, 157, 0, -3, 479, 483, 484, 80, 324, 339, 0, -3, 484, 480, 479, 339, 489, 80, 0, -3, 480, 484, 485, 489, 339, 88, 0, -3, 485, 481, 480, 88, 277, 489, 0, -3, 421, 425, 486, 412, 39, 6, 0, -3, 486, 482, 421, 6, 153, 412, 0, -3, 482, 486, 487, 153, 6, 8, 0, -3, 487, 483, 482, 8, 324, 153, 0, -3, 483, 487, 488, 324, 8, 16, 0, -3, 488, 484, 483, 16, 339, 324, 0, -3, 484, 488, 489, 339, 16, 289, 0, -3, 489, 485, 484, 289, 88, 339, 0, -3, 425, 429, 490, 39, 249, 99, 0, -3, 490, 486, 425, 99, 6, 39, 0, -3, 486, 490, 491, 6, 99, 200, 0, -3, 491, 487, 486, 200, 8, 6, 0, -3, 487, 491, 492, 8, 200, 150, 0, -3, 492, 488, 487, 150, 16, 8, 0, -3, 488, 492, 493, 16, 150, 493, 0, -3, 493, 489, 488, 493, 289, 16, 0, -3, 429, 433, 494, 249, 506, 291, 0, -3, 494, 490, 429, 291, 99, 249, 0, -3, 490, 494, 495, 99, 291, 64, 0, -3, 495, 491, 490, 64, 200, 99, 0, -3, 491, 495, 496, 200, 64, 19, 0, -3, 496, 492, 491, 19, 150, 200, 0, -3, 492, 496, 497, 150, 19, 433, 0, -3, 497, 493, 492, 433, 493, 150, 0, -3, 433, 437, 498, 506, 59, 203, 0, -3, 498, 494, 433, 203, 291, 506, 0, -3, 494, 498, 499, 291, 203, 374, 0, -3, 499, 495, 494, 374, 64, 291, 0, -3, 495, 499, 500, 64, 374, 307, 0, -3, 500, 496, 495, 307, 19, 64, 0, -3, 496, 500, 501, 19, 307, 358, 0, -3, 501, 497, 496, 358, 433, 19, 0, -3, 437, 441, 502, 59, 498, 256, 0, -3, 502, 498, 437, 256, 203, 59, 0, -3, 498, 502, 503, 203, 256, 132, 0, -3, 503, 499, 498, 132, 374, 203, 0, -3, 499, 503, 504, 374, 132, 492, 0, -3, 504, 500, 499, 492, 307, 374, 0, -3, 500, 504, 505, 307, 492, 67, 0, -3, 505, 501, 500, 67, 358, 307, 0, -3, 441, 445, 506, 498, 388, 487, 0, -3, 506, 502, 441, 487, 256, 498, 0, -3, 502, 506, 507, 256, 487, 206, 0, -3, 507, 503, 502, 206, 132, 256, 0, -3, 503, 507, 508, 132, 206, 515, 0, -3, 508, 504, 503, 515, 492, 132, 0, -3, 504, 508, 509, 492, 515, 527, 0, -3, 509, 505, 504, 527, 67, 492, 0, -3, 445, 449, 510, 388, 72, 423, 0, -3, 510, 506, 445, 423, 487, 388, 0, -3, 506, 510, 511, 487, 423, 352, 0, -3, 511, 507, 506, 352, 206, 487, 0, -3, 507, 511, 512, 206, 352, 224, 0, -3, 512, 508, 507, 224, 515, 206, 0, -3, 508, 512, 513, 515, 224, 2, 0, -3, 513, 509, 508, 2, 527, 515, 0, -3, 449, 453, 514, 72, 139, 418, 0, -3, 514, 510, 449, 418, 423, 72, 0, -3, 510, 514, 515, 423, 418, 341, 0, -3, 515, 511, 510, 341, 352, 423, 0, -3, 511, 515, 516, 352, 341, 359, 0, -3, 516, 512, 511, 359, 224, 352, 0, -3, 512, 516, 517, 224, 359, 360, 0, -3, 517, 513, 512, 360, 2, 224, 0, -3, 453, 457, 518, 139, 57, 24, 0, -3, 518, 514, 453, 24, 418, 139, 0, -3, 514, 518, 519, 418, 24, 25, 0, -3, 519, 515, 514, 25, 341, 418, 0, -3, 515, 519, 520, 341, 25, 41, 0, -3, 520, 516, 515, 41, 359, 341, 0, -3, 516, 520, 521, 359, 41, 314, 0, -3, 521, 517, 516, 314, 360, 359, 0, -3, 457, 461, 522, 57, 264, 120, 0, -3, 522, 518, 457, 120, 24, 57, 0, -3, 518, 522, 523, 24, 120, 223, 0, -3, 523, 519, 518, 223, 25, 24, 0, -3, 519, 523, 524, 25, 223, 171, 0, -3, 524, 520, 519, 171, 41, 25, 0, -3, 520, 524, 525, 41, 171, 514, 0, -3, 525, 521, 520, 514, 314, 41, 0, -3, 461, 465, 526, 264, 526, 316, 0, -3, 526, 522, 461, 316, 120, 264, 0, -3, 522, 526, 527, 120, 316, 85, 0, -3, 527, 523, 522, 85, 223, 120, 0, -3, 523, 527, 528, 223, 85, 50, 0, -3, 528, 524, 523, 50, 171, 223, 0, -3, 524, 528, 529, 171, 50, 454, 0, -3, 529, 525, 524, 454, 514, 171, 0, -3, 465, 405, 466, 526, 75, 226, 0, -3, 466, 526, 465, 226, 316, 526, 0, -3, 526, 466, 467, 316, 226, 98, 0, -3, 467, 527, 526, 98, 85, 316, 0, -3, 527, 467, 468, 85, 98, 43, 0, -3, 468, 528, 527, 43, 50, 85, 0, -3, 528, 468, 469, 50, 43, 372, 0, -3, 469, 529, 528, 372, 454, 50, 0 -}; - - -const int strip_vertices[] = { -508, 508, 504, 509, 504, 505, 500, 501, 496, 497, 492, 493, 488, 489, 484, 485, 480, 481, 476, 477, 472, 473, -1, -476, 475, 480, 479, 484, 483, 488, 487, 492, 491, 496, 495, 500, 499, 504, 499, 503, 498, 502, 437, 441, -1, -527, 526, 467, 466, 471, 470, 475, 474, 479, 478, 483, 482, 487, 486, 491, 490, 495, 494, 499, 494, 498, -1, -490, 490, 425, 486, 421, 482, 417, 478, 413, 474, 409, 470, 405, 466, 465, 526, 465, 461, 460, 456, 455, 451, -1, -405, 465, 464, 460, 459, 455, 454, 450, -1, -455, 451, 450, 446, 450, 401, 454, 458, 459, 463, 464, 404, 405, 404, 409, 408, 413, 412, 417, 416, 421, 420, -1, -421, 420, 425, 420, 424, 419, 423, 418, 422, 418, 401, 414, 410, 415, 411, 416, 411, 412, 407, 408, 403, 404, 403, 463, -1, -418, 418, 414, 419, 415, 420, 416, -1, -407, 403, 402, 462, -1, -403, 463, 462, 458, 462, 401, 402, 406, 407, 406, 411, 406, 410, 401, -1, -494, 494, 498, 433, 437, 432, 436, 431, 435, 430, 434, 430, 401, 426, 422, 427, 423, 428, 424, 429, 425, 490, -1, -430, 430, 426, 431, 427, 432, 428, 433, 429, 494, 490, -1, -437, 437, 441, 436, 440, 435, 439, 434, 438, 401, 442, 446, 447, 451, 452, 456, 457, 461, 522, 526, 527, -1, -452, 448, 447, -1, -510, 445, 449, 444, 448, 443, 447, 443, 442, 443, 438, 443, 439, 444, 440, 445, 441, 506, 502, 507, 503, -1, -510, 506, 445, -1, -507, 506, 511, 510, 515, 510, 514, 449, 453, 448, 453, 452, 457, -1, -527, 523, 522, 518, 457, 518, 453, 518, 514, 519, 515, -1, -523, 519, 518, -1, -504, 503, 508, 507, 512, 511, 516, 515, 520, 519, 524, 523, 528, 527, 468, 467, 472, 471, 476, 475, -1, -472, 473, 468, 469, 528, 529, 524, 525, 520, 521, 516, 517, 512, 513, 508, 509, -1, -211, 211, 214, 210, 209, -1, -212, 215, 216, 219, 220, 223, 220, 211, 217, 214, 213, 209, 213, 208, 212, 147, -1, -220, 217, 216, 213, 212, -1, -251, 251, 248, 252, 249, 253, 250, 253, 211, 256, 210, 255, 209, 254, 208, 207, 147, 206, 147, 146, 147, 151, 212, 215, -1, -206, 206, 202, 207, 203, 254, 251, 255, 252, 256, 253, -1, -223, 223, 222, 219, 218, 215, 155, 151, 150, 146, 145, 146, 205, 206, 201, 202, 197, 202, 198, 203, 199, 251, 248, -1, -145, 149, 150, 154, 155, 159, 218, 221, 222, 225, 226, 229, -1, -204, 204, 145, 144, 149, 148, 149, 153, 154, 158, 159, 163, 221, 224, 225, 228, 229, 232, 229, 211, 226, 223, 222, -1, -224, 224, 167, 163, 162, 158, 157, 153, 152, 148, 87, 148, 83, 144, 143, 204, 139, 200, 135, 196, 131, 192, -1, -82, 83, 142, 143, 138, 139, 134, 135, 130, 131, 126, 127, 122, 123, 118, 123, 119, 184, 180, 185, 181, -1, -81, 82, 141, 142, 137, 138, 133, 134, 129, 130, 125, 126, 121, 122, 117, 118, 113, 114, 109, 110, -1, -80, 81, 140, 141, 136, 137, 132, 133, 128, 129, 124, 125, 120, 121, 116, 117, 112, 113, 108, 109, -1, -4, 80, 79, 140, 74, 136, 69, 132, 64, 128, 59, 124, 54, 120, 49, 116, 44, 112, 39, 108, -1, -79, 79, 73, 74, 68, 69, 63, 64, 58, 59, 53, 54, 48, 49, 48, 43, 42, 37, 36, 31, 30, 31, 25, -1, -42, 42, 48, 47, 53, 52, 58, 57, 63, 62, 68, 67, 73, 72, 78, 77, 3, 2, 8, 7, 13, -1, -36, 36, 42, 41, 47, 46, 52, 51, 57, 56, 62, 61, 67, 66, 72, 71, 77, 76, 2, 1, 7, -1, -66, 66, 60, 61, 55, 56, 50, 51, 45, 46, 40, 41, 35, 36, 30, -1, -31, 31, 25, 26, 20, 21, 15, 16, 10, 11, 5, 6, 0, 1, 75, 76, 70, 71, 65, 66, 60, -1, -1, 1, 7, 6, 12, 11, 17, 16, 22, 21, 27, 26, 32, 31, 32, 37, 38, 43, 44, 49, -1, -7, 7, 13, 12, 18, 17, 23, 22, 28, 27, 33, 32, 33, 38, -1, -44, 44, 38, 39, 33, 34, 28, 29, 23, 24, 18, 19, 13, 14, 8, 9, 3, 4, 78, 79, 73, -1, -39, 108, 34, 104, 29, 100, 24, 96, 19, 92, 14, 88, 9, 84, 4, 84, 80, 85, 81, 86, 81, 82, -1, -108, 109, 104, 105, 100, 101, 96, 97, 92, 93, 88, 89, 84, 85, -1, -109, 110, 105, 106, 101, 102, 97, 98, 93, 94, 89, 90, 85, 86, -1, -118, 119, 114, 115, 110, 111, 106, 107, 102, 103, 98, 99, 94, 95, 90, 91, 86, 87, 82, 83, -1, -111, 115, 176, -1, -107, 111, 172, 176, 177, -1, -103, 107, 168, 172, 173, 177, 178, -1, -99, 103, 164, 168, 169, 173, 174, 178, 179, -1, -95, 99, 160, 164, 165, 169, 170, 174, 175, 179, 233, -1, -91, 95, 156, 160, 161, 165, 166, 170, 171, 175, 230, 233, 234, -1, -87, 91, 152, 156, 157, 161, 162, 166, 167, 171, 227, 230, 231, 234, 235, 234, 238, 234, 237, 233, 236, 179, -1, -185, 185, 181, 186, 182, 187, 183, 239, 236, 240, 237, 241, 238, 211, 235, 232, 231, 228, 227, 224, 167, -1, -236, 179, 183, 178, 182, 177, 181, 176, 180, 115, 119, -1, -131, 192, 127, 188, 123, 188, 184, 189, 185, 190, 186, 191, 187, 242, 239, 243, 240, 244, 241, 244, 211, 247, -1, -192, 192, 188, 193, 189, 194, 190, 195, 191, 245, 242, 246, 243, 247, 244, -1, -211, 247, 250, 246, 249, 245, 248, 195, 199, 194, 198, 193, 197, 192, 197, 196, 201, 200, 205, 204, 145, -1, -393, 393, 394, 398, 399, 371, -1, -399, 395, 394, -1, -363, 363, 393, 397, 398, 370, 371, 375, -1, -379, 375, 374, 370, 369, 397, 368, 363, 362, -1, -396, 395, 400, 399, 372, 371, 376, 375, 380, 379, 384, 383, 388, 387, 392, 391, 396, 391, 395, 390, 394, -1, -374, 378, 379, 378, 383, 382, 387, 386, 391, 386, 390, 385, 389, 353, 358, 352, 357, 351, 356, 350, 355, -1, -341, 341, 347, 346, 352, 346, 351, 345, 350, -1, -335, 334, 340, 339, 345, 344, 350, 349, 355, 354, -1, -390, 390, 394, 389, 393, 358, 363, 357, 362, 356, 361, 355, 360, 354, 360, 359, 365, 364, 330, 329, 335, 334, -1, -345, 346, 340, 341, 335, 336, 330, 331, 365, 366, 360, 366, 361, 367, 362, 367, 368, 333, 369, 373, 374, 378, -1, -353, 353, 348, 385, 381, 386, 381, 382, 377, 378, 377, 373, 338, 333, 332, 367, 332, 366, 332, 331, 337, 336, 342, 341, 347, -1, -332, 337, 338, 343, 377, 343, 381, 343, 348, 342, 348, 347, 353, 352, -1, -337, 342, 343, -1, -314, 314, 319, 318, 323, 322, 323, 327, -1, -309, 309, 314, 313, 318, 317, 322, 321, 322, 326, 327, 299, -1, -271, 271, 309, 276, 313, 281, 317, 286, 321, 291, 321, 325, 326, 298, 299, 303, -1, -265, 265, 271, 270, 276, 275, 281, 280, 286, 285, 291, 290, 291, 296, 325, 297, 298, 302, 303, 307, -1, -259, 259, 265, 264, 270, 269, 275, 274, 280, 279, 285, 284, 290, 289, 290, 295, 296, 261, 297, 301, 302, 306, 307, 311, -1, -293, 293, 259, 258, 264, 263, 269, 268, 274, 273, 279, 278, 284, 283, 289, 288, 289, 294, 295, 260, 261, 266, -1, -309, 305, 271, 266, 265, 260, 259, 294, 293, 288, 287, 288, 282, 283, 277, 278, 272, 273, 267, 268, 262, -1, -268, 268, 262, 263, 257, 258, 292, 293, 287, -1, -261, 266, 301, 305, 306, 310, 311, 315, 316, 320, -1, -316, 316, 311, 312, 307, 308, 303, 304, 299, 300, 327, 328, 323, 324, 319, 320, 319, 315, 314, 310, 309, 305, -1 -}; - - -const int strip_normals[] = { -515, 515, 492, 527, 492, 67, 307, 358, 19, 433, 150, 493, 16, 289, 339, 88, 489, 277, 258, 271, 232, 345, -1, -258, 469, 489, 80, 339, 324, 16, 8, 150, 200, 19, 64, 307, 374, 492, 374, 132, 203, 256, 59, 498, -1, -85, 316, 98, 226, 406, 519, 469, 227, 80, 157, 324, 153, 8, 6, 200, 99, 64, 291, 374, 291, 203, -1, -99, 99, 39, 6, 412, 153, 351, 157, 121, 227, 241, 519, 75, 226, 526, 316, 526, 264, 389, 178, 51, 82, -1, -75, 526, 86, 389, 387, 51, 70, 107, -1, -51, 82, 107, 212, 107, 235, 70, 442, 387, 253, 86, 443, 75, 443, 241, 202, 121, 281, 351, 436, 412, 376, -1, -412, 376, 39, 376, 158, 361, 21, 90, 52, 90, 235, 479, 263, 36, 196, 436, 196, 281, 306, 202, 119, 443, 119, 253, -1, -90, 90, 479, 361, 36, 376, 436, -1, -306, 119, 40, 450, -1, -119, 253, 450, 442, 450, 235, 40, 189, 306, 189, 196, 189, 263, 235, -1, -291, 291, 203, 506, 59, 65, 169, 229, 96, 432, 302, 432, 235, 424, 52, 373, 21, 375, 158, 249, 39, 99, -1, -432, 432, 424, 229, 373, 65, 375, 506, 249, 291, 99, -1, -59, 59, 498, 169, 460, 96, 30, 302, 452, 235, 525, 212, 299, 82, 391, 178, 57, 264, 120, 316, 85, -1, -391, 166, 299, -1, -423, 388, 72, 9, 166, 456, 299, 456, 525, 456, 452, 456, 30, 9, 460, 388, 498, 487, 256, 206, 132, -1, -423, 487, 388, -1, -206, 487, 352, 423, 341, 423, 418, 72, 139, 166, 139, 391, 57, -1, -85, 223, 120, 24, 57, 24, 139, 24, 418, 25, 341, -1, -223, 25, 24, -1, -492, 132, 515, 206, 224, 352, 359, 341, 41, 25, 171, 223, 50, 85, 43, 98, 232, 406, 258, 469, -1, -232, 345, 43, 372, 50, 454, 171, 514, 41, 314, 359, 360, 224, 2, 515, 527, -1, -393, 393, 0, 216, 349, -1, -486, 215, 327, 91, 177, 254, 177, 393, 512, 0, 231, 349, 231, 279, 486, 246, -1, -177, 512, 327, 231, 486, -1, -462, 462, 144, 76, 179, 464, 298, 464, 393, 128, 216, 113, 349, 500, 279, 101, 246, 7, 246, 395, 246, 384, 486, 215, -1, -7, 7, 195, 101, 444, 500, 462, 113, 76, 128, 464, -1, -254, 254, 285, 91, 149, 215, 83, 384, 325, 395, 520, 395, 315, 7, 143, 195, 129, 195, 461, 444, 475, 462, 144, -1, -520, 308, 325, 415, 83, 297, 149, 504, 285, 162, 278, 446, -1, -403, 403, 520, 276, 308, 404, 308, 272, 415, 416, 297, 317, 504, 125, 162, 60, 446, 110, 446, 393, 278, 254, 285, -1, -125, 125, 459, 317, 334, 416, 137, 272, 47, 404, 511, 404, 1, 276, 54, 403, 45, 370, 490, 210, 29, 184, -1, -336, 1, 251, 54, 164, 45, 463, 490, 378, 29, 453, 147, 222, 218, 301, 218, 242, 310, 130, 528, 34, -1, -26, 336, 148, 251, 269, 164, 419, 463, 293, 378, 420, 453, 333, 222, 208, 301, 294, 56, 127, 228, -1, -131, 26, 371, 148, 284, 269, 311, 419, 95, 293, 350, 420, 377, 333, 474, 208, 396, 294, 357, 127, -1, -116, 131, 273, 371, 480, 284, 104, 311, 257, 95, 348, 350, 447, 377, 313, 474, 322, 396, 28, 357, -1, -273, 273, 183, 480, 347, 104, 53, 257, 181, 348, 124, 447, 428, 313, 428, 435, 11, 270, 193, 305, 69, 305, 386, -1, -11, 11, 428, 409, 124, 382, 181, 161, 53, 481, 347, 408, 183, 319, 151, 422, 448, 4, 165, 134, 394, -1, -193, 193, 11, 495, 409, 44, 382, 385, 161, 478, 481, 320, 408, 37, 319, 524, 422, 328, 4, 465, 134, -1, -37, 37, 431, 320, 136, 478, 513, 385, 27, 44, 467, 495, 115, 193, 69, -1, -305, 305, 386, 20, 174, 182, 401, 211, 248, 106, 295, 309, 255, 465, 483, 328, 191, 524, 135, 37, 431, -1, -465, 465, 134, 309, 102, 106, 427, 211, 507, 182, 410, 20, 503, 305, 503, 270, 445, 435, 322, 313, -1, -134, 134, 394, 102, 455, 427, 5, 507, 23, 410, 405, 503, 405, 445, -1, -322, 322, 445, 28, 405, 138, 23, 485, 5, 234, 455, 74, 394, 180, 165, 49, 448, 116, 151, 273, 183, -1, -28, 357, 138, 268, 485, 287, 234, 81, 74, 78, 180, 103, 49, 220, 116, 220, 131, 476, 26, 38, 26, 336, -1, -357, 127, 268, 252, 287, 398, 81, 274, 78, 154, 103, 62, 220, 476, -1, -127, 228, 252, 141, 398, 440, 274, 363, 154, 190, 62, 488, 476, 38, -1, -301, 242, 56, 517, 228, 33, 141, 18, 440, 466, 363, 304, 190, 417, 488, 484, 38, 511, 336, 1, -1, -33, 517, 260, -1, -18, 33, 390, 260, 497, -1, -466, 18, 353, 390, 290, 497, 126, -1, -304, 466, 187, 353, 123, 290, 522, 126, 501, -1, -417, 304, 458, 187, 117, 123, 168, 522, 87, 501, 261, -1, -484, 417, 430, 458, 343, 117, 438, 168, 426, 87, 482, 261, 329, -1, -511, 484, 47, 430, 137, 343, 334, 438, 459, 426, 439, 482, 92, 329, 192, 329, 267, 329, 491, 261, 219, 501, -1, -528, 528, 34, 145, 46, 356, 105, 472, 219, 48, 491, 247, 267, 393, 192, 110, 92, 60, 439, 125, 459, -1, -219, 501, 105, 126, 46, 497, 34, 260, 130, 517, 242, -1, -29, 184, 147, 156, 218, 156, 310, 402, 528, 146, 145, 17, 356, 411, 472, 364, 48, 441, 247, 441, 393, 509, -1, -184, 184, 156, 63, 402, 354, 146, 335, 17, 239, 411, 13, 364, 509, 441, -1, -393, 509, 298, 13, 179, 239, 144, 335, 475, 354, 461, 63, 129, 184, 129, 210, 143, 370, 315, 403, 520, -1, -296, 296, 160, 133, 344, 330, -1, -344, 323, 160, -1, -159, 159, 296, 275, 133, 22, 330, 523, -1, -198, 523, 77, 22, 286, 275, 437, 159, 499, -1, -280, 323, 108, 344, 338, 330, 259, 523, 366, 198, 381, 240, 283, 10, 368, 243, 280, 243, 323, 35, 160, -1, -77, 471, 198, 471, 240, 250, 10, 303, 243, 303, 35, 230, 282, 362, 163, 73, 318, 292, 93, 477, 262, -1, -413, 413, 326, 399, 73, 399, 292, 100, 477, -1, -122, 355, 414, 61, 100, 55, 477, 508, 262, 365, -1, -35, 35, 160, 282, 296, 163, 159, 318, 499, 93, 505, 262, 340, 365, 340, 140, 68, 510, 518, 3, 122, 355, -1, -100, 399, 414, 413, 122, 111, 518, 213, 68, 167, 340, 167, 505, 245, 499, 245, 437, 346, 286, 79, 77, 471, -1, -362, 362, 221, 230, 516, 303, 516, 250, 207, 471, 207, 79, 521, 346, 468, 245, 468, 167, 468, 213, 473, 111, 204, 413, 326, -1, -468, 473, 521, 217, 207, 217, 516, 217, 221, 204, 221, 326, 362, 73, -1, -473, 204, 217, -1, -94, 94, 185, 529, 429, 209, 429, 176, -1, -379, 379, 94, 199, 529, 367, 209, 172, 209, 66, 176, 496, -1, -312, 312, 379, 238, 199, 15, 367, 332, 172, 197, 172, 451, 66, 84, 496, 186, -1, -266, 266, 312, 392, 238, 201, 15, 14, 332, 457, 197, 383, 197, 225, 451, 502, 84, 265, 186, 205, -1, -236, 236, 266, 214, 392, 71, 201, 188, 14, 173, 457, 400, 383, 380, 383, 342, 225, 109, 502, 175, 265, 97, 205, 118, -1, -152, 152, 236, 337, 214, 58, 71, 369, 188, 434, 173, 114, 400, 288, 380, 42, 380, 397, 342, 32, 109, 331, -1, -379, 170, 312, 331, 266, 32, 236, 397, 152, 42, 194, 42, 407, 288, 142, 114, 12, 434, 233, 369, 244, -1, -369, 369, 244, 58, 425, 337, 321, 152, 194, -1, -109, 331, 175, 170, 97, 300, 118, 421, 31, 89, -1, -31, 31, 118, 237, 205, 449, 186, 470, 496, 494, 176, 155, 429, 112, 185, 89, 185, 421, 94, 300, 379, 170, -1 -}; - -#else /* defined(_WIN32_WCE) */ - -/* - * Original teapot code copyright follows: - */ - -/* - * (c) Copyright 1993, Silicon Graphics, Inc. - * - * ALL RIGHTS RESERVED - * - * Permission to use, copy, modify, and distribute this software - * for any purpose and without fee is hereby granted, provided - * that the above copyright notice appear in all copies and that - * both the copyright notice and this permission notice appear in - * supporting documentation, and that the name of Silicon - * Graphics, Inc. not be used in advertising or publicity - * pertaining to distribution of the software without specific, - * written prior permission. - * - * THE MATERIAL EMBODIED ON THIS SOFTWARE IS PROVIDED TO YOU - * "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR - * OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF - * MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO - * EVENT SHALL SILICON GRAPHICS, INC. BE LIABLE TO YOU OR ANYONE - * ELSE FOR ANY DIRECT, SPECIAL, INCIDENTAL, INDIRECT OR - * CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER, - * INCLUDING WITHOUT LIMITATION, LOSS OF PROFIT, LOSS OF USE, - * SAVINGS OR REVENUE, OR THE CLAIMS OF THIRD PARTIES, WHETHER OR - * NOT SILICON GRAPHICS, INC. HAS BEEN ADVISED OF THE POSSIBILITY - * OF SUCH LOSS, HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, - * ARISING OUT OF OR IN CONNECTION WITH THE POSSESSION, USE OR - * PERFORMANCE OF THIS SOFTWARE. - * - * US Government Users Restricted Rights - * - * Use, duplication, or disclosure by the Government is subject to - * restrictions set forth in FAR 52.227.19(c)(2) or subparagraph - * (c)(1)(ii) of the Rights in Technical Data and Computer - * Software clause at DFARS 252.227-7013 and/or in similar or - * successor clauses in the FAR or the DOD or NASA FAR - * Supplement. Unpublished-- rights reserved under the copyright - * laws of the United States. Contractor/manufacturer is Silicon - * Graphics, Inc., 2011 N. Shoreline Blvd., Mountain View, CA - * 94039-7311. - * - * OpenGL(TM) is a trademark of Silicon Graphics, Inc. - */ - -/* - * Rim, body, lid, and bottom data must be reflected in x and y; - * handle and spout data across the y axis only. - */ -static int patchdata[][16] = -{ - { 102, 103, 104, 105, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 }, /* rim */ - { 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27 }, /* body */ - { 24, 25, 26, 27, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40 }, - { 96, 96, 96, 96, 97, 98, 99, 100, 101, 101, 101, 101, 0, 1, 2, 3 }, /* lid */ - { 0, 1, 2, 3, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117 }, - { 118, 118, 118, 118, 124, 122, 119, 121, 123, 126, 125, 120, 40, 39, 38, 37 }, /* bottom */ - { 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56 }, /* handle */ - { 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 28, 65, 66, 67 }, - { 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83 }, /* spout */ - { 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95 } -}; - -static double cpdata[][3] = -{ - {0.2, 0, 2.7}, {0.2, -0.112, 2.7}, {0.112, -0.2, 2.7}, {0, - -0.2, 2.7}, {1.3375, 0, 2.53125}, {1.3375, -0.749, 2.53125}, - {0.749, -1.3375, 2.53125}, {0, -1.3375, 2.53125}, {1.4375, - 0, 2.53125}, {1.4375, -0.805, 2.53125}, {0.805, -1.4375, - 2.53125}, {0, -1.4375, 2.53125}, {1.5, 0, 2.4}, {1.5, -0.84, - 2.4}, {0.84, -1.5, 2.4}, {0, -1.5, 2.4}, {1.75, 0, 1.875}, - {1.75, -0.98, 1.875}, {0.98, -1.75, 1.875}, {0, -1.75, - 1.875}, {2, 0, 1.35}, {2, -1.12, 1.35}, {1.12, -2, 1.35}, - {0, -2, 1.35}, {2, 0, 0.9}, {2, -1.12, 0.9}, {1.12, -2, - 0.9}, {0, -2, 0.9}, {-2, 0, 0.9}, {2, 0, 0.45}, {2, -1.12, - 0.45}, {1.12, -2, 0.45}, {0, -2, 0.45}, {1.5, 0, 0.225}, - {1.5, -0.84, 0.225}, {0.84, -1.5, 0.225}, {0, -1.5, 0.225}, - {1.5, 0, 0.15}, {1.5, -0.84, 0.15}, {0.84, -1.5, 0.15}, {0, - -1.5, 0.15}, {-1.6, 0, 2.025}, {-1.6, -0.3, 2.025}, {-1.5, - -0.3, 2.25}, {-1.5, 0, 2.25}, {-2.3, 0, 2.025}, {-2.3, -0.3, - 2.025}, {-2.5, -0.3, 2.25}, {-2.5, 0, 2.25}, {-2.7, 0, - 2.025}, {-2.7, -0.3, 2.025}, {-3, -0.3, 2.25}, {-3, 0, - 2.25}, {-2.7, 0, 1.8}, {-2.7, -0.3, 1.8}, {-3, -0.3, 1.8}, - {-3, 0, 1.8}, {-2.7, 0, 1.575}, {-2.7, -0.3, 1.575}, {-3, - -0.3, 1.35}, {-3, 0, 1.35}, {-2.5, 0, 1.125}, {-2.5, -0.3, - 1.125}, {-2.65, -0.3, 0.9375}, {-2.65, 0, 0.9375}, {-2, - -0.3, 0.9}, {-1.9, -0.3, 0.6}, {-1.9, 0, 0.6}, {1.7, 0, - 1.425}, {1.7, -0.66, 1.425}, {1.7, -0.66, 0.6}, {1.7, 0, - 0.6}, {2.6, 0, 1.425}, {2.6, -0.66, 1.425}, {3.1, -0.66, - 0.825}, {3.1, 0, 0.825}, {2.3, 0, 2.1}, {2.3, -0.25, 2.1}, - {2.4, -0.25, 2.025}, {2.4, 0, 2.025}, {2.7, 0, 2.4}, {2.7, - -0.25, 2.4}, {3.3, -0.25, 2.4}, {3.3, 0, 2.4}, {2.8, 0, - 2.475}, {2.8, -0.25, 2.475}, {3.525, -0.25, 2.49375}, - {3.525, 0, 2.49375}, {2.9, 0, 2.475}, {2.9, -0.15, 2.475}, - {3.45, -0.15, 2.5125}, {3.45, 0, 2.5125}, {2.8, 0, 2.4}, - {2.8, -0.15, 2.4}, {3.2, -0.15, 2.4}, {3.2, 0, 2.4}, {0, 0, - 3.15}, {0.8, 0, 3.15}, {0.8, -0.45, 3.15}, {0.45, -0.8, - 3.15}, {0, -0.8, 3.15}, {0, 0, 2.85}, {1.4, 0, 2.4}, {1.4, - -0.784, 2.4}, {0.784, -1.4, 2.4}, {0, -1.4, 2.4}, {0.4, 0, - 2.55}, {0.4, -0.224, 2.55}, {0.224, -0.4, 2.55}, {0, -0.4, - 2.55}, {1.3, 0, 2.55}, {1.3, -0.728, 2.55}, {0.728, -1.3, - 2.55}, {0, -1.3, 2.55}, {1.3, 0, 2.4}, {1.3, -0.728, 2.4}, - {0.728, -1.3, 2.4}, {0, -1.3, 2.4}, {0, 0, 0}, {1.425, - -0.798, 0}, {1.5, 0, 0.075}, {1.425, 0, 0}, {0.798, -1.425, - 0}, {0, -1.5, 0.075}, {0, -1.425, 0}, {1.5, -0.84, 0.075}, - {0.84, -1.5, 0.075} -}; - -static double tex[2][2][2] = -{ - { {0.0, 0.0}, {1.0, 0.0} }, - { {0.0, 1.0}, {1.0, 1.0} } -}; -#endif /* defined(_WIN32_WCE) */ - - -#endif /* FREEGLUT_TEAPOT_DATA_H */ - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_videoresize.c b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_videoresize.c deleted file mode 100644 index 2b27dde..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_videoresize.c +++ /dev/null @@ -1,50 +0,0 @@ -/* - * freeglut_videoresize.c - * - * Video resize functions (as defined by GLUT API) - * - * Copyright (c) 1999-2000 Pawel W. Olszta. All Rights Reserved. - * Written by Pawel W. Olszta, - * Creation date: Thu Dec 16 1999 - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included - * in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - * PAWEL W. OLSZTA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER - * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - */ - -#include "freeglut.h" -#include "freeglut_internal.h" - -/* - * NOTE: functions declared in this file probably will not be implemented. - */ - -/* -- INTERFACE FUNCTIONS -------------------------------------------------- */ - -int FGAPIENTRY glutVideoResizeGet( GLenum eWhat ) { return( 0x00 ); } -void FGAPIENTRY glutSetupVideoResizing( void ) { /* Not implemented */ } -void FGAPIENTRY glutStopVideoResizing( void ) { /* Not implemented */ } -void FGAPIENTRY glutVideoResize( int x, int y, int w, int h ) { /* Not implemented */ } -void FGAPIENTRY glutVideoPan( int x, int y, int w, int h ) { /* Not implemented */ } - -/*** END OF FILE ***/ - - - - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_window.c b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_window.c deleted file mode 100644 index 176487e..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/freeglut_window.c +++ /dev/null @@ -1,1743 +0,0 @@ -/* - * freeglut_window.c - * - * Window management methods. - * - * Copyright (c) 1999-2000 Pawel W. Olszta. All Rights Reserved. - * Written by Pawel W. Olszta, - * Creation date: Fri Dec 3 1999 - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included - * in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - * PAWEL W. OLSZTA BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER - * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - */ - -#define FREEGLUT_BUILDING_LIB -#include "freeglut.h" -#include "freeglut_internal.h" - -#if TARGET_HOST_POSIX_X11 -#include /* LONG_MAX */ -#endif - -#if defined(_WIN32_WCE) -# include -# ifdef FREEGLUT_LIB_PRAGMAS -# pragma comment( lib, "Aygshell.lib" ) -# endif - -static wchar_t* fghWstrFromStr(const char* str) -{ - int i,len=strlen(str); - wchar_t* wstr = (wchar_t*)malloc(2*len+2); - for(i=0; i 0 ) { - ATTRIB_VAL( GLX_AUX_BUFFERS, numAuxBuffers ); - } - - if( fgState.DisplayMode & GLUT_SRGB ) { - ATTRIB_VAL( GLX_FRAMEBUFFER_SRGB_CAPABLE_ARB, True ); - } - - if (fgState.DisplayMode & GLUT_MULTISAMPLE) { - ATTRIB_VAL(GLX_SAMPLE_BUFFERS, 1); - ATTRIB_VAL(GLX_SAMPLES, fgState.SampleNumber); - } - - /* Push a terminator at the end of the list */ - ATTRIB( None ); - - { - GLXFBConfig * fbconfigArray; /* Array of FBConfigs */ - GLXFBConfig * fbconfig; /* The FBConfig we want */ - int fbconfigArraySize; /* Number of FBConfigs in the array */ - - - /* Get all FBConfigs that match "attributes". */ - fbconfigArray = glXChooseFBConfig( fgDisplay.Display, - fgDisplay.Screen, - attributes, - &fbconfigArraySize ); - - if (fbconfigArray != NULL) - { - int result; /* Returned by glXGetFBConfigAttrib, not checked. */ - - - if( wantIndexedMode ) - { - /* - * In index mode, we want the largest buffer size, i.e. visual - * depth. Here, FBConfigs are sorted by increasing buffer size - * first, so FBConfigs with the largest size come last. - */ - - int bufferSizeMin, bufferSizeMax; - - /* Get bufferSizeMin. */ - result = - glXGetFBConfigAttrib( fgDisplay.Display, - fbconfigArray[0], - GLX_BUFFER_SIZE, - &bufferSizeMin ); - /* Get bufferSizeMax. */ - result = - glXGetFBConfigAttrib( fgDisplay.Display, - fbconfigArray[fbconfigArraySize - 1], - GLX_BUFFER_SIZE, - &bufferSizeMax ); - - if (bufferSizeMax > bufferSizeMin) - { - /* - * Free and reallocate fbconfigArray, keeping only FBConfigs - * with the largest buffer size. - */ - XFree(fbconfigArray); - - /* Add buffer size token at the end of the list. */ - where--; - ATTRIB_VAL( GLX_BUFFER_SIZE, bufferSizeMax ); - ATTRIB( None ); - - fbconfigArray = glXChooseFBConfig( fgDisplay.Display, - fgDisplay.Screen, - attributes, - &fbconfigArraySize ); - } - } - - /* - * We now have an array of FBConfigs, the first one being the "best" - * one. So we should return only this FBConfig: - * - * int fbconfigXID; - * - * - pick the XID of the FBConfig we want - * result = glXGetFBConfigAttrib( fgDisplay.Display, - * fbconfigArray[0], - * GLX_FBCONFIG_ID, - * &fbconfigXID ); - * - * - free the array - * XFree(fbconfigArray); - * - * - reset "attributes" with the XID - * where = 0; - * ATTRIB_VAL( GLX_FBCONFIG_ID, fbconfigXID ); - * ATTRIB( None ); - * - * - get our FBConfig only - * fbconfig = glXChooseFBConfig( fgDisplay.Display, - * fgDisplay.Screen, - * attributes, - * &fbconfigArraySize ); - * - * However, for some configurations (for instance multisampling with - * Mesa 6.5.2 and ATI drivers), this does not work: - * glXChooseFBConfig returns NULL, whereas fbconfigXID is a valid - * XID. Further investigation is needed. - * - * So, for now, we return the whole array of FBConfigs. This should - * not produce any side effects elsewhere. - */ - fbconfig = fbconfigArray; - } - else - { - fbconfig = NULL; - } - - return fbconfig; - } -} -#endif /* TARGET_HOST_POSIX_X11 */ - -/* - * Setup the pixel format for a Win32 window - */ -#if TARGET_HOST_MS_WINDOWS -/* The following include file is available from SGI but is not standard: - * #include - * So we copy the necessary parts out of it. - * XXX: should local definitions for extensions be put in a separate include file? - */ -typedef const char * (WINAPI * PFNWGLGETEXTENSIONSSTRINGARBPROC) (HDC hdc); - -typedef BOOL (WINAPI * PFNWGLCHOOSEPIXELFORMATARBPROC) (HDC hdc, const int *piAttribIList, const FLOAT *pfAttribFList, UINT nMaxFormats, int *piFormats, UINT *nNumFormats); - -#define WGL_DRAW_TO_WINDOW_ARB 0x2001 -#define WGL_ACCELERATION_ARB 0x2003 -#define WGL_SUPPORT_OPENGL_ARB 0x2010 -#define WGL_DOUBLE_BUFFER_ARB 0x2011 -#define WGL_COLOR_BITS_ARB 0x2014 -#define WGL_ALPHA_BITS_ARB 0x201B -#define WGL_DEPTH_BITS_ARB 0x2022 -#define WGL_STENCIL_BITS_ARB 0x2023 -#define WGL_FULL_ACCELERATION_ARB 0x2027 - -#define WGL_SAMPLE_BUFFERS_ARB 0x2041 -#define WGL_SAMPLES_ARB 0x2042 - -#define WGL_TYPE_RGBA_FLOAT_ARB 0x21A0 - -#define WGL_FRAMEBUFFER_SRGB_CAPABLE_ARB 0x20A9 - -#ifndef WGL_ARB_create_context -#define WGL_ARB_create_context 1 -#ifdef WGL_WGLEXT_PROTOTYPES -extern HGLRC WINAPI wglCreateContextAttribsARB (HDC, HGLRC, const int *); -#endif /* WGL_WGLEXT_PROTOTYPES */ -typedef HGLRC (WINAPI * PFNWGLCREATECONTEXTATTRIBSARBPROC) (HDC hDC, HGLRC hShareContext, const int *attribList); - -#define WGL_CONTEXT_MAJOR_VERSION_ARB 0x2091 -#define WGL_CONTEXT_MINOR_VERSION_ARB 0x2092 -#define WGL_CONTEXT_LAYER_PLANE_ARB 0x2093 -#define WGL_CONTEXT_FLAGS_ARB 0x2094 -#define WGL_CONTEXT_PROFILE_MASK_ARB 0x9126 - -#define WGL_CONTEXT_DEBUG_BIT_ARB 0x0001 -#define WGL_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB 0x0002 - -#define WGL_CONTEXT_CORE_PROFILE_BIT_ARB 0x00000001 -#define WGL_CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB 0x00000002 - -#define ERROR_INVALID_VERSION_ARB 0x2095 -#define ERROR_INVALID_PROFILE_ARB 0x2096 -#endif - -static void fghFillContextAttributes( int *attributes ) { - int where = 0, contextFlags, contextProfile; - - if ( !fghIsLegacyContextVersionRequested() ) { - ATTRIB_VAL( WGL_CONTEXT_MAJOR_VERSION_ARB, fgState.MajorVersion ); - ATTRIB_VAL( WGL_CONTEXT_MINOR_VERSION_ARB, fgState.MinorVersion ); - } - - contextFlags = - fghMapBit( fgState.ContextFlags, GLUT_DEBUG, WGL_CONTEXT_DEBUG_BIT_ARB ) | - fghMapBit( fgState.ContextFlags, GLUT_FORWARD_COMPATIBLE, WGL_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB ); - if ( contextFlags != 0 ) { - ATTRIB_VAL( WGL_CONTEXT_FLAGS_ARB, contextFlags ); - } - - contextProfile = - fghMapBit( fgState.ContextProfile, GLUT_CORE_PROFILE, WGL_CONTEXT_CORE_PROFILE_BIT_ARB ) | - fghMapBit( fgState.ContextProfile, GLUT_COMPATIBILITY_PROFILE, WGL_CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB ); - if ( contextProfile != 0 ) { - ATTRIB_VAL( WGL_CONTEXT_PROFILE_MASK_ARB, contextProfile ); - } - - ATTRIB( 0 ); -} - -static int fghIsExtensionSupported( HDC hdc, const char *extension ) { - const char *pWglExtString; - PFNWGLGETEXTENSIONSSTRINGARBPROC wglGetEntensionsStringARB = - (PFNWGLGETEXTENSIONSSTRINGARBPROC) wglGetProcAddress("wglGetExtensionsStringARB"); - if ( wglGetEntensionsStringARB == NULL ) - { - return FALSE; - } - pWglExtString = wglGetEntensionsStringARB( hdc ); - return ( pWglExtString != NULL ) && ( strstr(pWglExtString, extension) != NULL ); -} - -void fgNewWGLCreateContext( SFG_Window* window ) -{ - HGLRC context; - int attributes[9]; - PFNWGLCREATECONTEXTATTRIBSARBPROC wglCreateContextAttribsARB; - - /* If nothing fancy has been required, leave the context as it is */ - if ( fghIsLegacyContextRequested() ) - { - return; - } - - wglMakeCurrent( window->Window.Device, window->Window.Context ); - - if ( !fghIsExtensionSupported( window->Window.Device, "WGL_ARB_create_context" ) ) - { - return; - } - - /* new context creation */ - fghFillContextAttributes( attributes ); - - wglCreateContextAttribsARB = (PFNWGLCREATECONTEXTATTRIBSARBPROC) wglGetProcAddress( "wglCreateContextAttribsARB" ); - if ( wglCreateContextAttribsARB == NULL ) - { - fgError( "wglCreateContextAttribsARB not found" ); - } - - context = wglCreateContextAttribsARB( window->Window.Device, 0, attributes ); - if ( context == NULL ) - { - fghContextCreationError(); - } - - wglMakeCurrent( NULL, NULL ); - wglDeleteContext( window->Window.Context ); - window->Window.Context = context; -} - -#if !defined(_WIN32_WCE) - -static void fghFillPFD( PIXELFORMATDESCRIPTOR *ppfd, HDC hdc, unsigned char layer_type ) -{ - int flags = PFD_DRAW_TO_WINDOW | PFD_SUPPORT_OPENGL; - if ( fgState.DisplayMode & GLUT_DOUBLE ) { - flags |= PFD_DOUBLEBUFFER; - } - if ( fgState.DisplayMode & GLUT_STEREO ) { - flags |= PFD_STEREO; - } - -//#if defined(_MSC_VER) -//#pragma message( "fgSetupPixelFormat(): there is still some work to do here!" ) -//#endif - - /* Specify which pixel format do we opt for... */ - ppfd->nSize = sizeof(PIXELFORMATDESCRIPTOR); - ppfd->nVersion = 1; - ppfd->dwFlags = flags; - - if( fgState.DisplayMode & GLUT_INDEX ) { - ppfd->iPixelType = PFD_TYPE_COLORINDEX; - ppfd->cRedBits = 0; - ppfd->cGreenBits = 0; - ppfd->cBlueBits = 0; - ppfd->cAlphaBits = 0; - } else { - ppfd->iPixelType = PFD_TYPE_RGBA; - ppfd->cRedBits = 8; - ppfd->cGreenBits = 8; - ppfd->cBlueBits = 8; - ppfd->cAlphaBits = ( fgState.DisplayMode & GLUT_ALPHA ) ? 8 : 0; - } - - ppfd->cColorBits = 24; - ppfd->cRedShift = 0; - ppfd->cGreenShift = 0; - ppfd->cBlueShift = 0; - ppfd->cAlphaShift = 0; - ppfd->cAccumBits = 0; - ppfd->cAccumRedBits = 0; - ppfd->cAccumGreenBits = 0; - ppfd->cAccumBlueBits = 0; - ppfd->cAccumAlphaBits = 0; - - /* Hmmm, or 32/0 instead of 24/8? */ - ppfd->cDepthBits = 24; - ppfd->cStencilBits = 8; - - ppfd->cAuxBuffers = fghNumberOfAuxBuffersRequested(); - ppfd->iLayerType = layer_type; - ppfd->bReserved = 0; - ppfd->dwLayerMask = 0; - ppfd->dwVisibleMask = 0; - ppfd->dwDamageMask = 0; - - ppfd->cColorBits = (BYTE) GetDeviceCaps( hdc, BITSPIXEL ); -} - -static void fghFillPixelFormatAttributes( int *attributes, const PIXELFORMATDESCRIPTOR *ppfd ) -{ - int where = 0; - - ATTRIB_VAL( WGL_DRAW_TO_WINDOW_ARB, GL_TRUE ); - ATTRIB_VAL( WGL_SUPPORT_OPENGL_ARB, GL_TRUE ); - ATTRIB_VAL( WGL_ACCELERATION_ARB, WGL_FULL_ACCELERATION_ARB ); - - ATTRIB_VAL( WGL_COLOR_BITS_ARB, ppfd->cColorBits ); - ATTRIB_VAL( WGL_ALPHA_BITS_ARB, ppfd->cAlphaBits ); - ATTRIB_VAL( WGL_DEPTH_BITS_ARB, ppfd->cDepthBits ); - ATTRIB_VAL( WGL_STENCIL_BITS_ARB, ppfd->cStencilBits ); - - ATTRIB_VAL( WGL_DOUBLE_BUFFER_ARB, ( fgState.DisplayMode & GLUT_DOUBLE ) != 0 ); - - if ( fgState.DisplayMode & GLUT_SRGB ) { - ATTRIB_VAL( WGL_FRAMEBUFFER_SRGB_CAPABLE_ARB, TRUE ); - } - - ATTRIB_VAL( WGL_SAMPLE_BUFFERS_ARB, GL_TRUE ); - ATTRIB_VAL( WGL_SAMPLES_ARB, fgState.SampleNumber ); - ATTRIB( 0 ); -} -#endif - -GLboolean fgSetupPixelFormat( SFG_Window* window, GLboolean checkOnly, - unsigned char layer_type ) -{ -#if defined(_WIN32_WCE) - return GL_TRUE; -#else - PIXELFORMATDESCRIPTOR pfd; - PIXELFORMATDESCRIPTOR* ppfd = &pfd; - int pixelformat; - - fghFillPFD( ppfd, window->Window.Device, layer_type ); - pixelformat = ChoosePixelFormat( window->Window.Device, ppfd ); - - /* windows hack for multismapling/sRGB */ - if ( ( fgState.DisplayMode & GLUT_MULTISAMPLE ) || - ( fgState.DisplayMode & GLUT_SRGB ) ) - { - HGLRC rc, rc_before=wglGetCurrentContext(); - HWND hWnd; - HDC hDC, hDC_before=wglGetCurrentDC(); - WNDCLASS wndCls; - - /* create a dummy window */ - ZeroMemory(&wndCls, sizeof(wndCls)); - wndCls.lpfnWndProc = DefWindowProc; - wndCls.hInstance = fgDisplay.Instance; - wndCls.style = CS_OWNDC | CS_HREDRAW | CS_VREDRAW; - wndCls.lpszClassName = _T("FREEGLUT_dummy"); - RegisterClass( &wndCls ); - - hWnd=CreateWindow(_T("FREEGLUT_dummy"), _T(""), WS_CLIPSIBLINGS | WS_CLIPCHILDREN | WS_OVERLAPPEDWINDOW , 0,0,0,0, 0, 0, fgDisplay.Instance, 0 ); - hDC=GetDC(hWnd); - SetPixelFormat( hDC, pixelformat, ppfd ); - - rc = wglCreateContext( hDC ); - wglMakeCurrent(hDC, rc); - - if ( fghIsExtensionSupported( hDC, "WGL_ARB_multisample" ) ) - { - PFNWGLCHOOSEPIXELFORMATARBPROC wglChoosePixelFormatARBProc = - (PFNWGLCHOOSEPIXELFORMATARBPROC) wglGetProcAddress("wglChoosePixelFormatARB"); - if ( wglChoosePixelFormatARBProc ) - { - int attributes[100]; - int iPixelFormat; - BOOL bValid; - float fAttributes[] = { 0, 0 }; - UINT numFormats; - fghFillPixelFormatAttributes( attributes, ppfd ); - bValid = wglChoosePixelFormatARBProc(window->Window.Device, attributes, fAttributes, 1, &iPixelFormat, &numFormats); - - if ( bValid && numFormats > 0 ) - { - pixelformat = iPixelFormat; - } - } - } - - wglMakeCurrent( hDC_before, rc_before); - wglDeleteContext(rc); - ReleaseDC(hWnd, hDC); - DestroyWindow(hWnd); - UnregisterClass(_T("FREEGLUT_dummy"), fgDisplay.Instance); - } - - return ( pixelformat != 0 ) && ( checkOnly || SetPixelFormat( window->Window.Device, pixelformat, ppfd ) ); -#endif /* defined(_WIN32_WCE) */ -} -#endif /* TARGET_HOST_MS_WINDOWS */ - -/* - * Sets the OpenGL context and the fgStructure "Current Window" pointer to - * the window structure passed in. - */ -void fgSetWindow ( SFG_Window *window ) -{ -#if TARGET_HOST_POSIX_X11 - if ( window ) - { - glXMakeContextCurrent( - fgDisplay.Display, - window->Window.Handle, - window->Window.Handle, - window->Window.Context - ); - - /* also register this window to receive spaceball events */ - fgSpaceballSetWindow(window); - } -#elif TARGET_HOST_MS_WINDOWS - if( fgStructure.CurrentWindow ) - ReleaseDC( fgStructure.CurrentWindow->Window.Handle, - fgStructure.CurrentWindow->Window.Device ); - - if ( window ) - { - window->Window.Device = GetDC( window->Window.Handle ); - wglMakeCurrent( - window->Window.Device, - window->Window.Context - ); - } -#endif - fgStructure.CurrentWindow = window; -} - - - -#if TARGET_HOST_POSIX_X11 - -#ifndef GLX_CONTEXT_MAJOR_VERSION_ARB -#define GLX_CONTEXT_MAJOR_VERSION_ARB 0x2091 -#endif - -#ifndef GLX_CONTEXT_MINOR_VERSION_ARB -#define GLX_CONTEXT_MINOR_VERSION_ARB 0x2092 -#endif - -#ifndef GLX_CONTEXT_FLAGS_ARB -#define GLX_CONTEXT_FLAGS_ARB 0x2094 -#endif - -#ifndef GLX_CONTEXT_PROFILE_MASK_ARB -#define GLX_CONTEXT_PROFILE_MASK_ARB 0x9126 -#endif - -#ifndef GLX_CONTEXT_DEBUG_BIT_ARB -#define GLX_CONTEXT_DEBUG_BIT_ARB 0x0001 -#endif - -#ifndef GLX_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB -#define GLX_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB 0x0002 -#endif - -#ifndef GLX_CONTEXT_CORE_PROFILE_BIT_ARB -#define GLX_CONTEXT_CORE_PROFILE_BIT_ARB 0x00000001 -#endif - -#ifndef GLX_CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB -#define GLX_CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB 0x00000002 -#endif - -#ifndef GLX_RGBA_FLOAT_TYPE -#define GLX_RGBA_FLOAT_TYPE 0x20B9 -#endif - -#ifndef GLX_RGBA_FLOAT_BIT -#define GLX_RGBA_FLOAT_BIT 0x00000004 -#endif - -static void fghFillContextAttributes( int *attributes ) { - int where = 0, contextFlags, contextProfile; - - if ( !fghIsLegacyContextVersionRequested() ) { - ATTRIB_VAL( GLX_CONTEXT_MAJOR_VERSION_ARB, fgState.MajorVersion ); - ATTRIB_VAL( GLX_CONTEXT_MINOR_VERSION_ARB, fgState.MinorVersion ); - } - - contextFlags = - fghMapBit( fgState.ContextFlags, GLUT_DEBUG, GLX_CONTEXT_DEBUG_BIT_ARB ) | - fghMapBit( fgState.ContextFlags, GLUT_FORWARD_COMPATIBLE, GLX_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB ); - if ( contextFlags != 0 ) { - ATTRIB_VAL( GLX_CONTEXT_FLAGS_ARB, contextFlags ); - } - - contextProfile = - fghMapBit( fgState.ContextProfile, GLUT_CORE_PROFILE, GLX_CONTEXT_CORE_PROFILE_BIT_ARB ) | - fghMapBit( fgState.ContextProfile, GLUT_COMPATIBILITY_PROFILE, GLX_CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB ); - if ( contextProfile != 0 ) { - ATTRIB_VAL( GLX_CONTEXT_PROFILE_MASK_ARB, contextProfile ); - } - - ATTRIB( 0 ); -} - -typedef GLXContext (*CreateContextAttribsProc)(Display *dpy, GLXFBConfig config, - GLXContext share_list, Bool direct, - const int *attrib_list); - -static GLXContext fghCreateNewContext( SFG_Window* window ) -{ - /* for color model calculation */ - int menu = ( window->IsMenu && !fgStructure.MenuContext ); - int index_mode = ( fgState.DisplayMode & GLUT_INDEX ); - - /* "classic" context creation */ - Display *dpy = fgDisplay.Display; - GLXFBConfig config = *(window->Window.FBConfig); - int render_type = ( !menu && index_mode ) ? GLX_COLOR_INDEX_TYPE : GLX_RGBA_TYPE; - GLXContext share_list = NULL; - Bool direct = ( fgState.DirectContext != GLUT_FORCE_INDIRECT_CONTEXT ); - GLXContext context; - - /* new context creation */ - int attributes[9]; - CreateContextAttribsProc createContextAttribs; - - /* If nothing fancy has been required, simply use the old context creation GLX API entry */ - if ( fghIsLegacyContextRequested() ) - { - context = glXCreateNewContext( dpy, config, render_type, share_list, direct ); - if ( context == NULL ) { - fghContextCreationError(); - } - return context; - } - - /* color index mode is not available anymore with OpenGL 3.0 */ - if ( render_type == GLX_COLOR_INDEX_TYPE ) { - fgWarning( "color index mode is deprecated, using RGBA mode" ); - } - - fghFillContextAttributes( attributes ); - - createContextAttribs = (CreateContextAttribsProc) fghGetProcAddress( "glXCreateContextAttribsARB" ); - if ( createContextAttribs == NULL ) { - fgError( "glXCreateContextAttribsARB not found" ); - } - - context = createContextAttribs( dpy, config, share_list, direct, attributes ); - if ( context == NULL ) { - fghContextCreationError(); - } - return context; -} -#endif - - -/* - * Opens a window. Requires a SFG_Window object created and attached - * to the freeglut structure. OpenGL context is created here. - */ -void fgOpenWindow( SFG_Window* window, const char* title, - GLboolean positionUse, int x, int y, - GLboolean sizeUse, int w, int h, - GLboolean gameMode, GLboolean isSubWindow ) -{ -#if TARGET_HOST_POSIX_X11 - XVisualInfo * visualInfo; - XSetWindowAttributes winAttr; - XTextProperty textProperty; - XSizeHints sizeHints; - XWMHints wmHints; - unsigned long mask; - unsigned int current_DisplayMode = fgState.DisplayMode ; - - /* Save the display mode if we are creating a menu window */ - if( window->IsMenu && ( ! fgStructure.MenuContext ) ) - fgState.DisplayMode = GLUT_DOUBLE | GLUT_RGB ; - - window->Window.FBConfig = fgChooseFBConfig( ); - - if( window->IsMenu && ( ! fgStructure.MenuContext ) ) - fgState.DisplayMode = current_DisplayMode ; - - if( ! window->Window.FBConfig ) - { - /* - * The "fgChooseFBConfig" returned a null meaning that the visual - * context is not available. - * Try a couple of variations to see if they will work. - */ - if( !( fgState.DisplayMode & GLUT_DOUBLE ) ) - { - fgState.DisplayMode |= GLUT_DOUBLE ; - window->Window.FBConfig = fgChooseFBConfig( ); - fgState.DisplayMode &= ~GLUT_DOUBLE; - } - - if( fgState.DisplayMode & GLUT_MULTISAMPLE ) - { - fgState.DisplayMode &= ~GLUT_MULTISAMPLE ; - window->Window.FBConfig = fgChooseFBConfig( ); - fgState.DisplayMode |= GLUT_MULTISAMPLE; - } - } - - FREEGLUT_INTERNAL_ERROR_EXIT( window->Window.FBConfig != NULL, - "FBConfig with necessary capabilities not found", "fgOpenWindow" ); - - /* Get the X visual. */ - visualInfo = glXGetVisualFromFBConfig( fgDisplay.Display, - *(window->Window.FBConfig) ); - - /* - * XXX HINT: the masks should be updated when adding/removing callbacks. - * XXX This might speed up message processing. Is that true? - * XXX - * XXX A: Not appreciably, but it WILL make it easier to debug. - * XXX Try tracing old GLUT and try tracing freeglut. Old GLUT - * XXX turns off events that it doesn't need and is a whole lot - * XXX more pleasant to trace. (Think mouse-motion! Tons of - * XXX ``bonus'' GUI events stream in.) - */ - winAttr.event_mask = - StructureNotifyMask | SubstructureNotifyMask | ExposureMask | - ButtonPressMask | ButtonReleaseMask | KeyPressMask | KeyReleaseMask | - VisibilityChangeMask | EnterWindowMask | LeaveWindowMask | - PointerMotionMask | ButtonMotionMask; - winAttr.background_pixmap = None; - winAttr.background_pixel = 0; - winAttr.border_pixel = 0; - - winAttr.colormap = XCreateColormap( - fgDisplay.Display, fgDisplay.RootWindow, - visualInfo->visual, AllocNone - ); - - mask = CWBackPixmap | CWBorderPixel | CWColormap | CWEventMask; - - if( window->IsMenu || ( gameMode == GL_TRUE ) ) - { - winAttr.override_redirect = True; - mask |= CWOverrideRedirect; - } - - if( ! positionUse ) - x = y = -1; /* default window position */ - if( ! sizeUse ) - w = h = 300; /* default window size */ - - window->Window.Handle = XCreateWindow( - fgDisplay.Display, - window->Parent == NULL ? fgDisplay.RootWindow : - window->Parent->Window.Handle, - x, y, w, h, 0, - visualInfo->depth, InputOutput, - visualInfo->visual, mask, - &winAttr - ); - - /* - * The GLX context creation, possibly trying the direct context rendering - * or else use the current context if the user has so specified - */ - - if( window->IsMenu ) - { - /* - * If there isn't already an OpenGL rendering context for menu - * windows, make one - */ - if( !fgStructure.MenuContext ) - { - fgStructure.MenuContext = - (SFG_MenuContext *)malloc( sizeof(SFG_MenuContext) ); - fgStructure.MenuContext->MContext = fghCreateNewContext( window ); - } - - /* window->Window.Context = fgStructure.MenuContext->MContext; */ - window->Window.Context = fghCreateNewContext( window ); - } - else if( fgState.UseCurrentContext ) - { - window->Window.Context = glXGetCurrentContext( ); - - if( ! window->Window.Context ) - window->Window.Context = fghCreateNewContext( window ); - } - else - window->Window.Context = fghCreateNewContext( window ); - -#if !defined( __FreeBSD__ ) && !defined( __NetBSD__ ) - if( !glXIsDirect( fgDisplay.Display, window->Window.Context ) ) - { - if( fgState.DirectContext == GLUT_FORCE_DIRECT_CONTEXT ) - fgError( "Unable to force direct context rendering for window '%s'", - title ); - } -#endif - - /* - * XXX Assume the new window is visible by default - * XXX Is this a safe assumption? - */ - window->State.Visible = GL_TRUE; - - sizeHints.flags = 0; - if ( positionUse ) - sizeHints.flags |= USPosition; - if ( sizeUse ) - sizeHints.flags |= USSize; - - /* - * Fill in the size hints values now (the x, y, width and height - * settings are obsolete, are there any more WMs that support them?) - * Unless the X servers actually stop supporting these, we should - * continue to fill them in. It is *not* our place to tell the user - * that they should replace a window manager that they like, and which - * works, just because *we* think that it's not "modern" enough. - */ - sizeHints.x = x; - sizeHints.y = y; - sizeHints.width = w; - sizeHints.height = h; - - wmHints.flags = StateHint; - wmHints.initial_state = fgState.ForceIconic ? IconicState : NormalState; - /* Prepare the window and iconified window names... */ - XStringListToTextProperty( (char **) &title, 1, &textProperty ); - - XSetWMProperties( - fgDisplay.Display, - window->Window.Handle, - &textProperty, - &textProperty, - 0, - 0, - &sizeHints, - &wmHints, - NULL - ); - XFree( textProperty.value ); - - XSetWMProtocols( fgDisplay.Display, window->Window.Handle, - &fgDisplay.DeleteWindow, 1 ); - - glXMakeContextCurrent( - fgDisplay.Display, - window->Window.Handle, - window->Window.Handle, - window->Window.Context - ); - - XMapWindow( fgDisplay.Display, window->Window.Handle ); - - XFree(visualInfo); - -#elif TARGET_HOST_MS_WINDOWS - - WNDCLASS wc; - DWORD flags; - DWORD exFlags = 0; - ATOM atom; - int WindowStyle = 0; - - /* Grab the window class we have registered on glutInit(): */ - atom = GetClassInfo( fgDisplay.Instance, _T("FREEGLUT"), &wc ); - FREEGLUT_INTERNAL_ERROR_EXIT ( atom, "Window Class Info Not Found", - "fgOpenWindow" ); - - if( gameMode ) - { - FREEGLUT_INTERNAL_ERROR_EXIT ( window->Parent == NULL, - "Game mode being invoked on a subwindow", - "fgOpenWindow" ); - - /* - * Set the window creation flags appropriately to make the window - * entirely visible: - */ - flags = WS_POPUP | WS_CLIPSIBLINGS | WS_CLIPCHILDREN | WS_VISIBLE; - } - else - { - int worig = w, horig = h; - -#if !defined(_WIN32_WCE) - if ( ( ! isSubWindow ) && ( ! window->IsMenu ) ) - { - /* - * Update the window dimensions, taking account of window - * decorations. "freeglut" is to create the window with the - * outside of its border at (x,y) and with dimensions (w,h). - */ - w += (GetSystemMetrics( SM_CXSIZEFRAME ) )*2; - h += (GetSystemMetrics( SM_CYSIZEFRAME ) )*2 + - GetSystemMetrics( SM_CYCAPTION ); - } -#endif /* defined(_WIN32_WCE) */ - - if( ! positionUse ) - { - x = CW_USEDEFAULT; - y = CW_USEDEFAULT; - } - /* setting State.Width/Height to call resize callback later */ - if( ! sizeUse ) - { - if( ! window->IsMenu ) - { - w = CW_USEDEFAULT; - h = CW_USEDEFAULT; - } - else /* fail safe - Windows can make a window of size (0, 0) */ - w = h = 300; /* default window size */ - window->State.Width = window->State.Height = -1; - } - else - { - window->State.Width = worig; - window->State.Height = horig; - } - - /* - * There's a small difference between creating the top, child and - * game mode windows - */ - flags = WS_CLIPSIBLINGS | WS_CLIPCHILDREN | WS_VISIBLE; - - if ( window->IsMenu ) - { - flags |= WS_POPUP; - exFlags |= WS_EX_TOOLWINDOW; - } -#if !defined(_WIN32_WCE) - else if( window->Parent == NULL ) - flags |= WS_OVERLAPPEDWINDOW; -#endif - else - flags |= WS_CHILD; - } - -#if defined(_WIN32_WCE) - { - wchar_t* wstr = fghWstrFromStr(title); - - window->Window.Handle = CreateWindow( - _T("FREEGLUT"), - wstr, - WS_VISIBLE | WS_POPUP, - 0,0, 240,320, - NULL, - NULL, - fgDisplay.Instance, - (LPVOID) window - ); - - free(wstr); - - SHFullScreen(window->Window.Handle, SHFS_HIDESTARTICON); - SHFullScreen(window->Window.Handle, SHFS_HIDESIPBUTTON); - SHFullScreen(window->Window.Handle, SHFS_HIDETASKBAR); - MoveWindow(window->Window.Handle, 0, 0, 240, 320, TRUE); - ShowWindow(window->Window.Handle, SW_SHOW); - UpdateWindow(window->Window.Handle); - } -#else - window->Window.Handle = CreateWindowEx( - exFlags, - _T("FREEGLUT"), - title, - flags, - x, y, w, h, - (HWND) window->Parent == NULL ? NULL : window->Parent->Window.Handle, - (HMENU) NULL, - fgDisplay.Instance, - (LPVOID) window - ); -#endif /* defined(_WIN32_WCE) */ - - if( !( window->Window.Handle ) ) - fgError( "Failed to create a window (%s)!", title ); - - /* Make a menu window always on top - fix Feature Request 947118 */ - if( window->IsMenu || gameMode ) - SetWindowPos( - window->Window.Handle, - HWND_TOPMOST, - 0, 0, 0, 0, - SWP_NOMOVE | SWP_NOSIZE - ); - - /* Hack to remove the caption (title bar) and/or border - * and all the system menu controls. - */ - WindowStyle = GetWindowLong(window->Window.Handle, GWL_STYLE); - if ( fgState.DisplayMode & GLUT_CAPTIONLESS ) - { - SetWindowLong ( window->Window.Handle, GWL_STYLE, - WindowStyle & ~(WS_DLGFRAME | WS_SYSMENU | WS_MINIMIZEBOX | WS_MAXIMIZEBOX)); - } - else if ( fgState.DisplayMode & GLUT_BORDERLESS ) - { - SetWindowLong ( window->Window.Handle, GWL_STYLE, - WindowStyle & ~(WS_BORDER | WS_SYSMENU | WS_MINIMIZEBOX | WS_MAXIMIZEBOX)); - } -/* SetWindowPos(window->Window.Handle, NULL, 0, 0, 0, 0, - SWP_NOMOVE | SWP_NOSIZE | SWP_NOZORDER | SWP_FRAMECHANGED); */ - - -#if defined(_WIN32_WCE) - ShowWindow( window->Window.Handle, SW_SHOW ); -#else - ShowWindow( window->Window.Handle, - fgState.ForceIconic ? SW_SHOWMINIMIZED : SW_SHOW ); -#endif /* defined(_WIN32_WCE) */ - - UpdateWindow( window->Window.Handle ); - ShowCursor( TRUE ); /* XXX Old comments say "hide cursor"! */ - -#endif - - fgSetWindow( window ); - - window->Window.DoubleBuffered = - ( fgState.DisplayMode & GLUT_DOUBLE ) ? 1 : 0; - - if ( ! window->Window.DoubleBuffered ) - { - glDrawBuffer ( GL_FRONT ); - glReadBuffer ( GL_FRONT ); - } -} - -/* - * Closes a window, destroying the frame and OpenGL context - */ -void fgCloseWindow( SFG_Window* window ) -{ -#if TARGET_HOST_POSIX_X11 - - if( window->Window.Context ) - glXDestroyContext( fgDisplay.Display, window->Window.Context ); - XFree( window->Window.FBConfig ); - XDestroyWindow( fgDisplay.Display, window->Window.Handle ); - /* XFlush( fgDisplay.Display ); */ /* XXX Shouldn't need this */ - -#elif TARGET_HOST_MS_WINDOWS - - /* Make sure we don't close a window with current context active */ - if( fgStructure.CurrentWindow == window ) - wglMakeCurrent( NULL, NULL ); - - /* - * Step through the list of windows. If the rendering context - * is not being used by another window, then we delete it. - */ - { - int used = FALSE ; - SFG_Window *iter ; - - for( iter = (SFG_Window *)fgStructure.Windows.First; - iter; - iter = (SFG_Window *)iter->Node.Next ) - { - if( ( iter->Window.Context == window->Window.Context ) && - ( iter != window ) ) - used = TRUE; - } - - if( ! used ) - wglDeleteContext( window->Window.Context ); - } - - DestroyWindow( window->Window.Handle ); -#endif -} - - -/* -- INTERFACE FUNCTIONS -------------------------------------------------- */ - -/* - * Creates a new top-level freeglut window - */ -int FGAPIENTRY glutCreateWindow( const char* title ) -{ - /* XXX GLUT does not exit; it simply calls "glutInit" quietly if the - * XXX application has not already done so. The "freeglut" community - * XXX decided not to go this route (freeglut-developer e-mail from - * XXX Steve Baker, 12/16/04, 4:22 PM CST, "Re: [Freeglut-developer] - * XXX Desired 'freeglut' behaviour when there is no current window" - */ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutCreateWindow" ); - - return fgCreateWindow( NULL, title, fgState.Position.Use, - fgState.Position.X, fgState.Position.Y, - fgState.Size.Use, fgState.Size.X, fgState.Size.Y, - GL_FALSE, GL_FALSE )->ID; -} - -#if TARGET_HOST_MS_WINDOWS -int FGAPIENTRY __glutCreateWindowWithExit( const char *title, void (__cdecl *exit_function)(int) ) -{ - __glutExitFunc = exit_function; - return glutCreateWindow( title ); -} -#endif - -/* - * This function creates a sub window. - */ -int FGAPIENTRY glutCreateSubWindow( int parentID, int x, int y, int w, int h ) -{ - int ret = 0; - SFG_Window* window = NULL; - SFG_Window* parent = NULL; - - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutCreateSubWindow" ); - parent = fgWindowByID( parentID ); - freeglut_return_val_if_fail( parent != NULL, 0 ); - if ( x < 0 ) - { - x = parent->State.Width + x ; - if ( w >= 0 ) x -= w ; - } - - if ( w < 0 ) w = parent->State.Width - x + w ; - if ( w < 0 ) - { - x += w ; - w = -w ; - } - - if ( y < 0 ) - { - y = parent->State.Height + y ; - if ( h >= 0 ) y -= h ; - } - - if ( h < 0 ) h = parent->State.Height - y + h ; - if ( h < 0 ) - { - y += h ; - h = -h ; - } - - window = fgCreateWindow( parent, "", GL_TRUE, x, y, GL_TRUE, w, h, GL_FALSE, GL_FALSE ); - ret = window->ID; - - return ret; -} - -/* - * Destroys a window and all of its subwindows - */ -void FGAPIENTRY glutDestroyWindow( int windowID ) -{ - SFG_Window* window; - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutDestroyWindow" ); - window = fgWindowByID( windowID ); - freeglut_return_if_fail( window != NULL ); - { - fgExecutionState ExecState = fgState.ExecState; - fgAddToWindowDestroyList( window ); - fgState.ExecState = ExecState; - } -} - -/* - * This function selects the current window - */ -void FGAPIENTRY glutSetWindow( int ID ) -{ - SFG_Window* window = NULL; - - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutSetWindow" ); - if( fgStructure.CurrentWindow != NULL ) - if( fgStructure.CurrentWindow->ID == ID ) - return; - - window = fgWindowByID( ID ); - if( window == NULL ) - { - fgWarning( "glutSetWindow(): window ID %d not found!", ID ); - return; - } - - fgSetWindow( window ); -} - -/* - * This function returns the ID number of the current window, 0 if none exists - */ -int FGAPIENTRY glutGetWindow( void ) -{ - SFG_Window *win = fgStructure.CurrentWindow; - /* - * Since GLUT did not throw an error if this function was called without a prior call to - * "glutInit", this function shouldn't do so here. Instead let us return a zero. - * See Feature Request "[ 1307049 ] glutInit check". - */ - if ( ! fgState.Initialised ) - return 0; - - while ( win && win->IsMenu ) - win = win->Parent; - return win ? win->ID : 0; -} - -/* - * This function makes the current window visible - */ -void FGAPIENTRY glutShowWindow( void ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutShowWindow" ); - FREEGLUT_EXIT_IF_NO_WINDOW ( "glutShowWindow" ); - -#if TARGET_HOST_POSIX_X11 - - XMapWindow( fgDisplay.Display, fgStructure.CurrentWindow->Window.Handle ); - XFlush( fgDisplay.Display ); /* XXX Shouldn't need this */ - -#elif TARGET_HOST_MS_WINDOWS - - ShowWindow( fgStructure.CurrentWindow->Window.Handle, SW_SHOW ); - -#endif - - fgStructure.CurrentWindow->State.Redisplay = GL_TRUE; -} - -/* - * This function hides the current window - */ -void FGAPIENTRY glutHideWindow( void ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutHideWindow" ); - FREEGLUT_EXIT_IF_NO_WINDOW ( "glutHideWindow" ); - -#if TARGET_HOST_POSIX_X11 - - if( fgStructure.CurrentWindow->Parent == NULL ) - XWithdrawWindow( fgDisplay.Display, - fgStructure.CurrentWindow->Window.Handle, - fgDisplay.Screen ); - else - XUnmapWindow( fgDisplay.Display, - fgStructure.CurrentWindow->Window.Handle ); - XFlush( fgDisplay.Display ); /* XXX Shouldn't need this */ - -#elif TARGET_HOST_MS_WINDOWS - - ShowWindow( fgStructure.CurrentWindow->Window.Handle, SW_HIDE ); - -#endif - - fgStructure.CurrentWindow->State.Redisplay = GL_FALSE; -} - -/* - * Iconify the current window (top-level windows only) - */ -void FGAPIENTRY glutIconifyWindow( void ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutIconifyWindow" ); - FREEGLUT_EXIT_IF_NO_WINDOW ( "glutIconifyWindow" ); - - fgStructure.CurrentWindow->State.Visible = GL_FALSE; -#if TARGET_HOST_POSIX_X11 - - XIconifyWindow( fgDisplay.Display, fgStructure.CurrentWindow->Window.Handle, - fgDisplay.Screen ); - XFlush( fgDisplay.Display ); /* XXX Shouldn't need this */ - -#elif TARGET_HOST_MS_WINDOWS - - ShowWindow( fgStructure.CurrentWindow->Window.Handle, SW_MINIMIZE ); - -#endif - - fgStructure.CurrentWindow->State.Redisplay = GL_FALSE; -} - -/* - * Set the current window's title - */ -void FGAPIENTRY glutSetWindowTitle( const char* title ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutSetWindowTitle" ); - FREEGLUT_EXIT_IF_NO_WINDOW ( "glutSetWindowTitle" ); - if( ! fgStructure.CurrentWindow->Parent ) - { -#if TARGET_HOST_POSIX_X11 - - XTextProperty text; - - text.value = (unsigned char *) title; - text.encoding = XA_STRING; - text.format = 8; - text.nitems = strlen( title ); - - XSetWMName( - fgDisplay.Display, - fgStructure.CurrentWindow->Window.Handle, - &text - ); - - XFlush( fgDisplay.Display ); /* XXX Shouldn't need this */ - -#elif TARGET_HOST_MS_WINDOWS -# ifdef _WIN32_WCE - { - wchar_t* wstr = fghWstrFromStr(title); - SetWindowText( fgStructure.CurrentWindow->Window.Handle, wstr ); - free(wstr); - } -# else - SetWindowText( fgStructure.CurrentWindow->Window.Handle, title ); -# endif - -#endif - } -} - -/* - * Set the current window's iconified title - */ -void FGAPIENTRY glutSetIconTitle( const char* title ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutSetIconTitle" ); - FREEGLUT_EXIT_IF_NO_WINDOW ( "glutSetIconTitle" ); - - if( ! fgStructure.CurrentWindow->Parent ) - { -#if TARGET_HOST_POSIX_X11 - - XTextProperty text; - - text.value = (unsigned char *) title; - text.encoding = XA_STRING; - text.format = 8; - text.nitems = strlen( title ); - - XSetWMIconName( - fgDisplay.Display, - fgStructure.CurrentWindow->Window.Handle, - &text - ); - - XFlush( fgDisplay.Display ); /* XXX Shouldn't need this */ - -#elif TARGET_HOST_MS_WINDOWS -# ifdef _WIN32_WCE - { - wchar_t* wstr = fghWstrFromStr(title); - SetWindowText( fgStructure.CurrentWindow->Window.Handle, wstr ); - free(wstr); - } -# else - SetWindowText( fgStructure.CurrentWindow->Window.Handle, title ); -# endif - -#endif - } -} - -/* - * Change the current window's size - */ -void FGAPIENTRY glutReshapeWindow( int width, int height ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutReshapeWindow" ); - FREEGLUT_EXIT_IF_NO_WINDOW ( "glutReshapeWindow" ); - - if (glutGet(GLUT_FULL_SCREEN)) - { - /* Leave full screen state before resizing. */ - glutFullScreenToggle(); - } - - fgStructure.CurrentWindow->State.NeedToResize = GL_TRUE; - fgStructure.CurrentWindow->State.Width = width ; - fgStructure.CurrentWindow->State.Height = height; -} - -/* - * Change the current window's position - */ -void FGAPIENTRY glutPositionWindow( int x, int y ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutPositionWindow" ); - FREEGLUT_EXIT_IF_NO_WINDOW ( "glutPositionWindow" ); - - if (glutGet(GLUT_FULL_SCREEN)) - { - /* Leave full screen state before moving. */ - glutFullScreenToggle(); - } - -#if TARGET_HOST_POSIX_X11 - - XMoveWindow( fgDisplay.Display, fgStructure.CurrentWindow->Window.Handle, - x, y ); - XFlush( fgDisplay.Display ); /* XXX Shouldn't need this */ - -#elif TARGET_HOST_MS_WINDOWS - - { - RECT winRect; - - /* "GetWindowRect" returns the pixel coordinates of the outside of the window */ - GetWindowRect( fgStructure.CurrentWindow->Window.Handle, &winRect ); - MoveWindow( - fgStructure.CurrentWindow->Window.Handle, - x, - y, - winRect.right - winRect.left, - winRect.bottom - winRect.top, - TRUE - ); - } - -#endif -} - -/* - * Lowers the current window (by Z order change) - */ -void FGAPIENTRY glutPushWindow( void ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutPushWindow" ); - FREEGLUT_EXIT_IF_NO_WINDOW ( "glutPushWindow" ); - -#if TARGET_HOST_POSIX_X11 - - XLowerWindow( fgDisplay.Display, fgStructure.CurrentWindow->Window.Handle ); - -#elif TARGET_HOST_MS_WINDOWS - - SetWindowPos( - fgStructure.CurrentWindow->Window.Handle, - HWND_BOTTOM, - 0, 0, 0, 0, - SWP_NOSIZE | SWP_NOMOVE - ); - -#endif -} - -/* - * Raises the current window (by Z order change) - */ -void FGAPIENTRY glutPopWindow( void ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutPopWindow" ); - FREEGLUT_EXIT_IF_NO_WINDOW ( "glutPopWindow" ); - -#if TARGET_HOST_POSIX_X11 - - XRaiseWindow( fgDisplay.Display, fgStructure.CurrentWindow->Window.Handle ); - -#elif TARGET_HOST_MS_WINDOWS - - SetWindowPos( - fgStructure.CurrentWindow->Window.Handle, - HWND_TOP, - 0, 0, 0, 0, - SWP_NOSIZE | SWP_NOMOVE - ); - -#endif -} - -#if TARGET_HOST_POSIX_X11 -static int ewmh_fullscr_toggle(void); -static int resize_fullscr_toogle(void); - -static int toggle_fullscreen(void) -{ - /* first try the EWMH (_NET_WM_STATE) method ... */ - if(ewmh_fullscr_toggle() != -1) { - return 0; - } - - /* fall back to resizing the window */ - if(resize_fullscr_toogle() != -1) { - return 0; - } - return -1; -} - -#define _NET_WM_STATE_TOGGLE 2 -static int ewmh_fullscr_toggle(void) -{ - XEvent xev; - long evmask = SubstructureRedirectMask | SubstructureNotifyMask; - - if(!fgDisplay.State || !fgDisplay.StateFullScreen) { - return -1; - } - - xev.type = ClientMessage; - xev.xclient.window = fgStructure.CurrentWindow->Window.Handle; - xev.xclient.message_type = fgDisplay.State; - xev.xclient.format = 32; - xev.xclient.data.l[0] = _NET_WM_STATE_TOGGLE; - xev.xclient.data.l[1] = fgDisplay.StateFullScreen; - xev.xclient.data.l[2] = 0; /* no second property to toggle */ - xev.xclient.data.l[3] = 1; /* source indication: application */ - xev.xclient.data.l[4] = 0; /* unused */ - - if(!XSendEvent(fgDisplay.Display, fgDisplay.RootWindow, 0, evmask, &xev)) { - return -1; - } - return 0; -} - -static int resize_fullscr_toogle(void) -{ - XWindowAttributes attributes; - - if(glutGet(GLUT_FULL_SCREEN)) { - /* restore original window size */ - SFG_Window *win = fgStructure.CurrentWindow; - fgStructure.CurrentWindow->State.NeedToResize = GL_TRUE; - fgStructure.CurrentWindow->State.Width = win->State.OldWidth; - fgStructure.CurrentWindow->State.Height = win->State.OldHeight; - - } else { - /* resize the window to cover the entire screen */ - XGetWindowAttributes(fgDisplay.Display, - fgStructure.CurrentWindow->Window.Handle, - &attributes); - - /* - * The "x" and "y" members of "attributes" are the window's coordinates - * relative to its parent, i.e. to the decoration window. - */ - XMoveResizeWindow(fgDisplay.Display, - fgStructure.CurrentWindow->Window.Handle, - -attributes.x, - -attributes.y, - fgDisplay.ScreenWidth, - fgDisplay.ScreenHeight); - } - return 0; -} -#endif /* TARGET_HOST_POSIX_X11 */ - - -/* - * Resize the current window so that it fits the whole screen - */ -void FGAPIENTRY glutFullScreen( void ) -{ - SFG_Window *win; - - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutFullScreen" ); - FREEGLUT_EXIT_IF_NO_WINDOW ( "glutFullScreen" ); - - win = fgStructure.CurrentWindow; - -#if TARGET_HOST_POSIX_X11 - if(!glutGet(GLUT_FULL_SCREEN)) { - if(toggle_fullscreen() != -1) { - win->State.IsFullscreen = GL_TRUE; - } - } - -#elif TARGET_HOST_MS_WINDOWS && !defined(_WIN32_WCE) /* FIXME: what about WinCE */ - - if (glutGet(GLUT_FULL_SCREEN)) - { - /* Leave full screen state before resizing. */ - glutFullScreenToggle(); - } - - { - RECT rect; - - /* For fullscreen mode, force the top-left corner to 0,0 - * and adjust the window rectangle so that the client area - * covers the whole screen. - */ - - rect.left = 0; - rect.top = 0; - rect.right = fgDisplay.ScreenWidth; - rect.bottom = fgDisplay.ScreenHeight; - - AdjustWindowRect ( &rect, WS_OVERLAPPEDWINDOW | WS_CLIPSIBLINGS | - WS_CLIPCHILDREN, FALSE ); - - /* - * SWP_NOACTIVATE Do not activate the window - * SWP_NOOWNERZORDER Do not change position in z-order - * SWP_NOSENDCHANGING Supress WM_WINDOWPOSCHANGING message - * SWP_NOZORDER Retains the current Z order (ignore 2nd param) - */ - - SetWindowPos( fgStructure.CurrentWindow->Window.Handle, - HWND_TOP, - rect.left, - rect.top, - rect.right - rect.left, - rect.bottom - rect.top, - SWP_NOACTIVATE | SWP_NOOWNERZORDER | SWP_NOSENDCHANGING | - SWP_NOZORDER - ); - - win->State.IsFullscreen = GL_TRUE; - } -#endif -} - -/* - * Toggle the window's full screen state. - */ -void FGAPIENTRY glutFullScreenToggle( void ) -{ - SFG_Window *win; - - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutFullScreenToggle" ); - FREEGLUT_EXIT_IF_NO_WINDOW ( "glutFullScreenToggle" ); - - win = fgStructure.CurrentWindow; - -#if TARGET_HOST_POSIX_X11 - if(toggle_fullscreen() != -1) { - win->State.IsFullscreen = !win->State.IsFullscreen; - } -#elif TARGET_HOST_MS_WINDOWS - glutFullScreen(); - win->State.IsFullscreen = !win->State.IsFullscreen; -#endif -} - -/* - * A.Donev: Set and retrieve the window's user data - */ -void* FGAPIENTRY glutGetWindowData( void ) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutGetWindowData" ); - FREEGLUT_EXIT_IF_NO_WINDOW ( "glutGetWindowData" ); - return fgStructure.CurrentWindow->UserData; -} - -void FGAPIENTRY glutSetWindowData(void* data) -{ - FREEGLUT_EXIT_IF_NOT_INITIALISED ( "glutSetWindowData" ); - FREEGLUT_EXIT_IF_NO_WINDOW ( "glutSetWindowData" ); - fgStructure.CurrentWindow->UserData = data; -} - -/*** END OF FILE ***/ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/libfreeglut_static.a b/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/libfreeglut_static.a deleted file mode 100644 index 10a7dc7..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/freeglut/libfreeglut_static.a and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/CMakeDirectoryInformation.cmake b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/CMakeDirectoryInformation.cmake deleted file mode 100644 index 21c61ba..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/CMakeDirectoryInformation.cmake +++ /dev/null @@ -1,16 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 2.8 - -# Relative path conversion top directories. -SET(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D") -SET(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D") - -# Force unix paths in dependencies. -SET(CMAKE_FORCE_UNIX_PATHS 1) - - -# The C and CXX include file regular expressions for this directory. -SET(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$") -SET(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$") -SET(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN}) -SET(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN}) diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/CXX.includecache b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/CXX.includecache deleted file mode 100644 index 45300a0..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/CXX.includecache +++ /dev/null @@ -1,264 +0,0 @@ -#IncludeRegexLine: ^[ ]*#[ ]*(include|import)[ ]*[<"]([^">]+)([">]) - -#IncludeRegexScan: ^.*$ - -#IncludeRegexComplain: ^$ - -#IncludeRegexTransform: - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/algebra3.cpp -algebra3.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/algebra3.h -glui_internal.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal.h -cmath -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/algebra3.h -cmath -- -cstdio -- -cstdlib -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/arcball.cpp -arcball.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/arcball.h -cstdio -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/arcball.h -glui_internal.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal.h -algebra3.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/algebra3.h -quaternion.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/quaternion.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.cpp -glui_internal_control.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal_control.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.h -GLUT/glut.h -- -freeglut/freeglut.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/freeglut/freeglut.h -cstdlib -- -cstdio -- -cstring -- -string -- -vector -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_add_controls.cpp -glui.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.h -glui_internal.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_bitmap_img_data.cpp - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_bitmaps.cpp -glui.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.h -glui_internal.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal.h -cassert -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_button.cpp -glui_internal_control.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal_control.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_checkbox.cpp -glui_internal_control.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal_control.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_column.cpp -glui_internal_control.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal_control.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_commandline.cpp -glui.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.h -glui_internal.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_control.cpp -glui_internal_control.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal_control.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_edittext.cpp -glui_internal_control.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal_control.h -cassert -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_filebrowser.cpp -glui.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.h -glui_internal.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal.h -sys/types.h -- -dirent.h -- -unistd.h -- -windows.h -- -sys/stat.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal.h -cstdio -- -cmath -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal_control.h -glui.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.h -glui_internal.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_list.cpp -glui_internal_control.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal_control.h -cmath -- -sys/timeb.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_listbox.cpp -glui_internal_control.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal_control.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_mouse_iaction.cpp -glui_internal_control.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal_control.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_node.cpp -glui.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.h -glui_internal.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_panel.cpp -glui_internal_control.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal_control.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_radio.cpp -glui_internal_control.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal_control.h -cassert -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_rollout.cpp -glui_internal_control.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal_control.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_rotation.cpp -glui.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.h -arcball.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/arcball.h -algebra3.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/algebra3.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_scrollbar.cpp -glui_internal_control.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal_control.h -cmath -- -cassert -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_separator.cpp -glui_internal_control.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal_control.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_spinner.cpp -glui_internal_control.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal_control.h -cmath -- -cassert -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_statictext.cpp -glui_internal_control.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal_control.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_string.cpp -glui.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.h -stdarg.h -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_textbox.cpp -glui_internal_control.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal_control.h -cmath -- - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_translation.cpp -glui.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.h -glui_internal.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal.h -algebra3.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/algebra3.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_tree.cpp -glui_internal_control.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal_control.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_treepanel.cpp -glui.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_window.cpp -glui.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.h -glui_internal.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/quaternion.cpp -quaternion.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/quaternion.h -cmath -- -glui_internal.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal.h - -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/quaternion.h -algebra3.h -/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/algebra3.h -cstdio -- - -glui/../freeglut/freeglut.h -freeglut_std.h -glui/../freeglut/freeglut_std.h -freeglut_ext.h -glui/../freeglut/freeglut_ext.h - -glui/../freeglut/freeglut_ext.h - -glui/../freeglut/freeglut_std.h -windows.h -- -GL/gl.h -- -GL/glu.h -- -stdlib.h -- - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/DependInfo.cmake b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/DependInfo.cmake deleted file mode 100644 index 84c0378..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/DependInfo.cmake +++ /dev/null @@ -1,58 +0,0 @@ -# The set of languages for which implicit dependencies are needed: -SET(CMAKE_DEPENDS_LANGUAGES - "CXX" - ) -# The set of files for implicit dependencies of each language: -SET(CMAKE_DEPENDS_CHECK_CXX - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/algebra3.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/algebra3.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/arcball.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/arcball.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_add_controls.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_add_controls.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_bitmap_img_data.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_bitmap_img_data.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_bitmaps.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_bitmaps.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_button.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_button.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_checkbox.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_checkbox.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_column.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_column.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_commandline.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_commandline.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_control.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_control.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_edittext.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_edittext.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_filebrowser.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_filebrowser.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_list.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_list.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_listbox.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_listbox.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_mouse_iaction.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_mouse_iaction.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_node.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_node.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_panel.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_panel.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_radio.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_radio.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_rollout.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_rollout.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_rotation.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_rotation.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_scrollbar.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_scrollbar.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_separator.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_separator.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_spinner.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_spinner.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_statictext.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_statictext.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_string.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_string.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_textbox.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_textbox.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_translation.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_translation.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_tree.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_tree.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_treepanel.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_treepanel.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_window.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_window.cpp.o" - "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/quaternion.cpp" "/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/quaternion.cpp.o" - ) -SET(CMAKE_CXX_COMPILER_ID "GNU") - -# Preprocessor definitions for this target. -SET(CMAKE_TARGET_DEFINITIONS - "FREEGLUT_STATIC" - "_CRT_SECURE_NO_WARNINGS" - ) - -# Targets to which this target links. -SET(CMAKE_TARGET_LINKED_INFO_FILES - ) - -# The include file search paths: -SET(CMAKE_C_TARGET_INCLUDE_PATH - "glui/.." - ) -SET(CMAKE_CXX_TARGET_INCLUDE_PATH ${CMAKE_C_TARGET_INCLUDE_PATH}) -SET(CMAKE_Fortran_TARGET_INCLUDE_PATH ${CMAKE_C_TARGET_INCLUDE_PATH}) -SET(CMAKE_ASM_TARGET_INCLUDE_PATH ${CMAKE_C_TARGET_INCLUDE_PATH}) diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/algebra3.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/algebra3.cpp.o deleted file mode 100644 index 7464732..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/algebra3.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/arcball.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/arcball.cpp.o deleted file mode 100644 index d5211d0..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/arcball.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/build.make b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/build.make deleted file mode 100644 index c9fff12..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/build.make +++ /dev/null @@ -1,909 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 2.8 - -#============================================================================= -# Special targets provided by cmake. - -# Disable implicit rules so canonical targets will work. -.SUFFIXES: - -# Remove some rules from gmake that .SUFFIXES does not remove. -SUFFIXES = - -.SUFFIXES: .hpux_make_needs_suffix_list - -# Suppress display of executed commands. -$(VERBOSE).SILENT: - -# A target that is always out of date. -cmake_force: -.PHONY : cmake_force - -#============================================================================= -# Set environment variables for the build. - -# The shell in which to execute make rules. -SHELL = /bin/sh - -# The CMake executable. -CMAKE_COMMAND = /usr/bin/cmake - -# The command to remove a file. -RM = /usr/bin/cmake -E remove -f - -# Escaping for special characters. -EQUALS = = - -# The top-level source directory on which CMake was run. -CMAKE_SOURCE_DIR = /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D - -# The top-level build directory on which CMake was run. -CMAKE_BINARY_DIR = /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D - -# Include any dependencies generated for this target. -include glui/CMakeFiles/glui.dir/depend.make - -# Include the progress variables for this target. -include glui/CMakeFiles/glui.dir/progress.make - -# Include the compile flags for this target's objects. -include glui/CMakeFiles/glui.dir/flags.make - -glui/CMakeFiles/glui.dir/algebra3.cpp.o: glui/CMakeFiles/glui.dir/flags.make -glui/CMakeFiles/glui.dir/algebra3.cpp.o: glui/algebra3.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_1) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object glui/CMakeFiles/glui.dir/algebra3.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/glui.dir/algebra3.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/algebra3.cpp - -glui/CMakeFiles/glui.dir/algebra3.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/glui.dir/algebra3.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/algebra3.cpp > CMakeFiles/glui.dir/algebra3.cpp.i - -glui/CMakeFiles/glui.dir/algebra3.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/glui.dir/algebra3.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/algebra3.cpp -o CMakeFiles/glui.dir/algebra3.cpp.s - -glui/CMakeFiles/glui.dir/algebra3.cpp.o.requires: -.PHONY : glui/CMakeFiles/glui.dir/algebra3.cpp.o.requires - -glui/CMakeFiles/glui.dir/algebra3.cpp.o.provides: glui/CMakeFiles/glui.dir/algebra3.cpp.o.requires - $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/algebra3.cpp.o.provides.build -.PHONY : glui/CMakeFiles/glui.dir/algebra3.cpp.o.provides - -glui/CMakeFiles/glui.dir/algebra3.cpp.o.provides.build: glui/CMakeFiles/glui.dir/algebra3.cpp.o - -glui/CMakeFiles/glui.dir/arcball.cpp.o: glui/CMakeFiles/glui.dir/flags.make -glui/CMakeFiles/glui.dir/arcball.cpp.o: glui/arcball.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_2) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object glui/CMakeFiles/glui.dir/arcball.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/glui.dir/arcball.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/arcball.cpp - -glui/CMakeFiles/glui.dir/arcball.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/glui.dir/arcball.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/arcball.cpp > CMakeFiles/glui.dir/arcball.cpp.i - -glui/CMakeFiles/glui.dir/arcball.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/glui.dir/arcball.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/arcball.cpp -o CMakeFiles/glui.dir/arcball.cpp.s - -glui/CMakeFiles/glui.dir/arcball.cpp.o.requires: -.PHONY : glui/CMakeFiles/glui.dir/arcball.cpp.o.requires - -glui/CMakeFiles/glui.dir/arcball.cpp.o.provides: glui/CMakeFiles/glui.dir/arcball.cpp.o.requires - $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/arcball.cpp.o.provides.build -.PHONY : glui/CMakeFiles/glui.dir/arcball.cpp.o.provides - -glui/CMakeFiles/glui.dir/arcball.cpp.o.provides.build: glui/CMakeFiles/glui.dir/arcball.cpp.o - -glui/CMakeFiles/glui.dir/glui_add_controls.cpp.o: glui/CMakeFiles/glui.dir/flags.make -glui/CMakeFiles/glui.dir/glui_add_controls.cpp.o: glui/glui_add_controls.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_3) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object glui/CMakeFiles/glui.dir/glui_add_controls.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/glui.dir/glui_add_controls.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_add_controls.cpp - -glui/CMakeFiles/glui.dir/glui_add_controls.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/glui.dir/glui_add_controls.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_add_controls.cpp > CMakeFiles/glui.dir/glui_add_controls.cpp.i - -glui/CMakeFiles/glui.dir/glui_add_controls.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/glui.dir/glui_add_controls.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_add_controls.cpp -o CMakeFiles/glui.dir/glui_add_controls.cpp.s - -glui/CMakeFiles/glui.dir/glui_add_controls.cpp.o.requires: -.PHONY : glui/CMakeFiles/glui.dir/glui_add_controls.cpp.o.requires - -glui/CMakeFiles/glui.dir/glui_add_controls.cpp.o.provides: glui/CMakeFiles/glui.dir/glui_add_controls.cpp.o.requires - $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_add_controls.cpp.o.provides.build -.PHONY : glui/CMakeFiles/glui.dir/glui_add_controls.cpp.o.provides - -glui/CMakeFiles/glui.dir/glui_add_controls.cpp.o.provides.build: glui/CMakeFiles/glui.dir/glui_add_controls.cpp.o - -glui/CMakeFiles/glui.dir/glui_bitmap_img_data.cpp.o: glui/CMakeFiles/glui.dir/flags.make -glui/CMakeFiles/glui.dir/glui_bitmap_img_data.cpp.o: glui/glui_bitmap_img_data.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_4) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object glui/CMakeFiles/glui.dir/glui_bitmap_img_data.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/glui.dir/glui_bitmap_img_data.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_bitmap_img_data.cpp - -glui/CMakeFiles/glui.dir/glui_bitmap_img_data.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/glui.dir/glui_bitmap_img_data.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_bitmap_img_data.cpp > CMakeFiles/glui.dir/glui_bitmap_img_data.cpp.i - -glui/CMakeFiles/glui.dir/glui_bitmap_img_data.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/glui.dir/glui_bitmap_img_data.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_bitmap_img_data.cpp -o CMakeFiles/glui.dir/glui_bitmap_img_data.cpp.s - -glui/CMakeFiles/glui.dir/glui_bitmap_img_data.cpp.o.requires: -.PHONY : glui/CMakeFiles/glui.dir/glui_bitmap_img_data.cpp.o.requires - -glui/CMakeFiles/glui.dir/glui_bitmap_img_data.cpp.o.provides: glui/CMakeFiles/glui.dir/glui_bitmap_img_data.cpp.o.requires - $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_bitmap_img_data.cpp.o.provides.build -.PHONY : glui/CMakeFiles/glui.dir/glui_bitmap_img_data.cpp.o.provides - -glui/CMakeFiles/glui.dir/glui_bitmap_img_data.cpp.o.provides.build: glui/CMakeFiles/glui.dir/glui_bitmap_img_data.cpp.o - -glui/CMakeFiles/glui.dir/glui_bitmaps.cpp.o: glui/CMakeFiles/glui.dir/flags.make -glui/CMakeFiles/glui.dir/glui_bitmaps.cpp.o: glui/glui_bitmaps.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_5) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object glui/CMakeFiles/glui.dir/glui_bitmaps.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/glui.dir/glui_bitmaps.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_bitmaps.cpp - -glui/CMakeFiles/glui.dir/glui_bitmaps.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/glui.dir/glui_bitmaps.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_bitmaps.cpp > CMakeFiles/glui.dir/glui_bitmaps.cpp.i - -glui/CMakeFiles/glui.dir/glui_bitmaps.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/glui.dir/glui_bitmaps.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_bitmaps.cpp -o CMakeFiles/glui.dir/glui_bitmaps.cpp.s - -glui/CMakeFiles/glui.dir/glui_bitmaps.cpp.o.requires: -.PHONY : glui/CMakeFiles/glui.dir/glui_bitmaps.cpp.o.requires - -glui/CMakeFiles/glui.dir/glui_bitmaps.cpp.o.provides: glui/CMakeFiles/glui.dir/glui_bitmaps.cpp.o.requires - $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_bitmaps.cpp.o.provides.build -.PHONY : glui/CMakeFiles/glui.dir/glui_bitmaps.cpp.o.provides - -glui/CMakeFiles/glui.dir/glui_bitmaps.cpp.o.provides.build: glui/CMakeFiles/glui.dir/glui_bitmaps.cpp.o - -glui/CMakeFiles/glui.dir/glui_button.cpp.o: glui/CMakeFiles/glui.dir/flags.make -glui/CMakeFiles/glui.dir/glui_button.cpp.o: glui/glui_button.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_6) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object glui/CMakeFiles/glui.dir/glui_button.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/glui.dir/glui_button.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_button.cpp - -glui/CMakeFiles/glui.dir/glui_button.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/glui.dir/glui_button.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_button.cpp > CMakeFiles/glui.dir/glui_button.cpp.i - -glui/CMakeFiles/glui.dir/glui_button.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/glui.dir/glui_button.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_button.cpp -o CMakeFiles/glui.dir/glui_button.cpp.s - -glui/CMakeFiles/glui.dir/glui_button.cpp.o.requires: -.PHONY : glui/CMakeFiles/glui.dir/glui_button.cpp.o.requires - -glui/CMakeFiles/glui.dir/glui_button.cpp.o.provides: glui/CMakeFiles/glui.dir/glui_button.cpp.o.requires - $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_button.cpp.o.provides.build -.PHONY : glui/CMakeFiles/glui.dir/glui_button.cpp.o.provides - -glui/CMakeFiles/glui.dir/glui_button.cpp.o.provides.build: glui/CMakeFiles/glui.dir/glui_button.cpp.o - -glui/CMakeFiles/glui.dir/glui_checkbox.cpp.o: glui/CMakeFiles/glui.dir/flags.make -glui/CMakeFiles/glui.dir/glui_checkbox.cpp.o: glui/glui_checkbox.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_7) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object glui/CMakeFiles/glui.dir/glui_checkbox.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/glui.dir/glui_checkbox.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_checkbox.cpp - -glui/CMakeFiles/glui.dir/glui_checkbox.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/glui.dir/glui_checkbox.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_checkbox.cpp > CMakeFiles/glui.dir/glui_checkbox.cpp.i - -glui/CMakeFiles/glui.dir/glui_checkbox.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/glui.dir/glui_checkbox.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_checkbox.cpp -o CMakeFiles/glui.dir/glui_checkbox.cpp.s - -glui/CMakeFiles/glui.dir/glui_checkbox.cpp.o.requires: -.PHONY : glui/CMakeFiles/glui.dir/glui_checkbox.cpp.o.requires - -glui/CMakeFiles/glui.dir/glui_checkbox.cpp.o.provides: glui/CMakeFiles/glui.dir/glui_checkbox.cpp.o.requires - $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_checkbox.cpp.o.provides.build -.PHONY : glui/CMakeFiles/glui.dir/glui_checkbox.cpp.o.provides - -glui/CMakeFiles/glui.dir/glui_checkbox.cpp.o.provides.build: glui/CMakeFiles/glui.dir/glui_checkbox.cpp.o - -glui/CMakeFiles/glui.dir/glui_column.cpp.o: glui/CMakeFiles/glui.dir/flags.make -glui/CMakeFiles/glui.dir/glui_column.cpp.o: glui/glui_column.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_8) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object glui/CMakeFiles/glui.dir/glui_column.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/glui.dir/glui_column.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_column.cpp - -glui/CMakeFiles/glui.dir/glui_column.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/glui.dir/glui_column.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_column.cpp > CMakeFiles/glui.dir/glui_column.cpp.i - -glui/CMakeFiles/glui.dir/glui_column.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/glui.dir/glui_column.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_column.cpp -o CMakeFiles/glui.dir/glui_column.cpp.s - -glui/CMakeFiles/glui.dir/glui_column.cpp.o.requires: -.PHONY : glui/CMakeFiles/glui.dir/glui_column.cpp.o.requires - -glui/CMakeFiles/glui.dir/glui_column.cpp.o.provides: glui/CMakeFiles/glui.dir/glui_column.cpp.o.requires - $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_column.cpp.o.provides.build -.PHONY : glui/CMakeFiles/glui.dir/glui_column.cpp.o.provides - -glui/CMakeFiles/glui.dir/glui_column.cpp.o.provides.build: glui/CMakeFiles/glui.dir/glui_column.cpp.o - -glui/CMakeFiles/glui.dir/glui_commandline.cpp.o: glui/CMakeFiles/glui.dir/flags.make -glui/CMakeFiles/glui.dir/glui_commandline.cpp.o: glui/glui_commandline.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_9) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object glui/CMakeFiles/glui.dir/glui_commandline.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/glui.dir/glui_commandline.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_commandline.cpp - -glui/CMakeFiles/glui.dir/glui_commandline.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/glui.dir/glui_commandline.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_commandline.cpp > CMakeFiles/glui.dir/glui_commandline.cpp.i - -glui/CMakeFiles/glui.dir/glui_commandline.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/glui.dir/glui_commandline.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_commandline.cpp -o CMakeFiles/glui.dir/glui_commandline.cpp.s - -glui/CMakeFiles/glui.dir/glui_commandline.cpp.o.requires: -.PHONY : glui/CMakeFiles/glui.dir/glui_commandline.cpp.o.requires - -glui/CMakeFiles/glui.dir/glui_commandline.cpp.o.provides: glui/CMakeFiles/glui.dir/glui_commandline.cpp.o.requires - $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_commandline.cpp.o.provides.build -.PHONY : glui/CMakeFiles/glui.dir/glui_commandline.cpp.o.provides - -glui/CMakeFiles/glui.dir/glui_commandline.cpp.o.provides.build: glui/CMakeFiles/glui.dir/glui_commandline.cpp.o - -glui/CMakeFiles/glui.dir/glui_control.cpp.o: glui/CMakeFiles/glui.dir/flags.make -glui/CMakeFiles/glui.dir/glui_control.cpp.o: glui/glui_control.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_10) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object glui/CMakeFiles/glui.dir/glui_control.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/glui.dir/glui_control.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_control.cpp - -glui/CMakeFiles/glui.dir/glui_control.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/glui.dir/glui_control.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_control.cpp > CMakeFiles/glui.dir/glui_control.cpp.i - -glui/CMakeFiles/glui.dir/glui_control.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/glui.dir/glui_control.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_control.cpp -o CMakeFiles/glui.dir/glui_control.cpp.s - -glui/CMakeFiles/glui.dir/glui_control.cpp.o.requires: -.PHONY : glui/CMakeFiles/glui.dir/glui_control.cpp.o.requires - -glui/CMakeFiles/glui.dir/glui_control.cpp.o.provides: glui/CMakeFiles/glui.dir/glui_control.cpp.o.requires - $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_control.cpp.o.provides.build -.PHONY : glui/CMakeFiles/glui.dir/glui_control.cpp.o.provides - -glui/CMakeFiles/glui.dir/glui_control.cpp.o.provides.build: glui/CMakeFiles/glui.dir/glui_control.cpp.o - -glui/CMakeFiles/glui.dir/glui_edittext.cpp.o: glui/CMakeFiles/glui.dir/flags.make -glui/CMakeFiles/glui.dir/glui_edittext.cpp.o: glui/glui_edittext.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_11) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object glui/CMakeFiles/glui.dir/glui_edittext.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/glui.dir/glui_edittext.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_edittext.cpp - -glui/CMakeFiles/glui.dir/glui_edittext.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/glui.dir/glui_edittext.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_edittext.cpp > CMakeFiles/glui.dir/glui_edittext.cpp.i - -glui/CMakeFiles/glui.dir/glui_edittext.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/glui.dir/glui_edittext.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_edittext.cpp -o CMakeFiles/glui.dir/glui_edittext.cpp.s - -glui/CMakeFiles/glui.dir/glui_edittext.cpp.o.requires: -.PHONY : glui/CMakeFiles/glui.dir/glui_edittext.cpp.o.requires - -glui/CMakeFiles/glui.dir/glui_edittext.cpp.o.provides: glui/CMakeFiles/glui.dir/glui_edittext.cpp.o.requires - $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_edittext.cpp.o.provides.build -.PHONY : glui/CMakeFiles/glui.dir/glui_edittext.cpp.o.provides - -glui/CMakeFiles/glui.dir/glui_edittext.cpp.o.provides.build: glui/CMakeFiles/glui.dir/glui_edittext.cpp.o - -glui/CMakeFiles/glui.dir/glui_filebrowser.cpp.o: glui/CMakeFiles/glui.dir/flags.make -glui/CMakeFiles/glui.dir/glui_filebrowser.cpp.o: glui/glui_filebrowser.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_12) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object glui/CMakeFiles/glui.dir/glui_filebrowser.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/glui.dir/glui_filebrowser.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_filebrowser.cpp - -glui/CMakeFiles/glui.dir/glui_filebrowser.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/glui.dir/glui_filebrowser.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_filebrowser.cpp > CMakeFiles/glui.dir/glui_filebrowser.cpp.i - -glui/CMakeFiles/glui.dir/glui_filebrowser.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/glui.dir/glui_filebrowser.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_filebrowser.cpp -o CMakeFiles/glui.dir/glui_filebrowser.cpp.s - -glui/CMakeFiles/glui.dir/glui_filebrowser.cpp.o.requires: -.PHONY : glui/CMakeFiles/glui.dir/glui_filebrowser.cpp.o.requires - -glui/CMakeFiles/glui.dir/glui_filebrowser.cpp.o.provides: glui/CMakeFiles/glui.dir/glui_filebrowser.cpp.o.requires - $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_filebrowser.cpp.o.provides.build -.PHONY : glui/CMakeFiles/glui.dir/glui_filebrowser.cpp.o.provides - -glui/CMakeFiles/glui.dir/glui_filebrowser.cpp.o.provides.build: glui/CMakeFiles/glui.dir/glui_filebrowser.cpp.o - -glui/CMakeFiles/glui.dir/glui_list.cpp.o: glui/CMakeFiles/glui.dir/flags.make -glui/CMakeFiles/glui.dir/glui_list.cpp.o: glui/glui_list.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_13) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object glui/CMakeFiles/glui.dir/glui_list.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/glui.dir/glui_list.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_list.cpp - -glui/CMakeFiles/glui.dir/glui_list.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/glui.dir/glui_list.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_list.cpp > CMakeFiles/glui.dir/glui_list.cpp.i - -glui/CMakeFiles/glui.dir/glui_list.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/glui.dir/glui_list.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_list.cpp -o CMakeFiles/glui.dir/glui_list.cpp.s - -glui/CMakeFiles/glui.dir/glui_list.cpp.o.requires: -.PHONY : glui/CMakeFiles/glui.dir/glui_list.cpp.o.requires - -glui/CMakeFiles/glui.dir/glui_list.cpp.o.provides: glui/CMakeFiles/glui.dir/glui_list.cpp.o.requires - $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_list.cpp.o.provides.build -.PHONY : glui/CMakeFiles/glui.dir/glui_list.cpp.o.provides - -glui/CMakeFiles/glui.dir/glui_list.cpp.o.provides.build: glui/CMakeFiles/glui.dir/glui_list.cpp.o - -glui/CMakeFiles/glui.dir/glui_listbox.cpp.o: glui/CMakeFiles/glui.dir/flags.make -glui/CMakeFiles/glui.dir/glui_listbox.cpp.o: glui/glui_listbox.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_14) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object glui/CMakeFiles/glui.dir/glui_listbox.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/glui.dir/glui_listbox.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_listbox.cpp - -glui/CMakeFiles/glui.dir/glui_listbox.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/glui.dir/glui_listbox.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_listbox.cpp > CMakeFiles/glui.dir/glui_listbox.cpp.i - -glui/CMakeFiles/glui.dir/glui_listbox.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/glui.dir/glui_listbox.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_listbox.cpp -o CMakeFiles/glui.dir/glui_listbox.cpp.s - -glui/CMakeFiles/glui.dir/glui_listbox.cpp.o.requires: -.PHONY : glui/CMakeFiles/glui.dir/glui_listbox.cpp.o.requires - -glui/CMakeFiles/glui.dir/glui_listbox.cpp.o.provides: glui/CMakeFiles/glui.dir/glui_listbox.cpp.o.requires - $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_listbox.cpp.o.provides.build -.PHONY : glui/CMakeFiles/glui.dir/glui_listbox.cpp.o.provides - -glui/CMakeFiles/glui.dir/glui_listbox.cpp.o.provides.build: glui/CMakeFiles/glui.dir/glui_listbox.cpp.o - -glui/CMakeFiles/glui.dir/glui_mouse_iaction.cpp.o: glui/CMakeFiles/glui.dir/flags.make -glui/CMakeFiles/glui.dir/glui_mouse_iaction.cpp.o: glui/glui_mouse_iaction.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_15) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object glui/CMakeFiles/glui.dir/glui_mouse_iaction.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/glui.dir/glui_mouse_iaction.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_mouse_iaction.cpp - -glui/CMakeFiles/glui.dir/glui_mouse_iaction.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/glui.dir/glui_mouse_iaction.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_mouse_iaction.cpp > CMakeFiles/glui.dir/glui_mouse_iaction.cpp.i - -glui/CMakeFiles/glui.dir/glui_mouse_iaction.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/glui.dir/glui_mouse_iaction.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_mouse_iaction.cpp -o CMakeFiles/glui.dir/glui_mouse_iaction.cpp.s - -glui/CMakeFiles/glui.dir/glui_mouse_iaction.cpp.o.requires: -.PHONY : glui/CMakeFiles/glui.dir/glui_mouse_iaction.cpp.o.requires - -glui/CMakeFiles/glui.dir/glui_mouse_iaction.cpp.o.provides: glui/CMakeFiles/glui.dir/glui_mouse_iaction.cpp.o.requires - $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_mouse_iaction.cpp.o.provides.build -.PHONY : glui/CMakeFiles/glui.dir/glui_mouse_iaction.cpp.o.provides - -glui/CMakeFiles/glui.dir/glui_mouse_iaction.cpp.o.provides.build: glui/CMakeFiles/glui.dir/glui_mouse_iaction.cpp.o - -glui/CMakeFiles/glui.dir/glui_node.cpp.o: glui/CMakeFiles/glui.dir/flags.make -glui/CMakeFiles/glui.dir/glui_node.cpp.o: glui/glui_node.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_16) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object glui/CMakeFiles/glui.dir/glui_node.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/glui.dir/glui_node.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_node.cpp - -glui/CMakeFiles/glui.dir/glui_node.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/glui.dir/glui_node.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_node.cpp > CMakeFiles/glui.dir/glui_node.cpp.i - -glui/CMakeFiles/glui.dir/glui_node.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/glui.dir/glui_node.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_node.cpp -o CMakeFiles/glui.dir/glui_node.cpp.s - -glui/CMakeFiles/glui.dir/glui_node.cpp.o.requires: -.PHONY : glui/CMakeFiles/glui.dir/glui_node.cpp.o.requires - -glui/CMakeFiles/glui.dir/glui_node.cpp.o.provides: glui/CMakeFiles/glui.dir/glui_node.cpp.o.requires - $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_node.cpp.o.provides.build -.PHONY : glui/CMakeFiles/glui.dir/glui_node.cpp.o.provides - -glui/CMakeFiles/glui.dir/glui_node.cpp.o.provides.build: glui/CMakeFiles/glui.dir/glui_node.cpp.o - -glui/CMakeFiles/glui.dir/glui_panel.cpp.o: glui/CMakeFiles/glui.dir/flags.make -glui/CMakeFiles/glui.dir/glui_panel.cpp.o: glui/glui_panel.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_17) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object glui/CMakeFiles/glui.dir/glui_panel.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/glui.dir/glui_panel.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_panel.cpp - -glui/CMakeFiles/glui.dir/glui_panel.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/glui.dir/glui_panel.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_panel.cpp > CMakeFiles/glui.dir/glui_panel.cpp.i - -glui/CMakeFiles/glui.dir/glui_panel.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/glui.dir/glui_panel.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_panel.cpp -o CMakeFiles/glui.dir/glui_panel.cpp.s - -glui/CMakeFiles/glui.dir/glui_panel.cpp.o.requires: -.PHONY : glui/CMakeFiles/glui.dir/glui_panel.cpp.o.requires - -glui/CMakeFiles/glui.dir/glui_panel.cpp.o.provides: glui/CMakeFiles/glui.dir/glui_panel.cpp.o.requires - $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_panel.cpp.o.provides.build -.PHONY : glui/CMakeFiles/glui.dir/glui_panel.cpp.o.provides - -glui/CMakeFiles/glui.dir/glui_panel.cpp.o.provides.build: glui/CMakeFiles/glui.dir/glui_panel.cpp.o - -glui/CMakeFiles/glui.dir/glui_radio.cpp.o: glui/CMakeFiles/glui.dir/flags.make -glui/CMakeFiles/glui.dir/glui_radio.cpp.o: glui/glui_radio.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_18) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object glui/CMakeFiles/glui.dir/glui_radio.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/glui.dir/glui_radio.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_radio.cpp - -glui/CMakeFiles/glui.dir/glui_radio.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/glui.dir/glui_radio.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_radio.cpp > CMakeFiles/glui.dir/glui_radio.cpp.i - -glui/CMakeFiles/glui.dir/glui_radio.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/glui.dir/glui_radio.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_radio.cpp -o CMakeFiles/glui.dir/glui_radio.cpp.s - -glui/CMakeFiles/glui.dir/glui_radio.cpp.o.requires: -.PHONY : glui/CMakeFiles/glui.dir/glui_radio.cpp.o.requires - -glui/CMakeFiles/glui.dir/glui_radio.cpp.o.provides: glui/CMakeFiles/glui.dir/glui_radio.cpp.o.requires - $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_radio.cpp.o.provides.build -.PHONY : glui/CMakeFiles/glui.dir/glui_radio.cpp.o.provides - -glui/CMakeFiles/glui.dir/glui_radio.cpp.o.provides.build: glui/CMakeFiles/glui.dir/glui_radio.cpp.o - -glui/CMakeFiles/glui.dir/glui_rollout.cpp.o: glui/CMakeFiles/glui.dir/flags.make -glui/CMakeFiles/glui.dir/glui_rollout.cpp.o: glui/glui_rollout.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_19) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object glui/CMakeFiles/glui.dir/glui_rollout.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/glui.dir/glui_rollout.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_rollout.cpp - -glui/CMakeFiles/glui.dir/glui_rollout.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/glui.dir/glui_rollout.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_rollout.cpp > CMakeFiles/glui.dir/glui_rollout.cpp.i - -glui/CMakeFiles/glui.dir/glui_rollout.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/glui.dir/glui_rollout.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_rollout.cpp -o CMakeFiles/glui.dir/glui_rollout.cpp.s - -glui/CMakeFiles/glui.dir/glui_rollout.cpp.o.requires: -.PHONY : glui/CMakeFiles/glui.dir/glui_rollout.cpp.o.requires - -glui/CMakeFiles/glui.dir/glui_rollout.cpp.o.provides: glui/CMakeFiles/glui.dir/glui_rollout.cpp.o.requires - $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_rollout.cpp.o.provides.build -.PHONY : glui/CMakeFiles/glui.dir/glui_rollout.cpp.o.provides - -glui/CMakeFiles/glui.dir/glui_rollout.cpp.o.provides.build: glui/CMakeFiles/glui.dir/glui_rollout.cpp.o - -glui/CMakeFiles/glui.dir/glui_rotation.cpp.o: glui/CMakeFiles/glui.dir/flags.make -glui/CMakeFiles/glui.dir/glui_rotation.cpp.o: glui/glui_rotation.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_20) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object glui/CMakeFiles/glui.dir/glui_rotation.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/glui.dir/glui_rotation.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_rotation.cpp - -glui/CMakeFiles/glui.dir/glui_rotation.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/glui.dir/glui_rotation.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_rotation.cpp > CMakeFiles/glui.dir/glui_rotation.cpp.i - -glui/CMakeFiles/glui.dir/glui_rotation.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/glui.dir/glui_rotation.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_rotation.cpp -o CMakeFiles/glui.dir/glui_rotation.cpp.s - -glui/CMakeFiles/glui.dir/glui_rotation.cpp.o.requires: -.PHONY : glui/CMakeFiles/glui.dir/glui_rotation.cpp.o.requires - -glui/CMakeFiles/glui.dir/glui_rotation.cpp.o.provides: glui/CMakeFiles/glui.dir/glui_rotation.cpp.o.requires - $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_rotation.cpp.o.provides.build -.PHONY : glui/CMakeFiles/glui.dir/glui_rotation.cpp.o.provides - -glui/CMakeFiles/glui.dir/glui_rotation.cpp.o.provides.build: glui/CMakeFiles/glui.dir/glui_rotation.cpp.o - -glui/CMakeFiles/glui.dir/glui_scrollbar.cpp.o: glui/CMakeFiles/glui.dir/flags.make -glui/CMakeFiles/glui.dir/glui_scrollbar.cpp.o: glui/glui_scrollbar.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_21) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object glui/CMakeFiles/glui.dir/glui_scrollbar.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/glui.dir/glui_scrollbar.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_scrollbar.cpp - -glui/CMakeFiles/glui.dir/glui_scrollbar.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/glui.dir/glui_scrollbar.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_scrollbar.cpp > CMakeFiles/glui.dir/glui_scrollbar.cpp.i - -glui/CMakeFiles/glui.dir/glui_scrollbar.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/glui.dir/glui_scrollbar.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_scrollbar.cpp -o CMakeFiles/glui.dir/glui_scrollbar.cpp.s - -glui/CMakeFiles/glui.dir/glui_scrollbar.cpp.o.requires: -.PHONY : glui/CMakeFiles/glui.dir/glui_scrollbar.cpp.o.requires - -glui/CMakeFiles/glui.dir/glui_scrollbar.cpp.o.provides: glui/CMakeFiles/glui.dir/glui_scrollbar.cpp.o.requires - $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_scrollbar.cpp.o.provides.build -.PHONY : glui/CMakeFiles/glui.dir/glui_scrollbar.cpp.o.provides - -glui/CMakeFiles/glui.dir/glui_scrollbar.cpp.o.provides.build: glui/CMakeFiles/glui.dir/glui_scrollbar.cpp.o - -glui/CMakeFiles/glui.dir/glui_separator.cpp.o: glui/CMakeFiles/glui.dir/flags.make -glui/CMakeFiles/glui.dir/glui_separator.cpp.o: glui/glui_separator.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_22) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object glui/CMakeFiles/glui.dir/glui_separator.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/glui.dir/glui_separator.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_separator.cpp - -glui/CMakeFiles/glui.dir/glui_separator.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/glui.dir/glui_separator.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_separator.cpp > CMakeFiles/glui.dir/glui_separator.cpp.i - -glui/CMakeFiles/glui.dir/glui_separator.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/glui.dir/glui_separator.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_separator.cpp -o CMakeFiles/glui.dir/glui_separator.cpp.s - -glui/CMakeFiles/glui.dir/glui_separator.cpp.o.requires: -.PHONY : glui/CMakeFiles/glui.dir/glui_separator.cpp.o.requires - -glui/CMakeFiles/glui.dir/glui_separator.cpp.o.provides: glui/CMakeFiles/glui.dir/glui_separator.cpp.o.requires - $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_separator.cpp.o.provides.build -.PHONY : glui/CMakeFiles/glui.dir/glui_separator.cpp.o.provides - -glui/CMakeFiles/glui.dir/glui_separator.cpp.o.provides.build: glui/CMakeFiles/glui.dir/glui_separator.cpp.o - -glui/CMakeFiles/glui.dir/glui_spinner.cpp.o: glui/CMakeFiles/glui.dir/flags.make -glui/CMakeFiles/glui.dir/glui_spinner.cpp.o: glui/glui_spinner.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_23) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object glui/CMakeFiles/glui.dir/glui_spinner.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/glui.dir/glui_spinner.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_spinner.cpp - -glui/CMakeFiles/glui.dir/glui_spinner.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/glui.dir/glui_spinner.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_spinner.cpp > CMakeFiles/glui.dir/glui_spinner.cpp.i - -glui/CMakeFiles/glui.dir/glui_spinner.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/glui.dir/glui_spinner.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_spinner.cpp -o CMakeFiles/glui.dir/glui_spinner.cpp.s - -glui/CMakeFiles/glui.dir/glui_spinner.cpp.o.requires: -.PHONY : glui/CMakeFiles/glui.dir/glui_spinner.cpp.o.requires - -glui/CMakeFiles/glui.dir/glui_spinner.cpp.o.provides: glui/CMakeFiles/glui.dir/glui_spinner.cpp.o.requires - $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_spinner.cpp.o.provides.build -.PHONY : glui/CMakeFiles/glui.dir/glui_spinner.cpp.o.provides - -glui/CMakeFiles/glui.dir/glui_spinner.cpp.o.provides.build: glui/CMakeFiles/glui.dir/glui_spinner.cpp.o - -glui/CMakeFiles/glui.dir/glui_statictext.cpp.o: glui/CMakeFiles/glui.dir/flags.make -glui/CMakeFiles/glui.dir/glui_statictext.cpp.o: glui/glui_statictext.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_24) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object glui/CMakeFiles/glui.dir/glui_statictext.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/glui.dir/glui_statictext.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_statictext.cpp - -glui/CMakeFiles/glui.dir/glui_statictext.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/glui.dir/glui_statictext.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_statictext.cpp > CMakeFiles/glui.dir/glui_statictext.cpp.i - -glui/CMakeFiles/glui.dir/glui_statictext.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/glui.dir/glui_statictext.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_statictext.cpp -o CMakeFiles/glui.dir/glui_statictext.cpp.s - -glui/CMakeFiles/glui.dir/glui_statictext.cpp.o.requires: -.PHONY : glui/CMakeFiles/glui.dir/glui_statictext.cpp.o.requires - -glui/CMakeFiles/glui.dir/glui_statictext.cpp.o.provides: glui/CMakeFiles/glui.dir/glui_statictext.cpp.o.requires - $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_statictext.cpp.o.provides.build -.PHONY : glui/CMakeFiles/glui.dir/glui_statictext.cpp.o.provides - -glui/CMakeFiles/glui.dir/glui_statictext.cpp.o.provides.build: glui/CMakeFiles/glui.dir/glui_statictext.cpp.o - -glui/CMakeFiles/glui.dir/glui_string.cpp.o: glui/CMakeFiles/glui.dir/flags.make -glui/CMakeFiles/glui.dir/glui_string.cpp.o: glui/glui_string.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_25) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object glui/CMakeFiles/glui.dir/glui_string.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/glui.dir/glui_string.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_string.cpp - -glui/CMakeFiles/glui.dir/glui_string.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/glui.dir/glui_string.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_string.cpp > CMakeFiles/glui.dir/glui_string.cpp.i - -glui/CMakeFiles/glui.dir/glui_string.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/glui.dir/glui_string.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_string.cpp -o CMakeFiles/glui.dir/glui_string.cpp.s - -glui/CMakeFiles/glui.dir/glui_string.cpp.o.requires: -.PHONY : glui/CMakeFiles/glui.dir/glui_string.cpp.o.requires - -glui/CMakeFiles/glui.dir/glui_string.cpp.o.provides: glui/CMakeFiles/glui.dir/glui_string.cpp.o.requires - $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_string.cpp.o.provides.build -.PHONY : glui/CMakeFiles/glui.dir/glui_string.cpp.o.provides - -glui/CMakeFiles/glui.dir/glui_string.cpp.o.provides.build: glui/CMakeFiles/glui.dir/glui_string.cpp.o - -glui/CMakeFiles/glui.dir/glui_textbox.cpp.o: glui/CMakeFiles/glui.dir/flags.make -glui/CMakeFiles/glui.dir/glui_textbox.cpp.o: glui/glui_textbox.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_26) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object glui/CMakeFiles/glui.dir/glui_textbox.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/glui.dir/glui_textbox.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_textbox.cpp - -glui/CMakeFiles/glui.dir/glui_textbox.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/glui.dir/glui_textbox.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_textbox.cpp > CMakeFiles/glui.dir/glui_textbox.cpp.i - -glui/CMakeFiles/glui.dir/glui_textbox.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/glui.dir/glui_textbox.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_textbox.cpp -o CMakeFiles/glui.dir/glui_textbox.cpp.s - -glui/CMakeFiles/glui.dir/glui_textbox.cpp.o.requires: -.PHONY : glui/CMakeFiles/glui.dir/glui_textbox.cpp.o.requires - -glui/CMakeFiles/glui.dir/glui_textbox.cpp.o.provides: glui/CMakeFiles/glui.dir/glui_textbox.cpp.o.requires - $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_textbox.cpp.o.provides.build -.PHONY : glui/CMakeFiles/glui.dir/glui_textbox.cpp.o.provides - -glui/CMakeFiles/glui.dir/glui_textbox.cpp.o.provides.build: glui/CMakeFiles/glui.dir/glui_textbox.cpp.o - -glui/CMakeFiles/glui.dir/glui_translation.cpp.o: glui/CMakeFiles/glui.dir/flags.make -glui/CMakeFiles/glui.dir/glui_translation.cpp.o: glui/glui_translation.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_27) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object glui/CMakeFiles/glui.dir/glui_translation.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/glui.dir/glui_translation.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_translation.cpp - -glui/CMakeFiles/glui.dir/glui_translation.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/glui.dir/glui_translation.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_translation.cpp > CMakeFiles/glui.dir/glui_translation.cpp.i - -glui/CMakeFiles/glui.dir/glui_translation.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/glui.dir/glui_translation.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_translation.cpp -o CMakeFiles/glui.dir/glui_translation.cpp.s - -glui/CMakeFiles/glui.dir/glui_translation.cpp.o.requires: -.PHONY : glui/CMakeFiles/glui.dir/glui_translation.cpp.o.requires - -glui/CMakeFiles/glui.dir/glui_translation.cpp.o.provides: glui/CMakeFiles/glui.dir/glui_translation.cpp.o.requires - $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_translation.cpp.o.provides.build -.PHONY : glui/CMakeFiles/glui.dir/glui_translation.cpp.o.provides - -glui/CMakeFiles/glui.dir/glui_translation.cpp.o.provides.build: glui/CMakeFiles/glui.dir/glui_translation.cpp.o - -glui/CMakeFiles/glui.dir/glui_tree.cpp.o: glui/CMakeFiles/glui.dir/flags.make -glui/CMakeFiles/glui.dir/glui_tree.cpp.o: glui/glui_tree.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_28) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object glui/CMakeFiles/glui.dir/glui_tree.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/glui.dir/glui_tree.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_tree.cpp - -glui/CMakeFiles/glui.dir/glui_tree.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/glui.dir/glui_tree.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_tree.cpp > CMakeFiles/glui.dir/glui_tree.cpp.i - -glui/CMakeFiles/glui.dir/glui_tree.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/glui.dir/glui_tree.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_tree.cpp -o CMakeFiles/glui.dir/glui_tree.cpp.s - -glui/CMakeFiles/glui.dir/glui_tree.cpp.o.requires: -.PHONY : glui/CMakeFiles/glui.dir/glui_tree.cpp.o.requires - -glui/CMakeFiles/glui.dir/glui_tree.cpp.o.provides: glui/CMakeFiles/glui.dir/glui_tree.cpp.o.requires - $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_tree.cpp.o.provides.build -.PHONY : glui/CMakeFiles/glui.dir/glui_tree.cpp.o.provides - -glui/CMakeFiles/glui.dir/glui_tree.cpp.o.provides.build: glui/CMakeFiles/glui.dir/glui_tree.cpp.o - -glui/CMakeFiles/glui.dir/glui_treepanel.cpp.o: glui/CMakeFiles/glui.dir/flags.make -glui/CMakeFiles/glui.dir/glui_treepanel.cpp.o: glui/glui_treepanel.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_29) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object glui/CMakeFiles/glui.dir/glui_treepanel.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/glui.dir/glui_treepanel.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_treepanel.cpp - -glui/CMakeFiles/glui.dir/glui_treepanel.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/glui.dir/glui_treepanel.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_treepanel.cpp > CMakeFiles/glui.dir/glui_treepanel.cpp.i - -glui/CMakeFiles/glui.dir/glui_treepanel.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/glui.dir/glui_treepanel.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_treepanel.cpp -o CMakeFiles/glui.dir/glui_treepanel.cpp.s - -glui/CMakeFiles/glui.dir/glui_treepanel.cpp.o.requires: -.PHONY : glui/CMakeFiles/glui.dir/glui_treepanel.cpp.o.requires - -glui/CMakeFiles/glui.dir/glui_treepanel.cpp.o.provides: glui/CMakeFiles/glui.dir/glui_treepanel.cpp.o.requires - $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_treepanel.cpp.o.provides.build -.PHONY : glui/CMakeFiles/glui.dir/glui_treepanel.cpp.o.provides - -glui/CMakeFiles/glui.dir/glui_treepanel.cpp.o.provides.build: glui/CMakeFiles/glui.dir/glui_treepanel.cpp.o - -glui/CMakeFiles/glui.dir/glui_window.cpp.o: glui/CMakeFiles/glui.dir/flags.make -glui/CMakeFiles/glui.dir/glui_window.cpp.o: glui/glui_window.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_30) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object glui/CMakeFiles/glui.dir/glui_window.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/glui.dir/glui_window.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_window.cpp - -glui/CMakeFiles/glui.dir/glui_window.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/glui.dir/glui_window.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_window.cpp > CMakeFiles/glui.dir/glui_window.cpp.i - -glui/CMakeFiles/glui.dir/glui_window.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/glui.dir/glui_window.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_window.cpp -o CMakeFiles/glui.dir/glui_window.cpp.s - -glui/CMakeFiles/glui.dir/glui_window.cpp.o.requires: -.PHONY : glui/CMakeFiles/glui.dir/glui_window.cpp.o.requires - -glui/CMakeFiles/glui.dir/glui_window.cpp.o.provides: glui/CMakeFiles/glui.dir/glui_window.cpp.o.requires - $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_window.cpp.o.provides.build -.PHONY : glui/CMakeFiles/glui.dir/glui_window.cpp.o.provides - -glui/CMakeFiles/glui.dir/glui_window.cpp.o.provides.build: glui/CMakeFiles/glui.dir/glui_window.cpp.o - -glui/CMakeFiles/glui.dir/glui.cpp.o: glui/CMakeFiles/glui.dir/flags.make -glui/CMakeFiles/glui.dir/glui.cpp.o: glui/glui.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_31) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object glui/CMakeFiles/glui.dir/glui.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/glui.dir/glui.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.cpp - -glui/CMakeFiles/glui.dir/glui.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/glui.dir/glui.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.cpp > CMakeFiles/glui.dir/glui.cpp.i - -glui/CMakeFiles/glui.dir/glui.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/glui.dir/glui.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.cpp -o CMakeFiles/glui.dir/glui.cpp.s - -glui/CMakeFiles/glui.dir/glui.cpp.o.requires: -.PHONY : glui/CMakeFiles/glui.dir/glui.cpp.o.requires - -glui/CMakeFiles/glui.dir/glui.cpp.o.provides: glui/CMakeFiles/glui.dir/glui.cpp.o.requires - $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui.cpp.o.provides.build -.PHONY : glui/CMakeFiles/glui.dir/glui.cpp.o.provides - -glui/CMakeFiles/glui.dir/glui.cpp.o.provides.build: glui/CMakeFiles/glui.dir/glui.cpp.o - -glui/CMakeFiles/glui.dir/quaternion.cpp.o: glui/CMakeFiles/glui.dir/flags.make -glui/CMakeFiles/glui.dir/quaternion.cpp.o: glui/quaternion.cpp - $(CMAKE_COMMAND) -E cmake_progress_report /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles $(CMAKE_PROGRESS_32) - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Building CXX object glui/CMakeFiles/glui.dir/quaternion.cpp.o" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -o CMakeFiles/glui.dir/quaternion.cpp.o -c /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/quaternion.cpp - -glui/CMakeFiles/glui.dir/quaternion.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/glui.dir/quaternion.cpp.i" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -E /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/quaternion.cpp > CMakeFiles/glui.dir/quaternion.cpp.i - -glui/CMakeFiles/glui.dir/quaternion.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/glui.dir/quaternion.cpp.s" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && /usr/bin/c++ $(CXX_DEFINES) $(CXX_FLAGS) -S /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/quaternion.cpp -o CMakeFiles/glui.dir/quaternion.cpp.s - -glui/CMakeFiles/glui.dir/quaternion.cpp.o.requires: -.PHONY : glui/CMakeFiles/glui.dir/quaternion.cpp.o.requires - -glui/CMakeFiles/glui.dir/quaternion.cpp.o.provides: glui/CMakeFiles/glui.dir/quaternion.cpp.o.requires - $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/quaternion.cpp.o.provides.build -.PHONY : glui/CMakeFiles/glui.dir/quaternion.cpp.o.provides - -glui/CMakeFiles/glui.dir/quaternion.cpp.o.provides.build: glui/CMakeFiles/glui.dir/quaternion.cpp.o - -# Object files for target glui -glui_OBJECTS = \ -"CMakeFiles/glui.dir/algebra3.cpp.o" \ -"CMakeFiles/glui.dir/arcball.cpp.o" \ -"CMakeFiles/glui.dir/glui_add_controls.cpp.o" \ -"CMakeFiles/glui.dir/glui_bitmap_img_data.cpp.o" \ -"CMakeFiles/glui.dir/glui_bitmaps.cpp.o" \ -"CMakeFiles/glui.dir/glui_button.cpp.o" \ -"CMakeFiles/glui.dir/glui_checkbox.cpp.o" \ -"CMakeFiles/glui.dir/glui_column.cpp.o" \ -"CMakeFiles/glui.dir/glui_commandline.cpp.o" \ -"CMakeFiles/glui.dir/glui_control.cpp.o" \ -"CMakeFiles/glui.dir/glui_edittext.cpp.o" \ -"CMakeFiles/glui.dir/glui_filebrowser.cpp.o" \ -"CMakeFiles/glui.dir/glui_list.cpp.o" \ -"CMakeFiles/glui.dir/glui_listbox.cpp.o" \ -"CMakeFiles/glui.dir/glui_mouse_iaction.cpp.o" \ -"CMakeFiles/glui.dir/glui_node.cpp.o" \ -"CMakeFiles/glui.dir/glui_panel.cpp.o" \ -"CMakeFiles/glui.dir/glui_radio.cpp.o" \ -"CMakeFiles/glui.dir/glui_rollout.cpp.o" \ -"CMakeFiles/glui.dir/glui_rotation.cpp.o" \ -"CMakeFiles/glui.dir/glui_scrollbar.cpp.o" \ -"CMakeFiles/glui.dir/glui_separator.cpp.o" \ -"CMakeFiles/glui.dir/glui_spinner.cpp.o" \ -"CMakeFiles/glui.dir/glui_statictext.cpp.o" \ -"CMakeFiles/glui.dir/glui_string.cpp.o" \ -"CMakeFiles/glui.dir/glui_textbox.cpp.o" \ -"CMakeFiles/glui.dir/glui_translation.cpp.o" \ -"CMakeFiles/glui.dir/glui_tree.cpp.o" \ -"CMakeFiles/glui.dir/glui_treepanel.cpp.o" \ -"CMakeFiles/glui.dir/glui_window.cpp.o" \ -"CMakeFiles/glui.dir/glui.cpp.o" \ -"CMakeFiles/glui.dir/quaternion.cpp.o" - -# External object files for target glui -glui_EXTERNAL_OBJECTS = - -glui/libglui.a: glui/CMakeFiles/glui.dir/algebra3.cpp.o -glui/libglui.a: glui/CMakeFiles/glui.dir/arcball.cpp.o -glui/libglui.a: glui/CMakeFiles/glui.dir/glui_add_controls.cpp.o -glui/libglui.a: glui/CMakeFiles/glui.dir/glui_bitmap_img_data.cpp.o -glui/libglui.a: glui/CMakeFiles/glui.dir/glui_bitmaps.cpp.o -glui/libglui.a: glui/CMakeFiles/glui.dir/glui_button.cpp.o -glui/libglui.a: glui/CMakeFiles/glui.dir/glui_checkbox.cpp.o -glui/libglui.a: glui/CMakeFiles/glui.dir/glui_column.cpp.o -glui/libglui.a: glui/CMakeFiles/glui.dir/glui_commandline.cpp.o -glui/libglui.a: glui/CMakeFiles/glui.dir/glui_control.cpp.o -glui/libglui.a: glui/CMakeFiles/glui.dir/glui_edittext.cpp.o -glui/libglui.a: glui/CMakeFiles/glui.dir/glui_filebrowser.cpp.o -glui/libglui.a: glui/CMakeFiles/glui.dir/glui_list.cpp.o -glui/libglui.a: glui/CMakeFiles/glui.dir/glui_listbox.cpp.o -glui/libglui.a: glui/CMakeFiles/glui.dir/glui_mouse_iaction.cpp.o -glui/libglui.a: glui/CMakeFiles/glui.dir/glui_node.cpp.o -glui/libglui.a: glui/CMakeFiles/glui.dir/glui_panel.cpp.o -glui/libglui.a: glui/CMakeFiles/glui.dir/glui_radio.cpp.o -glui/libglui.a: glui/CMakeFiles/glui.dir/glui_rollout.cpp.o -glui/libglui.a: glui/CMakeFiles/glui.dir/glui_rotation.cpp.o -glui/libglui.a: glui/CMakeFiles/glui.dir/glui_scrollbar.cpp.o -glui/libglui.a: glui/CMakeFiles/glui.dir/glui_separator.cpp.o -glui/libglui.a: glui/CMakeFiles/glui.dir/glui_spinner.cpp.o -glui/libglui.a: glui/CMakeFiles/glui.dir/glui_statictext.cpp.o -glui/libglui.a: glui/CMakeFiles/glui.dir/glui_string.cpp.o -glui/libglui.a: glui/CMakeFiles/glui.dir/glui_textbox.cpp.o -glui/libglui.a: glui/CMakeFiles/glui.dir/glui_translation.cpp.o -glui/libglui.a: glui/CMakeFiles/glui.dir/glui_tree.cpp.o -glui/libglui.a: glui/CMakeFiles/glui.dir/glui_treepanel.cpp.o -glui/libglui.a: glui/CMakeFiles/glui.dir/glui_window.cpp.o -glui/libglui.a: glui/CMakeFiles/glui.dir/glui.cpp.o -glui/libglui.a: glui/CMakeFiles/glui.dir/quaternion.cpp.o -glui/libglui.a: glui/CMakeFiles/glui.dir/build.make -glui/libglui.a: glui/CMakeFiles/glui.dir/link.txt - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --red --bold "Linking CXX static library libglui.a" - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && $(CMAKE_COMMAND) -P CMakeFiles/glui.dir/cmake_clean_target.cmake - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/glui.dir/link.txt --verbose=$(VERBOSE) - -# Rule to build all files generated by this target. -glui/CMakeFiles/glui.dir/build: glui/libglui.a -.PHONY : glui/CMakeFiles/glui.dir/build - -glui/CMakeFiles/glui.dir/requires: glui/CMakeFiles/glui.dir/algebra3.cpp.o.requires -glui/CMakeFiles/glui.dir/requires: glui/CMakeFiles/glui.dir/arcball.cpp.o.requires -glui/CMakeFiles/glui.dir/requires: glui/CMakeFiles/glui.dir/glui_add_controls.cpp.o.requires -glui/CMakeFiles/glui.dir/requires: glui/CMakeFiles/glui.dir/glui_bitmap_img_data.cpp.o.requires -glui/CMakeFiles/glui.dir/requires: glui/CMakeFiles/glui.dir/glui_bitmaps.cpp.o.requires -glui/CMakeFiles/glui.dir/requires: glui/CMakeFiles/glui.dir/glui_button.cpp.o.requires -glui/CMakeFiles/glui.dir/requires: glui/CMakeFiles/glui.dir/glui_checkbox.cpp.o.requires -glui/CMakeFiles/glui.dir/requires: glui/CMakeFiles/glui.dir/glui_column.cpp.o.requires -glui/CMakeFiles/glui.dir/requires: glui/CMakeFiles/glui.dir/glui_commandline.cpp.o.requires -glui/CMakeFiles/glui.dir/requires: glui/CMakeFiles/glui.dir/glui_control.cpp.o.requires -glui/CMakeFiles/glui.dir/requires: glui/CMakeFiles/glui.dir/glui_edittext.cpp.o.requires -glui/CMakeFiles/glui.dir/requires: glui/CMakeFiles/glui.dir/glui_filebrowser.cpp.o.requires -glui/CMakeFiles/glui.dir/requires: glui/CMakeFiles/glui.dir/glui_list.cpp.o.requires -glui/CMakeFiles/glui.dir/requires: glui/CMakeFiles/glui.dir/glui_listbox.cpp.o.requires -glui/CMakeFiles/glui.dir/requires: glui/CMakeFiles/glui.dir/glui_mouse_iaction.cpp.o.requires -glui/CMakeFiles/glui.dir/requires: glui/CMakeFiles/glui.dir/glui_node.cpp.o.requires -glui/CMakeFiles/glui.dir/requires: glui/CMakeFiles/glui.dir/glui_panel.cpp.o.requires -glui/CMakeFiles/glui.dir/requires: glui/CMakeFiles/glui.dir/glui_radio.cpp.o.requires -glui/CMakeFiles/glui.dir/requires: glui/CMakeFiles/glui.dir/glui_rollout.cpp.o.requires -glui/CMakeFiles/glui.dir/requires: glui/CMakeFiles/glui.dir/glui_rotation.cpp.o.requires -glui/CMakeFiles/glui.dir/requires: glui/CMakeFiles/glui.dir/glui_scrollbar.cpp.o.requires -glui/CMakeFiles/glui.dir/requires: glui/CMakeFiles/glui.dir/glui_separator.cpp.o.requires -glui/CMakeFiles/glui.dir/requires: glui/CMakeFiles/glui.dir/glui_spinner.cpp.o.requires -glui/CMakeFiles/glui.dir/requires: glui/CMakeFiles/glui.dir/glui_statictext.cpp.o.requires -glui/CMakeFiles/glui.dir/requires: glui/CMakeFiles/glui.dir/glui_string.cpp.o.requires -glui/CMakeFiles/glui.dir/requires: glui/CMakeFiles/glui.dir/glui_textbox.cpp.o.requires -glui/CMakeFiles/glui.dir/requires: glui/CMakeFiles/glui.dir/glui_translation.cpp.o.requires -glui/CMakeFiles/glui.dir/requires: glui/CMakeFiles/glui.dir/glui_tree.cpp.o.requires -glui/CMakeFiles/glui.dir/requires: glui/CMakeFiles/glui.dir/glui_treepanel.cpp.o.requires -glui/CMakeFiles/glui.dir/requires: glui/CMakeFiles/glui.dir/glui_window.cpp.o.requires -glui/CMakeFiles/glui.dir/requires: glui/CMakeFiles/glui.dir/glui.cpp.o.requires -glui/CMakeFiles/glui.dir/requires: glui/CMakeFiles/glui.dir/quaternion.cpp.o.requires -.PHONY : glui/CMakeFiles/glui.dir/requires - -glui/CMakeFiles/glui.dir/clean: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui && $(CMAKE_COMMAND) -P CMakeFiles/glui.dir/cmake_clean.cmake -.PHONY : glui/CMakeFiles/glui.dir/clean - -glui/CMakeFiles/glui.dir/depend: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/DependInfo.cmake --color=$(COLOR) -.PHONY : glui/CMakeFiles/glui.dir/depend - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/cmake_clean.cmake b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/cmake_clean.cmake deleted file mode 100644 index 4a47bfd..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/cmake_clean.cmake +++ /dev/null @@ -1,41 +0,0 @@ -FILE(REMOVE_RECURSE - "CMakeFiles/glui.dir/algebra3.cpp.o" - "CMakeFiles/glui.dir/arcball.cpp.o" - "CMakeFiles/glui.dir/glui_add_controls.cpp.o" - "CMakeFiles/glui.dir/glui_bitmap_img_data.cpp.o" - "CMakeFiles/glui.dir/glui_bitmaps.cpp.o" - "CMakeFiles/glui.dir/glui_button.cpp.o" - "CMakeFiles/glui.dir/glui_checkbox.cpp.o" - "CMakeFiles/glui.dir/glui_column.cpp.o" - "CMakeFiles/glui.dir/glui_commandline.cpp.o" - "CMakeFiles/glui.dir/glui_control.cpp.o" - "CMakeFiles/glui.dir/glui_edittext.cpp.o" - "CMakeFiles/glui.dir/glui_filebrowser.cpp.o" - "CMakeFiles/glui.dir/glui_list.cpp.o" - "CMakeFiles/glui.dir/glui_listbox.cpp.o" - "CMakeFiles/glui.dir/glui_mouse_iaction.cpp.o" - "CMakeFiles/glui.dir/glui_node.cpp.o" - "CMakeFiles/glui.dir/glui_panel.cpp.o" - "CMakeFiles/glui.dir/glui_radio.cpp.o" - "CMakeFiles/glui.dir/glui_rollout.cpp.o" - "CMakeFiles/glui.dir/glui_rotation.cpp.o" - "CMakeFiles/glui.dir/glui_scrollbar.cpp.o" - "CMakeFiles/glui.dir/glui_separator.cpp.o" - "CMakeFiles/glui.dir/glui_spinner.cpp.o" - "CMakeFiles/glui.dir/glui_statictext.cpp.o" - "CMakeFiles/glui.dir/glui_string.cpp.o" - "CMakeFiles/glui.dir/glui_textbox.cpp.o" - "CMakeFiles/glui.dir/glui_translation.cpp.o" - "CMakeFiles/glui.dir/glui_tree.cpp.o" - "CMakeFiles/glui.dir/glui_treepanel.cpp.o" - "CMakeFiles/glui.dir/glui_window.cpp.o" - "CMakeFiles/glui.dir/glui.cpp.o" - "CMakeFiles/glui.dir/quaternion.cpp.o" - "libglui.pdb" - "libglui.a" -) - -# Per-language clean rules from dependency scanning. -FOREACH(lang CXX) - INCLUDE(CMakeFiles/glui.dir/cmake_clean_${lang}.cmake OPTIONAL) -ENDFOREACH(lang) diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/cmake_clean_target.cmake b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/cmake_clean_target.cmake deleted file mode 100644 index 1e0f5cc..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/cmake_clean_target.cmake +++ /dev/null @@ -1,3 +0,0 @@ -FILE(REMOVE_RECURSE - "libglui.a" -) diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/depend.internal b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/depend.internal deleted file mode 100644 index 008b03c..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/depend.internal +++ /dev/null @@ -1,236 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 2.8 - -glui/CMakeFiles/glui.dir/algebra3.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/algebra3.cpp - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/algebra3.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal.h -glui/CMakeFiles/glui.dir/arcball.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/algebra3.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/arcball.cpp - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/arcball.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/quaternion.h -glui/CMakeFiles/glui.dir/glui.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.cpp - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal_control.h - glui/../freeglut/freeglut.h - glui/../freeglut/freeglut_ext.h - glui/../freeglut/freeglut_std.h -glui/CMakeFiles/glui.dir/glui_add_controls.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_add_controls.cpp - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal.h - glui/../freeglut/freeglut.h - glui/../freeglut/freeglut_ext.h - glui/../freeglut/freeglut_std.h -glui/CMakeFiles/glui.dir/glui_bitmap_img_data.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_bitmap_img_data.cpp -glui/CMakeFiles/glui.dir/glui_bitmaps.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_bitmaps.cpp - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal.h - glui/../freeglut/freeglut.h - glui/../freeglut/freeglut_ext.h - glui/../freeglut/freeglut_std.h -glui/CMakeFiles/glui.dir/glui_button.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_button.cpp - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal_control.h - glui/../freeglut/freeglut.h - glui/../freeglut/freeglut_ext.h - glui/../freeglut/freeglut_std.h -glui/CMakeFiles/glui.dir/glui_checkbox.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_checkbox.cpp - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal_control.h - glui/../freeglut/freeglut.h - glui/../freeglut/freeglut_ext.h - glui/../freeglut/freeglut_std.h -glui/CMakeFiles/glui.dir/glui_column.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_column.cpp - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal_control.h - glui/../freeglut/freeglut.h - glui/../freeglut/freeglut_ext.h - glui/../freeglut/freeglut_std.h -glui/CMakeFiles/glui.dir/glui_commandline.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_commandline.cpp - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal.h - glui/../freeglut/freeglut.h - glui/../freeglut/freeglut_ext.h - glui/../freeglut/freeglut_std.h -glui/CMakeFiles/glui.dir/glui_control.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_control.cpp - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal_control.h - glui/../freeglut/freeglut.h - glui/../freeglut/freeglut_ext.h - glui/../freeglut/freeglut_std.h -glui/CMakeFiles/glui.dir/glui_edittext.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_edittext.cpp - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal_control.h - glui/../freeglut/freeglut.h - glui/../freeglut/freeglut_ext.h - glui/../freeglut/freeglut_std.h -glui/CMakeFiles/glui.dir/glui_filebrowser.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_filebrowser.cpp - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal.h - glui/../freeglut/freeglut.h - glui/../freeglut/freeglut_ext.h - glui/../freeglut/freeglut_std.h -glui/CMakeFiles/glui.dir/glui_list.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal_control.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_list.cpp - glui/../freeglut/freeglut.h - glui/../freeglut/freeglut_ext.h - glui/../freeglut/freeglut_std.h -glui/CMakeFiles/glui.dir/glui_listbox.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal_control.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_listbox.cpp - glui/../freeglut/freeglut.h - glui/../freeglut/freeglut_ext.h - glui/../freeglut/freeglut_std.h -glui/CMakeFiles/glui.dir/glui_mouse_iaction.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal_control.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_mouse_iaction.cpp - glui/../freeglut/freeglut.h - glui/../freeglut/freeglut_ext.h - glui/../freeglut/freeglut_std.h -glui/CMakeFiles/glui.dir/glui_node.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_node.cpp - glui/../freeglut/freeglut.h - glui/../freeglut/freeglut_ext.h - glui/../freeglut/freeglut_std.h -glui/CMakeFiles/glui.dir/glui_panel.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal_control.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_panel.cpp - glui/../freeglut/freeglut.h - glui/../freeglut/freeglut_ext.h - glui/../freeglut/freeglut_std.h -glui/CMakeFiles/glui.dir/glui_radio.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal_control.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_radio.cpp - glui/../freeglut/freeglut.h - glui/../freeglut/freeglut_ext.h - glui/../freeglut/freeglut_std.h -glui/CMakeFiles/glui.dir/glui_rollout.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal_control.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_rollout.cpp - glui/../freeglut/freeglut.h - glui/../freeglut/freeglut_ext.h - glui/../freeglut/freeglut_std.h -glui/CMakeFiles/glui.dir/glui_rotation.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/algebra3.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/arcball.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_rotation.cpp - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/quaternion.h - glui/../freeglut/freeglut.h - glui/../freeglut/freeglut_ext.h - glui/../freeglut/freeglut_std.h -glui/CMakeFiles/glui.dir/glui_scrollbar.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal_control.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_scrollbar.cpp - glui/../freeglut/freeglut.h - glui/../freeglut/freeglut_ext.h - glui/../freeglut/freeglut_std.h -glui/CMakeFiles/glui.dir/glui_separator.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal_control.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_separator.cpp - glui/../freeglut/freeglut.h - glui/../freeglut/freeglut_ext.h - glui/../freeglut/freeglut_std.h -glui/CMakeFiles/glui.dir/glui_spinner.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal_control.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_spinner.cpp - glui/../freeglut/freeglut.h - glui/../freeglut/freeglut_ext.h - glui/../freeglut/freeglut_std.h -glui/CMakeFiles/glui.dir/glui_statictext.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal_control.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_statictext.cpp - glui/../freeglut/freeglut.h - glui/../freeglut/freeglut_ext.h - glui/../freeglut/freeglut_std.h -glui/CMakeFiles/glui.dir/glui_string.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_string.cpp - glui/../freeglut/freeglut.h - glui/../freeglut/freeglut_ext.h - glui/../freeglut/freeglut_std.h -glui/CMakeFiles/glui.dir/glui_textbox.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal_control.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_textbox.cpp - glui/../freeglut/freeglut.h - glui/../freeglut/freeglut_ext.h - glui/../freeglut/freeglut_std.h -glui/CMakeFiles/glui.dir/glui_translation.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/algebra3.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_translation.cpp - glui/../freeglut/freeglut.h - glui/../freeglut/freeglut_ext.h - glui/../freeglut/freeglut_std.h -glui/CMakeFiles/glui.dir/glui_tree.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal_control.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_tree.cpp - glui/../freeglut/freeglut.h - glui/../freeglut/freeglut_ext.h - glui/../freeglut/freeglut_std.h -glui/CMakeFiles/glui.dir/glui_treepanel.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_treepanel.cpp - glui/../freeglut/freeglut.h - glui/../freeglut/freeglut_ext.h - glui/../freeglut/freeglut_std.h -glui/CMakeFiles/glui.dir/glui_window.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_window.cpp - glui/../freeglut/freeglut.h - glui/../freeglut/freeglut_ext.h - glui/../freeglut/freeglut_std.h -glui/CMakeFiles/glui.dir/quaternion.cpp.o - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/algebra3.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal.h - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/quaternion.cpp - /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/quaternion.h diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/depend.make b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/depend.make deleted file mode 100644 index 418904d..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/depend.make +++ /dev/null @@ -1,236 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 2.8 - -glui/CMakeFiles/glui.dir/algebra3.cpp.o: glui/algebra3.cpp -glui/CMakeFiles/glui.dir/algebra3.cpp.o: glui/algebra3.h -glui/CMakeFiles/glui.dir/algebra3.cpp.o: glui/glui_internal.h - -glui/CMakeFiles/glui.dir/arcball.cpp.o: glui/algebra3.h -glui/CMakeFiles/glui.dir/arcball.cpp.o: glui/arcball.cpp -glui/CMakeFiles/glui.dir/arcball.cpp.o: glui/arcball.h -glui/CMakeFiles/glui.dir/arcball.cpp.o: glui/glui_internal.h -glui/CMakeFiles/glui.dir/arcball.cpp.o: glui/quaternion.h - -glui/CMakeFiles/glui.dir/glui.cpp.o: glui/glui.cpp -glui/CMakeFiles/glui.dir/glui.cpp.o: glui/glui.h -glui/CMakeFiles/glui.dir/glui.cpp.o: glui/glui_internal.h -glui/CMakeFiles/glui.dir/glui.cpp.o: glui/glui_internal_control.h -glui/CMakeFiles/glui.dir/glui.cpp.o: glui/../freeglut/freeglut.h -glui/CMakeFiles/glui.dir/glui.cpp.o: glui/../freeglut/freeglut_ext.h -glui/CMakeFiles/glui.dir/glui.cpp.o: glui/../freeglut/freeglut_std.h - -glui/CMakeFiles/glui.dir/glui_add_controls.cpp.o: glui/glui.h -glui/CMakeFiles/glui.dir/glui_add_controls.cpp.o: glui/glui_add_controls.cpp -glui/CMakeFiles/glui.dir/glui_add_controls.cpp.o: glui/glui_internal.h -glui/CMakeFiles/glui.dir/glui_add_controls.cpp.o: glui/../freeglut/freeglut.h -glui/CMakeFiles/glui.dir/glui_add_controls.cpp.o: glui/../freeglut/freeglut_ext.h -glui/CMakeFiles/glui.dir/glui_add_controls.cpp.o: glui/../freeglut/freeglut_std.h - -glui/CMakeFiles/glui.dir/glui_bitmap_img_data.cpp.o: glui/glui_bitmap_img_data.cpp - -glui/CMakeFiles/glui.dir/glui_bitmaps.cpp.o: glui/glui.h -glui/CMakeFiles/glui.dir/glui_bitmaps.cpp.o: glui/glui_bitmaps.cpp -glui/CMakeFiles/glui.dir/glui_bitmaps.cpp.o: glui/glui_internal.h -glui/CMakeFiles/glui.dir/glui_bitmaps.cpp.o: glui/../freeglut/freeglut.h -glui/CMakeFiles/glui.dir/glui_bitmaps.cpp.o: glui/../freeglut/freeglut_ext.h -glui/CMakeFiles/glui.dir/glui_bitmaps.cpp.o: glui/../freeglut/freeglut_std.h - -glui/CMakeFiles/glui.dir/glui_button.cpp.o: glui/glui.h -glui/CMakeFiles/glui.dir/glui_button.cpp.o: glui/glui_button.cpp -glui/CMakeFiles/glui.dir/glui_button.cpp.o: glui/glui_internal.h -glui/CMakeFiles/glui.dir/glui_button.cpp.o: glui/glui_internal_control.h -glui/CMakeFiles/glui.dir/glui_button.cpp.o: glui/../freeglut/freeglut.h -glui/CMakeFiles/glui.dir/glui_button.cpp.o: glui/../freeglut/freeglut_ext.h -glui/CMakeFiles/glui.dir/glui_button.cpp.o: glui/../freeglut/freeglut_std.h - -glui/CMakeFiles/glui.dir/glui_checkbox.cpp.o: glui/glui.h -glui/CMakeFiles/glui.dir/glui_checkbox.cpp.o: glui/glui_checkbox.cpp -glui/CMakeFiles/glui.dir/glui_checkbox.cpp.o: glui/glui_internal.h -glui/CMakeFiles/glui.dir/glui_checkbox.cpp.o: glui/glui_internal_control.h -glui/CMakeFiles/glui.dir/glui_checkbox.cpp.o: glui/../freeglut/freeglut.h -glui/CMakeFiles/glui.dir/glui_checkbox.cpp.o: glui/../freeglut/freeglut_ext.h -glui/CMakeFiles/glui.dir/glui_checkbox.cpp.o: glui/../freeglut/freeglut_std.h - -glui/CMakeFiles/glui.dir/glui_column.cpp.o: glui/glui.h -glui/CMakeFiles/glui.dir/glui_column.cpp.o: glui/glui_column.cpp -glui/CMakeFiles/glui.dir/glui_column.cpp.o: glui/glui_internal.h -glui/CMakeFiles/glui.dir/glui_column.cpp.o: glui/glui_internal_control.h -glui/CMakeFiles/glui.dir/glui_column.cpp.o: glui/../freeglut/freeglut.h -glui/CMakeFiles/glui.dir/glui_column.cpp.o: glui/../freeglut/freeglut_ext.h -glui/CMakeFiles/glui.dir/glui_column.cpp.o: glui/../freeglut/freeglut_std.h - -glui/CMakeFiles/glui.dir/glui_commandline.cpp.o: glui/glui.h -glui/CMakeFiles/glui.dir/glui_commandline.cpp.o: glui/glui_commandline.cpp -glui/CMakeFiles/glui.dir/glui_commandline.cpp.o: glui/glui_internal.h -glui/CMakeFiles/glui.dir/glui_commandline.cpp.o: glui/../freeglut/freeglut.h -glui/CMakeFiles/glui.dir/glui_commandline.cpp.o: glui/../freeglut/freeglut_ext.h -glui/CMakeFiles/glui.dir/glui_commandline.cpp.o: glui/../freeglut/freeglut_std.h - -glui/CMakeFiles/glui.dir/glui_control.cpp.o: glui/glui.h -glui/CMakeFiles/glui.dir/glui_control.cpp.o: glui/glui_control.cpp -glui/CMakeFiles/glui.dir/glui_control.cpp.o: glui/glui_internal.h -glui/CMakeFiles/glui.dir/glui_control.cpp.o: glui/glui_internal_control.h -glui/CMakeFiles/glui.dir/glui_control.cpp.o: glui/../freeglut/freeglut.h -glui/CMakeFiles/glui.dir/glui_control.cpp.o: glui/../freeglut/freeglut_ext.h -glui/CMakeFiles/glui.dir/glui_control.cpp.o: glui/../freeglut/freeglut_std.h - -glui/CMakeFiles/glui.dir/glui_edittext.cpp.o: glui/glui.h -glui/CMakeFiles/glui.dir/glui_edittext.cpp.o: glui/glui_edittext.cpp -glui/CMakeFiles/glui.dir/glui_edittext.cpp.o: glui/glui_internal.h -glui/CMakeFiles/glui.dir/glui_edittext.cpp.o: glui/glui_internal_control.h -glui/CMakeFiles/glui.dir/glui_edittext.cpp.o: glui/../freeglut/freeglut.h -glui/CMakeFiles/glui.dir/glui_edittext.cpp.o: glui/../freeglut/freeglut_ext.h -glui/CMakeFiles/glui.dir/glui_edittext.cpp.o: glui/../freeglut/freeglut_std.h - -glui/CMakeFiles/glui.dir/glui_filebrowser.cpp.o: glui/glui.h -glui/CMakeFiles/glui.dir/glui_filebrowser.cpp.o: glui/glui_filebrowser.cpp -glui/CMakeFiles/glui.dir/glui_filebrowser.cpp.o: glui/glui_internal.h -glui/CMakeFiles/glui.dir/glui_filebrowser.cpp.o: glui/../freeglut/freeglut.h -glui/CMakeFiles/glui.dir/glui_filebrowser.cpp.o: glui/../freeglut/freeglut_ext.h -glui/CMakeFiles/glui.dir/glui_filebrowser.cpp.o: glui/../freeglut/freeglut_std.h - -glui/CMakeFiles/glui.dir/glui_list.cpp.o: glui/glui.h -glui/CMakeFiles/glui.dir/glui_list.cpp.o: glui/glui_internal.h -glui/CMakeFiles/glui.dir/glui_list.cpp.o: glui/glui_internal_control.h -glui/CMakeFiles/glui.dir/glui_list.cpp.o: glui/glui_list.cpp -glui/CMakeFiles/glui.dir/glui_list.cpp.o: glui/../freeglut/freeglut.h -glui/CMakeFiles/glui.dir/glui_list.cpp.o: glui/../freeglut/freeglut_ext.h -glui/CMakeFiles/glui.dir/glui_list.cpp.o: glui/../freeglut/freeglut_std.h - -glui/CMakeFiles/glui.dir/glui_listbox.cpp.o: glui/glui.h -glui/CMakeFiles/glui.dir/glui_listbox.cpp.o: glui/glui_internal.h -glui/CMakeFiles/glui.dir/glui_listbox.cpp.o: glui/glui_internal_control.h -glui/CMakeFiles/glui.dir/glui_listbox.cpp.o: glui/glui_listbox.cpp -glui/CMakeFiles/glui.dir/glui_listbox.cpp.o: glui/../freeglut/freeglut.h -glui/CMakeFiles/glui.dir/glui_listbox.cpp.o: glui/../freeglut/freeglut_ext.h -glui/CMakeFiles/glui.dir/glui_listbox.cpp.o: glui/../freeglut/freeglut_std.h - -glui/CMakeFiles/glui.dir/glui_mouse_iaction.cpp.o: glui/glui.h -glui/CMakeFiles/glui.dir/glui_mouse_iaction.cpp.o: glui/glui_internal.h -glui/CMakeFiles/glui.dir/glui_mouse_iaction.cpp.o: glui/glui_internal_control.h -glui/CMakeFiles/glui.dir/glui_mouse_iaction.cpp.o: glui/glui_mouse_iaction.cpp -glui/CMakeFiles/glui.dir/glui_mouse_iaction.cpp.o: glui/../freeglut/freeglut.h -glui/CMakeFiles/glui.dir/glui_mouse_iaction.cpp.o: glui/../freeglut/freeglut_ext.h -glui/CMakeFiles/glui.dir/glui_mouse_iaction.cpp.o: glui/../freeglut/freeglut_std.h - -glui/CMakeFiles/glui.dir/glui_node.cpp.o: glui/glui.h -glui/CMakeFiles/glui.dir/glui_node.cpp.o: glui/glui_internal.h -glui/CMakeFiles/glui.dir/glui_node.cpp.o: glui/glui_node.cpp -glui/CMakeFiles/glui.dir/glui_node.cpp.o: glui/../freeglut/freeglut.h -glui/CMakeFiles/glui.dir/glui_node.cpp.o: glui/../freeglut/freeglut_ext.h -glui/CMakeFiles/glui.dir/glui_node.cpp.o: glui/../freeglut/freeglut_std.h - -glui/CMakeFiles/glui.dir/glui_panel.cpp.o: glui/glui.h -glui/CMakeFiles/glui.dir/glui_panel.cpp.o: glui/glui_internal.h -glui/CMakeFiles/glui.dir/glui_panel.cpp.o: glui/glui_internal_control.h -glui/CMakeFiles/glui.dir/glui_panel.cpp.o: glui/glui_panel.cpp -glui/CMakeFiles/glui.dir/glui_panel.cpp.o: glui/../freeglut/freeglut.h -glui/CMakeFiles/glui.dir/glui_panel.cpp.o: glui/../freeglut/freeglut_ext.h -glui/CMakeFiles/glui.dir/glui_panel.cpp.o: glui/../freeglut/freeglut_std.h - -glui/CMakeFiles/glui.dir/glui_radio.cpp.o: glui/glui.h -glui/CMakeFiles/glui.dir/glui_radio.cpp.o: glui/glui_internal.h -glui/CMakeFiles/glui.dir/glui_radio.cpp.o: glui/glui_internal_control.h -glui/CMakeFiles/glui.dir/glui_radio.cpp.o: glui/glui_radio.cpp -glui/CMakeFiles/glui.dir/glui_radio.cpp.o: glui/../freeglut/freeglut.h -glui/CMakeFiles/glui.dir/glui_radio.cpp.o: glui/../freeglut/freeglut_ext.h -glui/CMakeFiles/glui.dir/glui_radio.cpp.o: glui/../freeglut/freeglut_std.h - -glui/CMakeFiles/glui.dir/glui_rollout.cpp.o: glui/glui.h -glui/CMakeFiles/glui.dir/glui_rollout.cpp.o: glui/glui_internal.h -glui/CMakeFiles/glui.dir/glui_rollout.cpp.o: glui/glui_internal_control.h -glui/CMakeFiles/glui.dir/glui_rollout.cpp.o: glui/glui_rollout.cpp -glui/CMakeFiles/glui.dir/glui_rollout.cpp.o: glui/../freeglut/freeglut.h -glui/CMakeFiles/glui.dir/glui_rollout.cpp.o: glui/../freeglut/freeglut_ext.h -glui/CMakeFiles/glui.dir/glui_rollout.cpp.o: glui/../freeglut/freeglut_std.h - -glui/CMakeFiles/glui.dir/glui_rotation.cpp.o: glui/algebra3.h -glui/CMakeFiles/glui.dir/glui_rotation.cpp.o: glui/arcball.h -glui/CMakeFiles/glui.dir/glui_rotation.cpp.o: glui/glui.h -glui/CMakeFiles/glui.dir/glui_rotation.cpp.o: glui/glui_internal.h -glui/CMakeFiles/glui.dir/glui_rotation.cpp.o: glui/glui_rotation.cpp -glui/CMakeFiles/glui.dir/glui_rotation.cpp.o: glui/quaternion.h -glui/CMakeFiles/glui.dir/glui_rotation.cpp.o: glui/../freeglut/freeglut.h -glui/CMakeFiles/glui.dir/glui_rotation.cpp.o: glui/../freeglut/freeglut_ext.h -glui/CMakeFiles/glui.dir/glui_rotation.cpp.o: glui/../freeglut/freeglut_std.h - -glui/CMakeFiles/glui.dir/glui_scrollbar.cpp.o: glui/glui.h -glui/CMakeFiles/glui.dir/glui_scrollbar.cpp.o: glui/glui_internal.h -glui/CMakeFiles/glui.dir/glui_scrollbar.cpp.o: glui/glui_internal_control.h -glui/CMakeFiles/glui.dir/glui_scrollbar.cpp.o: glui/glui_scrollbar.cpp -glui/CMakeFiles/glui.dir/glui_scrollbar.cpp.o: glui/../freeglut/freeglut.h -glui/CMakeFiles/glui.dir/glui_scrollbar.cpp.o: glui/../freeglut/freeglut_ext.h -glui/CMakeFiles/glui.dir/glui_scrollbar.cpp.o: glui/../freeglut/freeglut_std.h - -glui/CMakeFiles/glui.dir/glui_separator.cpp.o: glui/glui.h -glui/CMakeFiles/glui.dir/glui_separator.cpp.o: glui/glui_internal.h -glui/CMakeFiles/glui.dir/glui_separator.cpp.o: glui/glui_internal_control.h -glui/CMakeFiles/glui.dir/glui_separator.cpp.o: glui/glui_separator.cpp -glui/CMakeFiles/glui.dir/glui_separator.cpp.o: glui/../freeglut/freeglut.h -glui/CMakeFiles/glui.dir/glui_separator.cpp.o: glui/../freeglut/freeglut_ext.h -glui/CMakeFiles/glui.dir/glui_separator.cpp.o: glui/../freeglut/freeglut_std.h - -glui/CMakeFiles/glui.dir/glui_spinner.cpp.o: glui/glui.h -glui/CMakeFiles/glui.dir/glui_spinner.cpp.o: glui/glui_internal.h -glui/CMakeFiles/glui.dir/glui_spinner.cpp.o: glui/glui_internal_control.h -glui/CMakeFiles/glui.dir/glui_spinner.cpp.o: glui/glui_spinner.cpp -glui/CMakeFiles/glui.dir/glui_spinner.cpp.o: glui/../freeglut/freeglut.h -glui/CMakeFiles/glui.dir/glui_spinner.cpp.o: glui/../freeglut/freeglut_ext.h -glui/CMakeFiles/glui.dir/glui_spinner.cpp.o: glui/../freeglut/freeglut_std.h - -glui/CMakeFiles/glui.dir/glui_statictext.cpp.o: glui/glui.h -glui/CMakeFiles/glui.dir/glui_statictext.cpp.o: glui/glui_internal.h -glui/CMakeFiles/glui.dir/glui_statictext.cpp.o: glui/glui_internal_control.h -glui/CMakeFiles/glui.dir/glui_statictext.cpp.o: glui/glui_statictext.cpp -glui/CMakeFiles/glui.dir/glui_statictext.cpp.o: glui/../freeglut/freeglut.h -glui/CMakeFiles/glui.dir/glui_statictext.cpp.o: glui/../freeglut/freeglut_ext.h -glui/CMakeFiles/glui.dir/glui_statictext.cpp.o: glui/../freeglut/freeglut_std.h - -glui/CMakeFiles/glui.dir/glui_string.cpp.o: glui/glui.h -glui/CMakeFiles/glui.dir/glui_string.cpp.o: glui/glui_string.cpp -glui/CMakeFiles/glui.dir/glui_string.cpp.o: glui/../freeglut/freeglut.h -glui/CMakeFiles/glui.dir/glui_string.cpp.o: glui/../freeglut/freeglut_ext.h -glui/CMakeFiles/glui.dir/glui_string.cpp.o: glui/../freeglut/freeglut_std.h - -glui/CMakeFiles/glui.dir/glui_textbox.cpp.o: glui/glui.h -glui/CMakeFiles/glui.dir/glui_textbox.cpp.o: glui/glui_internal.h -glui/CMakeFiles/glui.dir/glui_textbox.cpp.o: glui/glui_internal_control.h -glui/CMakeFiles/glui.dir/glui_textbox.cpp.o: glui/glui_textbox.cpp -glui/CMakeFiles/glui.dir/glui_textbox.cpp.o: glui/../freeglut/freeglut.h -glui/CMakeFiles/glui.dir/glui_textbox.cpp.o: glui/../freeglut/freeglut_ext.h -glui/CMakeFiles/glui.dir/glui_textbox.cpp.o: glui/../freeglut/freeglut_std.h - -glui/CMakeFiles/glui.dir/glui_translation.cpp.o: glui/algebra3.h -glui/CMakeFiles/glui.dir/glui_translation.cpp.o: glui/glui.h -glui/CMakeFiles/glui.dir/glui_translation.cpp.o: glui/glui_internal.h -glui/CMakeFiles/glui.dir/glui_translation.cpp.o: glui/glui_translation.cpp -glui/CMakeFiles/glui.dir/glui_translation.cpp.o: glui/../freeglut/freeglut.h -glui/CMakeFiles/glui.dir/glui_translation.cpp.o: glui/../freeglut/freeglut_ext.h -glui/CMakeFiles/glui.dir/glui_translation.cpp.o: glui/../freeglut/freeglut_std.h - -glui/CMakeFiles/glui.dir/glui_tree.cpp.o: glui/glui.h -glui/CMakeFiles/glui.dir/glui_tree.cpp.o: glui/glui_internal.h -glui/CMakeFiles/glui.dir/glui_tree.cpp.o: glui/glui_internal_control.h -glui/CMakeFiles/glui.dir/glui_tree.cpp.o: glui/glui_tree.cpp -glui/CMakeFiles/glui.dir/glui_tree.cpp.o: glui/../freeglut/freeglut.h -glui/CMakeFiles/glui.dir/glui_tree.cpp.o: glui/../freeglut/freeglut_ext.h -glui/CMakeFiles/glui.dir/glui_tree.cpp.o: glui/../freeglut/freeglut_std.h - -glui/CMakeFiles/glui.dir/glui_treepanel.cpp.o: glui/glui.h -glui/CMakeFiles/glui.dir/glui_treepanel.cpp.o: glui/glui_treepanel.cpp -glui/CMakeFiles/glui.dir/glui_treepanel.cpp.o: glui/../freeglut/freeglut.h -glui/CMakeFiles/glui.dir/glui_treepanel.cpp.o: glui/../freeglut/freeglut_ext.h -glui/CMakeFiles/glui.dir/glui_treepanel.cpp.o: glui/../freeglut/freeglut_std.h - -glui/CMakeFiles/glui.dir/glui_window.cpp.o: glui/glui.h -glui/CMakeFiles/glui.dir/glui_window.cpp.o: glui/glui_internal.h -glui/CMakeFiles/glui.dir/glui_window.cpp.o: glui/glui_window.cpp -glui/CMakeFiles/glui.dir/glui_window.cpp.o: glui/../freeglut/freeglut.h -glui/CMakeFiles/glui.dir/glui_window.cpp.o: glui/../freeglut/freeglut_ext.h -glui/CMakeFiles/glui.dir/glui_window.cpp.o: glui/../freeglut/freeglut_std.h - -glui/CMakeFiles/glui.dir/quaternion.cpp.o: glui/algebra3.h -glui/CMakeFiles/glui.dir/quaternion.cpp.o: glui/glui_internal.h -glui/CMakeFiles/glui.dir/quaternion.cpp.o: glui/quaternion.cpp -glui/CMakeFiles/glui.dir/quaternion.cpp.o: glui/quaternion.h - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/flags.make b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/flags.make deleted file mode 100644 index 297b005..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/flags.make +++ /dev/null @@ -1,8 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 2.8 - -# compile CXX with /usr/bin/c++ -CXX_FLAGS = -I/home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/.. - -CXX_DEFINES = -DFREEGLUT_STATIC -D_CRT_SECURE_NO_WARNINGS - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui.cpp.o deleted file mode 100644 index 8d48998..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_add_controls.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_add_controls.cpp.o deleted file mode 100644 index 08c680e..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_add_controls.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_bitmap_img_data.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_bitmap_img_data.cpp.o deleted file mode 100644 index 8b1cfe8..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_bitmap_img_data.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_bitmaps.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_bitmaps.cpp.o deleted file mode 100644 index c5d1a6c..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_bitmaps.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_button.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_button.cpp.o deleted file mode 100644 index 73b7588..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_button.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_checkbox.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_checkbox.cpp.o deleted file mode 100644 index 7a668b8..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_checkbox.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_column.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_column.cpp.o deleted file mode 100644 index 5fbdb28..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_column.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_commandline.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_commandline.cpp.o deleted file mode 100644 index 80a0d3d..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_commandline.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_control.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_control.cpp.o deleted file mode 100644 index 9c5c619..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_control.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_edittext.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_edittext.cpp.o deleted file mode 100644 index 528d2d7..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_edittext.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_filebrowser.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_filebrowser.cpp.o deleted file mode 100644 index 0c28188..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_filebrowser.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_list.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_list.cpp.o deleted file mode 100644 index d0d3b99..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_list.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_listbox.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_listbox.cpp.o deleted file mode 100644 index 6556dcc..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_listbox.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_mouse_iaction.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_mouse_iaction.cpp.o deleted file mode 100644 index 26bf7c6..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_mouse_iaction.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_node.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_node.cpp.o deleted file mode 100644 index 9bd13ed..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_node.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_panel.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_panel.cpp.o deleted file mode 100644 index 5647615..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_panel.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_radio.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_radio.cpp.o deleted file mode 100644 index 2f5a345..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_radio.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_rollout.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_rollout.cpp.o deleted file mode 100644 index 2bb92f4..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_rollout.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_rotation.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_rotation.cpp.o deleted file mode 100644 index 9588d1c..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_rotation.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_scrollbar.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_scrollbar.cpp.o deleted file mode 100644 index c4a0c0e..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_scrollbar.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_separator.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_separator.cpp.o deleted file mode 100644 index 4f2fe91..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_separator.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_spinner.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_spinner.cpp.o deleted file mode 100644 index 136853e..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_spinner.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_statictext.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_statictext.cpp.o deleted file mode 100644 index bd79d89..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_statictext.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_string.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_string.cpp.o deleted file mode 100644 index b1396a3..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_string.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_textbox.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_textbox.cpp.o deleted file mode 100644 index 8fae777..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_textbox.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_translation.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_translation.cpp.o deleted file mode 100644 index d4e6547..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_translation.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_tree.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_tree.cpp.o deleted file mode 100644 index c67f197..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_tree.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_treepanel.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_treepanel.cpp.o deleted file mode 100644 index 6515fe1..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_treepanel.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_window.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_window.cpp.o deleted file mode 100644 index d6ae669..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/glui_window.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/link.txt b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/link.txt deleted file mode 100644 index 36951f9..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/link.txt +++ /dev/null @@ -1,2 +0,0 @@ -/usr/bin/ar cr libglui.a CMakeFiles/glui.dir/algebra3.cpp.o CMakeFiles/glui.dir/arcball.cpp.o CMakeFiles/glui.dir/glui_add_controls.cpp.o CMakeFiles/glui.dir/glui_bitmap_img_data.cpp.o CMakeFiles/glui.dir/glui_bitmaps.cpp.o CMakeFiles/glui.dir/glui_button.cpp.o CMakeFiles/glui.dir/glui_checkbox.cpp.o CMakeFiles/glui.dir/glui_column.cpp.o CMakeFiles/glui.dir/glui_commandline.cpp.o CMakeFiles/glui.dir/glui_control.cpp.o CMakeFiles/glui.dir/glui_edittext.cpp.o CMakeFiles/glui.dir/glui_filebrowser.cpp.o CMakeFiles/glui.dir/glui_list.cpp.o CMakeFiles/glui.dir/glui_listbox.cpp.o CMakeFiles/glui.dir/glui_mouse_iaction.cpp.o CMakeFiles/glui.dir/glui_node.cpp.o CMakeFiles/glui.dir/glui_panel.cpp.o CMakeFiles/glui.dir/glui_radio.cpp.o CMakeFiles/glui.dir/glui_rollout.cpp.o CMakeFiles/glui.dir/glui_rotation.cpp.o CMakeFiles/glui.dir/glui_scrollbar.cpp.o CMakeFiles/glui.dir/glui_separator.cpp.o CMakeFiles/glui.dir/glui_spinner.cpp.o CMakeFiles/glui.dir/glui_statictext.cpp.o CMakeFiles/glui.dir/glui_string.cpp.o CMakeFiles/glui.dir/glui_textbox.cpp.o CMakeFiles/glui.dir/glui_translation.cpp.o CMakeFiles/glui.dir/glui_tree.cpp.o CMakeFiles/glui.dir/glui_treepanel.cpp.o CMakeFiles/glui.dir/glui_window.cpp.o CMakeFiles/glui.dir/glui.cpp.o CMakeFiles/glui.dir/quaternion.cpp.o -/usr/bin/ranlib libglui.a diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/progress.make b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/progress.make deleted file mode 100644 index aabd14c..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/progress.make +++ /dev/null @@ -1,33 +0,0 @@ -CMAKE_PROGRESS_1 = 71 -CMAKE_PROGRESS_2 = -CMAKE_PROGRESS_3 = 72 -CMAKE_PROGRESS_4 = 73 -CMAKE_PROGRESS_5 = 74 -CMAKE_PROGRESS_6 = 75 -CMAKE_PROGRESS_7 = 76 -CMAKE_PROGRESS_8 = 77 -CMAKE_PROGRESS_9 = 78 -CMAKE_PROGRESS_10 = 79 -CMAKE_PROGRESS_11 = 80 -CMAKE_PROGRESS_12 = 81 -CMAKE_PROGRESS_13 = 82 -CMAKE_PROGRESS_14 = 83 -CMAKE_PROGRESS_15 = 84 -CMAKE_PROGRESS_16 = 85 -CMAKE_PROGRESS_17 = -CMAKE_PROGRESS_18 = 86 -CMAKE_PROGRESS_19 = 87 -CMAKE_PROGRESS_20 = 88 -CMAKE_PROGRESS_21 = 89 -CMAKE_PROGRESS_22 = 90 -CMAKE_PROGRESS_23 = 91 -CMAKE_PROGRESS_24 = 92 -CMAKE_PROGRESS_25 = 93 -CMAKE_PROGRESS_26 = 94 -CMAKE_PROGRESS_27 = 95 -CMAKE_PROGRESS_28 = 96 -CMAKE_PROGRESS_29 = 97 -CMAKE_PROGRESS_30 = 98 -CMAKE_PROGRESS_31 = 99 -CMAKE_PROGRESS_32 = 100 - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/quaternion.cpp.o b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/quaternion.cpp.o deleted file mode 100644 index dc708fa..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/glui.dir/quaternion.cpp.o and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/progress.marks b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/progress.marks deleted file mode 100644 index 64bb6b7..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/progress.marks +++ /dev/null @@ -1 +0,0 @@ -30 diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeLists.txt b/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeLists.txt deleted file mode 100644 index 1e50298..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeLists.txt +++ /dev/null @@ -1,49 +0,0 @@ -add_definitions( -DFREEGLUT_STATIC -D_CRT_SECURE_NO_WARNINGS ) - -if(MSVC) - SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /W1") -endif(MSVC) - -set(glui_SRCS - algebra3.cpp - arcball.cpp - glui_add_controls.cpp - glui_bitmap_img_data.cpp - glui_bitmaps.cpp - glui_button.cpp - glui_checkbox.cpp - glui_column.cpp - glui_commandline.cpp - glui_control.cpp - glui_edittext.cpp - glui_filebrowser.cpp - glui_list.cpp - glui_listbox.cpp - glui_mouse_iaction.cpp - glui_node.cpp - glui_panel.cpp - glui_radio.cpp - glui_rollout.cpp - glui_rotation.cpp - glui_scrollbar.cpp - glui_separator.cpp - glui_spinner.cpp - glui_statictext.cpp - glui_string.cpp - glui_textbox.cpp - glui_translation.cpp - glui_tree.cpp - glui_treepanel.cpp - glui_window.cpp - glui.cpp - quaternion.cpp -) - -include_directories ( - ${OPENGL_INCLUDE_DIR} - ../ -) - -add_library(glui - ${glui_SRCS} -) diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/Makefile b/src/dependencies/Box2D_v2.3.0/Box2D/glui/Makefile deleted file mode 100644 index 2b8ff51..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/Makefile +++ /dev/null @@ -1,1046 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 2.8 - -# Default target executed when no arguments are given to make. -default_target: all -.PHONY : default_target - -#============================================================================= -# Special targets provided by cmake. - -# Disable implicit rules so canonical targets will work. -.SUFFIXES: - -# Remove some rules from gmake that .SUFFIXES does not remove. -SUFFIXES = - -.SUFFIXES: .hpux_make_needs_suffix_list - -# Suppress display of executed commands. -$(VERBOSE).SILENT: - -# A target that is always out of date. -cmake_force: -.PHONY : cmake_force - -#============================================================================= -# Set environment variables for the build. - -# The shell in which to execute make rules. -SHELL = /bin/sh - -# The CMake executable. -CMAKE_COMMAND = /usr/bin/cmake - -# The command to remove a file. -RM = /usr/bin/cmake -E remove -f - -# Escaping for special characters. -EQUALS = = - -# The top-level source directory on which CMake was run. -CMAKE_SOURCE_DIR = /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D - -# The top-level build directory on which CMake was run. -CMAKE_BINARY_DIR = /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D - -#============================================================================= -# Targets provided globally by CMake. - -# Special rule for the target edit_cache -edit_cache: - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running interactive CMake command-line interface..." - /usr/bin/cmake -i . -.PHONY : edit_cache - -# Special rule for the target edit_cache -edit_cache/fast: edit_cache -.PHONY : edit_cache/fast - -# Special rule for the target install -install: preinstall - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..." - /usr/bin/cmake -P cmake_install.cmake -.PHONY : install - -# Special rule for the target install -install/fast: preinstall/fast - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..." - /usr/bin/cmake -P cmake_install.cmake -.PHONY : install/fast - -# Special rule for the target install/local -install/local: preinstall - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..." - /usr/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake -.PHONY : install/local - -# Special rule for the target install/local -install/local/fast: install/local -.PHONY : install/local/fast - -# Special rule for the target install/strip -install/strip: preinstall - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..." - /usr/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake -.PHONY : install/strip - -# Special rule for the target install/strip -install/strip/fast: install/strip -.PHONY : install/strip/fast - -# Special rule for the target list_install_components -list_install_components: - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Available install components are: \"Unspecified\"" -.PHONY : list_install_components - -# Special rule for the target list_install_components -list_install_components/fast: list_install_components -.PHONY : list_install_components/fast - -# Special rule for the target rebuild_cache -rebuild_cache: - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..." - /usr/bin/cmake -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) -.PHONY : rebuild_cache - -# Special rule for the target rebuild_cache -rebuild_cache/fast: rebuild_cache -.PHONY : rebuild_cache/fast - -# The main all target -all: cmake_check_build_system - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(CMAKE_COMMAND) -E cmake_progress_start /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui/CMakeFiles/progress.marks - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f CMakeFiles/Makefile2 glui/all - $(CMAKE_COMMAND) -E cmake_progress_start /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/CMakeFiles 0 -.PHONY : all - -# The main clean target -clean: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f CMakeFiles/Makefile2 glui/clean -.PHONY : clean - -# The main clean target -clean/fast: clean -.PHONY : clean/fast - -# Prepare targets for installation. -preinstall: all - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f CMakeFiles/Makefile2 glui/preinstall -.PHONY : preinstall - -# Prepare targets for installation. -preinstall/fast: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f CMakeFiles/Makefile2 glui/preinstall -.PHONY : preinstall/fast - -# clear depends -depend: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1 -.PHONY : depend - -# Convenience name for target. -glui/CMakeFiles/glui.dir/rule: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f CMakeFiles/Makefile2 glui/CMakeFiles/glui.dir/rule -.PHONY : glui/CMakeFiles/glui.dir/rule - -# Convenience name for target. -glui: glui/CMakeFiles/glui.dir/rule -.PHONY : glui - -# fast build rule for target. -glui/fast: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/build -.PHONY : glui/fast - -algebra3.o: algebra3.cpp.o -.PHONY : algebra3.o - -# target to build an object file -algebra3.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/algebra3.cpp.o -.PHONY : algebra3.cpp.o - -algebra3.i: algebra3.cpp.i -.PHONY : algebra3.i - -# target to preprocess a source file -algebra3.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/algebra3.cpp.i -.PHONY : algebra3.cpp.i - -algebra3.s: algebra3.cpp.s -.PHONY : algebra3.s - -# target to generate assembly for a file -algebra3.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/algebra3.cpp.s -.PHONY : algebra3.cpp.s - -arcball.o: arcball.cpp.o -.PHONY : arcball.o - -# target to build an object file -arcball.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/arcball.cpp.o -.PHONY : arcball.cpp.o - -arcball.i: arcball.cpp.i -.PHONY : arcball.i - -# target to preprocess a source file -arcball.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/arcball.cpp.i -.PHONY : arcball.cpp.i - -arcball.s: arcball.cpp.s -.PHONY : arcball.s - -# target to generate assembly for a file -arcball.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/arcball.cpp.s -.PHONY : arcball.cpp.s - -glui.o: glui.cpp.o -.PHONY : glui.o - -# target to build an object file -glui.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui.cpp.o -.PHONY : glui.cpp.o - -glui.i: glui.cpp.i -.PHONY : glui.i - -# target to preprocess a source file -glui.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui.cpp.i -.PHONY : glui.cpp.i - -glui.s: glui.cpp.s -.PHONY : glui.s - -# target to generate assembly for a file -glui.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui.cpp.s -.PHONY : glui.cpp.s - -glui_add_controls.o: glui_add_controls.cpp.o -.PHONY : glui_add_controls.o - -# target to build an object file -glui_add_controls.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_add_controls.cpp.o -.PHONY : glui_add_controls.cpp.o - -glui_add_controls.i: glui_add_controls.cpp.i -.PHONY : glui_add_controls.i - -# target to preprocess a source file -glui_add_controls.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_add_controls.cpp.i -.PHONY : glui_add_controls.cpp.i - -glui_add_controls.s: glui_add_controls.cpp.s -.PHONY : glui_add_controls.s - -# target to generate assembly for a file -glui_add_controls.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_add_controls.cpp.s -.PHONY : glui_add_controls.cpp.s - -glui_bitmap_img_data.o: glui_bitmap_img_data.cpp.o -.PHONY : glui_bitmap_img_data.o - -# target to build an object file -glui_bitmap_img_data.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_bitmap_img_data.cpp.o -.PHONY : glui_bitmap_img_data.cpp.o - -glui_bitmap_img_data.i: glui_bitmap_img_data.cpp.i -.PHONY : glui_bitmap_img_data.i - -# target to preprocess a source file -glui_bitmap_img_data.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_bitmap_img_data.cpp.i -.PHONY : glui_bitmap_img_data.cpp.i - -glui_bitmap_img_data.s: glui_bitmap_img_data.cpp.s -.PHONY : glui_bitmap_img_data.s - -# target to generate assembly for a file -glui_bitmap_img_data.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_bitmap_img_data.cpp.s -.PHONY : glui_bitmap_img_data.cpp.s - -glui_bitmaps.o: glui_bitmaps.cpp.o -.PHONY : glui_bitmaps.o - -# target to build an object file -glui_bitmaps.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_bitmaps.cpp.o -.PHONY : glui_bitmaps.cpp.o - -glui_bitmaps.i: glui_bitmaps.cpp.i -.PHONY : glui_bitmaps.i - -# target to preprocess a source file -glui_bitmaps.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_bitmaps.cpp.i -.PHONY : glui_bitmaps.cpp.i - -glui_bitmaps.s: glui_bitmaps.cpp.s -.PHONY : glui_bitmaps.s - -# target to generate assembly for a file -glui_bitmaps.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_bitmaps.cpp.s -.PHONY : glui_bitmaps.cpp.s - -glui_button.o: glui_button.cpp.o -.PHONY : glui_button.o - -# target to build an object file -glui_button.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_button.cpp.o -.PHONY : glui_button.cpp.o - -glui_button.i: glui_button.cpp.i -.PHONY : glui_button.i - -# target to preprocess a source file -glui_button.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_button.cpp.i -.PHONY : glui_button.cpp.i - -glui_button.s: glui_button.cpp.s -.PHONY : glui_button.s - -# target to generate assembly for a file -glui_button.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_button.cpp.s -.PHONY : glui_button.cpp.s - -glui_checkbox.o: glui_checkbox.cpp.o -.PHONY : glui_checkbox.o - -# target to build an object file -glui_checkbox.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_checkbox.cpp.o -.PHONY : glui_checkbox.cpp.o - -glui_checkbox.i: glui_checkbox.cpp.i -.PHONY : glui_checkbox.i - -# target to preprocess a source file -glui_checkbox.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_checkbox.cpp.i -.PHONY : glui_checkbox.cpp.i - -glui_checkbox.s: glui_checkbox.cpp.s -.PHONY : glui_checkbox.s - -# target to generate assembly for a file -glui_checkbox.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_checkbox.cpp.s -.PHONY : glui_checkbox.cpp.s - -glui_column.o: glui_column.cpp.o -.PHONY : glui_column.o - -# target to build an object file -glui_column.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_column.cpp.o -.PHONY : glui_column.cpp.o - -glui_column.i: glui_column.cpp.i -.PHONY : glui_column.i - -# target to preprocess a source file -glui_column.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_column.cpp.i -.PHONY : glui_column.cpp.i - -glui_column.s: glui_column.cpp.s -.PHONY : glui_column.s - -# target to generate assembly for a file -glui_column.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_column.cpp.s -.PHONY : glui_column.cpp.s - -glui_commandline.o: glui_commandline.cpp.o -.PHONY : glui_commandline.o - -# target to build an object file -glui_commandline.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_commandline.cpp.o -.PHONY : glui_commandline.cpp.o - -glui_commandline.i: glui_commandline.cpp.i -.PHONY : glui_commandline.i - -# target to preprocess a source file -glui_commandline.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_commandline.cpp.i -.PHONY : glui_commandline.cpp.i - -glui_commandline.s: glui_commandline.cpp.s -.PHONY : glui_commandline.s - -# target to generate assembly for a file -glui_commandline.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_commandline.cpp.s -.PHONY : glui_commandline.cpp.s - -glui_control.o: glui_control.cpp.o -.PHONY : glui_control.o - -# target to build an object file -glui_control.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_control.cpp.o -.PHONY : glui_control.cpp.o - -glui_control.i: glui_control.cpp.i -.PHONY : glui_control.i - -# target to preprocess a source file -glui_control.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_control.cpp.i -.PHONY : glui_control.cpp.i - -glui_control.s: glui_control.cpp.s -.PHONY : glui_control.s - -# target to generate assembly for a file -glui_control.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_control.cpp.s -.PHONY : glui_control.cpp.s - -glui_edittext.o: glui_edittext.cpp.o -.PHONY : glui_edittext.o - -# target to build an object file -glui_edittext.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_edittext.cpp.o -.PHONY : glui_edittext.cpp.o - -glui_edittext.i: glui_edittext.cpp.i -.PHONY : glui_edittext.i - -# target to preprocess a source file -glui_edittext.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_edittext.cpp.i -.PHONY : glui_edittext.cpp.i - -glui_edittext.s: glui_edittext.cpp.s -.PHONY : glui_edittext.s - -# target to generate assembly for a file -glui_edittext.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_edittext.cpp.s -.PHONY : glui_edittext.cpp.s - -glui_filebrowser.o: glui_filebrowser.cpp.o -.PHONY : glui_filebrowser.o - -# target to build an object file -glui_filebrowser.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_filebrowser.cpp.o -.PHONY : glui_filebrowser.cpp.o - -glui_filebrowser.i: glui_filebrowser.cpp.i -.PHONY : glui_filebrowser.i - -# target to preprocess a source file -glui_filebrowser.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_filebrowser.cpp.i -.PHONY : glui_filebrowser.cpp.i - -glui_filebrowser.s: glui_filebrowser.cpp.s -.PHONY : glui_filebrowser.s - -# target to generate assembly for a file -glui_filebrowser.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_filebrowser.cpp.s -.PHONY : glui_filebrowser.cpp.s - -glui_list.o: glui_list.cpp.o -.PHONY : glui_list.o - -# target to build an object file -glui_list.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_list.cpp.o -.PHONY : glui_list.cpp.o - -glui_list.i: glui_list.cpp.i -.PHONY : glui_list.i - -# target to preprocess a source file -glui_list.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_list.cpp.i -.PHONY : glui_list.cpp.i - -glui_list.s: glui_list.cpp.s -.PHONY : glui_list.s - -# target to generate assembly for a file -glui_list.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_list.cpp.s -.PHONY : glui_list.cpp.s - -glui_listbox.o: glui_listbox.cpp.o -.PHONY : glui_listbox.o - -# target to build an object file -glui_listbox.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_listbox.cpp.o -.PHONY : glui_listbox.cpp.o - -glui_listbox.i: glui_listbox.cpp.i -.PHONY : glui_listbox.i - -# target to preprocess a source file -glui_listbox.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_listbox.cpp.i -.PHONY : glui_listbox.cpp.i - -glui_listbox.s: glui_listbox.cpp.s -.PHONY : glui_listbox.s - -# target to generate assembly for a file -glui_listbox.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_listbox.cpp.s -.PHONY : glui_listbox.cpp.s - -glui_mouse_iaction.o: glui_mouse_iaction.cpp.o -.PHONY : glui_mouse_iaction.o - -# target to build an object file -glui_mouse_iaction.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_mouse_iaction.cpp.o -.PHONY : glui_mouse_iaction.cpp.o - -glui_mouse_iaction.i: glui_mouse_iaction.cpp.i -.PHONY : glui_mouse_iaction.i - -# target to preprocess a source file -glui_mouse_iaction.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_mouse_iaction.cpp.i -.PHONY : glui_mouse_iaction.cpp.i - -glui_mouse_iaction.s: glui_mouse_iaction.cpp.s -.PHONY : glui_mouse_iaction.s - -# target to generate assembly for a file -glui_mouse_iaction.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_mouse_iaction.cpp.s -.PHONY : glui_mouse_iaction.cpp.s - -glui_node.o: glui_node.cpp.o -.PHONY : glui_node.o - -# target to build an object file -glui_node.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_node.cpp.o -.PHONY : glui_node.cpp.o - -glui_node.i: glui_node.cpp.i -.PHONY : glui_node.i - -# target to preprocess a source file -glui_node.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_node.cpp.i -.PHONY : glui_node.cpp.i - -glui_node.s: glui_node.cpp.s -.PHONY : glui_node.s - -# target to generate assembly for a file -glui_node.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_node.cpp.s -.PHONY : glui_node.cpp.s - -glui_panel.o: glui_panel.cpp.o -.PHONY : glui_panel.o - -# target to build an object file -glui_panel.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_panel.cpp.o -.PHONY : glui_panel.cpp.o - -glui_panel.i: glui_panel.cpp.i -.PHONY : glui_panel.i - -# target to preprocess a source file -glui_panel.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_panel.cpp.i -.PHONY : glui_panel.cpp.i - -glui_panel.s: glui_panel.cpp.s -.PHONY : glui_panel.s - -# target to generate assembly for a file -glui_panel.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_panel.cpp.s -.PHONY : glui_panel.cpp.s - -glui_radio.o: glui_radio.cpp.o -.PHONY : glui_radio.o - -# target to build an object file -glui_radio.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_radio.cpp.o -.PHONY : glui_radio.cpp.o - -glui_radio.i: glui_radio.cpp.i -.PHONY : glui_radio.i - -# target to preprocess a source file -glui_radio.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_radio.cpp.i -.PHONY : glui_radio.cpp.i - -glui_radio.s: glui_radio.cpp.s -.PHONY : glui_radio.s - -# target to generate assembly for a file -glui_radio.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_radio.cpp.s -.PHONY : glui_radio.cpp.s - -glui_rollout.o: glui_rollout.cpp.o -.PHONY : glui_rollout.o - -# target to build an object file -glui_rollout.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_rollout.cpp.o -.PHONY : glui_rollout.cpp.o - -glui_rollout.i: glui_rollout.cpp.i -.PHONY : glui_rollout.i - -# target to preprocess a source file -glui_rollout.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_rollout.cpp.i -.PHONY : glui_rollout.cpp.i - -glui_rollout.s: glui_rollout.cpp.s -.PHONY : glui_rollout.s - -# target to generate assembly for a file -glui_rollout.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_rollout.cpp.s -.PHONY : glui_rollout.cpp.s - -glui_rotation.o: glui_rotation.cpp.o -.PHONY : glui_rotation.o - -# target to build an object file -glui_rotation.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_rotation.cpp.o -.PHONY : glui_rotation.cpp.o - -glui_rotation.i: glui_rotation.cpp.i -.PHONY : glui_rotation.i - -# target to preprocess a source file -glui_rotation.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_rotation.cpp.i -.PHONY : glui_rotation.cpp.i - -glui_rotation.s: glui_rotation.cpp.s -.PHONY : glui_rotation.s - -# target to generate assembly for a file -glui_rotation.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_rotation.cpp.s -.PHONY : glui_rotation.cpp.s - -glui_scrollbar.o: glui_scrollbar.cpp.o -.PHONY : glui_scrollbar.o - -# target to build an object file -glui_scrollbar.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_scrollbar.cpp.o -.PHONY : glui_scrollbar.cpp.o - -glui_scrollbar.i: glui_scrollbar.cpp.i -.PHONY : glui_scrollbar.i - -# target to preprocess a source file -glui_scrollbar.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_scrollbar.cpp.i -.PHONY : glui_scrollbar.cpp.i - -glui_scrollbar.s: glui_scrollbar.cpp.s -.PHONY : glui_scrollbar.s - -# target to generate assembly for a file -glui_scrollbar.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_scrollbar.cpp.s -.PHONY : glui_scrollbar.cpp.s - -glui_separator.o: glui_separator.cpp.o -.PHONY : glui_separator.o - -# target to build an object file -glui_separator.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_separator.cpp.o -.PHONY : glui_separator.cpp.o - -glui_separator.i: glui_separator.cpp.i -.PHONY : glui_separator.i - -# target to preprocess a source file -glui_separator.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_separator.cpp.i -.PHONY : glui_separator.cpp.i - -glui_separator.s: glui_separator.cpp.s -.PHONY : glui_separator.s - -# target to generate assembly for a file -glui_separator.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_separator.cpp.s -.PHONY : glui_separator.cpp.s - -glui_spinner.o: glui_spinner.cpp.o -.PHONY : glui_spinner.o - -# target to build an object file -glui_spinner.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_spinner.cpp.o -.PHONY : glui_spinner.cpp.o - -glui_spinner.i: glui_spinner.cpp.i -.PHONY : glui_spinner.i - -# target to preprocess a source file -glui_spinner.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_spinner.cpp.i -.PHONY : glui_spinner.cpp.i - -glui_spinner.s: glui_spinner.cpp.s -.PHONY : glui_spinner.s - -# target to generate assembly for a file -glui_spinner.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_spinner.cpp.s -.PHONY : glui_spinner.cpp.s - -glui_statictext.o: glui_statictext.cpp.o -.PHONY : glui_statictext.o - -# target to build an object file -glui_statictext.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_statictext.cpp.o -.PHONY : glui_statictext.cpp.o - -glui_statictext.i: glui_statictext.cpp.i -.PHONY : glui_statictext.i - -# target to preprocess a source file -glui_statictext.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_statictext.cpp.i -.PHONY : glui_statictext.cpp.i - -glui_statictext.s: glui_statictext.cpp.s -.PHONY : glui_statictext.s - -# target to generate assembly for a file -glui_statictext.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_statictext.cpp.s -.PHONY : glui_statictext.cpp.s - -glui_string.o: glui_string.cpp.o -.PHONY : glui_string.o - -# target to build an object file -glui_string.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_string.cpp.o -.PHONY : glui_string.cpp.o - -glui_string.i: glui_string.cpp.i -.PHONY : glui_string.i - -# target to preprocess a source file -glui_string.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_string.cpp.i -.PHONY : glui_string.cpp.i - -glui_string.s: glui_string.cpp.s -.PHONY : glui_string.s - -# target to generate assembly for a file -glui_string.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_string.cpp.s -.PHONY : glui_string.cpp.s - -glui_textbox.o: glui_textbox.cpp.o -.PHONY : glui_textbox.o - -# target to build an object file -glui_textbox.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_textbox.cpp.o -.PHONY : glui_textbox.cpp.o - -glui_textbox.i: glui_textbox.cpp.i -.PHONY : glui_textbox.i - -# target to preprocess a source file -glui_textbox.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_textbox.cpp.i -.PHONY : glui_textbox.cpp.i - -glui_textbox.s: glui_textbox.cpp.s -.PHONY : glui_textbox.s - -# target to generate assembly for a file -glui_textbox.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_textbox.cpp.s -.PHONY : glui_textbox.cpp.s - -glui_translation.o: glui_translation.cpp.o -.PHONY : glui_translation.o - -# target to build an object file -glui_translation.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_translation.cpp.o -.PHONY : glui_translation.cpp.o - -glui_translation.i: glui_translation.cpp.i -.PHONY : glui_translation.i - -# target to preprocess a source file -glui_translation.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_translation.cpp.i -.PHONY : glui_translation.cpp.i - -glui_translation.s: glui_translation.cpp.s -.PHONY : glui_translation.s - -# target to generate assembly for a file -glui_translation.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_translation.cpp.s -.PHONY : glui_translation.cpp.s - -glui_tree.o: glui_tree.cpp.o -.PHONY : glui_tree.o - -# target to build an object file -glui_tree.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_tree.cpp.o -.PHONY : glui_tree.cpp.o - -glui_tree.i: glui_tree.cpp.i -.PHONY : glui_tree.i - -# target to preprocess a source file -glui_tree.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_tree.cpp.i -.PHONY : glui_tree.cpp.i - -glui_tree.s: glui_tree.cpp.s -.PHONY : glui_tree.s - -# target to generate assembly for a file -glui_tree.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_tree.cpp.s -.PHONY : glui_tree.cpp.s - -glui_treepanel.o: glui_treepanel.cpp.o -.PHONY : glui_treepanel.o - -# target to build an object file -glui_treepanel.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_treepanel.cpp.o -.PHONY : glui_treepanel.cpp.o - -glui_treepanel.i: glui_treepanel.cpp.i -.PHONY : glui_treepanel.i - -# target to preprocess a source file -glui_treepanel.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_treepanel.cpp.i -.PHONY : glui_treepanel.cpp.i - -glui_treepanel.s: glui_treepanel.cpp.s -.PHONY : glui_treepanel.s - -# target to generate assembly for a file -glui_treepanel.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_treepanel.cpp.s -.PHONY : glui_treepanel.cpp.s - -glui_window.o: glui_window.cpp.o -.PHONY : glui_window.o - -# target to build an object file -glui_window.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_window.cpp.o -.PHONY : glui_window.cpp.o - -glui_window.i: glui_window.cpp.i -.PHONY : glui_window.i - -# target to preprocess a source file -glui_window.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_window.cpp.i -.PHONY : glui_window.cpp.i - -glui_window.s: glui_window.cpp.s -.PHONY : glui_window.s - -# target to generate assembly for a file -glui_window.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/glui_window.cpp.s -.PHONY : glui_window.cpp.s - -quaternion.o: quaternion.cpp.o -.PHONY : quaternion.o - -# target to build an object file -quaternion.cpp.o: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/quaternion.cpp.o -.PHONY : quaternion.cpp.o - -quaternion.i: quaternion.cpp.i -.PHONY : quaternion.i - -# target to preprocess a source file -quaternion.cpp.i: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/quaternion.cpp.i -.PHONY : quaternion.cpp.i - -quaternion.s: quaternion.cpp.s -.PHONY : quaternion.s - -# target to generate assembly for a file -quaternion.cpp.s: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(MAKE) -f glui/CMakeFiles/glui.dir/build.make glui/CMakeFiles/glui.dir/quaternion.cpp.s -.PHONY : quaternion.cpp.s - -# Help Target -help: - @echo "The following are some of the valid targets for this Makefile:" - @echo "... all (the default if no target is provided)" - @echo "... clean" - @echo "... depend" - @echo "... edit_cache" - @echo "... glui" - @echo "... install" - @echo "... install/local" - @echo "... install/strip" - @echo "... list_install_components" - @echo "... rebuild_cache" - @echo "... algebra3.o" - @echo "... algebra3.i" - @echo "... algebra3.s" - @echo "... arcball.o" - @echo "... arcball.i" - @echo "... arcball.s" - @echo "... glui.o" - @echo "... glui.i" - @echo "... glui.s" - @echo "... glui_add_controls.o" - @echo "... glui_add_controls.i" - @echo "... glui_add_controls.s" - @echo "... glui_bitmap_img_data.o" - @echo "... glui_bitmap_img_data.i" - @echo "... glui_bitmap_img_data.s" - @echo "... glui_bitmaps.o" - @echo "... glui_bitmaps.i" - @echo "... glui_bitmaps.s" - @echo "... glui_button.o" - @echo "... glui_button.i" - @echo "... glui_button.s" - @echo "... glui_checkbox.o" - @echo "... glui_checkbox.i" - @echo "... glui_checkbox.s" - @echo "... glui_column.o" - @echo "... glui_column.i" - @echo "... glui_column.s" - @echo "... glui_commandline.o" - @echo "... glui_commandline.i" - @echo "... glui_commandline.s" - @echo "... glui_control.o" - @echo "... glui_control.i" - @echo "... glui_control.s" - @echo "... glui_edittext.o" - @echo "... glui_edittext.i" - @echo "... glui_edittext.s" - @echo "... glui_filebrowser.o" - @echo "... glui_filebrowser.i" - @echo "... glui_filebrowser.s" - @echo "... glui_list.o" - @echo "... glui_list.i" - @echo "... glui_list.s" - @echo "... glui_listbox.o" - @echo "... glui_listbox.i" - @echo "... glui_listbox.s" - @echo "... glui_mouse_iaction.o" - @echo "... glui_mouse_iaction.i" - @echo "... glui_mouse_iaction.s" - @echo "... glui_node.o" - @echo "... glui_node.i" - @echo "... glui_node.s" - @echo "... glui_panel.o" - @echo "... glui_panel.i" - @echo "... glui_panel.s" - @echo "... glui_radio.o" - @echo "... glui_radio.i" - @echo "... glui_radio.s" - @echo "... glui_rollout.o" - @echo "... glui_rollout.i" - @echo "... glui_rollout.s" - @echo "... glui_rotation.o" - @echo "... glui_rotation.i" - @echo "... glui_rotation.s" - @echo "... glui_scrollbar.o" - @echo "... glui_scrollbar.i" - @echo "... glui_scrollbar.s" - @echo "... glui_separator.o" - @echo "... glui_separator.i" - @echo "... glui_separator.s" - @echo "... glui_spinner.o" - @echo "... glui_spinner.i" - @echo "... glui_spinner.s" - @echo "... glui_statictext.o" - @echo "... glui_statictext.i" - @echo "... glui_statictext.s" - @echo "... glui_string.o" - @echo "... glui_string.i" - @echo "... glui_string.s" - @echo "... glui_textbox.o" - @echo "... glui_textbox.i" - @echo "... glui_textbox.s" - @echo "... glui_translation.o" - @echo "... glui_translation.i" - @echo "... glui_translation.s" - @echo "... glui_tree.o" - @echo "... glui_tree.i" - @echo "... glui_tree.s" - @echo "... glui_treepanel.o" - @echo "... glui_treepanel.i" - @echo "... glui_treepanel.s" - @echo "... glui_window.o" - @echo "... glui_window.i" - @echo "... glui_window.s" - @echo "... quaternion.o" - @echo "... quaternion.i" - @echo "... quaternion.s" -.PHONY : help - - - -#============================================================================= -# Special targets to cleanup operation of make. - -# Special rule to run CMake to check the build system integrity. -# No rule that depends on this can have commands that come from listfiles -# because they might be regenerated. -cmake_check_build_system: - cd /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 -.PHONY : cmake_check_build_system - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/algebra3.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/glui/algebra3.cpp deleted file mode 100644 index ddc18f4..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/algebra3.cpp +++ /dev/null @@ -1,1609 +0,0 @@ -/* - - algebra3.cpp, algebra3.h - C++ Vector and Matrix Algebra routines - - GLUI User Interface Toolkit (LGPL) - Copyright (c) 1998 Paul Rademacher - - WWW: http://sourceforge.net/projects/glui/ - Forums: http://sourceforge.net/forum/?group_id=92496 - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -*/ - -/************************************************************************** - - There are three vector classes and two matrix classes: vec2, vec3, - vec4, mat3, and mat4. - - All the standard arithmetic operations are defined, with '*' - for dot product of two vectors and multiplication of two matrices, - and '^' for cross product of two vectors. - - Additional functions include length(), normalize(), homogenize for - vectors, and print(), set(), apply() for all classes. - - There is a function transpose() for matrices, but note that it - does not actually change the matrix, - - When multiplied with a matrix, a vector is treated as a row vector - if it precedes the matrix (v*M), and as a column vector if it - follows the matrix (M*v). - - Matrices are stored in row-major form. - - A vector of one dimension (2d, 3d, or 4d) can be cast to a vector - of a higher or lower dimension. If casting to a higher dimension, - the new component is set by default to 1.0, unless a value is - specified: - vec3 a(1.0, 2.0, 3.0 ); - vec4 b( a, 4.0 ); // now b == {1.0, 2.0, 3.0, 4.0}; - When casting to a lower dimension, the vector is homogenized in - the lower dimension. E.g., if a 4d {X,Y,Z,W} is cast to 3d, the - resulting vector is {X/W, Y/W, Z/W}. It is up to the user to - insure the fourth component is not zero before casting. - - There are also the following function for building matrices: - identity2D(), translation2D(), rotation2D(), - scaling2D(), identity3D(), translation3D(), - rotation3D(), rotation3Drad(), scaling3D(), - perspective3D() - - - --------------------------------------------------------------------- - - Author: Jean-Francois DOUEg - Revised: Paul Rademacher - Version 3.2 - Feb 1998 - Revised: Nigel Stewart (GLUI Code Cleaning) - -**************************************************************************/ - -#include "algebra3.h" -#include "glui_internal.h" -#include - -#ifdef VEC_ERROR_FATAL -#ifndef VEC_ERROR -#define VEC_ERROR(E) { printf( "VERROR %s\n", E ); exit(1); } -#endif -#else -#ifndef VEC_ERROR -#define VEC_ERROR(E) { printf( "VERROR %s\n", E ); } -#endif -#endif - -/**************************************************************** - * * - * vec2 Member functions * - * * - ****************************************************************/ - -/******************** vec2 CONSTRUCTORS ********************/ - -vec2::vec2() -{ - n[VX] = n[VY] = 0.0; -} - -vec2::vec2(float x, float y) -{ - n[VX] = x; - n[VY] = y; -} - -vec2::vec2(const vec2 &v) -{ - n[VX] = v.n[VX]; - n[VY] = v.n[VY]; -} - -vec2::vec2(const vec3 &v) // it is up to caller to avoid divide-by-zero -{ - n[VX] = v.n[VX]/v.n[VZ]; - n[VY] = v.n[VY]/v.n[VZ]; -} - -vec2::vec2(const vec3 &v, int dropAxis) -{ - switch (dropAxis) - { - case VX: n[VX] = v.n[VY]; n[VY] = v.n[VZ]; break; - case VY: n[VX] = v.n[VX]; n[VY] = v.n[VZ]; break; - default: n[VX] = v.n[VX]; n[VY] = v.n[VY]; break; - } -} - -/******************** vec2 ASSIGNMENT OPERATORS ******************/ - -vec2 & vec2::operator=(const vec2 &v) -{ - n[VX] = v.n[VX]; - n[VY] = v.n[VY]; - return *this; -} - -vec2 & vec2::operator+=(const vec2 &v) -{ - n[VX] += v.n[VX]; - n[VY] += v.n[VY]; - return *this; -} - -vec2 & vec2::operator-=(const vec2 &v) -{ - n[VX] -= v.n[VX]; - n[VY] -= v.n[VY]; - return *this; -} - -vec2 &vec2::operator*=(float d) -{ - n[VX] *= d; - n[VY] *= d; - return *this; -} - -vec2 &vec2::operator/=(float d) -{ - float d_inv = 1.0f/d; - n[VX] *= d_inv; - n[VY] *= d_inv; - return *this; -} - -float &vec2::operator[](int i) -{ - if (i < VX || i > VY) - //VEC_ERROR("vec2 [] operator: illegal access; index = " << i << '\n') - VEC_ERROR("vec2 [] operator: illegal access" ); - return n[i]; -} - -const float &vec2::operator[](int i) const -{ - if (i < VX || i > VY) - //VEC_ERROR("vec2 [] operator: illegal access; index = " << i << '\n') - VEC_ERROR("vec2 [] operator: illegal access" ); - - return n[i]; -} - -/******************** vec2 SPECIAL FUNCTIONS ********************/ - -float vec2::length() const -{ - return (float) sqrt(length2()); -} - -float vec2::length2() const -{ - return n[VX]*n[VX] + n[VY]*n[VY]; -} - -vec2 &vec2::normalize() // it is up to caller to avoid divide-by-zero -{ - *this /= length(); - return *this; -} - -vec2 &vec2::apply(V_FCT_PTR fct) -{ - n[VX] = (*fct)(n[VX]); - n[VY] = (*fct)(n[VY]); - return *this; -} - -void vec2::set( float x, float y ) -{ - n[VX] = x; n[VY] = y; -} - -/******************** vec2 FRIENDS *****************************/ - -vec2 operator-(const vec2 &a) -{ - return vec2(-a.n[VX],-a.n[VY]); -} - -vec2 operator+(const vec2 &a, const vec2& b) -{ - return vec2(a.n[VX]+b.n[VX], a.n[VY]+b.n[VY]); -} - -vec2 operator-(const vec2 &a, const vec2& b) -{ - return vec2(a.n[VX]-b.n[VX], a.n[VY]-b.n[VY]); -} - -vec2 operator*(const vec2 &a, float d) -{ - return vec2(d*a.n[VX], d*a.n[VY]); -} - -vec2 operator*(float d, const vec2 &a) -{ - return a*d; -} - -vec2 operator*(const mat3 &a, const vec2 &v) -{ - vec3 av; - - av.n[VX] = a.v[0].n[VX]*v.n[VX] + a.v[0].n[VY]*v.n[VY] + a.v[0].n[VZ]; - av.n[VY] = a.v[1].n[VX]*v.n[VX] + a.v[1].n[VY]*v.n[VY] + a.v[1].n[VZ]; - av.n[VZ] = a.v[2].n[VX]*v.n[VX] + a.v[2].n[VY]*v.n[VY] + a.v[2].n[VZ]; - - return av; -} - -vec2 operator*(const vec2 &v, const mat3 &a) -{ - return a.transpose() * v; -} - -vec3 operator*(const mat3 &a, const vec3 &v) -{ - vec3 av; - - av.n[VX] = a.v[0].n[VX]*v.n[VX] + a.v[0].n[VY]*v.n[VY] + a.v[0].n[VZ]*v.n[VZ]; - av.n[VY] = a.v[1].n[VX]*v.n[VX] + a.v[1].n[VY]*v.n[VY] + a.v[1].n[VZ]*v.n[VZ]; - av.n[VZ] = a.v[2].n[VX]*v.n[VX] + a.v[2].n[VY]*v.n[VY] + a.v[2].n[VZ]*v.n[VZ]; - - return av; -} - -vec3 operator*(const vec3 &v, const mat3 &a) -{ - return a.transpose() * v; -} - -float operator*(const vec2 &a, const vec2 &b) -{ - return a.n[VX]*b.n[VX] + a.n[VY]*b.n[VY]; -} - -vec2 operator/(const vec2 &a, float d) -{ - float d_inv = 1.0f/d; - return vec2(a.n[VX]*d_inv, a.n[VY]*d_inv); -} - -vec3 operator^(const vec2 &a, const vec2 &b) -{ - return vec3(0.0, 0.0, a.n[VX] * b.n[VY] - b.n[VX] * a.n[VY]); -} - -int operator==(const vec2 &a, const vec2 &b) -{ - return (a.n[VX] == b.n[VX]) && (a.n[VY] == b.n[VY]); -} - -int operator!=(const vec2 &a, const vec2 &b) -{ - return !(a == b); -} - -/*ostream& operator << (ostream& s, vec2& v) -{ return s << "| " << v.n[VX] << ' ' << v.n[VY] << " |"; } -*/ - -/*istream& operator >> (istream& s, vec2& v) { - vec2 v_tmp; - char c = ' '; - - while (isspace(c)) - s >> c; - // The vectors can be formatted either as x y or | x y | - if (c == '|') { - s >> v_tmp[VX] >> v_tmp[VY]; - while (s >> c && isspace(c)) ; - if (c != '|') - ;//s.set(_bad); - } - else { - s.putback(c); - s >> v_tmp[VX] >> v_tmp[VY]; - } - if (s) - v = v_tmp; - return s; -} -*/ - -void swap(vec2 &a, vec2 &b) -{ - vec2 tmp(a); - a = b; - b = tmp; -} - -vec2 min_vec(const vec2 &a, const vec2 &b) -{ - return vec2(MIN(a.n[VX], b.n[VX]), MIN(a.n[VY], b.n[VY])); -} - -vec2 max_vec(const vec2 &a, const vec2 &b) -{ - return vec2(MAX(a.n[VX], b.n[VX]), MAX(a.n[VY], b.n[VY])); -} - -vec2 prod(const vec2 &a, const vec2 &b) -{ - return vec2(a.n[VX] * b.n[VX], a.n[VY] * b.n[VY]); -} - -/**************************************************************** - * * - * vec3 Member functions * - * * - ****************************************************************/ - -// CONSTRUCTORS - -vec3::vec3() -{ - n[VX] = n[VY] = n[VZ] = 0.0; -} - -vec3::vec3(float x, float y, float z) -{ - n[VX] = x; - n[VY] = y; - n[VZ] = z; -} - -vec3::vec3(const vec3 &v) -{ - n[VX] = v.n[VX]; n[VY] = v.n[VY]; n[VZ] = v.n[VZ]; -} - -vec3::vec3(const vec2 &v) -{ - n[VX] = v.n[VX]; - n[VY] = v.n[VY]; - n[VZ] = 1.0; -} - -vec3::vec3(const vec2 &v, float d) -{ - n[VX] = v.n[VX]; - n[VY] = v.n[VY]; - n[VZ] = d; -} - -vec3::vec3(const vec4 &v) // it is up to caller to avoid divide-by-zero -{ - n[VX] = v.n[VX] / v.n[VW]; - n[VY] = v.n[VY] / v.n[VW]; - n[VZ] = v.n[VZ] / v.n[VW]; -} - -vec3::vec3(const vec4 &v, int dropAxis) -{ - switch (dropAxis) - { - case VX: n[VX] = v.n[VY]; n[VY] = v.n[VZ]; n[VZ] = v.n[VW]; break; - case VY: n[VX] = v.n[VX]; n[VY] = v.n[VZ]; n[VZ] = v.n[VW]; break; - case VZ: n[VX] = v.n[VX]; n[VY] = v.n[VY]; n[VZ] = v.n[VW]; break; - default: n[VX] = v.n[VX]; n[VY] = v.n[VY]; n[VZ] = v.n[VZ]; break; - } -} - - -// ASSIGNMENT OPERATORS - -vec3 &vec3::operator=(const vec3 &v) -{ - n[VX] = v.n[VX]; - n[VY] = v.n[VY]; - n[VZ] = v.n[VZ]; - return *this; -} - -vec3 &vec3::operator+=(const vec3 &v) -{ - n[VX] += v.n[VX]; - n[VY] += v.n[VY]; - n[VZ] += v.n[VZ]; - return *this; -} - -vec3 &vec3::operator-=(const vec3& v) -{ - n[VX] -= v.n[VX]; - n[VY] -= v.n[VY]; - n[VZ] -= v.n[VZ]; - return *this; -} - -vec3 &vec3::operator*=(float d) -{ - n[VX] *= d; - n[VY] *= d; - n[VZ] *= d; - return *this; -} - -vec3 &vec3::operator/=(float d) -{ - float d_inv = 1.0f/d; - n[VX] *= d_inv; - n[VY] *= d_inv; - n[VZ] *= d_inv; - return *this; -} - -float &vec3::operator[](int i) -{ - if (i < VX || i > VZ) - //VEC_ERROR("vec3 [] operator: illegal access; index = " << i << '\n') - VEC_ERROR("vec3 [] operator: illegal access" ); - - return n[i]; -} - -const float &vec3::operator[](int i) const -{ - if (i < VX || i > VZ) - //VEC_ERROR("vec3 [] operator: illegal access; index = " << i << '\n') - VEC_ERROR("vec3 [] operator: illegal access" ); - - return n[i]; -} - -// SPECIAL FUNCTIONS - -float vec3::length() const -{ - return (float) sqrt(length2()); -} - -float vec3::length2() const -{ - return n[VX]*n[VX] + n[VY]*n[VY] + n[VZ]*n[VZ]; -} - -vec3 &vec3::normalize() // it is up to caller to avoid divide-by-zero -{ - *this /= length(); - return *this; -} - -vec3 &vec3::homogenize(void) // it is up to caller to avoid divide-by-zero -{ - n[VX] /= n[VZ]; - n[VY] /= n[VZ]; - n[VZ] = 1.0; - return *this; -} - -vec3 &vec3::apply(V_FCT_PTR fct) -{ - n[VX] = (*fct)(n[VX]); - n[VY] = (*fct)(n[VY]); - n[VZ] = (*fct)(n[VZ]); - return *this; -} - -void vec3::set(float x, float y, float z) // set vector -{ - n[VX] = x; - n[VY] = y; - n[VZ] = z; -} - -void vec3::print(FILE *file, const char *name) const // print vector to a file -{ - fprintf( file, "%s: <%f, %f, %f>\n", name, n[VX], n[VY], n[VZ] ); -} - -// FRIENDS - -vec3 operator-(const vec3 &a) -{ - return vec3(-a.n[VX],-a.n[VY],-a.n[VZ]); -} - -vec3 operator+(const vec3 &a, const vec3 &b) -{ - return vec3(a.n[VX]+ b.n[VX], a.n[VY] + b.n[VY], a.n[VZ] + b.n[VZ]); -} - -vec3 operator-(const vec3 &a, const vec3 &b) -{ - return vec3(a.n[VX]-b.n[VX], a.n[VY]-b.n[VY], a.n[VZ]-b.n[VZ]); -} - -vec3 operator*(const vec3 &a, float d) -{ - return vec3(d*a.n[VX], d*a.n[VY], d*a.n[VZ]); -} - -vec3 operator*(float d, const vec3 &a) -{ - return a*d; -} - -vec3 operator*(const mat4 &a, const vec3 &v) -{ - return a*vec4(v); -} - -vec3 operator*(const vec3 &v, mat4 &a) -{ - return a.transpose()*v; -} - -float operator*(const vec3 &a, const vec3 &b) -{ - return a.n[VX]*b.n[VX] + a.n[VY]*b.n[VY] + a.n[VZ]*b.n[VZ]; -} - -vec3 operator/(const vec3 &a, float d) -{ - float d_inv = 1.0f/d; - return vec3(a.n[VX]*d_inv, a.n[VY]*d_inv, a.n[VZ]*d_inv); -} - -vec3 operator^(const vec3 &a, const vec3 &b) -{ - return - vec3(a.n[VY]*b.n[VZ] - a.n[VZ]*b.n[VY], - a.n[VZ]*b.n[VX] - a.n[VX]*b.n[VZ], - a.n[VX]*b.n[VY] - a.n[VY]*b.n[VX]); -} - -int operator==(const vec3 &a, const vec3 &b) -{ - return (a.n[VX] == b.n[VX]) && (a.n[VY] == b.n[VY]) && (a.n[VZ] == b.n[VZ]); -} - -int operator!=(const vec3 &a, const vec3 &b) -{ - return !(a == b); -} - -/*ostream& operator << (ostream& s, vec3& v) -{ return s << "| " << v.n[VX] << ' ' << v.n[VY] << ' ' << v.n[VZ] << " |"; } - -istream& operator >> (istream& s, vec3& v) { - vec3 v_tmp; - char c = ' '; - - while (isspace(c)) - s >> c; - // The vectors can be formatted either as x y z or | x y z | - if (c == '|') { - s >> v_tmp[VX] >> v_tmp[VY] >> v_tmp[VZ]; - while (s >> c && isspace(c)) ; - if (c != '|') - ;//s.set(_bad); - } - else { - s.putback(c); - s >> v_tmp[VX] >> v_tmp[VY] >> v_tmp[VZ]; - } - if (s) - v = v_tmp; - return s; -} -*/ - -void swap(vec3 &a, vec3 &b) -{ - vec3 tmp(a); - a = b; - b = tmp; -} - -vec3 min_vec(const vec3 &a, const vec3 &b) -{ - return vec3( - MIN(a.n[VX], b.n[VX]), - MIN(a.n[VY], b.n[VY]), - MIN(a.n[VZ], b.n[VZ])); -} - -vec3 max_vec(const vec3 &a, const vec3 &b) -{ - return vec3( - MAX(a.n[VX], b.n[VX]), - MAX(a.n[VY], b.n[VY]), - MAX(a.n[VZ], b.n[VZ])); -} - -vec3 prod(const vec3 &a, const vec3 &b) -{ - return vec3(a.n[VX]*b.n[VX], a.n[VY]*b.n[VY], a.n[VZ]*b.n[VZ]); -} - -/**************************************************************** - * * - * vec4 Member functions * - * * - ****************************************************************/ - -// CONSTRUCTORS - -vec4::vec4() -{ - n[VX] = n[VY] = n[VZ] = 0.0; - n[VW] = 1.0; -} - -vec4::vec4(float x, float y, float z, float w) -{ - n[VX] = x; - n[VY] = y; - n[VZ] = z; - n[VW] = w; -} - -vec4::vec4(const vec4 &v) -{ - n[VX] = v.n[VX]; - n[VY] = v.n[VY]; - n[VZ] = v.n[VZ]; - n[VW] = v.n[VW]; -} - -vec4::vec4(const vec3 &v) -{ - n[VX] = v.n[VX]; - n[VY] = v.n[VY]; - n[VZ] = v.n[VZ]; - n[VW] = 1.0; -} - -vec4::vec4(const vec3 &v, float d) -{ - n[VX] = v.n[VX]; - n[VY] = v.n[VY]; - n[VZ] = v.n[VZ]; - n[VW] = d; -} - -// ASSIGNMENT OPERATORS - -vec4 &vec4::operator=(const vec4 &v) -{ - n[VX] = v.n[VX]; - n[VY] = v.n[VY]; - n[VZ] = v.n[VZ]; - n[VW] = v.n[VW]; - return *this; -} - -vec4 &vec4::operator+=(const vec4 &v) -{ - n[VX] += v.n[VX]; - n[VY] += v.n[VY]; - n[VZ] += v.n[VZ]; - n[VW] += v.n[VW]; - return *this; -} - -vec4 &vec4::operator-=(const vec4 &v) -{ - n[VX] -= v.n[VX]; - n[VY] -= v.n[VY]; - n[VZ] -= v.n[VZ]; - n[VW] -= v.n[VW]; - return *this; -} - -vec4 &vec4::operator*=(float d) -{ - n[VX] *= d; - n[VY] *= d; - n[VZ] *= d; - n[VW] *= d; - return *this; -} - -vec4 &vec4::operator/=(float d) -{ - float d_inv = 1.0f/d; - n[VX] *= d_inv; - n[VY] *= d_inv; - n[VZ] *= d_inv; - n[VW] *= d_inv; - return *this; -} - -float &vec4::operator[](int i) -{ - if (i < VX || i > VW) - //VEC_ERROR("vec4 [] operator: illegal access; index = " << i << '\n') - VEC_ERROR("vec4 [] operator: illegal access" ); - - return n[i]; -} - -const float &vec4::operator[](int i) const -{ - if (i < VX || i > VW) - //VEC_ERROR("vec4 [] operator: illegal access; index = " << i << '\n') - VEC_ERROR("vec4 [] operator: illegal access" ); - - return n[i]; -} - -// SPECIAL FUNCTIONS - -float vec4::length() const -{ - return (float) sqrt(length2()); -} - -float vec4::length2() const -{ - return n[VX]*n[VX] + n[VY]*n[VY] + n[VZ]*n[VZ] + n[VW]*n[VW]; -} - -vec4 &vec4::normalize() // it is up to caller to avoid divide-by-zero -{ - *this /= length(); - return *this; -} - -vec4 &vec4::homogenize() // it is up to caller to avoid divide-by-zero -{ - n[VX] /= n[VW]; - n[VY] /= n[VW]; - n[VZ] /= n[VW]; - n[VW] = 1.0; - return *this; -} - -vec4 &vec4::apply(V_FCT_PTR fct) -{ - n[VX] = (*fct)(n[VX]); - n[VY] = (*fct)(n[VY]); - n[VZ] = (*fct)(n[VZ]); - n[VW] = (*fct)(n[VW]); - return *this; -} - -void vec4::print(FILE *file, const char *name) const // print vector to a file -{ - fprintf( file, "%s: <%f, %f, %f, %f>\n", name, n[VX], n[VY], n[VZ], n[VW]); -} - -void vec4::set(float x, float y, float z, float a) -{ - n[0] = x; - n[1] = y; - n[2] = z; - n[3] = a; -} - - -// FRIENDS - -vec4 operator-(const vec4 &a) -{ - return vec4(-a.n[VX],-a.n[VY],-a.n[VZ],-a.n[VW]); -} - -vec4 operator+(const vec4 &a, const vec4 &b) -{ - return vec4( - a.n[VX] + b.n[VX], - a.n[VY] + b.n[VY], - a.n[VZ] + b.n[VZ], - a.n[VW] + b.n[VW]); -} - -vec4 operator-(const vec4 &a, const vec4 &b) -{ - return vec4( - a.n[VX] - b.n[VX], - a.n[VY] - b.n[VY], - a.n[VZ] - b.n[VZ], - a.n[VW] - b.n[VW]); -} - -vec4 operator*(const vec4 &a, float d) -{ - return vec4(d*a.n[VX], d*a.n[VY], d*a.n[VZ], d*a.n[VW]); -} - -vec4 operator*(float d, const vec4 &a) -{ - return a*d; -} - -vec4 operator*(const mat4 &a, const vec4 &v) -{ - #define ROWCOL(i) \ - a.v[i].n[0]*v.n[VX] + \ - a.v[i].n[1]*v.n[VY] + \ - a.v[i].n[2]*v.n[VZ] + \ - a.v[i].n[3]*v.n[VW] - - return vec4(ROWCOL(0), ROWCOL(1), ROWCOL(2), ROWCOL(3)); - - #undef ROWCOL -} - -vec4 operator*(const vec4 &v, const mat4 &a) -{ - return a.transpose()*v; -} - -float operator*(const vec4 &a, const vec4 &b) -{ - return - a.n[VX]*b.n[VX] + - a.n[VY]*b.n[VY] + - a.n[VZ]*b.n[VZ] + - a.n[VW]*b.n[VW]; -} - -vec4 operator/(const vec4 &a, float d) -{ - float d_inv = 1.0f/d; - return vec4( - a.n[VX]*d_inv, - a.n[VY]*d_inv, - a.n[VZ]*d_inv, - a.n[VW]*d_inv); -} - -int operator==(const vec4 &a, const vec4 &b) -{ - return - (a.n[VX] == b.n[VX]) && - (a.n[VY] == b.n[VY]) && - (a.n[VZ] == b.n[VZ]) && - (a.n[VW] == b.n[VW]); -} - -int operator!=(const vec4 &a, const vec4 &b) -{ - return !(a == b); -} - -/*ostream& operator << (ostream& s, vec4& v) -{ return s << "| " << v.n[VX] << ' ' << v.n[VY] << ' ' << v.n[VZ] << ' ' - << v.n[VW] << " |"; } - -istream& operator >> (istream& s, vec4& v) { - vec4 v_tmp; - char c = ' '; - - while (isspace(c)) - s >> c; - // The vectors can be formatted either as x y z w or | x y z w | - if (c == '|') { - s >> v_tmp[VX] >> v_tmp[VY] >> v_tmp[VZ] >> v_tmp[VW]; - while (s >> c && isspace(c)) ; - if (c != '|') - ;//s.set(_bad); - } - else { - s.putback(c); - s >> v_tmp[VX] >> v_tmp[VY] >> v_tmp[VZ] >> v_tmp[VW]; - } - if (s) - v = v_tmp; - return s; -} -*/ - -void swap(vec4 &a, vec4 &b) -{ - vec4 tmp(a); - a = b; - b = tmp; -} - -vec4 min_vec(const vec4 &a, const vec4 &b) -{ - return vec4( - MIN(a.n[VX], b.n[VX]), - MIN(a.n[VY], b.n[VY]), - MIN(a.n[VZ], b.n[VZ]), - MIN(a.n[VW], b.n[VW])); -} - -vec4 max_vec(const vec4 &a, const vec4 &b) -{ - return vec4( - MAX(a.n[VX], b.n[VX]), - MAX(a.n[VY], b.n[VY]), - MAX(a.n[VZ], b.n[VZ]), - MAX(a.n[VW], b.n[VW])); -} - -vec4 prod(const vec4 &a, const vec4 &b) -{ - return vec4( - a.n[VX] * b.n[VX], - a.n[VY] * b.n[VY], - a.n[VZ] * b.n[VZ], - a.n[VW] * b.n[VW]); -} - -/**************************************************************** - * * - * mat3 member functions * - * * - ****************************************************************/ - -// CONSTRUCTORS - -mat3::mat3() -{ - *this = identity2D(); -} - -mat3::mat3(const vec3 &v0, const vec3 &v1, const vec3 &v2) -{ - set(v0, v1, v2); -} - -mat3::mat3(const mat3 &m) -{ - v[0] = m.v[0]; - v[1] = m.v[1]; - v[2] = m.v[2]; -} - -// ASSIGNMENT OPERATORS - -mat3 &mat3::operator=(const mat3 &m) -{ - v[0] = m.v[0]; - v[1] = m.v[1]; - v[2] = m.v[2]; - return *this; -} - -mat3 &mat3::operator+=(const mat3& m) -{ - v[0] += m.v[0]; - v[1] += m.v[1]; - v[2] += m.v[2]; - return *this; -} - -mat3 &mat3::operator-=(const mat3& m) -{ - v[0] -= m.v[0]; - v[1] -= m.v[1]; - v[2] -= m.v[2]; - return *this; -} - -mat3 &mat3::operator*=(float d) -{ - v[0] *= d; - v[1] *= d; - v[2] *= d; - return *this; -} - -mat3 &mat3::operator/=(float d) -{ - v[0] /= d; - v[1] /= d; - v[2] /= d; - return *this; -} - -vec3 &mat3::operator[](int i) -{ - if (i < VX || i > VZ) - //VEC_ERROR("mat3 [] operator: illegal access; index = " << i << '\n') - VEC_ERROR("mat3 [] operator: illegal access" ); - - return v[i]; -} - -const vec3 &mat3::operator[](int i) const -{ - if (i < VX || i > VZ) - //VEC_ERROR("mat3 [] operator: illegal access; index = " << i << '\n') - VEC_ERROR("mat3 [] operator: illegal access" ); - - return v[i]; -} - -void mat3::set(const vec3 &v0, const vec3 &v1, const vec3 &v2) -{ - v[0] = v0; - v[1] = v1; - v[2] = v2; -} - -// SPECIAL FUNCTIONS - -mat3 mat3::transpose() const -{ - return mat3( - vec3(v[0][0], v[1][0], v[2][0]), - vec3(v[0][1], v[1][1], v[2][1]), - vec3(v[0][2], v[1][2], v[2][2])); -} - -mat3 mat3::inverse() const // Gauss-Jordan elimination with partial pivoting -{ - mat3 a(*this); // As a evolves from original mat into identity - mat3 b(identity2D()); // b evolves from identity into inverse(a) - int i, j, i1; - - // Loop over cols of a from left to right, eliminating above and below diag - for (j=0; j<3; j++) // Find largest pivot in column j among rows j..2 - { - i1 = j; // Row with largest pivot candidate - for (i=j+1; i<3; i++) - if (fabs(a.v[i].n[j]) > fabs(a.v[i1].n[j])) - i1 = i; - - // Swap rows i1 and j in a and b to put pivot on diagonal - swap(a.v[i1], a.v[j]); - swap(b.v[i1], b.v[j]); - - // Scale row j to have a unit diagonal - if (a.v[j].n[j]==0.) - VEC_ERROR("mat3::inverse: singular matrix; can't invert\n"); - - b.v[j] /= a.v[j].n[j]; - a.v[j] /= a.v[j].n[j]; - - // Eliminate off-diagonal elems in col j of a, doing identical ops to b - for (i=0; i<3; i++) - if (i!=j) - { - b.v[i] -= a.v[i].n[j]*b.v[j]; - a.v[i] -= a.v[i].n[j]*a.v[j]; - } - } - - return b; -} - -mat3 &mat3::apply(V_FCT_PTR fct) -{ - v[VX].apply(fct); - v[VY].apply(fct); - v[VZ].apply(fct); - return *this; -} - - -// FRIENDS - -mat3 operator-(const mat3 &a) -{ - return mat3(-a.v[0], -a.v[1], -a.v[2]); -} - -mat3 operator+(const mat3 &a, const mat3 &b) -{ - return mat3(a.v[0]+b.v[0], a.v[1]+b.v[1], a.v[2]+b.v[2]); -} - -mat3 operator-(const mat3 &a, const mat3 &b) -{ - return mat3(a.v[0]-b.v[0], a.v[1]-b.v[1], a.v[2]-b.v[2]); -} - -mat3 operator*(const mat3 &a, const mat3 &b) -{ - #define ROWCOL(i, j) \ - a.v[i].n[0]*b.v[0][j] + a.v[i].n[1]*b.v[1][j] + a.v[i].n[2]*b.v[2][j] - - return mat3( - vec3(ROWCOL(0,0), ROWCOL(0,1), ROWCOL(0,2)), - vec3(ROWCOL(1,0), ROWCOL(1,1), ROWCOL(1,2)), - vec3(ROWCOL(2,0), ROWCOL(2,1), ROWCOL(2,2))); - - #undef ROWCOL -} - -mat3 operator*(const mat3 &a, float d) -{ - return mat3(a.v[0]*d, a.v[1]*d, a.v[2]*d); -} - -mat3 operator*(float d, const mat3 &a) -{ - return a*d; -} - -mat3 operator/(const mat3 &a, float d) -{ - return mat3(a.v[0]/d, a.v[1]/d, a.v[2]/d); -} - -int operator==(const mat3 &a, const mat3 &b) -{ - return - (a.v[0] == b.v[0]) && - (a.v[1] == b.v[1]) && - (a.v[2] == b.v[2]); -} - -int operator!=(const mat3 &a, const mat3 &b) -{ - return !(a == b); -} - -/*ostream& operator << (ostream& s, mat3& m) -{ return s << m.v[VX] << '\n' << m.v[VY] << '\n' << m.v[VZ]; } - -istream& operator >> (istream& s, mat3& m) { - mat3 m_tmp; - - s >> m_tmp[VX] >> m_tmp[VY] >> m_tmp[VZ]; - if (s) - m = m_tmp; - return s; -} -*/ - -void swap(mat3 &a, mat3 &b) -{ - mat3 tmp(a); - a = b; - b = tmp; -} - -void mat3::print(FILE *file, const char *name) const -{ - int i, j; - - fprintf( stderr, "%s:\n", name ); - - for( i = 0; i < 3; i++ ) - { - fprintf( stderr, " " ); - for( j = 0; j < 3; j++ ) - { - fprintf( stderr, "%f ", v[i][j] ); - } - fprintf( stderr, "\n" ); - } -} - - - -/**************************************************************** - * * - * mat4 member functions * - * * - ****************************************************************/ - -// CONSTRUCTORS - -mat4::mat4() -{ - *this = identity3D(); -} - -mat4::mat4(const vec4& v0, const vec4& v1, const vec4& v2, const vec4& v3) -{ - v[0] = v0; - v[1] = v1; - v[2] = v2; - v[3] = v3; -} - -mat4::mat4(const mat4 &m) -{ - v[0] = m.v[0]; - v[1] = m.v[1]; - v[2] = m.v[2]; - v[3] = m.v[3]; -} - -mat4::mat4( - float a00, float a01, float a02, float a03, - float a10, float a11, float a12, float a13, - float a20, float a21, float a22, float a23, - float a30, float a31, float a32, float a33 ) -{ - v[0][0] = a00; v[0][1] = a01; v[0][2] = a02; v[0][3] = a03; - v[1][0] = a10; v[1][1] = a11; v[1][2] = a12; v[1][3] = a13; - v[2][0] = a20; v[2][1] = a21; v[2][2] = a22; v[2][3] = a23; - v[3][0] = a30; v[3][1] = a31; v[3][2] = a32; v[3][3] = a33; -} - -// ASSIGNMENT OPERATORS - -mat4 &mat4::operator=(const mat4 &m) -{ - v[0] = m.v[0]; - v[1] = m.v[1]; - v[2] = m.v[2]; - v[3] = m.v[3]; - return *this; -} - -mat4 &mat4::operator+=(const mat4 &m) -{ - v[0] += m.v[0]; - v[1] += m.v[1]; - v[2] += m.v[2]; - v[3] += m.v[3]; - return *this; -} - -mat4 &mat4::operator-=(const mat4 &m) -{ - v[0] -= m.v[0]; - v[1] -= m.v[1]; - v[2] -= m.v[2]; - v[3] -= m.v[3]; - return *this; -} - -mat4 &mat4::operator*=(float d) -{ - v[0] *= d; - v[1] *= d; - v[2] *= d; - v[3] *= d; - return *this; -} - -mat4 &mat4::operator/=(float d) -{ - v[0] /= d; - v[1] /= d; - v[2] /= d; - v[3] /= d; - return *this; -} - -vec4 &mat4::operator[](int i) -{ - if (i < VX || i > VW) - //VEC_ERROR("mat4 [] operator: illegal access; index = " << i << '\n') - VEC_ERROR("mat4 [] operator: illegal access" ); - return v[i]; -} - -const vec4 &mat4::operator[](int i) const -{ - if (i < VX || i > VW) - //VEC_ERROR("mat4 [] operator: illegal access; index = " << i << '\n') - VEC_ERROR("mat4 [] operator: illegal access" ); - return v[i]; -} - -// SPECIAL FUNCTIONS; - -mat4 mat4::transpose() const -{ - return mat4( - vec4(v[0][0], v[1][0], v[2][0], v[3][0]), - vec4(v[0][1], v[1][1], v[2][1], v[3][1]), - vec4(v[0][2], v[1][2], v[2][2], v[3][2]), - vec4(v[0][3], v[1][3], v[2][3], v[3][3])); -} - -mat4 mat4::inverse() const // Gauss-Jordan elimination with partial pivoting -{ - mat4 a(*this); // As a evolves from original mat into identity - mat4 b(identity3D()); // b evolves from identity into inverse(a) - int i, j, i1; - - // Loop over cols of a from left to right, eliminating above and below diag - for (j=0; j<4; j++) // Find largest pivot in column j among rows j..3 - { - i1 = j; // Row with largest pivot candidate - for (i=j+1; i<4; i++) - if (fabs(a.v[i].n[j]) > fabs(a.v[i1].n[j])) - i1 = i; - - // Swap rows i1 and j in a and b to put pivot on diagonal - swap(a.v[i1], a.v[j]); - swap(b.v[i1], b.v[j]); - - // Scale row j to have a unit diagonal - if (a.v[j].n[j]==0.) - VEC_ERROR("mat4::inverse: singular matrix; can't invert\n"); - - b.v[j] /= a.v[j].n[j]; - a.v[j] /= a.v[j].n[j]; - - // Eliminate off-diagonal elems in col j of a, doing identical ops to b - for (i=0; i<4; i++) - if (i!=j) - { - b.v[i] -= a.v[i].n[j]*b.v[j]; - a.v[i] -= a.v[i].n[j]*a.v[j]; - } - } - - return b; -} - -mat4 &mat4::apply(V_FCT_PTR fct) -{ - v[VX].apply(fct); - v[VY].apply(fct); - v[VZ].apply(fct); - v[VW].apply(fct); - return *this; -} - -void mat4::print(FILE *file, const char *name) const -{ - int i, j; - - fprintf( stderr, "%s:\n", name ); - - for( i = 0; i < 4; i++ ) - { - fprintf( stderr, " " ); - for( j = 0; j < 4; j++ ) - { - fprintf( stderr, "%f ", v[i][j] ); - } - fprintf( stderr, "\n" ); - } -} - -void mat4::swap_rows(int i, int j) -{ - vec4 t; - - t = v[i]; - v[i] = v[j]; - v[j] = t; -} - -void mat4::swap_cols(int i, int j) -{ - float t; - int k; - - for (k=0; k<4; k++) - { - t = v[k][i]; - v[k][i] = v[k][j]; - v[k][j] = t; - } -} - - -// FRIENDS - -mat4 operator-(const mat4 &a) -{ - return mat4(-a.v[0],-a.v[1],-a.v[2],-a.v[3]); -} - -mat4 operator+(const mat4 &a, const mat4 &b) -{ - return mat4( - a.v[0] + b.v[0], - a.v[1] + b.v[1], - a.v[2] + b.v[2], - a.v[3] + b.v[3]); -} - -mat4 operator-(const mat4 &a, const mat4 &b) -{ - return mat4( - a.v[0] - b.v[0], - a.v[1] - b.v[1], - a.v[2] - b.v[2], - a.v[3] - b.v[3]); -} - -mat4 operator*(const mat4 &a, const mat4 &b) -{ - #define ROWCOL(i, j) \ - a.v[i].n[0]*b.v[0][j] + \ - a.v[i].n[1]*b.v[1][j] + \ - a.v[i].n[2]*b.v[2][j] + \ - a.v[i].n[3]*b.v[3][j] - - return mat4( - vec4(ROWCOL(0,0), ROWCOL(0,1), ROWCOL(0,2), ROWCOL(0,3)), - vec4(ROWCOL(1,0), ROWCOL(1,1), ROWCOL(1,2), ROWCOL(1,3)), - vec4(ROWCOL(2,0), ROWCOL(2,1), ROWCOL(2,2), ROWCOL(2,3)), - vec4(ROWCOL(3,0), ROWCOL(3,1), ROWCOL(3,2), ROWCOL(3,3)) - ); - - #undef ROWCOL -} - -mat4 operator*(const mat4 &a, float d) -{ - return mat4(a.v[0]*d, a.v[1]*d, a.v[2]*d, a.v[3]*d); -} - -mat4 operator*(float d, const mat4 &a) -{ - return a*d; -} - -mat4 operator/(const mat4 &a, float d) -{ - return mat4(a.v[0]/d, a.v[1]/d, a.v[2]/d, a.v[3]/d); -} - -int operator==(const mat4 &a, const mat4 &b) -{ - return - (a.v[0] == b.v[0]) && - (a.v[1] == b.v[1]) && - (a.v[2] == b.v[2]) && - (a.v[3] == b.v[3]); -} - -int operator!=(const mat4 &a, const mat4 &b) -{ - return !(a == b); -} - -/*ostream& operator << (ostream& s, mat4& m) -{ return s << m.v[VX] << '\n' << m.v[VY] << '\n' << m.v[VZ] << '\n' << m.v[VW]; } - -istream& operator >> (istream& s, mat4& m) -{ - mat4 m_tmp; - - s >> m_tmp[VX] >> m_tmp[VY] >> m_tmp[VZ] >> m_tmp[VW]; - if (s) - m = m_tmp; - return s; -} -*/ - -void swap(mat4 &a, mat4 &b) -{ - mat4 tmp(a); - a = b; - b = tmp; -} - -/**************************************************************** - * * - * 2D functions and 3D functions * - * * - ****************************************************************/ - -mat3 identity2D() -{ - return mat3( - vec3(1.0, 0.0, 0.0), - vec3(0.0, 1.0, 0.0), - vec3(0.0, 0.0, 1.0)); -} - -mat3 translation2D(const vec2 &v) -{ - return mat3( - vec3(1.0, 0.0, v[VX]), - vec3(0.0, 1.0, v[VY]), - vec3(0.0, 0.0, 1.0)); -} - -mat3 rotation2D(const vec2 &Center, float angleDeg) -{ - float angleRad = (float) (angleDeg * M_PI / 180.0); - float c = (float) cos(angleRad); - float s = (float) sin(angleRad); - - return mat3( - vec3(c, -s, Center[VX] * (1.0f-c) + Center[VY] * s), - vec3(s, c, Center[VY] * (1.0f-c) - Center[VX] * s), - vec3(0.0, 0.0, 1.0)); -} - -mat3 scaling2D(const vec2 &scaleVector) -{ - return mat3( - vec3(scaleVector[VX], 0.0, 0.0), - vec3(0.0, scaleVector[VY], 0.0), - vec3(0.0, 0.0, 1.0)); -} - -mat4 identity3D() -{ - return mat4( - vec4(1.0, 0.0, 0.0, 0.0), - vec4(0.0, 1.0, 0.0, 0.0), - vec4(0.0, 0.0, 1.0, 0.0), - vec4(0.0, 0.0, 0.0, 1.0)); -} - -mat4 translation3D(const vec3 &v) -{ - return mat4( - vec4(1.0, 0.0, 0.0, v[VX]), - vec4(0.0, 1.0, 0.0, v[VY]), - vec4(0.0, 0.0, 1.0, v[VZ]), - vec4(0.0, 0.0, 0.0, 1.0)); -} - -mat4 rotation3D(const vec3 &Axis, float angleDeg) -{ - float angleRad = (float) (angleDeg * M_PI / 180.0); - float c = (float) cos(angleRad); - float s = (float) sin(angleRad); - float t = 1.0f - c; - - vec3 axis(Axis); - axis.normalize(); - - return mat4( - vec4(t * axis[VX] * axis[VX] + c, - t * axis[VX] * axis[VY] - s * axis[VZ], - t * axis[VX] * axis[VZ] + s * axis[VY], - 0.0), - vec4(t * axis[VX] * axis[VY] + s * axis[VZ], - t * axis[VY] * axis[VY] + c, - t * axis[VY] * axis[VZ] - s * axis[VX], - 0.0), - vec4(t * axis[VX] * axis[VZ] - s * axis[VY], - t * axis[VY] * axis[VZ] + s * axis[VX], - t * axis[VZ] * axis[VZ] + c, - 0.0), - vec4(0.0, 0.0, 0.0, 1.0)); -} - -mat4 rotation3Drad(const vec3 &Axis, float angleRad) -{ - float c = (float) cos(angleRad); - float s = (float) sin(angleRad); - float t = 1.0f - c; - - vec3 axis(Axis); - axis.normalize(); - - return mat4( - vec4(t * axis[VX] * axis[VX] + c, - t * axis[VX] * axis[VY] - s * axis[VZ], - t * axis[VX] * axis[VZ] + s * axis[VY], - 0.0), - vec4(t * axis[VX] * axis[VY] + s * axis[VZ], - t * axis[VY] * axis[VY] + c, - t * axis[VY] * axis[VZ] - s * axis[VX], - 0.0), - vec4(t * axis[VX] * axis[VZ] - s * axis[VY], - t * axis[VY] * axis[VZ] + s * axis[VX], - t * axis[VZ] * axis[VZ] + c, - 0.0), - vec4(0.0, 0.0, 0.0, 1.0)); -} - -mat4 scaling3D(const vec3 &scaleVector) -{ - return mat4( - vec4(scaleVector[VX], 0.0, 0.0, 0.0), - vec4(0.0, scaleVector[VY], 0.0, 0.0), - vec4(0.0, 0.0, scaleVector[VZ], 0.0), - vec4(0.0, 0.0, 0.0, 1.0)); -} - -mat4 perspective3D(float d) -{ - return mat4( - vec4(1.0f, 0.0f, 0.0f, 0.0f), - vec4(0.0f, 1.0f, 0.0f, 0.0f), - vec4(0.0f, 0.0f, 1.0f, 0.0f), - vec4(0.0f, 0.0f, 1.0f/d, 0.0f)); -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/algebra3.h b/src/dependencies/Box2D_v2.3.0/Box2D/glui/algebra3.h deleted file mode 100644 index 7849673..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/algebra3.h +++ /dev/null @@ -1,475 +0,0 @@ -/* - - algebra3.cpp, algebra3.h - C++ Vector and Matrix Algebra routines - - GLUI User Interface Toolkit (LGPL) - Copyright (c) 1998 Paul Rademacher - - WWW: http://sourceforge.net/projects/glui/ - Forums: http://sourceforge.net/forum/?group_id=92496 - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -*/ - -/************************************************************************** - - There are three vector classes and two matrix classes: vec2, vec3, - vec4, mat3, and mat4. - - All the standard arithmetic operations are defined, with '*' - for dot product of two vectors and multiplication of two matrices, - and '^' for cross product of two vectors. - - Additional functions include length(), normalize(), homogenize for - vectors, and print(), set(), apply() for all classes. - - There is a function transpose() for matrices, but note that it - does not actually change the matrix, - - When multiplied with a matrix, a vector is treated as a row vector - if it precedes the matrix (v*M), and as a column vector if it - follows the matrix (M*v). - - Matrices are stored in row-major form. - - A vector of one dimension (2d, 3d, or 4d) can be cast to a vector - of a higher or lower dimension. If casting to a higher dimension, - the new component is set by default to 1.0, unless a value is - specified: - vec3 a(1.0, 2.0, 3.0 ); - vec4 b( a, 4.0 ); // now b == {1.0, 2.0, 3.0, 4.0}; - When casting to a lower dimension, the vector is homogenized in - the lower dimension. E.g., if a 4d {X,Y,Z,W} is cast to 3d, the - resulting vector is {X/W, Y/W, Z/W}. It is up to the user to - insure the fourth component is not zero before casting. - - There are also the following function for building matrices: - identity2D(), translation2D(), rotation2D(), - scaling2D(), identity3D(), translation3D(), - rotation3D(), rotation3Drad(), scaling3D(), - perspective3D() - - NOTE: When compiling for Windows, include this file first, to avoid - certain name conflicts - - --------------------------------------------------------------------- - - Author: Jean-Francois DOUEg - Revised: Paul Rademacher - Version 3.2 - Feb 1998 - Revised: Nigel Stewart (GLUI Code Cleaning) - -**************************************************************************/ - -#ifndef GLUI_ALGEBRA3_H -#define GLUI_ALGEBRA3_H - -#include -#include -#include - -// this line defines a new type: pointer to a function which returns a -// float and takes as argument a float -typedef float (*V_FCT_PTR)(float); - -class vec2; -class vec3; -class vec4; -class mat3; -class mat4; - -#ifndef M_PI -#define M_PI 3.141592654 -#endif - -enum {VX, VY, VZ, VW}; // axes -enum {PA, PB, PC, PD}; // planes -enum {RED, GREEN, BLUE, ALPHA}; // colors -enum {KA, KD, KS, ES}; // phong coefficients - -/**************************************************************** - * * - * 2D Vector * - * * - ****************************************************************/ - -class vec2 -{ - friend class vec3; - -protected: - - float n[2]; - -public: - - // Constructors - - vec2(); - vec2(float x, float y); - vec2(const vec2 &v); // copy constructor - vec2(const vec3 &v); // cast v3 to v2 - vec2(const vec3 &v, int dropAxis); // cast v3 to v2 - - // Assignment operators - - vec2 &operator = (const vec2 &v); // assignment of a vec2 - vec2 &operator += (const vec2 &v); // incrementation by a vec2 - vec2 &operator -= (const vec2 &v); // decrementation by a vec2 - vec2 &operator *= (float d); // multiplication by a constant - vec2 &operator /= (float d); // division by a constant - - // special functions - - float length() const; // length of a vec2 - float length2() const; // squared length of a vec2 - vec2 &normalize(); // normalize a vec2 - vec2 &apply(V_FCT_PTR fct); // apply a func. to each component - void set(float x, float y); // set vector - - float &operator [] (int i); // indexing - const float &operator [] (int i) const; // indexing - - // friends - - friend vec2 operator - (const vec2 &v); // -v1 - friend vec2 operator + (const vec2 &a, const vec2 &b); // v1 + v2 - friend vec2 operator - (const vec2 &a, const vec2 &b); // v1 - v2 - friend vec2 operator * (const vec2 &a, float d); // v1 * 3.0 - friend vec2 operator * (float d, const vec2 &a); // 3.0 * v1 - friend vec2 operator * (const mat3 &a, const vec2 &v); // M . v - friend vec2 operator * (const vec2 &v, const mat3 &a); // v . M - friend float operator * (const vec2 &a, const vec2 &b); // dot product - friend vec2 operator / (const vec2 &a, float d); // v1 / 3.0 - friend vec3 operator ^ (const vec2 &a, const vec2 &b); // cross product - friend int operator == (const vec2 &a, const vec2 &b); // v1 == v2 ? - friend int operator != (const vec2 &a, const vec2 &b); // v1 != v2 ? - //friend ostream& operator << (ostream& s, vec2& v); // output to stream - //friend istream& operator >> (istream& s, vec2& v); // input from strm. - friend void swap(vec2 &a, vec2 &b); // swap v1 & v2 - friend vec2 min_vec(const vec2 &a, const vec2 &b); // min(v1, v2) - friend vec2 max_vec(const vec2 &a, const vec2 &b); // max(v1, v2) - friend vec2 prod (const vec2 &a, const vec2 &b); // term by term * -}; - -/**************************************************************** - * * - * 3D Vector * - * * - ****************************************************************/ - -class vec3 -{ - friend class vec2; - friend class vec4; - friend class mat3; - -protected: - - float n[3]; - -public: - - // Constructors - - vec3(); - vec3(float x, float y, float z); - vec3(const vec3 &v); // copy constructor - vec3(const vec2 &v); // cast v2 to v3 - vec3(const vec2 &v, float d); // cast v2 to v3 - vec3(const vec4 &v); // cast v4 to v3 - vec3(const vec4 &v, int dropAxis); // cast v4 to v3 - - // Assignment operators - - vec3 &operator = (const vec3 &v); // assignment of a vec3 - vec3 &operator += (const vec3 &v); // incrementation by a vec3 - vec3 &operator -= (const vec3 &v); // decrementation by a vec3 - vec3 &operator *= (float d); // multiplication by a constant - vec3 &operator /= (float d); // division by a constant - - // special functions - - float length() const; // length of a vec3 - float length2() const; // squared length of a vec3 - vec3& normalize(); // normalize a vec3 - vec3& homogenize(); // homogenize (div by Z) - vec3& apply(V_FCT_PTR fct); // apply a func. to each component - void set(float x, float y, float z); // set vector - - void print(FILE *file, const char *name) const; // print vector to a file - - - float &operator [] (int i); // indexing - const float &operator [] (int i) const; // indexing - - // friends - - friend vec3 operator - (const vec3 &v); // -v1 - friend vec3 operator + (const vec3 &a, const vec3 &b); // v1 + v2 - friend vec3 operator - (const vec3 &a, const vec3 &b); // v1 - v2 - friend vec3 operator * (const vec3 &a, float d); // v1 * 3.0 - friend vec3 operator * (float d, const vec3 &a); // 3.0 * v1 - friend vec3 operator * (const mat4 &a, const vec3 &v); // M . v - friend vec3 operator * (const vec3 &v, const mat4 &a); // v . M - friend float operator * (const vec3 &a, const vec3 &b); // dot product - friend vec3 operator / (const vec3 &a, float d); // v1 / 3.0 - friend vec3 operator ^ (const vec3 &a, const vec3 &b); // cross product - friend int operator == (const vec3 &a, const vec3 &b); // v1 == v2 ? - friend int operator != (const vec3 &a, const vec3 &b); // v1 != v2 ? - //friend ostream& operator << (ostream& s, vec3& v); // output to stream - //friend istream& operator >> (istream& s, vec3& v); // input from strm. - friend void swap(vec3 &a, vec3 &b); // swap v1 & v2 - friend vec3 min_vec(const vec3 &a, const vec3 &b); // min(v1, v2) - friend vec3 max_vec(const vec3 &a, const vec3 &b); // max(v1, v2) - friend vec3 prod(const vec3 &a, const vec3 &b); // term by term * - - // necessary friend declarations - - friend vec2 operator * (const mat3 &a, const vec2 &v); // linear transform - friend vec3 operator * (const mat3 &a, const vec3 &v); // linear transform - friend mat3 operator * (const mat3 &a, const mat3 &b); // matrix 3 product -}; - -/**************************************************************** - * * - * 4D Vector * - * * - ****************************************************************/ - -class vec4 -{ - friend class vec3; - friend class mat4; - -protected: - - float n[4]; - -public: - - // Constructors - - vec4(); - vec4(float x, float y, float z, float w); - vec4(const vec4 &v); // copy constructor - vec4(const vec3 &v); // cast vec3 to vec4 - vec4(const vec3 &v, float d); // cast vec3 to vec4 - - // Assignment operators - - vec4 &operator = (const vec4 &v); // assignment of a vec4 - vec4 &operator += (const vec4 &v); // incrementation by a vec4 - vec4 &operator -= (const vec4 &v); // decrementation by a vec4 - vec4 &operator *= (float d); // multiplication by a constant - vec4 &operator /= (float d); // division by a constant - - // special functions - - float length() const; // length of a vec4 - float length2() const; // squared length of a vec4 - vec4 &normalize(); // normalize a vec4 - vec4 &apply(V_FCT_PTR fct); // apply a func. to each component - vec4 &homogenize(); - - void print(FILE *file, const char *name) const; // print vector to a file - - void set(float x, float y, float z, float a); - - float &operator [] (int i); // indexing - const float &operator [] (int i) const; // indexing - - // friends - - friend vec4 operator - (const vec4 &v); // -v1 - friend vec4 operator + (const vec4 &a, const vec4 &b); // v1 + v2 - friend vec4 operator - (const vec4 &a, const vec4 &b); // v1 - v2 - friend vec4 operator * (const vec4 &a, float d); // v1 * 3.0 - friend vec4 operator * (float d, const vec4 &a); // 3.0 * v1 - friend vec4 operator * (const mat4 &a, const vec4 &v); // M . v - friend vec4 operator * (const vec4 &v, const mat4 &a); // v . M - friend float operator * (const vec4 &a, const vec4 &b); // dot product - friend vec4 operator / (const vec4 &a, float d); // v1 / 3.0 - friend int operator == (const vec4 &a, const vec4 &b); // v1 == v2 ? - friend int operator != (const vec4 &a, const vec4 &b); // v1 != v2 ? - //friend ostream& operator << (ostream& s, vec4& v); // output to stream - //friend istream& operator >> (istream& s, vec4& v); // input from strm. - friend void swap(vec4 &a, vec4 &b); // swap v1 & v2 - friend vec4 min_vec(const vec4 &a, const vec4 &b); // min(v1, v2) - friend vec4 max_vec(const vec4 &a, const vec4 &b); // max(v1, v2) - friend vec4 prod (const vec4 &a, const vec4 &b); // term by term * - - // necessary friend declarations - - friend vec3 operator * (const mat4 &a, const vec3 &v); // linear transform - friend mat4 operator * (const mat4 &a, const mat4 &b); // matrix 4 product -}; - -/**************************************************************** - * * - * 3x3 Matrix * - * * - ****************************************************************/ - -class mat3 -{ -protected: - - vec3 v[3]; - -public: - - // Constructors - - mat3(); - mat3(const vec3 &v0, const vec3 &v1, const vec3 &v2); - mat3(const mat3 &m); - - // Assignment operators - - mat3 &operator = (const mat3 &m); // assignment of a mat3 - mat3 &operator += (const mat3 &m); // incrementation by a mat3 - mat3 &operator -= (const mat3 &m); // decrementation by a mat3 - mat3 &operator *= (float d); // multiplication by a constant - mat3 &operator /= (float d); // division by a constant - - // special functions - - mat3 transpose() const; // transpose - mat3 inverse() const; // inverse - mat3 &apply(V_FCT_PTR fct); // apply a func. to each element - - void print(FILE *file, const char *name ) const; // print matrix to a file - - void set(const vec3 &v0, const vec3 &v1, const vec3 &v2); - - vec3 &operator [] (int i); // indexing - const vec3 &operator [] (int i) const; // indexing - - // friends - - friend mat3 operator - (const mat3 &a); // -m1 - friend mat3 operator + (const mat3 &a, const mat3 &b); // m1 + m2 - friend mat3 operator - (const mat3 &a, const mat3 &b); // m1 - m2 - friend mat3 operator * (const mat3 &a, const mat3 &b); // m1 * m2 - friend mat3 operator * (const mat3 &a, float d); // m1 * 3.0 - friend mat3 operator * (float d, const mat3 &a); // 3.0 * m1 - friend mat3 operator / (const mat3 &a, float d); // m1 / 3.0 - friend int operator == (const mat3 &a, const mat3 &b); // m1 == m2 ? - friend int operator != (const mat3 &a, const mat3 &b); // m1 != m2 ? - //friend ostream& operator << (ostream& s, mat3& m); // output to stream - //friend istream& operator >> (istream& s, mat3& m); // input from strm. - friend void swap(mat3 &a, mat3 &b); // swap m1 & m2 - - // necessary friend declarations - - friend vec3 operator * (const mat3 &a, const vec3 &v); // linear transform - friend vec2 operator * (const mat3 &a, const vec2 &v); // linear transform -}; - -/**************************************************************** - * * - * 4x4 Matrix * - * * - ****************************************************************/ - -class mat4 -{ -protected: - - vec4 v[4]; - -public: - - // Constructors - - mat4(); - mat4(const vec4 &v0, const vec4 &v1, const vec4 &v2, const vec4 &v3); - mat4(const mat4 &m); - mat4(float a00, float a01, float a02, float a03, - float a10, float a11, float a12, float a13, - float a20, float a21, float a22, float a23, - float a30, float a31, float a32, float a33 ); - - - // Assignment operators - - mat4 &operator = (const mat4 &m); // assignment of a mat4 - mat4 &operator += (const mat4 &m); // incrementation by a mat4 - mat4 &operator -= (const mat4 &m); // decrementation by a mat4 - mat4 &operator *= (float d); // multiplication by a constant - mat4 &operator /= (float d); // division by a constant - - // special functions - - mat4 transpose() const; // transpose - mat4 inverse() const; // inverse - mat4 &apply(V_FCT_PTR fct); // apply a func. to each element - - void print(FILE *file, const char *name) const; // print matrix to a file - - vec4 &operator [] (int i); // indexing - const vec4 &operator [] (int i) const; // indexing - - void swap_rows(int i, int j); // swap rows i and j - void swap_cols(int i, int j); // swap cols i and j - - // friends - - friend mat4 operator - (const mat4 &a); // -m1 - friend mat4 operator + (const mat4 &a, const mat4 &b); // m1 + m2 - friend mat4 operator - (const mat4 &a, const mat4 &b); // m1 - m2 - friend mat4 operator * (const mat4 &a, const mat4 &b); // m1 * m2 - friend mat4 operator * (const mat4 &a, float d); // m1 * 4.0 - friend mat4 operator * (float d, const mat4 &a); // 4.0 * m1 - friend mat4 operator / (const mat4 &a, float d); // m1 / 3.0 - friend int operator == (const mat4 &a, const mat4 &b); // m1 == m2 ? - friend int operator != (const mat4 &a, const mat4 &b); // m1 != m2 ? - //friend ostream& operator << (ostream& s, mat4& m); // output to stream - //friend istream& operator >> (istream& s, mat4& m); // input from strm. - friend void swap(mat4 &a, mat4 &b); // swap m1 & m2 - - // necessary friend declarations - - friend vec4 operator * (const mat4 &a, const vec4 &v); // linear transform - //friend vec4 operator * (const vec4& v, const mat4& a); // linear transform - friend vec3 operator * (const mat4 &a, const vec3 &v); // linear transform - friend vec3 operator * (const vec3 &v, const mat4 &a); // linear transform -}; - -/**************************************************************** - * * - * 2D functions and 3D functions * - * * - ****************************************************************/ - -mat3 identity2D (); // identity 2D -mat3 translation2D(const vec2 &v); // translation 2D -mat3 rotation2D (const vec2 &Center, float angleDeg); // rotation 2D -mat3 scaling2D (const vec2 &scaleVector); // scaling 2D -mat4 identity3D (); // identity 3D -mat4 translation3D(const vec3 &v); // translation 3D -mat4 rotation3D (const vec3 &Axis, float angleDeg); // rotation 3D -mat4 rotation3Drad(const vec3 &Axis, float angleRad); // rotation 3D -mat4 scaling3D (const vec3 &scaleVector); // scaling 3D -mat4 perspective3D(float d); // perspective 3D - -vec3 operator * (const vec3 &v, const mat3 &a); -vec2 operator * (const vec2 &v, const mat3 &a); -vec3 operator * (const vec3 &v, const mat4 &a); -vec4 operator * (const vec4 &v, const mat4 &a); - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/arcball.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/glui/arcball.cpp deleted file mode 100644 index d233c7f..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/arcball.cpp +++ /dev/null @@ -1,237 +0,0 @@ -/********************************************************************** - - arcball.cpp - - - -------------------------------------------------- - - GLUI User Interface Toolkit (LGPL) - Copyright (c) 1998 Paul Rademacher - Feb 1998, Paul Rademacher (rademach@cs.unc.edu) - Oct 2003, Nigel Stewart - GLUI Code Cleaning - - WWW: http://sourceforge.net/projects/glui/ - Forums: http://sourceforge.net/forum/?group_id=92496 - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -**********************************************************************/ - -#include "arcball.h" - -#include - - -/**************************************** Arcball::Arcball() ****/ -/* Default (void) constructor for Arcball */ - -Arcball::Arcball() -{ - rot_ptr = &rot; - init(); -} - -/**************************************** Arcball::Arcball() ****/ -/* Takes as argument a mat4 to use instead of the internal rot */ - -Arcball::Arcball(mat4 *mtx) -{ - rot_ptr = mtx; -} - - -/**************************************** Arcball::Arcball() ****/ -/* A constructor that accepts the screen center and arcball radius*/ - -Arcball::Arcball(const vec2 &_center, float _radius) -{ - rot_ptr = &rot; - init(); - set_params(_center, _radius); -} - - -/************************************** Arcball::set_params() ****/ - -void Arcball::set_params(const vec2 &_center, float _radius) -{ - center = _center; - radius = _radius; -} - -/*************************************** Arcball::init() **********/ - -void Arcball::init() -{ - center.set( 0.0, 0.0 ); - radius = 1.0; - q_now = quat_identity(); - *rot_ptr = identity3D(); - q_increment = quat_identity(); - rot_increment = identity3D(); - is_mouse_down = false; - is_spinning = false; - damp_factor = 0.0; - zero_increment = true; -} - -/*********************************** Arcball::mouse_to_sphere() ****/ - -vec3 Arcball::mouse_to_sphere(const vec2 &p) -{ - float mag; - vec2 v2 = (p - center) / radius; - vec3 v3( v2[0], v2[1], 0.0 ); - - mag = v2*v2; - - if ( mag > 1.0 ) - v3.normalize(); - else - v3[VZ] = (float) sqrt( 1.0 - mag ); - - /* Now we add constraints - X takes precedence over Y */ - if ( constraint_x ) - { - v3 = constrain_vector( v3, vec3( 1.0, 0.0, 0.0 )); - } - else if ( constraint_y ) - { - v3 = constrain_vector( v3, vec3( 0.0, 1.0, 0.0 )); - } - - return v3; -} - - -/************************************ Arcball::constrain_vector() ****/ - -vec3 Arcball::constrain_vector(const vec3 &vector, const vec3 &axis) -{ - return (vector-(vector*axis)*axis).normalize(); -} - -/************************************ Arcball::mouse_down() **********/ - -void Arcball::mouse_down(int x, int y) -{ - down_pt.set( (float)x, (float) y ); - is_mouse_down = true; - - q_increment = quat_identity(); - rot_increment = identity3D(); - zero_increment = true; -} - - -/************************************ Arcball::mouse_up() **********/ - -void Arcball::mouse_up() -{ - q_now = q_drag * q_now; - is_mouse_down = false; -} - - -/********************************** Arcball::mouse_motion() **********/ - -void Arcball::mouse_motion(int x, int y, int shift, int ctrl, int alt) -{ - /* Set the X constraint if CONTROL key is pressed, Y if ALT key */ - set_constraints( ctrl != 0, alt != 0 ); - - vec2 new_pt( (float)x, (float) y ); - vec3 v0 = mouse_to_sphere( down_pt ); - vec3 v1 = mouse_to_sphere( new_pt ); - - vec3 cross = v0^v1; - - q_drag.set( cross, v0 * v1 ); - - // *rot_ptr = (q_drag * q_now).to_mat4(); - mat4 temp = q_drag.to_mat4(); - *rot_ptr = *rot_ptr * temp; - - down_pt = new_pt; - - /* We keep a copy of the current incremental rotation (= q_drag) */ - q_increment = q_drag; - rot_increment = q_increment.to_mat4(); - - set_constraints(false, false); - - if ( q_increment.s < .999999 ) - { - is_spinning = true; - zero_increment = false; - } - else - { - is_spinning = false; - zero_increment = true; - } -} - - -/********************************** Arcball::mouse_motion() **********/ - -void Arcball::mouse_motion(int x, int y) -{ - mouse_motion(x, y, 0, 0, 0); -} - - -/***************************** Arcball::set_constraints() **********/ - -void Arcball::set_constraints(bool _constraint_x, bool _constraint_y) -{ - constraint_x = _constraint_x; - constraint_y = _constraint_y; -} - -/***************************** Arcball::idle() *********************/ - -void Arcball::idle() -{ - if (is_mouse_down) - { - is_spinning = false; - zero_increment = true; - } - - if (damp_factor < 1.0f) - q_increment.scale_angle(1.0f - damp_factor); - - rot_increment = q_increment.to_mat4(); - - if (q_increment.s >= .999999f) - { - is_spinning = false; - zero_increment = true; - } -} - - -/************************ Arcball::set_damping() *********************/ - -void Arcball::set_damping(float d) -{ - damp_factor = d; -} - - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/arcball.h b/src/dependencies/Box2D_v2.3.0/Box2D/glui/arcball.h deleted file mode 100644 index ef69afc..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/arcball.h +++ /dev/null @@ -1,97 +0,0 @@ -/********************************************************************** - - arcball.h - - GLUI User Interface Toolkit (LGPL) - Copyright (c) 1998 Paul Rademacher - Feb 1998, Paul Rademacher (rademach@cs.unc.edu) - Oct 2003, Nigel Stewart - GLUI Code Cleaning - - - WWW: http://sourceforge.net/projects/glui/ - Forums: http://sourceforge.net/forum/?group_id=92496 - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - - --------------------------------------------------------------------- - - A C++ class that implements the Arcball, as described by Ken - Shoemake in Graphics Gems IV. - This class takes as input mouse events (mouse down, mouse drag, - mouse up), and creates the appropriate quaternions and 4x4 matrices - to represent the rotation given by the mouse. - - This class is used as follows: - - initialize [either in the constructor or with set_params()], the - center position (x,y) of the arcball on the screen, and the radius - - on mouse down, call mouse_down(x,y) with the mouse position - - as the mouse is dragged, repeatedly call mouse_motion() with the - current x and y positions. One can optionally pass in the current - state of the SHIFT, ALT, and CONTROL keys (passing zero if keys - are not pressed, non-zero otherwise), which constrains - the rotation to certain axes (X for CONTROL, Y for ALT). - - when the mouse button is released, call mouse_up() - - Axis constraints can also be explicitly set with the - set_constraints() function. - - The current rotation is stored in the 4x4 float matrix 'rot'. - It is also stored in the quaternion 'q_now'. - -**********************************************************************/ - -#ifndef GLUI_ARCBALL_H -#define GLUI_ARCBALL_H - -#include "glui_internal.h" -#include "algebra3.h" -#include "quaternion.h" - -class Arcball -{ -public: - Arcball(); - Arcball(mat4 *mtx); - Arcball(const vec2 ¢er, float radius); - - void set_damping(float d); - void idle(); - void mouse_down(int x, int y); - void mouse_up(); - void mouse_motion(int x, int y, int shift, int ctrl, int alt); - void mouse_motion(int x, int y); - void set_constraints(bool constrain_x, bool constrain_y); - void set_params(const vec2 ¢er, float radius); - void reset_mouse(); - void init(); - - vec3 constrain_vector(const vec3 &vector, const vec3 &axis); - vec3 mouse_to_sphere(const vec2 &p); - - //public: - int is_mouse_down; /* true for down, false for up */ - int is_spinning; - quat q_now, q_down, q_drag, q_increment; - vec2 down_pt; - mat4 rot, rot_increment; - mat4 *rot_ptr; - - bool constraint_x, constraint_y; - vec2 center; - float radius, damp_factor; - int zero_increment; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/cmake_install.cmake b/src/dependencies/Box2D_v2.3.0/Box2D/glui/cmake_install.cmake deleted file mode 100644 index 984bcdb..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/cmake_install.cmake +++ /dev/null @@ -1,34 +0,0 @@ -# Install script for directory: /home/tuket/prog/owman/src/dependencies/Box2D_v2.3.0/Box2D/glui - -# Set the install prefix -IF(NOT DEFINED CMAKE_INSTALL_PREFIX) - SET(CMAKE_INSTALL_PREFIX "/usr/local") -ENDIF(NOT DEFINED CMAKE_INSTALL_PREFIX) -STRING(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") - -# Set the install configuration name. -IF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) - IF(BUILD_TYPE) - STRING(REGEX REPLACE "^[^A-Za-z0-9_]+" "" - CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") - ELSE(BUILD_TYPE) - SET(CMAKE_INSTALL_CONFIG_NAME "") - ENDIF(BUILD_TYPE) - MESSAGE(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") -ENDIF(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) - -# Set the component getting installed. -IF(NOT CMAKE_INSTALL_COMPONENT) - IF(COMPONENT) - MESSAGE(STATUS "Install component: \"${COMPONENT}\"") - SET(CMAKE_INSTALL_COMPONENT "${COMPONENT}") - ELSE(COMPONENT) - SET(CMAKE_INSTALL_COMPONENT) - ENDIF(COMPONENT) -ENDIF(NOT CMAKE_INSTALL_COMPONENT) - -# Install shared libraries without execute permission? -IF(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE) - SET(CMAKE_INSTALL_SO_NO_EXE "1") -ENDIF(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE) - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.cpp deleted file mode 100644 index 221e68d..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.cpp +++ /dev/null @@ -1,2105 +0,0 @@ -/**************************************************************************** - - GLUI User Interface Toolkit (LGPL) - --------------------------- - - glui.cpp - - -------------------------------------------------- - - Copyright (c) 1998 Paul Rademacher - - WWW: http://sourceforge.net/projects/glui/ - Forums: http://sourceforge.net/forum/?group_id=92496 - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -*****************************************************************************/ -#include "glui_internal_control.h" - - -/** - Note: moving this routine here from glui_add_controls.cpp prevents the linker - from touching glui_add_controls.o in non-deprecated programs, which - descreases the linked size of small GLUI programs substantially (100K+). (OSL 2006/06) -*/ -void GLUI_Node::add_child_to_control(GLUI_Node *parent,GLUI_Control *child) -{ - GLUI_Control *parent_control; - - /*** Collapsible nodes have to be handled differently, b/c the first and - last children are swapped in and out ***/ - parent_control = ((GLUI_Control*)parent); - if ( parent_control->collapsible == true ) { - if ( NOT parent_control->is_open ) { - /** Swap in the original first and last children **/ - parent_control->child_head = parent_control->collapsed_node.child_head; - parent_control->child_tail = parent_control->collapsed_node.child_tail; - - /*** Link this control ***/ - child->link_this_to_parent_last( parent_control ); - - /** Swap the children back out ***/ - parent_control->collapsed_node.child_head = parent_control->child_head; - parent_control->collapsed_node.child_tail = parent_control->child_tail; - parent_control->child_head = NULL; - parent_control->child_tail = NULL; - } - else { - child->link_this_to_parent_last( parent_control ); - } - } - else { - child->link_this_to_parent_last( parent_control ); - } - child->glui = (GLUI*) parent_control->glui; - child->update_size(); - child->enabled = parent_control->enabled; - child->glui->refresh(); - - /** Now set the 'hidden' var based on the parent **/ - if ( parent_control->hidden OR - (parent_control->collapsible AND NOT parent_control->is_open ) ) - { - child->hidden = true; - } -} - - -/************************************ GLUI_Node::add_control() **************/ - -int GLUI_Node::add_control( GLUI_Control *child ) -{ - add_child_to_control(this,child); - return true; -} - -/************************************ GLUI_Main::add_control() **************/ - -int GLUI_Main::add_control( GLUI_Node *parent, GLUI_Control *control ) -{ - add_child_to_control(parent,control); - return true; -} - - - -/*** This object must be used to create a GLUI ***/ - -GLUI_Master_Object GLUI_Master; - -/************************************ finish_drawing() *********** - Probably a silly routine. Called after all event handling callbacks. -*/ - -static void finish_drawing(void) -{ - glFinish(); -} - -/************************************ GLUI_CB::operator()() ************/ -void GLUI_CB::operator()(GLUI_Control*ctrl) const -{ - if (idCB) idCB(ctrl->user_id); - if (objCB) objCB(ctrl); -} - - -/************************************************ GLUI::GLUI() **********/ - -int GLUI::init( const char *text, long flags, int x, int y, int parent_window ) -{ - int old_glut_window; - - this->flags = flags; - - window_name = text; - - buffer_mode = buffer_back; ///< New smooth way - //buffer_mode = buffer_front; ///< Old flickery way (a bit faster). - - /*** We copy over the current window callthroughs ***/ - /*** (I think this might actually only be needed for subwindows) ***/ - /* glut_keyboard_CB = GLUI_Master.glut_keyboard_CB; - glut_reshape_CB = GLUI_Master.glut_reshape_CB; - glut_special_CB = GLUI_Master.glut_special_CB; - glut_mouse_CB = GLUI_Master.glut_mouse_CB;*/ - - - if ( (flags & GLUI_SUBWINDOW) != GLUI_SUBWINDOW ) { /* not a subwindow, creating a new top-level window */ - old_glut_window = glutGetWindow(); - - create_standalone_window( window_name.c_str(), x, y ); - setup_default_glut_callbacks(); - - if ( old_glut_window > 0 ) - glutSetWindow( old_glut_window ); - - top_level_glut_window_id = glut_window_id; - } - else /* *is* a subwindow */ - { - old_glut_window = glutGetWindow(); - - create_subwindow( parent_window, flags ); - setup_default_glut_callbacks(); - - if ( old_glut_window > 0 ) - glutSetWindow( old_glut_window ); - - top_level_glut_window_id = parent_window; - - /* - glutReshapeFunc( glui_parent_window_reshape_func ); - glutSpecialFunc( glui_parent_window_special_func ); - glutKeyboardFunc( glui_parent_window_keyboard_func ); - glutMouseFunc( glui_parent_window_mouse_func ); - */ - - } - - return true; -} - - -/**************************** GLUI_Main::create_standalone_window() ********/ - -void GLUI_Main::create_standalone_window( const char *name, int x, int y ) -{ - glutInitWindowSize( 100, 100 ); - if ( x >= 0 OR y >= 0 ) - glutInitWindowPosition( x, y ); - glutInitDisplayMode( GLUT_RGB | GLUT_DOUBLE ); - glut_window_id = glutCreateWindow( name ); -} - - -/******************************** GLUI_Main::create_subwindow() **********/ - -void GLUI_Main::create_subwindow( int parent_window, int window_alignment ) -{ - glut_window_id = glutCreateSubWindow(parent_window, 0,0, 100, 100); - this->parent_window = parent_window; -} - - -/**************************** GLUI_Main::setup_default_glut_callbacks() *****/ - -void GLUI_Main::setup_default_glut_callbacks( void ) -{ - glutDisplayFunc( glui_display_func ); - glutReshapeFunc( glui_reshape_func ); - glutKeyboardFunc( glui_keyboard_func ); - glutSpecialFunc( glui_special_func ); - glutMouseFunc( glui_mouse_func ); - glutMotionFunc( glui_motion_func ); - glutPassiveMotionFunc( glui_passive_motion_func ); - glutEntryFunc( glui_entry_func ); - glutVisibilityFunc( glui_visibility_func ); - /* glutIdleFunc( glui_idle_func ); // FIXME! 100% CPU usage! */ -} - - -/********************************************** glui_display_func() ********/ - -void glui_display_func(void) -{ - GLUI *glui; - - /* printf( "display func\n" ); */ - - glui = GLUI_Master.find_glui_by_window_id( glutGetWindow() ); - - if ( glui ) { - glui->display(); - /* - Do not do anything after the above line, b/c the GLUI - window might have just closed itself - */ - } -} - - -/********************************************** glui_reshape_func() ********/ - -void glui_reshape_func(int w,int h ) -{ - GLUI *glui; - GLUI_Glut_Window *glut_window; - int current_window; - - /*printf( "glui_reshape_func(): %d w/h: %d/%d\n", glutGetWindow(), w, h ); */ - - current_window = glutGetWindow(); - - /*** First check if this is main glut window ***/ - glut_window = GLUI_Master.find_glut_window( current_window ); - if ( glut_window ) { - if (glut_window->glut_reshape_CB) glut_window->glut_reshape_CB(w,h); - - /*** Now send reshape events to all subwindows ***/ - glui = (GLUI*) GLUI_Master.gluis.first_child(); - while(glui) { - if ( TEST_AND( glui->flags, GLUI_SUBWINDOW) AND - glui->parent_window == current_window ) { - glutSetWindow( glui->get_glut_window_id()); - glui->reshape(w,h); - /* glui->check_subwindow_position(); */ - } - glui = (GLUI*) glui->next(); - } - } - else { - /*** A standalone GLUI window ***/ - - glui = GLUI_Master.find_glui_by_window_id( current_window ); - - if ( glui ) { - glui->reshape(w,h); - } - } -} - -/********************************************** glui_keyboard_func() ********/ - -void glui_keyboard_func(unsigned char key, int x, int y) -{ - GLUI *glui; - int current_window; - GLUI_Glut_Window *glut_window; - - current_window = glutGetWindow(); - glut_window = GLUI_Master.find_glut_window( current_window ); - - /*printf( "key: %d\n", current_window ); */ - - if ( glut_window ) { /** Was event in a GLUT window? **/ - if ( GLUI_Master.active_control_glui AND GLUI_Master.active_control ) { - glutSetWindow( GLUI_Master.active_control_glui->get_glut_window_id() ); - - GLUI_Master.active_control_glui->keyboard(key,x,y); - finish_drawing(); - - glutSetWindow( current_window ); - } - else { - if (glut_window->glut_keyboard_CB) - glut_window->glut_keyboard_CB( key, x, y ); - } - } - else { /*** Nope, event was in a standalone GLUI window **/ - glui = GLUI_Master.find_glui_by_window_id( glutGetWindow() ); - - if ( glui ) { - glui->keyboard(key,x,y); - finish_drawing(); - } - } -} - - -/************************************************ glui_special_func() ********/ - -void glui_special_func(int key, int x, int y) -{ - GLUI *glui; - int current_window; - GLUI_Glut_Window *glut_window; - - current_window = glutGetWindow(); - glut_window = GLUI_Master.find_glut_window( current_window ); - - if (glut_window) /** Was event in a GLUT window? **/ - { - if ( GLUI_Master.active_control_glui AND GLUI_Master.active_control ) - { - glutSetWindow( GLUI_Master.active_control_glui->get_glut_window_id() ); - - GLUI_Master.active_control_glui->special(key,x,y); - finish_drawing(); - - glutSetWindow( current_window ); - } - else - { - if (glut_window->glut_special_CB) - glut_window->glut_special_CB( key, x, y ); - } - } - else /*** Nope, event was in a standalone GLUI window **/ - { - glui = GLUI_Master.find_glui_by_window_id(glutGetWindow()); - - if ( glui ) - { - glui->special(key,x,y); - finish_drawing(); - } - } -} - -/********************************************** glui_mouse_func() ********/ - -void glui_mouse_func(int button, int state, int x, int y) -{ - GLUI *glui; - int current_window; - GLUI_Glut_Window *glut_window; - - current_window = glutGetWindow(); - glut_window = GLUI_Master.find_glut_window( current_window ); - - if ( glut_window ) { /** Was event in a GLUT window? **/ - if ( GLUI_Master.active_control_glui != NULL ) - GLUI_Master.active_control_glui->deactivate_current_control(); - - if (glut_window->glut_mouse_CB) - glut_window->glut_mouse_CB( button, state, x, y ); - finish_drawing(); - } - else { /** Nope - event was in a GLUI standalone window **/ - glui = GLUI_Master.find_glui_by_window_id( glutGetWindow() ); - if ( glui ) { - glui->passive_motion( 0,0 ); - glui->mouse( button, state, x, y ); - finish_drawing(); - } - } -} - - -/********************************************** glui_motion_func() ********/ - -void glui_motion_func(int x, int y) -{ - GLUI *glui; - - glui = GLUI_Master.find_glui_by_window_id( glutGetWindow() ); - - if ( glui ) { - glui->motion(x,y); - finish_drawing(); - } - -} - - -/**************************************** glui_passive_motion_func() ********/ - -void glui_passive_motion_func(int x, int y) -{ - GLUI *glui; - - glui = GLUI_Master.find_glui_by_window_id( glutGetWindow() ); - - if ( glui ) { - glui->passive_motion(x,y); - finish_drawing(); - } -} - - -/********************************************** glui_entry_func() ********/ - -void glui_entry_func(int state) -{ - GLUI *glui; - - glui = GLUI_Master.find_glui_by_window_id( glutGetWindow() ); - - if ( glui ) { - glui->entry(state); - } -} - - -/******************************************** glui_visibility_func() ********/ - -void glui_visibility_func(int state) -{ - GLUI *glui; - - /* printf( "IN GLUI VISIBILITY()\n" ); */ - /* fflush( stdout ); */ - - glui = GLUI_Master.find_glui_by_window_id( glutGetWindow() ); - - if ( glui ) { - glui->visibility(state); - } -} - - -/********************************************** glui_idle_func() ********/ -/* Send idle event to each glui, then to the main window */ - -void glui_idle_func(void) -{ - GLUI *glui; - - glui = (GLUI*) GLUI_Master.gluis.first_child(); - while( glui ) { - glui->idle(); - finish_drawing(); - - glui = (GLUI*) glui->next(); - } - - if ( GLUI_Master.glut_idle_CB ) { - /*** We set the current glut window before calling the user's - idle function, even though glut explicitly says the window id is - undefined in an idle callback. ***/ - - /** Check what the current window is first ***/ - - /*** Arbitrarily set the window id to the main gfx window of the - first glui window ***/ - /* int current_window, new_window; */ - /* current_window = glutGetWindow(); */ - /* if (GLUI_Master.gluis.first_child() != NULL ) { */ - /* new_window = ((GLUI_Main*)GLUI_Master.gluis.first_child())-> */ - /* main_gfx_window_id; */ - /* if ( new_window > 0 AND new_window != old_window ) { */ - /* --- Window is changed only if its not already the current window ---*/ - /* glutSetWindow( new_window ); */ - /* } */ - /*} */ - - GLUI_Master.glut_idle_CB(); - } -} - -/*********************************** GLUI_Master_Object::GLUI_Master_Object() ******/ - -GLUI_Master_Object::GLUI_Master_Object() -: glui_id_counter(1), - glut_idle_CB(NULL) -{ -} - -GLUI_Master_Object::~GLUI_Master_Object() -{ -} - -/*********************************** GLUI_Master_Object::create_glui() ******/ - -GLUI *GLUI_Master_Object::create_glui( const char *name, long flags,int x,int y ) -{ - GLUI *new_glui = new GLUI; - new_glui->init( name, flags, x, y, -1 ); - new_glui->link_this_to_parent_last( &this->gluis ); - return new_glui; -} - - -/************************** GLUI_Master_Object::create_glui_subwindow() ******/ - -GLUI *GLUI_Master_Object::create_glui_subwindow( int parent_window, - long flags ) -{ - GLUI *new_glui = new GLUI; - GLUI_String new_name; - glui_format_str( new_name, "subwin_%p", this ); - - new_glui->init( new_name.c_str(), flags | GLUI_SUBWINDOW, 0,0, - parent_window ); - new_glui->main_panel->set_int_val( GLUI_PANEL_EMBOSSED ); - new_glui->link_this_to_parent_last( &this->gluis ); - return new_glui; -} - - -/********************** GLUI_Master_Object::find_glui_by_window_id() ********/ - -GLUI *GLUI_Master_Object::find_glui_by_window_id( int window_id ) -{ - GLUI_Node *node; - - node = gluis.first_child(); - while( node ) { - if ( ((GLUI*)node)->get_glut_window_id() == window_id ) - return (GLUI*) node; - - node = node->next(); - } - return NULL; -} - - -/******************************************** GLUI_Main::display() **********/ - -void GLUI_Main::display( void ) -{ - int win_w, win_h; - - /* SUBTLE: on freeGLUT, the correct window is always already set. - But older versions of GLUT need this call, or else subwindows - don't update properly when resizing or damage-painting. - */ - glutSetWindow( glut_window_id ); - - /* Set up OpenGL state for widget drawing */ - glDisable( GL_DEPTH_TEST ); - glCullFace( GL_BACK ); - glDisable( GL_CULL_FACE ); - glDisable( GL_LIGHTING ); - set_current_draw_buffer(); - - /**** This function is used as a special place to do 'safe' processing, - e.g., handling window close requests. - That is, we can't close the window directly in the callback, so - we set a flag, post a redisplay message (which eventually calls - this function), then close the window safely in here. ****/ - if ( closing ) { - close_internal(); - return; - } - - /* if ( TEST_AND( this->flags, GLUI_SUBWINDOW )) - check_subwindow_position(); - */ - - win_w = glutGet( GLUT_WINDOW_WIDTH ); - win_h = glutGet( GLUT_WINDOW_HEIGHT ); - - /*** Check here if the window needs resizing ***/ - if ( win_w != main_panel->w OR win_h != main_panel->h ) { - glutReshapeWindow( main_panel->w, main_panel->h ); - return; - } - - /******* Draw GLUI window ******/ - glClearColor( (float) bkgd_color.r / 255.0, - (float) bkgd_color.g / 255.0, - (float) bkgd_color.b / 255.0, - 1.0 ); - glClear( GL_COLOR_BUFFER_BIT ); /* | GL_DEPTH_BUFFER_BIT ); */ - - set_ortho_projection(); - - glMatrixMode( GL_MODELVIEW ); - glLoadIdentity(); - - /*** Rotate image so y increases downward. - In normal OpenGL, y increases upward. ***/ - glTranslatef( (float) win_w/2.0, (float) win_h/2.0, 0.0 ); - glRotatef( 180.0, 0.0, 1.0, 0.0 ); - glRotatef( 180.0, 0.0, 0.0, 1.0 ); - glTranslatef( (float) -win_w/2.0, (float) -win_h/2.0, 0.0 ); - - // Recursively draw the main panel - // main_panel->draw_bkgd_box( 0, 0, win_w, win_h ); - main_panel->draw_recursive( 0, 0 ); - - switch (buffer_mode) { - case buffer_front: /* Make sure drawing gets to screen */ - glFlush(); - break; - case buffer_back: /* Bring back buffer to front */ - glutSwapBuffers(); - break; - } -} - - - - -/*************************************** _glutBitmapWidthString() **********/ - -int _glutBitmapWidthString( void *font, const char *s ) -{ - const char *p = s; - int width = 0; - - while( *p != '\0' ) { - width += glutBitmapWidth( font, *p ); - p++; - } - - return width; -} - -/************************************ _glutBitmapString *********************/ -/* Displays the contents of a string using GLUT's bitmap character function */ -/* Does not handle newlines */ - -void _glutBitmapString( void *font, const char *s ) -{ - const char *p = s; - - while( *p != '\0' ) { - glutBitmapCharacter( font, *p ); - p++; - } -} - - - -/****************************** GLUI_Main::reshape() **************/ - -void GLUI_Main::reshape( int reshape_w, int reshape_h ) -{ - int new_w, new_h; - - pack_controls(); - - new_w = main_panel->w;/* + 1; */ - new_h = main_panel->h;/* + 1; */ - - if ( reshape_w != new_w OR reshape_h != new_h ) { - this->w = new_w; - this->h = new_h; - - glutReshapeWindow( new_w, new_h ); - } - else { - } - - if ( TEST_AND( this->flags, GLUI_SUBWINDOW ) ) { - check_subwindow_position(); - - /***** if ( TEST_AND(this->flags,GLUI_SUBWINDOW_LEFT )) { - } - else if ( TEST_AND(this->flags,GLUI_SUBWINDOW_LEFT )) { - } - else if ( TEST_AND(this->flags,GLUI_SUBWINDOW_LEFT )) { - } - else if ( TEST_AND(this->flags,GLUI_SUBWINDOW_RIGHT )) { - } - ****/ - } - - glViewport( 0, 0, new_w, new_h ); - - /* printf( "%d: %d\n", glutGetWindow(), this->flags ); */ - - glutPostRedisplay(); -} - - -/****************************** GLUI_Main::keyboard() **************/ - -void GLUI_Main::keyboard(unsigned char key, int x, int y) -{ - GLUI_Control *new_control; - - curr_modifiers = glutGetModifiers(); - - /*** If it's a tab or shift tab, we don't pass it on to the controls. - Instead, we use it to cycle through active controls ***/ - if ( key == '\t' AND !mouse_button_down AND - (!active_control || !active_control->wants_tabs())) { - if ( curr_modifiers & GLUT_ACTIVE_SHIFT ) { - new_control = find_prev_control( active_control ); - } - else { - new_control = find_next_control( active_control ); - } - - /* if ( new_control ) - printf( "new_control: %s\n", new_control->name ); - */ - - deactivate_current_control(); - activate_control( new_control, GLUI_ACTIVATE_TAB ); - } - else if ( key == ' ' AND active_control - AND active_control->spacebar_mouse_click ) { - /*** If the user presses the spacebar, and a non-edittext control - is active, we send it a mouse down event followed by a mouse up - event (simulated mouse-click) ***/ - - active_control->mouse_down_handler( 0, 0 ); - active_control->mouse_up_handler( 0, 0, true ); - } else { - /*** Pass the keystroke onto the active control, if any ***/ - if ( active_control != NULL ) - active_control->key_handler( key, curr_modifiers ); - } -} - - -/****************************** GLUI_Main::special() **************/ - -void GLUI_Main::special(int key, int x, int y) -{ - curr_modifiers = glutGetModifiers(); - - /*** Pass the keystroke onto the active control, if any ***/ - if ( active_control != NULL ) - active_control->special_handler( key, glutGetModifiers() ); -} - - - -/****************************** GLUI_Main::mouse() **************/ - -void GLUI_Main::mouse(int button, int state, int x, int y) -{ - int callthrough; - GLUI_Control *control; - - /* printf( "MOUSE: %d %d\n", button, state ); */ - - callthrough = true; - - curr_modifiers = glutGetModifiers(); - - if ( button == GLUT_LEFT ) { - control = find_control( x, y ); - - /*if ( control ) printf( "control: %s\n", control->name.c_str() ); */ - - if ( mouse_button_down AND active_control != NULL AND - state == GLUT_UP ) - { - /** We just released the mouse, which was depressed at some control **/ - - callthrough = active_control-> - mouse_up_handler( x, y, control==active_control); - glutSetCursor( GLUT_CURSOR_LEFT_ARROW ); - - if ( active_control AND - active_control->active_type == GLUI_CONTROL_ACTIVE_MOUSEDOWN AND 0) - { - /*** This is a control that needs to be deactivated when the - mouse button is released ****/ - deactivate_current_control(); - } - } - else { - if ( control ) { - if ( NOT mouse_button_down AND state == GLUT_DOWN ) { - /*** We just pressed the mouse down at some control ***/ - - if ( active_control != control ) { - if ( active_control != NULL ) { - /** There is an active control still - deactivate it ***/ - deactivate_current_control(); - } - } - - if ( control->enabled ) { - activate_control( control, GLUI_ACTIVATE_MOUSE ); - callthrough = control->mouse_down_handler( x, y ); - } - } - } - } - - if ( state == GLUT_DOWN ) - mouse_button_down = true; - else if ( state == GLUT_UP ) - mouse_button_down = false; - } - - /** - NO CALLTHROUGH NEEDED FOR MOUSE EVENTS - if ( callthrough AND glut_mouse_CB ) - glut_mouse_CB( button, state, x, y ); - **/ - - callthrough=callthrough; /* To get rid of compiler warnings */ -} - - -/****************************** GLUI_Main::motion() **************/ - -void GLUI_Main::motion(int x, int y) -{ - int callthrough; - GLUI_Control *control; - - /* printf( "MOTION: %d %d\n", x, y ); */ - - callthrough = true; - - control = find_control(x,y); - - if ( mouse_button_down AND active_control != NULL ) { - callthrough = - active_control->mouse_held_down_handler(x,y,control==active_control); - } - - /** - NO CALLTHROUGH NEEDED FOR MOUSE EVENTS - - if ( callthrough AND glut_motion_CB ) - glut_motion_CB(x,y); - **/ - - callthrough=callthrough; /* To get rid of compiler warnings */ -} - - -/*********************** GLUI_Main::passive_motion() **************/ - -void GLUI_Main::passive_motion(int x, int y) -{ - GLUI_Control *control; - - control = find_control( x, y ); - - /* printf( "%p %p\n", control, mouse_over_control ); */ - - if ( control != mouse_over_control ) { - if ( mouse_over_control ) { - mouse_over_control->mouse_over( false, x, y ); - } - - if ( control ) { - control->mouse_over( true, x, y ); - mouse_over_control = control; - } - } - - /* - if ( curr_cursor != GLUT_CURSOR_INHERIT ) { - curr_cursor = GLUT_CURSOR_INHERIT; - glutSetCursor( GLUT_CURSOR_INHERIT ); - }*/ - -} - - -/****************************** GLUI_Main::entry() **************/ - -void GLUI_Main::entry(int state) -{ - /*if ( NOT active_control OR ( active_control AND ( active_control->type == GLUI_CONTROL_EDITTEXT - OR active_control->type == GLUI_CONTROL_SPINNER) ) )*/ - glutSetCursor( GLUT_CURSOR_LEFT_ARROW ); -} - - -/****************************** GLUI_Main::visibility() **************/ - -void GLUI_Main::visibility(int state) -{ -} - - -/****************************** GLUI_Main::idle() **************/ - -void GLUI_Main::idle(void) -{ - /*** Pass the idle event onto the active control, if any ***/ - - /* printf( "IDLE \t" ); */ - - if ( active_control != NULL ) { - /* First we check if the control actually needs the idle right now. - Otherwise, let's avoid wasting cycles and OpenGL context switching */ - - if ( active_control->needs_idle() ) { - /*** Set the current glut window to the glui window */ - /*** But don't change the window if we're already at that window ***/ - - if ( glut_window_id > 0 AND glutGetWindow() != glut_window_id ) { - glutSetWindow( glut_window_id ); - } - - active_control->idle(); - } - } -} - -int GLUI_Main::needs_idle( void ) -{ - return active_control != NULL && active_control->needs_idle(); -} - - -/******************************************* GLUI_Main::find_control() ******/ - -GLUI_Control *GLUI_Main::find_control( int x, int y ) -{ - GLUI_Control *node, *last_container; - - last_container = NULL; - - node = main_panel; - while( node != NULL ) { - if ( !dynamic_cast(node) AND - PT_IN_BOX( x, y, - node->x_abs, node->x_abs + node->w, - node->y_abs, node->y_abs + node->h ) - ) - { - /*** Point is inside current node ***/ - - if ( node->first_child() == NULL ) { - /*** SPECIAL CASE: for edittext boxes, we make sure click is - in box, and not on name string. This should be generalized - for all controls later... ***/ - if ( dynamic_cast(node) ) { - if ( x < node->x_abs + ((GLUI_EditText*)node)->text_x_offset ) - return (GLUI_Control*) node->parent(); - } - - return node; /* point is inside this node, and node has no children, - so return this node as the selected node */ - } - else { - /*** This is a container class ***/ - last_container = node; - node = (GLUI_Control*) node->first_child(); /* Descend into child */ - } - - } - else { - node = (GLUI_Control*) node->next(); - } - } - - /** No leaf-level nodes found to accept the mouse click, so - return the last container control found which DOES accept the click **/ - - if ( last_container ) { - /* printf( "ctrl: '%s'\n", last_container->name ); */ - - return last_container; - } - else { - return NULL; - } -} - - -/************************************* GLUI_Main::pack_controls() ***********/ - -void GLUI_Main::pack_controls( void ) -{ - main_panel->pack(0,0); - - /**** Now align controls within their bounds ****/ - align_controls( main_panel ); - - /*** If this is a subwindow, expand panel to fit parent window ***/ - if ( TEST_AND( this->flags, GLUI_SUBWINDOW ) ) { - int parent_h, parent_w; - int orig_window; - - orig_window = glutGetWindow(); - glutSetWindow( this->top_level_glut_window_id ); - parent_h = glutGet( GLUT_WINDOW_HEIGHT ); - parent_w = glutGet( GLUT_WINDOW_WIDTH ); - - glutSetWindow( orig_window ); - - /* printf( "%d %d\n", parent_h, parent_w ); */ - - if ( 1 ) { - if ( TEST_AND(this->flags,GLUI_SUBWINDOW_TOP )) { - main_panel->w = MAX( main_panel->w, parent_w ); - } - else if ( TEST_AND(this->flags,GLUI_SUBWINDOW_LEFT )) { - main_panel->h = MAX( main_panel->h, parent_h ); - } - else if ( TEST_AND(this->flags,GLUI_SUBWINDOW_BOTTOM )) { - main_panel->w = MAX( main_panel->w, parent_w ); - } - else if ( TEST_AND(this->flags,GLUI_SUBWINDOW_RIGHT )) { - main_panel->h = MAX( main_panel->h, parent_h ); - } - } - } - - this->w = main_panel->w; - this->h = main_panel->h; -} - - -/************************************ GLUI_Main::align_controls() **********/ - -void GLUI_Main::align_controls( GLUI_Control *control ) -{ - GLUI_Control *child; - - control->align(); - - child = (GLUI_Control*) control->first_child(); - - while( child != NULL ) { - align_controls( child ); - - child = (GLUI_Control*)child->next(); - } -} - - - -/*********************************** GLUI::set_main_gfx_window() ************/ - -void GLUI::set_main_gfx_window( int window_id ) -{ - main_gfx_window_id = window_id; -} - - -/********************************* GLUI_Main::post_update_main_gfx() ********/ - -void GLUI_Main::post_update_main_gfx( void ) -{ - int old_window; - - if ( main_gfx_window_id > 0 ) { - old_window = glutGetWindow(); - glutSetWindow( main_gfx_window_id ); - glutPostRedisplay(); - if( old_window > 0 ) - glutSetWindow( old_window ); - } -} - -/********************************* GLUI_Main::should_redraw_now() ********/ -/** Return true if this control should redraw itself immediately (front buffer); - Or queue up a redraw and return false if it shouldn't (back buffer). - - Called from GLUI_Control::redraw. -*/ -bool GLUI_Main::should_redraw_now(GLUI_Control *ctl) -{ - switch (buffer_mode) { - case buffer_front: return true; /* always draw in front-buffer mode */ - case buffer_back: { - int orig = ctl->set_to_glut_window(); - glutPostRedisplay(); /* redraw soon */ - ctl->restore_window(orig); - return false; /* don't draw now. */ - } - } - return false; /* never executed */ -} - -/********************************* GLUI_Main::set_current_draw_buffer() ********/ - -int GLUI_Main::set_current_draw_buffer( void ) -{ - /* Save old buffer */ - GLint state; - glGetIntegerv( GL_DRAW_BUFFER, &state ); - /* Switch to new buffer */ - switch (buffer_mode) { - case buffer_front: glDrawBuffer(GL_FRONT); break; - case buffer_back: glDrawBuffer(GL_BACK); break; /* might not be needed... */ - } - return (int)state; -} - - -/********************************* GLUI_Main::restore_draw_buffer() **********/ - -void GLUI_Main::restore_draw_buffer( int buffer_state ) -{ - glDrawBuffer( buffer_state ); -} - - -/******************************************** GLUI_Main::GLUI_Main() ********/ - -GLUI_Main::GLUI_Main( void ) -{ - mouse_button_down = false; - w = 0; - h = 0; - active_control = NULL; - mouse_over_control = NULL; - main_gfx_window_id = -1; - glut_window_id = -1; - curr_modifiers = 0; - closing = false; - parent_window = -1; - glui_id = GLUI_Master.glui_id_counter; - GLUI_Master.glui_id_counter++; - - font = GLUT_BITMAP_HELVETICA_12; - curr_cursor = GLUT_CURSOR_LEFT_ARROW; - - int r=200, g=200, b=200; - bkgd_color.set( r,g,b ); - bkgd_color_f[0] = r / 255.0; - bkgd_color_f[1] = g / 255.0; - bkgd_color_f[2] = b / 255.0; - - /*** Create the main panel ***/ - main_panel = new GLUI_Panel; - main_panel->set_int_val( GLUI_PANEL_NONE ); - main_panel->glui = (GLUI*) this; - main_panel->name = "\0"; -} - -/************************************ GLUI_Main::draw_raised_box() **********/ - -void GLUI_Main::draw_raised_box( int x, int y, int w, int h ) -{ - w = w+x; - h = h+y; - - glColor3ub( bkgd_color.r, bkgd_color.g, bkgd_color.b ); - glBegin( GL_LINE_LOOP ); - glVertex2i( x+1, y+1 ); glVertex2i( w-1, y+1 ); - glVertex2i( w-1, h-1 ); glVertex2i( x+1, h-1 ); - glEnd(); - - glColor3d( 1.0, 1.0, 1.0 ); - glBegin( GL_LINE_STRIP ); - glVertex2i( x, h ); glVertex2i( x, y ); glVertex2i( w, y ); - glEnd(); - - glColor3d( 0.0, 0.0, 0.0 ); - glBegin( GL_LINE_STRIP ); - glVertex2i( w, y ); glVertex2i( w, h ); glVertex2i( x, h ); - glEnd(); - - glColor3d( .5, .5, .5 ); - glBegin( GL_LINE_STRIP ); - glVertex2i( w-1, y+1 ); glVertex2i( w-1, h-1 ); glVertex2i( x+1, h-1 ); - glEnd(); -} - - -/************************************ GLUI_Main::draw_lowered_box() **********/ -/* Not quite perfect... **/ - -void GLUI_Main::draw_lowered_box( int x, int y, int w, int h ) -{ - w = w+x; - h = h+y; - - glColor3ub( bkgd_color.r, bkgd_color.g, bkgd_color.b ); - glBegin( GL_LINE_LOOP ); - glVertex2i( x+1, y+1 ); glVertex2i( w-1, y+1 ); - glVertex2i( w-1, h-1 ); glVertex2i( x+1, h-1 ); - glEnd(); - - glColor3d( 0.0, 0.0, 0.0 ); - glBegin( GL_LINE_STRIP ); - glVertex2i( x, h ); glVertex2i( x, y ); glVertex2i( w, y ); - glEnd(); - - glColor3d( 1.0, 1.0, 1.0 ); - glBegin( GL_LINE_STRIP ); - glVertex2i( w, y ); glVertex2i( w, h ); glVertex2i( x, h ); - glEnd(); - - glColor3d( .5, .5, .5 ); - glBegin( GL_LINE_STRIP ); - glVertex2i( w-1, y+1 ); glVertex2i( w-1, h-1 ); glVertex2i( x+1, h-1 ); - glEnd(); -} - - -/************************************* GLUI_Main::activate_control() *********/ - -void GLUI_Main::activate_control( GLUI_Control *control, int how ) -{ - /** Are we not activating a control in the same window as the - previous active control? */ - if ( GLUI_Master.active_control_glui AND - this != (GLUI_Main*) GLUI_Master.active_control_glui ) { - GLUI_Master.active_control_glui->deactivate_current_control(); - } - - /******* Now activate it *****/ - if ( control != NULL AND control->can_activate AND control->enabled ) { - active_control = control; - - control->activate(how); - - /*if ( NOT active_control->is_container OR */ - /* active_control->type == GLUI_CONTROL_ROLLOUT) { */ - active_control->redraw(); - /*} */ - } - else { - active_control = NULL; - } - - /* printf( "activate: %d\n", glutGetWindow() ); */ - GLUI_Master.active_control = active_control; - GLUI_Master.active_control_glui = (GLUI*) this; -} - - -/************************* GLUI_Main::deactivate_current_control() **********/ - -void GLUI_Main::deactivate_current_control( void ) -{ - int orig; - - if ( active_control != NULL ) { - orig = active_control->set_to_glut_window(); - - active_control->deactivate(); - - /** If this isn't a container control, then redraw it in its - deactivated state. Container controls, such as panels, look - the same activated or not **/ - - /*if ( NOT active_control->is_container OR */ - /* active_control->type == GLUI_CONTROL_ROLLOUT ) { */ - active_control->redraw(); - /*} */ - - active_control->restore_window( orig ); - - active_control = NULL; - } - - /* printf( "deactivate: %d\n", glutGetWindow() ); */ - GLUI_Master.active_control = NULL; - GLUI_Master.active_control_glui = NULL; -} - - -/****************************** GLUI_Main::find_next_control() **************/ - -GLUI_Control *GLUI_Main::find_next_control_( GLUI_Control *control ) -{ - /*** THIS IS NOT find_next_control()! This is an unused older - version (look at the underscore at the end) ***/ - - if ( control == NULL ) - return find_next_control_rec( main_panel ); - else - return find_next_control_rec( control ); -} - -/****************************** GLUI_Main::find_next_control() **************/ - -GLUI_Control *GLUI_Main::find_next_control_rec( GLUI_Control *control ) -{ - GLUI_Control *child = NULL, *rec_control, *sibling; - - /*** Recursively investigate children ***/ - child = (GLUI_Control*) control->first_child(); - if ( child ) { - /*** If we can activate the first child, then do so ***/ - if ( child->can_activate AND child->enabled ) - return child; - else /*** Recurse into first child ***/ - rec_control = find_next_control_rec( child ); - - if ( rec_control ) - return rec_control; - } - - /*** At this point, either we don't have children, or the child cannot - be activated. So let's try the next sibling ***/ - - sibling = (GLUI_Control*) control->next(); - if ( sibling ) { - if ( sibling->can_activate AND sibling->enabled ) - return sibling; - else /*** Recurse into sibling ***/ - rec_control = find_next_control_rec( sibling ); - - if ( rec_control ) - return rec_control; - } - - return NULL; -} - - -/****************************** GLUI_Main::find_next_control() **************/ - -GLUI_Control *GLUI_Main::find_next_control( GLUI_Control *control ) -{ - GLUI_Control *tmp_control = NULL; - int back_up; - - if ( control == NULL ) - control = main_panel; - - while( control != NULL ) { - /** see if this control has a child **/ - tmp_control = (GLUI_Control*) control->first_child(); - - if ( tmp_control != NULL ) { - if ( tmp_control->can_activate AND tmp_control->enabled ) - return tmp_control; - - control = tmp_control; /* Descend into child */ - continue; - } - - /*** At this point, control has no children ***/ - - /** see if this control has a next sibling **/ - tmp_control = (GLUI_Control*) control->next(); - - if ( tmp_control != NULL ) { - if ( tmp_control->can_activate AND tmp_control->enabled ) - return tmp_control; - - control = tmp_control; - continue; - } - - /** back up until we find a sibling of an ancestor **/ - back_up = true; - while ( control->parent() AND back_up ) { - control = (GLUI_Control*) control->parent(); - - if ( control->next() ) { - control = (GLUI_Control*) control->next(); - if ( control->can_activate AND control->enabled ) - return control; - else - back_up = false; - - /*** if ( control->is_container ) { - tmp_control = control; - control = NULL; - break; - } - else { - back_up = false; - } - ***/ - } - } - - /** Check if we've cycled back to the top... if so, return NULL **/ - if ( control == main_panel ) { - return NULL; - } - } - /* - if ( tmp_control != NULL AND tmp_control->can_activate AND - tmp_control->enabled ) { - return tmp_control; - }*/ - - return NULL; -} - - -/****************************** GLUI_Main::find_prev_control() **************/ - -GLUI_Control *GLUI_Main::find_prev_control( GLUI_Control *control ) -{ - GLUI_Control *tmp_control, *next_control; - - if ( control == NULL ) { /* here we find the last valid control */ - next_control = main_panel; - - do { - tmp_control = next_control; - next_control = find_next_control( tmp_control ); - } while( next_control != NULL ); - - return tmp_control; - } - else { /* here we find the actual previous control */ - next_control = main_panel; - - do { - tmp_control = next_control; - next_control = find_next_control( tmp_control ); - } while( next_control != NULL AND next_control != control ); - - if ( next_control == NULL OR tmp_control == main_panel ) - return NULL; - else - return tmp_control; - } -} - -/************************* GLUI_Master_Object::set_glutIdleFunc() ***********/ - -void GLUI_Master_Object::set_glutIdleFunc(void (*f)(void)) -{ - glut_idle_CB = f; - GLUI_Master.glui_setIdleFuncIfNecessary(); -} - - -/**************************************** GLUI::disable() ********************/ - -void GLUI::disable( void ) -{ - deactivate_current_control(); - main_panel->disable(); -} - - -/******************************************** GLUI::sync_live() **************/ - -void GLUI::sync_live( void ) -{ - main_panel->sync_live(true, true); -} - - -/********************************* GLUI_Master_Object::sync_live_all() *****/ - -void GLUI_Master_Object::sync_live_all( void ) -{ - GLUI *glui; - - glui = (GLUI*) GLUI_Master.gluis.first_child(); - while( glui ) { - - glui->sync_live(); /** sync it **/ - - glui = (GLUI*) glui->next(); - } -} - - -/************************************* GLUI_Master_Object::close() **********/ - -void GLUI_Master_Object::close_all( void ) -{ - GLUI *glui; - - glui = (GLUI*) GLUI_Master.gluis.first_child(); - while( glui ) { - - glui->close(); /** Set flag to close **/ - - glui = (GLUI*) glui->next(); - } -} - - -/************************************* GLUI_Main::close_internal() **********/ - -void GLUI_Main::close_internal( void ) -{ - glutDestroyWindow(glutGetWindow()); /** Close this window **/ - - this->unlink(); - - if ( GLUI_Master.active_control_glui == this ) { - GLUI_Master.active_control = NULL; - GLUI_Master.active_control_glui = NULL; - } - - if ( parent_window != -1 ) { - glutSetWindow( parent_window ); - int win_w = glutGet( GLUT_WINDOW_WIDTH ); - int win_h = glutGet( GLUT_WINDOW_HEIGHT ); - glutReshapeWindow(win_w+1, win_h); - glutReshapeWindow(win_w-1, win_h); - } - - delete this->main_panel; - - delete this; -} - - -/************************************************** GLUI::close() **********/ - -void GLUI::close( void ) -{ - int old_glut_window; - - closing = true; - - old_glut_window = glutGetWindow(); - glutSetWindow( get_glut_window_id() ); - glutPostRedisplay(); - - glutSetWindow( old_glut_window ); -} - - -/************************** GLUI_Main::check_subwindow_position() **********/ - -void GLUI_Main::check_subwindow_position( void ) -{ - /*** Reposition this window if subwindow ***/ - if ( TEST_AND( this->flags, GLUI_SUBWINDOW ) ) { - - int parent_w, parent_h, new_x, new_y; - int old_window = glutGetWindow(); - - glutSetWindow( glut_window_id ); - - glutSetWindow( glutGet( GLUT_WINDOW_PARENT )); - parent_w = glutGet( GLUT_WINDOW_WIDTH ); - parent_h = glutGet( GLUT_WINDOW_HEIGHT ); - - glutSetWindow( glut_window_id ); - - if ( TEST_AND(this->flags,GLUI_SUBWINDOW_RIGHT )) { - new_x = parent_w - this->w; - new_y = 0; - } - else if ( TEST_AND(this->flags,GLUI_SUBWINDOW_LEFT )) { - new_x = 0; - new_y = 0; - } - else if ( TEST_AND(this->flags,GLUI_SUBWINDOW_BOTTOM )) { - new_x = 0; - new_y = parent_h - this->h; - } - else { /*** GLUI_SUBWINDOW_TOP ***/ - new_x = 0; - new_y = 0; - } - - /** Now make adjustments based on presence of other subwindows **/ - GLUI *curr_glui; - curr_glui = (GLUI*) GLUI_Master.gluis.first_child(); - while( curr_glui ) { - if ( TEST_AND( curr_glui->flags, GLUI_SUBWINDOW) AND - curr_glui->parent_window == this->parent_window ) { - - if ( TEST_AND( curr_glui->flags,GLUI_SUBWINDOW_LEFT ) ) { - } - else if ( TEST_AND( curr_glui->flags,GLUI_SUBWINDOW_BOTTOM ) ) { - } - else if ( TEST_AND( curr_glui->flags,GLUI_SUBWINDOW_RIGHT ) ) { - } - else if ( TEST_AND( curr_glui->flags,GLUI_SUBWINDOW_TOP ) AND - ( TEST_AND( this->flags,GLUI_SUBWINDOW_LEFT ) OR - TEST_AND( this->flags,GLUI_SUBWINDOW_RIGHT ) ) ) { - /** If we are a RIGHT or LEFT subwindow, and there exists some - TOP subwindow, bump our position down **/ - - new_y += curr_glui->h; - } - - /** CHeck multiple subwins at same position **/ - /** We check the glui_id's: only the glui with the higher - ID number (meaning it was created later) gets bumped over **/ - if ( curr_glui != this AND this->glui_id > curr_glui->glui_id ) { - if ( TEST_AND( this->flags,GLUI_SUBWINDOW_LEFT ) AND - TEST_AND( curr_glui->flags,GLUI_SUBWINDOW_LEFT ) ) { - new_x += curr_glui->w; - } - else if ( TEST_AND( this->flags,GLUI_SUBWINDOW_TOP ) AND - TEST_AND( curr_glui->flags,GLUI_SUBWINDOW_TOP ) ) { - new_y += curr_glui->h; - } - else if ( TEST_AND( this->flags,GLUI_SUBWINDOW_BOTTOM ) AND - TEST_AND( curr_glui->flags,GLUI_SUBWINDOW_BOTTOM ) ) { - new_y -= curr_glui->h; - } - else if ( TEST_AND( this->flags,GLUI_SUBWINDOW_RIGHT ) AND - TEST_AND( curr_glui->flags,GLUI_SUBWINDOW_RIGHT ) ) { - new_x -= curr_glui->w; - } - - } - } - - curr_glui = (GLUI*) curr_glui->next(); - } - - - - CLAMP( new_x, 0, new_x ); - CLAMP( new_y, 0, new_y ); - - glutPositionWindow( new_x, new_y ); - /* glutPostRedisplay(); */ - - glutSetWindow( old_window ); - } -} - - -/********************************* GLUI_Master_Object::reshape() **********/ -/* This gets called by the user from a GLUT reshape callback. So we look */ -/* for subwindows that belong to the current window */ - -void GLUI_Master_Object::reshape( void ) -{ - GLUI *glui; - int current_window; - - current_window = glutGetWindow(); - - glui = (GLUI*) GLUI_Master.gluis.first_child(); - while( glui ) { - if ( TEST_AND( glui->flags, GLUI_SUBWINDOW) AND - glui->parent_window == current_window ) { - glutSetWindow( glui->get_glut_window_id()); - glui->check_subwindow_position(); - } - - glui = (GLUI*) glui->next(); - } - - glutSetWindow(current_window); -} - - -/**************************** GLUI_Master_Object::set_glutReshapeFunc() *****/ - -void GLUI_Master_Object::set_glutReshapeFunc(void (*f)(int width, int height)) -{ - glutReshapeFunc( glui_reshape_func ); - add_cb_to_glut_window( glutGetWindow(), GLUI_GLUT_RESHAPE, (void*) f); -} - - -/**************************** GLUI_Master_Object::set_glutKeyboardFunc() ****/ - -void GLUI_Master_Object::set_glutKeyboardFunc(void (*f)(unsigned char key, - int x, int y)) -{ - glutKeyboardFunc( glui_keyboard_func ); - add_cb_to_glut_window( glutGetWindow(), GLUI_GLUT_KEYBOARD, (void*) f); -} - - -/*********************** GLUI_Master_Object::set_glutSpecialFunc() **********/ - -void GLUI_Master_Object::set_glutSpecialFunc(void (*f)(int key, - int x, int y)) -{ - glutSpecialFunc( glui_special_func ); - add_cb_to_glut_window( glutGetWindow(), GLUI_GLUT_SPECIAL, (void*) f); -} - - -/*********************** GLUI_Master_Object::set_glutMouseFunc() **********/ - -void GLUI_Master_Object::set_glutMouseFunc(void (*f)(int button, int state, - int x, int y)) -{ - glutMouseFunc( glui_mouse_func ); - add_cb_to_glut_window( glutGetWindow(), GLUI_GLUT_MOUSE, (void*) f); -} - - -/****************************** glui_parent_window_reshape_func() **********/ -/* This is the reshape callback for a window that contains subwindows */ - -void glui_parent_window_reshape_func( int w, int h ) -{ - int current_window; - GLUI *glui; - int first = true; - - /* printf( "glui_parent_window_reshape_func: %d\n", glutGetWindow() ); */ - - current_window = glutGetWindow(); - - glui = (GLUI*) GLUI_Master.gluis.first_child(); - while( glui ) { - if ( TEST_AND( glui->flags, GLUI_SUBWINDOW) AND - glui->parent_window == current_window ) { - glutSetWindow( glui->get_glut_window_id()); - glui->check_subwindow_position(); - glutSetWindow( current_window ); - - if ( first ) { - if (glui->glut_reshape_CB) glui->glut_reshape_CB( w, h ); - - first = false; - } - } - - glui = (GLUI*) glui->next(); - } -} - - -/****************************** glui_parent_window_keyboard_func() **********/ - -void glui_parent_window_keyboard_func(unsigned char key, int x, int y) -{ - /* printf( "glui_parent_window_keyboard_func: %d\n", glutGetWindow() ); */ - - int current_window; - GLUI *glui; - - current_window = glutGetWindow(); - - if ( GLUI_Master.active_control_glui AND GLUI_Master.active_control ) { - glutSetWindow( GLUI_Master.active_control_glui->get_glut_window_id() ); - - GLUI_Master.active_control_glui->keyboard(key,x,y); - - glutSetWindow( current_window ); - } - else { - glui = (GLUI*) GLUI_Master.gluis.first_child(); - while( glui ) { - if ( TEST_AND( glui->flags, GLUI_SUBWINDOW) AND - glui->parent_window == current_window AND - glui->glut_keyboard_CB ) - { - glui->glut_keyboard_CB( key, x, y ); - break; - } - - glui = (GLUI*) glui->next(); - } - } -} - - -/****************************** glui_parent_window_special_func() **********/ - -void glui_parent_window_special_func(int key, int x, int y) -{ - /*printf( "glui_parent_window_special_func: %d\n", glutGetWindow() ); */ - - int current_window; - GLUI *glui; - - /** If clicking in the main area of a window w/subwindows, - deactivate any current control **/ - if ( GLUI_Master.active_control_glui != NULL ) - GLUI_Master.active_control_glui->deactivate_current_control(); - - /*** Now pass on the mouse event ***/ - - current_window = glutGetWindow(); - - glui = (GLUI*) GLUI_Master.gluis.first_child(); - while( glui ) { - if ( TEST_AND( glui->flags, GLUI_SUBWINDOW) AND - glui->parent_window == current_window ) - { - glutSetWindow( glui->get_glut_window_id()); - if (glui->glut_special_CB) glui->glut_special_CB( key, x, y ); - break; - } - - glui = (GLUI*) glui->next(); - } -} - - -/****************************** glui_parent_window_mouse_func() **********/ - -void glui_parent_window_mouse_func(int button, int state, int x, int y) -{ - int current_window; - GLUI *glui; - - /** If clicking in the main area of a window w/subwindows, - deactivate any current control **/ - if ( GLUI_Master.active_control_glui != NULL ) - GLUI_Master.active_control_glui->deactivate_current_control(); - - - /*** Now pass on the mouse event ***/ - - current_window = glutGetWindow(); - - glui = (GLUI*) GLUI_Master.gluis.first_child(); - while( glui ) { - if ( TEST_AND( glui->flags, GLUI_SUBWINDOW) AND - glui->parent_window == current_window AND - glui->glut_mouse_CB) - { - glutSetWindow( glui->get_glut_window_id()); - glui->glut_mouse_CB( button, state, x, y ); - break; - } - - glui = (GLUI*) glui->next(); - } -} - - -/************************** GLUI_Master_Object::find_glut_window() **********/ - -GLUI_Glut_Window *GLUI_Master_Object::find_glut_window( int window_id ) -{ - GLUI_Glut_Window *window; - - window = (GLUI_Glut_Window*) glut_windows.first_child(); - while( window ) { - if ( window->glut_window_id == window_id ) - return window; - - window = (GLUI_Glut_Window*) window->next(); - } - - /*** Window not found - return NULL ***/ - return NULL; -} - - -/******************** GLUI_Master_Object::add_cb_to_glut_window() **********/ - -void GLUI_Master_Object::add_cb_to_glut_window(int window_id, - int cb_type,void *cb) -{ - GLUI_Glut_Window *window; - - window = find_glut_window( window_id ); - if ( NOT window ) { - /*** Allocate new window structure ***/ - - window = new GLUI_Glut_Window; - window->glut_window_id = window_id; - window->link_this_to_parent_last( (GLUI_Node*) &this->glut_windows ); - } - - switch( cb_type ) { - case GLUI_GLUT_RESHAPE: - window->glut_reshape_CB = (void(*)(int,int)) cb; - break; - case GLUI_GLUT_DISPLAY: - window->glut_display_CB = (void(*)()) cb; - break; - case GLUI_GLUT_KEYBOARD: - window->glut_keyboard_CB = (void(*)(unsigned char,int,int)) cb; - break; - case GLUI_GLUT_SPECIAL: - window->glut_special_CB = (void(*)(int,int,int)) cb; - break; - case GLUI_GLUT_MOUSE: - window->glut_mouse_CB = (void(*)(int,int,int,int)) cb; - break; - case GLUI_GLUT_MOTION: - window->glut_motion_CB = (void(*)(int,int)) cb; - break; - case GLUI_GLUT_PASSIVE_MOTION: - window->glut_passive_motion_CB = (void(*)(int,int)) cb; - break; - case GLUI_GLUT_ENTRY: - window->glut_entry_CB = (void(*)(int)) cb; - break; - case GLUI_GLUT_VISIBILITY: - window->glut_visibility_CB= (void(*)(int)) cb; - break; - } -} - - -/************* GLUI_Master_Object::set_left_button_glut_menu_control() *****/ - -void GLUI_Master_Object::set_left_button_glut_menu_control( - GLUI_Control *control ) -{ - curr_left_button_glut_menu = control; -} - - -/******************************* GLUI_Main::set_ortho_projection() **********/ - -void GLUI_Main::set_ortho_projection( void ) -{ - int win_h, win_w; - - win_w = glutGet( GLUT_WINDOW_WIDTH ); - win_h = glutGet( GLUT_WINDOW_HEIGHT ); - - glMatrixMode( GL_PROJECTION ); - glLoadIdentity(); - /* gluOrtho2D( 0.0, (float) win_w, 0.0, (float) win_h ); */ - glOrtho( 0.0, (float)win_w, 0.0, (float) win_h, -1000.0, 1000.0 ); - - glMatrixMode( GL_MODELVIEW ); - - return; /****-----------------------------------------------***/ - - glMatrixMode( GL_MODELVIEW ); - glLoadIdentity(); - - /*** Rotate image so y increases upwards, contrary to OpenGL axes ***/ - glTranslatef( (float) win_w/2.0, (float) win_h/2.0, 0.0 ); - glRotatef( 180.0, 0.0, 1.0, 0.0 ); - glRotatef( 180.0, 0.0, 0.0, 1.0 ); - glTranslatef( (float) -win_w/2.0, (float) -win_h/2.0, 0.0 ); -} - - -/******************************* GLUI_Main::set_viewport() **********/ - -void GLUI_Main::set_viewport( void ) -{ - glViewport( 0, 0, main_panel->w, main_panel->h ); -} - - -/****************************** GLUI_Main::refresh() ****************/ - -void GLUI_Main::refresh( void ) -{ - int orig; - - /****** GLUI_Glut_Window *glut_window; - int current_window; - current_window = glutGetWindow(); - glut_window = GLUI_Master.find_glut_window( current_window ); - if ( glut_window ) { - glut_window->glut_reshape_CB(w,h); - ******/ - - orig = glutGetWindow(); - - pack_controls(); - - if ( glut_window_id > 0 ) - glutSetWindow( glut_window_id ); - - - if ( TEST_AND( this->flags, GLUI_SUBWINDOW ) ) { - /*** GLUI subwindow ***/ - - check_subwindow_position(); - } - else { - /*** Standalone GLUI window ***/ - - glutReshapeWindow( this->h, this->w ); - - } - - glutPostRedisplay(); - glutSetWindow( orig); -} - - - -/***************** GLUI_Master_Object::get_main_gfx_viewport() ***********/ - -void GLUI_Master_Object::get_viewport_area( int *x, int *y, - int *w, int *h ) -{ - GLUI *curr_glui; - int curr_x, curr_y, curr_w, curr_h; - int curr_window; - - curr_window = glutGetWindow(); - curr_x = 0; - curr_y = 0; - curr_w = glutGet( GLUT_WINDOW_WIDTH ); - curr_h = glutGet( GLUT_WINDOW_HEIGHT ); - - curr_glui = (GLUI*) gluis.first_child(); - while( curr_glui ) { - if ( TEST_AND( curr_glui->flags, GLUI_SUBWINDOW) AND - curr_glui->parent_window == curr_window ) { - - /* printf( "%s -> %d %d %d\n", curr_glui->window_name.c_str(), curr_glui->flags, - curr_glui->w, curr_glui->h );*/ - - if ( TEST_AND( curr_glui->flags,GLUI_SUBWINDOW_LEFT ) ) { - curr_x += curr_glui->w; - curr_w -= curr_glui->w; - } - else if ( TEST_AND( curr_glui->flags,GLUI_SUBWINDOW_BOTTOM ) ) { - curr_y += curr_glui->h; - curr_h -= curr_glui->h; - } - else if ( TEST_AND( curr_glui->flags,GLUI_SUBWINDOW_RIGHT ) ) { - curr_w -= curr_glui->w; - } - else if ( TEST_AND( curr_glui->flags,GLUI_SUBWINDOW_TOP ) ) { - curr_h -= curr_glui->h; - } - } - - curr_glui = (GLUI*) curr_glui->next(); - } - - curr_x = MAX( 0, curr_x ); - curr_y = MAX( 0, curr_y ); - curr_w = MAX( 0, curr_w ); - curr_h = MAX( 0, curr_h ); - - *x = curr_x; - *y = curr_y; - *w = curr_w; - *h = curr_h; -} - - -/*****************GLUI_Master_Object::auto_set_main_gfx_viewport() **********/ - -void GLUI_Master_Object::auto_set_viewport( void ) -{ - int x, y, w, h; - - get_viewport_area( &x, &y, &w, &h ); - glViewport( MAX(x,0), MAX(y,0), MAX(w,0), MAX(h,0) ); -} - - - -/***************************************** GLUI::show() **********************/ - -void GLUI::show( void ) -{ - int orig_window; - - orig_window = main_panel->set_to_glut_window(); - - glutShowWindow(); - - main_panel->restore_window(orig_window); -} - - - -/***************************************** GLUI::hide() **********************/ - -void GLUI::hide( void ) -{ - int orig_window; - - this->deactivate_current_control(); - - orig_window = main_panel->set_to_glut_window(); - - glutHideWindow(); - - main_panel->restore_window(orig_window); -} - - -/**************** GLUI_DrawingSentinal **************/ -GLUI_DrawingSentinal::GLUI_DrawingSentinal(GLUI_Control *c_) - :c(c_) -{ - orig_win = c->set_to_glut_window(); - orig_buf = c->glui->set_current_draw_buffer(); -} -GLUI_DrawingSentinal::~GLUI_DrawingSentinal() { - c->glui->restore_draw_buffer(orig_buf); - c->restore_window(orig_win); -} - - -void GLUI_Master_Object::glui_setIdleFuncIfNecessary( void ) -{ - GLUI *glui; - - glui = (GLUI*) GLUI_Master.gluis.first_child(); - int necessary; - if (this->glut_idle_CB) - necessary = true; - else { - necessary = false; - while( glui ) { - if( glui->needs_idle() ) { - necessary = true; - break; - } - glui = (GLUI*) glui->next(); - } - } - if( necessary ) - glutIdleFunc( glui_idle_func ); - else - glutIdleFunc( NULL ); -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.h b/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.h deleted file mode 100644 index f1daea8..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui.h +++ /dev/null @@ -1,2568 +0,0 @@ -/**************************************************************************** - - GLUI User Interface Toolkit (LGPL) - ---------------------------------- - - glui.h - Main (and only) external header for - GLUI User Interface Toolkit - - -------------------------------------------------- - - Copyright (c) 1998 Paul Rademacher - - WWW: http://sourceforge.net/projects/glui/ - Forums: http://sourceforge.net/forum/?group_id=92496 - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -*****************************************************************************/ - -#ifndef GLUI_GLUI_H -#define GLUI_GLUI_H - -#ifdef __APPLE__ - #include -#else - #include "freeglut/freeglut.h" -#endif - -#include -#include -#include -#include -#include - -#define GLUI_VERSION 2.3f /********** Current version **********/ - -#if defined(_WIN32) -#if !defined(GLUI_NO_LIB_PRAGMA) -//#pragma comment(lib, "glui32.lib") // Link automatically with GLUI library -#endif -#endif - -/********** Do some basic defines *******/ - -#ifndef Byte -#define Byte unsigned char -#endif - -#ifndef _RGBC_ -class RGBc { -public: - Byte r, g, b; - - void set(Byte r,Byte g,Byte b) {this->r=r;this->g=g;this->b=b;} - - RGBc( void ) {} - RGBc( Byte r, Byte g, Byte b ) { set( r, g, b ); } -}; -#define _RGBC_ -#endif - -/********** List of GLUT callbacks ********/ - -enum GLUI_Glut_CB_Types -{ - GLUI_GLUT_RESHAPE, - GLUI_GLUT_KEYBOARD, - GLUI_GLUT_DISPLAY, - GLUI_GLUT_MOUSE, - GLUI_GLUT_MOTION, - GLUI_GLUT_SPECIAL, - GLUI_GLUT_PASSIVE_MOTION, - GLUI_GLUT_ENTRY, - GLUI_GLUT_VISIBILITY -}; - -/********* Constants for window placement **********/ - -#define GLUI_XOFF 6 -#define GLUI_YOFF 6 -#define GLUI_ITEMSPACING 3 -#define GLUI_CHECKBOX_SIZE 13 -#define GLUI_RADIOBUTTON_SIZE 13 -#define GLUI_BUTTON_SIZE 20 -#define GLUI_STATICTEXT_SIZE 13 -#define GLUI_SEPARATOR_HEIGHT 8 -#define GLUI_DEFAULT_CONTROL_WIDTH 100 -#define GLUI_DEFAULT_CONTROL_HEIGHT 13 -#define GLUI_EDITTEXT_BOXINNERMARGINX 3 -#define GLUI_EDITTEXT_HEIGHT 20 -#define GLUI_EDITTEXT_WIDTH 130 -#define GLUI_EDITTEXT_MIN_INT_WIDTH 35 -#define GLUI_EDITTEXT_MIN_TEXT_WIDTH 50 -#define GLUI_PANEL_NAME_DROP 8 -#define GLUI_PANEL_EMBOSS_TOP 4 -/* #define GLUI_ROTATION_WIDTH 60 */ -/* #define GLUI_ROTATION_HEIGHT 78 */ -#define GLUI_ROTATION_WIDTH 50 -#define GLUI_ROTATION_HEIGHT (GLUI_ROTATION_WIDTH+18) -#define GLUI_MOUSE_INTERACTION_WIDTH 50 -#define GLUI_MOUSE_INTERACTION_HEIGHT (GLUI_MOUSE_INTERACTION_WIDTH)+18 - -/** Different panel control types **/ -#define GLUI_PANEL_NONE 0 -#define GLUI_PANEL_EMBOSSED 1 -#define GLUI_PANEL_RAISED 2 - -/** Max # of els in control's float_array **/ -#define GLUI_DEF_MAX_ARRAY 30 - -/********* The control's 'active' behavior *********/ -#define GLUI_CONTROL_ACTIVE_MOUSEDOWN 1 -#define GLUI_CONTROL_ACTIVE_PERMANENT 2 - -/********* Control alignment types **********/ -#define GLUI_ALIGN_CENTER 1 -#define GLUI_ALIGN_RIGHT 2 -#define GLUI_ALIGN_LEFT 3 - -/********** Limit types - how to limit spinner values *********/ -#define GLUI_LIMIT_NONE 0 -#define GLUI_LIMIT_CLAMP 1 -#define GLUI_LIMIT_WRAP 2 - -/********** Translation control types ********************/ -#define GLUI_TRANSLATION_XY 0 -#define GLUI_TRANSLATION_Z 1 -#define GLUI_TRANSLATION_X 2 -#define GLUI_TRANSLATION_Y 3 - -#define GLUI_TRANSLATION_LOCK_NONE 0 -#define GLUI_TRANSLATION_LOCK_X 1 -#define GLUI_TRANSLATION_LOCK_Y 2 - -/********** How was a control activated? *****************/ -#define GLUI_ACTIVATE_MOUSE 1 -#define GLUI_ACTIVATE_TAB 2 - -/********** What type of live variable does a control have? **********/ -#define GLUI_LIVE_NONE 0 -#define GLUI_LIVE_INT 1 -#define GLUI_LIVE_FLOAT 2 -#define GLUI_LIVE_TEXT 3 -#define GLUI_LIVE_STRING 6 -#define GLUI_LIVE_DOUBLE 4 -#define GLUI_LIVE_FLOAT_ARRAY 5 - -/************* Textbox and List Defaults - JVK ******************/ -#define GLUI_TEXTBOX_HEIGHT 130 -#define GLUI_TEXTBOX_WIDTH 130 -#define GLUI_LIST_HEIGHT 130 -#define GLUI_LIST_WIDTH 130 -#define GLUI_DOUBLE_CLICK 1 -#define GLUI_SINGLE_CLICK 0 -#define GLUI_TAB_WIDTH 50 /* In pixels */ -#define GLUI_TEXTBOX_BOXINNERMARGINX 3 -#define GLUI_TEXTBOX_MIN_TEXT_WIDTH 50 -#define GLUI_LIST_BOXINNERMARGINX 3 -#define GLUI_LIST_MIN_TEXT_WIDTH 50 - -/*********************** TreePanel Defaults - JVK *****************************/ -#define GLUI_TREEPANEL_DEFAULTS 0 // bar, standard bar color -#define GLUI_TREEPANEL_ALTERNATE_COLOR 1 // Alternate between 8 different bar colors -#define GLUI_TREEPANEL_ENABLE_BAR 2 // enable the bar -#define GLUI_TREEPANEL_DISABLE_BAR 4 // disable the bar -#define GLUI_TREEPANEL_DISABLE_DEEPEST_BAR 8 // disable only the deepest bar -#define GLUI_TREEPANEL_CONNECT_CHILDREN_ONLY 16 // disable only the bar of the last child of each root -#define GLUI_TREEPANEL_DISPLAY_HIERARCHY 32 // display some sort of hierachy in the tree node title -#define GLUI_TREEPANEL_HIERARCHY_NUMERICDOT 64 // display hierarchy in 1.3.2 (etc... ) format -#define GLUI_TREEPANEL_HIERARCHY_LEVEL_ONLY 128 // display hierarchy as only the level depth - -/******************* GLUI Scrollbar Defaults - JVK ***************************/ -#define GLUI_SCROLL_ARROW_WIDTH 16 -#define GLUI_SCROLL_ARROW_HEIGHT 16 -#define GLUI_SCROLL_BOX_MIN_HEIGHT 5 -#define GLUI_SCROLL_BOX_STD_HEIGHT 16 -#define GLUI_SCROLL_STATE_NONE 0 -#define GLUI_SCROLL_STATE_UP 1 -#define GLUI_SCROLL_STATE_DOWN 2 -#define GLUI_SCROLL_STATE_BOTH 3 -#define GLUI_SCROLL_STATE_SCROLL 4 -#define GLUI_SCROLL_DEFAULT_GROWTH_EXP 1.05f -#define GLUI_SCROLL_VERTICAL 0 -#define GLUI_SCROLL_HORIZONTAL 1 - - -/** Size of the character width hash table for faster lookups. - Make sure to keep this a power of two to avoid the slow divide. - This is also a speed/memory tradeoff; 128 is enough for low ASCII. -*/ -#define CHAR_WIDTH_HASH_SIZE 128 - -/********** Translation codes **********/ - -enum TranslationCodes -{ - GLUI_TRANSLATION_MOUSE_NONE = 0, - GLUI_TRANSLATION_MOUSE_UP, - GLUI_TRANSLATION_MOUSE_DOWN, - GLUI_TRANSLATION_MOUSE_LEFT, - GLUI_TRANSLATION_MOUSE_RIGHT, - GLUI_TRANSLATION_MOUSE_UP_LEFT, - GLUI_TRANSLATION_MOUSE_UP_RIGHT, - GLUI_TRANSLATION_MOUSE_DOWN_LEFT, - GLUI_TRANSLATION_MOUSE_DOWN_RIGHT -}; - -/************ A string type for us to use **********/ - -typedef std::string GLUI_String; -GLUI_String& glui_format_str(GLUI_String &str, const char* fmt, ...); - -/********* Pre-declare classes as needed *********/ - -class GLUI; -class GLUI_Control; -class GLUI_Listbox; -class GLUI_StaticText; -class GLUI_EditText; -class GLUI_Panel; -class GLUI_Spinner; -class GLUI_RadioButton; -class GLUI_RadioGroup; -class GLUI_Glut_Window; -class GLUI_TreePanel; -class GLUI_Scrollbar; -class GLUI_List; - -class Arcball; - -/*** Flags for GLUI class constructor ***/ -#define GLUI_SUBWINDOW ((long)(1<<1)) -#define GLUI_SUBWINDOW_TOP ((long)(1<<2)) -#define GLUI_SUBWINDOW_BOTTOM ((long)(1<<3)) -#define GLUI_SUBWINDOW_LEFT ((long)(1<<4)) -#define GLUI_SUBWINDOW_RIGHT ((long)(1<<5)) - -/*** Codes for different type of edittext boxes and spinners ***/ -#define GLUI_EDITTEXT_TEXT 1 -#define GLUI_EDITTEXT_INT 2 -#define GLUI_EDITTEXT_FLOAT 3 -#define GLUI_SPINNER_INT GLUI_EDITTEXT_INT -#define GLUI_SPINNER_FLOAT GLUI_EDITTEXT_FLOAT -#define GLUI_SCROLL_INT GLUI_EDITTEXT_INT -#define GLUI_SCROLL_FLOAT GLUI_EDITTEXT_FLOAT -// This is only for deprecated interface -#define GLUI_EDITTEXT_STRING 4 - -/*** Definition of callbacks ***/ -typedef void (*GLUI_Update_CB) (int id); -typedef void (*GLUI_Control_CB)(GLUI_Control *); -typedef void (*Int1_CB) (int); -typedef void (*Int2_CB) (int, int); -typedef void (*Int3_CB) (int, int, int); -typedef void (*Int4_CB) (int, int, int, int); - -/************************************************************/ -/** - Callback Adapter Class - Allows us to support different types of callbacks; - like a GLUI_Update_CB function pointer--which takes an int; - and a GLUI_Control_CB function pointer--which takes a GUI_Control object. -*/ -class GLUI_CB -{ -public: - GLUI_CB() : idCB(0),objCB(0) {} - GLUI_CB(GLUI_Update_CB cb) : idCB(cb),objCB(0) {} - GLUI_CB(GLUI_Control_CB cb) : idCB(0),objCB(cb) {} - // (Compiler generated copy constructor) - - /** This control just activated. Fire our callback.*/ - void operator()(GLUI_Control *ctrl) const; - bool operator!() const { return !idCB && !objCB; } - operator bool() const { return !(!(*this)); } -private: - GLUI_Update_CB idCB; - GLUI_Control_CB objCB; -}; - -/************************************************************/ -/* */ -/* Base class, for hierarchical relationships */ -/* */ -/************************************************************/ - -class GLUI_Control; - -/** - GLUI_Node is a node in a sort of tree of GLUI controls. - Each GLUI_Node has a list of siblings (in a circular list) - and a linked list of children. - - Everything onscreen is a GLUI_Node--windows, buttons, etc. - The nodes are traversed for event processing, sizing, redraws, etc. -*/ -class GLUI_Node -{ - friend class GLUI_Tree; /* JVK */ - friend class GLUI_Rollout; - friend class GLUI_Main; - -public: - GLUI_Node(); - virtual ~GLUI_Node() {} - - GLUI_Node *first_sibling(); - GLUI_Node *last_sibling(); - GLUI_Node *prev(); - GLUI_Node *next(); - - GLUI_Node *first_child() { return child_head; } - GLUI_Node *last_child() { return child_tail; } - GLUI_Node *parent() { return parent_node; } - - /** Link in a new child control */ - virtual int add_control( GLUI_Control *control ); - - void link_this_to_parent_last (GLUI_Node *parent ); - void link_this_to_parent_first(GLUI_Node *parent ); - void link_this_to_sibling_next(GLUI_Node *sibling ); - void link_this_to_sibling_prev(GLUI_Node *sibling ); - void unlink(); - - void dump( FILE *out, const char *name ); - -protected: - static void add_child_to_control(GLUI_Node *parent,GLUI_Control *child); - GLUI_Node *parent_node; - GLUI_Node *child_head; - GLUI_Node *child_tail; - GLUI_Node *next_sibling; - GLUI_Node *prev_sibling; -}; - - -/************************************************************/ -/* */ -/* Standard Bitmap stuff */ -/* */ -/************************************************************/ - -enum GLUI_StdBitmaps_Codes -{ - GLUI_STDBITMAP_CHECKBOX_OFF = 0, - GLUI_STDBITMAP_CHECKBOX_ON, - GLUI_STDBITMAP_RADIOBUTTON_OFF, - GLUI_STDBITMAP_RADIOBUTTON_ON, - GLUI_STDBITMAP_UP_ARROW, - GLUI_STDBITMAP_DOWN_ARROW, - GLUI_STDBITMAP_LEFT_ARROW, - GLUI_STDBITMAP_RIGHT_ARROW, - GLUI_STDBITMAP_SPINNER_UP_OFF, - GLUI_STDBITMAP_SPINNER_UP_ON, - GLUI_STDBITMAP_SPINNER_DOWN_OFF, - GLUI_STDBITMAP_SPINNER_DOWN_ON, - GLUI_STDBITMAP_CHECKBOX_OFF_DIS, /*** Disactivated control bitmaps ***/ - GLUI_STDBITMAP_CHECKBOX_ON_DIS, - GLUI_STDBITMAP_RADIOBUTTON_OFF_DIS, - GLUI_STDBITMAP_RADIOBUTTON_ON_DIS, - GLUI_STDBITMAP_SPINNER_UP_DIS, - GLUI_STDBITMAP_SPINNER_DOWN_DIS, - GLUI_STDBITMAP_LISTBOX_UP, - GLUI_STDBITMAP_LISTBOX_DOWN, - GLUI_STDBITMAP_LISTBOX_UP_DIS, - GLUI_STDBITMAP_NUM_ITEMS -}; - -/************************************************************/ -/* */ -/* Class GLUI_Bitmap */ -/* */ -/************************************************************/ - -/** - GLUI_Bitmap is a simple 2D texture map. It's used - to represent small textures like checkboxes, arrows, etc. - via the GLUI_StdBitmaps class. -*/ -class GLUI_Bitmap -{ - friend class GLUI_StdBitmaps; - -public: - GLUI_Bitmap(); - ~GLUI_Bitmap(); - - /** Create bitmap from greyscale byte image */ - void init_grey(unsigned char *array); - - /** Create bitmap from color int image */ - void init(int *array); - -private: - /** RGB pixel data */ - unsigned char *pixels; - int w, h; -}; - - -/************************************************************/ -/* */ -/* Class GLUI_StdBitmap */ -/* */ -/************************************************************/ - -/** - Keeps an array of GLUI_Bitmap objects to represent all the - images used in the UI: checkboxes, arrows, etc. -*/ -class GLUI_StdBitmaps -{ -public: - GLUI_StdBitmaps(); - ~GLUI_StdBitmaps(); - - /** Return the width (in pixels) of the n'th standard bitmap. */ - int width (int n) const; - /** Return the height (in pixels) of the n'th standard bitmap. */ - int height(int n) const; - - /** Draw the n'th standard bitmap (one of the enums - listed in GLUI_StdBitmaps_Codes) at pixel corner (x,y). - */ - void draw(int n, int x, int y) const; - -private: - GLUI_Bitmap bitmaps[GLUI_STDBITMAP_NUM_ITEMS]; -}; - -/************************************************************/ -/* */ -/* Master GLUI Class */ -/* */ -/************************************************************/ - -/** - The master manages our interaction with GLUT. - There's only one GLUI_Master_Object. -*/ -class GLUI_Master_Object -{ - - friend void glui_idle_func(); - -public: - - GLUI_Master_Object(); - ~GLUI_Master_Object(); - - GLUI_Node gluis; - GLUI_Control *active_control, *curr_left_button_glut_menu; - GLUI *active_control_glui; - int glui_id_counter; - - GLUI_Glut_Window *find_glut_window( int window_id ); - - void set_glutIdleFunc(void (*f)(void)); - - /************** - void (*glut_keyboard_CB)(unsigned char, int, int); - void (*glut_reshape_CB)(int, int); - void (*glut_special_CB)(int, int, int); - void (*glut_mouse_CB)(int,int,int,int); - - void (*glut_passive_motion_CB)(int,int); - void (*glut_visibility_CB)(int); - void (*glut_motion_CB)(int,int); - void (*glut_display_CB)(void); - void (*glut_entry_CB)(int); - **********/ - - void set_left_button_glut_menu_control( GLUI_Control *control ); - - /********** GLUT callthroughs **********/ - /* These are the glut callbacks that we do not handle */ - - void set_glutReshapeFunc (void (*f)(int width, int height)); - void set_glutKeyboardFunc(void (*f)(unsigned char key, int x, int y)); - void set_glutSpecialFunc (void (*f)(int key, int x, int y)); - void set_glutMouseFunc (void (*f)(int, int, int, int )); - - void set_glutDisplayFunc(void (*f)(void)) {glutDisplayFunc(f);} - void set_glutTimerFunc(unsigned int millis, void (*f)(int value), int value) - { ::glutTimerFunc(millis,f,value);} - void set_glutOverlayDisplayFunc(void(*f)(void)){glutOverlayDisplayFunc(f);} - void set_glutSpaceballMotionFunc(Int3_CB f) {glutSpaceballMotionFunc(f);} - void set_glutSpaceballRotateFunc(Int3_CB f) {glutSpaceballRotateFunc(f);} - void set_glutSpaceballButtonFunc(Int2_CB f) {glutSpaceballButtonFunc(f);} - void set_glutTabletMotionFunc(Int2_CB f) {glutTabletMotionFunc(f);} - void set_glutTabletButtonFunc(Int4_CB f) {glutTabletButtonFunc(f);} - /* void set_glutWindowStatusFunc(Int1_CB f) {glutWindowStatusFunc(f);} */ - void set_glutMenuStatusFunc(Int3_CB f) {glutMenuStatusFunc(f);} - void set_glutMenuStateFunc(Int1_CB f) {glutMenuStateFunc(f);} - void set_glutButtonBoxFunc(Int2_CB f) {glutButtonBoxFunc(f);} - void set_glutDialsFunc(Int2_CB f) {glutDialsFunc(f);} - - - GLUI *create_glui( const char *name, long flags=0, int x=-1, int y=-1 ); - GLUI *create_glui_subwindow( int parent_window, long flags=0 ); - GLUI *find_glui_by_window_id( int window_id ); - void get_viewport_area( int *x, int *y, int *w, int *h ); - void auto_set_viewport(); - void close_all(); - void sync_live_all(); - - void reshape(); - - float get_version() { return GLUI_VERSION; } - - void glui_setIdleFuncIfNecessary(void); - -private: - GLUI_Node glut_windows; - void (*glut_idle_CB)(void); - - void add_cb_to_glut_window(int window,int cb_type,void *cb); -}; - -/** - This is the only GLUI_Master_Object in existence. -*/ -extern GLUI_Master_Object GLUI_Master; - -/************************************************************/ -/* */ -/* Class for managing a GLUT window */ -/* */ -/************************************************************/ - -/** - A top-level window. The GLUI_Master GLUT callback can route events - to the callbacks in this class, for arbitrary use by external users. - (see GLUI_Master_Object::set_glutKeyboardFunc). - - This entire approach seems to be superceded by the "subwindow" flavor - of GLUI. -*/ -class GLUI_Glut_Window : public GLUI_Node -{ -public: - GLUI_Glut_Window(); - - int glut_window_id; - - /*********** Pointers to GLUT callthrough functions *****/ - void (*glut_keyboard_CB)(unsigned char, int, int); - void (*glut_special_CB)(int, int, int); - void (*glut_reshape_CB)(int, int); - void (*glut_passive_motion_CB)(int,int); - void (*glut_mouse_CB)(int,int,int,int); - void (*glut_visibility_CB)(int); - void (*glut_motion_CB)(int,int); - void (*glut_display_CB)(void); - void (*glut_entry_CB)(int); -}; - -/************************************************************/ -/* */ -/* Main Window GLUI class (not user-level) */ -/* */ -/************************************************************/ - -/** - A GLUI_Main handles GLUT events for one window, routing them to the - appropriate controls. The central user-visible "GLUI" class - inherits from this class; users should not allocate GLUT_Main objects. - - There's a separate GLUI_Main object for: - - Each top-level window with GUI stuff in it. - - Each "subwindow" of another top-level window. - - All the GLUI_Main objects are listed in GLUI_Master.gluis. - A better name for this class might be "GLUI_Environment"; - this class provides the window-level context for every control. -*/ -class GLUI_Main : public GLUI_Node -{ - /********** Friend classes *************/ - - friend class GLUI_Control; - friend class GLUI_Rotation; - friend class GLUI_Translation; - friend class GLUI; - friend class GLUI_Master_Object; - - /*********** Friend functions **********/ - - friend void glui_mouse_func(int button, int state, int x, int y); - friend void glui_keyboard_func(unsigned char key, int x, int y); - friend void glui_special_func(int key, int x, int y); - friend void glui_passive_motion_func(int x, int y); - friend void glui_reshape_func( int w, int h ); - friend void glui_visibility_func(int state); - friend void glui_motion_func(int x, int y); - friend void glui_entry_func(int state); - friend void glui_display_func( void ); - friend void glui_idle_func(void); - - friend void glui_parent_window_reshape_func( int w, int h ); - friend void glui_parent_window_keyboard_func( unsigned char, int, int ); - friend void glui_parent_window_special_func( int, int, int ); - friend void glui_parent_window_mouse_func( int, int, int, int ); - -protected: - /*** Variables ***/ - int main_gfx_window_id; - int mouse_button_down; - int glut_window_id; - int top_level_glut_window_id; - GLUI_Control *active_control; - GLUI_Control *mouse_over_control; - GLUI_Panel *main_panel; - enum buffer_mode_t { - buffer_front=1, ///< Draw updated controls directly to screen. - buffer_back=2 ///< Double buffering: postpone updates until next redraw. - }; - buffer_mode_t buffer_mode; ///< Current drawing mode - int curr_cursor; - int w, h; - long flags; - bool closing; - int parent_window; - int glui_id; - - /********** Misc functions *************/ - - GLUI_Control *find_control( int x, int y ); - GLUI_Control *find_next_control( GLUI_Control *control ); - GLUI_Control *find_next_control_rec( GLUI_Control *control ); - GLUI_Control *find_next_control_( GLUI_Control *control ); - GLUI_Control *find_prev_control( GLUI_Control *control ); - void create_standalone_window( const char *name, int x=-1, int y=-1 ); - void create_subwindow( int parent,int window_alignment ); - void setup_default_glut_callbacks( void ); - - void mouse(int button, int state, int x, int y); - void keyboard(unsigned char key, int x, int y); - void special(int key, int x, int y); - void passive_motion(int x, int y); - void reshape( int w, int h ); - void visibility(int state); - void motion(int x, int y); - void entry(int state); - void display( void ); - void idle(void); - int needs_idle(void); - - void (*glut_mouse_CB)(int, int, int, int); - void (*glut_keyboard_CB)(unsigned char, int, int); - void (*glut_special_CB)(int, int, int); - void (*glut_reshape_CB)(int, int); - - - /*********** Controls ************/ - - virtual int add_control( GLUI_Node *parent, GLUI_Control *control ); - - - /********** Constructors and Destructors ***********/ - - GLUI_Main( void ); - -public: - GLUI_StdBitmaps std_bitmaps; - GLUI_String window_name; - RGBc bkgd_color; - float bkgd_color_f[3]; - - void *font; - int curr_modifiers; - - void adjust_glut_xy( int &x, int &y ) { x; y = h-y; } - void activate_control( GLUI_Control *control, int how ); - void align_controls( GLUI_Control *control ); - void deactivate_current_control( void ); - - /** Draw a 3D-look pushed-out box around this rectangle */ - void draw_raised_box( int x, int y, int w, int h ); - /** Draw a 3D-look pushed-in box around this rectangle */ - void draw_lowered_box( int x, int y, int w, int h ); - - /** Return true if this control should redraw itself immediately (front buffer); - Or queue up a redraw and return false if it shouldn't (back buffer). - */ - bool should_redraw_now(GLUI_Control *ctl); - - /** Switch to the appropriate draw buffer now. Returns the old draw buffer. - This routine should probably only be called from inside the GLUI_DrawingSentinal, - in glui_internal_control.h - */ - int set_current_draw_buffer(); - /** Go back to using this draw buffer. Undoes set_current_draw_buffer. */ - void restore_draw_buffer( int buffer_state ); - - /** Pack, resize the window, and redraw all the controls. */ - void refresh(); - - /** Redraw the main graphics window */ - void post_update_main_gfx(); - - /** Recompute the sizes and positions of all controls */ - void pack_controls(); - - void close_internal(); - void check_subwindow_position(); - void set_ortho_projection(); - void set_viewport(); - int get_glut_window_id( void ) { return glut_window_id; } /* JVK */ -}; - -/************************************************************/ -/* */ -/* GLUI_Control: base class for all controls */ -/* */ -/************************************************************/ - -/** - All the GUI objects inherit from GLUI_Control: buttons, - checkboxes, labels, edit boxes, scrollbars, etc. - Most of the work of this class is in routing events, - like keystrokes, mouseclicks, redraws, and sizing events. - - Yes, this is a huge and hideous class. It needs to be - split up into simpler subobjects. None of the data members - should be directly accessed by users (they should be protected, - not public); only subclasses. -*/ -class GLUI_Control : public GLUI_Node -{ -public: - -/** Onscreen coordinates */ - int w, h; /* dimensions of control */ - int x_abs, y_abs; - int x_off, y_off_top, y_off_bot; /* INNER margins, by which child - controls are indented */ - int contain_x, contain_y; - int contain_w, contain_h; - /* if this is a container control (e.g., - radiogroup or panel) this indicated dimensions - of inner area in which controls reside */ - -/** "activation" for tabbing between controls. */ - int active_type; ///< "GLUI_CONTROL_ACTIVE_..." - bool active; ///< If true, we've got the focus - bool can_activate; ///< If false, remove from tab order. - bool spacebar_mouse_click; ///< Spacebar simulates click. - -/** Callbacks */ - long user_id; ///< Integer to pass to callback function. - GLUI_CB callback; ///< User callback function, or NULL. - -/** Variable value storage */ - float float_val; /**< Our float value */ - int int_val; /**< Our integer value */ - float float_array_val[GLUI_DEF_MAX_ARRAY]; - int float_array_size; - GLUI_String text; /**< The text inside this control */ - -/** "Live variable" updating */ - void *ptr_val; /**< A pointer to the user's live variable value */ - int live_type; - bool live_inited; - /* These variables store the last value that live variable was known to have. */ - int last_live_int; - float last_live_float; - GLUI_String last_live_text; - float last_live_float_array[GLUI_DEF_MAX_ARRAY]; - -/** Properties of our control */ - GLUI *glui; /**< Our containing event handler (NEVER NULL during event processing!) */ - bool is_container; /**< Is this a container class (e.g., panel) */ - int alignment; - bool enabled; /**< Is this control grayed out? */ - GLUI_String name; /**< The name of this control */ - void *font; /**< Our glutbitmap font */ - bool collapsible, is_open; - GLUI_Node collapsed_node; - bool hidden; /* Collapsed controls (and children) are hidden */ - int char_widths[CHAR_WIDTH_HASH_SIZE][2]; /* Character width hash table */ - -public: - /*** Get/Set values ***/ - virtual void set_name( const char *string ); - virtual void set_int_val( int new_int ) { int_val = new_int; output_live(true); } - virtual void set_float_val( float new_float ) { float_val = new_float; output_live(true); } - virtual void set_ptr_val( void *new_ptr ) { ptr_val = new_ptr; output_live(true); } - virtual void set_float_array_val( float *array_ptr ); - - virtual float get_float_val( void ) { return float_val; } - virtual int get_int_val( void ) { return int_val; } - virtual void get_float_array_val( float *array_ptr ); - virtual int get_id( void ) const { return int(user_id); } - virtual void set_id( int id ) { user_id=id; } - - virtual int mouse_down_handler( int local_x, int local_y ) { local_x; local_y; return false; } - virtual int mouse_up_handler( int local_x, int local_y, bool inside ) { local_x; local_y; inside; return false; } - virtual int mouse_held_down_handler( int local_x, int local_y, bool inside) { local_x; local_y; inside; return false; } - virtual int key_handler( unsigned char key, int modifiers ) { key; modifiers; return false; } - virtual int special_handler( int key,int modifiers ) { key; modifiers; return false; } - - virtual void update_size( void ) { } - virtual void idle( void ) { } - virtual int mouse_over( int state, int x, int y ) { state; x; y; return false; } - - virtual void enable( void ); - virtual void disable( void ); - virtual void activate( int how ) { how; active = true; } - virtual void deactivate( void ) { active = false; } - - /** Hide (shrink into a rollout) and unhide (expose from a rollout) */ - void hide_internal( int recurse ); - void unhide_internal( int recurse ); - - /** Return true if it currently makes sense to draw this class. */ - int can_draw( void ) { return (glui != NULL && hidden == false); } - - /** Redraw this control. - In single-buffering mode (drawing to GL_FRONT), this is just - a call to translate_and_draw_front (after a can_draw() check). - In double-buffering mode (drawing to GL_BACK), this queues up - a redraw and returns false, since you shouldn't draw yet. - */ - void redraw(void); - - /** Redraw everybody in our window. */ - void redraw_window(void); - - virtual void align( void ); - void pack( int x, int y ); /* Recalculate positions and offsets */ - void pack_old( int x, int y ); - void draw_recursive( int x, int y ); - int set_to_glut_window( void ); - void restore_window( int orig ); - void translate_and_draw_front( void ); - void translate_to_origin( void ) - {glTranslatef((float)x_abs+.5f,(float)y_abs+.5f,0.0f);} - virtual void draw( int x, int y )=0; - void set_font( void *new_font ); - void *get_font( void ); - int string_width( const char *text ); - int string_width( const GLUI_String &str ) - { return string_width(str.c_str()); } - int char_width( char c ); - - void draw_name( int x, int y ); - void draw_box_inwards_outline( int x_min, int x_max, - int y_min, int y_max ); - void draw_box( int x_min, int x_max, int y_min, int y_max, - float r, float g, float b ); - void draw_bkgd_box( int x_min, int x_max, int y_min, int y_max ); - void draw_emboss_box( int x_min, int x_max,int y_min,int y_max); - void draw_string( const char *text ); - void draw_string( const GLUI_String &s ) - { draw_string(s.c_str()); } - void draw_char( char c ); - void draw_active_box( int x_min, int x_max, int y_min, int y_max ); - void set_to_bkgd_color( void ); - - void set_w( int new_w ); - void set_h( int new_w ); - void set_alignment( int new_align ); - void sync_live( int recurse, int draw ); /* Reads live variable */ - void init_live( void ); - void output_live( int update_main_gfx ); /** Writes live variable **/ - virtual void set_text( const char *t ) { t; } - void execute_callback( void ); - void get_this_column_dims( int *col_x, int *col_y, - int *col_w, int *col_h, - int *col_x_off, int *col_y_off ); - virtual bool needs_idle( void ) const; - virtual bool wants_tabs() const { return false; } - - GLUI_Control(void) - { - x_off = GLUI_XOFF; - y_off_top = GLUI_YOFF; - y_off_bot = GLUI_YOFF; - x_abs = GLUI_XOFF; - y_abs = GLUI_YOFF; - active = false; - enabled = true; - int_val = 0; - last_live_int = 0; - float_array_size = 0; - glui_format_str(name, "Control: %p", this); - float_val = 0.0; - last_live_float = 0.0; - ptr_val = NULL; - glui = NULL; - w = GLUI_DEFAULT_CONTROL_WIDTH; - h = GLUI_DEFAULT_CONTROL_HEIGHT; - font = NULL; - active_type = GLUI_CONTROL_ACTIVE_MOUSEDOWN; - alignment = GLUI_ALIGN_LEFT; - is_container = false; - can_activate = true; /* By default, you can activate a control */ - spacebar_mouse_click = true; /* Does spacebar simulate a mouse click? */ - live_type = GLUI_LIVE_NONE; - text = ""; - last_live_text == ""; - live_inited = false; - collapsible = false; - is_open = true; - hidden = false; - memset(char_widths, -1, sizeof(char_widths)); /* JVK */ - int i; - for( i=0; iint_val = 1; set_color(red, green, blue); } } - void disable_bar() { if (column) { column->int_val = 0; } } - void set_child_number(int c) { child_number = c; } - void set_level_color(float r, float g, float b) { - lred = r; - lgreen = g; - lblue = b; - } - void set_color(float r, float g, float b) { - red = r; - green = g; - blue = b; - } -protected: - void common_init() - { - currently_inside = false; - initially_inside = false; - can_activate = true; - is_container = true; - h = GLUI_DEFAULT_CONTROL_HEIGHT + 7; - w = GLUI_DEFAULT_CONTROL_WIDTH; - y_off_top = 21; - collapsible = true; - red = .5; - green = .5; - blue = .5; - lred = 0; - lgreen = 0; - lblue = 0; - column = NULL; - is_current = 0; - child_number = 0; - format = 0; - panel = NULL; - name = ""; - level_name = ""; - level = 0; - - }; -}; - - -/************************************************************/ -/* */ -/* TreePanel class (container) JVK */ -/* */ -/************************************************************/ - -/** - Manages, maintains, and formats a tree of GLUI_Tree objects. - These are shown in a heirarchical, collapsible display. - - FIXME: There's an infinite loop in the traversal code (OSL 2006/06) -*/ -class GLUI_TreePanel : public GLUI_Panel -{ -public: - GLUI_TreePanel(GLUI_Node *parent, const char *name, - bool open=false, int inset=0); - - int max_levels; - int next_id; - int format; - float red; - float green; - float blue; - float lred; - float lgreen; - float lblue; - int root_children; - /* These variables allow the tree panel to traverse the tree - using only two function calls. (Well, four, if you count - going in reverse */ - - GLUI_Tree *curr_branch; /* Current Branch */ - GLUI_Panel *curr_root; /* Current Root */ - -public: - void set_color(float r, float g, float b); - void set_level_color(float r, float g, float b); - void set_format(int f) { format = f; } - - /* Adds branch to curr_root */ - GLUI_Tree * ab(const char *name, GLUI_Tree *root = NULL); - /* Goes up one level, resets curr_root and curr_branch to parents*/ - void fb(GLUI_Tree *branch= NULL); - /* Deletes the curr_branch, goes up one level using fb */ - void db(GLUI_Tree *branch = NULL); - /* Finds the very last branch of curr_root, resets vars */ - void descendBranch(GLUI_Panel *root = NULL); - /* Resets curr_root and curr branch to TreePanel and lastChild */ - void resetToRoot(GLUI_Panel *new_root = NULL); - void next( void ); - void refresh( void ); - void expand_all( void ); - void collapse_all( void ); - void update_all( void ); - void initNode(GLUI_Tree *temp); - void formatNode(GLUI_Tree *temp); - -protected: - int uniqueID( void ) { next_id++; return next_id - 1; } - void common_init() - { - GLUI_Panel(); - next_id = 0; - curr_root = this; - curr_branch = NULL; - red = .5; - green = .5; - blue = .5; - root_children = 0; - } -}; - -/************************************************************/ -/* */ -/* User-Level GLUI class */ -/* */ -/************************************************************/ - -class GLUI_Rotation; -class GLUI_Translation; - -/** - The main user-visible interface object to GLUI. - -*/ -class GLUI : public GLUI_Main -{ -public: -/** DEPRECATED interface for creating new GLUI objects */ - int add_control( GLUI_Control *control ) { return main_panel->add_control(control); } - - void add_column( int draw_bar = true ); - void add_column_to_panel( GLUI_Panel *panel, int draw_bar = true ); - - void add_separator( void ); - void add_separator_to_panel( GLUI_Panel *panel ); - - GLUI_RadioGroup - *add_radiogroup( int *live_var=NULL, - int user_id=-1,GLUI_CB callback=GLUI_CB()); - - GLUI_RadioGroup - *add_radiogroup_to_panel( GLUI_Panel *panel, - int *live_var=NULL, - int user_id=-1, GLUI_CB callback=GLUI_CB() ); - GLUI_RadioButton - *add_radiobutton_to_group( GLUI_RadioGroup *group, - const char *name ); - - GLUI_Listbox *add_listbox( const char *name, int *live_var=NULL, - int id=-1, GLUI_CB callback=GLUI_CB() ); - GLUI_Listbox *add_listbox_to_panel( GLUI_Panel *panel, - const char *name, int *live_var=NULL, - int id=-1, GLUI_CB callback=GLUI_CB()); - - GLUI_Rotation *add_rotation( const char *name, float *live_var=NULL, - int id=-1, GLUI_CB callback=GLUI_CB() ); - GLUI_Rotation *add_rotation_to_panel( GLUI_Panel *panel, - const char *name, float *live_var=NULL, - int id=-1, GLUI_CB callback=GLUI_CB()); - - GLUI_Translation *add_translation( const char *name, - int trans_type, float *live_var=NULL, - int id=-1, GLUI_CB callback=GLUI_CB() ); - GLUI_Translation *add_translation_to_panel( - GLUI_Panel *panel, const char *name, - int trans_type, float *live_var=NULL, - int id=-1, GLUI_CB callback=GLUI_CB()); - - GLUI_Checkbox *add_checkbox( const char *name, - int *live_var=NULL, - int id=-1, GLUI_CB callback=GLUI_CB()); - GLUI_Checkbox *add_checkbox_to_panel( GLUI_Panel *panel, const char *name, - int *live_var=NULL, int id=-1, - GLUI_CB callback=GLUI_CB()); - - GLUI_Button *add_button( const char *name, int id=-1, - GLUI_CB callback=GLUI_CB()); - GLUI_Button *add_button_to_panel( GLUI_Panel *panel, const char *name, - int id=-1, GLUI_CB callback=GLUI_CB() ); - - GLUI_StaticText *add_statictext( const char *name ); - GLUI_StaticText *add_statictext_to_panel( GLUI_Panel *panel, const char *name ); - - GLUI_EditText *add_edittext( const char *name, - int data_type=GLUI_EDITTEXT_TEXT, - void*live_var=NULL, - int id=-1, GLUI_CB callback=GLUI_CB() ); - GLUI_EditText *add_edittext_to_panel( GLUI_Panel *panel, - const char *name, - int data_type=GLUI_EDITTEXT_TEXT, - void *live_var=NULL, int id=-1, - GLUI_CB callback=GLUI_CB() ); - GLUI_EditText *add_edittext( const char *name, GLUI_String& live_var, - int id=-1, GLUI_CB callback=GLUI_CB() ); - GLUI_EditText *add_edittext_to_panel( GLUI_Panel *panel, const char *name, - GLUI_String& live_var, int id=-1, - GLUI_CB callback=GLUI_CB() ); - - GLUI_Spinner *add_spinner( const char *name, - int data_type=GLUI_SPINNER_INT, - void *live_var=NULL, - int id=-1, GLUI_CB callback=GLUI_CB() ); - GLUI_Spinner *add_spinner_to_panel( GLUI_Panel *panel, - const char *name, - int data_type=GLUI_SPINNER_INT, - void *live_var=NULL, - int id=-1, - GLUI_CB callback=GLUI_CB() ); - - GLUI_Panel *add_panel( const char *name, int type=GLUI_PANEL_EMBOSSED ); - GLUI_Panel *add_panel_to_panel( GLUI_Panel *panel, const char *name, - int type=GLUI_PANEL_EMBOSSED ); - - - GLUI_Rollout *add_rollout( const char *name, int open=true, - int type=GLUI_PANEL_EMBOSSED); - GLUI_Rollout *add_rollout_to_panel( GLUI_Panel *panel, const char *name, - int open=true, - int type=GLUI_PANEL_EMBOSSED); - - -/** Set the window where our widgets should be displayed. */ - void set_main_gfx_window( int window_id ); - int get_glut_window_id( void ) { return glut_window_id; } - - void enable( void ) { main_panel->enable(); } - void disable( void ); - - void sync_live( void ); - - void close( void ); - - void show( void ); - void hide( void ); - - /***** GLUT callback setup functions *****/ - /* - void set_glutDisplayFunc(void (*f)(void)); - void set_glutReshapeFunc(void (*f)(int width, int height)); - void set_glutKeyboardFunc(void (*f)(unsigned char key, int x, int y)); - void set_glutSpecialFunc(void (*f)(int key, int x, int y)); - void set_glutMouseFunc(void (*f)(int button, int state, int x, int y)); - void set_glutMotionFunc(void (*f)(int x, int y)); - void set_glutPassiveMotionFunc(void (*f)(int x, int y)); - void set_glutEntryFunc(void (*f)(int state)); - void set_glutVisibilityFunc(void (*f)(int state)); - void set_glutInit( int *argcp, const char **argv ); - void set_glutInitWindowSize(int width, int height); - void set_glutInitWindowPosition(int x, int y); - void set_glutInitDisplayMode(unsigned int mode); - int set_glutCreateWindow(const char *name); - */ - - /***** Constructors and desctructors *****/ - - int init( const char *name, long flags, int x, int y, int parent_window ); -protected: - virtual int add_control( GLUI_Node *parent, GLUI_Control *control ) { - return GLUI_Main::add_control( parent, control ); - } -}; - -/************************************************************/ -/* */ -/* EditText class */ -/* */ -/************************************************************/ - -class GLUI_EditText : public GLUI_Control -{ -public: - int has_limits; - int data_type; - GLUI_String orig_text; - int insertion_pt; - int title_x_offset; - int text_x_offset; - int substring_start; /*substring that gets displayed in box*/ - int substring_end; - int sel_start, sel_end; /* current selection */ - int num_periods; - int last_insertion_pt; - float float_low, float_high; - int int_low, int_high; - GLUI_Spinner *spinner; - int debug; - int draw_text_only; - - - int mouse_down_handler( int local_x, int local_y ); - int mouse_up_handler( int local_x, int local_y, bool inside ); - int mouse_held_down_handler( int local_x, int local_y, bool inside ); - int key_handler( unsigned char key,int modifiers ); - int special_handler( int key, int modifiers ); - - void activate( int how ); - void deactivate( void ); - - void draw( int x, int y ); - - int mouse_over( int state, int x, int y ); - - int find_word_break( int start, int direction ); - int substring_width( int start, int end ); - void clear_substring( int start, int end ); - int find_insertion_pt( int x, int y ); - int update_substring_bounds( void ); - void update_and_draw_text( void ); - void draw_text( int x, int y ); - void draw_insertion_pt( void ); - void set_numeric_text( void ); - void update_x_offsets( void ); - void update_size( void ); - - void set_float_limits( float low,float high,int limit_type=GLUI_LIMIT_CLAMP); - void set_int_limits( int low, int high, int limit_type=GLUI_LIMIT_CLAMP ); - void set_float_val( float new_val ); - void set_int_val( int new_val ); - void set_text( const char *text ); - void set_text( const GLUI_String &s) { set_text(s.c_str()); } - const char *get_text() { return text.c_str(); } - - void dump( FILE *out, const char *text ); - - // Constructor, no live variable - GLUI_EditText( GLUI_Node *parent, const char *name, - int text_type=GLUI_EDITTEXT_TEXT, - int id=-1, GLUI_CB callback=GLUI_CB() ); - // Constructor, int live variable - GLUI_EditText( GLUI_Node *parent, const char *name, - int *live_var, - int id=-1, GLUI_CB callback=GLUI_CB() ); - // Constructor, float live variable - GLUI_EditText( GLUI_Node *parent, const char *name, - float *live_var, - int id=-1, GLUI_CB callback=GLUI_CB() ); - // Constructor, char* live variable - GLUI_EditText( GLUI_Node *parent, const char *name, - char *live_var, - int id=-1, GLUI_CB callback=GLUI_CB() ); - // Constructor, std::string live variable - GLUI_EditText( GLUI_Node *parent, const char *name, - std::string &live_var, - int id=-1, GLUI_CB callback=GLUI_CB() ); - - // Deprecated constructor, only called internally - GLUI_EditText( GLUI_Node *parent, const char *name, - int text_type, void *live_var, - int id, GLUI_CB callback ); - // Deprecated constructor, only called internally - GLUI_EditText( void ) { common_init(); } - -protected: - void common_init( void ) { - h = GLUI_EDITTEXT_HEIGHT; - w = GLUI_EDITTEXT_WIDTH; - title_x_offset = 0; - text_x_offset = 55; - insertion_pt = -1; - last_insertion_pt = -1; - name = ""; - substring_start = 0; - data_type = GLUI_EDITTEXT_TEXT; - substring_end = 2; - num_periods = 0; - has_limits = GLUI_LIMIT_NONE; - sel_start = 0; - sel_end = 0; - active_type = GLUI_CONTROL_ACTIVE_PERMANENT; - can_activate = true; - spacebar_mouse_click = false; - spinner = NULL; - debug = false; - draw_text_only = false; - } - void common_construct( GLUI_Node *parent, const char *name, - int data_type, int live_type, void *live_var, - int id, GLUI_CB callback ); -}; - -/************************************************************/ -/* */ -/* CommandLine class */ -/* */ -/************************************************************/ - -class GLUI_CommandLine : public GLUI_EditText -{ -public: - typedef GLUI_EditText Super; - - enum { HIST_SIZE = 100 }; - std::vector hist_list; - int curr_hist; - int oldest_hist; - int newest_hist; - bool commit_flag; - -public: - int key_handler( unsigned char key,int modifiers ); - int special_handler( int key,int modifiers ); - void deactivate( void ); - - virtual const char *get_history( int command_number ) const - { return hist_list[command_number - oldest_hist].c_str(); } - virtual GLUI_String& get_history_str( int command_number ) - { return hist_list[command_number - oldest_hist]; } - virtual const GLUI_String& get_history_str( int command_number ) const - { return hist_list[command_number - oldest_hist]; } - virtual void recall_history( int history_number ); - virtual void scroll_history( int direction ); - virtual void add_to_history( const char *text ); - virtual void reset_history( void ); - - void dump( FILE *out, const char *text ); - - - GLUI_CommandLine( GLUI_Node *parent, const char *name, void *live_var=NULL, - int id=-1, GLUI_CB callback=GLUI_CB() ); - GLUI_CommandLine( void ) { common_init(); } -protected: - void common_init() { - hist_list.resize(HIST_SIZE); - curr_hist = 0; - oldest_hist = 0; - newest_hist = 0; - commit_flag = false; - } -}; - -/************************************************************/ -/* */ -/* RadioGroup class (container) */ -/* */ -/************************************************************/ - -class GLUI_RadioGroup : public GLUI_Control -{ -public: - int num_buttons; - - void draw( int x, int y ); - void set_name( const char *text ); - void set_int_val( int int_val ); - void set_selected( int int_val ); - - void draw_group( int translate ); - - GLUI_RadioGroup( GLUI_Node *parent, int *live_var=NULL, - int user_id=-1,GLUI_CB callback=GLUI_CB() ); - GLUI_RadioGroup( void ) { common_init(); } - -protected: - void common_init( void ) { - x_off = 0; - y_off_top = 0; - y_off_bot = 0; - is_container = true; - w = 300; - h = 300; - num_buttons = 0; - name = ""; - can_activate = false; - live_type = GLUI_LIVE_INT; - } -}; - -/************************************************************/ -/* */ -/* RadioButton class (container) */ -/* */ -/************************************************************/ - -class GLUI_RadioButton : public GLUI_Control -{ -public: - int orig_value; - bool currently_inside; - int text_x_offset; - - int mouse_down_handler( int local_x, int local_y ); - int mouse_up_handler( int local_x, int local_y, bool inside ); - int mouse_held_down_handler( int local_x, int local_y, bool inside ); - - void draw( int x, int y ); - void update_size( void ); - - void draw_active_area( void ); - void draw_checked( void ); - void draw_unchecked( void ); - void draw_O( void ); - - GLUI_RadioButton( GLUI_RadioGroup *group, const char *name ); - GLUI_RadioGroup *group; - -protected: - void common_init() - { - glui_format_str( name, "RadioButton: %p", (void *) this ); - h = GLUI_RADIOBUTTON_SIZE; - group = NULL; - orig_value = -1; - text_x_offset = 18; - can_activate = true; - } -}; - - -/************************************************************/ -/* */ -/* Separator class (container) */ -/* */ -/************************************************************/ - -class GLUI_Separator : public GLUI_Control -{ -public: - void draw( int x, int y ); - - GLUI_Separator( GLUI_Node *parent ); - GLUI_Separator( void ) { common_init(); } - -protected: - void common_init() { - w = 100; - h = GLUI_SEPARATOR_HEIGHT; - can_activate = false; - } -}; - -#define GLUI_SPINNER_ARROW_WIDTH 12 -#define GLUI_SPINNER_ARROW_HEIGHT 8 -#define GLUI_SPINNER_ARROW_Y 2 - -#define GLUI_SPINNER_STATE_NONE 0 -#define GLUI_SPINNER_STATE_UP 1 -#define GLUI_SPINNER_STATE_DOWN 2 -#define GLUI_SPINNER_STATE_BOTH 3 - -#define GLUI_SPINNER_DEFAULT_GROWTH_EXP 1.05f - -/************************************************************/ -/* */ -/* Spinner class (container) */ -/* */ -/************************************************************/ - -class GLUI_Spinner : public GLUI_Control -{ -public: - // Constructor, no live var - GLUI_Spinner( GLUI_Node* parent, const char *name, - int data_type=GLUI_SPINNER_INT, int id=-1, GLUI_CB callback=GLUI_CB() ); - // Constructor, int live var - GLUI_Spinner( GLUI_Node* parent, const char *name, - int *live_var, int id=-1, GLUI_CB callback=GLUI_CB() ); - // Constructor, float live var - GLUI_Spinner( GLUI_Node* parent, const char *name, - float *live_var, int id=-1, GLUI_CB callback=GLUI_CB() ); - // Deprecated constructor - GLUI_Spinner( GLUI_Node* parent, const char *name, - int data_type, - void *live_var, - int id=-1, GLUI_CB callback=GLUI_CB() ); - // Deprecated constructor - GLUI_Spinner( void ) { common_init(); } - - bool currently_inside; - int state; - float growth, growth_exp; - int last_x, last_y; - int data_type; - int callback_count; - int last_int_val; - float last_float_val; - int first_callback; - float user_speed; - - GLUI_EditText *edittext; - - int mouse_down_handler( int local_x, int local_y ); - int mouse_up_handler( int local_x, int local_y, bool inside ); - int mouse_held_down_handler( int local_x, int local_y, bool inside ); - int key_handler( unsigned char key,int modifiers ); - int special_handler( int key,int modifiers ); - - void draw( int x, int y ); - void draw_pressed( void ); - void draw_unpressed( void ); - void draw_text( int sunken ); - - void update_size( void ); - - void set_float_limits( float low,float high,int limit_type=GLUI_LIMIT_CLAMP); - void set_int_limits( int low, int high,int limit_type=GLUI_LIMIT_CLAMP); - int find_arrow( int local_x, int local_y ); - void do_drag( int x, int y ); - void do_callbacks( void ); - void do_click( void ); - void idle( void ); - bool needs_idle( void ) const; - - const char *get_text( void ); - - void set_float_val( float new_val ); - void set_int_val( int new_val ); - float get_float_val( void ); - int get_int_val( void ); - void increase_growth( void ); - void reset_growth( void ); - - void set_speed( float speed ) { user_speed = speed; } - -protected: - void common_init() { - glui_format_str( name, "Spinner: %p", this ); - h = GLUI_EDITTEXT_HEIGHT; - w = GLUI_EDITTEXT_WIDTH; - x_off = 0; - y_off_top = 0; - y_off_bot = 0; - can_activate = true; - state = GLUI_SPINNER_STATE_NONE; - edittext = NULL; - growth_exp = GLUI_SPINNER_DEFAULT_GROWTH_EXP; - callback_count = 0; - first_callback = true; - user_speed = 1.0; - } - void common_construct( GLUI_Node* parent, const char *name, - int data_type, void *live_var, - int id, GLUI_CB callback ); -}; - -/************************************************************/ -/* */ -/* StaticText class */ -/* */ -/************************************************************/ - -class GLUI_StaticText : public GLUI_Control -{ -public: - void set_text( const char *text ); - void draw( int x, int y ); - void draw_text( void ); - void update_size( void ); - void erase_text( void ); - - GLUI_StaticText(GLUI_Node *parent, const char *name); - GLUI_StaticText( void ) { common_init(); } - -protected: - void common_init() { - h = GLUI_STATICTEXT_SIZE; - name = ""; - can_activate = false; - } -}; - -/************************************************************/ -/* */ -/* TextBox class - JVK */ -/* */ -/************************************************************/ - -class GLUI_TextBox : public GLUI_Control -{ -public: - /* GLUI Textbox - JVK */ - GLUI_TextBox(GLUI_Node *parent, GLUI_String &live_var, - bool scroll = false, int id=-1, GLUI_CB callback=GLUI_CB() ); - GLUI_TextBox( GLUI_Node *parent, - bool scroll = false, int id=-1, - GLUI_CB callback=GLUI_CB() ); - - GLUI_String orig_text; - int insertion_pt; - int substring_start; /*substring that gets displayed in box*/ - int substring_end; - int sel_start, sel_end; /* current selection */ - int last_insertion_pt; - int debug; - int draw_text_only; - int tab_width; - int start_line; - int num_lines; - int curr_line; - int visible_lines; - int insert_x; /* Similar to "insertion_pt", these variables keep */ - int insert_y; /* track of where the ptr is, but in pixels */ - int keygoal_x; /* where up down keys would like to put insertion pt*/ - GLUI_Scrollbar *scrollbar; - - int mouse_down_handler( int local_x, int local_y ); - int mouse_up_handler( int local_x, int local_y, bool inside ); - int mouse_held_down_handler( int local_x, int local_y, bool inside ); - int key_handler( unsigned char key,int modifiers ); - int special_handler( int key,int modifiers ); - - void activate( int how ); - void deactivate( void ); - - void enable( void ); - void disable( void ); - - void draw( int x, int y ); - - int mouse_over( int state, int x, int y ); - - int get_box_width(); - int find_word_break( int start, int direction ); - int substring_width( int start, int end, int initial_width=0 ); - void clear_substring( int start, int end ); - int find_insertion_pt( int x, int y ); - int update_substring_bounds( void ); - void update_and_draw_text( void ); - void draw_text( int x, int y ); - void draw_insertion_pt( void ); - void update_x_offsets( void ); - void update_size( void ); - - void set_text( const char *text ); - const char *get_text( void ) { return text.c_str(); } - - void dump( FILE *out, char *text ); - void set_tab_w(int w) { tab_width = w; } - void set_start_line(int l) { start_line = l; } - static void scrollbar_callback(GLUI_Control*); - - bool wants_tabs( void ) const { return true; } - -protected: - void common_init() - { - h = GLUI_TEXTBOX_HEIGHT; - w = GLUI_TEXTBOX_WIDTH; - tab_width = GLUI_TAB_WIDTH; - num_lines = 0; - visible_lines = 0; - start_line = 0; - curr_line = 0; - insert_y = -1; - insert_x = -1; - insertion_pt = -1; - last_insertion_pt = -1; - name[0] = '\0'; - substring_start = 0; - substring_end = 2; - sel_start = 0; - sel_end = 0; - active_type = GLUI_CONTROL_ACTIVE_PERMANENT; - can_activate = true; - spacebar_mouse_click = false; - scrollbar = NULL; - debug = false; - draw_text_only = false; - } - void common_construct( - GLUI_Node *parent, GLUI_String *live_var, - bool scroll, int id, GLUI_CB callback); -}; - -/************************************************************/ -/* */ -/* List class - JVK */ -/* */ -/************************************************************/ - -class GLUI_List_Item : public GLUI_Node -{ -public: - GLUI_String text; - int id; -}; - -/************************************************************/ -/* */ -/* List class - JVK */ -/* */ -/************************************************************/ - -class GLUI_List : public GLUI_Control -{ -public: - /* GLUI List - JVK */ - GLUI_List( GLUI_Node *parent, bool scroll = false, - int id=-1, GLUI_CB callback=GLUI_CB() ); - /*, GLUI_Control *object = NULL - ,GLUI_InterObject_CB obj_cb = NULL);*/ - - GLUI_List( GLUI_Node *parent, - GLUI_String& live_var, bool scroll = false, - int id=-1, - GLUI_CB callback=GLUI_CB() - /*,GLUI_Control *object = NULL */ - /*,GLUI_InterObject_CB obj_cb = NULL*/); - - - GLUI_String orig_text; - int debug; - int draw_text_only; - int start_line; - int num_lines; - int curr_line; - int visible_lines; - GLUI_Scrollbar *scrollbar; - GLUI_List_Item items_list; - GLUI_Control *associated_object; - GLUI_CB obj_cb; - int cb_click_type; - int last_line; - int last_click_time; - - int mouse_down_handler( int local_x, int local_y ); - int mouse_up_handler( int local_x, int local_y, bool inside ); - int mouse_held_down_handler( int local_x, int local_y, bool inside ); - int key_handler( unsigned char key,int modifiers ); - int special_handler( int key,int modifiers ); - - void activate( int how ); - void deactivate( void ); - - void draw( int x, int y ); - - int mouse_over( int state, int x, int y ); - - int get_box_width(); - int find_word_break( int start, int direction ); - int substring_width( const char *t, int start, int end ); - int find_line( int x, int y ); - void update_and_draw_text( void ); - void draw_text( const char *t, int selected, int x, int y ); - void update_size( void ); - - - int add_item( int id, const char *text ); - int delete_item( const char *text ); - int delete_item( int id ); - int delete_all(); - - GLUI_List_Item *get_item_ptr( const char *text ); - GLUI_List_Item *get_item_ptr( int id ); - - void dump( FILE *out, const char *text ); - void set_start_line(int l) { start_line = l; } - static void scrollbar_callback(GLUI_Control*); - int get_current_item() { return curr_line; } - void set_click_type(int d) { - cb_click_type = d; } - void set_object_callback(GLUI_CB cb=GLUI_CB(), GLUI_Control*obj=NULL) - { obj_cb=cb; associated_object=obj; } - -protected: - void common_init() - { - h = GLUI_LIST_HEIGHT; - w = GLUI_LIST_WIDTH; - num_lines = 0; - visible_lines = 0; - start_line = 0; - curr_line = 0; - name[0] = '\0'; - active_type = GLUI_CONTROL_ACTIVE_PERMANENT; - can_activate = true; - spacebar_mouse_click = false; - scrollbar = NULL; - debug = false; - draw_text_only = false; - cb_click_type = GLUI_SINGLE_CLICK; - last_line = -1; - last_click_time = 0; - associated_object = NULL; - }; - void common_construct( - GLUI_Node *parent, - GLUI_String* live_var, bool scroll, - int id, - GLUI_CB callback - /*,GLUI_Control *object*/ - /*,GLUI_InterObject_CB obj_cb*/); -}; - -/************************************************************/ -/* */ -/* Scrollbar class - JVK */ -/* */ -/************************************************************/ - -class GLUI_Scrollbar : public GLUI_Control -{ -public: - // Constructor, no live var - GLUI_Scrollbar( GLUI_Node *parent, - const char *name, - int horz_vert=GLUI_SCROLL_HORIZONTAL, - int data_type=GLUI_SCROLL_INT, - int id=-1, GLUI_CB callback=GLUI_CB() - /*,GLUI_Control *object = NULL*/ - /*,GLUI_InterObject_CB obj_cb = NULL*/ - ); - - // Constructor, int live var - GLUI_Scrollbar( GLUI_Node *parent, const char *name, int horz_vert, - int *live_var, - int id=-1, GLUI_CB callback=GLUI_CB() - /*,GLUI_Control *object = NULL*/ - /*,GLUI_InterObject_CB obj_cb = NULL*/ - ); - - // Constructor, float live var - GLUI_Scrollbar( GLUI_Node *parent, const char *name, int horz_vert, - float *live_var, - int id=-1, GLUI_CB callback=GLUI_CB() - /*,GLUI_Control *object = NULL*/ - /*,GLUI_InterObject_CB obj_cb = NULL*/ - ); - - bool currently_inside; - int state; - float growth, growth_exp; - int last_x, last_y; - int data_type; - int callback_count; - int last_int_val; ///< Used to prevent repeated callbacks. - float last_float_val; - int first_callback; - float user_speed; - float float_min, float_max; - int int_min, int_max; - int horizontal; - double last_update_time; ///< GLUI_Time() we last advanced scrollbar. - double velocity_limit; ///< Maximum distance to advance per second. - int box_length; - int box_start_position; - int box_end_position; - int track_length; - - - /* Rather than directly access an Editbox or Textbox for - changing variables, a pointer to some object is defined - along with a static callback in the form func(void *, int) - - the int is the new value, the void * must be cast to that - particular object type before use. - */ - void * associated_object; /* Lets the Spinner manage it's own callbacks */ - GLUI_CB object_cb; /* function pointer to object call_back */ - - int mouse_down_handler( int local_x, int local_y ); - int mouse_up_handler( int local_x, int local_y, bool inside ); - int mouse_held_down_handler( int local_x, int local_y, bool inside ); - int key_handler( unsigned char key,int modifiers ); - int special_handler( int key,int modifiers ); - - void draw( int x, int y ); - void draw_pressed( void ); - void draw_unpressed( void ); - void draw_text( int sunken ); - - void update_size( void ); - - void set_int_limits( int low, int high,int limit_type=GLUI_LIMIT_CLAMP); - void set_float_limits( float low,float high,int limit_type=GLUI_LIMIT_CLAMP); - int find_arrow( int local_x, int local_y ); - void do_drag( int x, int y ); - void do_callbacks( void ); - void draw_scroll( void ); - void do_click( void ); - void idle( void ); - bool needs_idle( void ) const; - void set_int_val( int new_val ); - void set_float_val( float new_val ); - void increase_growth( void ); - void reset_growth( void ); - - void set_speed( float speed ) { user_speed = speed; }; - void update_scroll_parameters(); - void set_object_callback(GLUI_CB cb=GLUI_CB(), GLUI_Control*obj=NULL) - { object_cb=cb; associated_object=obj; } - -protected: - void common_init ( void ); - void common_construct( - GLUI_Node *parent, - const char *name, - int horz_vert, - int data_type, void* live_var, - int id, GLUI_CB callback - /*,GLUI_Control *object - ,GLUI_InterObject_CB obj_cb*/ - ); - - virtual void draw_scroll_arrow(int arrowtype, int x, int y); - virtual void draw_scroll_box(int x, int y, int w, int h); -}; - -/************************************************************/ -/* */ -/* Listbox class */ -/* */ -/************************************************************/ - -class GLUI_Listbox_Item : public GLUI_Node -{ -public: - GLUI_String text; - int id; -}; - -class GLUI_Listbox : public GLUI_Control -{ -public: - GLUI_String curr_text; - GLUI_Listbox_Item items_list; - int depressed; - - int orig_value; - bool currently_inside; - int text_x_offset, title_x_offset; - int glut_menu_id; - - int mouse_down_handler( int local_x, int local_y ); - int mouse_up_handler( int local_x, int local_y, bool inside ); - int mouse_held_down_handler( int local_x, int local_y, bool inside ); - int key_handler( unsigned char key,int modifiers ); - int special_handler( int key,int modifiers ); - - void update_size( void ); - void draw( int x, int y ); - int mouse_over( int state, int x, int y ); - - void set_int_val( int new_val ); - void dump( FILE *output ); - - int add_item( int id, const char *text ); - int delete_item( const char *text ); - int delete_item( int id ); - int sort_items( void ); - - int do_selection( int item ); - - GLUI_Listbox_Item *get_item_ptr( const char *text ); - GLUI_Listbox_Item *get_item_ptr( int id ); - - - GLUI_Listbox( GLUI_Node *parent, - const char *name, int *live_var=NULL, - int id=-1, GLUI_CB callback=GLUI_CB() ); - GLUI_Listbox( void ) { common_init(); } - -protected: - /** Change w and return true if we need to be widened to fit the current item. */ - bool recalculate_item_width( void ); - void common_init() { - glui_format_str( name, "Listbox: %p", this ); - w = GLUI_EDITTEXT_WIDTH; - h = GLUI_EDITTEXT_HEIGHT; - orig_value = -1; - title_x_offset = 0; - text_x_offset = 55; - can_activate = true; - curr_text = ""; - live_type = GLUI_LIVE_INT; /* This has an integer live var */ - depressed = false; - glut_menu_id = -1; - } - - ~GLUI_Listbox(); -}; - -/************************************************************/ -/* */ -/* Mouse_Interaction class */ -/* */ -/************************************************************/ - -/** - This is the superclass of translation and rotation widgets. -*/ -class GLUI_Mouse_Interaction : public GLUI_Control -{ -public: - /*int get_main_area_size( void ) { return MIN( h-18, */ - int draw_active_area_only; - - int mouse_down_handler( int local_x, int local_y ); - int mouse_up_handler( int local_x, int local_y, bool inside ); - int mouse_held_down_handler( int local_x, int local_y, bool inside ); - int special_handler( int key, int modifiers ); - void update_size( void ); - void draw( int x, int y ); - void draw_active_area( void ); - - /*** The following methods (starting with "iaction_") need to - be overloaded ***/ - virtual int iaction_mouse_down_handler( int local_x, int local_y ) = 0; - virtual int iaction_mouse_up_handler( int local_x, int local_y, bool inside )=0; - virtual int iaction_mouse_held_down_handler( int local_x, int local_y, bool inside )=0; - virtual int iaction_special_handler( int key, int modifiers )=0; - virtual void iaction_draw_active_area_persp( void )=0; - virtual void iaction_draw_active_area_ortho( void )=0; - virtual void iaction_dump( FILE *output )=0; - virtual void iaction_init( void ) = 0; - - GLUI_Mouse_Interaction( void ) { - glui_format_str( name, "Mouse_Interaction: %p", this ); - w = GLUI_MOUSE_INTERACTION_WIDTH; - h = GLUI_MOUSE_INTERACTION_HEIGHT; - can_activate = true; - live_type = GLUI_LIVE_NONE; - alignment = GLUI_ALIGN_CENTER; - draw_active_area_only = false; - } -}; - -/************************************************************/ -/* */ -/* Rotation class */ -/* */ -/************************************************************/ - -/** - An onscreen rotation controller--allows the user to interact with - a 3D rotation via a spaceball-like interface. -*/ -class GLUI_Rotation : public GLUI_Mouse_Interaction -{ -public: - Arcball *ball; - GLUquadricObj *quadObj; - bool can_spin, spinning; - float damping; - - int iaction_mouse_down_handler( int local_x, int local_y ); - int iaction_mouse_up_handler( int local_x, int local_y, bool inside ); - int iaction_mouse_held_down_handler( int local_x, int local_y, bool inside ); - int iaction_special_handler( int key, int modifiers ); - void iaction_init( void ) { init_ball(); } - void iaction_draw_active_area_persp( void ); - void iaction_draw_active_area_ortho( void ); - void iaction_dump( FILE *output ); - - /* void update_size( void ); */ - /* void draw( int x, int y ); */ - /* int mouse_over( int state, int x, int y ); */ - - void setup_texture( void ); - void setup_lights( void ); - void draw_ball( float radius ); - - void init_ball( void ); - - void reset( void ); - - bool needs_idle( void ) const; - void idle( void ); - - void copy_float_array_to_ball( void ); - void copy_ball_to_float_array( void ); - - void set_spin( float damp_factor ); - - GLUI_Rotation( GLUI_Node *parent, const char *name, float *live_var=NULL, - int id=-1, GLUI_CB callback=GLUI_CB() ); - GLUI_Rotation(void) { common_init(); } - -protected: - void common_init(); -}; - -/************************************************************/ -/* */ -/* Translation class */ -/* */ -/************************************************************/ - -/** - An onscreen translation controller--allows the user to interact with - a 3D translation. -*/ -class GLUI_Translation : public GLUI_Mouse_Interaction -{ -public: - int trans_type; /* Is this an XY or a Z controller? */ - int down_x, down_y; - float scale_factor; - GLUquadricObj *quadObj; - int trans_mouse_code; - float orig_x, orig_y, orig_z; - int locked; - - int iaction_mouse_down_handler( int local_x, int local_y ); - int iaction_mouse_up_handler( int local_x, int local_y, bool inside ); - int iaction_mouse_held_down_handler( int local_x, int local_y, bool inside ); - int iaction_special_handler( int key, int modifiers ); - void iaction_init( void ) { } - void iaction_draw_active_area_persp( void ); - void iaction_draw_active_area_ortho( void ); - void iaction_dump( FILE *output ); - - void set_speed( float s ) { scale_factor = s; } - - void setup_texture( void ); - void setup_lights( void ); - void draw_2d_arrow( int radius, int filled, int orientation ); - void draw_2d_x_arrows( int radius ); - void draw_2d_y_arrows( int radius ); - void draw_2d_z_arrows( int radius ); - void draw_2d_xy_arrows( int radius ); - - int get_mouse_code( int x, int y ); - - /* Float array is either a single float (for single-axis controls), - or two floats for X and Y (if an XY controller) */ - - float get_z( void ) { return float_array_val[0]; } - float get_x( void ) { return float_array_val[0]; } - float get_y( void ) { - if ( trans_type == GLUI_TRANSLATION_XY ) return float_array_val[1]; - else return float_array_val[0]; - } - - void set_z( float val ); - void set_x( float val ); - void set_y( float val ); - void set_one_val( float val, int index ); - - GLUI_Translation( GLUI_Node *parent, const char *name, - int trans_type, float *live_var=NULL, - int id=-1, GLUI_CB callback=GLUI_CB() ); - GLUI_Translation( void ) { common_init(); } - -protected: - void common_init() { - locked = GLUI_TRANSLATION_LOCK_NONE; - glui_format_str( name, "Translation: %p", this ); - w = GLUI_MOUSE_INTERACTION_WIDTH; - h = GLUI_MOUSE_INTERACTION_HEIGHT; - can_activate = true; - live_type = GLUI_LIVE_FLOAT_ARRAY; - float_array_size = 0; - alignment = GLUI_ALIGN_CENTER; - trans_type = GLUI_TRANSLATION_XY; - scale_factor = 1.0; - quadObj = NULL; - trans_mouse_code = GLUI_TRANSLATION_MOUSE_NONE; - } -}; - -/********** Misc functions *********************/ -int _glutBitmapWidthString( void *font, const char *s ); -void _glutBitmapString( void *font, const char *s ); - -/********** Our own callbacks for glut *********/ -/* These are the callbacks that we pass to glut. They take - some action if necessary, then (possibly) call the user-level - glut callbacks. -*/ - -void glui_display_func( void ); -void glui_reshape_func( int w, int h ); -void glui_keyboard_func(unsigned char key, int x, int y); -void glui_special_func(int key, int x, int y); -void glui_mouse_func(int button, int state, int x, int y); -void glui_motion_func(int x, int y); -void glui_passive_motion_func(int x, int y); -void glui_entry_func(int state); -void glui_visibility_func(int state); -void glui_idle_func(void); - -void glui_parent_window_reshape_func( int w, int h ); -void glui_parent_window_keyboard_func(unsigned char key, int x, int y); -void glui_parent_window_mouse_func(int, int, int, int ); -void glui_parent_window_special_func(int key, int x, int y); - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_add_controls.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_add_controls.cpp deleted file mode 100644 index 9db9293..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_add_controls.cpp +++ /dev/null @@ -1,319 +0,0 @@ -/**************************************************************************** - - GLUI User Interface Toolkit (LGPL) - --------------------------- - - glui_add_controls.cpp - Routines for adding controls to a GLUI window - -Note: these routines are all deprecated. Keeping them all here -prevents the linker from dragging in all the .o files, even for controls -that aren't used. - - -------------------------------------------------- - - Copyright (c) 1998 Paul Rademacher - - WWW: http://sourceforge.net/projects/glui/ - Forums: http://sourceforge.net/forum/?group_id=92496 - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -*****************************************************************************/ - -#include "glui.h" -#include "glui_internal.h" - - -/*********************************** GLUI:: add_checkbox() ************/ - -GLUI_Checkbox *GLUI:: add_checkbox( const char *name, int *value_ptr, - int id, GLUI_CB callback ) -{ - return add_checkbox_to_panel( main_panel, - name, value_ptr, id, callback ); -} - - -/*********************************** GLUI:: add_checkbox_to_panel() **********/ - -GLUI_Checkbox *GLUI::add_checkbox_to_panel( GLUI_Panel *panel, - const char *name, int *value_ptr, - int id, - GLUI_CB callback ) -{ - return new GLUI_Checkbox( panel, name, value_ptr, id, callback ); -} - -/********************************************* GLUI::add_panel() *************/ - -GLUI_Panel *GLUI::add_panel( const char *name, int type ) -{ - return add_panel_to_panel( main_panel, name, type ); -} - - -/**************************************** GLUI::add_panel_to_panel() *********/ - -GLUI_Panel *GLUI::add_panel_to_panel( GLUI_Panel *parent_panel, - const char *name, int type ) -{ - return new GLUI_Panel( parent_panel, name, type ); -} - - -/***************************** GLUI::add_radiogroup() ***************/ - -GLUI_RadioGroup *GLUI::add_radiogroup( int *value_ptr, - int user_id, GLUI_CB callback) -{ - return add_radiogroup_to_panel( main_panel, value_ptr, - user_id, callback ); -} - - -/***************************** GLUI::add_radiogroup_to_panel() ***************/ - -GLUI_RadioGroup *GLUI::add_radiogroup_to_panel( - GLUI_Panel *panel, int *value_ptr, - int user_id, GLUI_CB callback - ) -{ - return new GLUI_RadioGroup( panel, value_ptr, user_id, callback ); -} - - -/***************************** GLUI::add_radiobutton_to_group() *************/ - -GLUI_RadioButton *GLUI::add_radiobutton_to_group( GLUI_RadioGroup *group, - const char *name ) -{ - return new GLUI_RadioButton( group, name ); -} - - -/********************************** GLUI::add_statictext() ************/ - -GLUI_StaticText *GLUI::add_statictext( const char *name ) -{ - return add_statictext_to_panel( main_panel, name ); -} - - -/******************************* GLUI::add_statictext_to_panel() **********/ - -GLUI_StaticText *GLUI::add_statictext_to_panel( GLUI_Panel *panel, - const char *name ) -{ - return new GLUI_StaticText( panel, name ); -} - - -/***************************************** GLUI:: add_button() ************/ - -GLUI_Button *GLUI:: add_button( const char *name, - int id, GLUI_CB callback ) -{ - return add_button_to_panel( main_panel, - name, id, callback ); -} - -/*********************************** GLUI:: add_button_to_panel() **********/ - -GLUI_Button *GLUI::add_button_to_panel( GLUI_Panel *panel, - const char *name, - int id, - GLUI_CB callback ) -{ - return new GLUI_Button( panel, name, id, callback ); -} - -/********************************** GLUI::add_separator() ************/ - -void GLUI::add_separator( void ) -{ - add_separator_to_panel( main_panel ); -} - - -/******************************* GLUI::add_separator_to_panel() **********/ - -void GLUI::add_separator_to_panel( GLUI_Panel *panel ) -{ - new GLUI_Separator( panel ); -} - - -/********************************** GLUI::add_edittext() ************/ - -GLUI_EditText *GLUI::add_edittext( const char *name, - int data_type, void *data, - int id, GLUI_CB callback) -{ - return add_edittext_to_panel( main_panel, name, data_type, data, - id, callback ); -} - - -/******************************* GLUI::add_edittext_to_panel() **********/ - -GLUI_EditText *GLUI::add_edittext_to_panel( GLUI_Panel *panel, - const char *name, - int data_type, void *data, - int id, GLUI_CB callback) -{ - return new GLUI_EditText( panel, name, data_type, data, id, callback ); -} - -/********************************** GLUI::add_edittext() ************/ - -GLUI_EditText *GLUI::add_edittext( const char *name, - GLUI_String & data, - int id, GLUI_CB callback) -{ - return add_edittext_to_panel( main_panel, name, data, id, callback ); -} - - -/******************************* GLUI::add_edittext_to_panel() **********/ - -GLUI_EditText* -GLUI::add_edittext_to_panel( GLUI_Panel *panel, const char *name, - GLUI_String& data, - int id, GLUI_CB callback) -{ - return new GLUI_EditText( panel, name, GLUI_EDITTEXT_STRING, &data, id, callback ); -} - -/********************************** GLUI::add_spinner() ************/ - -GLUI_Spinner *GLUI::add_spinner( const char *name, - int data_type, void *data, - int id, GLUI_CB callback) -{ - return add_spinner_to_panel( main_panel, name, data_type, data, - id, callback ); -} - - -/******************************* GLUI::add_spinner_to_panel() **********/ - -GLUI_Spinner *GLUI::add_spinner_to_panel( - GLUI_Panel *panel, const char *name, - int data_type, void *data, - int id, GLUI_CB callback -) -{ - return new GLUI_Spinner( panel, name, data_type, data, id, callback ); -} - - -/********************************** GLUI::add_column() ************/ - -void GLUI::add_column( int draw_bar ) -{ - add_column_to_panel( main_panel, draw_bar ); -} - - -/******************************* GLUI::add_column_to_panel() **********/ - -void GLUI::add_column_to_panel( GLUI_Panel *panel, int draw_bar ) -{ - new GLUI_Column( panel, draw_bar ); -} - - -/*********************************** GLUI:: add_listbox() ************/ - -GLUI_Listbox *GLUI:: add_listbox( const char *name, int *value_ptr, - int id, GLUI_CB callback ) -{ - return add_listbox_to_panel( main_panel, - name, value_ptr, id, callback ); -} - - -/*********************************** GLUI:: add_listbox_to_panel() **********/ - -GLUI_Listbox *GLUI::add_listbox_to_panel( GLUI_Panel *panel, - const char *name, int *value_ptr, - int id, - GLUI_CB callback ) -{ - return new GLUI_Listbox( panel, name, value_ptr, id, callback ); -} - - -/*********************************** GLUI:: add_rotation() ************/ - -GLUI_Rotation *GLUI:: add_rotation( const char *name, float *value_ptr, - int id, GLUI_CB callback ) -{ - return add_rotation_to_panel( main_panel, name, value_ptr, id, callback ); -} - - -/*********************************** GLUI:: add_rotation_to_panel() **********/ - -GLUI_Rotation *GLUI::add_rotation_to_panel( GLUI_Panel *panel, - const char *name, float *value_ptr, - int id, - GLUI_CB callback ) -{ - return new GLUI_Rotation( panel, name, value_ptr, id, callback ); -} - - -/*********************************** GLUI:: add_translation() ************/ - -GLUI_Translation *GLUI:: add_translation( const char *name, int trans_type, - float *value_ptr, int id, - GLUI_CB callback ) -{ - return add_translation_to_panel( main_panel,name,trans_type, - value_ptr, id, callback ); -} - - -/*********************************** GLUI:: add_translation_to_panel() **********/ - -GLUI_Translation *GLUI::add_translation_to_panel( - GLUI_Panel *panel, const char *name, - int trans_type, float *value_ptr, - int id, GLUI_CB callback - ) -{ - return new GLUI_Translation(panel, name, trans_type, value_ptr, id, callback); -} - - -/********************************** GLUI::add_rollout() **************/ - -GLUI_Rollout *GLUI::add_rollout( const char *name, int open, int type) -{ - return add_rollout_to_panel( main_panel, name, open, type); -} - - -/****************************** GLUI::add_rollout_to_panel() *********/ - -GLUI_Rollout *GLUI::add_rollout_to_panel(GLUI_Panel *panel, const char *name, - int open, int type) -{ - return new GLUI_Rollout( panel, name, open, type ); -} - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_bitmap_img_data.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_bitmap_img_data.cpp deleted file mode 100644 index 6ec7e6d..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_bitmap_img_data.cpp +++ /dev/null @@ -1,138 +0,0 @@ -/** - Bitmaps for all GLUI images. - - These were converted from original PPM images - (mostly lost) with the tools/ppm2array program. - - The images here are extracted in typical OpenGL - bottom-to-top fashion. - - FIXME: don't use greyscale brightness here--this prevents - people changing the background color. Instead, use a code - indicating the underlying purpose of the pixel: - 0 = shadows; outlines; UI elements (check boxes, arrows) - 64 = disabled shadows and UI elements - 128 = shadowing, disabled - 192 = disabled white; background - 255 = highlights; checkbox/radio background - - I'm thinking the way to do this would be to have an -enum { - BG = 0, // Background shines through-- totally alpha transparent - BS, // Background of scrollbar/spin box-- opaque gray - SB, // Shadowed-black element-- strong alpha blend to black - SD, // Shadowed-dark element-- weak alpha blend to black - HL, // Highlight-light-- weak alpha blend to white - HW, // Highlight-white-- strong alpha blend to white - UB, // User-interface black-- arrows, checkboxes, radio buttons - UW, // User-interface white-- backgrounds of checkboxes and radio buttons -}; - - Orion Sky Lawlor, olawlor@acm.org, 2006/05/04 (LGPL) -*/ - -/*----------------------- checkboxes --------------------------*/ -unsigned char glui_img_checkbox_0[] = { 13, 13, /* width, height */ -255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 128, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 255, 128, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 192, 255, 128, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 192, 255, 128, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 192, 255, 128, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 192, 255, 128, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 192, 255, 128, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 192, 255, 128, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 192, 255, 128, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 192, 255, 128, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 192, 255, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 192, 255, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 255, -}; - - -unsigned char glui_img_checkbox_0_dis[] = { 13, 13, /* width, height */ -255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 128, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 255, 128, 64, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 255, 128, 64, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 255, 128, 64, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 255, 128, 64, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 255, 128, 64, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 255, 128, 64, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 255, 128, 64, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 255, 128, 64, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 255, 128, 64, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 255, 128, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 192, 255, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 255, -}; - - -unsigned char glui_img_checkbox_1[] = { 13, 13, /* width, height */ -255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 128, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 255, 128, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 192, 255, 128, 0, 255, 255, 255, 0, 255, 255, 255, 255, 255, 192, 255, 128, 0, 255, 255, 0, 0, 0, 255, 255, 255, 255, 192, 255, 128, 0, 255, 0, 0, 0, 0, 0, 255, 255, 255, 192, 255, 128, 0, 255, 0, 0, 255, 0, 0, 0, 255, 255, 192, 255, 128, 0, 255, 0, 255, 255, 255, 0, 0, 0, 255, 192, 255, 128, 0, 255, 255, 255, 255, 255, 255, 0, 0, 255, 192, 255, 128, 0, 255, 255, 255, 255, 255, 255, 255, 0, 255, 192, 255, 128, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 192, 255, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 192, 255, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 255, -}; - - -unsigned char glui_img_checkbox_1_dis[] = { 13, 13, /* width, height */ -255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 128, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 255, 128, 64, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 255, 128, 64, 192, 192, 192, 64, 192, 192, 192, 192, 192, 192, 255, 128, 64, 192, 192, 64, 64, 64, 192, 192, 192, 192, 192, 255, 128, 64, 192, 64, 64, 64, 64, 64, 192, 192, 192, 192, 255, 128, 64, 192, 64, 64, 192, 64, 64, 64, 192, 192, 192, 255, 128, 64, 192, 64, 192, 192, 192, 64, 64, 64, 192, 192, 255, 128, 64, 192, 192, 192, 192, 192, 192, 64, 64, 192, 192, 255, 128, 64, 192, 192, 192, 192, 192, 192, 192, 64, 192, 192, 255, 128, 64, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 255, 128, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 192, 255, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 255, -}; - - -/*------------------------------- arrows -------------------------------------*/ -unsigned char glui_img_downarrow[] = { 16, 16, /* width, height */ - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 192, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 0, 192, 255, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 128, 0, 192, 255, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 128, 0, 192, 255, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 128, 0, 192, 255, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 128, 0, 192, 255, 192, 192, 192, 192, 192, 0, 192, 192, 192, 192, 192, 192, 128, 0, 192, 255, 192, 192, 192, 192, 0, 0, 0, 192, 192, 192, 192, 192, 128, 0, 192, 255, 192, 192, 192, 0, 0, 0, 0, 0, 192, 192, 192, 192, 128, 0, 192, 255, 192, 192, 0, 0, 0, 0, 0, 0, 0, 192, 192, 192, 128, 0, 192, 255, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 128, 0, 192, 255, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 128, 0, 192, 255, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 128, 0, 192, 255, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 128, 0, 192, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 128, 0, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 0, -}; - - -unsigned char glui_img_leftarrow[] = { 16, 16, /* width, height */ - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 192, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 0, 192, 255, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 128, 0, 192, 255, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 128, 0, 192, 255, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 128, 0, 192, 255, 192, 192, 192, 192, 192, 192, 0, 192, 192, 192, 192, 192, 128, 0, 192, 255, 192, 192, 192, 192, 192, 0, 0, 192, 192, 192, 192, 192, 128, 0, 192, 255, 192, 192, 192, 192, 0, 0, 0, 192, 192, 192, 192, 192, 128, 0, 192, 255, 192, 192, 192, 0, 0, 0, 0, 192, 192, 192, 192, 192, 128, 0, 192, 255, 192, 192, 192, 192, 0, 0, 0, 192, 192, 192, 192, 192, 128, 0, 192, 255, 192, 192, 192, 192, 192, 0, 0, 192, 192, 192, 192, 192, 128, 0, 192, 255, 192, 192, 192, 192, 192, 192, 0, 192, 192, 192, 192, 192, 128, 0, 192, 255, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 128, 0, 192, 255, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 128, 0, 192, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 128, 0, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 0, -}; - -unsigned char glui_img_rightarrow[] = { 16, 16, /* width, height */ - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 192, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 0, 192, 255, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 128, 0, 192, 255, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 128, 0, 192, 255, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 128, 0, 192, 255, 192, 192, 192, 192, 0, 192, 192, 192, 192, 192, 192, 192, 128, 0, 192, 255, 192, 192, 192, 192, 0, 0, 192, 192, 192, 192, 192, 192, 128, 0, 192, 255, 192, 192, 192, 192, 0, 0, 0, 192, 192, 192, 192, 192, 128, 0, 192, 255, 192, 192, 192, 192, 0, 0, 0, 0, 192, 192, 192, 192, 128, 0, 192, 255, 192, 192, 192, 192, 0, 0, 0, 192, 192, 192, 192, 192, 128, 0, 192, 255, 192, 192, 192, 192, 0, 0, 192, 192, 192, 192, 192, 192, 128, 0, 192, 255, 192, 192, 192, 192, 0, 192, 192, 192, 192, 192, 192, 192, 128, 0, 192, 255, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 128, 0, 192, 255, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 128, 0, 192, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 128, 0, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 0, -}; - -unsigned char glui_img_uparrow[] = { 16, 16, /* width, height */ - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 192, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 0, 192, 255, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 128, 0, 192, 255, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 128, 0, 192, 255, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 128, 0, 192, 255, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 128, 0, 192, 255, 192, 192, 0, 0, 0, 0, 0, 0, 0, 192, 192, 192, 128, 0, 192, 255, 192, 192, 192, 0, 0, 0, 0, 0, 192, 192, 192, 192, 128, 0, 192, 255, 192, 192, 192, 192, 0, 0, 0, 192, 192, 192, 192, 192, 128, 0, 192, 255, 192, 192, 192, 192, 192, 0, 192, 192, 192, 192, 192, 192, 128, 0, 192, 255, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 128, 0, 192, 255, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 128, 0, 192, 255, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 128, 0, 192, 255, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 128, 0, 192, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 128, 0, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 0, -}; - -/*------------------ listboxes ---------------------*/ -unsigned char glui_img_listbox_down[] = { 11, 17, /* width, height */ - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 0, 127, 191, 191, 191, 191, 191, 191, 191, 191, 127, 0, 127, 191, 191, 191, 191, 191, 191, 191, 191, 127, 0, 127, 191, 191, 191, 191, 191, 191, 191, 191, 127, 0, 127, 191, 191, 191, 191, 191, 191, 191, 191, 127, 0, 127, 191, 191, 191, 191, 191, 191, 191, 191, 127, 0, 127, 191, 191, 191, 191, 127, 191, 191, 191, 127, 0, 127, 191, 191, 191, 127, 127, 127, 191, 191, 127, 0, 127, 191, 191, 127, 127, 127, 127, 127, 191, 127, 0, 127, 191, 191, 191, 191, 191, 191, 191, 191, 127, 0, 127, 191, 191, 191, 191, 191, 191, 191, 191, 127, 0, 127, 191, 191, 191, 191, 191, 191, 191, 191, 127, 0, 127, 191, 191, 191, 191, 191, 191, 191, 191, 127, 0, 127, 191, 191, 191, 191, 191, 191, 191, 191, 127, 0, 127, 191, 191, 191, 191, 191, 191, 191, 191, 127, 0, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 0, -}; - - -unsigned char glui_img_listbox_up[] = { 11, 17, /* width, height */ - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 127, 127, 127, 127, 127, 127, 127, 127, 127, 0, 191, 255, 191, 191, 191, 191, 191, 191, 191, 127, 0, 191, 255, 191, 191, 191, 191, 191, 191, 191, 127, 0, 191, 255, 191, 191, 191, 191, 191, 191, 191, 127, 0, 191, 255, 191, 191, 191, 191, 191, 191, 191, 127, 0, 191, 255, 191, 191, 191, 191, 191, 191, 191, 127, 0, 191, 255, 191, 191, 191, 0, 191, 191, 191, 127, 0, 191, 255, 191, 191, 0, 0, 0, 191, 191, 127, 0, 191, 255, 191, 0, 0, 0, 0, 0, 191, 127, 0, 191, 255, 191, 191, 191, 191, 191, 191, 191, 127, 0, 191, 255, 191, 191, 191, 191, 191, 191, 191, 127, 0, 191, 255, 191, 191, 191, 191, 191, 191, 191, 127, 0, 191, 255, 191, 191, 191, 191, 191, 191, 191, 127, 0, 191, 255, 191, 191, 191, 191, 191, 191, 191, 127, 0, 191, 255, 255, 255, 255, 255, 255, 255, 255, 127, 0, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 0, -}; - -unsigned char glui_img_listbox_up_dis[] = { 11, 17, /* width, height */ -127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 191, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 191, 255, 191, 191, 191, 191, 191, 191, 191, 127, 127, 191, 255, 191, 191, 191, 191, 191, 191, 191, 127, 127, 191, 255, 191, 191, 191, 191, 191, 191, 191, 127, 127, 191, 255, 191, 191, 191, 191, 191, 191, 191, 127, 127, 191, 255, 191, 191, 191, 191, 191, 191, 191, 127, 127, 191, 255, 191, 191, 191, 254, 191, 191, 191, 127, 127, 191, 255, 191, 191, 127, 127, 254, 191, 191, 127, 127, 191, 255, 191, 127, 127, 127, 127, 254, 191, 127, 127, 191, 255, 191, 191, 191, 191, 191, 191, 191, 127, 127, 191, 255, 191, 191, 191, 191, 191, 191, 191, 127, 127, 191, 255, 191, 191, 191, 191, 191, 191, 191, 127, 127, 191, 255, 191, 191, 191, 191, 191, 191, 191, 127, 127, 191, 255, 191, 191, 191, 191, 191, 191, 191, 127, 127, 191, 255, 255, 255, 255, 255, 255, 255, 255, 127, 127, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 127, -}; - -/*--------------------------- radio buttons -------------------------*/ -unsigned char glui_img_radiobutton_0[] = { 14, 14, /* width, height */ -192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 255, 255, 255, 255, 192, 192, 192, 192, 192, 192, 192, 192, 255, 255, 192, 192, 192, 192, 255, 255, 192, 192, 192, 192, 192, 128, 192, 192, 255, 255, 255, 255, 192, 192, 255, 192, 192, 192, 192, 128, 0, 255, 255, 255, 255, 255, 255, 192, 255, 192, 192, 192, 128, 0, 255, 255, 255, 255, 255, 255, 255, 255, 192, 255, 192, 192, 128, 0, 255, 255, 255, 255, 255, 255, 255, 255, 192, 255, 192, 192, 128, 0, 255, 255, 255, 255, 255, 255, 255, 255, 192, 255, 192, 192, 128, 0, 255, 255, 255, 255, 255, 255, 255, 255, 192, 255, 192, 192, 192, 128, 0, 255, 255, 255, 255, 255, 255, 192, 255, 192, 192, 192, 192, 128, 0, 0, 255, 255, 255, 255, 0, 0, 255, 192, 192, 192, 192, 192, 128, 128, 0, 0, 0, 0, 128, 128, 192, 192, 192, 192, 192, 192, 192, 192, 128, 128, 128, 128, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, -}; - - -unsigned char glui_img_radiobutton_0_dis[] = { 14, 14, /* width, height */ -192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 255, 255, 255, 255, 192, 192, 192, 192, 192, 192, 192, 192, 255, 255, 192, 192, 192, 192, 255, 255, 192, 192, 192, 192, 192, 128, 192, 192, 192, 192, 192, 192, 192, 192, 255, 192, 192, 192, 192, 128, 64, 192, 192, 192, 192, 192, 192, 192, 255, 192, 192, 192, 128, 64, 192, 192, 192, 192, 192, 192, 192, 192, 192, 255, 192, 192, 128, 64, 192, 192, 192, 192, 192, 192, 192, 192, 192, 255, 192, 192, 128, 64, 192, 192, 192, 192, 192, 192, 192, 192, 192, 255, 192, 192, 128, 64, 192, 192, 192, 192, 192, 192, 192, 192, 192, 255, 192, 192, 192, 128, 64, 192, 192, 192, 192, 192, 192, 192, 255, 192, 192, 192, 192, 128, 64, 64, 192, 192, 192, 192, 64, 64, 255, 192, 192, 192, 192, 192, 128, 128, 64, 64, 64, 64, 128, 128, 192, 192, 192, 192, 192, 192, 192, 192, 128, 128, 128, 128, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, -}; - - -unsigned char glui_img_radiobutton_1[] = { 14, 14, /* width, height */ -192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 255, 255, 255, 255, 192, 192, 192, 192, 192, 192, 192, 192, 255, 255, 192, 192, 192, 192, 255, 255, 192, 192, 192, 192, 192, 128, 192, 192, 255, 255, 255, 255, 192, 192, 255, 192, 192, 192, 192, 128, 0, 255, 255, 255, 255, 255, 255, 192, 255, 192, 192, 192, 128, 0, 255, 255, 255, 0, 0, 255, 255, 255, 192, 255, 192, 192, 128, 0, 255, 255, 0, 0, 0, 0, 255, 255, 192, 255, 192, 192, 128, 0, 255, 255, 0, 0, 0, 0, 255, 255, 192, 255, 192, 192, 128, 0, 255, 255, 255, 0, 0, 255, 255, 255, 192, 255, 192, 192, 192, 128, 0, 255, 255, 255, 255, 255, 255, 192, 255, 192, 192, 192, 192, 128, 0, 0, 255, 255, 255, 255, 0, 0, 255, 192, 192, 192, 192, 192, 128, 128, 0, 0, 0, 0, 128, 128, 192, 192, 192, 192, 192, 192, 192, 192, 128, 128, 128, 128, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, -}; - - -unsigned char glui_img_radiobutton_1_dis[] = { 14, 14, /* width, height */ -192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 255, 255, 255, 255, 192, 192, 192, 192, 192, 192, 192, 192, 255, 255, 192, 192, 192, 192, 255, 255, 192, 192, 192, 192, 192, 128, 192, 192, 192, 192, 192, 192, 192, 192, 255, 192, 192, 192, 192, 128, 64, 192, 192, 192, 192, 192, 192, 192, 255, 192, 192, 192, 128, 64, 192, 192, 192, 64, 64, 192, 192, 192, 192, 255, 192, 192, 128, 64, 192, 192, 64, 64, 64, 64, 192, 192, 192, 255, 192, 192, 128, 64, 192, 192, 64, 64, 64, 64, 192, 192, 192, 255, 192, 192, 128, 64, 192, 192, 192, 64, 64, 192, 192, 192, 192, 255, 192, 192, 192, 128, 64, 192, 192, 192, 192, 192, 192, 192, 255, 192, 192, 192, 192, 128, 64, 64, 192, 192, 192, 192, 64, 64, 255, 192, 192, 192, 192, 192, 128, 128, 64, 64, 64, 64, 128, 128, 192, 192, 192, 192, 192, 192, 192, 192, 128, 128, 128, 128, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, 192, -}; - - - -/*----------------- spinners ----------------------------*/ -unsigned char glui_img_spindown_0[] = { 12, 8, /* width, height */ -255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 0, 255, 191, 191, 191, 191, 191, 191, 191, 191, 191, 127, 0, 255, 191, 191, 191, 191, 0, 127, 191, 191, 191, 127, 0, 255, 191, 191, 191, 0, 0, 0, 127, 191, 191, 127, 0, 255, 191, 191, 0, 0, 0, 0, 0, 127, 191, 127, 0, 255, 191, 191, 191, 191, 191, 191, 191, 191, 191, 127, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, -}; - - -unsigned char glui_img_spindown_1[] = { 12, 8, /* width, height */ -255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 127, 191, 191, 191, 191, 191, 191, 191, 191, 191, 255, 0, 127, 191, 191, 191, 191, 191, 191, 191, 191, 191, 255, 0, 127, 191, 191, 191, 127, 0, 191, 191, 191, 191, 255, 0, 127, 191, 191, 127, 0, 0, 0, 191, 191, 191, 255, 0, 127, 191, 127, 0, 0, 0, 0, 0, 191, 191, 255, 0, 127, 191, 191, 191, 191, 191, 191, 191, 191, 191, 255, 0, 127, 127, 127, 127, 127, 127, 127, 127, 127, 191, 255, -}; - - -unsigned char glui_img_spindown_dis[] = { 12, 8, /* width, height */ -255, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 255, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 64, 255, 191, 191, 191, 191, 191, 191, 191, 191, 191, 127, 64, 255, 191, 191, 191, 191, 127, 255, 191, 191, 191, 127, 64, 255, 191, 191, 191, 127, 127, 127, 255, 191, 191, 127, 64, 255, 191, 191, 127, 127, 127, 127, 127, 255, 191, 127, 64, 255, 191, 191, 191, 191, 191, 191, 191, 191, 191, 127, 64, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 64, -}; - - -unsigned char glui_img_spinup_0[] = { 12, 8, /* width, height */ -255, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 0, 255, 191, 191, 191, 191, 191, 191, 191, 191, 191, 127, 0, 255, 191, 191, 0, 0, 0, 0, 0, 127, 191, 127, 0, 255, 191, 191, 191, 0, 0, 0, 127, 191, 191, 127, 0, 255, 191, 191, 191, 191, 0, 127, 191, 191, 191, 127, 0, 255, 191, 191, 191, 191, 191, 191, 191, 191, 191, 127, 0, 255, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, -}; - - -unsigned char glui_img_spinup_1[] = { 12, 8, /* width, height */ - 0, 127, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 127, 191, 191, 191, 191, 191, 191, 191, 191, 191, 255, 0, 127, 191, 127, 0, 0, 0, 0, 0, 191, 191, 255, 0, 127, 191, 191, 127, 0, 0, 0, 191, 191, 191, 255, 0, 127, 191, 191, 191, 127, 0, 191, 191, 191, 191, 255, 0, 127, 191, 191, 191, 191, 191, 191, 191, 191, 191, 255, 0, 127, 127, 127, 127, 127, 127, 127, 127, 127, 191, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, -}; - - -unsigned char glui_img_spinup_dis[] = { 12, 8, /* width, height */ -255, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 64, 255, 191, 191, 191, 191, 191, 191, 191, 191, 191, 127, 64, 255, 191, 191, 127, 127, 127, 127, 127, 255, 191, 127, 64, 255, 191, 191, 191, 127, 127, 127, 255, 191, 191, 127, 64, 255, 191, 191, 191, 191, 127, 255, 191, 191, 191, 127, 64, 255, 191, 191, 191, 191, 191, 191, 191, 191, 191, 127, 64, 255, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 64, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, -}; - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_bitmaps.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_bitmaps.cpp deleted file mode 100644 index d04e9b1..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_bitmaps.cpp +++ /dev/null @@ -1,176 +0,0 @@ -/**************************************************************************** - - GLUI User Interface Toolkit - --------------------------- - - glui_bitmaps.cpp - -Draws the hardcoded images listed in glui_bitmap_img_data with OpenGL. - -FIXME: upload the images to a texture. This will allow them to be: - - Drawn with alpha blending - - Drawn at random sizes and angles onscreen - - Drawn much faster than with glDrawPixels - - -------------------------------------------------- - - Copyright (c) 1998 Paul Rademacher - - WWW: http://sourceforge.net/projects/glui/ - Forums: http://sourceforge.net/forum/?group_id=92496 - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -*****************************************************************************/ - -#include "glui.h" -#include "glui_internal.h" -#include - -/************ Image Bitmap arrays **********/ - -extern unsigned char glui_img_checkbox_0[]; -extern unsigned char glui_img_checkbox_1[]; -extern unsigned char glui_img_radiobutton_0[]; -extern unsigned char glui_img_radiobutton_1[]; -extern unsigned char glui_img_uparrow[]; -extern unsigned char glui_img_downarrow[]; -extern unsigned char glui_img_leftarrow[]; -extern unsigned char glui_img_rightarrow[]; -extern unsigned char glui_img_spinup_0[]; -extern unsigned char glui_img_spinup_1[]; -extern unsigned char glui_img_spindown_0[]; -extern unsigned char glui_img_spindown_1[]; -extern unsigned char glui_img_checkbox_0_dis[]; -extern unsigned char glui_img_checkbox_1_dis[]; -extern unsigned char glui_img_radiobutton_0_dis[]; -extern unsigned char glui_img_radiobutton_1_dis[]; -extern unsigned char glui_img_spinup_dis[]; -extern unsigned char glui_img_spindown_dis[]; -extern unsigned char glui_img_listbox_up[]; -extern unsigned char glui_img_listbox_down[]; -extern unsigned char glui_img_listbox_up_dis[]; - - -// These must be in the same order as the GLUI_STDBITMAP enums from glui.h! -unsigned char *bitmap_arrays[] = { - glui_img_checkbox_0, - glui_img_checkbox_1, - glui_img_radiobutton_0, - glui_img_radiobutton_1, - glui_img_uparrow, - glui_img_downarrow, - glui_img_leftarrow, - glui_img_rightarrow, - glui_img_spinup_0, - glui_img_spinup_1, - glui_img_spindown_0, - glui_img_spindown_1, - glui_img_checkbox_0_dis, - glui_img_checkbox_1_dis, - glui_img_radiobutton_0_dis, - glui_img_radiobutton_1_dis, - glui_img_spinup_dis, - glui_img_spindown_dis, - glui_img_listbox_up, - glui_img_listbox_down, - glui_img_listbox_up_dis, -}; - - -/************************************ GLUI_Bitmap::load_from_array() ********/ - -GLUI_Bitmap::GLUI_Bitmap() -: pixels(NULL), - w(0), - h(0) -{ -} - -GLUI_Bitmap::~GLUI_Bitmap() -{ - if (pixels) - { - free(pixels); - pixels = NULL; - } -} - -/* Create bitmap from greyscale byte array */ -void GLUI_Bitmap::init_grey(unsigned char *array) -{ - w = array[0]; h = array[1]; - pixels = (unsigned char *) malloc(w*h*3); - assert(pixels); - - for(int i = 0; i=0 && i=0 && i=0 && iadd_control( this ); -} - - -/****************************** GLUI_Button::mouse_down_handler() **********/ - -int GLUI_Button::mouse_down_handler( int local_x, int local_y ) -{ - int_val = 1; /** A button always in unpressed before here, so - now we invariably set it to 'depressed' **/ - - currently_inside = true; - redraw(); - - return false; -} - - -/****************************** GLUI_Button::mouse_up_handler() **********/ - -int GLUI_Button::mouse_up_handler( int local_x, int local_y, bool inside ) -{ - set_int_val( 0 ); /** A button always turns off after you press it **/ - - currently_inside = false; - redraw(); - - if ( inside ) { - /*** Invoke the user's callback ***/ - execute_callback(); - } - - return false; -} - - -/****************************** GLUI_Button::mouse_held_down_handler() ******/ - -int GLUI_Button::mouse_held_down_handler( int local_x, int local_y, - bool new_inside) -{ - if (new_inside != currently_inside) { - currently_inside = new_inside; - redraw(); - } - - return false; -} - - -/****************************** GLUI_Button::key_handler() **********/ - -int GLUI_Button::key_handler( unsigned char key,int modifiers ) -{ - return false; -} - -/********************************************** GLUI_Button::draw() **********/ - -void GLUI_Button::draw( int x, int y ) -{ - if (currently_inside) draw_pressed(); - else { - glui->draw_raised_box( 0, 0, w, h ); - draw_text( 0 ); - } -} - - -/************************************** GLUI_Button::draw_pressed() ******/ - -void GLUI_Button::draw_pressed( void ) -{ - glColor3f( 0.0, 0.0, 0.0 ); - - draw_text( 1 ); - - glBegin( GL_LINE_LOOP ); - glVertex2i( 0, 0 ); glVertex2i( w, 0 ); - glVertex2i( w, h ); glVertex2i( 0, h ); - glEnd(); - - glBegin( GL_LINE_LOOP ); - glVertex2i( 1, 1 ); glVertex2i( w-1, 1 ); - glVertex2i( w-1, h-1 ); glVertex2i( 1, h-1 ); - glEnd(); -} - - -/**************************************** GLUI_Button::draw_text() **********/ - -void GLUI_Button::draw_text( int sunken ) -{ - int string_width; - - glColor3ub( glui->bkgd_color.r, glui->bkgd_color.g, glui->bkgd_color.b ); - glDisable( GL_CULL_FACE ); - glBegin( GL_QUADS ); - glVertex2i( 2, 2 ); glVertex2i( w-2, 2 ); - glVertex2i( w-2, h-2 ); glVertex2i( 2, h-2 ); - glEnd(); - - glColor3ub( 0,0,0 ); - - string_width = _glutBitmapWidthString( glui->font, - this->name.c_str() ); - if ( NOT sunken ) { - draw_name( MAX((w-string_width),0)/2, 13); - } - else { - draw_name( MAX((w-string_width),0)/2 + 1, 13 + 1); - } - - if ( active ) { - glEnable( GL_LINE_STIPPLE ); - glLineStipple( 1, 0x5555 ); - - glColor3f( 0., 0., 0. ); - - glBegin( GL_LINE_LOOP ); - glVertex2i( 3, 3 ); glVertex2i( w-3, 3 ); - glVertex2i( w-3, h-3 ); glVertex2i( 3, h-3 ); - glEnd(); - - glDisable( GL_LINE_STIPPLE ); - } -} - - -/************************************** GLUI_Button::update_size() **********/ - -void GLUI_Button::update_size( void ) -{ - int text_size; - - if ( NOT glui ) - return; - - text_size = string_width( name ); - - if ( w < text_size + 16 ) - w = text_size + 16 ; -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_checkbox.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_checkbox.cpp deleted file mode 100644 index 3bf3984..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_checkbox.cpp +++ /dev/null @@ -1,188 +0,0 @@ - -/**************************************************************************** - - GLUI User Interface Toolkit (LGPL) - --------------------------- - - glui_checkbox - GLUI_Checkbox control class - - - -------------------------------------------------- - - Copyright (c) 1998 Paul Rademacher - - WWW: http://sourceforge.net/projects/glui/ - Forums: http://sourceforge.net/forum/?group_id=92496 - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -*****************************************************************************/ - -#include "glui_internal_control.h" - -/****************************** GLUI_Checkbox::GLUI_Checkbox() **********/ - -GLUI_Checkbox::GLUI_Checkbox( GLUI_Node *parent, - const char *name, int *value_ptr, - int id, - GLUI_CB cb ) -{ - common_init(); - - set_ptr_val( value_ptr ); - set_name( name ); - user_id = id; - callback = cb; - - parent->add_control( this ); - - init_live(); -} - -/****************************** GLUI_Checkbox::mouse_down_handler() **********/ - -int GLUI_Checkbox::mouse_down_handler( int local_x, int local_y ) -{ - orig_value = int_val; - int_val = !int_val; - - currently_inside = true; - redraw(); - - return false; -} - - -/****************************** GLUI_Checkbox::mouse_up_handler() **********/ - -int GLUI_Checkbox::mouse_up_handler( int local_x, int local_y, bool inside ) -{ - if ( NOT inside ) { /* undo effect on value */ - int_val = orig_value; - } - else { - set_int_val( int_val ); - - /*** Invoke the callback ***/ - execute_callback(); - } - - return false; -} - - -/****************************** GLUI_Checkbox::mouse_held_down_handler() ******/ - -int GLUI_Checkbox::mouse_held_down_handler( int local_x, int local_y, - bool inside) -{ - /********** Toggle checked and unchecked bitmap if we're entering or - leaving the checkbox area **********/ - if ( inside != currently_inside ) { - int_val = !int_val; - currently_inside = inside; - redraw(); - } - - return false; -} - - -/****************************** GLUI_Checkbox::key_handler() **********/ - -int GLUI_Checkbox::key_handler( unsigned char key,int modifiers ) -{ - return false; -} - - -/****************************** GLUI_Checkbox::draw() **********/ - -void GLUI_Checkbox::draw( int x, int y ) -{ - GLUI_DRAWINGSENTINAL_IDIOM - - if ( int_val != 0 ) { - if ( enabled ) - glui->std_bitmaps.draw( GLUI_STDBITMAP_CHECKBOX_ON, 0, 0 ); - else - glui->std_bitmaps.draw( GLUI_STDBITMAP_CHECKBOX_ON_DIS, 0, 0 ); - } - else { - if ( enabled ) - glui->std_bitmaps.draw( GLUI_STDBITMAP_CHECKBOX_OFF, 0, 0 ); - else - glui->std_bitmaps.draw( GLUI_STDBITMAP_CHECKBOX_OFF_DIS, 0, 0 ); - } - - draw_active_area(); - - draw_name( text_x_offset, 10); -} - -/**************************** GLUI_Checkbox::draw_active_area() **************/ - -void GLUI_Checkbox::draw_active_area( void ) -{ - GLUI_DRAWINGSENTINAL_IDIOM - int text_width, left, right; - - text_width = _glutBitmapWidthString( glui->font, name.c_str() ); - left = text_x_offset-3; - right = left + 7 + text_width; - - if ( active ) { - glEnable( GL_LINE_STIPPLE ); - glLineStipple( 1, 0x5555 ); - glColor3f( 0., 0., 0. ); - } else { - glColor3ub( glui->bkgd_color.r, glui->bkgd_color.g, glui->bkgd_color.b ); - } - - glBegin( GL_LINE_LOOP ); - glVertex2i(left,0); glVertex2i( right,0); - glVertex2i(right,h+1); glVertex2i( left,h+1); - glEnd(); - - glDisable( GL_LINE_STIPPLE ); -} - - -/************************************ GLUI_Checkbox::update_size() **********/ - -void GLUI_Checkbox::update_size( void ) -{ - int text_size; - - if ( NOT glui ) - return; - - text_size = _glutBitmapWidthString( glui->font, name.c_str() ); - - /* if ( w < text_x_offset + text_size + 6 ) */ - w = text_x_offset + text_size + 6 ; -} - - -/********************************* GLUI_Checkbox::set_int_val() **************/ - -void GLUI_Checkbox::set_int_val( int new_val ) -{ - int_val = new_val; - - /*** Update the variable we're (possibly) pointing to ***/ - output_live(true); - redraw(); -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_column.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_column.cpp deleted file mode 100644 index 172d3c1..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_column.cpp +++ /dev/null @@ -1,89 +0,0 @@ -/**************************************************************************** - GLUI User Interface Toolkit - --------------------------- - - glui_column.cpp - GLUI_Column control class - - - -------------------------------------------------- - - Copyright (c) 1998 Paul Rademacher - - WWW: http://sourceforge.net/projects/glui/ - Forums: http://sourceforge.net/forum/?group_id=92496 - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -*****************************************************************************/ - -#include "glui_internal_control.h" - -/******************************** GLUI_Column::GLUI_Column() ************/ - -GLUI_Column::GLUI_Column( GLUI_Node *parent, int draw_bar ) -{ - common_init(); - int_val = draw_bar; /* Whether to draw vertical bar or not */ - - parent->add_control( this ); -} - -/**************************************** GLUI_Column::draw() ************/ - -void GLUI_Column::draw( int x, int y ) -{ - int panel_x, panel_y, panel_w, panel_h, panel_x_off, panel_y_off; - int y_diff; - - if ( int_val == 1 ) { /* Draw a vertical bar */ - GLUI_DRAWINGSENTINAL_IDIOM - if ( parent() != NULL ) { - get_this_column_dims(&panel_x, &panel_y, &panel_w, &panel_h, - &panel_x_off, &panel_y_off); - - y_diff = y_abs - panel_y; - - if ( 0 ) { - glLineWidth(1.0); - glBegin( GL_LINES ); - glColor3f( .5, .5, .5 ); - glVertex2i( -GLUI_XOFF+1, -y_diff + GLUI_SEPARATOR_HEIGHT/2 ); - glVertex2i( -GLUI_XOFF+1, -y_diff + panel_h - GLUI_SEPARATOR_HEIGHT/2); - - glColor3f( 1.0, 1.0, 1.0 ); - glVertex2i( -GLUI_XOFF+2, -y_diff + GLUI_SEPARATOR_HEIGHT/2 ); - glVertex2i( -GLUI_XOFF+2, -y_diff + panel_h - GLUI_SEPARATOR_HEIGHT/2); - glEnd(); - } - else { - glLineWidth(1.0); - glBegin( GL_LINES ); - glColor3f( .5, .5, .5 ); - glVertex2i( -2, 0 ); - glVertex2i( -2, h ); - /*glVertex2i( 0, -y_diff + GLUI_SEPARATOR_HEIGHT/2 ); */ - /*glVertex2i( 0, -y_diff + panel_h - GLUI_SEPARATOR_HEIGHT/2); */ - - glColor3f( 1.0, 1.0, 1.0 ); - glVertex2i( -1, 0 ); - glVertex2i( -1, h ); - /*glVertex2i( 1, -y_diff + GLUI_SEPARATOR_HEIGHT/2 ); */ - /*glVertex2i( 1, -y_diff + panel_h - GLUI_SEPARATOR_HEIGHT/2); */ - glEnd(); - } - } - } -} - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_commandline.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_commandline.cpp deleted file mode 100644 index e98c2e1..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_commandline.cpp +++ /dev/null @@ -1,197 +0,0 @@ -/**************************************************************************** - - GLUI User Interface Toolkit - --------------------------- - - glui_commandline.cpp - GLUI_CommandLine control class - - - -------------------------------------------------- - - Copyright (c) 1998 Paul Rademacher, 2005 William Baxter - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as - published by the Free Software Foundation; either version 2.1 of the - License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, but - WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 - USA - - This program is -not- in the public domain. - -*****************************************************************************/ - -#include "glui.h" -#include "glui_internal.h" - -/****************************** GLUI_CommandLine::GLUI_CommandLine() **********/ -GLUI_CommandLine::GLUI_CommandLine( GLUI_Node *parent, const char *name, - void *data, int id, GLUI_CB cb ) -{ - common_init(); - set_name( name ); - - data_type = GLUI_EDITTEXT_TEXT; - ptr_val = data; - user_id = id; - callback = cb; - - live_type = GLUI_LIVE_TEXT; - - parent->add_control( this ); - - init_live(); -} - -/****************************** GLUI_CommandLine::key_handler() **********/ - -int GLUI_CommandLine::key_handler( unsigned char key,int modifiers ) -{ - int ret; - - if ( NOT glui ) - return false; - - if ( debug ) - dump( stdout, "-> CMD_TEXT KEY HANDLER" ); - - if ( key == 13 ) { /* RETURN */ - commit_flag = true; - } - - ret = Super::key_handler( key, modifiers ); - - if ( debug ) - dump( stdout, "<- CMD_TEXT KEY HANDLER" ); - - return ret; -} - - -/****************************** GLUI_CommandLine::deactivate() **********/ - -void GLUI_CommandLine::deactivate( void ) -{ - // if the commit_flag is set, add the current command to - // history and call deactivate as normal - - // Trick deactivate into calling callback if and only if commit_flag set. - // A bit subtle, but deactivate checks that orig_text and text - // are the same to decide whether or not to call the callback. - // Force them to be different for commit, and the same for no commit. - if (commit_flag) { - add_to_history(text.c_str()); - orig_text = ""; - Super::deactivate( ); - set_text( "" ); - commit_flag = false; - } - else { - orig_text = text; - } -} - -/**************************** GLUI_CommandLine::special_handler() **********/ - -int GLUI_CommandLine::special_handler( int key,int modifiers ) -{ - if ( NOT glui ) - return false; - - if ( debug ) - printf( "CMD_TEXT SPECIAL:%d - mod:%d subs:%d/%d ins:%d sel:%d/%d\n", - key, modifiers, substring_start, substring_end,insertion_pt, - sel_start, sel_end ); - - if ( key == GLUT_KEY_UP ) // PREVIOUS HISTORY - { - scroll_history(-1); - } - else if ( key == GLUT_KEY_DOWN ) // NEXT HISTORY - { - scroll_history(+1); - } - else { - return Super::special_handler( key, modifiers ); - } - return false; -} - - - -/**************************** GLUI_CommandLine::scroll_history() ********/ - -void GLUI_CommandLine::scroll_history( int direction ) -{ - recall_history(curr_hist + direction); -} - -/**************************** GLUI_CommandLine::recall_history() ********/ - -void GLUI_CommandLine::recall_history( int hist_num ) -{ - if (hist_num < oldest_hist OR - hist_num > newest_hist OR - hist_num == curr_hist) - return; - - // Commit the current text first before we blow it away! - if (curr_hist == newest_hist) { - get_history_str(newest_hist) = text; - } - - curr_hist = hist_num; - set_text(get_history_str(curr_hist)); - sel_end = sel_start = insertion_pt = (int)text.length(); - update_and_draw_text(); -} - -/**************************** GLUI_CommandLine::add_to_history() ********/ - -void GLUI_CommandLine::add_to_history( const char *cmd ) -{ - if (cmd[0]=='\0') return; // don't add if it's empty - - curr_hist = newest_hist; - get_history_str(newest_hist) = text; - - newest_hist = ++curr_hist; - if ( newest_hist >= HIST_SIZE ) - { - // bump oldest off the list - hist_list.erase(hist_list.begin()); - hist_list.push_back(""); - - oldest_hist++; - } -} - -/**************************** GLUI_CommandLine::reset_history() ********/ - -void GLUI_CommandLine::reset_history( void ) -{ - oldest_hist = newest_hist = curr_hist = 0; -} - - - -/*************************************** GLUI_CommandLine::dump() **************/ - -void GLUI_CommandLine::dump( FILE *out, const char *name ) -{ - fprintf( out, - "%s (commandline@%p): ins_pt:%d subs:%d/%d sel:%d/%d len:%d\n", - name, this, - insertion_pt, substring_start, substring_end, sel_start, sel_end, - (int)text.length()); -} - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_control.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_control.cpp deleted file mode 100644 index 056916f..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_control.cpp +++ /dev/null @@ -1,1203 +0,0 @@ -/**************************************************************************** - - GLUI User Interface Toolkit - --------------------------- - - glui_control.cpp - top-level GLUI_Control class - - - -------------------------------------------------- - - Copyright (c) 1998 Paul Rademacher - - WWW: http://sourceforge.net/projects/glui/ - Forums: http://sourceforge.net/forum/?group_id=92496 - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -*****************************************************************************/ - -#include "glui_internal_control.h" - -int _glui_draw_border_only = 0; - -/*************************** Drawing Utility routines *********************/ - -/* Redraw this control. */ -void GLUI_Control::redraw(void) { - if (glui==NULL || hidden) return; - if (glui->should_redraw_now(this)) - translate_and_draw_front(); -} - -/** Redraw everybody in our window. */ -void GLUI_Control::redraw_window(void) { - if (glui==NULL || hidden) return; - if ( glui->get_glut_window_id() == -1 ) return; - int orig = set_to_glut_window(); - glutPostRedisplay(); - restore_window(orig); -} - - - -/* GLUI_Control::translate_and_draw_front() ********/ - -void GLUI_Control::translate_and_draw_front() -{ - GLUI_DRAWINGSENTINAL_IDIOM - - glMatrixMode( GL_MODELVIEW ); - glPushMatrix(); - translate_to_origin(); - draw(0,0); - glPopMatrix(); -} - - -/********** GLUI_Control::set_to_bkgd_color() ********/ - -void GLUI_Control::set_to_bkgd_color( void ) -{ - if ( NOT glui ) - return; - - glColor3ub( glui->bkgd_color.r, glui->bkgd_color.g, glui->bkgd_color.b ); -} - -/******** GLUI_Control::draw_box_inwards_outline() ********/ - -void GLUI_Control::draw_box_inwards_outline( int x_min, int x_max, int y_min, int y_max ) -{ - glBegin( GL_LINES ); - glColor3f( .5, .5, .5 ); - glVertex2i( x_min, y_min ); glVertex2i( x_max, y_min ); - glVertex2i( x_min, y_min ); glVertex2i( x_min, y_max ); - - glColor3f( 1., 1., 1. ); - glVertex2i( x_min, y_max ); glVertex2i( x_max, y_max ); - glVertex2i( x_max, y_max ); glVertex2i( x_max, y_min ); - - if ( enabled ) - glColor3f( 0., 0., 0. ); - else - glColor3f( .25, .25, .25 ); - - glVertex2i( x_min+1, y_min+1 ); glVertex2i( x_max-1, y_min+1 ); - glVertex2i( x_min+1, y_min+1 ); glVertex2i( x_min+1, y_max-1 ); - - glColor3f( .75, .75, .75 ); - glVertex2i( x_min+1, y_max-1 ); glVertex2i( x_max-1, y_max-1 ); - glVertex2i( x_max-1, y_max-1 ); glVertex2i( x_max-1, y_min+1 ); - glEnd(); -} - - -/******* GLUI_Control::draw_box() **********/ - -void GLUI_Control::draw_box( int x_min, int x_max, int y_min, int y_max, float r, float g, float b) -{ - if ( r == 1.0 AND g == 1.0 AND b == 1.0 AND NOT enabled AND glui ) { - draw_bkgd_box( x_min, x_max, y_min, y_max ); - return; - } - - glColor3f( r, g, b ); - glBegin( GL_QUADS ); - glVertex2i( x_min, y_min ); glVertex2i( x_max, y_min ); - glVertex2i( x_max, y_max ); glVertex2i( x_min, y_max ); - glEnd(); -} - - -/******* GLUI_Control::draw_bkgd_box() **********/ - -void GLUI_Control::draw_bkgd_box( int x_min, int x_max, int y_min, int y_max ) -{ - set_to_bkgd_color(); - - glBegin( GL_QUADS ); - glVertex2i( x_min, y_min ); glVertex2i( x_max, y_min ); - glVertex2i( x_max, y_max ); glVertex2i( x_min, y_max ); - glEnd(); -} - - -/**** GLUI_Control::draw_active_area() ********/ - -void GLUI_Control::draw_active_box( int x_min, int x_max, int y_min, int y_max ) -{ - GLUI_DRAWINGSENTINAL_IDIOM - - if ( active ) { - glEnable( GL_LINE_STIPPLE ); - glLineStipple( 1, 0x5555 ); - glColor3f( 0., 0., 0. ); - } else { - set_to_bkgd_color(); - } - - glBegin( GL_LINE_LOOP ); - glVertex2i(x_min, y_min); glVertex2i( x_max, y_min ); - glVertex2i(x_max, y_max); glVertex2i( x_min, y_max ); - glEnd(); - - glDisable( GL_LINE_STIPPLE ); -} - - -/**** GLUI_Control::draw_emboss_box() ********/ - -void GLUI_Control::draw_emboss_box(int x_min,int x_max,int y_min,int y_max) -{ - glLineWidth( 1.0 ); - glColor3f( 1.0, 1.0, 1.0 ); - - glBegin( GL_LINE_LOOP ); - glVertex2i( x_min, y_min ); glVertex2i( x_max, y_min ); - glVertex2i( x_max, y_max ); glVertex2i( x_min, y_max ); - glEnd(); - - glBegin( GL_LINE_LOOP ); - glVertex2i( x_min+1, y_min+1 ); glVertex2i( x_max-1, y_min+1 ); - glVertex2i( x_max-1, y_max-1 ); glVertex2i( x_min+1, y_max-1 ); - glEnd(); - - glColor3f( .5, .5, .5 ); - glBegin( GL_LINE_LOOP ); - glVertex2i( x_min, y_min ); - glVertex2i( x_max-1, y_min ); - glVertex2i( x_max-1, y_max-1 ); - glVertex2i( x_min, y_max-1 ); - glEnd(); -} - - - -/******* GLUT_Control::draw_recursive() **********/ - -void GLUI_Control::draw_recursive( int x, int y ) -{ - GLUI_Control *node; - - /* printf( "%s %d\n", this->name.c_str(), this->hidden );*/ - if ( NOT can_draw() ) - return; - - /*if ( 1 ) { -- Debugging to check control width - glColor3f( 1.0, 0.0, 0.0 ); - glBegin( GL_LINES ); - glVertex2i( x_abs, y_abs );00 - glVertex2i( x_abs+w, y_abs ); - - glEnd(); - }*/ - - glMatrixMode( GL_MODELVIEW ); - glPushMatrix(); - - glTranslatef( (float) this->x_abs + .5, - (float) this->y_abs + .5, - 0.0 ); - - if ( NOT _glui_draw_border_only ) { - if ( NOT strcmp( name.c_str(), "Rollout" ) ) { - } - - this->draw( this->x_off, this->y_off_top ); - } - else - { - if ( dynamic_cast(this) ) { - /* printf( "%s w/h: %d/%d\n", (char*) name, w, h ); */ - /*w = 2; */ - } - - /* The following draws the area of each control */ - glColor3f( 1.0, 0.0, 0.0 ); - glBegin( GL_LINE_LOOP ); - glVertex2i( 0, 0 ); glVertex2i( w, 0 ); - glVertex2i( w, h ); glVertex2i( 0, h ); - glEnd(); - } - glPopMatrix(); - - node = (GLUI_Control*) first_child(); - while( node ) { - node->draw_recursive( node->x_abs, node->y_abs ); - node = (GLUI_Control*) node->next(); - } -} - - -/****** GLUI_Control::set_to_glut_window() *********/ -/* Sets the current window to the glut window associated with this control */ - -int GLUI_Control::set_to_glut_window() -{ - int orig_window; - - if ( NOT glui) - return 1; - - orig_window = glutGetWindow(); - - glutSetWindow( glui->get_glut_window_id()); - - return orig_window; -} - - -/********** GLUI_Control::restore_window() *********/ - -void GLUI_Control::restore_window(int orig) -{ - if ( orig > 0 ) - glutSetWindow( orig ); -} - - - -/****************************** Text ***************************/ - -/*************** GLUI_Control::set_font() **********/ - -void GLUI_Control::set_font(void *new_font) -{ - font = new_font; - redraw(); -} - - -/********** GLUI_Control::draw_string() ************/ - -void GLUI_Control::draw_string( const char *text ) -{ - _glutBitmapString( get_font(), text ); -} - - -/**************** GLUI_Control::draw_char() ********/ - -void GLUI_Control::draw_char(char c) -{ - glutBitmapCharacter( get_font(), c ); -} - - -/*********** GLUI_Control::string_width() **********/ - -int GLUI_Control::string_width(const char *text) -{ - return _glutBitmapWidthString( get_font(), text ); -} - - -/************* GLUI_Control::char_width() **********/ - -int GLUI_Control::char_width(char c) -{ /* Hash table for faster character width lookups - JVK - Speeds up the textbox a little bit. - */ - int hash_index = c % CHAR_WIDTH_HASH_SIZE; - if (char_widths[hash_index][0] != c) { - char_widths[hash_index][0] = c; - char_widths[hash_index][1] = glutBitmapWidth( get_font(), c ); - } - return char_widths[hash_index][1]; -} - - -/*************** GLUI_Control::get_font() **********/ - -void *GLUI_Control::get_font( void ) -{ - /*** Does this control have its own font? ***/ - if ( this->font != NULL ) - return this->font; - - /*** Does the parent glui have a font? ***/ - if ( glui ) - return glui->font; - - /*** Return the default font ***/ - return GLUT_BITMAP_HELVETICA_12; -} - - -/************* GLUI_Control::draw_name() ***********/ -/* This draws the name of the control as either black (if enabled), or */ -/* embossed if disabled. */ - -void GLUI_Control::draw_name(int x, int y) -{ - if ( NOT can_draw() ) - return; - - if ( enabled ) - { - set_to_bkgd_color(); - glRasterPos2i(x+1, y+1); - draw_string(name); - glColor3b( 0, 0, 0 ); - glRasterPos2i(x, y); - draw_string(name); - } - else - { /* Control is disabled - emboss the string */ - glColor3f( 1.0f, 1.0f, 1.0f ); - glRasterPos2i(x+1, y+1); - draw_string(name); - glColor3f( .4f, .4f, .4f ); - glRasterPos2i(x, y); - draw_string(name); - } -} - - -/**************************** Layout and Packing *********************/ - -/****** GLUI_Control::align() **************/ - -void GLUI_Control::align() -{ - int col_x, col_y, col_w, col_h, col_x_off, col_y_off; - int orig_x_abs; - - orig_x_abs = x_abs; - - /* Fix alignment bug relating to columns */ - /*return; */ - - if ( NOT parent() ) - return; /* Clearly this shouldn't happen, though */ - - get_this_column_dims(&col_x, &col_y, &col_w, &col_h, - &col_x_off, &col_y_off); - - if ( dynamic_cast(this) ) { - /* if ( this->prev() != NULL ) { - ((GLUI_Control*)prev())->get_this_column_dims(&col_x, &col_y, &col_w, &col_h, - &col_x_off, &col_y_off); - - x_abs = col_x + col_w; - } - else { - x_abs = ((GLUI_Control*)parent())->x_abs; - } - */ - return; - } - - if ( alignment == GLUI_ALIGN_LEFT ) { - x_abs = col_x + col_x_off; - } - else if ( alignment == GLUI_ALIGN_RIGHT ) { - x_abs = col_x + col_w - col_x_off - this->w; - } - else if ( alignment == GLUI_ALIGN_CENTER ) { - x_abs = col_x + (col_w - this->w) / 2; - } - - if ( this->is_container ) { - /*** Shift all child columns ***/ - int delta = x_abs - orig_x_abs; - - GLUI_Control *node; - - node = (GLUI_Control*) this->first_child(); - while( node != NULL ) { - if ( dynamic_cast(node) ) { - node->x_abs += delta; - } - - node = (GLUI_Control*) node->next(); - } - } - -} - - -/************** GLUI_Control::pack() ************/ -/* Recalculate positions and offsets */ - -void GLUI_Control::pack_old(int x, int y) -{ - GLUI_Control *node; - int max_w, curr_y, curr_x, max_y; - int x_in = x, y_in =y; - int x_margin, y_margin_top, y_margin_bot; - int y_top_column; - int column_x; - GLUI_Column *curr_column = NULL; - this->update_size(); - x_margin = this->x_off; - y_margin_top = this->y_off_top; - y_margin_bot = this->y_off_bot; - this->x_abs = x_in; - this->y_abs = y_in; - max_w = -1; - max_y = -1; - curr_x = this->x_abs + x_margin; - curr_y = this->y_abs + y_margin_top; - /*** Record start of this set of columns ***/ - y_top_column = curr_y; - column_x = 0; - if ( this == glui->main_panel ) { - x=x; - } - /*** Iterate over children, packing them first ***/ - node = (GLUI_Control*) this->first_child(); - while( node != NULL ) { - if ( dynamic_cast(node) && !node->collapsible) { - /* Pad some space above fixed size panels */ - curr_y += GLUI_ITEMSPACING; - } - else if ( dynamic_cast(node)) { - curr_column = (GLUI_Column*) node; - if ( 1 ) { - column_x += max_w + 2 * x_margin; - curr_x += max_w + 2 * x_margin; - } - else { - column_x += max_w + 0 * x_margin; - curr_x += max_w + 0 * x_margin; - } - /*node->pack( curr_x, curr_y ); */ - node->x_abs = curr_x; - node->y_abs = y_top_column; - node->w = 2; - node->h = curr_y - y_top_column; - curr_x += x_margin * 3 + 40; - curr_y = y_top_column; - max_w = 0; - node = (GLUI_Control*) node->next(); - continue; - } - node->pack( curr_x, curr_y ); - if ( dynamic_cast(node) && !node->collapsible) - /* Pad some space below fixed size panels */ - curr_y += GLUI_ITEMSPACING; - curr_y += node->h; - if ( node->w > max_w ) { - max_w = node->w; - if ( curr_column != NULL ) - curr_column->w = max_w; - } - node = (GLUI_Control*) node->next(); - if ( node ) { - curr_y += GLUI_ITEMSPACING; - } - if ( curr_y > max_y ) - max_y = curr_y; - } - if ( this->is_container ) { - max_y += y_margin_bot; /*** Add bottom border inside box */ - if ( this->first_child() ) { - if ( dynamic_cast(this) ) { - /** We don't want the rollout to shrink in width when it's - closed **/ - this->w = MAX(this->w, column_x + max_w + 2 * x_margin ); - } - else { - this->w = column_x + max_w + 2 * x_margin; - } - this->h = (max_y - y_in); - } - else { /* An empty container, so just assign default w & h */ - this->w = GLUI_DEFAULT_CONTROL_WIDTH; - this->h = GLUI_DEFAULT_CONTROL_HEIGHT; - } - /** Expand panel if necessary (e.g., to include all the text in - a panel label) **/ - this->update_size(); - } -} - -/*** GLUI_Control::get_this_column_dims() **********/ -/* Gets the x,y,w,h,and x/y offsets of the column to which a control belongs */ - -void GLUI_Control::get_this_column_dims( int *col_x, int *col_y, - int *col_w, int *col_h, - int *col_x_off, int *col_y_off ) -{ - GLUI_Control *node, *parent_ptr; - int parent_h, parent_y_abs; - - parent_ptr = (GLUI_Control*) parent(); - - if ( parent_ptr==NULL ) - return; - - parent_h = parent_ptr->h; - parent_y_abs = parent_ptr->y_abs; - - if ( dynamic_cast(parent_ptr) AND - parent_ptr->int_val == GLUI_PANEL_EMBOSSED AND - parent_ptr->name != "" ) { - parent_h -= GLUI_PANEL_EMBOSS_TOP; - parent_y_abs += GLUI_PANEL_EMBOSS_TOP; - } - - if ( 0 ) { - GLUI_Node *first, *last, *curr; - - /** Look for first control in this column **/ - first = this; - while (first->prev() AND !dynamic_cast(first->prev()) ) - first = first->prev(); - - /** Look for last control in this column **/ - last = this; - while ( last->next() AND !dynamic_cast(first->next()) ) - last = last->next(); - - curr = first; - int max_w = -1; - do { - if ( ((GLUI_Control*)curr)->w > max_w ) - max_w = ((GLUI_Control*)curr)->w; - - if ( curr == last ) - break; - - curr = curr->next(); - } while( curr != NULL ); - - *col_x = ((GLUI_Control*)first)->x_abs; - *col_y = ((GLUI_Control*)first)->y_abs; - *col_w = max_w; - if ( parent() ) { - *col_h = ((GLUI_Control*)parent())->h; - *col_x_off = ((GLUI_Control*)parent())->x_off; - } - else { - *col_h = 10; - *col_x_off = 0; - } - *col_y_off = 0; - - return; - } - - if ( 1 ) { /* IS THIS WRONG? */ - /*** Look for preceding column ***/ - node = (GLUI_Control*) this->prev(); - while( node ) { - if ( dynamic_cast(node) ) { - *col_x = node->x_abs; - *col_y = parent_y_abs; - *col_w = node->w; - *col_h = parent_h; - *col_x_off = node->x_off; - *col_y_off = 0; - - return; - } - - node = (GLUI_Control*) node->prev(); - } - - /*** Nope, Look for next column ***/ - node = (GLUI_Control*) this->next(); - while( node ) { - if ( dynamic_cast(node) ) { - *col_x = parent_ptr->x_abs; - *col_y = parent_y_abs; - *col_w = node->x_abs - parent_ptr->x_abs; - *col_h = parent_h; - *col_x_off = node->x_off; - *col_y_off = 0; - - return; - } - - node = (GLUI_Control*) node->next(); - } - - /*** This is single-column panel, so return panel dims ***/ - *col_x = parent_ptr->x_abs; - *col_y = parent_y_abs; - *col_w = parent_ptr->w; - *col_h = parent_h; - *col_x_off = parent_ptr->x_off; - *col_y_off = 0; - } -} - - -void GLUI_Control::pack( int x, int y ) -{ - GLUI_Control *node; - int max_w, curr_y, curr_x, max_y; - int x_in = x, y_in =y; - int x_margin, y_margin_top, y_margin_bot; - int y_top_column; - int column_x; - GLUI_Column *curr_column = NULL; - - this->update_size(); - - x_margin = this->x_off; - y_margin_top = this->y_off_top; - y_margin_bot = this->y_off_bot; - - this->x_abs = x_in; - this->y_abs = y_in; - - max_w = 0; - max_y = 0; - curr_x = this->x_abs + x_margin; - curr_y = this->y_abs + y_margin_top; - - /*** Record start of this set of columns ***/ - - y_top_column = curr_y; - column_x = curr_x; - - /*** Iterate over children, packing them first ***/ - - node = (GLUI_Control*) this->first_child(); - while( node != NULL ) { - if ( dynamic_cast(node) && !node->collapsible) { - /* Pad some space above fixed-size panels */ - curr_y += GLUI_ITEMSPACING; - } - else if ( dynamic_cast(node) ) { - curr_column = (GLUI_Column*) node; - curr_x += max_w + 1 * x_margin; - column_x = curr_x; - - node->x_abs = curr_x; - node->y_abs = y_top_column; - node->w = 2; - node->h = curr_y - y_top_column; - - curr_x += x_margin * 1; - curr_y = y_top_column; - max_w = 0; - - node = (GLUI_Control*) node->next(); - continue; - } - - node->pack( curr_x, curr_y ); - - if ( dynamic_cast(node) && !node->collapsible) - /* Pad some space below fixed-size panels */ - curr_y += GLUI_ITEMSPACING; - - curr_y += node->h; - - if ( node->w > max_w ) { - max_w = node->w; - if ( curr_column != NULL ) - curr_column->w = max_w + x_margin; - } - - if ( curr_y > max_y ) { - max_y = curr_y; - if ( curr_column != NULL ) - curr_column->h = max_y - y_top_column; - } - - node = (GLUI_Control*) node->next(); - - if ( node ) { - curr_y += GLUI_ITEMSPACING; - } - - } - - if ( this->is_container ) { - max_y += y_margin_bot; /*** Add bottom border inside box */ - - if ( this->first_child() ) { - this->w = column_x + max_w + 2 * x_margin - x_in; - this->h = (max_y - y_in); - } - else { /* An empty container, so just assign default w & h */ - if ( !dynamic_cast(this) && - !dynamic_cast(this) ) { - this->w = GLUI_DEFAULT_CONTROL_WIDTH; - this->h = GLUI_DEFAULT_CONTROL_HEIGHT; - } - } - - /** Expand panel if necessary (e.g., to include all the text in - a panel label) **/ - this->update_size(); - - - /*** Now we step through the GLUI_Columns, setting the 'h' ***/ - node = (GLUI_Control*) this->first_child(); - while( node != NULL ) { - if ( dynamic_cast(node) ) { - node->h = this->h - y_margin_bot - y_margin_top; - } - - node = (GLUI_Control*) node->next(); - } - } -} - - - -/******************************** Live Variables **************************/ -/*********** GLUI_Control::sync_live() ************/ -/* Reads live variable and sets control to its current value */ -/* This function is recursive, and operates on control's children */ - -void GLUI_Control::sync_live(int recurse, int draw_it) -{ - GLUI_Node *node; - int sync_it=true; - int i; - float *fp; - bool changed = false; - - /*** If this is currently active control, and mouse button is down, - don't sync ***/ - if ( glui ) - { - if ( this == glui->active_control AND glui->mouse_button_down ) - sync_it = false; - - /*** Actually, just disable syncing if button is down ***/ - /*** Nope, go ahead and sync if mouse is down - this allows syncing in - callbacks ***/ - if ( 0 ) { /* THIS CODE BELOW SHOULD NOT BE EXECUTED */ - if ( glui->mouse_button_down ) { - /* printf( "Can't sync\n" ); */ - return; - } - } - } - - /*** If this control has a live variable, we check its current value - against the stored value in the control ***/ - - if ( ptr_val != NULL ) { - if ( live_type == GLUI_LIVE_NONE OR NOT sync_it ) { - } - else if ( live_type == GLUI_LIVE_INT ) { - if ( *((int*)ptr_val) != last_live_int ) { - set_int_val( *((int*)ptr_val) ); - last_live_int = *((int*)ptr_val); - changed = true; - } - } - else if ( live_type == GLUI_LIVE_FLOAT ) { - if ( *((float*)ptr_val) != last_live_float ) { - set_float_val( *((float*)ptr_val) ); - last_live_float = *((float*)ptr_val); - changed = true; - } - } - else if ( live_type == GLUI_LIVE_TEXT ) { - if ( last_live_text.compare((const char*)ptr_val) != 0 ) { - set_text( (char*) ptr_val ); - last_live_text = (const char*)ptr_val; - changed = true; - } - } - else if ( live_type == GLUI_LIVE_STRING ) { - if ( last_live_text.compare(((std::string*) ptr_val)->c_str()) != 0 ) { - set_text( ((std::string*) ptr_val)->c_str()); - last_live_text = *((std::string*) ptr_val); - changed = true; - } - } - else if ( live_type == GLUI_LIVE_FLOAT_ARRAY ) { - /*** Step through the arrays, and see if they're the same ***/ - - fp = (float*) ptr_val; - for ( i=0; ifirst_child(); - while( node ) { - ((GLUI_Control*) node)->sync_live(true, true); - node = node->next(); - } - - if ( collapsible == true AND is_open == false ) { - /** Here we have a collapsed control (e.g., a rollout that is closed **/ - /** We need to go in and sync all the collapsed controls inside **/ - - node = this->collapsed_node.first_child(); - while( node ) { - ((GLUI_Control*) node)->sync_live(true, false); - node = node->next(); - } - } - } -} - - -/********** GLUI_Control::output_live() ************/ -/* Writes current value of control to live variable. */ - -void GLUI_Control::output_live(int update_main_gfx) -{ - int i; - float *fp; - - if ( ptr_val == NULL ) - return; - - if ( NOT live_inited ) - return; - - if ( live_type == GLUI_LIVE_NONE ) { - } - else if ( live_type == GLUI_LIVE_INT ) { - *((int*)ptr_val) = int_val; - last_live_int = int_val; - } - else if ( live_type == GLUI_LIVE_FLOAT ) { - *((float*)ptr_val) = float_val; - last_live_float = float_val; - } - else if ( live_type == GLUI_LIVE_TEXT ) { - strncpy( (char*) ptr_val, text.c_str(), text.length()+1); - last_live_text = text; - } - else if ( live_type == GLUI_LIVE_STRING ) { - (*(std::string*)ptr_val)= text.c_str(); - last_live_text = text; - } - else if ( live_type == GLUI_LIVE_FLOAT_ARRAY ) { - fp = (float*) ptr_val; - - for( i=0; iglui != NULL ) { - this->glui->post_update_main_gfx(); - } -} - - -/****** GLUI_Control::execute_callback() **********/ - -void GLUI_Control::execute_callback() -{ - int old_window; - - old_window = glutGetWindow(); - - if ( glui AND glui->main_gfx_window_id != -1 ) - glutSetWindow( glui->main_gfx_window_id ); - - this->callback( this ); -// if ( this->callback ) -// this->callback( this->user_id ); - - glutSetWindow( old_window ); -} - - -/************** GLUI_Control::init_live() **********/ -/* Reads in value of a live variable. Called once, when ctrl is created */ - -void GLUI_Control::init_live() -{ - int i; - float *fp; - - if ( ptr_val == NULL ) - return; - - if ( live_type == GLUI_LIVE_NONE ) { - } - else if ( live_type == GLUI_LIVE_INT ) { - set_int_val( *((int*)ptr_val) ); - last_live_int = *((int*)ptr_val); - } - else if ( live_type == GLUI_LIVE_FLOAT ) { - set_float_val( *((float*)ptr_val) ); - last_live_float = *((float*)ptr_val); - } - else if ( live_type == GLUI_LIVE_TEXT ) { - set_text( (const char*) ptr_val ); - last_live_text = (const char*) ptr_val; - } - else if ( live_type == GLUI_LIVE_STRING ) { - set_text( ((std::string*) ptr_val)->c_str() ); - last_live_text = ((std::string*) ptr_val)->c_str(); - } - else if ( live_type == GLUI_LIVE_FLOAT_ARRAY ) { - set_float_array_val( (float*) ptr_val ); - - fp = (float*) ptr_val; - - for( i=0; ienable(); - node = (GLUI_Control*) node->next(); - } -} - - -/***** GLUI_Control::disable() ****************/ - -void GLUI_Control::disable() -{ - GLUI_Control *node; - - enabled = false; - - if ( NOT glui ) - return; - - if ( glui->active_control == this ) - glui->deactivate_current_control(); - redraw(); - - /*** Now recursively disable all buttons below it ***/ - node = (GLUI_Control*) first_child(); - while(node) { - node->disable(); - node = (GLUI_Control*) node->next(); - } -} - -/******* GLUI_Control::set_w() **************/ - -void GLUI_Control::set_w(int new_w) -{ - w = new_w; - update_size(); /* Make sure control is big enough to fit text */ - if (glui) glui->refresh(); -} - - -/**** GLUI_Control::set_h() **************/ - -void GLUI_Control::set_h(int new_h) -{ - h = new_h; - update_size(); /* Make sure control is big enough to fit text */ - if (glui) glui->refresh(); -} - - -/***** GLUI_Control::set_alignment() ******/ - -void GLUI_Control::set_alignment(int new_align) -{ - alignment = new_align; - - if ( glui ) - { - glui->align_controls(this); - redraw_window(); - } -} - - -/***** GLUI_Control::needs_idle() *********/ -/* This method gets overloaded by specific classes, e.g. Spinner. */ -/* It returns whether or not a control needs to receive an idle event or not */ -/* For example, a spinner only needs idle events when the user is holding */ -/* the mouse down in one of the arrows. Otherwise, don't waste cycles */ -/* and OpenGL context switching by calling its idle. */ - -bool GLUI_Control::needs_idle() const -{ - return false; -} - - -/********* GLUI_Control::~GLUI_Control() **********/ - -GLUI_Control::~GLUI_Control() -{ - GLUI_Control *item = (GLUI_Control*) this->first_child(); - - while (item) - { - GLUI_Control *tmp = item; - item = (GLUI_Control*) item->next(); - delete tmp; - } -} - -/********* GLUI_Control::hide_internal() ********/ -/** Sets hidden==true for this control and all its siblings. */ -/** If recurse is true, we go to children as well */ - -void GLUI_Control::hide_internal( int recurse ) -{ - GLUI_Node *node; - - node = (GLUI_Node *) this; - while( node != NULL ) { - ((GLUI_Control*)node)->hidden = true; - - if ( recurse AND node->first_child() != NULL ) - ((GLUI_Control*) node->first_child())->hide_internal(true); - - node = node->next(); - } - - node = this->collapsed_node.first_child(); - while( node != NULL ) { - ((GLUI_Control*)node)->hidden = true; - - if ( recurse AND node->first_child() != NULL ) - ((GLUI_Control*) node->first_child())->hide_internal(true); - - node = node->next(); - } -} - - -/********* GLUI_Control::unhide_internal() ********/ -/** Sets hidden==false for this control and all its siblings. */ -/** If recurse is true, we go to children as well */ - -void GLUI_Control::unhide_internal( int recurse ) -{ - GLUI_Node *node; - - node = (GLUI_Node *) this; - while( node != NULL ) { - /* printf( "unhide: %s [%d]\n", ((GLUI_Control*)node)->name.c_str(), - ((GLUI_Control*)node)->hidden );*/ - ((GLUI_Control*)node)->hidden = false; - - if ( recurse AND node->first_child() != NULL ) - ((GLUI_Control*) node->first_child())->unhide_internal(true); - - node = node->next(); - } - - node = this->collapsed_node.first_child(); - while( node != NULL ) { - ((GLUI_Control*)node)->hidden = false; - - if ( recurse AND node->first_child() != NULL ) - ((GLUI_Control*) node->first_child())->unhide_internal(true); - - node = node->next(); - } -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_edittext.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_edittext.cpp deleted file mode 100644 index 5f2a1d8..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_edittext.cpp +++ /dev/null @@ -1,1198 +0,0 @@ -/**************************************************************************** - - GLUI User Interface Toolkit - --------------------------- - - glui_edittext.cpp - GLUI_EditText control class - - - -------------------------------------------------- - - Copyright (c) 1998 Paul Rademacher - - WWW: http://sourceforge.net/projects/glui/ - Forums: http://sourceforge.net/forum/?group_id=92496 - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -*****************************************************************************/ - -#include "glui_internal_control.h" -#include - -/****************************** GLUI_EditText::GLUI_EditText() **********/ - -GLUI_EditText::GLUI_EditText( GLUI_Node *parent, const char *name, - int data_type, void *live_var, - int id, GLUI_CB callback ) -{ - if (data_type == GLUI_EDITTEXT_TEXT) { - live_type = GLUI_LIVE_TEXT; - } - else if (data_type == GLUI_EDITTEXT_STRING) { - data_type = GLUI_EDITTEXT_TEXT; // EDITTEXT_STRING doesn't really exist. - // Except as a signal to make a string. - // It's a backwards-compat hack. - live_type = GLUI_LIVE_STRING; - } - else if (data_type == GLUI_EDITTEXT_INT) { - live_type = GLUI_LIVE_INT; - } - else if (data_type == GLUI_EDITTEXT_FLOAT) { - live_type = GLUI_LIVE_FLOAT; - } - common_construct( parent, name, data_type, live_type, live_var, id, callback ); -} - -/****************************** GLUI_EditText::GLUI_EditText() **********/ - -GLUI_EditText::GLUI_EditText( GLUI_Node *parent, const char *name, - int text_type, int id, GLUI_CB callback ) -{ - common_construct( parent, name, text_type, GLUI_LIVE_NONE, 0, id, callback); -} - -/****************************** GLUI_EditText::GLUI_EditText() **********/ - -GLUI_EditText::GLUI_EditText( GLUI_Node *parent, const char *name, - int *live_var, - int id, GLUI_CB callback ) -{ - common_construct( parent, name, GLUI_EDITTEXT_INT, GLUI_LIVE_INT, live_var, id, callback); -} - -/****************************** GLUI_EditText::GLUI_EditText() **********/ - -GLUI_EditText::GLUI_EditText( GLUI_Node *parent, const char *name, - float *live_var, - int id, GLUI_CB callback ) -{ - common_construct( parent, name, GLUI_EDITTEXT_FLOAT, GLUI_LIVE_FLOAT, live_var, id, callback); -} - -/****************************** GLUI_EditText::GLUI_EditText() **********/ - -GLUI_EditText::GLUI_EditText( GLUI_Node *parent, const char *name, - char *live_var, - int id, GLUI_CB callback ) -{ - common_construct( parent, name, GLUI_EDITTEXT_TEXT, GLUI_LIVE_TEXT, live_var, id, callback); -} - -/****************************** GLUI_EditText::GLUI_EditText() **********/ - -GLUI_EditText::GLUI_EditText( GLUI_Node *parent, const char *name, - std::string &live_var, - int id, GLUI_CB callback ) -{ - common_construct( parent, name, GLUI_EDITTEXT_TEXT, GLUI_LIVE_STRING, &live_var, id, callback); -} - -/****************************** GLUI_EditText::common_construct() **********/ - -void GLUI_EditText::common_construct( GLUI_Node *parent, const char *name, - int data_t, int live_t, void *data, int id, - GLUI_CB cb ) -{ - common_init(); - set_name( name ); - - live_type = live_t; - data_type = data_t; - ptr_val = data; - user_id = id; - callback = cb; - - - if ( live_type == GLUI_LIVE_INT) { - if ( data == NULL ) - set_int_val(int_val); /** Set to some default, in case of no live var **/ - } - else if ( live_type == GLUI_LIVE_FLOAT ) { - num_periods = 1; - if ( data == NULL ) - set_float_val(float_val); /** Set to some default, in case of no live var **/ - } - - parent->add_control( this ); - - init_live(); -} - -/****************************** GLUI_EditText::mouse_down_handler() **********/ - -int GLUI_EditText::mouse_down_handler( int local_x, int local_y ) -{ - int tmp_insertion_pt; - - if ( debug ) dump( stdout, "-> MOUSE DOWN" ); - - tmp_insertion_pt = find_insertion_pt( local_x, local_y ); - if ( tmp_insertion_pt == -1 ) { - if ( glui ) - glui->deactivate_current_control( ); - return false; - } - - insertion_pt = tmp_insertion_pt; - - sel_start = sel_end = insertion_pt; - - if ( can_draw()) - update_and_draw_text(); - - if ( debug ) dump( stdout, "<- MOUSE UP" ); - - return true; -} - - -/******************************** GLUI_EditText::mouse_up_handler() **********/ - -int GLUI_EditText::mouse_up_handler( int local_x, int local_y, bool inside ) -{ - return false; -} - - -/***************************** GLUI_EditText::mouse_held_down_handler() ******/ - -int GLUI_EditText::mouse_held_down_handler( int local_x, int local_y, - bool new_inside) -{ - int tmp_pt; - - if ( NOT new_inside ) - return false; - - if ( debug ) dump( stdout, "-> HELD DOWN" ); - - tmp_pt = find_insertion_pt( local_x, local_y ); - - if ( tmp_pt == -1 AND sel_end != 0 ) { /* moved mouse past left edge */ - special_handler( GLUT_KEY_LEFT, GLUT_ACTIVE_SHIFT ); - } - else if ( tmp_pt == substring_end+1 AND sel_end != (int) text.length()) { - /* moved mouse past right edge */ - special_handler( GLUT_KEY_RIGHT, GLUT_ACTIVE_SHIFT ); - } - else if ( tmp_pt != -1 AND tmp_pt != sel_end ) { - sel_end = insertion_pt = tmp_pt; - - update_and_draw_text(); - } - - if ( debug ) - dump( stdout, "<- HELD DOWN" ); - - return false; -} - - -/****************************** GLUI_EditText::key_handler() **********/ - -int GLUI_EditText::key_handler( unsigned char key,int modifiers ) -{ - int i, regular_key; - /* int has_selection; */ - - if ( NOT glui ) - return false; - - if ( debug ) - dump( stdout, "-> KEY HANDLER" ); - - regular_key = false; - bool ctrl_down = (modifiers & GLUT_ACTIVE_CTRL)!=0; - /* has_selection = (sel_start != sel_end); */ - - if ( key == CTRL('m') ) { /* RETURN */ - /* glui->deactivate_current_control(); */ - deactivate(); /** Force callbacks, etc **/ - activate(GLUI_ACTIVATE_TAB); /** Reselect all text **/ - redraw(); - return true; - } - else if ( key == CTRL('[')) { /* ESCAPE */ - glui->deactivate_current_control(); - return true; - } - else if ( (key == 127 AND !ctrl_down) OR /* FORWARD DELETE */ - ( key == CTRL('d') AND modifiers == GLUT_ACTIVE_CTRL) ) - { - if ( sel_start == sel_end ) { /* no selection */ - if ( insertion_pt < (int)text.length() ) { - /*** See if we're deleting a period in a float data-type box ***/ - if ( data_type == GLUI_EDITTEXT_FLOAT AND text[insertion_pt]=='.' ) - num_periods--; - - /*** Shift over string first ***/ - text.erase(insertion_pt,1); - } - } - else { /* There is a selection */ - clear_substring( MIN(sel_start,sel_end), MAX(sel_start,sel_end )); - insertion_pt = MIN(sel_start,sel_end); - sel_start = sel_end = insertion_pt; - } - } - else if ( ((key == 127) AND ctrl_down) OR // Delete word forward - ((key == 'd') AND (modifiers == GLUT_ACTIVE_ALT)) ) - { - if ( sel_start == sel_end ) { /* no selection */ - sel_start = insertion_pt; - sel_end = find_word_break( insertion_pt, +1 ); - } - - clear_substring( MIN(sel_start,sel_end), MAX(sel_start,sel_end )); - insertion_pt = MIN(sel_start,sel_end); - sel_start = sel_end = insertion_pt; - } - else if ( key == CTRL('h') ) { /* BACKSPACE */ - if ( sel_start == sel_end ) { /* no selection */ - if ( insertion_pt > 0 ) { - /*** See if we're deleting a period in a float data-type box ***/ - if ( data_type == GLUI_EDITTEXT_FLOAT AND text[insertion_pt-1]=='.' ) - num_periods--; - - /*** Shift over string first ***/ - insertion_pt--; - text.erase(insertion_pt,1); - } - } - else { /* There is a selection */ - clear_substring( MIN(sel_start,sel_end), MAX(sel_start,sel_end )); - insertion_pt = MIN(sel_start,sel_end); - sel_start = sel_end = insertion_pt; - } - } - else if ( modifiers == GLUT_ACTIVE_CTRL ) /* CTRL ONLY */ - { - /* Ctrl-key bindings */ - if ( key == CTRL('a') ) { - return special_handler( GLUT_KEY_HOME, 0 ); - } - else if ( key == CTRL('e') ) { - return special_handler( GLUT_KEY_END, 0 ); - } - else if ( key == CTRL('b') ) { - return special_handler( GLUT_KEY_LEFT, 0 ); - } - else if ( key == CTRL('f') ) { - return special_handler( GLUT_KEY_RIGHT, 0 ); - } - else if ( key == CTRL('p') ) { - return special_handler( GLUT_KEY_UP, 0 ); - } - else if ( key == CTRL('n') ) { - return special_handler( GLUT_KEY_DOWN, 0 ); - } - else if ( key == CTRL('u') ) { /* ERASE LINE */ - insertion_pt = 0; - text.erase(0,text.length()); - sel_start = sel_end = 0; - } - else if ( key == CTRL('k') ) { /* KILL TO END OF LINE */ - sel_start = sel_end = insertion_pt; - text.erase(insertion_pt,GLUI_String::npos); - } - } - else if ( modifiers == GLUT_ACTIVE_ALT ) /* ALT ONLY */ - { - if ( key == 'b' ) { // Backward word - return special_handler ( GLUT_KEY_LEFT, GLUT_ACTIVE_CTRL ); - } - if ( key == 'f' ) { // Forward word - return special_handler ( GLUT_KEY_RIGHT, GLUT_ACTIVE_CTRL ); - } - } - else if ( (modifiers & GLUT_ACTIVE_CTRL) OR - (modifiers & GLUT_ACTIVE_ALT) ) - { - /** ignore other keys with modifiers */ - return true; - } - else { /* Regular key */ - regular_key = true; - - /** Check if we only accept numbers **/ - if (data_type == GLUI_EDITTEXT_FLOAT ) { - if ( (key < '0' OR key > '9') AND key != '.' AND key != '-' ) - return true; - - if ( key == '-' ) { /* User typed a '-' */ - - /* If user has first character selected, then '-' is allowed */ - if ( NOT ( MIN(sel_start,sel_end) == 0 AND - MAX(sel_start,sel_end) > 0 ) ) { - - /* User does not have 1st char selected */ - if (insertion_pt != 0 OR text[0] == '-' ) { - return true; /* Can only place negative at beginning of text, - and only one of them */ - } - } - } - - if ( key == '.' ) { - /*printf( "PERIOD: %d\n", num_periods ); */ - - if ( num_periods > 0 ) { - /** We're trying to type a period, but the text already contains - a period. Check whether the period is contained within - is current selection (thus it will be safely replaced) **/ - - int period_found = false; - if ( sel_start != sel_end ) { - for( i=MIN(sel_end,sel_start); i '9') AND key != '-' ) - return true; - - if ( key == '-' ) { /* User typed a '-' */ - - /* If user has first character selected, then '-' is allowed */ - if ( NOT ( MIN(sel_start,sel_end) == 0 AND - MAX(sel_start,sel_end) > 0 ) ) { - - /* User does not have 1st char selected */ - if (insertion_pt != 0 OR text[0] == '-' ) { - return true; /* Can only place negative at beginning of text, - and only one of them */ - } - } - } - } - - /** This is just to get rid of warnings - the flag regular_key is - set if the key was not a backspace, return, whatever. But I - believe if we're here, we know it was a regular key anyway */ - if ( regular_key ) { - } - - /**** If there's a current selection, erase it ******/ - if ( sel_start != sel_end ) { - clear_substring( MIN(sel_start,sel_end), MAX(sel_start,sel_end )); - insertion_pt = MIN(sel_start,sel_end); - sel_start = sel_end = insertion_pt; - } - - /******** We insert the character into the string ***/ - - text.insert(insertion_pt,1,key); - - /******** Move the insertion point and substring_end one over ******/ - insertion_pt++; - substring_end++; - - sel_start = sel_end = insertion_pt; - } - - /******** Now redraw text ***********/ - /* Hack to prevent text box from being cleared first **/ - /** int substring_change = update_substring_bounds(); - draw_text_only = - (NOT substring_change AND NOT has_selection AND regular_key ); - */ - - draw_text_only = false; /** Well, hack is not yet working **/ - update_and_draw_text(); - draw_text_only = false; - - - if ( debug ) - dump( stdout, "<- KEY HANDLER" ); - - /*** Now look to see if this string has a period ***/ - num_periods = 0; - for( i=0; i<(int)text.length(); i++ ) - if ( text[i] == '.' ) - num_periods++; - - return true; -} - - -/****************************** GLUI_EditText::activate() **********/ - -void GLUI_EditText::activate( int how ) -{ - if ( debug ) - dump( stdout, "-> ACTIVATE" ); - - active = true; - - if ( how == GLUI_ACTIVATE_MOUSE ) - return; /* Don't select everything if activated with mouse */ - - orig_text = text; - - sel_start = 0; - sel_end = (int)text.length(); - insertion_pt = 0; - - if ( debug ) - dump( stdout, "<- ACTIVATE" ); -} - - -/****************************** GLUI_EditText::deactivate() **********/ - -void GLUI_EditText::deactivate( void ) -{ - int new_int_val; - float new_float_val; - - active = false; - - if ( NOT glui ) - return; - - if ( debug ) - dump( stdout, "-> DISACTIVATE" ); - - sel_start = sel_end = insertion_pt = -1; - - /***** Retrieve the current value from the text *****/ - /***** The live variable will be updated by set_text() ****/ - if ( data_type == GLUI_EDITTEXT_FLOAT ) { - if ( text.length() == 0 ) /* zero-length string - make it "0.0" */ - text = "0.0"; - - new_float_val = atof( text.c_str() ); - - set_float_val( new_float_val ); - } - else if ( data_type == GLUI_EDITTEXT_INT ) { - if ( text.length() == 0 ) /* zero-length string - make it "0" */ - text = "0"; - - new_int_val = atoi( text.c_str() ); - - set_int_val( new_int_val ); - } - else - if ( data_type == GLUI_EDITTEXT_TEXT ) { - set_text(text); /* This will force callbacks and gfx refresh */ - } - - update_substring_bounds(); - - /******** redraw text without insertion point ***********/ - redraw(); - - /***** Now do callbacks if value changed ******/ - if ( orig_text != text ) { - this->execute_callback(); - - if ( 0 ) { - /* THE CODE BELOW IS FROM WHEN SPINNER ALSO MAINTAINED CALLBACKS */ - if ( spinner == NULL ) { /** Are we independent of a spinner? **/ - if ( callback ) { - callback( this ); - } - } - else { /* We're attached to a spinner */ - spinner->do_callbacks(); /* Let the spinner do the callback stuff */ - } - } - } - - if ( debug ) - dump( stdout, "<- DISACTIVATE" ); -} - -/****************************** GLUI_EditText::draw() **********/ - -void GLUI_EditText::draw( int x, int y ) -{ - GLUI_DRAWINGSENTINAL_IDIOM - int name_x; - - name_x = MAX(text_x_offset - string_width(this->name) - 3,0); - draw_name( name_x , 13); - - glBegin( GL_LINES ); - glColor3f( .5, .5, .5 ); - glVertex2i( text_x_offset, 0 ); glVertex2i( w, 0 ); - glVertex2i( text_x_offset, 0 ); glVertex2i( text_x_offset, h ); - - glColor3f( 1., 1., 1. ); - glVertex2i( text_x_offset, h ); glVertex2i( w, h ); - glVertex2i( w, h ); glVertex2i( w, 0 ); - - if ( enabled ) - glColor3f( 0., 0., 0. ); - else - glColor3f( .25, .25, .25 ); - glVertex2i( text_x_offset+1, 1 ); glVertex2i( w-1, 1 ); - glVertex2i( text_x_offset+1, 1 ); glVertex2i( text_x_offset+1, h-1 ); - - glColor3f( .75, .75, .75 ); - glVertex2i( text_x_offset+1, h-1 ); glVertex2i( w-1, h-1 ); - glVertex2i( w-1, h-1 ); glVertex2i( w-1, 1 ); - glEnd(); - - /** Find where to draw the text **/ - update_substring_bounds(); - draw_text(0,0); - - draw_insertion_pt(); -} - - - -/************************** GLUI_EditText::update_substring_bounds() *********/ - -int GLUI_EditText::update_substring_bounds( void ) -{ - int box_width; - int text_len = (int)text.length(); - int old_start, old_end; - - old_start = substring_start; - old_end = substring_end; - - /*** Calculate the width of the usable area of the edit box ***/ - box_width = MAX( this->w - this->text_x_offset - - 4 /* 2 * the two-line box border */ - - 2 * GLUI_EDITTEXT_BOXINNERMARGINX, 0 ); - - CLAMP( substring_end, 0, MAX(text_len-1,0) ); - CLAMP( substring_start, 0, MAX(text_len-1,0) ); - - if ( debug ) dump( stdout, "-> UPDATE SS" ); - - if ( insertion_pt >= 0 AND - insertion_pt < substring_start ) { /* cursor moved left */ - substring_start = insertion_pt; - - while ( substring_width( substring_start, substring_end ) > box_width ) - substring_end--; - } - else if ( insertion_pt > substring_end ) { /* cursor moved right */ - substring_end = insertion_pt-1; - - while ( substring_width( substring_start, substring_end ) > box_width ) - substring_start++; - } - else { /* cursor is within old substring bounds */ - if ( last_insertion_pt > insertion_pt ) { /* cursor moved left */ - } - else { - while ( substring_width( substring_start, substring_end ) > box_width ) - substring_end--; - - while(substring_end < text_len-1 - AND substring_width( substring_start, substring_end ) <= box_width) - substring_end++; - } - } - - while ( substring_width( substring_start, substring_end ) > box_width ) - substring_end--; - - last_insertion_pt = insertion_pt; - - /*** No selection if not enabled ***/ - if ( NOT enabled ) { - sel_start = sel_end = 0; - } - - if ( debug ) dump( stdout, "<- UPDATE SS" ); - - if ( substring_start == old_start AND substring_end == old_end ) - return false; /*** bounds did not change ***/ - else - return true; /*** bounds did change ***/ -} - - -/********************************* GLUI_EditText::update_x_offsets() *********/ - -void GLUI_EditText::update_x_offsets( void ) -{ -} - - -/********************************* GLUI_EditText::draw_text() ****************/ - -void GLUI_EditText::draw_text( int x, int y ) -{ - GLUI_DRAWINGSENTINAL_IDIOM - int text_x, i, sel_lo, sel_hi; - - if ( debug ) dump( stdout, "-> DRAW_TEXT" ); - - if ( NOT draw_text_only ) { - if ( enabled ) - glColor3f( 1., 1., 1. ); - else - set_to_bkgd_color(); - glDisable( GL_CULL_FACE ); - glBegin( GL_QUADS ); - glVertex2i( text_x_offset+2, 2 ); glVertex2i( w-2, 2 ); - glVertex2i( w-2, h-2 ); glVertex2i( text_x_offset+2, h-2 ); - glEnd(); - } - - /** Find where to draw the text **/ - - text_x = text_x_offset + 2 + GLUI_EDITTEXT_BOXINNERMARGINX; - - /*printf( "text_x: %d substr_width: %d start/end: %d/%d\n", - text_x, substring_width( substring_start, substring_end ), - substring_start, substring_end ); - */ - /** Find lower and upper selection bounds **/ - sel_lo = MIN(sel_start, sel_end ); - sel_hi = MAX(sel_start, sel_end ); - - int sel_x_start, sel_x_end, delta; - - /** Draw selection area dark **/ - if ( sel_start != sel_end ) { - sel_x_start = text_x; - sel_x_end = text_x; - for( i=substring_start; i<=substring_end; i++ ) { - delta = char_width( text[i] ); - - if ( i < sel_lo ) { - sel_x_start += delta; - sel_x_end += delta; - } - else if ( i < sel_hi ) { - sel_x_end += delta; - } - } - - glColor3f( 0.0f, 0.0f, .6f ); - glBegin( GL_QUADS ); - glVertex2i( sel_x_start, 2 ); glVertex2i( sel_x_end, 2 ); - glVertex2i( sel_x_end, h-2 ); glVertex2i( sel_x_start, h-2 ); - glEnd(); - } - - - if ( sel_start == sel_end ) { /* No current selection */ - if ( enabled ) - glColor3b( 0, 0, 0 ); - else - glColor3b( 32, 32, 32 ); - - glRasterPos2i( text_x, 13); - for( i=substring_start; i<=substring_end; i++ ) { - glutBitmapCharacter( get_font(), this->text[i] ); - } - } - else { /* There is a selection */ - int x = text_x; - for( i=substring_start; i<=substring_end; i++ ) { - if ( IN_BOUNDS( i, sel_lo, sel_hi-1)) { /* This character is selected */ - glColor3f( 1., 1., 1. ); - glRasterPos2i( x, 13); - glutBitmapCharacter( get_font(), this->text[i] ); - } - else { - glColor3f( 0., 0., 0. ); - glRasterPos2i( x, 13); - glutBitmapCharacter( get_font(), this->text[i] ); - } - - x += char_width( text[i] ); - } - } - - if ( debug ) dump( stdout, "<- DRAW_TEXT" ); -} - - -/******************************** GLUI_EditText::find_insertion_pt() *********/ -/* This function returns the character numer *before which* the insertion */ -/* point goes */ - -int GLUI_EditText::find_insertion_pt( int x, int y ) -{ - int curr_x, i; - - /*** See if we clicked outside box ***/ - if ( x < this->x_abs + text_x_offset ) - return -1; - - /* We move from right to left, looking to see if the mouse was clicked - to the right of the ith character */ - - curr_x = this->x_abs + text_x_offset - + substring_width( substring_start, substring_end ) - + 2 /* The edittext box has a 2-pixel margin */ - + GLUI_EDITTEXT_BOXINNERMARGINX; /** plus this many pixels blank space - between the text and the box **/ - - /*** See if we clicked in an empty box ***/ - if ( (int) text.length() == 0 ) - return 0; - - /** find mouse click in text **/ - for( i=substring_end; i>=substring_start; i-- ) { - curr_x -= char_width( text[i] ); - - if ( x > curr_x ) { - /* printf( "-> %d\n", i ); */ - - return i+1; - } - } - - return 0; - - /* Well, the mouse wasn't after any of the characters...see if it's - before the beginning of the substring */ - if ( 0 ) { - if ( x > (x_abs + text_x_offset + 2 ) ) - return substring_start; - - return -1; /* Nothing found */ - } -} - - -/******************************** GLUI_EditText::draw_insertion_pt() *********/ - -void GLUI_EditText::draw_insertion_pt( void ) -{ - int curr_x, i; - - if ( NOT can_draw() ) - return; - - /*** Don't draw insertion pt if control is disabled ***/ - if ( NOT enabled ) - return; - - if ( debug ) dump( stdout, "-> DRAW_INS_PT" ); - - if ( sel_start != sel_end OR insertion_pt < 0 ) { - return; /* Don't draw insertion point if there is a current selection */ - } - - /* printf( "insertion pt: %d\n", insertion_pt ); */ - - curr_x = this->x_abs + text_x_offset - + substring_width( substring_start, substring_end ) - + 2 /* The edittext box has a 2-pixel margin */ - + GLUI_EDITTEXT_BOXINNERMARGINX; /** plus this many pixels blank space - between the text and the box **/ - - for( i=substring_end; i>=insertion_pt; i-- ) { - curr_x -= char_width( text[i] ); - } - - glColor3f( 0.0, 0.0, 0.0 ); - glBegin( GL_LINE_LOOP ); - /*** - glVertex2i( curr_x, y_abs + 4 ); - glVertex2i( curr_x, y_abs + 4 ); - glVertex2i( curr_x, y_abs + h - 3 ); - glVertex2i( curr_x, y_abs + h - 3 ); - ***/ - curr_x -= x_abs; - glVertex2i( curr_x, 0 + 4 ); - glVertex2i( curr_x, 0 + 4 ); - glVertex2i( curr_x, 0 + h - 3 ); - glVertex2i( curr_x, 0 + h - 3 ); - glEnd(); - - if ( debug ) dump( stdout, "-> DRAW_INS_PT" ); -} - - - -/******************************** GLUI_EditText::substring_width() *********/ - -int GLUI_EditText::substring_width( int start, int end ) -{ - int i, width; - - width = 0; - - for( i=start; i<=end; i++ ) - width += char_width( text[i] ); - - return width; -} - - -/***************************** GLUI_EditText::update_and_draw_text() ********/ - -void GLUI_EditText::update_and_draw_text( void ) -{ - if ( NOT can_draw() ) - return; - - update_substring_bounds(); - /* printf( "ss: %d/%d\n", substring_start, substring_end ); */ - - redraw(); -} - - -/********************************* GLUI_EditText::special_handler() **********/ - -int GLUI_EditText::special_handler( int key,int modifiers ) -{ - if ( NOT glui ) - return false; - - if ( debug ) - printf( "SPECIAL:%d - mod:%d subs:%d/%d ins:%d sel:%d/%d\n", - key, modifiers, substring_start, substring_end,insertion_pt, - sel_start, sel_end ); - - if ( key == GLUT_KEY_LEFT ) { - if ( (modifiers & GLUT_ACTIVE_CTRL) != 0 ) { - insertion_pt = find_word_break( insertion_pt, -1 ); - } - else { - insertion_pt--; - } - } - else if ( key == GLUT_KEY_RIGHT ) { - if ( (modifiers & GLUT_ACTIVE_CTRL) != 0 ) { - insertion_pt = find_word_break( insertion_pt, +1 ); - } - else { - insertion_pt++; - } - } - else if ( key == GLUT_KEY_HOME ) { - insertion_pt = 0; - } - else if ( key == GLUT_KEY_END ) { - insertion_pt = (int) text.length(); - } - - /*** Update selection if shift key is down ***/ - if ( (modifiers & GLUT_ACTIVE_SHIFT ) != 0 ) - sel_end = insertion_pt; - else - sel_start = sel_end = insertion_pt; - - - CLAMP( insertion_pt, 0, (int) text.length()); /* Make sure insertion_pt - is in bounds */ - CLAMP( sel_start, 0, (int) text.length()); /* Make sure insertion_pt - is in bounds */ - CLAMP( sel_end, 0, (int) text.length()); /* Make sure insertion_pt - is in bounds */ - - /******** Now redraw text ***********/ - if ( can_draw()) - update_and_draw_text(); - - return true; -} - - -/****************************** GLUI_EditText::find_word_break() **********/ -/* It looks either left or right (depending on value of 'direction' */ -/* for the beginning of the next 'word', where word are characters */ -/* separated by one of the following tokens: " :-.," */ -/* If there is no next word in the specified direction, this returns */ -/* the beginning of 'text', or the very end. */ - -int GLUI_EditText::find_word_break( int start, int direction ) -{ - int i, j; - char *breaks = " :-.,"; - int num_break_chars = (int)strlen(breaks), text_len = (int)text.length(); - int new_pt; - - /** If we're moving left, we have to start two back, in case we're either - already at the beginning of a word, or on a separating token. - Otherwise, this function would just return the word we're already at **/ - if ( direction == -1 ) { - start -= 2; - } - - /***** Iterate over text in the specified direction *****/ - for ( i=start; i >= 0 AND i < text_len; i += direction ) { - - /** For each character in text, iterate over list of separating tokens **/ - for( j=0; j 0 ) /* Return the end of string */ - return text_len; - else /* Return the beginning of the text */ - return 0; -} - - -/********************************** GLUI_EditText::clear_substring() ********/ - -void GLUI_EditText::clear_substring( int start, int end ) -{ - int i; - - /* - printf( "clearing: %d-%d '", start,end); - for(i=start;ifloat_val = this->float_val; - spinner->int_val = this->int_val; - } - - /*** Now update the live variable ***/ - output_live(true); -} - - -/******************************* GLUI_EditText::set_float_val() ************/ - -void GLUI_EditText::set_float_val( float new_val ) -{ - if ( has_limits == GLUI_LIMIT_CLAMP ) { - /*** Clamp the new value to the existing limits ***/ - - CLAMP( new_val, float_low, float_high ); - } - else if ( has_limits == GLUI_LIMIT_WRAP ) { - /*** Clamp the value cyclically to the limits - that is, if the - value exceeds the max, set it the the minimum, and conversely ***/ - - if ( new_val < float_low ) - new_val = float_high; - if ( new_val > float_high ) - new_val = float_low; - } - - float_val = new_val; - int_val = (int) new_val; /* Mirror the value as an int, too */ - - set_numeric_text(); -} - - -/********************************** GLUI_EditText::set_int_val() ************/ - -void GLUI_EditText::set_int_val( int new_val ) -{ - if ( has_limits == GLUI_LIMIT_CLAMP ) { - /*** Clamp the new value to the existing limits ***/ - - CLAMP( new_val, int_low, int_high ); - } - else if ( has_limits == GLUI_LIMIT_WRAP ) { - /*** Clamp the value cyclically to the limits - that is, if the - value exceeds the max, set it the the minimum, and conversely ***/ - - if ( new_val < int_low ) - new_val = int_high; - if ( new_val > int_high ) - new_val = int_low; - } - - int_val = new_val; - float_val = (float) new_val; /* We mirror the value as a float, too */ - - set_numeric_text(); -} - - -/********************************* GLUI_EditText::set_float_limits() *********/ - -void GLUI_EditText::set_float_limits( float low, float high, int limit_type ) -{ - has_limits = limit_type; - float_low = low; - float_high = high; - - if ( NOT IN_BOUNDS( float_val, float_low, float_high )) - set_float_val( float_low ); - - int_low = (int) float_low; - int_high = (int) float_high; -} - - -/*********************************** GLUI_EditText::set_int_limits() *********/ - -void GLUI_EditText::set_int_limits( int low, int high, int limit_type ) -{ - has_limits = limit_type; - int_low = low; - int_high = high; - - if ( NOT IN_BOUNDS( int_val, int_low, int_high )) - set_int_val( int_low ); - - float_low = (float) int_low; - float_high = (float) int_high; -} - - -/************************************ GLUI_EditText::set_numeric_text() ******/ - -void GLUI_EditText::set_numeric_text( void ) -{ - char buf_num[200]; - int i, text_len; - - if ( data_type == GLUI_EDITTEXT_FLOAT ) { - sprintf( buf_num, "%#g", float_val ); - - num_periods = 0; - text_len = (int) strlen(buf_num); - for ( i=0; i 0 ) { - text_len = (int) strlen(buf_num); - for ( i=text_len-1; i>0; i-- ) { - if ( buf_num[i] == '0' AND buf_num[i-1] != '.' ) - buf_num[i] = '\0'; - else - break; - } - } - set_text( buf_num ); - } - else { - sprintf( buf_num, "%d", int_val ); - set_text( buf_num ); - } - -} - - -/*************************************** GLUI_EditText::dump() **************/ - -void GLUI_EditText::dump( FILE *out, const char *name ) -{ - fprintf( out, - "%s (edittext@%p): ins_pt:%d subs:%d/%d sel:%d/%d len:%d\n", - name, this, - insertion_pt, - substring_start, - substring_end, - sel_start, - sel_end, - (int) text.length()); -} - - -/**************************************** GLUI_EditText::mouse_over() ********/ - -int GLUI_EditText::mouse_over( int state, int x, int y ) -{ - if ( state ) { - /* curr_cursor = GLUT_CURSOR_TEXT; */ - glutSetCursor( GLUT_CURSOR_TEXT ); - } - else { - /* printf( "OUT\n" ); */ - glutSetCursor( GLUT_CURSOR_LEFT_ARROW ); - } - - return true; -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_filebrowser.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_filebrowser.cpp deleted file mode 100644 index 13171fb..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_filebrowser.cpp +++ /dev/null @@ -1,165 +0,0 @@ -/**************************************************************************** - - GLUI User Interface Toolkit - --------------------------- - - glui_filebrowser.cpp - GLUI_FileBrowser control class - - - -------------------------------------------------- - - Copyright (c) 1998 Paul Rademacher - - This program is freely distributable without licensing fees and is - provided without guarantee or warrantee expressed or implied. This - program is -not- in the public domain. - -*****************************************************************************/ - -#include "glui.h" -#include "glui_internal.h" -#include - -#ifdef __GNUC__ -#include -#include -#endif - -#ifdef _WIN32 -#include -#endif - -#include - -GLUI_FileBrowser::GLUI_FileBrowser( GLUI_Node *parent, - const char *name, - int type, - int id, - GLUI_CB cb) -{ - common_init(); - - set_name( name ); - user_id = id; - int_val = type; - callback = cb; - - parent->add_control( this ); - list = new GLUI_List(this, true, 1); - list->set_object_callback( GLUI_FileBrowser::dir_list_callback, this ); - list->set_click_type(GLUI_DOUBLE_CLICK); - this->fbreaddir(this->current_dir.c_str()); -} - -/****************************** GLUI_FileBrowser::draw() **********/ - -void GLUI_FileBrowser::dir_list_callback(GLUI_Control *glui_object) { - GLUI_List *list = dynamic_cast(glui_object); - if (!list) - return; - GLUI_FileBrowser* me = dynamic_cast(list->associated_object); - if (!me) - return; - int this_item; - const char *selected; - this_item = list->get_current_item(); - if (this_item > 0) { /* file or directory selected */ - selected = list->get_item_ptr( this_item )->text.c_str(); - if (selected[0] == '/' || selected[0] == '\\') { - if (me->allow_change_dir) { -#ifdef __GNUC__ - chdir(selected+1); -#endif -#ifdef _WIN32 - SetCurrentDirectory(selected+1); -#endif - me->fbreaddir("."); - } - } else { - me->file = selected; - me->execute_callback(); - } - } -} - - - -void GLUI_FileBrowser::fbreaddir(const char *d) { - GLUI_String item; - int i = 0; - - if (!d) - return; - -#ifdef _WIN32 - - WIN32_FIND_DATA FN; - HANDLE hFind; - //char search_arg[MAX_PATH], new_file_path[MAX_PATH]; - //sprintf(search_arg, "%s\\*.*", path_name); - - hFind = FindFirstFile("*.*", &FN); - if (list) { - list->delete_all(); - if (hFind != INVALID_HANDLE_VALUE) { - do { - int len = strlen(FN.cFileName); - if (FN.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) { - item = '\\'; - item += FN.cFileName; - } else { - item = FN.cFileName; - } - list->add_item(i,item.c_str()); - i++; - } while (FindNextFile(hFind, &FN) != 0); - - if (GetLastError() == ERROR_NO_MORE_FILES) - FindClose(&FN); - else - perror("fbreaddir"); - } - } - -#elif defined(__GNUC__) - - DIR *dir; - struct dirent *dirp; - struct stat dr; - - if (list) { - list->delete_all(); - if ((dir = opendir(d)) == NULL) - perror("fbreaddir:"); - else { - while ((dirp = readdir(dir)) != NULL) /* open directory */ - { - if (!lstat(dirp->d_name,&dr) && S_ISDIR(dr.st_mode)) /* dir is directory */ - item = dirp->d_name + GLUI_String("/"); - else - item = dirp->d_name; - - list->add_item(i,item.c_str()); - i++; - } - closedir(dir); - } - } -#endif -} - -void ProcessFiles(const char *path_name) -{ - -} - - -void GLUI_FileBrowser::set_w(int w) -{ - if (list) list->set_w(w); -} - -void GLUI_FileBrowser::set_h(int h) -{ - if (list) list->set_h(h); -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal.h b/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal.h deleted file mode 100644 index 20efc6f..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal.h +++ /dev/null @@ -1,105 +0,0 @@ -#ifndef GLUI_INTERNAL_H -#define GLUI_INTERNAL_H - -#include -#include - -#ifndef AND -#define AND && -#define OR || -#define NOT ! -#endif - -#ifndef MAX -#define MAX(a,b) ((a)>(b) ? (a) : (b)) -#define MIN(a,b) ((a)<(b) ? (a) : (b)) -#endif - -#ifndef ABS -#define ABS(a) ((a)>=0 ? (a) : (-(a))) -#endif - -/******************** bit comparisons and operations ***************/ -#ifndef TEST_BIT -#define TEST_BIT( x, b ) (((x) & (1<<(b))) != 0 ) -#define SET_BIT( x, b ) ((x) |= (1 << (b))) -#define CLEAR_BIT( x, b ) ((x) &= ~(1 << (b))) -#define TOGGLE_BIT( x, b ) ((TEST_BIT(x,b)) ?(CLEAR_BIT(x,b)):(SET_BIT(x,b))) -#endif - -#ifndef TEST_AND -#define TEST_AND( a, b ) ((a&b)==b) -#endif - - -#ifndef M_PI -#define M_PI 3.141592654 -#endif - -/*********** flush the stdout and stderr output streams *************/ -#ifndef flushout -#define flushout fflush(stdout) -#define flusherr fflush(stderr) -#endif - -/********** Debugging functions *************************************/ -#ifndef error_return -#define error_return( c ); {fprintf(stderr,c);return;} -#endif - -/************************* floating-point random ********************/ -#ifndef randf -#define randf() ((float) rand() / (float)RAND_MAX ) -#endif - -#ifndef SIGN -#define SIGN(x) ((x)>=0 ? 1 : -1) -#endif - -/****************** conversion between degrees and radians **********/ -#ifndef DEG2RAD -#define DEG2RAD(x) ((x)/180.0*M_PI) -#define RAD2DEG(x) ((x)/M_PI*180.0) -#endif - -/***************** clamp a value to some fixed interval *************/ -#ifndef CLAMP -#define CLAMP(x,lo,hi) {if ((x) < (lo)) {(x)=(lo);} else if((x) > (hi)) {(x)=(hi);}} -#endif - -/************ check if a value lies within a closed interval *********/ -#ifndef IN_BOUNDS -#define IN_BOUNDS( x, lo, hi ) ( (x) >= (lo) AND (x) <= (hi) ) -#endif - -/************ check if a 2D point lies within a 2D box ***************/ -#ifndef PT_IN_BOX -#define PT_IN_BOX( x, y, lo_x, hi_x, lo_y, hi_y ) \ -( IN_BOUNDS(x,lo_x,hi_x) AND IN_BOUNDS(y,lo_y,hi_y) ) -#endif - -/****** check if value lies on proper side of another value *****/ -/*** if side is positive => proper side is positive, else negative **/ -#ifndef CHECK_PROPER_SIDE -#define CHECK_PROPER_SIDE(x,val,side) ((side) > 0 ? (x) > (val) : (x) < (val)) -#endif - - -/***** Small value when we want to do a comparison to 'close to zero' *****/ -#ifndef FUDGE -#define FUDGE .00001 -#endif - - -/******************* swap two values, using a temp variable *********/ -#ifndef SWAP2 -#define SWAP2(a,b,t) {t=a;a=b;b=t;} -#endif - -#define VEC3_TO_ARRAY(v,a) a[0]=v[0], a[1]=v[1], a[2]=v[2] - -/**** Return the ASCII control code given the non-control ASCII character */ -#define CTRL(c) ( (c>=('a'-1)) ? (c-'a'+1) : (c-'A'+1) ) - - -#endif /* GLUI_INTERNAL_H */ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal_control.h b/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal_control.h deleted file mode 100644 index ef0db15..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_internal_control.h +++ /dev/null @@ -1,45 +0,0 @@ -/* - Header file for use by GLUI controls. - Everything you need is right here. - - -*/ -#ifndef __GLUI_INTERNAL_CONTROL_H -#define __GLUI_INTERNAL_CONTROL_H - -/* This is the main GLUI external header */ -#include "glui.h" - -/* Here's some utility routines */ -#include "glui_internal.h" - - -/** - A GLUI_Control-drawing sentinal object. - On creation, saves the current draw buffer and window. - On destruction, restores draw buffer and window. - This is way nicer than calling save/restore manually. -*/ -class GLUI_DrawingSentinal { - int orig_buf, orig_win; - GLUI_Control *c; -public: - /** The constructor sets up the drawing system */ - GLUI_DrawingSentinal(GLUI_Control *c_); - /** The destructor cleans up drawing back how it was */ - ~GLUI_DrawingSentinal(); - - // Do-nothing routine to avoid compiler warning about unused variable - inline void avoid_warning(void) {} -}; -/** Just drop a GLUI_DRAWINGSENTINAL_IDIOM at the start of your draw methods, -and they'll return if we can't be drawn, and -automatically save and restore all needed state. -*/ -#define GLUI_DRAWINGSENTINAL_IDIOM if (NOT can_draw()) return; GLUI_DrawingSentinal drawSentinal(this); drawSentinal.avoid_warning(); - - -/** Return the time, in seconds. */ -inline double GLUI_Time(void) {return 0.001*glutGet(GLUT_ELAPSED_TIME);} - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_list.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_list.cpp deleted file mode 100644 index a5b0939..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_list.cpp +++ /dev/null @@ -1,540 +0,0 @@ -/**************************************************************************** - - GLUI User Interface Toolkit - --------------------------- - - glui_list.cpp - GLUI_List control class - - - -------------------------------------------------- - - Copyright (c) 2004 John Kew - - This program is freely distributable without licensing fees and is - provided without guarantee or warrantee expressed or implied. This - program is -not- in the public domain. - -*****************************************************************************/ - -#include "glui_internal_control.h" -#include -#include - -/****************************** GLUI_List::GLUI_List() **********/ - -GLUI_List::GLUI_List( GLUI_Node *parent, bool scroll, - int id, GLUI_CB callback - /*,GLUI_Control *object - GLUI_InterObject_CB obj_cb*/) -{ - common_construct(parent, NULL, scroll, id, callback/*, object, obj_cb*/); -} - -/****************************** GLUI_List::GLUI_List() **********/ - -GLUI_List::GLUI_List( GLUI_Node *parent, - GLUI_String& live_var, bool scroll, - int id, - GLUI_CB callback - /* ,GLUI_Control *object - ,GLUI_InterObject_CB obj_cb*/ ) -{ - common_construct(parent, &live_var, scroll, id, callback/*, object, obj_cb*/); -} - -/****************************** GLUI_List::common_construct() **********/ - -void GLUI_List::common_construct( - GLUI_Node *parent, - GLUI_String* data, bool scroll, - int id, - GLUI_CB callback - /*,GLUI_Control *object - , GLUI_InterObject_CB obj_cb*/) -{ - common_init(); - GLUI_Node *list_panel = parent; - - if (scroll) { - GLUI_Panel *p = new GLUI_Panel(parent,"",GLUI_PANEL_NONE); - p->x_off = 1; - list_panel = p; - } - this->ptr_val = data; - if (data) { - this->live_type = GLUI_LIVE_STRING; - } - this->user_id = id; - this->callback = callback; - this->name = "list"; - list_panel->add_control( this ); - if (scroll) - { - new GLUI_Column(list_panel, false); - scrollbar = - new GLUI_Scrollbar(list_panel, - "scrollbar", - GLUI_SCROLL_VERTICAL, - GLUI_SCROLL_INT); - scrollbar->set_object_callback(GLUI_List::scrollbar_callback, this); - scrollbar->set_alignment(GLUI_ALIGN_LEFT); - // scrollbar->can_activate = false; //kills ability to mouse drag too - } - init_live(); -} - -/****************************** GLUI_List::mouse_down_handler() **********/ -int GLUI_List::mouse_down_handler( int local_x, int local_y ) -{ - int tmp_line; - unsigned long int ms; - timeb time; - ftime(&time); - ms = time.millitm + (time.time)*1000; - - tmp_line = find_line( local_x-x_abs, local_y-y_abs-5 ); - if ( tmp_line == -1 ) { - if ( glui ) - glui->deactivate_current_control( ); - return false; - } - - if (tmp_line < num_lines) { - curr_line = tmp_line; - if (scrollbar) - scrollbar->set_int_val(curr_line); - this->execute_callback(); - if (associated_object != NULL) - if (cb_click_type == GLUI_SINGLE_CLICK) { - if (obj_cb) { - // obj_cb(associated_object, user_id); - obj_cb(this); - } - } else { - if (last_line == curr_line && (ms - last_click_time) < 300) { - //obj_cb(associated_object, user_id); - obj_cb(this); - } else { - last_click_time = ms; - last_line = curr_line; - } - } - if ( can_draw()) - update_and_draw_text(); - } - - return true; -} - - - - -/******************************** GLUI_List::mouse_up_handler() **********/ - -int GLUI_List::mouse_up_handler( int local_x, int local_y, bool inside ) -{ - return false; -} - - -/***************************** GLUI_List::mouse_held_down_handler() ******/ - -int GLUI_List::mouse_held_down_handler( int local_x, int local_y, - bool new_inside) -{ - return false; -} - - -/****************************** GLUI_List::key_handler() **********/ - -int GLUI_List::key_handler( unsigned char key,int modifiers ) -{ - - - draw_text_only = false; /** Well, hack is not yet working **/ - update_and_draw_text(); - draw_text_only = false; - - return true; -} - - -/****************************** GLUI_List::activate() **********/ - -void GLUI_List::activate( int how ) -{ -// if ( debug ) -// dump( stdout, "-> ACTIVATE" ); - active = true; - - if ( how == GLUI_ACTIVATE_MOUSE ) - return; /* Don't select everything if activated with mouse */ - -} - - -/****************************** GLUI_List::deactivate() **********/ - -void GLUI_List::deactivate( void ) -{ - active = false; - redraw(); -} - -/****************************** GLUI_List::draw() **********/ - -void GLUI_List::draw( int x, int y ) -{ - int line = 0; - int box_width; - GLUI_List_Item *item; - - GLUI_DRAWINGSENTINAL_IDIOM - - /* Bevelled Border */ - glBegin( GL_LINES ); - glColor3f( .5, .5, .5 ); - glVertex2i( 0, 0 ); glVertex2i( w, 0 ); - glVertex2i( 0, 0 ); glVertex2i( 0, h ); - - glColor3f( 1., 1., 1. ); - glVertex2i( 0, h ); glVertex2i( w, h ); - glVertex2i( w, h ); glVertex2i( w, 0 ); - - if ( enabled ) - glColor3f( 0., 0., 0. ); - else - glColor3f( .25, .25, .25 ); - glVertex2i( 1, 1 ); glVertex2i( w-1, 1 ); - glVertex2i( 1, 1 ); glVertex2i( 1, h-1 ); - - glColor3f( .75, .75, .75 ); - glVertex2i( 1, h-1 ); glVertex2i( w-1, h-1 ); - glVertex2i( w-1, h-1 ); glVertex2i( w-1, 1 ); - glEnd(); - - /* Draw Background if enabled*/ - if (enabled) { - glColor3f( 1., 1., 1. ); - glDisable( GL_CULL_FACE ); - glBegin( GL_QUADS ); - glVertex2i( 2, 2 ); glVertex2i( w-2, 2 ); - glVertex2i( w-2, h-2 ); glVertex2i(2, h-2 ); - glEnd(); - } else { - glColor3f( .8, .8, .8 ); - glDisable( GL_CULL_FACE ); - glBegin( GL_QUADS ); - glVertex2i( 2, 2 ); glVertex2i( w-2, 2 ); - glVertex2i( w-2, h-2 ); glVertex2i(2, h-2 ); - glEnd(); - } - - /* Figure out how wide the box is */ - box_width = get_box_width(); - - /* Figure out which lines are visible*/ - - visible_lines = (int)(h-20)/15; - - item = (GLUI_List_Item *) items_list.first_child(); - - line = 0; - while (item) { - if (line < start_line) { - line++; - item = (GLUI_List_Item *) item->next(); - continue; - } - if (line >= start_line && line <= (start_line+visible_lines)) { - if (curr_line == line) - draw_text(item->text.c_str(),1,0,(line - start_line)*15); - else - draw_text(item->text.c_str(),0,0,(line - start_line)*15); - } - line++; - item = (GLUI_List_Item *) item->next(); - } - - if (scrollbar) { - scrollbar->set_int_limits(MAX(0,num_lines-visible_lines), 0); - glPushMatrix(); - glTranslatef(scrollbar->x_abs-x_abs, scrollbar->y_abs-y_abs,0.0); - scrollbar->draw_scroll(); - glPopMatrix(); - } -} - -/********************************* GLUI_List::draw_text() ****************/ - -void GLUI_List::draw_text(const char *t, int selected, int x, int y ) -{ - int text_x, i, x_pos; - int box_width; - - GLUI_DRAWINGSENTINAL_IDIOM - - /** Find where to draw the text **/ - - text_x = 2 + GLUI_LIST_BOXINNERMARGINX; - - /** Draw selection area dark **/ - if ( enabled && selected ) { - glColor3f( 0.0f, 0.0f, .6f ); - glBegin( GL_QUADS ); - glVertex2i(text_x, y+5 ); glVertex2i( w-text_x, y+5 ); - glVertex2i(w-text_x, y+19 ); glVertex2i(text_x, y+19 ); - glEnd(); - } - box_width = get_box_width(); - - if ( !selected || !enabled ) { /* No current selection */ - x_pos = text_x; /* or control disabled */ - if ( enabled ) - glColor3b( 0, 0, 0 ); - else - glColor3b( 32, 32, 32 ); - - glRasterPos2i( text_x, y+15); - i = 0; - while( t[i] != '\0' && substring_width(t,0,i) < box_width) { - glutBitmapCharacter( get_font(), t[i] ); - x_pos += char_width( t[i] ); - i++; - } - } - else { /* There is a selection */ - i = 0; - x_pos = text_x; - glColor3f( 1., 1., 1. ); - glRasterPos2i( text_x, y+15); - while( t[i] != '\0' && substring_width(t,0,i) < box_width) { - glutBitmapCharacter( get_font(), t[i] ); - x_pos += char_width( t[i] ); - i++; - } - } -} - - -int GLUI_List::find_line(int x, int y) { - return start_line + ((int)(y/15)); -} - -int GLUI_List::get_box_width() { - return MAX( this->w - - 6 /* 2 * the two-line box border */ - - 2 * GLUI_LIST_BOXINNERMARGINX, 0 ); - -} - -/******************************** GLUI_List::substring_width() *********/ -int GLUI_List::substring_width( const char *t, int start, int end ) -{ - int i, width; - - width = 0; - - for( i=start; i<=end; i++ ) - width += char_width( t[i] ); - - return width; -} - - -/***************************** GLUI_List::update_and_draw_text() ********/ - -void GLUI_List::update_and_draw_text( void ) -{ - if ( NOT can_draw() ) - return; - - //update_substring_bounds(); - /* printf( "ss: %d/%d\n", substring_start, substring_end ); */ - - redraw(); -} - - -/********************************* GLUI_List::special_handler() **********/ - -int GLUI_List::special_handler( int key,int modifiers ) -{ - if ( NOT glui ) - return false; - - if ( key == GLUT_KEY_DOWN ) { - if (curr_line < num_lines) { - curr_line++; - if (curr_line > start_line+visible_lines) - start_line++; - } - } else if ( key == GLUT_KEY_UP ) { - if (curr_line > 0) { - curr_line--; - if (curr_line < start_line) - start_line--; - } - } - - if (scrollbar) - scrollbar->set_int_val(curr_line); - redraw(); - return true; -} - - -/************************************ GLUI_List::update_size() **********/ - -void GLUI_List::update_size( void ) -{ - if ( NOT glui ) - return; - - if ( w < GLUI_LIST_MIN_TEXT_WIDTH ) - w = GLUI_LIST_MIN_TEXT_WIDTH; -} - -/**************************************** GLUI_Listbox::add_item() **********/ - -int GLUI_List::add_item( int id, const char *new_text ) -{ - GLUI_List_Item *new_node = new GLUI_List_Item; - GLUI_List_Item *head; - - new_node->text = new_text; - new_node->id = id; - - head = (GLUI_List_Item*) items_list.first_child(); - new_node->link_this_to_parent_last( &items_list ); - - if ( head == NULL ) { - /*** This is first item added ***/ - - int_val = id+1; /** Different than id **/ - // do_selection( id ); - last_live_int = id; - - if( glui ) - glui->post_update_main_gfx(); - } - num_lines++; - if (scrollbar) - scrollbar->set_int_limits(MAX(num_lines-visible_lines,0), 0); - - return true; -} - -/************************************** GLUI_Listbox::delete_() **********/ - -int GLUI_List::delete_all() -{ - GLUI_List_Item *item; - - item = (GLUI_List_Item *) items_list.first_child(); - while( item ) { - item->unlink(); - delete item; - item = (GLUI_List_Item *) items_list.first_child(); - } - - num_lines = 0; - curr_line = 0; - - return true; -} - - -/************************************** GLUI_Listbox::delete_item() **********/ - -int GLUI_List::delete_item( const char *text ) -{ - GLUI_List_Item *node = get_item_ptr( text ); - - if ( node ) { - node->unlink(); - delete node; - num_lines--; - return true; - } - else { - return false; - } -} - - -/************************************** GLUI_Listbox::delete_item() **********/ - -int GLUI_List::delete_item( int id ) -{ - GLUI_List_Item *node = get_item_ptr( id ); - - if ( node ) { - node->unlink(); - delete node; - num_lines--; - return true; - } - else { - return false; - } -} - - -/************************************ GLUI_Listbox::get_item_ptr() **********/ - -GLUI_List_Item *GLUI_List::get_item_ptr( const char *text ) -{ - GLUI_List_Item *item; - - item = (GLUI_List_Item *) items_list.first_child(); - while( item ) { - if ( item->text == text ) - return item; - - item = (GLUI_List_Item *) item->next(); - } - - return NULL; -} - - -/************************************ GLUI_Listbox::get_item_ptr() **********/ - -GLUI_List_Item *GLUI_List::get_item_ptr( int id ) -{ - GLUI_List_Item *item; - - item = (GLUI_List_Item *) items_list.first_child(); - while( item ) { - if ( item->id == id ) - return item; - - item = (GLUI_List_Item *) item->next(); - } - - return NULL; -} - -/**************************************** GLUI_List::mouse_over() ********/ - -int GLUI_List::mouse_over( int state, int x, int y ) -{ - glutSetCursor( GLUT_CURSOR_LEFT_ARROW ); - - return true; -} - -void GLUI_List::scrollbar_callback(GLUI_Control *my_scrollbar) { - GLUI_Scrollbar *sb = dynamic_cast(my_scrollbar); - if (!sb) return; - GLUI_List* me = (GLUI_List*) sb->associated_object; - if (me->scrollbar == NULL) - return; - int new_start_line = sb->get_int_val(); // TODO!! - me->start_line = new_start_line; - - if ( me->can_draw() ) - me->update_and_draw_text(); -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_listbox.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_listbox.cpp deleted file mode 100644 index 3eda310..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_listbox.cpp +++ /dev/null @@ -1,448 +0,0 @@ -/**************************************************************************** - - GLUI User Interface Toolkit - --------------------------- - - glui_listbox - GLUI_ListBox control class - - - -------------------------------------------------- - - Copyright (c) 1998 Paul Rademacher - - WWW: http://sourceforge.net/projects/glui/ - Forums: http://sourceforge.net/forum/?group_id=92496 - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -*****************************************************************************/ - -#include "glui_internal_control.h" - -/****************************** GLUI_Listbox::GLUI_Listbox() **********/ -GLUI_Listbox::GLUI_Listbox( GLUI_Node *parent, - const char *name, int *value_ptr, - int id, - GLUI_CB cb) -{ - common_init(); - set_ptr_val( value_ptr ); - user_id = id; - set_name( name ); - callback = cb; - - parent->add_control( this ); - - init_live(); -} - - -/****************************** GLUI_Listbox::mouse_down_handler() **********/ - -int GLUI_Listbox::mouse_down_handler( int local_x, int local_y ) -{ - return false; -} - - -/****************************** GLUI_Listbox::mouse_up_handler() **********/ - -int GLUI_Listbox::mouse_up_handler( int local_x, int local_y, bool inside ) -{ - - return false; -} - - -/****************************** GLUI_Listbox::mouse_held_down_handler() ******/ - -int GLUI_Listbox::mouse_held_down_handler( int local_x, int local_y, - bool inside) -{ - - return false; -} - - -/****************************** GLUI_Listbox::key_handler() **********/ - -int GLUI_Listbox::key_handler( unsigned char key,int modifiers ) -{ - return false; -} - - -/****************************** GLUI_Listbox::draw() **********/ - -void GLUI_Listbox::draw( int x, int y ) -{ - GLUI_DRAWINGSENTINAL_IDIOM - int name_x; - - /* draw_active_area(); */ - - name_x = MAX(text_x_offset - string_width(this->name) - 3,0); - draw_name( name_x , 13); - draw_box_inwards_outline( text_x_offset, w, - 0, h ); - - if ( NOT active ) { - draw_box( text_x_offset+3, w-2, 2, h-2, 1.0, 1.0, 1.0 ); - if ( NOT enabled ) - glColor3b( 32, 32, 32 ); - else - glColor3f( 0.0, 0.0, 0.0 ); - glRasterPos2i( text_x_offset+5, 13 ); - draw_string( curr_text ); - } - else { - draw_box( text_x_offset+3, w-2, 2, h-2, .0, .0, .6 ); - glColor3f( 1.0, 1.0, 1.0 ); - glRasterPos2i( text_x_offset+5, 13 ); - draw_string( curr_text ); - } - - - if ( enabled ) { - glui->std_bitmaps. - draw(GLUI_STDBITMAP_LISTBOX_UP, - w-glui->std_bitmaps.width(GLUI_STDBITMAP_LISTBOX_UP)-1, - 2 ); - } - else { - glui->std_bitmaps. - draw(GLUI_STDBITMAP_LISTBOX_UP_DIS, - w-glui->std_bitmaps.width(GLUI_STDBITMAP_LISTBOX_UP)-1, - 2 ); - } -} - - -/************************************ GLUI_Listbox::update_si() **********/ -void GLUI_Listbox::update_size( void ) -{ - recalculate_item_width(); -} - -/********************************* GLUI_Listbox::set_int_val() **************/ - -void GLUI_Listbox::set_int_val( int new_val ) -{ - /* int_val = new_val; */ - - do_selection( new_val ); - - /*** Update the variable we're (possibly) pointing to, and update the main gfx ***/ - output_live(true); -} - -/**************************************** GLUI_Listbox::add_item() **********/ - -int GLUI_Listbox::add_item( int id, const char *new_text ) -{ - GLUI_Listbox_Item *new_node = new GLUI_Listbox_Item; - GLUI_Listbox_Item *head; - - new_node->text = new_text; - new_node->id = id; - - head = (GLUI_Listbox_Item*) items_list.first_child(); - new_node->link_this_to_parent_last( &items_list ); - - if ( head == NULL ) { - /*** This is first item added ***/ - - int_val = id+1; /** Different than id **/ - do_selection( id ); - last_live_int = id; - - if( glui ) - glui->post_update_main_gfx(); - } - if (recalculate_item_width()) glui->refresh(); - - return true; -} - - -/************************************** GLUI_Listbox::delete_item() **********/ - -int GLUI_Listbox::delete_item( const char *text ) -{ - GLUI_Listbox_Item *node = get_item_ptr(text); - - if (node) - { - node->unlink(); - delete node; - return true; - } - if (recalculate_item_width()) glui->refresh(); - - return false; -} - - -/************************************** GLUI_Listbox::delete_item() **********/ - -int GLUI_Listbox::delete_item(int id) -{ - GLUI_Listbox_Item *node = get_item_ptr(id); - - if (node) - { - node->unlink(); - delete node; - return true; - } - if (recalculate_item_width()) glui->refresh(); - - return false; -} - - -/************************************** GLUI_Listbox::sort_items() **********/ - -int GLUI_Listbox::sort_items( void ) -{ - return false; -} - - -/********************************************* GLUI_Listbox::dump() **********/ - -void GLUI_Listbox::dump( FILE *output ) -{ - GLUI_Listbox_Item *item; - - /* printf( "%p\n", (char*) name ); */ - - fprintf( output, "Listbox: %s\n", name.c_str() ); - - item = (GLUI_Listbox_Item *) items_list.first_child(); - while( item ) { - fprintf( output, " %3d : %s\n", item->id, item->text.c_str() ); - - item = (GLUI_Listbox_Item *) item->next(); - } -} - - -/************************************ GLUI_Listbox::get_item_ptr() **********/ - -GLUI_Listbox_Item *GLUI_Listbox::get_item_ptr( const char *text ) -{ - GLUI_Listbox_Item *item; - - item = (GLUI_Listbox_Item *) items_list.first_child(); - while( item ) { - if ( item->text == text ) - return item; - - item = (GLUI_Listbox_Item *) item->next(); - } - - return NULL; -} - - -/************************************ GLUI_Listbox::get_item_ptr() **********/ - -GLUI_Listbox_Item *GLUI_Listbox::get_item_ptr( int id ) -{ - GLUI_Listbox_Item *item; - - item = (GLUI_Listbox_Item *) items_list.first_child(); - while( item ) { - if ( item->id == id ) - return item; - - item = (GLUI_Listbox_Item *) item->next(); - } - - return NULL; -} - - -/************************************ GLUI_Listbox::mouse_over() **********/ - -static void listbox_callback( int i ) -{ - int old_val; - - if ( NOT GLUI_Master.curr_left_button_glut_menu OR - !dynamic_cast(GLUI_Master.curr_left_button_glut_menu) ) - return; - - old_val = ((GLUI_Listbox*)GLUI_Master.curr_left_button_glut_menu)->int_val; - ((GLUI_Listbox*)GLUI_Master.curr_left_button_glut_menu)->set_int_val(i); - - /**** If value changed, execute callback ****/ - if ( old_val != - ((GLUI_Listbox*)GLUI_Master.curr_left_button_glut_menu)->int_val ) { - ((GLUI_Listbox*)GLUI_Master.curr_left_button_glut_menu)->execute_callback(); - } -} - - -/*************************************** GLUI_Listbox::mouse_over() **********/ - -int GLUI_Listbox::mouse_over( int state, int x, int y ) -{ - GLUI_Listbox_Item *item; - - /* printf( "x/y: %d/%d\n", x, y ); */ - - if ( state AND enabled AND x > x_abs + text_x_offset) { - /**** Build a GLUT menu for this listbox ***/ - - /* printf( "%d %d\n", x, y ); */ - - glut_menu_id = glutCreateMenu(listbox_callback); - - item = (GLUI_Listbox_Item *) items_list.first_child(); - while( item ) { - glutAddMenuEntry( item->text.c_str(), item->id ); - item = (GLUI_Listbox_Item *) item->next(); - } - - glutAttachMenu( GLUT_LEFT_BUTTON); - - GLUI_Master.set_left_button_glut_menu_control( this ); - } - else if ( glut_menu_id != -1 ) { - /* printf( "OUT\n" ); */ - glutDetachMenu( GLUT_LEFT_BUTTON ); - glutDestroyMenu( glut_menu_id ); - glut_menu_id = -1; - } - - return true; -} - - -/************************************ GLUI_Listbox::do_selection() **********/ - -int GLUI_Listbox::do_selection( int item_num ) -{ - GLUI_Listbox_Item *item, *sel_item; - - /*** Is this item already selected? ***/ - if ( item_num == int_val ) - return false; - - sel_item = NULL; - item = (GLUI_Listbox_Item *) items_list.first_child(); - while( item ) { - if ( item->id == item_num ) { - sel_item = item; - break; - } - - item = (GLUI_Listbox_Item *) item->next(); - } - - if ( NOT sel_item ) - return false; - - /* printf( "-> %s\n", (char*) sel_item->text ); */ - - int_val = item_num; - curr_text = sel_item->text; - redraw(); - - return true; -} - - -/*********************************** GLUI_Listbox::~GLUI_Listbox() **********/ - -GLUI_Listbox::~GLUI_Listbox() -{ - GLUI_Listbox_Item *item = (GLUI_Listbox_Item *) items_list.first_child(); - - while (item) - { - GLUI_Listbox_Item *tmp = item; - item = (GLUI_Listbox_Item *) item->next(); - delete tmp; - } -} - -/****************************** GLUI_Listbox::special_handler() **********/ - -int GLUI_Listbox::special_handler( int key,int modifiers ) -{ - GLUI_Listbox_Item *node, *new_node; - - node = get_item_ptr( int_val ); - new_node = NULL; - - if ( key == GLUT_KEY_DOWN ) { - new_node = (GLUI_Listbox_Item*) node->next(); - } - else if ( key == GLUT_KEY_UP ) { - new_node = (GLUI_Listbox_Item*) node->prev(); - } - else if ( key == GLUT_KEY_HOME ) { - new_node = (GLUI_Listbox_Item*) items_list.first_child(); - } - else if ( key == GLUT_KEY_END ) { - new_node = (GLUI_Listbox_Item*) items_list.last_child(); - } - - if ( new_node != NULL AND new_node != node ) { - node = new_node; - set_int_val( node->id ); - execute_callback(); - return true; - } - else { - return false; - } -} - - -/************************* GLUI_Listbox::recalculate_item_width( void ) ***********/ -/** Change w and return true if we need to be widened to fit the current items. */ -bool GLUI_Listbox::recalculate_item_width( void ) -{ - int item_text_size; - - if ( NOT glui ) - return false; - - /* Find the title size */ - text_x_offset = string_width( name ); - - /* Find the longest item string ***/ - item_text_size = 0; - - GLUI_Listbox_Item *item = (GLUI_Listbox_Item *) items_list.first_child(); - while( item ) { - item_text_size = MAX(item_text_size,string_width(item->text)); - item = (GLUI_Listbox_Item *) item->next(); - } - - /* Sum up our layout: name, item, and drop-down marker */ - int new_wid=text_x_offset+MAX(GLUI_EDITTEXT_MIN_TEXT_WIDTH,item_text_size)+20; - if ( w != new_wid) { - w = new_wid; - return true; /* we gotta be shortened or widened */ - } - else { - return false; /* our current width is OK */ - } -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_mouse_iaction.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_mouse_iaction.cpp deleted file mode 100644 index bc9f061..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_mouse_iaction.cpp +++ /dev/null @@ -1,210 +0,0 @@ -/**************************************************************************** - - GLUI User Interface Toolkit - --------------------------- - - glui_mouse_iaction - GLUI Mouse Interaction control class - - - -------------------------------------------------- - - Copyright (c) 1998 Paul Rademacher - - WWW: http://sourceforge.net/projects/glui/ - Forums: http://sourceforge.net/forum/?group_id=92496 - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -*****************************************************************************/ - -#include "glui_internal_control.h" - -/********************** GLUI_Mouse_Interaction::mouse_down_handler() ******/ - -int GLUI_Mouse_Interaction::mouse_down_handler( int local_x, int local_y ) -{ - /* int win_h = glutGet( GLUT_WINDOW_HEIGHT ); */ - - /* iaction_mouse_down_handler( local_x, local_y ); */ - iaction_mouse_down_handler( local_x-x_abs, local_y-y_abs ); - /*local_x-x_abs, ((glui->h-local_y)-y_abs) ); */ - redraw(); - - return false; -} - - -/**************************** GLUI_Mouse_Interaction::mouse_up_handler() */ - -int GLUI_Mouse_Interaction::mouse_up_handler( int local_x, int local_y, bool inside ) -{ - iaction_mouse_up_handler( local_x-x_abs, local_y-y_abs, inside ); - return false; -} - - -/****************************** GLUI_Mouse_Interaction::mouse_held_down_handler() ******/ - -int GLUI_Mouse_Interaction::mouse_held_down_handler( int local_x, int local_y, - bool inside) -{ - iaction_mouse_held_down_handler( local_x-x_abs, local_y-y_abs , inside ); - - redraw(); - - /** Tell the main graphics window to update iteself **/ - if( glui ) - glui->post_update_main_gfx(); - - execute_callback(); - - return false; -} - - - -/****************************** GLUI_Mouse_Interaction::draw() **********/ - -void GLUI_Mouse_Interaction::draw( int x, int y ) -{ - GLUI_DRAWINGSENTINAL_IDIOM - int text_width = string_width( this->name ); - int x_left = this->w/2 - text_width/2; - - if ( NOT draw_active_area_only ) { - draw_name( x_left, h-4 ); - draw_active_box( x_left-4, x_left+string_width( name )+4, - h, h-14 ); - } - - draw_active_area(); -} - - -/************************************ GLUI_Mouse_Interaction::update_size() **********/ - -void GLUI_Mouse_Interaction::update_size( void ) -{ - if ( NOT glui ) - return; - - int text_width = string_width( this->name ); - - if ( w < text_width+6 ) - w = text_width+6; - - if ( h - 18 > w ) - w = h - 18; - - iaction_init(); -} - - -/****************************** GLUI_Mouse_Interaction::special_handler() **********/ - -int GLUI_Mouse_Interaction::special_handler( int key,int modifiers ) -{ - int center_x, center_y; - int drag_x, drag_y; - - center_x = w/2; - center_y = (h-18)/2; - drag_x = 0; - drag_y = 0; - - if ( key == GLUT_KEY_LEFT ) - drag_x = -6; - else if ( key == GLUT_KEY_RIGHT ) - drag_x = 6; - else if ( key == GLUT_KEY_UP ) - drag_y = -6; - else if ( key == GLUT_KEY_DOWN ) - drag_y = 6; - - if ( drag_x != 0 OR drag_y != 0 ) { - mouse_down_handler( center_x, center_y ); - mouse_held_down_handler( center_x + drag_x, center_y + drag_y,true ); - mouse_up_handler( center_x + drag_x, center_y + drag_y, true ); - } - - return false; -} - - -/****************************** GLUI_Mouse_Interaction::draw_active_area() **********/ - -void GLUI_Mouse_Interaction::draw_active_area( void ) -{ - int win_h = glutGet( GLUT_WINDOW_HEIGHT ), win_w = glutGet(GLUT_WINDOW_WIDTH); - - int text_height = 18; /* what a kludge */ - - int viewport_size = h-text_height; /*MIN(w,h); */ - - glMatrixMode( GL_MODELVIEW ); - glPushMatrix(); - glLoadIdentity(); - glTranslatef( (float) win_w/2.0, (float) win_h/2.0, 0.0 ); - glRotatef( 180.0, 0.0, 1.0, 0.0 ); - glRotatef( 180.0, 0.0, 0.0, 1.0 ); - glTranslatef( (float) -win_w/2.0, (float) -win_h/2.0, 0.0 ); - - glTranslatef( (float) this->x_abs + .5, (float) this->y_abs + .5, 0.0 ); - - glTranslatef( (float)this->w/2.0, (float)viewport_size/2.0 + 2.0 , 0.0 ); - - /*** Draw the interaction control's orthographic elements ***/ - iaction_draw_active_area_ortho(); - - /*** Setup and draw the interaction control's perspective elements ***/ - - /*** Set the viewport to just the square of the drawing area ***/ - /* glViewport( this->x_abs , glui->main_panel->h - this->y_abs - this->h,*/ - /*glViewport( this->x_abs+1+(this->w/2-viewport_size/2), - this->h-this->y_abs-viewport_size-1, - viewport_size, viewport_size );*/ - - viewport_size -= 4; - int offset = 0; - if ( ((this->w-viewport_size) % 2) == 1 ) - offset = 1; - - glViewport( this->x_abs + (this->w-viewport_size)/2 + offset, - win_h - this->y_abs - this->h + text_height, - viewport_size, viewport_size ); - - glMatrixMode( GL_PROJECTION ); - glLoadIdentity(); - double xy=1.00,zc=50.0; /* X-Y size, and Z origin */ - glFrustum( -1.0*xy, 1.0*xy, -xy, xy, zc*0.7, zc*1.3 ); - glMatrixMode( GL_MODELVIEW ); - glPushMatrix(); - glLoadIdentity(); - glTranslatef( 0.0, 0.0, -zc ); - glScalef(xy,xy,1.0); // xy); - - /* glutSolidTeapot( 1.0 ); */ - iaction_draw_active_area_persp(); - - glMatrixMode( GL_MODELVIEW ); - glPopMatrix(); - - glui->set_viewport(); - glui->set_ortho_projection(); - - glMatrixMode( GL_MODELVIEW ); - glPopMatrix(); -} - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_node.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_node.cpp deleted file mode 100644 index 96aa1dd..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_node.cpp +++ /dev/null @@ -1,212 +0,0 @@ -/**************************************************************************** - - GLUI User Interface Toolkit - --------------------------- - - glui_node.cpp - linked-list tree structure - - - -------------------------------------------------- - - Copyright (c) 1998 Paul Rademacher - - WWW: http://sourceforge.net/projects/glui/ - Forums: http://sourceforge.net/forum/?group_id=92496 - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -*****************************************************************************/ - -#include "glui.h" -#include "glui_internal.h" - -/********************************************* GLUI_Node::GLUI_Node() *******/ - -GLUI_Node::GLUI_Node() -: - parent_node(NULL), - child_head(NULL), - child_tail(NULL), - next_sibling(NULL), - prev_sibling(NULL) -{ -} - -/********************************************* GLUI_Node::first() *******/ -/* Returns first sibling in 'this' node's sibling list */ - -GLUI_Node *GLUI_Node::first_sibling( void ) -{ - if ( parent_node == NULL ) - return this; /* root node has no siblings */ - else - return parent_node->child_head; -} - - -/******************************************** GLUI_Node::next() ********/ -/* Returns next sibling in 'this' node's sibling list */ - -GLUI_Node *GLUI_Node::next( void ) -{ - return next_sibling; -} - - -/******************************************** GLUI_Node::prev() ********/ -/* Returns prev sibling in 'this' node's sibling list */ - -GLUI_Node *GLUI_Node::prev( void ) -{ - return prev_sibling; -} - - -/********************************************* GLUI_Node::last() *******/ -/* Returns last sibling in 'this' node's sibling list */ - -GLUI_Node *GLUI_Node::last_sibling( void ) -{ - if ( parent_node == NULL ) - return this; /* root node has no siblings */ - else - return parent_node->child_tail; -} - - -/*************************** GLUI_Node::link_this_to_parent_last() *******/ -/* Links as last child of parent */ - -void GLUI_Node::link_this_to_parent_last( GLUI_Node *new_parent ) -{ - if ( new_parent->child_tail == NULL ) { /* parent has no children */ - new_parent->child_head = this; - new_parent->child_tail = this; - this->parent_node = new_parent; - } - else { /* parent has children */ - new_parent->child_tail->next_sibling = this; - this->prev_sibling = new_parent->child_tail; - new_parent->child_tail = this; - this->parent_node = new_parent; - } -} - - -/*************************** GLUI_Node::link_this_to_parent_first() *******/ -/* Links as first child of parent */ - -void GLUI_Node::link_this_to_parent_first( GLUI_Node *new_parent ) -{ - if ( new_parent->child_head == NULL ) { /* parent has no children */ - new_parent->child_head = this; - new_parent->child_tail = this; - this->parent_node = new_parent; - } - else { /* parent has children */ - new_parent->child_head->prev_sibling = this; - this->next_sibling = new_parent->child_head; - new_parent->child_head = this; - this->parent_node = new_parent; - } -} - -/**************************** GLUI_Node::link_this_to_sibling_next() *****/ - -void GLUI_Node::link_this_to_sibling_next( GLUI_Node *sibling ) -{ - if ( sibling->next_sibling == NULL ) { /* node has no next sibling */ - sibling->next_sibling = this; - this->prev_sibling = sibling; - - /* This was the parent's last child, so update that as well */ - if ( sibling->parent_node != NULL ) { - sibling->parent_node->child_tail = this; - } - } - else { /* node already has a next sibling */ - sibling->next_sibling->prev_sibling = this; - this->next_sibling = sibling->next_sibling; - sibling->next_sibling = this; - this->prev_sibling = sibling; - } - - this->parent_node = sibling->parent_node; -} - - -/**************************** GLUI_Node::link_this_to_sibling_prev() *****/ - -void GLUI_Node::link_this_to_sibling_prev( GLUI_Node *sibling ) -{ - if ( sibling->prev_sibling == NULL ) { /* node has no prev sibling */ - sibling->prev_sibling = this; - this->next_sibling = sibling; - - /* This was the parent's first child, so update that as well */ - if ( sibling->parent_node != NULL ) { - sibling->parent_node->child_head = this; - } - } - else { /* node already has a prev sibling */ - sibling->prev_sibling->next_sibling = this; - this->prev_sibling = sibling->prev_sibling; - sibling->prev_sibling = this; - this->next_sibling = sibling; - } - - this->parent_node = sibling->parent_node; -} - -/**************************************** GLUI_Node::unlink() **************/ - -void GLUI_Node::unlink( void ) -{ - /* Unlink from prev sibling */ - if ( this->prev_sibling != NULL ) { - this->prev_sibling->next_sibling = this->next_sibling; - } - else { /* No prev sibling: this was parent's first child */ - this->parent_node->child_head = this->next_sibling; - } - - /* Unlink from next sibling */ - if ( this->next_sibling != NULL ) { - this->next_sibling->prev_sibling = this->prev_sibling; - } - else { /* No next sibling: this was parent's last child */ - this->parent_node->child_tail = this->prev_sibling; - } - - this->parent_node = NULL; - this->next_sibling = NULL; - this->prev_sibling = NULL; - this->child_head = NULL; - this->child_tail = NULL; -} - -/**************************************** GLUI_Node::dump() **************/ - -void GLUI_Node::dump( FILE *out, const char *name ) -{ - fprintf( out, "GLUI_node: %s\n", name ); - fprintf( out, " parent: %p child_head: %p child_tail: %p\n", - (void *) parent_node, - (void *) child_head, - (void *) child_tail ); - fprintf( out, " next: %p prev: %p\n", - (void *) next_sibling, - (void *) prev_sibling ); -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_panel.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_panel.cpp deleted file mode 100644 index 687b779..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_panel.cpp +++ /dev/null @@ -1,186 +0,0 @@ -/**************************************************************************** - - GLUI User Interface Toolkit - --------------------------- - - glui_panel.cpp - GLUI_Panel control class - - - -------------------------------------------------- - - Copyright (c) 1998 Paul Rademacher - - WWW: http://sourceforge.net/projects/glui/ - Forums: http://sourceforge.net/forum/?group_id=92496 - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -*****************************************************************************/ - -#include "glui_internal_control.h" - -GLUI_Panel::GLUI_Panel( GLUI_Node *parent, const char *name, int type ) -{ - common_init(); - set_name( name ); - user_id = -1; - int_val = type; - - parent->add_control( this ); -} - -/****************************** GLUI_Panel::draw() **********/ - -void GLUI_Panel::draw( int x, int y ) -{ - int top; - GLUI_DRAWINGSENTINAL_IDIOM - - if ( int_val == GLUI_PANEL_RAISED ) { - top = 0; - glLineWidth( 1.0 ); - glColor3f( 1.0, 1.0, 1.0 ); - glBegin( GL_LINE_LOOP ); - glVertex2i( 0, top ); glVertex2i( w, top ); - glVertex2i( 0, top ); glVertex2i( 0, h ); - glEnd(); - - glColor3f( .5, .5, .5 ); - glBegin( GL_LINE_LOOP ); - glVertex2i( w, top ); - glVertex2i( w, h ); - glVertex2i( 0, h ); - glVertex2i( w, h ); - glEnd(); - - /** ORIGINAL RAISED PANEL METHOD - A LITTLE TOO HIGH ** - glLineWidth(1.0); - glBegin( GL_LINES ); - glColor3f( 1.0, 1.0, 1.0 ); - glVertex2i( 1, 1 ); glVertex2i( w-2, 1 ); - glVertex2i( 1, 1 ); glVertex2i( 1, h-2 ); - - glColor3f( .5, .5, .5 ); - glVertex2i( w-1, 1 ); glVertex2i( w-1, h-1 ); - glVertex2i( 1, h-1 ); glVertex2i( w-1, h-1 ); - - glColor3f( 0.0, 0.0, 0.0 ); - glVertex2i( 0, h ); glVertex2i( w, h ); - glVertex2i( w, 0 ); glVertex2i( w, h ); - glEnd(); - - -- Touch up the lines a bit (needed in some opengl implementations - glBegin( GL_POINTS ); - glColor3f( .5, .5, .5 ); - glVertex2i( w-1, h-1 ); - glColor3f( 0.0, 0.0, 0.0 ); - glVertex2i( w, h ); - glEnd(); - **/ - } - else if ( int_val == GLUI_PANEL_EMBOSSED ) { - if ( parent_node == NULL || name == "" ) { - top = 0; - } - else { - top = GLUI_PANEL_EMBOSS_TOP; - } - - glLineWidth( 1.0 ); - glColor3f( 1.0, 1.0, 1.0 ); - glBegin( GL_LINE_LOOP ); - glVertex2i( 0, top ); glVertex2i( w, top ); - glVertex2i( w, h ); glVertex2i( 0, h ); - - glVertex2i( 1, top+1 ); glVertex2i( w-1, top+1 ); - glVertex2i( w-1, h-1 ); glVertex2i( 1, h-1 ); - glEnd(); - - glColor3f( .5, .5, .5 ); - glBegin( GL_LINE_LOOP ); - glVertex2i( 0, top ); - glVertex2i( w-1, top ); - glVertex2i( w-1, h-1 ); - glVertex2i( 0, h-1 ); - glEnd(); - - /**** Only display text in embossed panel ****/ - if ( parent_node != NULL && name != "" ) { /* Only draw non-null strings */ - int left = 7, height=GLUI_PANEL_NAME_DROP+1; - int str_width; - - str_width = string_width(name); - - if ( glui ) - glColor3ub(glui->bkgd_color.r,glui->bkgd_color.g,glui->bkgd_color.b); - glDisable( GL_CULL_FACE ); - glBegin( GL_QUADS ); - glVertex2i( left-3, 0 ); glVertex2i( left+str_width+3, 0 ); - glVertex2i( left+str_width+3, height ); glVertex2i( left-3, height ); - glEnd(); - - draw_name( left, GLUI_PANEL_NAME_DROP ); - } - } - - glLineWidth( 1.0 ); -} - -/****************************** GLUI_Panel::set_name() **********/ - -void GLUI_Panel::set_name( const char *new_name ) -{ - name = new_name ? new_name : ""; - - update_size(); - - if ( glui ) - glui->refresh(); -} - - -/****************************** GLUI_Panel::set_type() **********/ - -void GLUI_Panel::set_type( int new_type ) -{ - if ( new_type != int_val ) { - int_val = new_type; - update_size(); - redraw(); - } -} - - -/************************************** GLUI_Panel::update_size() **********/ - -void GLUI_Panel::update_size( void ) -{ - int text_size; - - if ( NOT glui ) - return; - - text_size = string_width(name); - - if ( w < text_size + 16 ) - w = text_size + 16 ; - - if ( name != "" AND int_val == GLUI_PANEL_EMBOSSED ) { - this->y_off_top = GLUI_YOFF + 8; - } - else { - this->y_off_top = GLUI_YOFF; - } -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_radio.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_radio.cpp deleted file mode 100644 index 157d18e..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_radio.cpp +++ /dev/null @@ -1,362 +0,0 @@ -/**************************************************************************** - - GLUI User Interface Toolkit - --------------------------- - - glui_radio.cpp - GLUI_RadioGroup and GLUI_RadioButton control classes - - - -------------------------------------------------- - - Copyright (c) 1998 Paul Rademacher - - WWW: http://sourceforge.net/projects/glui/ - Forums: http://sourceforge.net/forum/?group_id=92496 - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -*****************************************************************************/ - -#include "glui_internal_control.h" -#include - -/****************************** GLUI_RadioGroup::GLUI_RadioGroup() **********/ - -GLUI_RadioGroup::GLUI_RadioGroup(GLUI_Node *parent, - int *value_ptr, - int id, GLUI_CB cb) -{ - common_init(); - GLUI_String buf; - - set_ptr_val( value_ptr ); - if ( value_ptr ) { - int_val = *value_ptr; /** Can't call set_int_val(), b/c that - function will try to call the - callback, etc */ - /** Actually, maybe not **/ - last_live_int = *value_ptr; - } - - user_id = id; - glui_format_str( buf, "RadioGroup: %p", this ); - set_name( buf.c_str() ); - callback = cb; - - parent->add_control( this ); - - init_live(); -} - - -/****************************** GLUI_RadioGroup::draw() **********/ - -void GLUI_RadioGroup::draw( int x, int y ) -{ - if ( NOT can_draw() ) - return; - - draw_group(false); -} - - -/********************* GLUI_RadioGroup::draw_group(int translate) **********/ - -void GLUI_RadioGroup::draw_group( int translate ) -{ - GLUI_DRAWINGSENTINAL_IDIOM - GLUI_RadioButton *button; - this->int_val = int_val; - - glMatrixMode(GL_MODELVIEW ); - - button = (GLUI_RadioButton*) first_child(); - while( button != NULL ) { - glPushMatrix(); - if (translate) { - button->translate_to_origin(); - } - else { - glTranslatef(button->x_abs-x_abs, - button->y_abs-y_abs,0.0); - } - - if ( button->int_val ) - button->draw_checked(); - else - button->draw_unchecked(); - - glPopMatrix(); - - button = (GLUI_RadioButton*) button->next(); - } -} - - -/****************************** GLUI_RadioGroup::set_name() **********/ - -void GLUI_RadioGroup::set_name( const char *text ) -{ - name = text; - - if ( glui ) - glui->refresh(); -} - - -/********************************* GLUI_RadioGroup::set_selected() **********/ - -void GLUI_RadioGroup::set_selected( int int_val ) -{ - GLUI_RadioButton *button; - - this->int_val = int_val; - - button = (GLUI_RadioButton*) first_child(); - while( button != NULL ) { - if ( int_val == -1 ) { /*** All buttons in group are deselected ***/ - button->set_int_val(0); - } - else if ( int_val == button->user_id ) { /*** This is selected button ***/ - button->set_int_val(1); - } - else { /*** This is NOT selected button ***/ - button->set_int_val(0); - - } - button = (GLUI_RadioButton*) button->next(); - } - redraw(); -} - - -/************************ GLUI_RadioButton::GLUI_RadioButton() **********/ - -GLUI_RadioButton::GLUI_RadioButton( GLUI_RadioGroup *grp, const char *name ) -{ - common_init(); - - set_int_val( 0 ); - - /** A radio button's user id is always its ordinal number (zero-indexed) - within the group */ - user_id = grp->num_buttons; - set_name( name ); - group = grp; - - group->num_buttons++; /* Increments radiogroup's button count */ - group->add_control( this ); - - /*** Now update button states ***/ - group->set_int_val( group->int_val ); /* This tells the group to - reset itself to its - current value, thereby - updating all its buttons */ -} - - -/************************ GLUI_RadioButton::mouse_down_handler() **********/ - -int GLUI_RadioButton::mouse_down_handler( int local_x, int local_y ) -{ - if ( NOT group ) - return false; - - orig_value = group->int_val; - - currently_inside = true; - - group->set_selected( this->user_id ); - redraw(); - - return false; -} - -/********************** GLUI_RadioButton::mouse_held_down_handler() ******/ - -int GLUI_RadioButton::mouse_held_down_handler( int local_x, int local_y, - bool inside) -{ - if (inside != currently_inside) { - if (inside) group->set_selected( this->user_id ); - else group->set_selected( orig_value ); - currently_inside = inside; - redraw(); - } - - return false; -} - - -/*************************** GLUI_RadioButton::mouse_up_handler() **********/ - -int GLUI_RadioButton::mouse_up_handler( int local_x, int local_y, - bool inside ) -{ - if ( NOT group ) - return false; - - if ( NOT inside ) { - group->set_selected( orig_value ); - redraw(); - } - else { - /** Now we update the radio button group. We tell the group - handler to set the currently-selected item to this button, which - is reference by its user_id/ordinal number within group **/ - - group->set_selected( this->user_id ); - redraw(); - - /*** Now update the linked variable, and call the callback, - but ONLY if the value of the radio group actually changed ***/ - if ( group->int_val != orig_value ) { - group->output_live(true); /** Output live and update gfx ***/ - - group->execute_callback(); - } - } - - return false; -} - -/****************************** GLUI_RadioButton::draw() **********/ - -void GLUI_RadioButton::draw( int x, int y ) -{ - GLUI_DRAWINGSENTINAL_IDIOM - - if ( NOT group OR NOT can_draw() ) - return; - - /*** See if we're the currently-selected button. If so, draw ***/ - if ( group->int_val == this->user_id ) { - if ( enabled ) - glui->std_bitmaps.draw( GLUI_STDBITMAP_RADIOBUTTON_ON, 0, 0 ); - else - glui->std_bitmaps.draw( GLUI_STDBITMAP_RADIOBUTTON_ON_DIS, 0, 0 ); - } - else { - if ( enabled ) - glui->std_bitmaps.draw( GLUI_STDBITMAP_RADIOBUTTON_OFF, 0, 0 ); - else - glui->std_bitmaps.draw( GLUI_STDBITMAP_RADIOBUTTON_OFF_DIS, 0, 0 ); - } - - draw_active_area(); - - draw_name( text_x_offset, 10 ); -} - - -/************************************ GLUI_RadioButton::draw_checked() ******/ - -void GLUI_RadioButton::draw_checked( void ) -{ - GLUI_DRAWINGSENTINAL_IDIOM - if ( enabled ) - glui->std_bitmaps.draw( GLUI_STDBITMAP_RADIOBUTTON_ON, 0, 0 ); - else - glui->std_bitmaps.draw( GLUI_STDBITMAP_RADIOBUTTON_ON_DIS, 0, 0 ); - draw_active_area(); -} - - -/*********************************** GLUI_RadioButton::draw_unchecked() ******/ - -void GLUI_RadioButton::draw_unchecked( void ) -{ - GLUI_DRAWINGSENTINAL_IDIOM - - if ( enabled ) - glui->std_bitmaps.draw( GLUI_STDBITMAP_RADIOBUTTON_OFF, 0, 0 ); - else - glui->std_bitmaps.draw( GLUI_STDBITMAP_RADIOBUTTON_OFF_DIS, 0, 0 ); - draw_active_area(); -} - - -/**************************************** GLUI_RadioButton::draw_O() ********/ - -void GLUI_RadioButton::draw_O( void ) -{ - GLUI_DRAWINGSENTINAL_IDIOM - int i, j; - - glBegin( GL_POINTS ); - for(i=3; i<=GLUI_RADIOBUTTON_SIZE-3; i++ ) - for(j=3; j<=GLUI_RADIOBUTTON_SIZE-3; j++ ) - glVertex2i(i,j); - glEnd(); -} - - -/******************************** GLUI_RadioButton::update_size() **********/ - -void GLUI_RadioButton::update_size( void ) -{ - int text_size; - - if ( NOT glui ) - return; - - text_size = _glutBitmapWidthString( glui->font, name.c_str() ); - - /* if ( w < text_x_offset + text_size + 6 ) */ - w = text_x_offset + text_size + 6 ; -} - - -/************************* GLUI_RadioButton::draw_active_area() **************/ - -void GLUI_RadioButton::draw_active_area( void ) -{ - GLUI_DRAWINGSENTINAL_IDIOM - int text_width, left, right; - - text_width = _glutBitmapWidthString( glui->font, name.c_str() ); - left = text_x_offset-3; - right = left + 7 + text_width; - - if ( active ) { - glEnable( GL_LINE_STIPPLE ); - glLineStipple( 1, 0x5555 ); - glColor3f( 0., 0., 0. ); - } else { - glColor3ub( glui->bkgd_color.r, glui->bkgd_color.g, glui->bkgd_color.b ); - } - - glBegin( GL_LINE_LOOP ); - glVertex2i(left,0); glVertex2i( right,0); - glVertex2i(right,h+1); glVertex2i( left,h+1); - glEnd(); - - glDisable( GL_LINE_STIPPLE ); -} - - -/********************************* GLUI_RadioGroup::set_int_val() **********/ - -void GLUI_RadioGroup::set_int_val( int new_val ) -{ - if ( new_val == int_val ) - return; - - set_selected( new_val ); - redraw(); - - output_live(true); - -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_rollout.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_rollout.cpp deleted file mode 100644 index f0aa7fc..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_rollout.cpp +++ /dev/null @@ -1,275 +0,0 @@ -/**************************************************************************** - - GLUI User Interface Toolkit - --------------------------- - - glui_panel.cpp - GLUI_Panel control class - - - -------------------------------------------------- - - Copyright (c) 1998 Paul Rademacher - - WWW: http://sourceforge.net/projects/glui/ - Forums: http://sourceforge.net/forum/?group_id=92496 - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -*****************************************************************************/ - -#include "glui_internal_control.h" - -enum {rollout_height_pixels=GLUI_DEFAULT_CONTROL_HEIGHT + 7}; - -/****************************** GLUI_Rollout::GLUI_Rollout() **********/ - -GLUI_Rollout::GLUI_Rollout( GLUI_Node *parent, const char *name, - int open, int type ) -{ - common_init(); - set_name( name ); - user_id = -1; - int_val = type; - - if ( NOT open ) { - is_open = false; - h = rollout_height_pixels; - } - - parent->add_control( this ); -} - -/****************************** GLUI_Rollout::open() **********/ - -void GLUI_Rollout::open( void ) -{ - if ( NOT glui ) - return; - - if ( is_open ) - return; - is_open = true; - - GLUI_DRAWINGSENTINAL_IDIOM - - /* Copy hidden children into our private list "collapsed_node" */ - child_head = collapsed_node.child_head; - child_tail = collapsed_node.child_tail; - collapsed_node.child_head = NULL; - collapsed_node.child_tail = NULL; - - if ( child_head != NULL ) { - ((GLUI_Control*) child_head)->unhide_internal( true ); - } - - glui->refresh(); -} - - -/****************************** GLUI_Rollout::close() **********/ - -void GLUI_Rollout::close( void ) -{ - if ( NOT glui ) - return; - - if ( NOT is_open ) - return; - is_open = false; - - GLUI_DRAWINGSENTINAL_IDIOM - - if ( child_head != NULL ) { - ((GLUI_Control*) child_head)->hide_internal( true ); - } - - /* Move all children into a private list of hidden children */ - collapsed_node.child_head = first_child(); - collapsed_node.child_tail = last_child(); - child_head = NULL; - child_tail = NULL; - - this->h = rollout_height_pixels; - - glui->refresh(); -} - - -/**************************** GLUI_Rollout::mouse_down_handler() **********/ - - -int GLUI_Rollout::mouse_down_handler( int local_x, int local_y ) -{ - if ( local_y - y_abs > rollout_height_pixels ) { - initially_inside = currently_inside = false; - return false; - } - - currently_inside = true; - initially_inside = true; - redraw(); - - return false; -} - - -/**************************** GLUI_Rollout::mouse_held_down_handler() ****/ - -int GLUI_Rollout::mouse_held_down_handler( - int local_x, int local_y, - bool new_inside ) -{ - if ( NOT initially_inside ) - return false; - - if ( local_y - y_abs> rollout_height_pixels ) - new_inside = false; - - if (new_inside != currently_inside) { - currently_inside = new_inside; - redraw(); - } - - return false; -} - - -/**************************** GLUI_Rollout::mouse_down_handler() **********/ - -int GLUI_Rollout::mouse_up_handler( int local_x, int local_y, bool inside ) -{ - if ( currently_inside ) { - if ( is_open ) - close(); - else - open(); - } - - currently_inside = false; - initially_inside = false; - redraw(); - - return false; -} - - -/********************************* GLUI_Rollout::draw() ***********/ - -void GLUI_Rollout::draw( int x, int y ) -{ - GLUI_DRAWINGSENTINAL_IDIOM - - int left, right, top, bottom; - - left = 5; - right = w-left; - top = 3; - bottom = 3+16; - - if ( is_open ) - draw_emboss_box( 0, w, top+3, h ); - else - draw_emboss_box( 0, w, top+3, h-7 ); - - glui->draw_raised_box( left, top, w-left*2, 16 ); - - if ( glui ) - glColor3ub(glui->bkgd_color.r,glui->bkgd_color.g,glui->bkgd_color.b); - glDisable( GL_CULL_FACE ); - glBegin( GL_QUADS ); - glVertex2i( left+1, top+1 ); glVertex2i( right-1, top+1 ); - glVertex2i( right-1, bottom-1 ); glVertex2i( left+1, bottom-1 ); - glEnd(); - - draw_name( left+8, top+11 ); - - if ( active ) - /*draw_active_box( left+4, left+string_width( name.c_str() )+12, */ - draw_active_box( left+4, right-17, - top+2, bottom-2 ); - - - /** Draw '+' or '-' **/ - - glBegin( GL_LINES ); - if ( is_open ) { - if ( enabled ) glColor3f( 0.0, 0.0, 0.0 ); - else glColor3f( 0.5, 0.5, 0.5 ); - glVertex2i(right-14,(top+bottom)/2); glVertex2i(right-5,(top+bottom)/2); - - glColor3f( 1.0, 1.0, 1.0 ); - glVertex2i(right-14,1+(top+bottom)/2);glVertex2i(right-5,1+(top+bottom)/2); - } - else - { - glColor3f( 1.0, 1.0, 1.0 ); - glVertex2i(right-9,top+3); glVertex2i(right-9,bottom-4); - glVertex2i(right-14,(top+bottom)/2); glVertex2i(right-5,(top+bottom)/2); - - if ( enabled ) glColor3f( 0.0, 0.0, 0.0 ); - else glColor3f( 0.5, 0.5, 0.5 ); - glVertex2i(right-14,-1+(top+bottom)/2); - glVertex2i(right-5,-1+(top+bottom)/2); - glVertex2i(right-10,top+3); - glVertex2i(right-10,bottom-4); - } - glEnd(); - - glLineWidth( 1.0 ); - - if (currently_inside) {draw_pressed(); /* heavy black outline when pressed */ } -} - - -/***************************** GLUI_Rollout::update_size() **********/ - -void GLUI_Rollout::update_size( void ) -{ - int text_size; - - if ( NOT glui ) - return; - - text_size = string_width(name); - - if ( w < text_size + 36 ) - w = text_size + 36; -} - - -/**************************** GLUI_Rollout::draw_pressed() ***********/ - -void GLUI_Rollout::draw_pressed( void ) -{ - int left, right, top, bottom; - - left = 5; - right = w-left; - top = 3; - bottom = 3+16; - - - glColor3f( 0.0, 0.0, 0.0 ); - - glBegin( GL_LINE_LOOP ); - glVertex2i( left, top ); glVertex2i( right, top ); - glVertex2i( right, bottom ); glVertex2i( left,bottom ); - glEnd(); - - glBegin( GL_LINE_LOOP ); - glVertex2i( left+1, top+1 ); glVertex2i( right-1, top+1 ); - glVertex2i( right-1, bottom-1 ); glVertex2i( left+1,bottom-1 ); - glEnd(); -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_rotation.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_rotation.cpp deleted file mode 100644 index e3e84be..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_rotation.cpp +++ /dev/null @@ -1,473 +0,0 @@ -/**************************************************************************** - - GLUI User Interface Toolkit - --------------------------- - - glui_rotation - GLUI_Rotation control class - - - -------------------------------------------------- - - Copyright (c) 1998 Paul Rademacher - - WWW: http://sourceforge.net/projects/glui/ - Forums: http://sourceforge.net/forum/?group_id=92496 - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -*****************************************************************************/ - -#include "glui.h" -#include "arcball.h" -#include "algebra3.h" - -/*************************** GLUI_Rotation::iaction_mouse_down_handler() ***/ - -int GLUI_Rotation::iaction_mouse_down_handler( int local_x, int local_y ) -{ - copy_float_array_to_ball(); - - init_ball(); - - local_y = (int) floor(2.0 * ball->center[1] - local_y); - - ball->mouse_down( local_x, local_y ); - - /* printf( "%d %d - %f %f\n", local_x, local_y, ball->center[0], ball->center[1] ); */ - - copy_ball_to_float_array(); - - spinning = false; - - return false; -} - - -/*********************** GLUI_Rotation::iaction_mouse_up_handler() **********/ - -int GLUI_Rotation::iaction_mouse_up_handler( int local_x, int local_y, - bool inside ) -{ - copy_float_array_to_ball(); - - ball->mouse_up(); - - return false; -} - - -/******************* GLUI_Rotation::iaction_mouse_held_down_handler() ******/ - -int GLUI_Rotation::iaction_mouse_held_down_handler( int local_x, int local_y, - bool inside) -{ - if ( NOT glui ) - return 0; - - copy_float_array_to_ball(); - - local_y = (int) floor(2.0 * ball->center[1] - local_y); - - /* printf( "%d %d\n", local_x, local_y ); */ - - ball->mouse_motion( local_x, local_y, 0, - (glui->curr_modifiers & GLUT_ACTIVE_ALT) != 0, - (glui->curr_modifiers & GLUT_ACTIVE_CTRL) != 0 ); - - copy_ball_to_float_array(); - - if ( can_spin ) - spinning = true; - - return false; -} - - -/******************** GLUI_Rotation::iaction_draw_active_area_persp() **************/ - -void GLUI_Rotation::iaction_draw_active_area_persp( void ) -{ - /********** arcball *******/ - copy_float_array_to_ball(); - - setup_texture(); - setup_lights(); - - glEnable(GL_CULL_FACE ); - - glMatrixMode( GL_MODELVIEW ); - glPushMatrix(); - - mat4 tmp_rot = *ball->rot_ptr; - glMultMatrixf( (float*) &tmp_rot[0][0] ); - - /*** Draw the checkered box ***/ - /*glDisable( GL_TEXTURE_2D ); */ - draw_ball(1.35); // 1.96 ); - - glPopMatrix(); - - glBindTexture(GL_TEXTURE_2D,0); /* unhook our checkerboard texture */ - glDisable( GL_TEXTURE_2D ); - glDisable( GL_LIGHTING ); - glDisable( GL_CULL_FACE ); -} - - -/******************** GLUI_Rotation::iaction_draw_active_area_ortho() **********/ - -void GLUI_Rotation::iaction_draw_active_area_ortho( void ) -{ - float radius; - radius = (float)(h-22)/2.0; /*MIN((float)w/2.0, (float)h/2.0); */ - - /********* Draw emboss circles around arcball control *********/ - int k; - glLineWidth( 1.0 ); - glBegin( GL_LINE_LOOP); - for( k=0; k<60; k++ ) { - float phi = 2*M_PI*(float)k/60.0; - vec2 p( cos(phi) * (2.0 + radius), sin(phi) * (2.0 + radius)); - if ( p[1] < -p[0] ) glColor3ub( 128,128,128 ); - else glColor3ub( 255,255,255 ); - glVertex2fv((float*)&p[0]); - } - glEnd(); - - glBegin( GL_LINE_LOOP); - for( k=0; k<60; k++ ) { - float phi = 2*M_PI*(float)k/60.0; - vec2 p( cos(phi) * (1.0 + radius), sin(phi) * (1.0 + radius)); - if ( enabled ) { - if ( p[1] < -p[0] ) glColor3ub( 0,0,0); - else glColor3ub( 192,192,192); - } - else - { - if ( p[1] < -p[0] ) glColor3ub( 180,180,180); - else glColor3ub( 192,192,192); - } - glVertex2fv((float*)&p[0]); - } - glEnd(); -} - - -/******************************** GLUI_Rotation::iaction_dump() **********/ - -void GLUI_Rotation::iaction_dump( FILE *output ) -{ -} - - -/******************** GLUI_Rotation::iaction_special_handler() **********/ - -int GLUI_Rotation::iaction_special_handler( int key,int modifiers ) -{ - - return false; -} - -/********************************** GLUI_Rotation::init_ball() **********/ - -void GLUI_Rotation::init_ball( void ) -{ - /*printf( "%f %f %f", float( MIN(w/2,h/2)), (float) w/2, (float) h/2 ); */ - - ball->set_params( vec2( (float)(w/2), (float)((h-18)/2)), - (float) 2.0*(h-18) ); - /*ball->set_damping( .05 ); */ - /*float( MIN(w/2,h/2))*2.0 ); */ - /* ball->reset_mouse(); */ -} - - -/****************************** GLUI_Rotation::setup_texture() *********/ - -void GLUI_Rotation::setup_texture( void ) -{ - static GLuint tex=0u; - GLenum t=GL_TEXTURE_2D; - glEnable(t); - glTexEnvf( GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE ); - glColor3f( 1.0, 1.0, 1.0 ); - if (tex!=0u) { - /* (OSL 2006/06) Just use glBindTexture to avoid having to re-upload the whole checkerboard every frame. */ - glBindTexture(t,tex); - return; - } /* Else need to make a new checkerboard texture */ - glGenTextures(1,&tex); - glBindTexture(t,tex); - glEnable(t); - - unsigned int i, j; - int dark, light; /*** Dark and light colors for ball checkerboard ***/ - -/* Note: you can change the number of checkers across there sphere in draw_ball */ -#define CHECKBOARD_SIZE 64 /* pixels across whole texture */ -#define CHECKBOARD_REPEAT 32u /* pixels across one black/white sector */ - unsigned char texture_image[CHECKBOARD_SIZE] [CHECKBOARD_SIZE] [3]; - unsigned char c; - for( i=0; iinit(); /** reset quaternion, etc. **/ - ball->set_params( vec2( (float)(w/2), (float)((h-18)/2)), - (float) 2.0*(h-18) ); - - set_spin( this->damping ); - - copy_ball_to_float_array(); - - translate_and_draw_front(); - - output_live(true); /*** Output live and draw main grx window ***/ -} - - -/****************************** GLUI_Rotation::needs_idle() *********/ - -bool GLUI_Rotation::needs_idle( void ) const -{ - return can_spin; -} - - -/****************************** GLUI_Rotation::idle() ***************/ - -void GLUI_Rotation::idle( void ) -{ - spinning = ball->is_spinning?true:false; - - if ( can_spin AND spinning ) { - copy_float_array_to_ball(); - ball->idle(); - - *ball->rot_ptr = *ball->rot_ptr * ball->rot_increment; - - mat4 tmp_rot; - tmp_rot = *ball->rot_ptr; - - copy_ball_to_float_array(); - - draw_active_area_only = true; - translate_and_draw_front(); - draw_active_area_only = false; - - output_live(true); /** output live and update gfx **/ - } - else { - } -} - - -/********************** GLUI_Rotation::copy_float_array_to_ball() *********/ - -void GLUI_Rotation::copy_float_array_to_ball( void ) -{ - int i; - float *fp_src, *fp_dst; - - fp_src = &float_array_val[0]; - fp_dst = &((*ball->rot_ptr)[0][0]); - - for( i=0; i<16; i++ ) { - *fp_dst = *fp_src; - - fp_src++; - fp_dst++; - } -} - - -/********************** GLUI_Rotation::copy_ball_to_float_array() *********/ - -void GLUI_Rotation::copy_ball_to_float_array( void ) -{ - mat4 tmp_rot; - tmp_rot = *ball->rot_ptr; - - set_float_array_val( (float*) &tmp_rot[0][0] ); -} - - -/************************ GLUI_Rotation::set_spin() **********************/ - -void GLUI_Rotation::set_spin( float damp_factor ) -{ - if ( damp_factor == 0.0 ) - can_spin = false; - else - can_spin = true; - - ball->set_damping( 1.0 - damp_factor ); - - this->damping = damp_factor; -} - - -/************** GLUI_Rotation::GLUI_Rotation() ********************/ - -GLUI_Rotation::GLUI_Rotation( GLUI_Node *parent, - const char *name, float *value_ptr, - int id, - GLUI_CB cb ) -{ - common_init(); - set_ptr_val( value_ptr ); - user_id = id; - set_name( name ); - callback = cb; - parent->add_control( this ); - init_live(); - - /*** Init the live 4x4 matrix. This is different than the standard - live variable behavior, since the original value of the 4x4 matrix - is ignored and reset to Identity ***/ -/* -NO! WVB - if ( value_ptr != NULL ) { - int i, j, index; - for( i=0; i<4; i++ ) { - for( j=0; j<4; j++ ) { - index = i*4+j; - if ( i==j ) - value_ptr[index] = 1.0; - else - value_ptr[index] = 0.0; - } - } - } -*/ - /*init_ball(); */ - - -} - - -/************** GLUI_Rotation::common_init() ********************/ - -void GLUI_Rotation::common_init( void ) -{ - glui_format_str( name, "Rotation: %p", this ); -// type = GLUI_CONTROL_ROTATION; - w = GLUI_ROTATION_WIDTH; - h = GLUI_ROTATION_HEIGHT; - can_activate = true; - live_type = GLUI_LIVE_FLOAT_ARRAY; - float_array_size = 16; - quadObj = NULL; - alignment = GLUI_ALIGN_CENTER; - can_spin = false; - spinning = false; - damping = 0.0; - ball = new Arcball; - - reset(); -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_scrollbar.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_scrollbar.cpp deleted file mode 100644 index 9540d40..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_scrollbar.cpp +++ /dev/null @@ -1,832 +0,0 @@ -/**************************************************************************** - - GLUI User Interface Toolkit - --------------------------- - - glui_scrollbar.cpp - GLUI_Scrollbar class - - -------------------------------------------------- - - Copyright (c) 2004 John Kew, 1998 Paul Rademacher - - This program is freely distributable without licensing fees and is - provided without guarantee or warrantee expressed or implied. This - program is -not- in the public domain. - -*****************************************************************************/ - -#include "glui_internal_control.h" -#include -#include - -/*static int __debug=0; */ - -#define GLUI_SCROLL_GROWTH_STEPS 800 -#define GLUI_SCROLL_MIN_GROWTH_STEPS 100 -#define GLUI_SCROLL_CALLBACK_INTERVAL 1 /* Execute the user's callback every this many clicks */ - -enum { - GLUI_SCROLL_ARROW_UP, - GLUI_SCROLL_ARROW_DOWN, - GLUI_SCROLL_ARROW_LEFT, - GLUI_SCROLL_ARROW_RIGHT -}; - - -/****************************** GLUI_Scrollbar::GLUI_Scrollbar() **********/ -// Constructor, no live var -GLUI_Scrollbar::GLUI_Scrollbar( GLUI_Node *parent, - const char *name, - int horz_vert, - int data_type, - int id, GLUI_CB callback - /*,GLUI_Control *object - ,GLUI_InterObject_CB obj_cb*/ - ) -{ - common_construct(parent, name, horz_vert, data_type, NULL, id, callback/*, object, obj_cb*/); -} - -/****************************** GLUI_Scrollbar::GLUI_Scrollbar() **********/ -// Constructor, int live var -GLUI_Scrollbar::GLUI_Scrollbar( GLUI_Node *parent, const char *name, - int horz_vert, - int *live_var, - int id, GLUI_CB callback - /*,GLUI_Control *object - ,GLUI_InterObject_CB obj_cb*/ - ) -{ - common_construct(parent, name, horz_vert, GLUI_SCROLL_INT, live_var, id, callback/*, object, obj_cb*/); -} - -/****************************** GLUI_Scrollbar::GLUI_Scrollbar() **********/ -// Constructor, float live var -GLUI_Scrollbar::GLUI_Scrollbar( GLUI_Node *parent, const char *name, - int horz_vert, - float *live_var, - int id, GLUI_CB callback - /*,GLUI_Control *object - ,GLUI_InterObject_CB obj_cb*/ - ) -{ - common_construct(parent, name, horz_vert, GLUI_SCROLL_FLOAT, live_var, id, callback/*, object, obj_cb*/); -} - -/****************************** GLUI_Scrollbar::common_init() **********/ -void GLUI_Scrollbar::common_init(void) -{ - horizontal = true; - h = GLUI_SCROLL_ARROW_HEIGHT; - w = GLUI_TEXTBOX_WIDTH; - alignment = GLUI_ALIGN_CENTER; - x_off = 0; - y_off_top = 0; - y_off_bot = 0; - can_activate = true; - state = GLUI_SCROLL_STATE_NONE; - growth_exp = GLUI_SCROLL_DEFAULT_GROWTH_EXP; - callback_count = 0; - first_callback = true; - user_speed = 1.0; - float_min = 0.0; - float_max = 0.0; - int_min = 0; - int_max = 0; - associated_object = NULL; - last_update_time=0; - velocity_limit=50.0; /* Change value by at most 50 per second */ - box_length = 0; - box_start_position = 0; - box_end_position = 0; - track_length = 0; -} - -/****************************** GLUI_Scrollbar::common_construct() **********/ -void GLUI_Scrollbar::common_construct( - GLUI_Node *parent, - const char *name, - int horz_vert, - int data_type, - void *data, - int id, GLUI_CB callback - /*,GLUI_Control *object, - GLUI_InterObject_CB obj_cb*/ - ) -{ - common_init(); - - // make sure limits are wide enough to hold live value - if (data_type==GLUI_SCROLL_FLOAT) { - float lo = 0.0f, hi=1.0f; - if (data) { - float d = *(float*)(data); - lo = MIN(lo, d); - hi = MAX(hi, d); - } - this->set_float_limits(lo,hi); - this->set_float_val(lo); - this->live_type = GLUI_LIVE_FLOAT; - } else { - int lo = 0, hi=100; - if (data) { - int d = *(int*)(data); - lo = MIN(lo, d); - hi = MAX(hi, d); - } - this->set_int_limits(lo,hi); - this->set_int_val(0); - this->live_type = GLUI_LIVE_INT; - } - this->data_type = data_type; - this->set_ptr_val( data ); - this->set_name(name); - this->user_id = id; - this->callback = callback; - //this->associated_object = object; - //this->object_cb = obj_cb; - this->horizontal=(horz_vert==GLUI_SCROLL_HORIZONTAL); - if (this->horizontal) { - this->h = GLUI_SCROLL_ARROW_HEIGHT; - this->w = GLUI_TEXTBOX_WIDTH; - } else { - this->h = GLUI_TEXTBOX_HEIGHT; - this->w = GLUI_SCROLL_ARROW_WIDTH; - } - parent->add_control( this ); - this->init_live(); -} - -/****************************** GLUI_Scrollbar::mouse_down_handler() **********/ - -int GLUI_Scrollbar::mouse_down_handler( int local_x, int local_y ) -{ - last_update_time=GLUI_Time()-1.0; - this->state = find_arrow( local_x, local_y ); - GLUI_Master.glui_setIdleFuncIfNecessary(); - - /* printf( "spinner: mouse down : %d/%d arrow:%d\n", local_x, local_y, - find_arrow( local_x, local_y )); - */ - - if ( state != GLUI_SCROLL_STATE_UP AND state != GLUI_SCROLL_STATE_DOWN) - return true; - - reset_growth(); - - /*** ints and floats behave a bit differently. When you click on - an int spinner, you expect the value to immediately go up by 1, whereas - for a float it'll go up only by a fractional amount. Therefore, we - go ahead and increment by one for int spinners ***/ -#if 1 - if ( data_type == GLUI_SCROLL_INT ) { - // Allow for possibility of reversed limits - int lo = MIN(int_min,int_max); - int hi = MAX(int_min,int_max); - int increase = int_min < int_max ? 1 : -1; - int new_val = int_val; - if ( state == GLUI_SCROLL_STATE_UP ) { - new_val += increase; - } else if ( state == GLUI_SCROLL_STATE_DOWN ) { - new_val -= increase; - } - if (new_val >= lo && new_val <= hi && new_val!=int_val) { - set_int_val(new_val); - do_callbacks(); - } - } -#endif - do_click(); - redraw(); - - return false; -} - - -/******************************** GLUI_Scrollbar::mouse_up_handler() **********/ - -int GLUI_Scrollbar::mouse_up_handler( int local_x, int local_y, bool inside ) -{ - state = GLUI_SCROLL_STATE_NONE; - GLUI_Master.glui_setIdleFuncIfNecessary(); - - /* printf("spinner: mouse up : %d/%d inside: %d\n",local_x,local_y,inside); */ - - /*glutSetCursor( GLUT_CURSOR_INHERIT ); */ - glutSetCursor( GLUT_CURSOR_LEFT_ARROW ); - - redraw(); - - /* do_callbacks(); --- stub */ - /* if ( callback ) */ - /* callback( this->user_id ); */ - - return false; -} - - -/***************************** GLUI_Scrollbar::mouse_held_down_handler() ******/ - -int GLUI_Scrollbar::mouse_held_down_handler( int local_x, int local_y, - bool new_inside) -{ - int new_state; - if ( state == GLUI_SCROLL_STATE_NONE ) - return false; - - /* printf("spinner: mouse held: %d/%d inside: %d\n",local_x,local_y, - new_inside); - */ - - if ( state == GLUI_SCROLL_STATE_SCROLL) { /* dragging? */ - do_drag( local_x-x_abs, local_y-y_abs ); - } - else { /* not dragging */ - new_state = find_arrow( local_x, local_y ); - - if ( new_state == state ) { - /** Still in same arrow **/ - do_click(); - } - } - redraw(); - - return false; -} - - -/****************************** GLUI_Scrollbar::key_handler() **********/ - -int GLUI_Scrollbar::key_handler( unsigned char key,int modifiers ) -{ - return true; -} - - -/****************************** GLUI_Scrollbar::draw() **********/ - -void GLUI_Scrollbar::draw( int x, int y ) -{ - GLUI_DRAWINGSENTINAL_IDIOM - - if ( horizontal ) { - draw_scroll_arrow(GLUI_SCROLL_ARROW_LEFT, 0, 0); - draw_scroll_arrow(GLUI_SCROLL_ARROW_RIGHT, w-GLUI_SCROLL_ARROW_WIDTH, 0); - } else { - draw_scroll_arrow(GLUI_SCROLL_ARROW_UP, 0, 0); - draw_scroll_arrow(GLUI_SCROLL_ARROW_DOWN, 0, h-GLUI_SCROLL_ARROW_HEIGHT); - } - draw_scroll(); -} - - -/****************************** GLUI_Scrollbar::draw_scroll_arrow() **********/ - -void GLUI_Scrollbar::draw_scroll_arrow(int arrowtype, int x, int y) -{ - float offset=0; - float L=3.5f,HC=7.f,R=10.5f; - float T=4.5f,VC=8.f,B=11.5; - const float verts[][6]={ - { L,10.5f, R, 10.5f, HC, 6.5f }, // up arrow - { L,6.5f, R, 6.5f, HC,10.5f }, // down arrow - { R-2,T, R-2, B, L+1, VC }, // left arrow - { L+2,T, L+2, B, R-1, VC } // right arrow - }; - - const float *tri = NULL; - - switch (arrowtype) - { - case GLUI_SCROLL_ARROW_UP: - tri = verts[0]; - if (state & GLUI_SCROLL_STATE_UP) offset = 1; - break; - - case GLUI_SCROLL_ARROW_DOWN: - tri = verts[1]; - if (state & GLUI_SCROLL_STATE_DOWN) offset = 1; - break; - - case GLUI_SCROLL_ARROW_LEFT: - tri = verts[2]; - if (state & GLUI_SCROLL_STATE_DOWN) offset = 1; - break; - - case GLUI_SCROLL_ARROW_RIGHT: - tri = verts[3]; - if (state & GLUI_SCROLL_STATE_UP) offset = 1; - break; - - default: - return; /* tri is NULL */ - } - - glColor3ubv(&glui->bkgd_color.r); - glRecti(x,y,x+GLUI_SCROLL_ARROW_WIDTH,y+GLUI_SCROLL_ARROW_HEIGHT); - if (!offset) { - glui->draw_raised_box(x,y+1,GLUI_SCROLL_ARROW_WIDTH-1,GLUI_SCROLL_ARROW_HEIGHT-1); - } else { - glColor3ub(128,128,128); - glBegin(GL_LINE_LOOP); - int x2=x+GLUI_SCROLL_ARROW_WIDTH, y2=y+GLUI_SCROLL_ARROW_HEIGHT; - glVertex2i(x ,y); - glVertex2i(x2,y); - glVertex2i(x2,y2); - glVertex2i(x ,y2); - glEnd(); - } - - GLubyte black[]={0,0,0}; - GLubyte white[]={255,255,255}; - GLubyte gray[]={128,128,128}; - GLubyte *color=black; - if (!enabled) { - offset = 1; - color = white; - } - glTranslatef(x+offset,y+offset,0); - glColor3ubv(color); - glBegin(GL_TRIANGLES); - glVertex2fv(tri); glVertex2fv(tri+2), glVertex2fv(tri+4); - glEnd(); - glTranslatef(-(x+offset),-(y+offset),0); - - if (!enabled) { // once more! - glTranslatef(x,y,0); - glColor3ubv(gray); - glBegin(GL_TRIANGLES); - glVertex2fv(tri); glVertex2fv(tri+2), glVertex2fv(tri+4); - glEnd(); - glTranslatef(-x,-y,0); - } -} - - -void GLUI_Scrollbar::draw_scroll() { - update_scroll_parameters(); - - // Draw track using a checkerboard background - const unsigned char scroll_bg[] = { - 0xD4, 0xD0, 0xC8, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xD4, 0xD0, 0xC8 - }; - glColor3f( 1.0, 1.0, 1.0 ); - glPixelStorei( GL_UNPACK_ALIGNMENT, 1 ); - glEnable( GL_TEXTURE_2D); - glTexEnvf( GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE ); - glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT ); - glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT ); - glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST ); - glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST ); - glTexImage2D( GL_TEXTURE_2D, 0, GL_RGB, 2, 2, 0, GL_RGB, GL_UNSIGNED_BYTE, - scroll_bg); - - float y0 = horizontal? 0 : GLUI_SCROLL_ARROW_HEIGHT; - float y1 = horizontal? h : h-GLUI_SCROLL_ARROW_HEIGHT; - float x0 = horizontal? GLUI_SCROLL_ARROW_WIDTH : 0; - float x1 = horizontal? w-GLUI_SCROLL_ARROW_WIDTH : w; - x0-=0.5; y0+=0.5; - x1-=0.5; y1+=0.5; - float dy = y1-y0; - float dx = x1-x0; - glBegin(GL_QUADS); - glTexCoord2f(0, 0); glVertex2f(x0,y0); - glTexCoord2f(dx*0.5f,0); glVertex2f(x1,y0); - glTexCoord2f(dx*0.5f,dy*0.5f); glVertex2f(x1,y1); - glTexCoord2f(0, dy*0.5f); glVertex2f(x0,y1); - glEnd(); - glDisable(GL_TEXTURE_2D); - - // Draw scroll box - int box = box_start_position; - if (horizontal) { - box += GLUI_SCROLL_ARROW_WIDTH; - draw_scroll_box(box,1,box_length,h); - } else { - box += GLUI_SCROLL_ARROW_HEIGHT+1; - draw_scroll_box(0,box,w,box_length); - } -} - -/****************************** GLUI_Scrollbar::draw_scroll_box() **********/ - -void GLUI_Scrollbar::draw_scroll_box(int x, int y, int w, int h) -{ - if (!enabled) return; - glColor3ubv(&glui->bkgd_color.r); - glRecti(x,y,x+w,y+h); - glui->draw_raised_box(x,y, w-1, h-1); - - if (active) { - glEnable( GL_LINE_STIPPLE ); - glLineStipple( 1, 0x5555 ); - glColor3f( 0., 0., 0. ); - glBegin(GL_LINE_LOOP); - int x1 = x+2, y1 = y+2, x2 = x+w-4, y2 = y+h-4; - glVertex2i(x1,y1); - glVertex2i(x2,y1); - glVertex2i(x2,y2); - glVertex2i(x1,y2); - glEnd(); - glDisable( GL_LINE_STIPPLE ); - } -} - - - -/**************************** update_scroll_parameters ***********/ - -void GLUI_Scrollbar::update_scroll_parameters() { - track_length = horizontal? - this->w-GLUI_SCROLL_ARROW_WIDTH*2 : - this->h-GLUI_SCROLL_ARROW_HEIGHT*2; - if (data_type==GLUI_SCROLL_INT) - { - if (int_max==int_min) - box_length=track_length; - else { - const int MIN_TAB = GLUI_SCROLL_BOX_STD_HEIGHT; - //box_length = int(track_length/float(visible_range)); - //if (box_length < MIN_TAB) - box_length = MIN_TAB; - } - float pixels_per_unit = (track_length-box_length)/float(int_max-int_min); - if (horizontal) - box_start_position = int((int_val-int_min)*pixels_per_unit); - else - box_start_position = int((int_max-int_val)*pixels_per_unit); - box_end_position = box_start_position+box_length; - } - else if (data_type==GLUI_SCROLL_FLOAT) - { - if (float_max==float_min) - box_length=track_length; - else { - box_length = GLUI_SCROLL_BOX_STD_HEIGHT; - } - float pixels_per_unit = (track_length-box_length)/float(float_max-float_min); - if (horizontal) - box_start_position = int((float_val-float_min)*pixels_per_unit); - else - box_start_position = int((float_max-float_val)*pixels_per_unit); - box_end_position = box_start_position+box_length; - } -} - - -/********************************* GLUI_Scrollbar::special_handler() **********/ - -int GLUI_Scrollbar::special_handler( int key,int modifiers ) -{ - if ( !horizontal && key == GLUT_KEY_UP ) { - mouse_down_handler( x_abs + w - GLUI_SCROLL_ARROW_WIDTH + 1, - y_abs + 1 ); - mouse_up_handler( x_abs + w - GLUI_SCROLL_ARROW_WIDTH + 1, - y_abs + 1, true ); - } - else if ( !horizontal && key == GLUT_KEY_DOWN ) { - mouse_down_handler(x_abs + w - GLUI_SCROLL_ARROW_WIDTH + 1, - y_abs+1+GLUI_SCROLL_ARROW_HEIGHT); - mouse_up_handler( x_abs + w - GLUI_SCROLL_ARROW_WIDTH + 1, - y_abs+1 +GLUI_SCROLL_ARROW_HEIGHT, - true ); - } - if ( horizontal && key == GLUT_KEY_LEFT ) { - mouse_down_handler( x_abs + 1,y_abs + 1 ); - mouse_up_handler( x_abs + 1, y_abs + 1, true ); - } - else if ( horizontal && key == GLUT_KEY_RIGHT ) { - mouse_down_handler(x_abs + w - GLUI_SCROLL_ARROW_WIDTH + 1, - y_abs+1); - mouse_up_handler( x_abs + w - GLUI_SCROLL_ARROW_WIDTH + 1, - y_abs+1, - true ); - } - else if ( key == GLUT_KEY_HOME ) { /** Set value to limit top - - or increment by 10 **/ - } - else if ( key == GLUT_KEY_END ) { - } - - return true; -} - - -/************************************ GLUI_Scrollbar::update_size() **********/ - -void GLUI_Scrollbar::update_size( void ) -{ - if (horizontal) { - h = GLUI_SCROLL_ARROW_HEIGHT; - if (associated_object) { - this->w = ((GLUI_Control *)associated_object)->w; - } - } - else { - w = GLUI_SCROLL_ARROW_WIDTH; - if (associated_object) { - this->h = ((GLUI_Control *)associated_object)->h; - } - } -} - - -/************************************ GLUI_Scrollbar::find_arrow() ************/ - -int GLUI_Scrollbar::find_arrow( int local_x, int local_y ) -{ - - local_x = local_x-x_abs; - local_y = local_y-y_abs; - - if (horizontal) - { - if ( local_y >= h-GLUI_SCROLL_ARROW_HEIGHT-3 && local_y <= h) - { - update_scroll_parameters(); - if ( local_x >= 0 AND local_x <= (GLUI_SCROLL_ARROW_WIDTH+box_start_position) ) - { - return GLUI_SCROLL_STATE_DOWN; - } - if ( local_x >= (GLUI_SCROLL_ARROW_WIDTH+box_end_position) - AND local_x <= (w+GLUI_SCROLL_ARROW_WIDTH) ) - { - return GLUI_SCROLL_STATE_UP; - } - return GLUI_SCROLL_STATE_SCROLL; - } - } - else - { - if ( local_x >= w-GLUI_SCROLL_ARROW_WIDTH-3 && local_x <= w) - { - update_scroll_parameters(); - if ( local_y >= 0 AND local_y <= (GLUI_SCROLL_ARROW_HEIGHT+box_start_position) ) - { - return GLUI_SCROLL_STATE_UP; - } - if ( local_y >= (GLUI_SCROLL_ARROW_HEIGHT+box_end_position) - AND local_y <= (h+GLUI_SCROLL_ARROW_HEIGHT) ) - { - return GLUI_SCROLL_STATE_DOWN; - } - return GLUI_SCROLL_STATE_SCROLL; - } - } - - return GLUI_SCROLL_STATE_NONE; -} - -/***************************************** GLUI_Scrollbar::do_click() **********/ - -void GLUI_Scrollbar::do_click( void ) -{ - int direction = 0; - - if ( state == GLUI_SCROLL_STATE_UP ) - direction = +1; - else if ( state == GLUI_SCROLL_STATE_DOWN ) - direction = -1; - - if (data_type==GLUI_SCROLL_INT&&int_min>int_max) direction*=-1; - if (data_type==GLUI_SCROLL_FLOAT&&float_min>float_max) direction*=-1; - - increase_growth(); - - float modifier_factor = 1.0; - float incr = growth * modifier_factor * user_speed ; - - double frame_time=GLUI_Time()-last_update_time; - double frame_limit=velocity_limit*frame_time; - if (incr>frame_limit) incr=frame_limit; /* don't scroll faster than limit */ - last_update_time=GLUI_Time(); - - float new_val = float_val; - - new_val += direction * incr; - if (1 || data_type==GLUI_SCROLL_FLOAT) set_float_val(new_val); - if (0 && data_type==GLUI_SCROLL_INT) set_int_val((int)new_val); - //printf("do_click: incr %f val=%f float_val=%f\n",incr,new_val,float_val); - - /*** Now update live variable and do callback. We don't want - to do the callback on each iteration of this function, just on every - i^th iteration, where i is given by GLUI_SCROLL_CALLBACK_INTERVAL ****/ - callback_count++; - if ( (callback_count % GLUI_SCROLL_CALLBACK_INTERVAL ) == 0 ) - do_callbacks(); - -} - - -/***************************************** GLUI_Scrollbar::do_drag() **********/ - -void GLUI_Scrollbar::do_drag( int x, int y ) -{ - int direction = 0; - float incr, modifier_factor; - /* int delta_x; */ - int new_int_val = int_val; - float new_float_val = float_val; - - int free_len = track_length-box_length; - if (free_len == 0) return; - - modifier_factor = 1.0; - if ( state == GLUI_SCROLL_STATE_SCROLL) { - update_scroll_parameters(); - - int hbox = box_length/2; - if (horizontal) { - int track_v = x-GLUI_SCROLL_ARROW_WIDTH; - new_int_val = int_min + (track_v-hbox)*(int_max-int_min)/free_len; - new_float_val = float_min + (track_v-hbox)*(float_max-float_min)/float(free_len); - } else { - int track_v = y-GLUI_SCROLL_ARROW_HEIGHT; - new_int_val = int_max - (track_v-hbox)*(int_max-int_min)/free_len; - new_float_val = float_max - (track_v-hbox)*(float_max-float_min)/float(free_len); - } - } - else { - if ( state == GLUI_SCROLL_STATE_UP ) - direction = +1; - else if ( state == GLUI_SCROLL_STATE_DOWN ) - direction = -1; - incr = growth * direction * modifier_factor * user_speed; - new_int_val += direction; - new_float_val += direction * (float_max-float_min)/free_len; - } - last_y = y; - last_x = x; - - /*** Now update live variable and do callback. We don't want - to do the callback on each iteration of this function, just on every - i^th iteration, where i is given by GLUI_SCROLL_CALLBACK_INTERVAL ****/ - if(data_type==GLUI_SCROLL_INT) - set_int_val(new_int_val); - else if (data_type==GLUI_SCROLL_FLOAT) - set_float_val(new_float_val); - - callback_count++; - if ( (callback_count % GLUI_SCROLL_CALLBACK_INTERVAL ) == 0 ) - do_callbacks(); -} - - -/***************************************** GLUI_Scrollbar::needs_idle() ******/ - -bool GLUI_Scrollbar::needs_idle( void ) const -{ - if (state == GLUI_SCROLL_STATE_UP OR state == GLUI_SCROLL_STATE_DOWN ) { - return true; - } - else { - return false; - } -} - -/***************************************** GLUI_Scrollbar::idle() **********/ - -void GLUI_Scrollbar::idle( void ) -{ - if ( NOT needs_idle() ) - return; - else - do_click(); -} - - -/************************************ GLUI_Scrollbar::do_callbacks() **********/ - -void GLUI_Scrollbar::do_callbacks( void ) -{ - - /* *******************************************/ - - if ( NOT first_callback ) { - if ( data_type == GLUI_SCROLL_INT AND int_val == last_int_val ) { - return; - } - if ( data_type == GLUI_SPINNER_FLOAT AND float_val == last_float_val ) { - return; - } - } - - if (associated_object == NULL) { - this->execute_callback(); - } - else { // Use internal Callbacks - if (object_cb) { - //object_cb(associated_object, int_val); - object_cb(this); - } - } - last_int_val = int_val; - last_float_val = float_val; - first_callback = false; -} - - -/********************************** GLUI_Scrollbar::set_float_val() ************/ - -void GLUI_Scrollbar::set_float_val( float new_val ) -{ - // Allow for the possibility that the limits are reversed - float hi = MAX(float_min,float_max); - float lo = MIN(float_min,float_max); - if (new_val > hi) - new_val = hi; - if (new_val < lo) - new_val = lo; - last_float_val = float_val; - float_val = new_val; - int_val = (int)new_val; - - redraw(); - - /*** Now update the live variable ***/ - output_live(true); -} - - -/********************************** GLUI_Scrollbar::set_int_val() ************/ - -void GLUI_Scrollbar::set_int_val( int new_val ) -{ - // Allow for the possibility that the limits are reversed - int hi = MAX(int_min,int_max); - int lo = MIN(int_min,int_max); - if (new_val > hi) - new_val = hi; - if (new_val < lo) - new_val = lo; - last_int_val = int_val; - float_val = int_val = new_val; - - redraw(); - - /*** Now update the live variable ***/ - output_live(true); -} - -/*********************************** GLUI_Scrollbar::set_float_limits() *********/ - -void GLUI_Scrollbar::set_float_limits( float low, float high, int limit_type ) -{ - if (limit_type != GLUI_LIMIT_CLAMP) { - // error! - } - float_min = low; - float_max = high; - // Allow for possiblitly of reversed limits - float lo = MIN(low,high); - float hi = MAX(low,high); - if (float_valhi) set_float_val(hi); -} - - -/*********************************** GLUI_Scrollbar::set_int_limits() *********/ - -void GLUI_Scrollbar::set_int_limits( int low, int high, int limit_type ) -{ - if (limit_type != GLUI_LIMIT_CLAMP) { - // error! - } - int_min = low; - int_max = high; - // Allow for possiblitly of reversed limits - int lo = MIN(low,high); - int hi = MAX(low,high); - if (int_valhi) set_int_val(hi); - float_min = low; - float_max = high; -} - - -/*********************************** GLUI_Scrollbar::reset_growth() *************/ - -void GLUI_Scrollbar::reset_growth( void ) -{ - growth = fabs(float_max - float_min) / float(GLUI_SCROLL_GROWTH_STEPS); - if (data_type == GLUI_SCROLL_INT && growth<1) growth=1; -} - - -/******************************* GLUI_Scrollbar::increase_growth() *************/ - -void GLUI_Scrollbar::increase_growth( void ) -{ - float range=0; - if (data_type==GLUI_SCROLL_FLOAT) - range = fabs(float_max-float_min); - else - range = fabs(float(int_max-int_min)); - if ( growth < (range / float(GLUI_SCROLL_MIN_GROWTH_STEPS)) ) - growth *= growth_exp; - return; -} - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_separator.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_separator.cpp deleted file mode 100644 index b10cf36..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_separator.cpp +++ /dev/null @@ -1,75 +0,0 @@ -/**************************************************************************** - - GLUI User Interface Toolkit - --------------------------- - - glui_separator.cpp - GLUI_Separator control class - - - -------------------------------------------------- - - Copyright (c) 1998 Paul Rademacher - - WWW: http://sourceforge.net/projects/glui/ - Forums: http://sourceforge.net/forum/?group_id=92496 - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -*****************************************************************************/ - -#include "glui_internal_control.h" - -/****************************** GLUI_Separator::GLUI_Separator() **********/ - -GLUI_Separator::GLUI_Separator( GLUI_Node *parent ) -{ - common_init(); - parent->add_control( this ); -} - -/****************************** GLUI_Separator::draw() **********/ - -void GLUI_Separator::draw( int x, int y ) -{ - GLUI_DRAWINGSENTINAL_IDIOM - - int width, indent; - int cont_x, cont_y, cont_w, cont_h, cont_x_off, cont_y_off; - - if ( parent() != NULL ) { - get_this_column_dims(&cont_x, &cont_y, &cont_w, &cont_h, - &cont_x_off, &cont_y_off); - - width = cont_w - cont_x_off*2; - } - else { - width = this->w; - } - - indent = (int) floor(width * .05); - - glLineWidth( 1.0 ); - glBegin( GL_LINES ); - glColor3f( .5, .5, .5 ); - glVertex2i( indent, GLUI_SEPARATOR_HEIGHT/2-1 ); - glVertex2i( width-indent, GLUI_SEPARATOR_HEIGHT/2-1 ); - - glColor3f( 1., 1., 1. ); - glVertex2i( indent, GLUI_SEPARATOR_HEIGHT/2 ); - glVertex2i( width-indent, GLUI_SEPARATOR_HEIGHT/2 ); - glEnd(); -} - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_spinner.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_spinner.cpp deleted file mode 100644 index 85e7e3e..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_spinner.cpp +++ /dev/null @@ -1,647 +0,0 @@ -/**************************************************************************** - - GLUI User Interface Toolkit - --------------------------- - - glui_spinner.cpp - GLUI_Spinner class - - - notes: - spinner does not explicitly keep track of the current value - this is all - handled by the underlying edittext control - -> thus, spinner->sync_live() has no meaning, nor spinner->output_live - -> BUT, edittext will alter this spinner's float_val and int_val, - so that spinner->get/set will work - - -FIXME: there's a heck of a lot of duplication between this and glui_scrollbar.cpp. - (OSL, 2006/06) - - - -------------------------------------------------- - - Copyright (c) 1998 Paul Rademacher - - WWW: http://sourceforge.net/projects/glui/ - Forums: http://sourceforge.net/forum/?group_id=92496 - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -*****************************************************************************/ - -#include "glui_internal_control.h" -#include -#include - -/*static int __debug=0; */ - -#define GLUI_SPINNER_GROWTH_STEPS 800 -#define GLUI_SPINNER_MIN_GROWTH_STEPS 100 -#define GLUI_SPINNER_CALLBACK_INTERVAL 1 - - -/****************************** spinner_edittext_callback() ******************/ -/* This function is not used anymore. It has been replaced by directly */ -/* Including an optional pointer to a spinner from an edittext box */ - -void spinner_edittext_callback( int id ) -{ - GLUI_Spinner *spinner; - - putchar( '.' ); flushout; - - spinner = (GLUI_Spinner*) id; - - if ( NOT spinner ) - return; - - spinner->do_callbacks(); -} - - -/****************************** GLUI_Spinner::GLUI_Spinner() ****************/ - -GLUI_Spinner::GLUI_Spinner( GLUI_Node* parent, const char *name, - int data_type, int id, GLUI_CB callback ) -{ - common_construct(parent, name, data_type, NULL, id, callback); -} - -/****************************** GLUI_Spinner::GLUI_Spinner() ****************/ - -GLUI_Spinner::GLUI_Spinner( GLUI_Node* parent, const char *name, - int *live_var, int id, GLUI_CB callback ) -{ - common_construct(parent, name, GLUI_SPINNER_INT, live_var, id, callback); -} - -/****************************** GLUI_Spinner::GLUI_Spinner() ****************/ - -GLUI_Spinner::GLUI_Spinner( GLUI_Node* parent, const char *name, - float *live_var, int id, GLUI_CB callback ) -{ - common_construct(parent, name, GLUI_SPINNER_FLOAT, live_var, id, callback); -} - -/****************************** GLUI_Spinner::GLUI_Spinner() ****************/ - -GLUI_Spinner::GLUI_Spinner( GLUI_Node *parent, const char *name, - int data_t, void *live_var, - int id, GLUI_CB callback ) -{ - common_construct(parent, name, data_t, live_var, id, callback); -} - -/****************************** GLUI_Spinner::common_construct() ************/ - -void GLUI_Spinner::common_construct( GLUI_Node* parent, const char *name, - int data_t, void *data, - int id, GLUI_CB cb ) -{ - common_init(); - - if ( NOT strcmp( name, "Spinner Test" )) - id=id; - - int text_type; - if ( data_t == GLUI_SPINNER_INT ) { - text_type = GLUI_EDITTEXT_INT; - } - else if ( data_t == GLUI_SPINNER_FLOAT ) { - text_type = GLUI_EDITTEXT_FLOAT; - } - else { - assert(0); /* Did not pass in a valid data type */ - } - - user_id = id; - data_type = data_t; - callback = cb; - set_name( name ); - //glui = parent->get_glui(); - - parent->add_control( this ); - - GLUI_EditText *txt = - new GLUI_EditText( this, name, text_type, data, id, cb); - - edittext = txt; /* Link the edittext to the spinner */ - /* control->ptr_val = data; */ - - edittext->spinner = this; /* Link the spinner to the edittext */ - -} - -/****************************** GLUI_Spinner::mouse_down_handler() **********/ - -int GLUI_Spinner::mouse_down_handler( int local_x, int local_y ) -{ - this->state = find_arrow( local_x, local_y ); - GLUI_Master.glui_setIdleFuncIfNecessary(); - - /* printf( "spinner: mouse down : %d/%d arrow:%d\n", local_x, local_y, - find_arrow( local_x, local_y )); - */ - - if ( state != GLUI_SPINNER_STATE_UP AND state != GLUI_SPINNER_STATE_DOWN ) - return true; - - reset_growth(); - redraw(); - - /*** ints and floats behave a bit differently. When you click on - an int spinner, you expect the value to immediately go up by 1, whereas - for a float it'll go up only by a fractional amount. Therefore, we - go ahead and increment by one for int spinners ***/ - if ( data_type == GLUI_SPINNER_INT ) { - if ( state == GLUI_SPINNER_STATE_UP ) - edittext->set_float_val( edittext->float_val + 1.0 ); - else if ( state == GLUI_SPINNER_STATE_DOWN ) - edittext->set_float_val( edittext->float_val - .9 ); - } - - do_click(); - - return false; -} - - -/******************************** GLUI_Spinner::mouse_up_handler() **********/ - -int GLUI_Spinner::mouse_up_handler( int local_x, int local_y, bool inside ) -{ - state = GLUI_SPINNER_STATE_NONE; - GLUI_Master.glui_setIdleFuncIfNecessary(); - - /* printf("spinner: mouse up : %d/%d inside: %d\n",local_x,local_y,inside); */ - - /*glutSetCursor( GLUT_CURSOR_INHERIT ); */ - glutSetCursor( GLUT_CURSOR_LEFT_ARROW ); - redraw(); - - /* do_callbacks(); --- stub */ - /* if ( callback ) */ - /* callback( this->user_id ); */ - - return false; -} - - -/***************************** GLUI_Spinner::mouse_held_down_handler() ******/ - -int GLUI_Spinner::mouse_held_down_handler( int local_x, int local_y, - bool new_inside) -{ - int new_state; - - if ( state == GLUI_SPINNER_STATE_NONE ) - return false; - - /* printf("spinner: mouse held: %d/%d inside: %d\n",local_x,local_y, - new_inside); - */ - - if ( state == GLUI_SPINNER_STATE_BOTH ) { /* dragging? */ - do_drag( local_x, local_y ); - } - else { /* not dragging */ - new_state = find_arrow( local_x, local_y ); - - if ( new_state == state ) { - /** Still in same arrow **/ - do_click(); - } - else { - if ( new_inside OR 1) { - /** The state changed, but we're still inside - that - means we moved off the arrow: begin dragging **/ - state = GLUI_SPINNER_STATE_BOTH; - } - else { - /*** Here check y of mouse position to determine whether to - drag ***/ - - /* ... */ - } - } - - /*** We switched to up/down dragging ***/ - if ( state == GLUI_SPINNER_STATE_BOTH ) { - glutSetCursor( GLUT_CURSOR_UP_DOWN ); - last_x = local_x; - last_y = local_y; - - /** If the spinner has limits, we reset the growth value, since - reset_growth() will compute a new growth value for dragging - vs. clicking. If the spinner has no limits, then we just let the - growth remain at whatever the user has incremented it up to **/ - if ( edittext->has_limits != GLUI_LIMIT_NONE ) - reset_growth(); - } - - redraw(); - } - - return false; -} - - -/****************************** GLUI_Spinner::key_handler() **********/ - -int GLUI_Spinner::key_handler( unsigned char key,int modifiers ) -{ - - - return true; -} - - -/****************************** GLUI_Spinner::draw() **********/ - -void GLUI_Spinner::draw( int x, int y ) -{ - GLUI_DRAWINGSENTINAL_IDIOM - - if ( enabled ) { - /*** Draw the up arrow either pressed or unrpessed ***/ - if ( state == GLUI_SPINNER_STATE_UP OR state == GLUI_SPINNER_STATE_BOTH ) - glui->std_bitmaps.draw( GLUI_STDBITMAP_SPINNER_UP_ON, - w-GLUI_SPINNER_ARROW_WIDTH-1, - GLUI_SPINNER_ARROW_Y); - else - glui->std_bitmaps.draw( GLUI_STDBITMAP_SPINNER_UP_OFF, - w-GLUI_SPINNER_ARROW_WIDTH-1, - GLUI_SPINNER_ARROW_Y); - - /*** Draw the down arrow either pressed or unrpessed ***/ - if (state == GLUI_SPINNER_STATE_DOWN OR state == GLUI_SPINNER_STATE_BOTH) - glui->std_bitmaps.draw( GLUI_STDBITMAP_SPINNER_DOWN_ON, - w-GLUI_SPINNER_ARROW_WIDTH-1, - GLUI_SPINNER_ARROW_HEIGHT+GLUI_SPINNER_ARROW_Y); - else - glui->std_bitmaps.draw( GLUI_STDBITMAP_SPINNER_DOWN_OFF, - w-GLUI_SPINNER_ARROW_WIDTH-1, - GLUI_SPINNER_ARROW_HEIGHT+GLUI_SPINNER_ARROW_Y); - } - else { /**** The spinner is disabled ****/ - glui->std_bitmaps.draw( GLUI_STDBITMAP_SPINNER_UP_DIS, - w-GLUI_SPINNER_ARROW_WIDTH-1, - GLUI_SPINNER_ARROW_Y); - glui->std_bitmaps.draw( GLUI_STDBITMAP_SPINNER_DOWN_DIS, - w-GLUI_SPINNER_ARROW_WIDTH-1, - GLUI_SPINNER_ARROW_HEIGHT+GLUI_SPINNER_ARROW_Y); - } - - if ( active ) { - glColor3ub( 0, 0, 0 ); - glEnable( GL_LINE_STIPPLE ); - glLineStipple( 1, 0x5555 ); - } - else { - glColor3ub( glui->bkgd_color.r,glui->bkgd_color.g,glui->bkgd_color.b ); - } - - glPolygonMode( GL_FRONT_AND_BACK, GL_LINE ); - glDisable( GL_CULL_FACE ); - glBegin( GL_QUADS ); - glVertex2i( w-GLUI_SPINNER_ARROW_WIDTH-2, 0 ); - glVertex2i( w, 0 ); - glVertex2i( w, h ); - glVertex2i( w-GLUI_SPINNER_ARROW_WIDTH-2, h ); - glEnd(); - glDisable( GL_LINE_STIPPLE ); - glPolygonMode( GL_FRONT_AND_BACK, GL_FILL ); -} - - -/********************************* GLUI_Spinner::special_handler() **********/ - -int GLUI_Spinner::special_handler( int key,int modifiers ) -{ - if ( key == GLUT_KEY_UP ) { /** Simulate a click in the up arrow **/ - mouse_down_handler( x_abs + w - GLUI_SPINNER_ARROW_WIDTH + 1, - y_abs + GLUI_SPINNER_ARROW_Y+1 ); - mouse_up_handler( x_abs + w - GLUI_SPINNER_ARROW_WIDTH + 1, - y_abs + GLUI_SPINNER_ARROW_Y+1, true ); - } - else if ( key == GLUT_KEY_DOWN ) { /** Simulate a click in the up arrow **/ - mouse_down_handler(x_abs + w - GLUI_SPINNER_ARROW_WIDTH + 1, - y_abs+GLUI_SPINNER_ARROW_Y+1+GLUI_SPINNER_ARROW_HEIGHT); - mouse_up_handler( x_abs + w - GLUI_SPINNER_ARROW_WIDTH + 1, - y_abs+GLUI_SPINNER_ARROW_Y+1 +GLUI_SPINNER_ARROW_HEIGHT, - true ); - } - else if ( key == GLUT_KEY_HOME ) { /** Set value to limit top - - or increment by 10 **/ - } - else if ( key == GLUT_KEY_END ) { - } - - return true; -} - - -/******************************* GLUI_Spinner::set_float_val() ************/ - -void GLUI_Spinner::set_float_val( float new_val ) -{ - if ( NOT edittext ) - return; - - edittext->set_float_val( new_val ); -} - - -/********************************** GLUI_Spinner::set_int_val() ************/ - -void GLUI_Spinner::set_int_val( int new_val ) -{ - if ( NOT edittext ) - return; - - edittext->set_int_val( new_val ); -} - - -/************************************ GLUI_Spinner::update_size() **********/ - -void GLUI_Spinner::update_size( void ) -{ - if (!edittext) return; - /*edittext->w = this->w - GLUI_SPINNER_ARROW_WIDTH-3; */ - this->w = edittext->w + GLUI_SPINNER_ARROW_WIDTH + 3; -} - - -/************************************ GLUI_Spinner::find_arrow() ************/ - -int GLUI_Spinner::find_arrow( int local_x, int local_y ) -{ - local_x -= x_abs; - local_y -= y_abs; - - if ( local_x >= (w - GLUI_SPINNER_ARROW_WIDTH) AND - local_x <= w ) { - - if ( local_y >= GLUI_SPINNER_ARROW_Y AND - local_y <= (GLUI_SPINNER_ARROW_Y+GLUI_SPINNER_ARROW_HEIGHT) ) - return GLUI_SPINNER_STATE_UP; - - if ( local_y >= GLUI_SPINNER_ARROW_Y+GLUI_SPINNER_ARROW_HEIGHT AND - local_y <= (GLUI_SPINNER_ARROW_Y+GLUI_SPINNER_ARROW_HEIGHT*2) ) - return GLUI_SPINNER_STATE_DOWN; - - } - - return GLUI_SPINNER_STATE_NONE; -} - - -/***************************************** GLUI_Spinner::do_click() **********/ - -void GLUI_Spinner::do_click( void ) -{ - int direction = 0; - float incr; - float modifier_factor; - - if ( state == GLUI_SPINNER_STATE_UP ) - direction = +1; - else if ( state == GLUI_SPINNER_STATE_DOWN ) - direction = -1; - - increase_growth(); - - modifier_factor = 1.0; - if ( glui ) { - if ( glui->curr_modifiers & GLUT_ACTIVE_SHIFT ) - modifier_factor = 100.0f; - else if ( glui->curr_modifiers & GLUT_ACTIVE_CTRL ) - modifier_factor = .01f; - } - - if ( this->data_type == GLUI_SPINNER_FLOAT OR 1) { - incr = growth * direction * modifier_factor * user_speed; - edittext->set_float_val( edittext->float_val + incr ); - /** Remember, edittext mirrors the float and int values ***/ - } - - /*** Now update live variable and do callback. We don't want - to do the callback on each iteration of this function, just on every - i^th iteration, where i is given by GLUI_SPINNER_CALLBACK_INTERVAL ****/ - callback_count++; - if ( (callback_count % GLUI_SPINNER_CALLBACK_INTERVAL ) == 0 ) - do_callbacks(); -} - - -/***************************************** GLUI_Spinner::do_drag() **********/ - -void GLUI_Spinner::do_drag( int x, int y ) -{ - int delta_y; - float incr, modifier_factor; - /* int delta_x; */ - - modifier_factor = 1.0f; - if ( glui ) { - if ( glui->curr_modifiers & GLUT_ACTIVE_SHIFT ) - modifier_factor = 100.0f; - else if ( glui->curr_modifiers & GLUT_ACTIVE_CTRL ) - modifier_factor = .01f; - } - - /* delta_x = x - last_x; */ - delta_y = -(y - last_y); - - if ( this->data_type == GLUI_SPINNER_FLOAT OR 1 ) { - incr = growth * delta_y * modifier_factor * user_speed; - edittext->set_float_val( edittext->float_val + incr ); - /** Remember, edittext mirrors the float and int values ***/ - } - - last_x = x; - last_y = y; - - /*** Now update live variable and do callback. We don't want - to do the callback on each iteration of this function, just on every - i^th iteration, where i is given by GLUI_SPINNER_CALLBACK_INTERVAL ****/ - - callback_count++; - if ( (callback_count % GLUI_SPINNER_CALLBACK_INTERVAL ) == 0 ) - do_callbacks(); -} - - -/***************************************** GLUI_Spinner::needs_idle() ******/ - -bool GLUI_Spinner::needs_idle( void ) const -{ - if (state == GLUI_SPINNER_STATE_UP OR state == GLUI_SPINNER_STATE_DOWN ) { - return true; - } - else { - return false; - } -} - -/***************************************** GLUI_Spinner::idle() **********/ - -void GLUI_Spinner::idle( void ) -{ - if ( NOT needs_idle() ) - return; - else - do_click(); -} - - -/************************************ GLUI_Spinner::do_callbacks() **********/ - -void GLUI_Spinner::do_callbacks( void ) -{ - /*** This is not necessary, b/c edittext automatically updates us ***/ - if ( NOT edittext ) - return; - this->float_val = edittext->float_val; - this->int_val = edittext->int_val; - /* *******************************************/ - - if ( NOT first_callback ) { - if ( data_type == GLUI_SPINNER_INT AND int_val == last_int_val ) { - return; - } - - if ( data_type == GLUI_SPINNER_FLOAT AND float_val == last_float_val ) { - return; - } - } - - this->execute_callback(); - - last_int_val = int_val; - last_float_val = float_val; - first_callback = false; -} - - -/********************************* GLUI_Spinner::set_float_limits() *********/ - -void GLUI_Spinner::set_float_limits( float low, float high, int limit_type ) -{ - if ( NOT edittext ) - return; - - edittext->set_float_limits( low, high, limit_type ); -} - - -/*********************************** GLUI_Spinner::set_int_limits() *********/ - -void GLUI_Spinner::set_int_limits( int low, int high, int limit_type ) -{ - if ( NOT edittext ) - return; - - edittext->set_int_limits( low, high, limit_type ); -} - - -/*********************************** GLUI_Spinner:reset_growth() *************/ - -void GLUI_Spinner::reset_growth( void ) -{ - float lo, hi; - - if ( edittext->has_limits == GLUI_LIMIT_NONE ) { - if ( data_type == GLUI_SPINNER_FLOAT ) - growth = sqrt(ABS(edittext->float_val)) * .05f; - else if ( data_type == GLUI_SPINNER_INT ) - growth = .4f; - } - else { - if ( data_type == GLUI_SPINNER_FLOAT ) { - lo = edittext->float_low; - hi = edittext->float_high; - growth = (hi-lo) / GLUI_SPINNER_GROWTH_STEPS; - } - else if ( data_type == GLUI_SPINNER_INT ) { - lo = (float) edittext->int_low; - hi = (float) edittext->int_high; - - growth = (hi-lo) / GLUI_SPINNER_GROWTH_STEPS; - } - } - - if ( growth == 0.0f ) - growth = .001f; -} - - -/******************************* GLUI_Spinner:increase_growth() *************/ - -void GLUI_Spinner::increase_growth( void ) -{ - float hi = 0.0,lo = 0.0; - - if ( data_type == GLUI_SPINNER_FLOAT ) { - lo = edittext->float_low; - hi = edittext->float_high; - } - else if ( data_type == GLUI_SPINNER_INT ) { - lo = (float) edittext->int_low; - hi = (float) edittext->int_high; - } - - if ( growth < (hi-lo) / GLUI_SPINNER_MIN_GROWTH_STEPS ) - growth *= growth_exp; - - /* printf( "growth: %f\n", growth ); */ -} - - -/*************************************** GLUI_Spinner:get_text() *************/ - -const char *GLUI_Spinner::get_text( void ) -{ - if (edittext) - return edittext->text.c_str(); - else - return ""; -} - - -/********************************** GLUI_Spinner:get_float_val() *************/ - -float GLUI_Spinner::get_float_val( void ) -{ - if (edittext) - return edittext->float_val; - else - return 0.0f; -} - - -/********************************** GLUI_Spinner:get_int_val() *************/ - -int GLUI_Spinner::get_int_val( void ) -{ - if (edittext) - return edittext->int_val; - else - return 0; -} - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_statictext.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_statictext.cpp deleted file mode 100644 index b0db4b9..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_statictext.cpp +++ /dev/null @@ -1,105 +0,0 @@ -/**************************************************************************** - - GLUI User Interface Toolkit - --------------------------- - - glui_statictext.cpp - GLUI_StaticText Control - - - -------------------------------------------------- - - Copyright (c) 1998 Paul Rademacher - - WWW: http://sourceforge.net/projects/glui/ - Forums: http://sourceforge.net/forum/?group_id=92496 - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -*****************************************************************************/ - -#include "glui_internal_control.h" - -/****************************** GLUI_StaticText::GLUI_StaticText() **********/ -GLUI_StaticText::GLUI_StaticText( GLUI_Node *parent, const char *name ) -{ - common_init(); - set_name( name ); - parent->add_control( this ); -} - -/****************************** GLUI_StaticText::draw() **********/ - -void GLUI_StaticText::draw( int x, int y ) -{ - GLUI_DRAWINGSENTINAL_IDIOM - - draw_text(); -} - - -/****************************** GLUI_StaticText::set_text() **********/ - -void GLUI_StaticText::set_text( const char *text ) -{ - set_name( text ); - redraw(); -} - - -/************************************ GLUI_StaticText::update_size() **********/ - -void GLUI_StaticText::update_size( void ) -{ - int text_size; - - if ( NOT glui ) - return; - - text_size = string_width( name ); - - if ( w < text_size ) - w = text_size; -} - - -/****************************** GLUI_StaticText::draw_text() **********/ - -void GLUI_StaticText::draw_text( void ) -{ - if ( NOT can_draw() ) - return; - - erase_text(); - draw_name( 0, 9 ); -} - - -/****************************** GLUI_StaticText::erase_text() **********/ - -void GLUI_StaticText::erase_text( void ) -{ - if ( NOT can_draw() ) - return; - - set_to_bkgd_color(); - glDisable( GL_CULL_FACE ); - glBegin( GL_TRIANGLES ); - glVertex2i( 0,0 ); glVertex2i( w, 0 ); glVertex2i( w, h ); - glVertex2i( 0, 0 ); glVertex2i( w, h ); glVertex2i( 0, h ); - glEnd(); -} - - - diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_string.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_string.cpp deleted file mode 100644 index 910e6eb..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_string.cpp +++ /dev/null @@ -1,62 +0,0 @@ -/**************************************************************************** - - GLUI User Interface Toolkit - --------------------------- - - glui.cpp - - - -------------------------------------------------- - - Copyright (c) 1998 Paul Rademacher (this file, Bill Baxter 2005) - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as - published by the Free Software Foundation; either version 2.1 of the - License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, but - WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 - USA - - This program is -not- in the public domain. - -*****************************************************************************/ - -#include "glui.h" -#include - -#ifdef _MSC_VER -#define vsnprintf _vsnprintf -#endif - -GLUI_String& glui_format_str(GLUI_String& str, const char* fmt, ...) -{ - const size_t ISIZE = 128; - char stackbuf[ISIZE]; - size_t bufsz = ISIZE; - char *buf = stackbuf; - str = ""; - va_list arg; - while (1) { - va_start(arg, fmt); - int ret = vsnprintf(buf,299,fmt,arg); - va_end(arg); - if (ret>=0) { - break; - } - // else make a bigger buf, try again - bufsz <<= 1; - if (buf==stackbuf) buf = (char*)malloc(sizeof(char)*bufsz); - else buf = (char*)realloc(buf, sizeof(char)*bufsz); - } - if (buf!=stackbuf) free(buf); - str=buf; - return str; -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_textbox.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_textbox.cpp deleted file mode 100644 index 56fc015..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_textbox.cpp +++ /dev/null @@ -1,1108 +0,0 @@ -/**************************************************************************** - - GLUI User Interface Toolkit - --------------------------- - - glui_textbox.cpp - GLUI_TextBox control class - - - -------------------------------------------------- - - Copyright (c) 1998 Paul Rademacher, 2004 John Kew - - WWW: http://sourceforge.net/projects/glui/ - Forums: http://sourceforge.net/forum/?group_id=92496 - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -*****************************************************************************/ - -#include "glui_internal_control.h" -#include - - -static const int LINE_HEIGHT = 15; - -/****************************** GLUI_TextBox::GLUI_TextBox() **********/ - -GLUI_TextBox::GLUI_TextBox(GLUI_Node *parent, GLUI_String &live_var, - bool scroll, int id, GLUI_CB callback ) -{ - common_construct(parent, &live_var, scroll, id, callback); -} - -/****************************** GLUI_TextBox::GLUI_TextBox() **********/ - -GLUI_TextBox::GLUI_TextBox( GLUI_Node *parent, bool scroll, int id, - GLUI_CB callback ) -{ - common_construct(parent, NULL, scroll, id, callback); -} - -/****************************** GLUI_TextBox::common_construct() **********/ -void GLUI_TextBox::common_construct( - GLUI_Node *parent, GLUI_String *data, - bool scroll, int id, GLUI_CB callback) -{ - common_init(); - - GLUI_Node *tb_panel = parent; - - if (scroll) { - GLUI_Panel *p = new GLUI_Panel(parent,"",GLUI_PANEL_NONE); - p->x_off = 1; - tb_panel = p; - } - this->ptr_val = data; - if (data) { - this->live_type = GLUI_LIVE_STRING; - } else { - this->live_type = GLUI_LIVE_NONE; - } - this->user_id = id; - this->callback = callback; - this->name = "textbox"; - tb_panel->add_control( this ); - if (scroll) { - new GLUI_Column(tb_panel, false); - scrollbar = - new GLUI_Scrollbar(tb_panel, - "scrollbar", - GLUI_SCROLL_VERTICAL, - GLUI_SCROLL_INT); - scrollbar->set_object_callback(GLUI_TextBox::scrollbar_callback, this); - scrollbar->set_alignment(GLUI_ALIGN_LEFT); - // scrollbar->can_activate = false; //kills ability to mouse drag too - } - init_live(); -} - -/****************************** GLUI_TextBox::mouse_down_handler() **********/ - -int GLUI_TextBox::mouse_down_handler( int local_x, int local_y ) -{ - int tmp_insertion_pt; - - if ( debug ) dump( stdout, "-> MOUSE DOWN" ); - - tmp_insertion_pt = find_insertion_pt( local_x, local_y ); - if ( tmp_insertion_pt == -1 ) { - if ( glui ) - glui->deactivate_current_control( ); - return false; - } - - insertion_pt = tmp_insertion_pt; - - sel_start = sel_end = insertion_pt; - - keygoal_x = insert_x; - - if ( can_draw()) - update_and_draw_text(); - - if ( debug ) dump( stdout, "<- MOUSE UP" ); - - return true; -} - - -/******************************** GLUI_TextBox::mouse_up_handler() **********/ - -int GLUI_TextBox::mouse_up_handler( int local_x, int local_y, bool inside ) -{ - return false; -} - - -/***************************** GLUI_TextBox::mouse_held_down_handler() ******/ - -int GLUI_TextBox::mouse_held_down_handler( int local_x, int local_y, - bool new_inside) -{ - int tmp_pt; - - if ( NOT new_inside ) return false; - - if ( debug ) dump( stdout, "-> HELD DOWN" ); - - tmp_pt = find_insertion_pt( local_x, local_y ); - keygoal_x = insert_x; - - if ( tmp_pt == -1 AND sel_end != 0 ) { /* moved mouse past left edge */ - special_handler( GLUT_KEY_LEFT, GLUT_ACTIVE_SHIFT ); - } - else if ( tmp_pt == substring_end+1 AND sel_end != (int) text.length()) { - /* moved mouse past right edge */ - special_handler( GLUT_KEY_RIGHT, GLUT_ACTIVE_SHIFT ); - } - else if ( tmp_pt != -1 AND tmp_pt != sel_end ) { - sel_end = insertion_pt = tmp_pt; - - update_and_draw_text(); - } - - if ( debug ) - dump( stdout, "<- HELD DOWN" ); - - return false; -} - - -/****************************** GLUI_TextBox::key_handler() **********/ -int GLUI_TextBox::key_handler( unsigned char key,int modifiers ) -{ - int regular_key; - /* int has_selection; */ - - if ( NOT glui ) - return false; - - if ( debug ) - dump( stdout, "-> KEY HANDLER" ); - - regular_key = false; - bool ctrl_down = (modifiers & GLUT_ACTIVE_CTRL)!=0; - /* has_selection = (sel_start != sel_end); */ - - if ( key == CTRL('[')) { /* ESCAPE */ - glui->deactivate_current_control(); - return true; - } - else if ( (key == 127 AND !ctrl_down) OR /* FORWARD DELETE */ - ( key == CTRL('d') AND modifiers == GLUT_ACTIVE_CTRL) ) - { - if ( sel_start == sel_end ) { /* no selection */ - if ( insertion_pt < (int)text.length() ) { - text.erase(insertion_pt,1); - } - } - else { /* There is a selection */ - clear_substring( MIN(sel_start,sel_end), MAX(sel_start,sel_end )); - insertion_pt = MIN(sel_start,sel_end); - sel_start = sel_end = insertion_pt; - } - } - else if ( ((key == 127) AND ctrl_down) OR // Delete word forward - ((key == 'd') AND (modifiers == GLUT_ACTIVE_ALT)) ) - { - if ( sel_start == sel_end ) { /* no selection */ - sel_start = insertion_pt; - sel_end = find_word_break( insertion_pt, +1 ); - } - - clear_substring( MIN(sel_start,sel_end), MAX(sel_start,sel_end )); - insertion_pt = MIN(sel_start,sel_end); - sel_start = sel_end = insertion_pt; - } - else if ( key == CTRL('h') ) { /* BACKSPACE */ - if ( sel_start == sel_end ) { /* no selection */ - if ( insertion_pt > 0 ) { - insertion_pt--; - text.erase(insertion_pt,1); - } - } - else { /* There is a selection */ - clear_substring( MIN(sel_start,sel_end), MAX(sel_start,sel_end )); - insertion_pt = MIN(sel_start,sel_end); - sel_start = sel_end = insertion_pt; - } - } - else if ( modifiers == GLUT_ACTIVE_CTRL ) /* CTRL ONLY */ - { - /* Ctrl-key bindings */ - if ( key == CTRL('a') ) { - return special_handler( GLUT_KEY_HOME, 0 ); - } - else if ( key == CTRL('e') ) { - return special_handler( GLUT_KEY_END, 0 ); - } - else if ( key == CTRL('b') ) { - return special_handler( GLUT_KEY_LEFT, 0 ); - } - else if ( key == CTRL('f') ) { - return special_handler( GLUT_KEY_RIGHT, 0 ); - } - else if ( key == CTRL('p') ) { - return special_handler( GLUT_KEY_UP, 0 ); - } - else if ( key == CTRL('n') ) { - return special_handler( GLUT_KEY_DOWN, 0 ); - } - else if ( key == CTRL('u') ) { /* ERASE LINE */ - insertion_pt = 0; - text.erase(0,text.length()); - sel_start = sel_end = 0; - } - else if ( key == CTRL('k') ) { /* KILL TO END OF LINE */ - sel_start = sel_end = insertion_pt; - text.erase(insertion_pt,GLUI_String::npos); - } - } - else if ( modifiers == GLUT_ACTIVE_ALT ) /* ALT ONLY */ - { - if ( key == 'b' ) { // Backward word - return special_handler ( GLUT_KEY_LEFT, GLUT_ACTIVE_CTRL ); - } - if ( key == 'f' ) { // Forward word - return special_handler ( GLUT_KEY_RIGHT, GLUT_ACTIVE_CTRL ); - } - } - else if ( (modifiers & GLUT_ACTIVE_CTRL) OR - (modifiers & GLUT_ACTIVE_ALT) ) - { - /** ignore other keys with modifiers */ - return true; - } - else { /* Regular key */ - if ( key == 13 ) /* RETURNS are written as newlines*/ - key = '\n'; - - regular_key = true; - - /** This is just to get rid of warnings - the flag regular_key is - set if the key was not a backspace, return, whatever. But I - believe if we're here, we know it was a regular key anyway */ - if ( regular_key ) { - } - - /**** If there's a current selection, erase it ******/ - if ( sel_start != sel_end ) { - clear_substring( MIN(sel_start,sel_end), MAX(sel_start,sel_end )); - insertion_pt = MIN(sel_start,sel_end); - sel_start = sel_end = insertion_pt; - } - - /******** We insert the character into the string ***/ - - text.insert(insertion_pt,1,key); - - /******** Move the insertion point and substring_end one over ******/ - insertion_pt++; - substring_end++; - - sel_start = sel_end = insertion_pt; - } - - /******** Now redraw text ***********/ - /* Hack to prevent text box from being cleared first **/ - /** int substring_change = update_substring_bounds(); - draw_text_only = - (NOT substring_change AND NOT has_selection AND regular_key ); - */ - - draw_text_only = false; /** Well, hack is not yet working **/ - update_and_draw_text(); - draw_text_only = false; - - - if ( debug ) - dump( stdout, "<- KEY HANDLER" ); - - return true; -} - -/****************************** GLUI_TextBox::enable() **********/ - -void GLUI_TextBox::enable( void ) -{ - GLUI_Control::enable(); - scrollbar->enable(); -} - -/****************************** GLUI_TextBox::disable() **********/ - -void GLUI_TextBox::disable( void ) -{ - GLUI_Control::disable(); - scrollbar->disable(); -} - -/****************************** GLUI_TextBox::activate() **********/ - -void GLUI_TextBox::activate( int how ) -{ - if ( debug ) - dump( stdout, "-> ACTIVATE" ); - active = true; - - if ( how == GLUI_ACTIVATE_MOUSE ) - return; /* Don't select everything if activated with mouse */ - - orig_text = text; - - sel_start = 0; - sel_end = text.length(); - insertion_pt = 0; - if ( debug ) - dump( stdout, "<- ACTIVATE" ); -} - - -/****************************** GLUI_TextBox::deactivate() **********/ - -void GLUI_TextBox::deactivate( void ) -{ - active = false; - - if ( NOT glui ) - return; - - if ( debug ) - dump( stdout, "-> DISACTIVATE" ); - - sel_start = sel_end = insertion_pt = -1; - - /***** Retrieve the current value from the text *****/ - /***** The live variable will be updated by set_text() ****/ - set_text(text.c_str()); /* This will force callbacks and gfx refresh */ - - update_substring_bounds(); - - /******** redraw text without insertion point ***********/ - redraw(); - - /***** Now do callbacks if value changed ******/ - if ( orig_text != text ) { - this->execute_callback(); - - - } - - - if ( debug ) - dump( stdout, "<- DISACTIVATE" ); -} - -/****************************** GLUI_TextBox::draw() **********/ - -void GLUI_TextBox::draw( int x, int y ) -{ - GLUI_DRAWINGSENTINAL_IDIOM - int line = 0; - int text_length; - int box_width; - int i; - - /* Bevelled Border */ - glBegin( GL_LINES ); - glColor3f( .5, .5, .5 ); - glVertex2i( 0, 0 ); glVertex2i( w, 0 ); - glVertex2i( 0, 0 ); glVertex2i( 0, h ); - - glColor3f( 1., 1., 1. ); - glVertex2i( 0, h ); glVertex2i( w, h ); - glVertex2i( w, h ); glVertex2i( w, 0 ); - - if ( enabled ) - glColor3f( 0., 0., 0. ); - else - glColor3f( .25, .25, .25 ); - glVertex2i( 1, 1 ); glVertex2i( w-1, 1 ); - glVertex2i( 1, 1 ); glVertex2i( 1, h-1 ); - - glColor3f( .75, .75, .75 ); - glVertex2i( 1, h-1 ); glVertex2i( w-1, h-1 ); - glVertex2i( w-1, h-1 ); glVertex2i( w-1, 1 ); - glEnd(); - - /* Draw Background if enabled*/ - if (enabled) { - glColor3f( 1., 1., 1. ); - glDisable( GL_CULL_FACE ); - glBegin( GL_QUADS ); - glVertex2i( 2, 2 ); glVertex2i( w-2, 2 ); - glVertex2i( w-2, h-2 ); glVertex2i(2, h-2 ); - glEnd(); - } else { - glColor3f( .8, .8, .8 ); - glDisable( GL_CULL_FACE ); - glBegin( GL_QUADS ); - glVertex2i( 2, 2 ); glVertex2i( w-2, 2 ); - glVertex2i( w-2, h-2 ); glVertex2i(2, h-2 ); - glEnd(); - } - - /* Begin Drawing Lines of Text */ - substring_start = 0; - substring_end = 0; - text_length = text.length()-1; - - /* Figure out how wide the box is */ - box_width = get_box_width(); - - /* Get the first line substring */ - while (substring_width(substring_start, substring_end+1 ) < box_width && - substring_end < text_length && text[substring_end+1] != '\n') - substring_end++; - - /* Figure out which lines are visible*/ - - visible_lines = (int)(h-20)/LINE_HEIGHT; - if (start_line < (curr_line-visible_lines)) { - for (i = 0; ((curr_line-i)*LINE_HEIGHT+20) > h; i++); - start_line = i; - } else if ( start_line > curr_line) { - start_line = curr_line; - } - line = 0; - do { - if (line && substring_end < text_length) { - substring_start = substring_end+1; - while (substring_width(substring_start, substring_end+1 ) < box_width && - substring_end < text_length && text[substring_end+1] != '\n') - substring_end++; - } - if (text[substring_end+1] == '\n') { /* Skip newline */ - substring_end++; - } - if (line < start_line || (line > curr_line && curr_line > (start_line + visible_lines))) { - line++; - continue; - } - if ((line - start_line) <= visible_lines) - draw_text(0,(line - start_line)*LINE_HEIGHT); /* tabs and other nasties are handled by substring_width */ - line++; - } while (substring_end < text_length); - - num_lines = line; - - draw_insertion_pt(); - if (scrollbar) { - scrollbar->set_int_limits(MAX(0,num_lines/*-1*/-visible_lines),0); - glPushMatrix(); - glTranslatef(scrollbar->x_abs-x_abs, scrollbar->y_abs-y_abs,0.0); - scrollbar->draw_scroll(); - glPopMatrix(); - } -} - - - -/************************** GLUI_TextBox::update_substring_bounds() *********/ - -int GLUI_TextBox::update_substring_bounds( void ) -{ - int box_width; - int text_len = text.length(); - int old_start, old_end; - - old_start = substring_start; - old_end = substring_end; - - /*** Calculate the width of the usable area of the edit box ***/ - box_width = get_box_width(); - - CLAMP( substring_end, 0, MAX(text_len-1,0) ); - CLAMP( substring_start, 0, MAX(text_len-1,0) ); - - if ( debug ) dump( stdout, "-> UPDATE SS" ); - - if ( insertion_pt >= 0 AND - insertion_pt < substring_start ) { /* cursor moved left */ - substring_start = insertion_pt; - - while ( substring_width( substring_start, substring_end ) > box_width ) - substring_end--; - } - else if ( insertion_pt > substring_end ) { /* cursor moved right */ - substring_end = insertion_pt-1; - - while ( substring_width( substring_start, substring_end ) > box_width ) - substring_start++; - } - else { /* cursor is within old substring bounds */ - if ( last_insertion_pt > insertion_pt ) { /* cursor moved left */ - } - else { - while ( substring_width( substring_start, substring_end ) > box_width ) - substring_end--; - - while(substring_width( substring_start, substring_end+1 ) <= box_width - AND substring_end < text_len-1 ) - substring_end++; - } - } - - while ( substring_width( substring_start, substring_end ) > box_width ) - substring_end--; - - last_insertion_pt = insertion_pt; - - /*** No selection if not enabled ***/ - if ( NOT enabled ) { - sel_start = sel_end = 0; - } - - if ( debug ) dump( stdout, "<- UPDATE SS" ); - - if ( substring_start == old_start AND substring_end == old_end ) - return false; /*** bounds did not change ***/ - else - return true; /*** bounds did change ***/ - -} - - -/********************************* GLUI_TextBox::update_x_offsets() *********/ - -void GLUI_TextBox::update_x_offsets( void ) -{ -} - - -/********************************* GLUI_TextBox::draw_text() ****************/ - -void GLUI_TextBox::draw_text( int x, int y ) -{ - GLUI_DRAWINGSENTINAL_IDIOM - int text_x, i, sel_lo, sel_hi, x_pos; - - if ( debug ) dump( stdout, "-> DRAW_TEXT" ); - - /** Find where to draw the text **/ - - text_x = 2 + GLUI_TEXTBOX_BOXINNERMARGINX; - - /** Find lower and upper selection bounds **/ - sel_lo = MIN(sel_start, sel_end ); - sel_hi = MAX(sel_start, sel_end ); - - int sel_x_start, sel_x_end, delta; - - /** Draw selection area dark **/ - if ( sel_start != sel_end ) { - sel_x_start = text_x; - sel_x_end = text_x; - delta = 0; - for( i=substring_start; sel_x_end < (w - text_x) && i<=substring_end; i++ ) { - delta = 0; - if (text[i] == '\t') // Character is a tab, go to next tab stop - while (((delta + sel_x_end) < (w - text_x)) && - (delta == 0 || delta % tab_width)) - delta++; - else - delta = char_width( text[i] ); - - if ( i < sel_lo ) { - sel_x_start += delta; - sel_x_end += delta; - } - else if ( i < sel_hi ) { - sel_x_end += delta; - } - } - - glColor3f( 0.0f, 0.0f, .6f ); - glRecti(sel_x_start, y+5, sel_x_end, y+20); - } - - - if ( sel_start == sel_end ) { // No current selection - x_pos = text_x; - if ( enabled ) - glColor3b( 0, 0, 0 ); - else - glColor3b( 32, 32, 32 ); - - glRasterPos2i( text_x, y+LINE_HEIGHT); - for( i=substring_start; i<=substring_end; i++ ) { - if (this->text[i] == '\t') { // Character is a tab, go to next tab stop - x_pos = ((x_pos-text_x)/tab_width)*tab_width+tab_width+text_x; - glRasterPos2i( x_pos, y+LINE_HEIGHT); // Reposition pen after tab - } else { - glutBitmapCharacter( get_font(), this->text[i] ); - x_pos += char_width( this->text[i] ); - } - } - } - else { // There is a selection - x_pos = text_x; - for( i=substring_start; i<=substring_end; i++ ) { - if ( IN_BOUNDS( i, sel_lo, sel_hi-1)) { // This character is selected - glColor3f( 1., 1., 1. ); - glRasterPos2i( x_pos, y+LINE_HEIGHT); - if (this->text[i] == '\t') { // Character is a tab, go to next tab stop - x_pos = ((x_pos-text_x)/tab_width)*tab_width+tab_width+text_x; - } - else - glutBitmapCharacter( get_font(), this->text[i] ); - } - else { - glColor3f( 0., 0., 0. ); - glRasterPos2i( x_pos, y+LINE_HEIGHT); - if (this->text[i] == '\t') { // Character is a tab, go to next tab stop - x_pos = ((x_pos-text_x)/tab_width)*tab_width+tab_width+text_x; - glRasterPos2i( x_pos, y+LINE_HEIGHT); // Reposition pen after tab - } else - glutBitmapCharacter( get_font(), this->text[i] ); - } - - x_pos += char_width( text[i] ); - } - } - - if ( debug ) dump( stdout, "<- DRAW_TEXT" ); -} - - -/******************************** GLUI_TextBox::find_insertion_pt() *********/ -/* This function returns the character number *before which* the insertion */ -/* point goes */ - -int GLUI_TextBox::find_insertion_pt( int x, int y ) -{ - /*** See if we clicked outside box ***/ - if ( x < this->x_abs || y < this->y_abs) - return -1; - - /*** See if we clicked in an empty box ***/ - if ( text.empty() ) - return 0; - - /* update insert variables */ - insert_x = x; - insert_y = y; - - int text_length = text.length()-1; - int box_width = get_box_width(); - - int sol = 0; - int eol = 0; - int line = 0; - - int y_off = y - (y_abs + 2 + GLUI_TEXTBOX_BOXINNERMARGINX); - int x_off = x - (x_abs + 2 + GLUI_TEXTBOX_BOXINNERMARGINX); - - /* Find the line clicked, - The possibility of long lines getting wrapped complicates this. */ - while ((line-start_line+1)*LINE_HEIGHT < y_off && eol < text_length) - { - while (eol < text_length && text[eol] != '\n' && - substring_width(sol, eol+1) <= box_width) - { - eol++; - } - if (text[eol]=='\n' && eol=x_off) { - // did we go far enough? (see if click was >1/2 width of last char) - int decision_pt = prev_w+(total_w-prev_w)/2; - if (x_off>decision_pt) eol++; - } - return eol; - -#if 0 - while (eol < text_length && text[eol] != '\n' && - substring_width(sol, eol+1) < box_width ) - { - eol++; - } - - - /* We move from right to left, looking to see if the mouse was clicked - to the right of the ith character */ -#if 0 - int curr_x = this->x_abs - + substring_width( sol, eol ) - + 2 /* The edittext box has a 2-pixel margin */ - + GLUI_TEXTBOX_BOXINNERMARGINX; /** plus this many pixels blank space - between the text and the box **/ -#endif - - /** find mouse click in text **/ - - if (x_off > substring_width(sol, eol)) - return eol; - - for(i = sol; i <= eol+1; i++) { - if (x_off <= substring_width(sol, i)) - return i+1; - } - return 0; -#endif -} - - -int GLUI_TextBox::get_box_width() -{ - return MAX( this->w - - 4 /* 2 * the two-line box border */ - - 2 * GLUI_TEXTBOX_BOXINNERMARGINX, 0 ); - -} - -/******************************** GLUI_TextBox::draw_insertion_pt() *********/ - -void GLUI_TextBox::draw_insertion_pt( void ) -{ - int curr_x, box_width, text_length, eol, sol, line; - - if ( NOT can_draw() ) - return; - - /*** Don't draw insertion pt if control is disabled ***/ - if ( NOT enabled ) - return; - - if ( sel_start != sel_end OR insertion_pt < 0 ) { - return; /* Don't draw insertion point if there is a current selection */ - } - - if ( debug ) dump( stdout, "-> DRAW_INS_PT" ); - - /* printf( "insertion pt: %d\n", insertion_pt ); */ - - box_width = get_box_width(); - - // This function is unable to distinguish whether an insertion - // point on a line break should be drawn on the line before or the line after. - // This depends on the sequence of operations used to get there, and this - // function just doesn't have that information. If curr_line were kept up - // to date elsewhere that could be used here to disambiguate, but arrow keys - // and such do not update it. - - sol = 0; - eol = 0; - text_length = text.length()-1; - - //while (eol < text_length && text[eol] != '\n' - // && substring_width(sol, eol + 1) < box_width ) - // eol++; - line = 0; - while (eol < insertion_pt && eol <= text_length) - { - if (text[eol] == '\n' || substring_width(sol, eol + 1) >= box_width) - { - eol++; - if (text[eol]=='\n'||eol!=insertion_pt - ||(eol==insertion_pt && eol>0 && text[eol-1]=='\n')) { - sol = eol; - line++; - } - } - else { - eol++; - } - } - - //glColor3f(1,0,0); - //glRecti(0, curr_line*LINE_HEIGHT, 3, (curr_line+1)*LINE_HEIGHT); - - curr_line = line; - - if (scrollbar) - scrollbar->set_int_val(start_line); - if (curr_line < start_line || curr_line > (start_line + visible_lines)) /* Insertion pt out of draw area */ - return; - - curr_x = this->x_abs - + 2 /* The edittext box has a 2-pixel margin */ - + GLUI_TEXTBOX_BOXINNERMARGINX; /** plus this many pixels blank space - between the text and the box **/ - - curr_x += substring_width(sol,insertion_pt-1); - if (insertion_pt == text.length() && text[text.length()-1] == '\n' - || curr_x-this->x_abs > (w - 2 - GLUI_TEXTBOX_BOXINNERMARGINX)) { // Insert on the next line - curr_x = this->x_abs + GLUI_TEXTBOX_BOXINNERMARGINX; - line++; - } - /* update insertion coordinates */ - insert_x = curr_x+5; /* I hate magic numbers too, these offset the imagined insertion point */ - insert_y = (curr_line-start_line+2)*LINE_HEIGHT; - - - glColor3f( 0.0, 0.0, 0.0 ); - glBegin( GL_LINE_LOOP ); - - curr_x -= x_abs; - glVertex2i( curr_x+1, (curr_line-start_line)*LINE_HEIGHT + 4 ); - glVertex2i( curr_x, (curr_line-start_line)*LINE_HEIGHT + 4 ); - glVertex2i( curr_x+1, (curr_line-start_line)*LINE_HEIGHT + 16 ); - glVertex2i( curr_x, (curr_line-start_line)*LINE_HEIGHT + 16 ); - glEnd(); - - - if ( debug ) dump( stdout, "-> DRAW_INS_PT" ); -} - - - - -/******************************** GLUI_TextBox::substring_width() *********/ -int GLUI_TextBox::substring_width( int start, int end, int initial_width ) -{ - // This function only works properly if start is really the start of a line. - // Otherwise tabs will be messed up. - int i, width = initial_width; - - for( i=start; i<=end; i++ ) - if (text[i] == '\t') { // Character is a tab, jump to next tab stop - width += tab_width-(width%tab_width); - //while (width == 0 || width % tab_width) - // width++; - } - else - width += char_width( text[i] ); - - return width; -} - - -/***************************** GLUI_TextBox::update_and_draw_text() ********/ - -void GLUI_TextBox::update_and_draw_text( void ) -{ - //update_substring_bounds(); - /* printf( "ss: %d/%d\n", substring_start, substring_end ); */ - - redraw(); -} - - -/********************************* GLUI_TextBox::special_handler() **********/ - -int GLUI_TextBox::special_handler( int key,int modifiers ) -{ - int tmp_insertion_pt; - if ( NOT glui ) - return false; - - if ( debug ) - printf( "SPECIAL:%d - mod:%d subs:%d/%d ins:%d sel:%d/%d\n", - key, modifiers, substring_start, substring_end,insertion_pt, - sel_start, sel_end ); - - if ( key == GLUT_KEY_DOWN ) { - if (insert_x == -1 || insert_y == -1) - return false; - tmp_insertion_pt = find_insertion_pt( keygoal_x, insert_y+LINE_HEIGHT); - if (tmp_insertion_pt < 0) - return false; - insertion_pt = tmp_insertion_pt; - sel_end = insertion_pt; - if (!(modifiers & GLUT_ACTIVE_SHIFT)) { - sel_start = sel_end; - } - if ( can_draw()) - update_and_draw_text(); - } else if ( key == GLUT_KEY_UP ) { - if (insert_x == -1 || insert_y == -1) - return false; - tmp_insertion_pt = find_insertion_pt( keygoal_x, insert_y-LINE_HEIGHT); - if (tmp_insertion_pt < 0) - return false; - insertion_pt = tmp_insertion_pt; - sel_end = insertion_pt; - if (!(modifiers & GLUT_ACTIVE_SHIFT)) { - sel_start = sel_end; - } - if ( can_draw()) - update_and_draw_text(); - } else if ( key == GLUT_KEY_LEFT ) { - if ( (modifiers & GLUT_ACTIVE_CTRL) != 0 ) { - insertion_pt = find_word_break( insertion_pt, -1 ); - } - else { - insertion_pt--; - } - // update keygoal_x! - } - else if ( key == GLUT_KEY_RIGHT ) { - if ( (modifiers & GLUT_ACTIVE_CTRL) != 0 ) { - insertion_pt = find_word_break( insertion_pt, +1 ); - } - else { - insertion_pt++; - } - // update keygoal_x! - } - else if ( key == GLUT_KEY_HOME ) { - insertion_pt = 0; - // update keygoal_x! - } - else if ( key == GLUT_KEY_END ) { - insertion_pt = text.length(); - // update keygoal_x! - } - - /*** Update selection if shift key is down ***/ - if ( (modifiers & GLUT_ACTIVE_SHIFT ) != 0 ) - sel_end = insertion_pt; - else - sel_start = sel_end = insertion_pt; - - - CLAMP( insertion_pt, 0, (int)text.length()); /* Make sure insertion_pt - is in bounds */ - CLAMP( sel_start, 0, (int)text.length()); /* Make sure insertion_pt - is in bounds */ - CLAMP( sel_end, 0, (int)text.length()); /* Make sure insertion_pt - is in bounds */ - - /******** Now redraw text ***********/ - if ( can_draw()) - update_and_draw_text(); - - return true; -} - - -/****************************** GLUI_TextBox::find_word_break() **********/ -/* It looks either left or right (depending on value of 'direction' */ -/* for the beginning of the next 'word', where word are characters */ -/* separated by one of the following tokens: " :-.," */ -/* If there is no next word in the specified direction, this returns */ -/* the beginning of 'text', or the very end. */ - -int GLUI_TextBox::find_word_break( int start, int direction ) -{ - int i, j; - char breaks[] = " \n\t:-.,"; - int num_break_chars = (int)strlen(breaks), text_len = text.length(); - int new_pt; - - /** If we're moving left, we have to start two back, in case we're either - already at the beginning of a word, or on a separating token. - Otherwise, this function would just return the word we're already at **/ - if ( direction == -1 ) { - start -= 2; - } - - /***** Iterate over text in the specified direction *****/ - for ( i=start; i >= 0 AND i < text_len; i += direction ) { - - /** For each character in text, iterate over list of separating tokens **/ - for( j=0; j 0 ) /* Return the end of string */ - return text_len; - else /* Return the beginning of the text */ - return 0; -} - - -/********************************** GLUI_TextBox::clear_substring() ********/ - -void GLUI_TextBox::clear_substring( int start, int end ) -{ - text.erase(start,end-start); -} - - - -/************************************ GLUI_TextBox::update_size() **********/ - -void GLUI_TextBox::update_size( void ) -{ - if ( NOT glui ) - return; - - if ( w < GLUI_TEXTBOX_MIN_TEXT_WIDTH ) - w = GLUI_TEXTBOX_MIN_TEXT_WIDTH; -} - - -/****************************** GLUI_TextBox::set_text() **********/ - -void GLUI_TextBox::set_text( const char *new_text ) -{ - text = new_text; - - substring_start = 0; - substring_end = text.length() - 1; - insertion_pt = -1; - sel_start = 0; - sel_end = 0; - visible_lines = 0; - start_line = 0; - curr_line = 0; - num_lines = 0; - - if ( can_draw() ) - update_and_draw_text(); - - /*** Now update the live variable ***/ - output_live(true); -} - - -/*************************************** GLUI_TextBox::dump() **************/ - -void GLUI_TextBox::dump( FILE *out, char *name ) -{ - fprintf( out, - "%s (edittext@%p): line:%d ins_pt:%d subs:%d/%d sel:%d/%d len:%d\n", - name, this, curr_line, - insertion_pt, substring_start, substring_end, sel_start, sel_end, - text.length()); -} - - -/**************************************** GLUI_TextBox::mouse_over() ********/ - -int GLUI_TextBox::mouse_over( int state, int x, int y ) -{ - if ( state && enabled) { - /* curr_cursor = GLUT_CURSOR_TEXT; */ - glutSetCursor( GLUT_CURSOR_TEXT ); - } - else { - /* printf( "OUT\n" ); */ - glutSetCursor( GLUT_CURSOR_LEFT_ARROW ); - } - - return true; -} - -void GLUI_TextBox::scrollbar_callback(GLUI_Control *my_scrollbar) { - GLUI_Scrollbar *sb = dynamic_cast(my_scrollbar); - if (!sb) return; - GLUI_TextBox* me = (GLUI_TextBox*) sb->associated_object; - if (me->scrollbar == NULL) - return; - int new_start_line = sb->get_int_val(); // ?? - me->start_line = new_start_line; - if (new_start_line < (me->curr_line - me->visible_lines)) - me->curr_line = new_start_line + me->visible_lines; - if (new_start_line > me->curr_line) - me->curr_line = new_start_line; - if ( me->can_draw() ) - me->update_and_draw_text(); -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_translation.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_translation.cpp deleted file mode 100644 index 73b1fa3..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_translation.cpp +++ /dev/null @@ -1,559 +0,0 @@ -/**************************************************************************** - - GLUI User Interface Toolkit - --------------------------- - - glui_translation - GLUI_Translation control class - - - -------------------------------------------------- - - Copyright (c) 1998 Paul Rademacher - - WWW: http://sourceforge.net/projects/glui/ - Forums: http://sourceforge.net/forum/?group_id=92496 - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -*****************************************************************************/ - -#include "glui.h" -#include "glui_internal.h" -#include "algebra3.h" - -/********************** GLUI_Translation::GLUI_Translation() ***/ - -GLUI_Translation::GLUI_Translation( - GLUI_Node *parent, const char *name, - int trans_t, float *value_ptr, - int id, GLUI_CB cb ) -{ - common_init(); - - set_ptr_val( value_ptr ); - user_id = id; - set_name( name ); - callback = cb; - parent->add_control( this ); - //init_live(); - - trans_type = trans_t; - - if ( trans_type == GLUI_TRANSLATION_XY ) { - float_array_size = 2; - } - else if ( trans_type == GLUI_TRANSLATION_X ) { - float_array_size = 1; - } - else if ( trans_type == GLUI_TRANSLATION_Y ) { - float_array_size = 1; - } - else if ( trans_type == GLUI_TRANSLATION_Z ) { - float_array_size = 1; - } - init_live(); -} - -/********************** GLUI_Translation::iaction_mouse_down_handler() ***/ -/* These are really in local coords (5/10/99) */ - -int GLUI_Translation::iaction_mouse_down_handler( int local_x, - int local_y ) -{ - int center_x, center_y; - - down_x = local_x; - down_y = local_y; - - if ( trans_type == GLUI_TRANSLATION_XY ) { - orig_x = float_array_val[0]; - orig_y = float_array_val[1]; - - /** Check if the Alt key is down, which means lock to an axis **/ - - center_x = w/2; - center_y = (h-18)/2; - - if ( glui->curr_modifiers & GLUT_ACTIVE_ALT ) { - if ( ABS(local_y-center_y) > ABS(local_x-center_x) ) { - locked = GLUI_TRANSLATION_LOCK_Y; - glutSetCursor( GLUT_CURSOR_UP_DOWN ); - } - else { - locked = GLUI_TRANSLATION_LOCK_X; - glutSetCursor( GLUT_CURSOR_LEFT_RIGHT ); - } - } - else { - locked = GLUI_TRANSLATION_LOCK_NONE; - glutSetCursor( GLUT_CURSOR_SPRAY ); - } - } - else if ( trans_type == GLUI_TRANSLATION_X ) { - glutSetCursor( GLUT_CURSOR_LEFT_RIGHT ); - orig_x = float_array_val[0]; - } - else if ( trans_type == GLUI_TRANSLATION_Y ) { - glutSetCursor( GLUT_CURSOR_UP_DOWN ); - orig_y = float_array_val[0]; - } - else if ( trans_type == GLUI_TRANSLATION_Z ) { - glutSetCursor( GLUT_CURSOR_UP_DOWN ); - orig_z = float_array_val[0]; - } - - trans_mouse_code = 1; - redraw(); - - return false; -} - - -/*********************** GLUI_Translation::iaction_mouse_up_handler() **********/ - -int GLUI_Translation::iaction_mouse_up_handler( int local_x, int local_y, - bool inside ) -{ - trans_mouse_code = GLUI_TRANSLATION_MOUSE_NONE; - locked = GLUI_TRANSLATION_LOCK_NONE; - - redraw(); - - return false; -} - - -/******************* GLUI_Translation::iaction_mouse_held_down_handler() ******/ - -int GLUI_Translation::iaction_mouse_held_down_handler( int local_x, int local_y, - bool inside) -{ - float x_off, y_off; - float off_array[2]; - - x_off = scale_factor * (float)(local_x - down_x); - y_off = -scale_factor * (float)(local_y - down_y); - - if ( glui->curr_modifiers & GLUT_ACTIVE_SHIFT ) { - x_off *= 100.0f; - y_off *= 100.0f; - } - else if ( glui->curr_modifiers & GLUT_ACTIVE_CTRL ) { - x_off *= .01f; - y_off *= .01f; - } - - - if ( trans_type == GLUI_TRANSLATION_XY ) { - - if ( locked == GLUI_TRANSLATION_LOCK_X ) - y_off = 0.0; - else if ( locked == GLUI_TRANSLATION_LOCK_Y ) - x_off = 0.0; - - off_array[0] = x_off + orig_x; - off_array[1] = y_off + orig_y; - } - else if ( trans_type == GLUI_TRANSLATION_X ) { - off_array[0] = x_off + orig_x; - } - else if ( trans_type == GLUI_TRANSLATION_Y ) { - off_array[0] = y_off + orig_y; - } - else if ( trans_type == GLUI_TRANSLATION_Z ) { - off_array[0] = y_off + orig_z; - } - - set_float_array_val( (float*) &off_array[0] ); - - return false; -} - - -/******************** GLUI_Translation::iaction_draw_active_area_persp() **************/ - -void GLUI_Translation::iaction_draw_active_area_persp( void ) -{ -} - - -/******************** GLUI_Translation::iaction_draw_active_area_ortho() **********/ - -void GLUI_Translation::iaction_draw_active_area_ortho( void ) -{ - /********* Draw emboss circles around arcball control *********/ - float radius; - radius = (float)(h-22)/2.0; /* MIN((float)w/2.0, (float)h/2.0); */ - glLineWidth( 1.0 ); - - draw_emboss_box( (int) -radius-2, (int)radius+2, - (int)-radius-2, (int)radius+2 ); - - glMatrixMode( GL_MODELVIEW ); - glPushMatrix(); - glTranslatef( .5, .5, .5 ); - /* glScalef( radius-1.0, radius-1.0, radius-1.0 ); */ - if ( trans_type == GLUI_TRANSLATION_Z ) - draw_2d_z_arrows((int)radius-1); - else if ( trans_type == GLUI_TRANSLATION_XY ) - draw_2d_xy_arrows((int)radius-1); - else if ( trans_type == GLUI_TRANSLATION_X ) - draw_2d_x_arrows((int)radius-1); - else if ( trans_type == GLUI_TRANSLATION_Y ) - draw_2d_y_arrows((int)radius-1); - - glPopMatrix(); -} - - -/******************************** GLUI_Translation::iaction_dump() **********/ - -void GLUI_Translation::iaction_dump( FILE *output ) -{ -} - - -/******************** GLUI_Translation::iaction_special_handler() **********/ - -int GLUI_Translation::iaction_special_handler( int key,int modifiers ) -{ - - return false; -} - - - -/*************************** GLUI_Translation::draw_2d_z_arrows() **************/ - -void GLUI_Translation::draw_2d_z_arrows( int radius ) -{ - if ( trans_mouse_code != GLUI_TRANSLATION_MOUSE_NONE ) { - draw_2d_arrow(radius, true, 2); - draw_2d_arrow(radius, true, 0); - } - else { - draw_2d_arrow(radius, false, 2); - draw_2d_arrow(radius, false, 0); - } -} - - -/*************************** GLUI_Translation::draw_2d_x_arrows() **************/ - -void GLUI_Translation::draw_2d_x_arrows( int radius ) -{ - if ( trans_mouse_code != GLUI_TRANSLATION_MOUSE_NONE ) { - draw_2d_arrow(radius, true, 1); - draw_2d_arrow(radius, true, 3); - } - else { - draw_2d_arrow(radius, false, 1); - draw_2d_arrow(radius, false, 3); - } -} - - -/*************************** GLUI_Translation::draw_2d_y_arrows() **************/ - -void GLUI_Translation::draw_2d_y_arrows( int radius ) -{ - if ( trans_mouse_code != GLUI_TRANSLATION_MOUSE_NONE ) { - draw_2d_arrow(radius, true, 0); - draw_2d_arrow(radius, true, 2); - } - else { - draw_2d_arrow(radius, false, 0); - draw_2d_arrow(radius, false, 2); - } -} - - -/************************** GLUI_Translation::draw_2d_xy_arrows() **************/ - -void GLUI_Translation::draw_2d_xy_arrows( int radius) -{ - if ( trans_mouse_code != GLUI_TRANSLATION_MOUSE_NONE ) { - if ( locked == GLUI_TRANSLATION_LOCK_X ) { - draw_2d_arrow(radius, false, 0); - draw_2d_arrow(radius, false, 2); - draw_2d_arrow(radius, true, 1); - draw_2d_arrow(radius, true, 3); - } - else if ( locked == GLUI_TRANSLATION_LOCK_Y ) { - draw_2d_arrow(radius, false, 1); - draw_2d_arrow(radius, false, 3); - draw_2d_arrow(radius, true, 0); - draw_2d_arrow(radius, true, 2); - } - else { - draw_2d_arrow(radius, true, 0); - draw_2d_arrow(radius, true, 1); - draw_2d_arrow(radius, true, 2); - draw_2d_arrow(radius, true, 3); - } - } - else { - draw_2d_arrow(radius, false, 0); - draw_2d_arrow(radius, false, 1); - draw_2d_arrow(radius, false, 2); - draw_2d_arrow(radius, false, 3); - } - - return; -} - - -/*************************** GLUI_Translation::draw_2d_arrow() **************/ -/* ori: 0=up, 1=left, 2=down, 3=right */ -/* */ -/* */ -/* 0, y2 */ -/* / \ */ -/* / \ */ -/* / \ */ -/* / \ */ -/* / \ */ -/* / \ */ -/* / \ */ -/* / \ */ -/* -x2,y1 -x1b,y1 x1b,y1 x2,y1 */ -/* | | */ -/* | | */ -/* | | */ -/* | | */ -/* | | */ -/* -x1a,y0 x1a,y0 */ -/* */ - - -void GLUI_Translation::draw_2d_arrow( int radius, int filled, int orientation ) -{ - float x1 = .2, x2 = .4, y1 = .54, y2 = .94, y0; - float x1a, x1b; -/* - vec3 col1( 0.0, 0.0, 0.0 ), col2( .45, .45, .45 ), - col3( .7, .7, .7 ), col4( 1.0, 1.0, 1.0 ); - vec3 c1, c2, c3, c4, c5, c6; -*/ - vec3 white(1.0,1.0,1.0), black(0.0,0.0,0.0), gray(.45,.45,.45), - bkgd(.7,.7,.7); - int c_off=0; /* color index offset */ - - if ( glui ) - bkgd.set(glui->bkgd_color_f[0], - glui->bkgd_color_f[1], - glui->bkgd_color_f[2]); - - /* bkgd[0] = 255.0; bkgd[1] = 0; */ - - /** The following 8 colors define the shading of an octagon, in - clockwise order, starting from the upstroke on the left **/ - /** This is for an outside and inside octagons **/ - vec3 colors_out[]={white, white, white, gray, black, black, black, gray}; - vec3 colors_in[] ={bkgd,white,bkgd,gray,gray,gray,gray,gray}; - -#define SET_COL_OUT(i) glColor3fv((float*) &colors_out[(i)%8][0]); -#define SET_COL_IN(i) glColor3fv((float*) &colors_in[(i)%8][0]); - - x1 = (float)radius * .2; - x2 = x1 * 2; - y1 = (float)radius * .54; - y2 = y1 + x2; - x1a = x1; - x1b = x1; - - glMatrixMode(GL_MODELVIEW); - glPushMatrix(); - -#define DRAW_SEG( xa,ya,xb,yb ) glVertex2f(xa,ya); glVertex2f(xb,yb); - - glScalef( -1.0, 1.0, 1.0 ); - - if ( orientation == 2 ) { - c_off = 4; - } - else if ( orientation == 0 ) { - c_off = 0; - glRotatef( 180.0, 0.0, 0.0, 1.0 ); - } - else if ( orientation == 1 ) { - c_off = 2; - glRotatef( 90.0, 0.0, 0.0, 1.0 ); - } - else if ( orientation == 3 ) { - c_off = 6; - glRotatef( -90.0, 0.0, 0.0, 1.0 ); - } - - if ( trans_type == GLUI_TRANSLATION_Z ) - y0 = 0.0; - else if ( trans_type == GLUI_TRANSLATION_XY ) - y0 = x1; - else - y0 = 0.0; - - - if ( trans_type == GLUI_TRANSLATION_Z ) { - if ( orientation == 0 ) { - y1 += 2.0; - y2 += 0.0; - - x1b -= 2.0; - x2 -= 2.0; - x1a += 2.0; - } - else if ( orientation == 2 ) { - y1 -= 6.0; - x1a += 2.0; - x1b += 4.0; - x2 += 6.0; - } - } - - /*** Fill in inside of arrow ***/ - if ( NOT filled ) { /*** Means button is up - control is not clicked ***/ - /*glColor3f( .8, .8, .8 ); */ - set_to_bkgd_color(); - glColor3f( bkgd[0]+.07, bkgd[1]+.07, bkgd[2]+.07 ); - } - else { /*** Button is down on control ***/ - glColor3f( .6, .6, .6 ); - c_off += 4; /* Indents the shadows - goes from a raised look to embossed */ - } - - /*** Check if control is enabled or not ***/ - if ( NOT enabled ) { - set_to_bkgd_color(); - /*c_off += 4; -- Indents the shadows - goes from a raised look to embossed */ - colors_out[0] = colors_out[1] = colors_out[2] = colors_out[7] = gray; - colors_out[3] = colors_out[4] = colors_out[5] = colors_out[6] = white; - colors_in[0] = colors_in[1] = colors_in[2] = colors_in[7] = white; - colors_in[3] = colors_in[4] = colors_in[5] = colors_in[6] = gray; - - } - - glBegin( GL_POLYGON ); - glVertex2f( 0.0, 0.0 ); glVertex2f( -x1a, 0.0 ); - glVertex2f( -x1a, 0.0 ); glVertex2f( -x1b, y1 ); - glVertex2f( x1b, y1); glVertex2f( x1a, 0.0 ); - glVertex2f( x1a, 0.0 ); glVertex2f( 0.0, 0.0 ); - glEnd(); - glBegin( GL_TRIANGLES ); - glVertex2f( -x2, y1 ); glVertex2f( 0.0, y2 ); glVertex2f( x2, y1 ); - glEnd(); - - glLineWidth( 1.0 ); - /*** Draw arrow outline ***/ - glBegin( GL_LINES ); - - SET_COL_IN(1+c_off); DRAW_SEG( 0.0, y2-1.0, -x2, y1-1.0 ); - SET_COL_IN(6+c_off); DRAW_SEG( -x2+2.0, y1+1.0, -x1b+1.0, y1+1.0 ); - SET_COL_IN(0+c_off); DRAW_SEG( -x1b+1.0, y1+1.0, -x1a+1.0, y0 ); - SET_COL_IN(3+c_off); DRAW_SEG( 0.0, y2-1.0, x2, y1-1.0 ); - SET_COL_IN(6+c_off); DRAW_SEG( x2-1.0, y1+1.0, x1b-1.0, y1+1.0 ); - SET_COL_IN(4+c_off); DRAW_SEG( x1b-1.0, y1+1.0, x1a-1.0, y0 ); - - SET_COL_OUT(0+c_off); DRAW_SEG( -x1a, y0, -x1b, y1 ); - SET_COL_OUT(6+c_off); DRAW_SEG( -x1b, y1, -x2, y1 ); - SET_COL_OUT(1+c_off); DRAW_SEG( -x2, y1, 0.0, y2 ); - SET_COL_OUT(3+c_off); DRAW_SEG( 0.0, y2, x2, y1 ); - SET_COL_OUT(6+c_off); DRAW_SEG( x2, y1, x1b, y1 ); - SET_COL_OUT(4+c_off); DRAW_SEG( x1b, y1, x1a, y0 ); - - glEnd(); - -#undef DRAW_SEG - - glPopMatrix(); -} - - -/*************************** GLUI_Translation::get_mouse_code() *************/ - -int GLUI_Translation::get_mouse_code( int x, int y ) -{ - if ( x == 0 AND y < 0 ) - return GLUI_TRANSLATION_MOUSE_DOWN; - else if ( x == 0 AND y > 0 ) - return GLUI_TRANSLATION_MOUSE_UP; - else if ( x > 0 AND y == 0 ) - return GLUI_TRANSLATION_MOUSE_LEFT; - else if ( x < 0 AND y == 0 ) - return GLUI_TRANSLATION_MOUSE_RIGHT; - else if ( x < 0 AND y < 0 ) - return GLUI_TRANSLATION_MOUSE_DOWN_LEFT; - else if ( x < 0 AND y > 0 ) - return GLUI_TRANSLATION_MOUSE_DOWN_RIGHT; - else if ( x > 0 AND y < 0 ) - return GLUI_TRANSLATION_MOUSE_UP_LEFT; - else if ( x > 0 AND y > 0 ) - return GLUI_TRANSLATION_MOUSE_UP_RIGHT; - - - return GLUI_TRANSLATION_MOUSE_NONE; -} - - -/*********************************** GLUI_Translation::set_x() ******/ - -void GLUI_Translation::set_x( float val ) -{ - set_one_val( val, 0 ); -} - - -/*********************************** GLUI_Translation::set_y() ******/ - -void GLUI_Translation::set_y( float val ) -{ - if ( trans_type == GLUI_TRANSLATION_XY ) - set_one_val( val, 1 ); - else - set_one_val( val, 0 ); -} - - -/*********************************** GLUI_Translation::set_z() ******/ - -void GLUI_Translation::set_z( float val ) -{ - set_one_val( val, 0 ); -} - - -/******************************* GLUI_Translation::set_one_val() ****/ - -void GLUI_Translation::set_one_val( float val, int index ) -{ - float *fp; - - float_array_val[index] = val; /* set value in array */ - - /*** The code below is like output_live, except it only operates on - a single member of the float array (given by 'index') instead of - outputting the entire array ****/ - - if ( ptr_val == NULL OR NOT live_inited ) - return; - - fp = (float*) ptr_val; - fp[index] = float_array_val[index]; - last_live_float_array[index] = float_array_val[index]; - - /** Update the main gfx window? **/ - if ( this->glui != NULL ) { - this->glui->post_update_main_gfx(); - } -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_tree.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_tree.cpp deleted file mode 100644 index 1ed456d..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_tree.cpp +++ /dev/null @@ -1,278 +0,0 @@ -/**************************************************************************** - - GLUI User Interface Toolkit - --------------------------- - - glui_panel.cpp - GLUI_Panel control class - - - -------------------------------------------------- - - Copyright (c) 1998 Paul Rademacher - - This program is freely distributable without licensing fees and is - provided without guarantee or warrantee expressed or implied. This - program is -not- in the public domain. - -*****************************************************************************/ - -#include "glui_internal_control.h" - - -/****************************** GLUI_Tree::GLUI_Tree() **********/ -GLUI_Tree::GLUI_Tree(GLUI_Node *parent, const char *name, - int open, int inset) -{ - common_init(); - GLUI_StaticText *inset_label; - GLUI_Column *col; - - this->set_name( name ); - this->user_id = -1; - - if ( NOT open ) { - this->is_open = false; - this->h = GLUI_DEFAULT_CONTROL_HEIGHT + 7; - } - - parent->add_control( this ); - inset_label = new GLUI_StaticText(this,""); - inset_label->set_w(inset); - col = new GLUI_Column(this,true); - this->set_column(col); - this->set_alignment(GLUI_ALIGN_LEFT); -} - - -/****************************** GLUI_Tree::open() **********/ - -void GLUI_Tree::open( void ) -{ - if ( is_open ) - return; - is_open = true; - - GLUI_DRAWINGSENTINAL_IDIOM - - child_head = collapsed_node.child_head; - child_tail = collapsed_node.child_tail; - - collapsed_node.child_head = NULL; - collapsed_node.child_tail = NULL; - - if ( child_head != NULL ) { - ((GLUI_Control*) child_head)->unhide_internal( true ); - } - - glui->refresh(); -} - - -/****************************** GLUI_Tree::close() **********/ - -void GLUI_Tree::close( void ) -{ - if ( NOT glui ) - return; - - if ( NOT is_open ) - return; - is_open = false; - - GLUI_DRAWINGSENTINAL_IDIOM - - if ( child_head != NULL ) { - ((GLUI_Control*) child_head)->hide_internal( true ); - } - - collapsed_node.child_head = first_child(); - collapsed_node.child_tail = last_child(); - - child_head = NULL; - child_tail = NULL; - - this->h = GLUI_DEFAULT_CONTROL_HEIGHT + 7; - - glui->refresh(); -} - - -/**************************** GLUI_Tree::mouse_down_handler() **********/ - - -int GLUI_Tree::mouse_down_handler( int local_x, int local_y ) -{ - if ( local_y - y_abs > 18 ) { - initially_inside = currently_inside = false; - return false; - } - - currently_inside = true; - initially_inside = true; - redraw(); - - return false; -} - -/**************************** GLUI_Tree::mouse_held_down_handler() ****/ - -int GLUI_Tree::mouse_held_down_handler( - int local_x, int local_y, - bool new_inside ) -{ - if ( NOT initially_inside ) - return false; - - if ( local_y - y_abs> 18 ) - new_inside = false; - - if (currently_inside != new_inside) - redraw(); - - return false; -} - - -/**************************** GLUI_Tree::mouse_down_handler() **********/ - -int GLUI_Tree::mouse_up_handler( int local_x, int local_y, bool inside ) -{ - if ( currently_inside ) { - if ( is_open ) - close(); - else - open(); - } - - currently_inside = false; - initially_inside = false; - redraw(); - - return false; -} - - -/********************************* GLUI_Tree::draw() ***********/ - -void GLUI_Tree::draw( int x, int y ) -{ - GLUI_DRAWINGSENTINAL_IDIOM - int left, right, top, bottom, delta_x; - - left = 5; - right = w-left; - top = 3; - bottom = 3+16; - delta_x = 0; - - glui->draw_raised_box( left, top, 16, 16 ); - - if ( glui ) - glColor3ub(glui->bkgd_color.r,glui->bkgd_color.g,glui->bkgd_color.b); - glDisable( GL_CULL_FACE ); - glBegin( GL_QUADS ); - glVertex2i( left+17, top+1 ); glVertex2i( right-1, top+1 ); - glVertex2i( right-1, bottom-1 ); glVertex2i( left+17, bottom-1 ); - glEnd(); - - if (format & GLUI_TREEPANEL_DISPLAY_HIERARCHY) { - delta_x = string_width( level_name ) + char_width(' '); - glColor3f( lred, lgreen, lblue); /* The hierarchy is drawn in bold */ - glRasterPos2i(left + 25, top + 11); - draw_string(level_name); - glRasterPos2i(left + 24, top + 11); - draw_string(level_name); - } - - draw_name( delta_x+left+24, top+11 ); - - if ( active ) - draw_active_box( left+22, delta_x+left+string_width( name )+32, - top, bottom-2 ); - - - /** Draw '+' or '-' **/ - - glBegin( GL_LINES ); - if ( is_open ) { - if ( enabled ) - if (is_current) - glColor3f( 0, 0, 1 ); - else - glColor3f( 0.0, 0.0, 0.0 ); - else - glColor3f( 0.5, 0.5, 0.5 ); - glVertex2i(left+4,(top+bottom)/2); glVertex2i(left+13,(top+bottom)/2); - - glColor3f( 1.0, 1.0, 1.0 ); - glVertex2i(left+4,1+(top+bottom)/2);glVertex2i(left+13,1+(top+bottom)/2); - } - else - { - glColor3f( 1.0, 1.0, 1.0 ); - glVertex2i(left+9,top+3); glVertex2i(left+9,bottom-4); - glVertex2i(left+4,(top+bottom)/2); glVertex2i(left+13,(top+bottom)/2); - - if ( enabled ) - if (is_current) - glColor3f( 0, 0, 1 ); - else - glColor3f( 0.0, 0.0, 0.0 ); - else - glColor3f( 0.5, 0.5, 0.5 ); - glVertex2i(left+4,-1+(top+bottom)/2); - glVertex2i(left+13,-1+(top+bottom)/2); - glVertex2i(left+8,top+3); - glVertex2i(left+8,bottom-4); - } - glEnd(); - - glLineWidth( 1.0 ); - - if (currently_inside) draw_pressed(); -} - - -/***************************** GLUI_Tree::update_size() **********/ - -void GLUI_Tree::update_size( void ) -{ - int text_size = 0, delta_x = 0; - - if ( NOT glui ) - return; - - text_size = string_width(name); - - if (format & GLUI_TREEPANEL_DISPLAY_HIERARCHY) { - delta_x = string_width( level_name ); - } - - if ( w < text_size + 36 + delta_x) - w = text_size + 36 + delta_x; -} - - -/**************************** GLUI_Tree::draw_pressed() ***********/ - -void GLUI_Tree::draw_pressed( void ) -{ - int left, right, top, bottom; - - left = 5; - right = w-left; - top = 3; - bottom = 3+16; - - glColor3f( 0.0, 0.0, 0.0 ); - - glBegin( GL_LINE_LOOP ); - glVertex2i( left, top ); glVertex2i( right, top ); - glVertex2i( right, bottom ); glVertex2i( left,bottom ); - glEnd(); - - glBegin( GL_LINE_LOOP ); - glVertex2i( left+1, top+1 ); glVertex2i( right-1, top+1 ); - glVertex2i( right-1, bottom-1 ); glVertex2i( left+1,bottom-1 ); - glEnd(); -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_treepanel.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_treepanel.cpp deleted file mode 100644 index 4849aed..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_treepanel.cpp +++ /dev/null @@ -1,387 +0,0 @@ -#include "glui.h" - - -/****************************** GLUI_TreePanel::GLUI_TreePanel() *********/ - -GLUI_TreePanel::GLUI_TreePanel(GLUI_Node *parent, const char *name, - bool open, int inset) -{ - common_init(); - - set_name( name ); - user_id = -1; - - if ( !open ) { - is_open = false; - h = GLUI_DEFAULT_CONTROL_HEIGHT + 7; - } - - parent->add_control( this ); -} - -/****************************** GLUI_TreePanel::set_color() *********/ - -void GLUI_TreePanel::set_color(float r, float g, float b) -{ - red = r; - green = g; - blue = b; - redraw(); -} - -/************************ GLUI_TreePanel::set_level_color() *********/ - -void GLUI_TreePanel::set_level_color(float r, float g, float b) -{ - lred = r; - lgreen = g; - lblue = b; - redraw(); -} - -/****************************** GLUI_TreePanel::ab() *********/ - -/* Adds branch to curr_root */ -GLUI_Tree *GLUI_TreePanel::ab(const char *name, GLUI_Tree *root) -{ - GLUI_Tree *temp; - - - if (root != NULL) { - resetToRoot(root); - } - - temp = new GLUI_Tree(curr_root, name); - initNode(temp); - formatNode(temp); - - curr_root = temp; - curr_branch = NULL; /* Currently at leaf */ - - if (dynamic_cast(temp)) - ((GLUI_Tree *)temp)->set_current(true); - //refresh(); - // glui->deactivate_current_control(); - //glui->activate_control( temp, GLUI_ACTIVATE_TAB ); - return temp; - -} - -/****************************** GLUI_TreePanel::fb() *********/ - -/* Goes up one level, resets curr_root and curr_branch to parents*/ -void GLUI_TreePanel::fb(GLUI_Tree *branch) -{ - if (((GLUI_Panel *)branch) == ((GLUI_Panel *)this)) - return; - - if (((GLUI_Panel *)curr_branch) == ((GLUI_Panel *)this)) { - resetToRoot(); - return; - } - if (((GLUI_Panel *)curr_root) == ((GLUI_Panel *)this)) { - resetToRoot(); - return; - } - - if (branch != NULL) { - - if ( dynamic_cast(branch) ) - ((GLUI_Tree *)branch)->set_current(false); - - curr_branch = (GLUI_Tree *)branch->next(); - curr_root = (GLUI_Panel *)branch->parent(); - - if (curr_branch == NULL && (curr_root->collapsed_node).first_child() != NULL) - curr_branch = (GLUI_Tree *)(curr_root->collapsed_node).first_child(); - - if ( dynamic_cast(curr_root) ) - ((GLUI_Tree *)curr_root)->set_current(true); - - } else { - if (curr_root != NULL) { /* up one parent */ - - if (dynamic_cast(curr_root)) - ((GLUI_Tree *)curr_root)->set_current(false); - - curr_branch = (GLUI_Tree *) curr_root->next(); - curr_root = (GLUI_Panel *) curr_root->parent(); - - if (curr_branch == NULL && (curr_root->collapsed_node).first_child() != NULL) - curr_branch = (GLUI_Tree *)(curr_root->collapsed_node).first_child(); - - if (dynamic_cast(curr_root)) - ((GLUI_Tree *)curr_root)->set_current(true); - - } - - } - //refresh(); -} - - -/****************************** GLUI_TreePanel::refresh() *********/ - -void GLUI_TreePanel::refresh() -{ - glui->deactivate_current_control(); - glui->activate_control( curr_root, GLUI_ACTIVATE_TAB ); - - redraw(); -} - -/****************************** GLUI_TreePanel::initNode() *********/ - -void GLUI_TreePanel::initNode(GLUI_Tree *temp) -{ - if (temp == NULL) - return; - int level = temp->get_level(); - int child_number = 1; - - GLUI_Tree *ptree = dynamic_cast(temp->parent()); - if (ptree) { - level = ptree->get_level() + 1; - GLUI_Tree *prevTree = dynamic_cast(temp->prev()); - if (prevTree) { - child_number = prevTree->get_child_number() + 1; - } - } else if (dynamic_cast(temp) && - dynamic_cast(temp->parent())) { - child_number = ++root_children; - } - temp->set_id(uniqueID()); // -1 if unset - temp->set_level(level); - temp->set_child_number(child_number); -} - -/****************************** GLUI_TreePanel::formatNode() *********/ - -void GLUI_TreePanel::formatNode(GLUI_Tree *temp) -{ - if (temp == NULL) - return; - int level = temp->get_level(); - int child_number = temp->get_child_number(); - GLUI_String level_name=""; - GLUI_String full_name=""; - - temp->level_name == ""; - - if (format & GLUI_TREEPANEL_DISPLAY_HIERARCHY) { - if (format & GLUI_TREEPANEL_HIERARCHY_LEVEL_ONLY) { - glui_format_str(level_name, "%d", level); - } - if (format & GLUI_TREEPANEL_HIERARCHY_NUMERICDOT) { - if ( dynamic_cast(temp->parent()) ) - glui_format_str(level_name, "%s.%d", - ((GLUI_Tree *)(temp->parent()))->level_name.c_str(), - child_number); - else - glui_format_str(level_name, "%d", child_number); - } - } - - temp->set_level_color(lred, lgreen, lblue); - temp->set_format(format); - temp->level_name = level_name; - - if (format & GLUI_TREEPANEL_ALTERNATE_COLOR) { - switch (level%8) { - case (7): temp->set_color(.5,.5,.5); break; - case (6): temp->set_color(.3,.5,.5); break; - case (5): temp->set_color(.5,.3,.5); break; - case (4): temp->set_color(.3,.3,.5); break; - case (3): temp->set_color(.5,.5,.3); break; - case (2): temp->set_color(.3,.5,.3); break; - case (1): temp->set_color(.5,.3,.3); break; - default: temp->set_color(.3,.3,.3); - } - } else { - temp->set_color(red,green,blue); - } - - if (format & GLUI_TREEPANEL_DISABLE_BAR) { - temp->disable_bar(); - } else { - if (format & GLUI_TREEPANEL_DISABLE_DEEPEST_BAR) { - temp->disable_bar(); - if ( dynamic_cast(curr_root) ) - ((GLUI_Tree *)curr_root)->enable_bar(); - } else - if (format & GLUI_TREEPANEL_CONNECT_CHILDREN_ONLY) { - temp->disable_bar(); - if (temp->prev() && dynamic_cast(temp->prev()) ) - { - ((GLUI_Tree *)temp->prev())->enable_bar(); - } - } - } -} - -/****************************** GLUI_TreePanel::update_all() *********/ - -void GLUI_TreePanel::update_all() -{ - printf("GLUI_TreePanel::update_all() doesn't work yet. - JVK\n"); - return; - GLUI_Panel *saved_root = curr_root; - GLUI_Tree *saved_branch = curr_branch; - root_children = 0; - resetToRoot(this); - if (curr_branch && dynamic_cast(curr_branch)) - formatNode((GLUI_Tree *)curr_branch); - next(); - while (curr_root && curr_branch != this->first_child()) { - if (curr_branch && dynamic_cast(curr_branch)) { - formatNode((GLUI_Tree *)curr_branch); - } - next(); - } - curr_root = saved_root; - curr_branch = saved_branch; -} - -/****************************** GLUI_TreePanel::expand_all() *********/ - -void GLUI_TreePanel::expand_all() -{ - GLUI_Panel *saved_root = curr_root; - GLUI_Tree *saved_branch = curr_branch; - - resetToRoot(this); - if (dynamic_cast(curr_root)) - ((GLUI_Tree*)curr_root)->open(); - next(); - while (curr_root != NULL && curr_branch != this->first_child()) { - if (dynamic_cast(curr_root)) - ((GLUI_Tree*)curr_root)->open(); - next(); - } - - curr_root = saved_root; - curr_branch = saved_branch; -} - -/****************************** GLUI_TreePanel::collapse_all() *********/ - -void GLUI_TreePanel::collapse_all() -{ - GLUI_Panel *saved_root = curr_root; - GLUI_Tree *saved_branch = curr_branch; - - resetToRoot(this); - next(); - while (curr_root != NULL && curr_branch != this->first_child()) { - if (dynamic_cast(curr_root) && - curr_branch == NULL) { /* we want to close everything leaf-first */ - ((GLUI_Tree*)curr_root)->close(); - /* Rather than simply next(), we need to manually move the - curr_root because this node has been moved to the - collapsed_node list */ - curr_branch = (GLUI_Tree *)curr_root->next(); - curr_root = (GLUI_Panel *)curr_root->parent(); - } else - next(); - } - - curr_root = saved_root; - curr_branch = saved_branch; - -} - -/****************************** GLUI_TreePanel::db() *********/ - -/* Deletes the curr_root */ -void GLUI_TreePanel::db(GLUI_Tree *root) -{ - GLUI_Tree *temp_branch; - GLUI_Panel *temp_root; - - if (((GLUI_Control *)root) == ((GLUI_Control *)this)) - return; - - if (root != NULL) { - curr_root = (GLUI_Tree *)root; - curr_branch = NULL; - } - - if (curr_root == NULL || ((GLUI_Panel *)curr_root) == ((GLUI_Panel *)this)) { - resetToRoot(); - return; - } - - - temp_branch = (GLUI_Tree *)curr_root->next(); /* Next branch, if any */ - temp_root = (GLUI_Panel *)curr_root->parent(); /* new root */ - curr_root->unlink(); - delete curr_root; - curr_branch = (GLUI_Tree *) temp_branch; - curr_root = (GLUI_Panel *) temp_root; - if (dynamic_cast(curr_root)) - ((GLUI_Tree *)curr_root)->open(); - - if ((format & GLUI_TREEPANEL_DISABLE_DEEPEST_BAR) == GLUI_TREEPANEL_DISABLE_DEEPEST_BAR) { - if (dynamic_cast(curr_root) && ((GLUI_Tree *)curr_root->next()) == NULL) - ((GLUI_Tree *)curr_root)->disable_bar(); - } - //refresh(); -} - -/****************************** GLUI_TreePanel::descendBranch() *********/ - -/* Finds the very last branch of curr_root, resets vars */ -void GLUI_TreePanel::descendBranch(GLUI_Panel *root) { - if (root) - resetToRoot(root); - else - resetToRoot(curr_root); - if (curr_branch != NULL && curr_branch != ((GLUI_Panel *)this)) { - if (dynamic_cast(curr_root)) - ((GLUI_Tree *)curr_root)->set_current(false); - descendBranch(curr_branch); - } -} - -/****************************** GLUI_TreePanel::next() *********/ - -void GLUI_TreePanel::next() -{ - if (curr_root == NULL) - resetToRoot(this); - - if (curr_branch == NULL && (curr_root->collapsed_node).first_child() != NULL) - curr_branch = (GLUI_Tree *)(curr_root->collapsed_node).first_child(); - - - if (curr_branch != NULL && curr_branch != ((GLUI_Panel *)this)) { /* Descend into branch */ - if (dynamic_cast(curr_root)) - ((GLUI_Tree *)curr_root)->set_current(false); - resetToRoot(curr_branch); - } else if (curr_branch == NULL) { - fb(NULL); /* Backup and move on */ - } -} - -/****************************** GLUI_TreePanel::resetToRoot() *********/ - -/* Resets curr_root and curr branch to TreePanel and lastChild */ -void GLUI_TreePanel::resetToRoot(GLUI_Panel *new_root) -{ - GLUI_Panel *root = this; - if (new_root != NULL) - root = new_root; - curr_root = root; - if (dynamic_cast(curr_root)) - ((GLUI_Tree *)curr_root)->set_current(true); - curr_branch = (GLUI_Tree *)root->first_child(); - - /* since Trees are collapsable, we need to check the collapsed nodes - in case the curr_root is collapsed */ - if (curr_branch == NULL && (root->collapsed_node).first_child() != NULL) { - curr_branch = (GLUI_Tree *)(root->collapsed_node).first_child(); - } - while (curr_branch && dynamic_cast(curr_branch)) { - curr_branch=(GLUI_Tree *)curr_branch->next(); - } -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_window.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_window.cpp deleted file mode 100644 index 8355978..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/glui_window.cpp +++ /dev/null @@ -1,44 +0,0 @@ -/* - - glui_window.cpp - GLUI_Button control class - - GLUI User Interface Toolkit (LGPL) - Copyright (c) 1998 Paul Rademacher - - WWW: http://sourceforge.net/projects/glui/ - Forums: http://sourceforge.net/forum/?group_id=92496 - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -*/ - -#include "glui.h" -#include "glui_internal.h" - -GLUI_Glut_Window::GLUI_Glut_Window() -: GLUI_Node(), - - glut_window_id(0), - glut_keyboard_CB(NULL), - glut_special_CB(NULL), - glut_reshape_CB(NULL), - glut_passive_motion_CB(NULL), - glut_mouse_CB(NULL), - glut_visibility_CB(NULL), - glut_motion_CB(NULL), - glut_display_CB(NULL), - glut_entry_CB(NULL) -{ -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/libglui.a b/src/dependencies/Box2D_v2.3.0/Box2D/glui/libglui.a deleted file mode 100644 index 6cddce6..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Box2D/glui/libglui.a and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/quaternion.cpp b/src/dependencies/Box2D_v2.3.0/Box2D/glui/quaternion.cpp deleted file mode 100644 index 3e80242..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/quaternion.cpp +++ /dev/null @@ -1,243 +0,0 @@ -/*********************************************************************** - - quaternion.cpp - A quaternion class - - ------------------------------------------------------------------- - - GLUI User Interface Toolkit (LGPL) - Copyright (c) 1998 Paul Rademacher - - WWW: http://sourceforge.net/projects/glui/ - Forums: http://sourceforge.net/forum/?group_id=92496 - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -************************************************************************ - - Feb 1998, Paul Rademacher (rademach@cs.unc.edu) - Oct 2003, Nigel Stewart - GLUI Code Cleaning - -************************************************************************/ - -#include "quaternion.h" -#include -#include "glui_internal.h" - -/******************************************* constructors **************/ - -quat::quat() -{ - *this = quat_identity(); -} - -quat::quat(const float x, const float y, const float z, const float w) -{ - v.set( x, y, z ); - s = w; -} - -quat::quat(const vec3 &_v, const float _s) -{ - set( _v, _s ); -} - -quat::quat(const float _s, const vec3 &_v) -{ - set( _v, _s ); -} - -quat::quat(const float *d) -{ - v[0] = d[0]; - v[1] = d[1]; - v[2] = d[2]; - s = d[3]; -} - -quat::quat(const double *d) -{ - v[0] = (float) d[0]; - v[1] = (float) d[1]; - v[2] = (float) d[2]; - s = (float) d[3]; -} - -quat::quat(const quat &q) -{ - v = q.v; - s = q.s; -} - -void quat::set(const vec3 &_v, const float _s) -{ - v = _v; - s = _s; -} - -quat &quat::operator=(const quat &q) -{ - v = q.v; - s = q.s; - return *this; -} - -/******** quat friends ************/ - -quat operator + (const quat &a, const quat &b) -{ - return quat( a.s+b.s, a.v+b.v ); -} - -quat operator - (const quat &a, const quat &b) -{ - return quat( a.s-b.s, a.v-b.v ); -} - -quat operator - (const quat &a ) -{ - return quat( -a.s, -a.v ); -} - -quat operator * ( const quat &a, const quat &b) -{ - return quat( a.s*b.s - a.v*b.v, a.s*b.v + b.s*a.v + a.v^b.v ); -} - -quat operator * ( const quat &a, const float t) -{ - return quat( a.v * t, a.s * t ); -} - -quat operator * ( const float t, const quat &a ) -{ - return quat( a.v * t, a.s * t ); -} - -mat4 quat::to_mat4() const -{ - float xs, ys, zs, wx, wy, wz, xx, xy, xz, yy, yz, zz; - - float t = 2.0f / (v*v + s*s); - - xs = v[VX]*t; ys = v[VY]*t; zs = v[VZ]*t; - wx = s*xs; wy = s*ys; wz = s*zs; - xx = v[VX]*xs; xy = v[VX]*ys; xz = v[VX]*zs; - yy = v[VY]*ys; yz = v[VY]*zs; zz = v[VZ]*zs; - - mat4 matrix( - 1.0f-(yy+zz), xy+wz, xz-wy, 0.0f, - xy-wz, 1.0f-(xx+zz), yz+wx, 0.0f, - xz+wy, yz-wx, 1.0f-(xx+yy), 0.0f, - 0.0f, 0.0f, 0.0f, 1.0f ); - - return matrix; -} - -/************************************************* quat_identity() *****/ -/* Returns quaternion identity element */ - -quat quat_identity() -{ - return quat( vec3( 0.0, 0.0, 0.0 ), 1.0 ); -} - -/************************************************ quat_slerp() ********/ -/* Quaternion spherical interpolation */ - -quat quat_slerp(const quat &from, const quat &to, float t) -{ - quat to1; - float omega, cosom, sinom, scale0, scale1; - - /* calculate cosine */ - cosom = from.v * to.v + from.s + to.s; - - /* Adjust signs (if necessary) */ - if ( cosom < 0.0 ) - { - cosom = -cosom; - to1 = -to; - } - else - { - to1 = to; - } - - /* Calculate coefficients */ - if ((1.0 - cosom) > FUDGE ) - { - /* standard case (slerp) */ - omega = (float) acos( cosom ); - sinom = (float) sin( omega ); - scale0 = (float) sin((1.0 - t) * omega) / sinom; - scale1 = (float) sin(t * omega) / sinom; - } - else - { - /* 'from' and 'to' are very close - just do linear interpolation */ - scale0 = 1.0f - t; - scale1 = t; - } - - return scale0 * from + scale1 * to1; -} - -/********************************************** set_angle() ************/ -/* set rot angle (degrees) */ - -void quat::set_angle(float f) -{ - vec3 axis = get_axis(); - - s = (float) cos( DEG2RAD( f ) / 2.0 ); - - v = axis * (float) sin(DEG2RAD(f) / 2.0); -} - -/********************************************** scale_angle() ************/ -/* scale rot angle (degrees) */ - -void quat::scale_angle(float f) -{ - set_angle( f * get_angle() ); -} - -/********************************************** get_angle() ************/ -/* get rot angle (degrees). Assumes s is between -1 and 1 */ - -float quat::get_angle() const -{ - return (float) RAD2DEG( 2.0 * acos( s ) ); -} - -/********************************************* get_axis() **************/ - -vec3 quat::get_axis() const -{ - float scale = (float) sin( acos( s ) ); - - if ( scale < FUDGE AND scale > -FUDGE ) - return vec3( 0.0, 0.0, 0.0 ); - else - return v / scale; -} - -/******************************************* quat::print() ************/ - -void quat::print(FILE *dest, const char *name) const -{ - fprintf( dest, "%s: v:<%3.2f %3.2f %3.2f> s:%3.2f\n", - name, v[0], v[1], v[2], s ); -} diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/quaternion.h b/src/dependencies/Box2D_v2.3.0/Box2D/glui/quaternion.h deleted file mode 100644 index 8bd4582..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/quaternion.h +++ /dev/null @@ -1,114 +0,0 @@ -/**************************************************************************** - - quaternion.h - A quaternion class - - GLUI User Interface Toolkit (LGPL) - Copyright (c) 1998 Paul Rademacher - - --------------------------------------------------------------------- - - WWW: http://sourceforge.net/projects/glui/ - Forums: http://sourceforge.net/forum/?group_id=92496 - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -*****************************************************************************/ - -#ifndef GLUI_QUATERNION_H -#define GLUI_QUATERNION_H - -#include "algebra3.h" -#include - -/* this line defines a new type: pointer to a function which returns a */ -/* float and takes as argument a float */ -typedef float (*V_FCT_PTR)(float); - -/**************************************************************** - * Quaternion * - ****************************************************************/ - -class quat -{ - /*protected: */ -public: - - vec3 v; /* vector component */ - float s; /* scalar component */ - - /*public: */ - - /* Constructors */ - - quat(); - quat(float x, float y, float z, float w); - quat(const vec3 &v, float s); - quat(float s, const vec3 &v); - quat(const float *d); /* copy from four-element float array */ - quat(const double *f); /* copy from four-element double array */ - quat(const quat &q); /* copy from other quat */ - - /* Assignment operators */ - - quat &operator = (const quat &v); /* assignment of a quat */ - quat &operator += (const quat &v); /* incrementation by a quat */ - quat &operator -= (const quat &v); /* decrementation by a quat */ - quat &operator *= (float d); /* multiplication by a constant */ - quat &operator /= (float d); /* division by a constant */ - - /* special functions */ - - float length() const; /* length of a quat */ - float length2() const; /* squared length of a quat */ - quat &normalize(); /* normalize a quat */ - quat &apply(V_FCT_PTR fct); /* apply a func. to each component */ - vec3 xform(const vec3 &v ); /* q*v*q-1 */ - mat4 to_mat4() const; - void set_angle(float f); /* set rot angle (degrees) */ - void scale_angle(float f); /* scale rot angle (degrees) */ - float get_angle() const; /* set rot angle (degrees) */ - vec3 get_axis() const; /* get axis */ - - void print( FILE *file, const char *name ) const; /* print to a file */ - - float &operator [] (int i); /* indexing */ - const float &operator [] (int i) const; /* indexing */ - - void set(float x, float y, float z); /* set quat */ - void set(const vec3 &v, float s); /* set quat */ - - /* friends */ - - friend quat operator - (const quat &v); /* -q1 */ - friend quat operator + (const quat &a, const quat &b); /* q1 + q2 */ - friend quat operator - (const quat &a, const quat &b); /* q1 - q2 */ - friend quat operator * (const quat &a, float d); /* q1 * 3.0 */ - friend quat operator * (float d, const quat &a); /* 3.0 * q1 */ - friend quat operator * (const quat &a, const quat &b); /* q1 * q2 */ - friend quat operator / (const quat &a, float d); /* q1 / 3.0 */ - friend int operator == (const quat &a, const quat &b); /* q1 == q2 ? */ - friend int operator != (const quat &a, const quat &b); /* q1 != q2 ? */ - friend void swap(quat &a, quat &b); /* swap q1 &q2 */ - /*friend quat min(const quat &a, const quat &b); -- min(q1, q2) */ - /*friend quat max(const quat &a, const quat &b); -- max(q1, q2) */ - friend quat prod(const quat &a, const quat &b); /* term by term mult*/ -}; - -/* Utility functions */ - -quat quat_identity(); /* Returns quaternion identity element */ -quat quat_slerp(const quat &from, const quat &to, float t); - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/glui/readme.txt b/src/dependencies/Box2D_v2.3.0/Box2D/glui/readme.txt deleted file mode 100644 index 43ba3ed..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/glui/readme.txt +++ /dev/null @@ -1,228 +0,0 @@ -Welcome to the GLUI User Interface Library, v2.3! -March 22, 2005 -------------------------------------------------- - -This distribution contains the latest community-maintained fork of the -GLUI Library. It is based on the GLUI v2.1 beta version from Paul -Rademacher (http://www.cs.unc.edu/~rademach/glui/) plus the -compatibility changes made by Nigel Stewart in his "GLUI v2.2" -(http://www.nigels.com/glt/glui) In accordance with the LGPL under -which the library is released (according to Paul's web page at least), -these changes are available to everyone in the community. - -WARNING: This version (2.3) introduces some incompatible changes with -previous versions!! - -CHANGES: - ----------------------------------- -- GLUI_String is now a std::string - This is the main source of most incopatibilities, but I felt it was - a necessary change, because the previous usage of a fixed-sized - buffer was just too unsafe. I myself was bitten a few times passing - a char* buffer of insufficient size into GLUI as a live variable. - It is still possible to use a char buffer, but it is not recommended. - - If you used GLUI_String before as a live var type, the easiest way - to get your code compiling again is to change those to "char - buf[300]". The better way, though, is to update your code to treat - it as a std::string. - - For instance, if you used to pass mystr to functions that take - 'const char*', now use mystr.c_str() method, instead. - If you used strcpy(mystr, b) to set the value, now just do mystr=b. - If you used sprintf(mystr,...) to set the value, now do - glui_format_string(mystr,...). - If you used to clear the string with mystr[0]='\0', now just clear - it with mystr="". - ----------------------------------- -- Enhanced GLUI_EditText - Control keys can be used for navigation and control. The bindings - are bash-like: Ctrl-B for previous char, Ctrl-F for forward char, etc. - bindings. Also control keys that aren't bound to commands are - simply ignored, whereas before they would be inserted as invisible - characters. - ----------------------------------- -- Added GLUI_CommandLine class - This is a GLUI_EditText with a history mechanism. - ----------------------------------- -- New, more object oriented construction API. - Now instead of calling - - glui->add_button_to_panel( panel, "my button", myid, mycallback ); - - you should just call the button constructor: - - new GLUI_Button( panel, "my button", myid, mycallback ); - - And similarly to add it to a GLUI instead of a panel, rather than: - - glui->add_button( glui, "my button", myid, mycallback ); - - just call the constructor with the GLUI as the first argument: - - new GLUI_Button( glui, "my button", myid, mycallback ); - - The old scheme is now deprecated, but still works. The benefit of - this new scheme is that now the GLUI class doesn't have to know - about all the different types of GLUI_Controls that exist. - Previously GLUI had to both know about all the controls, and know - how to initialize them. Now the responsibility for initialization - belongs to the GLUI_Control subclasses themselves, where it - belongs. Additionally it means that you can create your own - GLUI_Control subclasses which will be on equal footing with the - built-in controls, whereas before any user-created controls would - always be "second-class citizens" since they would have to be - constructed differently from the built-ins. - - ----------------------------------- -- Removed need for type-declaring arguments when argment type suffices. - This effects GLUI_Spinner and GLUI_EditText (and GLUI_CommandLine?). - - For example, instead of calling - - new GLUI_Spinner( glui, "myspin", GLUI_SPINNER_INT, &live_int_var ); - - you can just omit the GLUI_SPINNER_INT part, because the type of the - live_int_var tells the compiler which type you want. - - new GLUI_Spinner( glui, "myspin", &live_int_var ); - - If you're not using a live, var, you can still use the - GLUI_SPINNER_INT type argument. See glui.h for all the new - constructor signatures. Note this only works with the new - construction API, not with the old "add_blah_to_panel" style of - API. - ----------------------------------- -- GLUI_Rotation uses your matrix live-variable now. - GLUI used to ignore the matrix in your live variable. This version - doesn't ignore it, so you'll need to set it to the identity matrix - yourself if that's what you want it to start as. There could - probably be some improvements to this API, though. - ----------------------------------- -- Improvements to 'const' usage. - Most char*'s in GLUI functions used to be non-const even when the - functions did not modify the string. I changed everywhere - appropriate to use const char* instead. - ----------------------------------- -- Updated license info in the headers - Paul's web page says that GLUI is LGPL, but that wasn't declared in - the code itself. I've modified all the headers with the standard - LGPL notice. - ----------------------------------- -- Updated examples for the API changes - ----------------------------------- -- Created project files for Visual Studio .NET (MSVC7.1) - - -That's about it. Enjoy! - - -If you find yourself with too much time on your hands, the things I -think would be most useful for future improvements to GLUI would be: - -1. The GLUI_TextBox and GLUI_Tree definitely need some work, still. -2. Clipboard integration under Windows/X-Win. I have some code that - works on Win32 that I once integrated with GLUI, but I lost that - version somewhere. I still have the Win32 clipboard code, though - if anyone wants to work on integrating it. I have some X-Win - clipboard code, too, but I never got it working quite right. -3. Remove the dependency on GLUT, making the connection with window - system APIs into a more plug-in/adapter modular design. - So e.g. if you want to use GLUT, you'd link with the GLUI lib and a - GLUI_GLUT lib, and call one extra GLUI_glut_init() function or - something. - - -Definitly consider submitting a patch if you've made some nice improvements -to GLUI. Hopefully being an LGPL sourceforge project will attract some new -interest to the GLUI project. - -Bill Baxter -baxter -at -cs unc edu - -================================================= -JOHN KEW'S ADDITIONS (March 2005) -================================================= - -Thanks to John Kew of Natural Solutions Inc., -there are some new widgets. These are demonstrated in example6.cpp. - -The new widgets are: - -* GLUI_Scrollbar - A scrollbar slider widget -* GLUI_TextBox - A multi-line text widget -* GLUI_List - A static choice list -* GLUI_FileBrowser - A simple filebrowser based on GLUI_List -* GLUI_Tree - Hierarchical tree widget -* GLUI_TreePanel - Manager for the tree widget - -And one other change: - -* GLUI_Rollout has optional embossed border - -================================================= -PAUL'S ORIGINAL GLUI 2.0/2.1 README -================================================= - -Welcome to the GLUI User Interface Library, v2.0 beta! -------------------------------------------------- - -This distribution contains the full GLUI sources, as well as 5 example -programs. You'll find the full manual under "glui_manual.pdf". The -GLUI web page is at - - http://www.cs.unc.edu/~rademach/glui - - - ---------- Windows ---------- - -The directory 'msvc' contains a Visual C++ workspace entitled -'glui.dsw'. To recompile the library and examples, open this -workspace and run the menu command "Build:Batch Build:Build". The 3 -executables will be in the 'bin' directory, and the library in the -'lib' directory. - -To create a new Windows executable using GLUI, create a "Win32 Console -Application" in VC++, add the GLUI library (in 'msvc/lib/glui32.lib'), -and add the OpenGL libs: - - glui32.lib glut32.lib glu32.lib opengl32.lib (Microsoft OpenGL) - -Include the file "glui.h" in any file that uses the GLUI library. - - - ---------- Unix ---------- - -An SGI/HP makefile is found in the file 'makefile' (certain lines may need -to be commented/uncommented). - -To include GLUI in your own apps, add the glui library to your -makefile (before the glut library 'libglut.a'), and include "glui.h" -in your sources. - - - ----------------------------------------------------------------------- - -Please let me know what you think, what you'd like to change or add, -and especially what bugs you encounter. Also, please send me your -e-mail so I can add you to a mailing list for updates. - -Good luck, and thanks for trying this out! - -Paul Rademacher -rademach -at -cs unc edu \ No newline at end of file diff --git a/src/dependencies/Box2D_v2.3.0/Box2D/premake4.lua b/src/dependencies/Box2D_v2.3.0/Box2D/premake4.lua deleted file mode 100644 index 2bedb71..0000000 --- a/src/dependencies/Box2D_v2.3.0/Box2D/premake4.lua +++ /dev/null @@ -1,67 +0,0 @@ --- Box2D premake script. --- http://industriousone.com/premake - -local action = _ACTION or "" - -solution "Box2D" - location ( "Build/" .. action ) - configurations { "Debug", "Release" } - - configuration "vs*" - defines { "_CRT_SECURE_NO_WARNINGS" } - - configuration "Debug" - targetdir ( "Build/" .. action .. "/bin/Debug" ) - flags { "Symbols" } - - configuration "Release" - targetdir ( "Build/" .. action .. "/bin/Release" ) - defines { "NDEBUG" } - flags { "Optimize" } - - project "Box2D" - kind "StaticLib" - language "C++" - files { "Box2D/**.h", "Box2D/**.cpp" } - vpaths { [""] = "Box2D" } - includedirs { "." } - - if os.get == "windows" then - project "FreeGLUT" - kind "StaticLib" - language "C" - files { "freeglut/*.h", "freeglut/*.c" } - vpaths { ["Headers"] = "**.h", ["Sources"] = "**.c" } - end - - project "GLUI" - kind "StaticLib" - language "C++" - files { "glui/*.h", "glui/*.cpp" } - vpaths { ["Headers"] = "**.h", ["Sources"] = "**.cpp" } - includedirs { "." } - configuration { "windows" } - buildoptions { "/W1" } - - project "HelloWorld" - kind "ConsoleApp" - language "C++" - files { "HelloWorld/HelloWorld.cpp" } - vpaths { [""] = "HelloWorld" } - includedirs { "." } - links { "Box2D" } - - project "Testbed" - kind "ConsoleApp" - language "C++" - files { "Testbed/**.h", "Testbed/**.cpp" } - vpaths { [""] = "Testbed" } - includedirs { "." } - links { "Box2D", "GLUI" } - configuration { "windows" } - links { "FreeGLUT", "glu32", "opengl32", "winmm" } - configuration { "macosx" } - linkoptions { "-framework OpenGL -framework GLUT" } - configuration { "not windows", "not macosx" } - links { "X11", "GL", "GLU", "glut" } - diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/Controllers/b2BuoyancyController.cpp b/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/Controllers/b2BuoyancyController.cpp deleted file mode 100644 index e405407..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/Controllers/b2BuoyancyController.cpp +++ /dev/null @@ -1,119 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.gphysics.com -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include "b2BuoyancyController.h" -#include "../b2Fixture.h" - -b2BuoyancyController::b2BuoyancyController(const b2BuoyancyControllerDef* def) : b2Controller(def) -{ - normal = def->normal; - offset = def->offset; - density = def->density; - velocity = def->velocity; - linearDrag = def->linearDrag; - angularDrag = def->angularDrag; - useDensity = def->useDensity; - useWorldGravity = def->useWorldGravity; - gravity = def->gravity; -} - -void b2BuoyancyController::Step(const b2TimeStep& step) -{ - B2_NOT_USED(step); - if(!m_bodyList) - return; - if(useWorldGravity) - { - gravity = m_world->GetGravity(); - } - for(b2ControllerEdge *i=m_bodyList;i;i=i->nextBody) - { - b2Body* body = i->body; - if(body->IsSleeping()) - { - //Buoyancy force is just a function of position, - //so unlike most forces, it is safe to ignore sleeping bodes - continue; - } - b2Vec2 areac(0,0); - b2Vec2 massc(0,0); - float32 area = 0; - float32 mass = 0; - for(b2Fixture* shape=body->GetFixtureList();shape;shape=shape->GetNext()) - { - b2Vec2 sc(0,0); - float32 sarea = shape->ComputeSubmergedArea(normal, offset, &sc); - area += sarea; - areac.x += sarea * sc.x; - areac.y += sarea * sc.y; - float shapeDensity = 0; - if(useDensity) - { - //TODO: Expose density publicly - shapeDensity=shape->GetDensity(); - } - else - { - shapeDensity = 1; - } - mass += sarea*shapeDensity; - massc.x += sarea * sc.x * shapeDensity; - massc.y += sarea * sc.y * shapeDensity; - } - areac.x/=area; - areac.y/=area; - b2Vec2 localCentroid = b2MulT(body->GetXForm(),areac); - massc.x/=mass; - massc.y/=mass; - if(areaApplyForce(buoyancyForce,massc); - //Linear drag - b2Vec2 dragForce = body->GetLinearVelocityFromWorldPoint(areac) - velocity; - dragForce *= -linearDrag*area; - body->ApplyForce(dragForce,areac); - //Angular drag - //TODO: Something that makes more physical sense? - body->ApplyTorque(-body->GetInertia()/body->GetMass()*area*body->GetAngularVelocity()*angularDrag); - - } -} - -void b2BuoyancyController::Draw(b2DebugDraw *debugDraw) -{ - float32 r = 1000; - b2Vec2 p1 = offset * normal + b2Cross(normal, r); - b2Vec2 p2 = offset * normal - b2Cross(normal, r); - - b2Color color(0,0,0.8f); - - debugDraw->DrawSegment(p1, p2, color); -} - -void b2BuoyancyController::Destroy(b2BlockAllocator* allocator) -{ - allocator->Free(this, sizeof(b2BuoyancyController)); -} - -b2BuoyancyController* b2BuoyancyControllerDef::Create(b2BlockAllocator* allocator) const -{ - void* mem = allocator->Allocate(sizeof(b2BuoyancyController)); - return new (mem) b2BuoyancyController(this); -} diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/Controllers/b2BuoyancyController.h b/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/Controllers/b2BuoyancyController.h deleted file mode 100644 index 0392e2d..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/Controllers/b2BuoyancyController.h +++ /dev/null @@ -1,102 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.gphysics.com -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_BUOYANCYCONTROLLER_H -#define B2_BUOYANCYCONTROLLER_H - -#include "b2Controller.h" - -class b2BuoyancyControllerDef; - -/// Calculates buoyancy forces for fluids in the form of a half plane. -class b2BuoyancyController : public b2Controller{ -public: - /// The outer surface normal - b2Vec2 normal; - /// The height of the fluid surface along the normal - float32 offset; - /// The fluid density - float32 density; - /// Fluid velocity, for drag calculations - b2Vec2 velocity; - /// Linear drag co-efficient - float32 linearDrag; - /// Linear drag co-efficient - float32 angularDrag; - /// If false, bodies are assumed to be uniformly dense, otherwise use the shapes densities - bool useDensity; //False by default to prevent a gotcha - /// If true, gravity is taken from the world instead of the gravity parameter. - bool useWorldGravity; - /// Gravity vector, if the world's gravity is not used - b2Vec2 gravity; - - /// @see b2Controller::Step - void Step(const b2TimeStep& step); - - /// @see b2Controller::Draw - void Draw(b2DebugDraw *debugDraw); - -protected: - void Destroy(b2BlockAllocator* allocator); - -private: - friend class b2BuoyancyControllerDef; - b2BuoyancyController(const b2BuoyancyControllerDef* def); -}; - -/// This class is used to build buoyancy controllers -class b2BuoyancyControllerDef : public b2ControllerDef -{ -public: - /// The outer surface normal - b2Vec2 normal; - /// The height of the fluid surface along the normal - float32 offset; - /// The fluid density - float32 density; - /// Fluid velocity, for drag calculations - b2Vec2 velocity; - /// Linear drag co-efficient - float32 linearDrag; - /// Linear drag co-efficient - float32 angularDrag; - /// If false, bodies are assumed to be uniformly dense, otherwise use the shapes densities - bool useDensity; //False by default to prevent a gotcha - /// If true, gravity is taken from the world instead of the gravity parameter. - bool useWorldGravity; - /// Gravity vector, if the world's gravity is not used - b2Vec2 gravity; - - b2BuoyancyControllerDef(): - normal(0,1), - offset(0), - density(0), - velocity(0,0), - linearDrag(0), - angularDrag(0), - useDensity(false), - useWorldGravity(true), - gravity(0,0) - { - } - -private: - b2BuoyancyController* Create(b2BlockAllocator* allocator) const; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/Controllers/b2ConstantAccelController.cpp b/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/Controllers/b2ConstantAccelController.cpp deleted file mode 100644 index fab7204..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/Controllers/b2ConstantAccelController.cpp +++ /dev/null @@ -1,46 +0,0 @@ -/* -* Copyright (c) 2006-2007 Erin Catto http://www.gphysics.com -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include "b2ConstantAccelController.h" - -b2ConstantAccelController::b2ConstantAccelController(const b2ConstantAccelControllerDef* def) : b2Controller(def) -{ - A = def->A; -} - -void b2ConstantAccelController::Step(const b2TimeStep& step) -{ - for(b2ControllerEdge *i=m_bodyList;i;i=i->nextBody){ - b2Body* body = i->body; - if(body->IsSleeping()) - continue; - body->SetLinearVelocity(body->GetLinearVelocity()+step.dt*A); - } -} - -void b2ConstantAccelController::Destroy(b2BlockAllocator* allocator) -{ - allocator->Free(this, sizeof(b2ConstantAccelController)); -} - - -b2ConstantAccelController* b2ConstantAccelControllerDef::Create(b2BlockAllocator* allocator) const -{ - void* mem = allocator->Allocate(sizeof(b2ConstantAccelController)); - return new (mem) b2ConstantAccelController(this); -} diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/Controllers/b2ConstantAccelController.h b/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/Controllers/b2ConstantAccelController.h deleted file mode 100644 index 2318eff..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/Controllers/b2ConstantAccelController.h +++ /dev/null @@ -1,54 +0,0 @@ -/* -* Copyright (c) 2006-2007 Erin Catto http://www.gphysics.com -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_CONSTANTACCELCONTROLLER_H -#define B2_CONSTANTACCELCONTROLLER_H - -#include "b2Controller.h" - -class b2ConstantAccelControllerDef; - -/// Applies a force every frame -class b2ConstantAccelController : public b2Controller{ -public: - /// The force to apply - b2Vec2 A; - - /// @see b2Controller::Step - void Step(const b2TimeStep& step); - -protected: - void Destroy(b2BlockAllocator* allocator); - -private: - friend class b2ConstantAccelControllerDef; - b2ConstantAccelController(const b2ConstantAccelControllerDef* def); - -}; - -/// This class is used to build constant acceleration controllers -class b2ConstantAccelControllerDef : public b2ControllerDef -{ -public: - /// The force to apply - b2Vec2 A; -private: - b2ConstantAccelController* Create(b2BlockAllocator* allocator) const; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/Controllers/b2ConstantForceController.cpp b/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/Controllers/b2ConstantForceController.cpp deleted file mode 100644 index 1abde30..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/Controllers/b2ConstantForceController.cpp +++ /dev/null @@ -1,47 +0,0 @@ -/* -* Copyright (c) 2006-2007 Erin Catto http://www.gphysics.com -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include "b2ConstantForceController.h" - -b2ConstantForceController::b2ConstantForceController(const b2ConstantForceControllerDef* def) : b2Controller(def) -{ - F = def->F; -} - -void b2ConstantForceController::Step(const b2TimeStep& step) -{ - B2_NOT_USED(step); - for(b2ControllerEdge *i=m_bodyList;i;i=i->nextBody){ - b2Body* body = i->body; - if(body->IsSleeping()) - continue; - body->ApplyForce(F,body->GetWorldCenter()); - } -} - -void b2ConstantForceController::Destroy(b2BlockAllocator* allocator) -{ - allocator->Free(this, sizeof(b2ConstantForceController)); -} - - -b2ConstantForceController* b2ConstantForceControllerDef::Create(b2BlockAllocator* allocator) const -{ - void* mem = allocator->Allocate(sizeof(b2ConstantForceController)); - return new (mem) b2ConstantForceController(this); -} diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/Controllers/b2ConstantForceController.h b/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/Controllers/b2ConstantForceController.h deleted file mode 100644 index b21e498..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/Controllers/b2ConstantForceController.h +++ /dev/null @@ -1,54 +0,0 @@ -/* -* Copyright (c) 2006-2007 Erin Catto http://www.gphysics.com -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_CONSTANTFORCECONTROLLER_H -#define B2_CONSTANTFORCECONTROLLER_H - -#include "b2Controller.h" - -class b2ConstantForceControllerDef; - -/// Applies a force every frame -class b2ConstantForceController : public b2Controller -{ -public: - /// The force to apply - b2Vec2 F; - - /// @see b2Controller::Step - void Step(const b2TimeStep& step); - -protected: - void Destroy(b2BlockAllocator* allocator); - -private: - friend class b2ConstantForceControllerDef; - b2ConstantForceController(const b2ConstantForceControllerDef* def); -}; - -/// This class is used to build constant force controllers -class b2ConstantForceControllerDef : public b2ControllerDef -{ -public: - /// The force to apply - b2Vec2 F; -private: - b2ConstantForceController* Create(b2BlockAllocator* allocator) const; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/Controllers/b2Controller.cpp b/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/Controllers/b2Controller.cpp deleted file mode 100644 index 87169bd..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/Controllers/b2Controller.cpp +++ /dev/null @@ -1,110 +0,0 @@ -/* -* Copyright (c) 2006-2007 Erin Catto http://www.gphysics.com -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include "b2Controller.h" -#include "../../Common/b2BlockAllocator.h" - - -b2Controller::~b2Controller() -{ - //Remove attached bodies - Clear(); -} - -void b2Controller::AddBody(b2Body* body) -{ - void* mem = m_world->m_blockAllocator.Allocate(sizeof(b2ControllerEdge)); - b2ControllerEdge* edge = new (mem) b2ControllerEdge; - - edge->body = body; - edge->controller = this; - - //Add edge to controller list - edge->nextBody = m_bodyList; - edge->prevBody = NULL; - if(m_bodyList) - m_bodyList->prevBody = edge; - m_bodyList = edge; - ++m_bodyCount; - - //Add edge to body list - edge->nextController = body->m_controllerList; - edge->prevController = NULL; - if(body->m_controllerList) - body->m_controllerList->prevController = edge; - body->m_controllerList = edge; -} - -void b2Controller::RemoveBody(b2Body* body) -{ - //Assert that the controller is not empty - b2Assert(m_bodyCount>0); - - //Find the corresponding edge - b2ControllerEdge* edge = m_bodyList; - while(edge && edge->body!=body) - edge = edge->nextBody; - - //Assert that we are removing a body that is currently attached to the controller - b2Assert(edge!=NULL); - - //Remove edge from controller list - if(edge->prevBody) - edge->prevBody->nextBody = edge->nextBody; - if(edge->nextBody) - edge->nextBody->prevBody = edge->prevBody; - if(edge == m_bodyList) - m_bodyList = edge->nextBody; - --m_bodyCount; - - //Remove edge from body list - if(edge->prevController) - edge->prevController->nextController = edge->nextController; - if(edge->nextController) - edge->nextController->prevController = edge->prevController; - if(edge == body->m_controllerList) - body->m_controllerList = edge->nextController; - - //Free the edge - m_world->m_blockAllocator.Free(edge, sizeof(b2ControllerEdge)); -} - -void b2Controller::Clear(){ - - while(m_bodyList) - { - b2ControllerEdge* edge = m_bodyList; - - //Remove edge from controller list - m_bodyList = edge->nextBody; - - //Remove edge from body list - if(edge->prevController) - edge->prevController->nextController = edge->nextController; - if(edge->nextController) - edge->nextController->prevController = edge->prevController; - if(edge == edge->body->m_controllerList) - edge->body->m_controllerList = edge->nextController; - - //Free the edge - m_world->m_blockAllocator.Free(edge, sizeof(b2ControllerEdge)); - } - - m_bodyCount = 0; -} - diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/Controllers/b2Controller.h b/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/Controllers/b2Controller.h deleted file mode 100644 index 91b36a0..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/Controllers/b2Controller.h +++ /dev/null @@ -1,151 +0,0 @@ -/* -* Copyright (c) 2006-2007 Erin Catto http://www.gphysics.com -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_CONTROLLER_H -#define B2_CONTROLLER_H - -#include "../../Dynamics/b2World.h" -#include "../../Dynamics/b2Body.h" - -class b2Body; -class b2World; - -class b2Controller; - -/// A controller edge is used to connect bodies and controllers together -/// in a bipartite graph. -struct b2ControllerEdge -{ - b2Controller* controller; ///< provides quick access to other end of this edge. - b2Body* body; ///< the body - b2ControllerEdge* prevBody; ///< the previous controller edge in the controllers's joint list - b2ControllerEdge* nextBody; ///< the next controller edge in the controllers's joint list - b2ControllerEdge* prevController; ///< the previous controller edge in the body's joint list - b2ControllerEdge* nextController; ///< the next controller edge in the body's joint list -}; - -class b2ControllerDef; - -/// Base class for controllers. Controllers are a convience for encapsulating common -/// per-step functionality. -class b2Controller -{ -public: - virtual ~b2Controller(); - - /// Controllers override this to implement per-step functionality. - virtual void Step(const b2TimeStep& step) = 0; - - /// Controllers override this to provide debug drawing. - virtual void Draw(b2DebugDraw *debugDraw) {B2_NOT_USED(debugDraw);}; - - /// Adds a body to the controller list. - void AddBody(b2Body* body); - - /// Removes a body from the controller list. - void RemoveBody(b2Body* body); - - /// Removes all bodies from the controller list. - void Clear(); - - /// Get the next controller in the world's body list. - b2Controller* GetNext(); - const b2Controller* GetNext() const; - - /// Get the parent world of this body. - b2World* GetWorld(); - const b2World* GetWorld() const; - - /// Get the attached body list - b2ControllerEdge* GetBodyList(); - const b2ControllerEdge* GetBodyList() const; - - -protected: - friend class b2World; - - b2World* m_world; - - b2ControllerEdge* m_bodyList; - int32 m_bodyCount; - - b2Controller(const b2ControllerDef* def): - m_world(NULL), - m_bodyList(NULL), - m_bodyCount(0), - m_prev(NULL), - m_next(NULL) - - { - B2_NOT_USED(def); - } - virtual void Destroy(b2BlockAllocator* allocator) = 0; - -private: - b2Controller* m_prev; - b2Controller* m_next; - - static void Destroy(b2Controller* controller, b2BlockAllocator* allocator); -}; - -class b2ControllerDef -{ -public: - virtual ~b2ControllerDef() {}; - -private: - friend class b2World; - virtual b2Controller* Create(b2BlockAllocator* allocator) const = 0; -}; - -inline b2Controller* b2Controller::GetNext() -{ - return m_next; -} - -inline const b2Controller* b2Controller::GetNext() const -{ - return m_next; -} - -inline b2World* b2Controller::GetWorld() -{ - return m_world; -} - -inline const b2World* b2Controller::GetWorld() const -{ - return m_world; -} - -inline b2ControllerEdge* b2Controller::GetBodyList() -{ - return m_bodyList; -} - -inline const b2ControllerEdge* b2Controller::GetBodyList() const -{ - return m_bodyList; -} - -inline void b2Controller::Destroy(b2Controller* controller, b2BlockAllocator* allocator) -{ - controller->Destroy(allocator); -} - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/Controllers/b2GravityController.cpp b/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/Controllers/b2GravityController.cpp deleted file mode 100644 index 98ba40b..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/Controllers/b2GravityController.cpp +++ /dev/null @@ -1,70 +0,0 @@ -/* -* Copyright (c) 2006-2007 Erin Catto http://www.gphysics.com -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include "b2GravityController.h" - -b2GravityController::b2GravityController(const b2GravityControllerDef* def) : b2Controller(def) -{ - G = def->G; - invSqr = def->invSqr; -} - -void b2GravityController::Step(const b2TimeStep& step) -{ - B2_NOT_USED(step); - if(invSqr){ - for(b2ControllerEdge *i=m_bodyList;i;i=i->nextBody){ - b2Body* body1 = i->body; - for(b2ControllerEdge *j=m_bodyList;j!=i;j=j->nextBody){ - b2Body* body2 = j->body; - b2Vec2 d = body2->GetWorldCenter() - body1->GetWorldCenter(); - float32 r2 = d.LengthSquared(); - if(r2 < B2_FLT_EPSILON) - continue; - b2Vec2 f = G / r2 / sqrt(r2) * body1->GetMass() * body2->GetMass() * d; - body1->ApplyForce(f , body1->GetWorldCenter()); - body2->ApplyForce(-1.0f*f, body2->GetWorldCenter()); - } - } - }else{ - for(b2ControllerEdge *i=m_bodyList;i;i=i->nextBody){ - b2Body* body1 = i->body; - for(b2ControllerEdge *j=m_bodyList;j!=i;j=j->nextBody){ - b2Body* body2 = j->body; - b2Vec2 d = body2->GetWorldCenter() - body1->GetWorldCenter(); - float32 r2 = d.LengthSquared(); - if(r2 < B2_FLT_EPSILON) - continue; - b2Vec2 f = G / r2 * body1->GetMass() * body2->GetMass() * d; - body1->ApplyForce(f , body1->GetWorldCenter()); - body2->ApplyForce(-1.0f*f, body2->GetWorldCenter()); - } - } - } -} - -void b2GravityController::Destroy(b2BlockAllocator* allocator) -{ - allocator->Free(this, sizeof(b2GravityController)); -} - -b2GravityController* b2GravityControllerDef::Create(b2BlockAllocator* allocator) const -{ - void* mem = allocator->Allocate(sizeof(b2GravityController)); - return new (mem) b2GravityController(this); -} diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/Controllers/b2GravityController.h b/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/Controllers/b2GravityController.h deleted file mode 100644 index 2b59f98..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/Controllers/b2GravityController.h +++ /dev/null @@ -1,59 +0,0 @@ -/* -* Copyright (c) 2006-2007 Erin Catto http://www.gphysics.com -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_GRAVITYCONTROLLER_H -#define B2_GRAVITYCONTROLLER_H - -#include "b2Controller.h" - -class b2GravityControllerDef; - -/// Applies simplified gravity between every pair of bodies -class b2GravityController : public b2Controller{ -public: - /// Specifies the strength of the gravitiation force - float32 G; - /// If true, gravity is proportional to r^-2, otherwise r^-1 - bool invSqr; - - /// @see b2Controller::Step - void Step(const b2TimeStep& step); - -protected: - void Destroy(b2BlockAllocator* allocator); - -private: - friend class b2GravityControllerDef; - b2GravityController(const b2GravityControllerDef* def); - - -}; - -/// This class is used to build gravity controllers -class b2GravityControllerDef : public b2ControllerDef -{ -public: - /// Specifies the strength of the gravitiation force - float32 G; - /// If true, gravity is proportional to r^-2, otherwise r^-1 - bool invSqr; -private: - b2GravityController* Create(b2BlockAllocator* allocator) const; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/Controllers/b2TensorDampingController.cpp b/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/Controllers/b2TensorDampingController.cpp deleted file mode 100644 index 25a16b9..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/Controllers/b2TensorDampingController.cpp +++ /dev/null @@ -1,72 +0,0 @@ -/* -* Copyright (c) 2006-2007 Erin Catto http://www.gphysics.com -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include "b2TensorDampingController.h" - -b2TensorDampingController::b2TensorDampingController(const b2TensorDampingControllerDef* def) : b2Controller(def) -{ - T = def->T; - maxTimestep = def->maxTimestep; -} - -void b2TensorDampingController::Step(const b2TimeStep& step) -{ - float32 timestep = step.dt; - if(timestep<=B2_FLT_EPSILON) - return; - if(timestep>maxTimestep && maxTimestep>0) - timestep = maxTimestep; - for(b2ControllerEdge *i=m_bodyList;i;i=i->nextBody){ - b2Body* body = i->body; - if(body->IsSleeping()) - continue; - b2Vec2 damping = body->GetWorldVector( - b2Mul(T, - body->GetLocalVector( - body->GetLinearVelocity() - ) - ) - ); - body->SetLinearVelocity(body->GetLinearVelocity() + timestep * damping); - } -} - -void b2TensorDampingControllerDef::SetAxisAligned(float32 xDamping, float32 yDamping) -{ - T.col1.x = -xDamping; - T.col1.y = 0; - T.col2.x = 0; - T.col2.y = -yDamping; - if(xDamping>0 || yDamping>0){ - maxTimestep = 1/b2Max(xDamping,yDamping); - }else{ - maxTimestep = 0; - } -} - -void b2TensorDampingController::Destroy(b2BlockAllocator* allocator) -{ - allocator->Free(this, sizeof(b2TensorDampingController)); -} - - -b2TensorDampingController* b2TensorDampingControllerDef::Create(b2BlockAllocator* allocator) const -{ - void* mem = allocator->Allocate(sizeof(b2TensorDampingController)); - return new (mem) b2TensorDampingController(this); -} diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/Controllers/b2TensorDampingController.h b/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/Controllers/b2TensorDampingController.h deleted file mode 100644 index 8ed0c99..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/Controllers/b2TensorDampingController.h +++ /dev/null @@ -1,69 +0,0 @@ -/* -* Copyright (c) 2006-2007 Erin Catto http://www.gphysics.com -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef B2_TENSORDAMPINGCONTROLLER_H -#define B2_TENSORDAMPINGCONTROLLER_H - -#include "b2Controller.h" - -class b2TensorDampingControllerDef; - -/// Applies top down linear damping to the controlled bodies -/// The damping is calculated by multiplying velocity by a matrix in local co-ordinates. -class b2TensorDampingController : public b2Controller{ -public: - /// Tensor to use in damping model - b2Mat22 T; - /*Some examples (matrixes in format (row1; row2) ) - (-a 0;0 -a) Standard isotropic damping with strength a - (0 a;-a 0) Electron in fixed field - a force at right angles to velocity with proportional magnitude - (-a 0;0 -b) Differing x and y damping. Useful e.g. for top-down wheels. - */ - //By the way, tensor in this case just means matrix, don't let the terminology get you down. - - /// Set this to a positive number to clamp the maximum amount of damping done. - float32 maxTimestep; - // Typically one wants maxTimestep to be 1/(max eigenvalue of T), so that damping will never cause something to reverse direction - - /// @see b2Controller::Step - void Step(const b2TimeStep& step); - -protected: - void Destroy(b2BlockAllocator* allocator); - -private: - friend class b2TensorDampingControllerDef; - b2TensorDampingController(const b2TensorDampingControllerDef* def); - -}; - -/// This class is used to build tensor damping controllers -class b2TensorDampingControllerDef : public b2ControllerDef -{ -public: - /// Tensor to use in damping model - b2Mat22 T; - /// Set this to a positive number to clamp the maximum amount of damping done. - float32 maxTimestep; - /// Sets damping independantly along the x and y axes - void SetAxisAligned(float32 xDamping,float32 yDamping); -private: - b2TensorDampingController* Create(b2BlockAllocator* allocator) const; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/FixedPoint/Fixed.h b/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/FixedPoint/Fixed.h deleted file mode 100644 index 4ddf08b..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/FixedPoint/Fixed.h +++ /dev/null @@ -1,477 +0,0 @@ -/* -Copyright (c) 2006 Henry Strickland & Ryan Seto - 2007-2008 Tobias Weyand (modifications and extensions) - -Permission is hereby granted, free of charge, to any person obtaining a -copy of this software and associated documentation files (the "Software"), -to deal in the Software without restriction, including without limitation -the rights to use, copy, modify, merge, publish, distribute, sublicense, -and/or sell copies of the Software, and to permit persons to whom the -Software is furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included -in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR -OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -OTHER DEALINGS IN THE SOFTWARE. - - (* http://www.opensource.org/licenses/mit-license.php *) -*/ - -#ifndef _FIXED_H_ -#define _FIXED_H_ - -#include - -#ifdef TARGET_IS_NDS - -#include "nds.h" - -#endif - -#define FIXED_BP 16 -#define FIXED_MAX ((1<<(32-FIXED_BP-1))-1) -#define FIXED_MIN (-(1<<(32-FIXED_BP-1))) -#define FIXED_EPSILON (Fixed(0.00007f)) - -#define G_1_DIV_PI 20861 - -class Fixed { - - private: - - int g; // the guts - - const static int BP= FIXED_BP; // how many low bits are right of Binary Point - const static int BP2= BP*2; // how many low bits are right of Binary Point - const static int BPhalf= BP/2; // how many low bits are right of Binary Point - - double STEP(); // smallest step we can represent - - // for private construction via guts - enum FixedRaw { RAW }; - Fixed(FixedRaw, int guts); - - public: - - Fixed(); - Fixed(const Fixed &a); - Fixed(float a); - Fixed(double a); - Fixed(int a); - Fixed(long a); - - Fixed& operator =(const Fixed a); - Fixed& operator =(float a); - Fixed& operator =(double a); - Fixed& operator =(int a); - Fixed& operator =(long a); - - operator float(); - operator double(); - operator int(); - operator long(); - operator unsigned short(); - - operator float() const; - - Fixed operator +() const; - Fixed operator -() const; - - Fixed operator +(const Fixed a) const; - Fixed operator -(const Fixed a) const; -#if 1 - // more acurate, using long long - Fixed operator *(const Fixed a) const; -#else - // faster, but with only half as many bits right of binary point - Fixed operator *(const Fixed a) const; -#endif - Fixed operator /(const Fixed a) const; - - Fixed operator *(unsigned short a) const; - Fixed operator *(int a) const; - - Fixed operator +(float a) const; - Fixed operator -(float a) const; - Fixed operator *(float a) const; - Fixed operator /(float a) const; - - Fixed operator +(double a) const; - Fixed operator -(double a) const; - Fixed operator *(double a) const; - Fixed operator /(double a) const; - - Fixed operator >>(int a) const; - Fixed operator <<(int a) const; - - Fixed& operator +=(Fixed a); - Fixed& operator -=(Fixed a); - Fixed& operator *=(Fixed a); - Fixed& operator /=(Fixed a); - - Fixed& operator +=(int a); - Fixed& operator -=(int a); - Fixed& operator *=(int a); - Fixed& operator /=(int a); - - Fixed& operator +=(long a); - Fixed& operator -=(long a); - Fixed& operator *=(long a); - Fixed& operator /=(long a); - - Fixed& operator +=(float a); - Fixed& operator -=(float a); - Fixed& operator *=(float a); - Fixed& operator /=(float a); - - Fixed& operator +=(double a); - Fixed& operator -=(double a); - Fixed& operator *=(double a); - Fixed& operator /=(double a); - - bool operator ==(const Fixed a) const; - bool operator !=(const Fixed a) const; - bool operator <=(const Fixed a) const; - bool operator >=(const Fixed a) const; - bool operator <(const Fixed a) const; - bool operator >(const Fixed a) const; - - bool operator ==(float a) const; - bool operator !=(float a) const; - bool operator <=(float a) const; - bool operator >=(float a) const; - bool operator <(float a) const; - bool operator >(float a) const; - - bool operator ==(double a) const; - bool operator !=(double a) const; - bool operator <=(double a) const; - bool operator >=(double a) const; - bool operator <(double a) const; - bool operator >(double a) const; - - bool operator >(int a) const; - bool operator <(int a) const; - bool operator >=(int a) const; - bool operator <=(int a) const; - - Fixed abs(); - Fixed sqrt(); -#ifdef TARGET_IS_NDS - Fixed cosf(); - Fixed sinf(); - Fixed tanf(); -#endif -}; - -// -// Implementation -// - -inline double Fixed::STEP() { return 1.0 / (1<>BP; } -inline Fixed::operator long() { return g>>BP; } -#pragma warning(disable: 4244) //HARDWIRE added pragma to prevent VS2005 compilation error -inline Fixed::operator unsigned short() { return g>>BP; } -inline Fixed::operator float() const { return g / (float)(1<> BP)); } - -#elif 0 - -// check for overflow and figure out where. Must specify -rdynamic in linker -#include -#include -#include - -inline Fixed Fixed::operator *(const Fixed a) const { - long long x = ((long long)g * (long long)a.g ); - if(x > 0x7fffffffffffLL || x < -0x7fffffffffffLL) { - printf("overflow"); - void *array[2]; - int nSize = backtrace(array, 2); - char **symbols = backtrace_symbols(array, nSize); - for(int i=0; i>BP)); -} - -#else -// faster, but with only half as many bits right of binary point -inline Fixed Fixed::operator *(const Fixed a) const { return Fixed(RAW, (g>>BPhalf) * (a.g>>BPhalf) ); } -#endif - - -#ifdef TARGET_IS_NDS -// Division using the DS's maths coprocessor -inline Fixed Fixed::operator /(const Fixed a) const -{ - //printf("%d %d\n", (long long)g << BP, a.g); - return Fixed(RAW, int( div64((long long)g << BP, a.g) ) ); -} -#else -inline Fixed Fixed::operator /(const Fixed a) const -{ - return Fixed(RAW, int( (((long long)g << BP2) / (long long)(a.g)) >> BP) ); - //return Fixed(RAW, int( (((long long)g << BP) / (long long)(a.g)) ) ); -} -#endif - -inline Fixed Fixed::operator *(unsigned short a) const { return operator*(Fixed(a)); } -inline Fixed Fixed::operator *(int a) const { return operator*(Fixed(a)); } - -inline Fixed Fixed::operator +(float a) const { return Fixed(RAW, g + Fixed(a).g); } -inline Fixed Fixed::operator -(float a) const { return Fixed(RAW, g - Fixed(a).g); } -inline Fixed Fixed::operator *(float a) const { return Fixed(RAW, (g>>BPhalf) * (Fixed(a).g>>BPhalf) ); } -//inline Fixed Fixed::operator /(float a) const { return Fixed(RAW, int( (((long long)g << BP2) / (long long)(Fixed(a).g)) >> BP) ); } -inline Fixed Fixed::operator /(float a) const { return operator/(Fixed(a)); } - -inline Fixed Fixed::operator +(double a) const { return Fixed(RAW, g + Fixed(a).g); } -inline Fixed Fixed::operator -(double a) const { return Fixed(RAW, g - Fixed(a).g); } -inline Fixed Fixed::operator *(double a) const { return Fixed(RAW, (g>>BPhalf) * (Fixed(a).g>>BPhalf) ); } -//inline Fixed Fixed::operator /(double a) const { return Fixed(RAW, int( (((long long)g << BP2) / (long long)(Fixed(a).g)) >> BP) ); } -inline Fixed Fixed::operator /(double a) const { return operator/(Fixed(a)); } - -inline Fixed Fixed::operator >>(int a) const { return Fixed(RAW, g >> a); } -inline Fixed Fixed::operator <<(int a) const { return Fixed(RAW, g << a); } - -inline Fixed& Fixed::operator +=(Fixed a) { return *this = *this + a; } -inline Fixed& Fixed::operator -=(Fixed a) { return *this = *this - a; } -inline Fixed& Fixed::operator *=(Fixed a) { return *this = *this * a; } -//inline Fixed& Fixed::operator /=(Fixed a) { return *this = *this / a; } -inline Fixed& Fixed::operator /=(Fixed a) { return *this = operator/(a); } - -inline Fixed& Fixed::operator +=(int a) { return *this = *this + (Fixed)a; } -inline Fixed& Fixed::operator -=(int a) { return *this = *this - (Fixed)a; } -inline Fixed& Fixed::operator *=(int a) { return *this = *this * (Fixed)a; } -//inline Fixed& Fixed::operator /=(int a) { return *this = *this / (Fixed)a; } -inline Fixed& Fixed::operator /=(int a) { return *this = operator/((Fixed)a); } - -inline Fixed& Fixed::operator +=(long a) { return *this = *this + (Fixed)a; } -inline Fixed& Fixed::operator -=(long a) { return *this = *this - (Fixed)a; } -inline Fixed& Fixed::operator *=(long a) { return *this = *this * (Fixed)a; } -//inline Fixed& Fixed::operator /=(long a) { return *this = *this / (Fixed)a; } -inline Fixed& Fixed::operator /=(long a) { return *this = operator/((Fixed)a); } - -inline Fixed& Fixed::operator +=(float a) { return *this = *this + a; } -inline Fixed& Fixed::operator -=(float a) { return *this = *this - a; } -inline Fixed& Fixed::operator *=(float a) { return *this = *this * a; } -//inline Fixed& Fixed::operator /=(float a) { return *this = *this / a; } -inline Fixed& Fixed::operator /=(float a) { return *this = operator/(a); } - -inline Fixed& Fixed::operator +=(double a) { return *this = *this + a; } -inline Fixed& Fixed::operator -=(double a) { return *this = *this - a; } -inline Fixed& Fixed::operator *=(double a) { return *this = *this * a; } -//inline Fixed& Fixed::operator /=(double a) { return *this = *this / a; } -inline Fixed& Fixed::operator /=(double a) { return *this = operator/(a); } - -inline Fixed operator +(int a, const Fixed b) { return Fixed(a)+b; } -inline Fixed operator -(int a, const Fixed b) { return Fixed(a)-b; } -inline Fixed operator *(int a, const Fixed b) { return Fixed(a)*b; } -inline Fixed operator /(int a, const Fixed b) { return Fixed(a)/b; }; - -inline Fixed operator +(float a, const Fixed b) { return Fixed(a)+b; } -inline Fixed operator -(float a, const Fixed b) { return Fixed(a)-b; } -inline Fixed operator *(float a, const Fixed b) { return Fixed(a)*b; } -inline Fixed operator /(float a, const Fixed b) { return Fixed(a)/b; } - -inline bool Fixed::operator ==(const Fixed a) const { return g == a.g; } -inline bool Fixed::operator !=(const Fixed a) const { return g != a.g; } -inline bool Fixed::operator <=(const Fixed a) const { return g <= a.g; } -inline bool Fixed::operator >=(const Fixed a) const { return g >= a.g; } -inline bool Fixed::operator <(const Fixed a) const { return g < a.g; } -inline bool Fixed::operator >(const Fixed a) const { return g > a.g; } - -inline bool Fixed::operator ==(float a) const { return g == Fixed(a).g; } -inline bool Fixed::operator !=(float a) const { return g != Fixed(a).g; } -inline bool Fixed::operator <=(float a) const { return g <= Fixed(a).g; } -inline bool Fixed::operator >=(float a) const { return g >= Fixed(a).g; } -inline bool Fixed::operator <(float a) const { return g < Fixed(a).g; } -inline bool Fixed::operator >(float a) const { return g > Fixed(a).g; } - -inline bool Fixed::operator ==(double a) const { return g == Fixed(a).g; } -inline bool Fixed::operator !=(double a) const { return g != Fixed(a).g; } -inline bool Fixed::operator <=(double a) const { return g <= Fixed(a).g; } -inline bool Fixed::operator >=(double a) const { return g >= Fixed(a).g; } -inline bool Fixed::operator <(double a) const { return g < Fixed(a).g; } -inline bool Fixed::operator >(double a) const { return g > Fixed(a).g; } - -inline bool Fixed::operator >(int a) const { return g > Fixed(a).g; } -inline bool Fixed::operator <(int a) const { return g < Fixed(a).g; } -inline bool Fixed::operator >=(int a) const{ return g >= Fixed(a).g; }; -inline bool Fixed::operator <=(int a) const{ return g <= Fixed(a).g; }; - -inline bool operator ==(float a, const Fixed b) { return Fixed(a) == b; } -inline bool operator !=(float a, const Fixed b) { return Fixed(a) != b; } -inline bool operator <=(float a, const Fixed b) { return Fixed(a) <= b; } -inline bool operator >=(float a, const Fixed b) { return Fixed(a) >= b; } -inline bool operator <(float a, const Fixed b) { return Fixed(a) < b; } -inline bool operator >(float a, const Fixed b) { return Fixed(a) > b; } - -inline Fixed operator +(double a, const Fixed b) { return Fixed(a)+b; } -inline Fixed operator -(double a, const Fixed b) { return Fixed(a)-b; } -inline Fixed operator *(double a, const Fixed b) { return Fixed(a)*b; } -inline Fixed operator /(double a, const Fixed b) { return Fixed(a)/b; } - -inline bool operator ==(double a, const Fixed b) { return Fixed(a) == b; } -inline bool operator !=(double a, const Fixed b) { return Fixed(a) != b; } -inline bool operator <=(double a, const Fixed b) { return Fixed(a) <= b; } -inline bool operator >=(double a, const Fixed b) { return Fixed(a) >= b; } -inline bool operator <(double a, const Fixed b) { return Fixed(a) < b; } -inline bool operator >(double a, const Fixed b) { return Fixed(a) > b; } - -inline bool operator ==(int a, const Fixed b) { return Fixed(a) == b; } -inline bool operator !=(int a, const Fixed b) { return Fixed(a) != b; } -inline bool operator <=(int a, const Fixed b) { return Fixed(a) <= b; } -inline bool operator >=(int a, const Fixed b) { return Fixed(a) >= b; } -inline bool operator <(int a, const Fixed b) { return Fixed(a) < b; } -inline bool operator >(int a, const Fixed b) { return Fixed(a) > b; } - -inline int& operator +=(int& a, const Fixed b) { a = (Fixed)a + b; return a; } -inline int& operator -=(int& a, const Fixed b) { a = (Fixed)a - b; return a; } -inline int& operator *=(int& a, const Fixed b) { a = (Fixed)a * b; return a; } -inline int& operator /=(int& a, const Fixed b) { a = (Fixed)a / b; return a; } - -inline long& operator +=(long& a, const Fixed b) { a = (Fixed)a + b; return a; } -inline long& operator -=(long& a, const Fixed b) { a = (Fixed)a - b; return a; } -inline long& operator *=(long& a, const Fixed b) { a = (Fixed)a * b; return a; } -inline long& operator /=(long& a, const Fixed b) { a = (Fixed)a / b; return a; } - -inline float& operator +=(float& a, const Fixed b) { a = a + b; return a; } -inline float& operator -=(float& a, const Fixed b) { a = a - b; return a; } -inline float& operator *=(float& a, const Fixed b) { a = a * b; return a; } -inline float& operator /=(float& a, const Fixed b) { a = a / b; return a; } - -inline double& operator +=(double& a, const Fixed b) { a = a + b; return a; } -inline double& operator -=(double& a, const Fixed b) { a = a - b; return a; } -inline double& operator *=(double& a, const Fixed b) { a = a * b; return a; } -inline double& operator /=(double& a, const Fixed b) { a = a / b; return a; } - -inline Fixed Fixed::abs() { return (g>0) ? Fixed(RAW, g) : Fixed(RAW, -g); } -inline Fixed abs(Fixed f) { return f.abs(); } - -//inline Fixed atan2(Fixed a, Fixed b) { return atan2f((float) a, (float) b); } -inline Fixed atan2(Fixed y, Fixed x) -{ - Fixed abs_y = y.abs() + FIXED_EPSILON; // avoid 0/0 - Fixed r, angle; - - if(x >= 0.0f) { - r = (x - abs_y) / (x + abs_y); - angle = 3.1415926/4.0; - } else { - r = (x + abs_y) / (abs_y - x); - angle = 3.0*3.1415926/4.0; - } - angle += Fixed(0.1963) * (r * r * r) - Fixed(0.9817) * r; - return (y < 0) ? -angle : angle; -} - -#if TARGET_IS_NDS - -static inline long nds_sqrt64(long long a) -{ - SQRT_CR = SQRT_64; - while(SQRT_CR & SQRT_BUSY); - SQRT_PARAM64 = a; - while(SQRT_CR & SQRT_BUSY); - - return SQRT_RESULT32; -} - -static inline int32 div6464(int64 num, int64 den) -{ - DIV_CR = DIV_64_64; - while(DIV_CR & DIV_BUSY); - DIV_NUMERATOR64 = num; - DIV_DENOMINATOR64 = den; - while(DIV_CR & DIV_BUSY); - - return (DIV_RESULT32); -} - -inline Fixed Fixed::sqrt() -{ - return Fixed(RAW, nds_sqrt64(((long long)(g))<>= 2 ) - { - if ( ( left & -m ) > root ) - left -= ( root += m ), root += m; - root >>= 1; - } - return Fixed(RAW, root); -} -#endif - -inline Fixed sqrt(Fixed a) { return a.sqrt(); } -inline Fixed sqrtf(Fixed a) { return a.sqrt(); } - -#endif - -#ifdef TARGET_IS_NDS -// Use the libnds lookup tables for trigonometry functions -inline Fixed Fixed::cosf() { - int idx = (((long long)g*(long long)G_1_DIV_PI)>>24)%512; - if(idx < 0) - idx += 512; - return Fixed(RAW, COS_bin[idx] << 4); -} -inline Fixed cosf(Fixed x) { return x.cosf(); } -inline Fixed Fixed::sinf() { - int idx = (((long long)g*(long long)G_1_DIV_PI)>>24)%512; - if(idx < 0) - idx += 512; - return Fixed(RAW, SIN_bin[idx] << 4); -} -inline Fixed sinf(Fixed x) { return x.sinf(); } -inline Fixed Fixed::tanf() { - int idx = (((long long)g*(long long)G_1_DIV_PI)>>24)%512; - if(idx < 0) - idx += 512; - return Fixed(RAW, TAN_bin[idx] << 4); -} -inline Fixed tanf(Fixed x) { return x.tanf(); } - - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/FixedPoint/jtypes.h b/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/FixedPoint/jtypes.h deleted file mode 100644 index 3747ce5..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/FixedPoint/jtypes.h +++ /dev/null @@ -1,139 +0,0 @@ -/*--------------------------------------------------------------------------------- - $Id: jtypes.h,v 1.17 2007/07/18 05:20:45 wntrmute Exp $ - - jtypes.h -- Common types (and a few useful macros) - - Copyright (C) 2005 - Michael Noland (joat) - Jason Rogers (dovoto) - Dave Murphy (WinterMute) - Chris Double (doublec) - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any - damages arising from the use of this software. - - Permission is granted to anyone to use this software for any - purpose, including commercial applications, and to alter it and - redistribute it freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you - must not claim that you wrote the original software. If you use - this software in a product, an acknowledgment in the product - documentation would be appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and - must not be misrepresented as being the original software. - 3. This notice may not be removed or altered from any source - distribution. - ----------------------------------------------------------------------------------*/ -#ifndef NDS_JTYPES_INCLUDE -#define NDS_JTYPES_INCLUDE -//--------------------------------------------------------------------------------- - - -#define PACKED __attribute__ ((packed)) -#define packed_struct struct PACKED - -//--------------------------------------------------------------------------------- -// libgba compatible section macros -//--------------------------------------------------------------------------------- -#define ITCM_CODE __attribute__((section(".itcm"), long_call)) - -#define DTCM_DATA __attribute__((section(".dtcm"))) -#define DTCM_BSS __attribute__((section(".sbss"))) -#define ALIGN(m) __attribute__((aligned (m))) - -#define PACKED __attribute__ ((packed)) -#define packed_struct struct PACKED - -//--------------------------------------------------------------------------------- -// These are linked to the bin2o macro in the Makefile -//--------------------------------------------------------------------------------- -#define GETRAW(name) (name) -#define GETRAWSIZE(name) ((int)name##_size) -#define GETRAWEND(name) ((int)name##_end) - -#ifndef TRUE -#define TRUE 1 -#define FALSE 0 -#endif - -#define BIT(n) (1 << (n)) - -// define libnds types in terms of stdint -#include - -typedef uint8_t uint8; -typedef uint16_t uint16; -typedef uint32_t uint32; -typedef uint64_t uint64; - -typedef int8_t int8; -typedef int16_t int16; -typedef int32_t int32; -typedef int64_t int64; - -//typedef float float32; -typedef double float64; - -typedef volatile uint8_t vuint8; -typedef volatile uint16_t vuint16; -typedef volatile uint32_t vuint32; -typedef volatile uint64_t vuint64; - -typedef volatile int8_t vint8; -typedef volatile int16_t vint16; -typedef volatile int32_t vint32; -typedef volatile int64_t vint64; - -typedef volatile float vfloat32; -typedef volatile float64 vfloat64; - -typedef uint8_t byte; - -typedef uint8_t u8; -typedef uint16_t u16; -typedef uint32_t u32; -typedef uint64_t u64; - -typedef int8_t s8; -typedef int16_t s16; -typedef int32_t s32; -typedef int64_t s64; - -typedef volatile u8 vu8; -typedef volatile u16 vu16; -typedef volatile u32 vu32; -typedef volatile u64 vu64; - -typedef volatile s8 vs8; -typedef volatile s16 vs16; -typedef volatile s32 vs32; -typedef volatile s64 vs64; - -typedef struct touchPosition { - int16 x; - int16 y; - int16 px; - int16 py; - int16 z1; - int16 z2; -} touchPosition; - - -#ifndef __cplusplus -/** C++ compatible bool for C - -*/ -typedef enum { false, true } bool; -#endif - -// Handy function pointer typedefs -typedef void ( * IntFn)(void); -typedef void (* VoidFunctionPointer)(void); -typedef void (* fp)(void); - -//--------------------------------------------------------------------------------- -#endif -//--------------------------------------------------------------------------------- diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/Shapes/capsule88.patch b/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/Shapes/capsule88.patch deleted file mode 100644 index 85bc460..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Enhancements/Shapes/capsule88.patch +++ /dev/null @@ -1,1359 +0,0 @@ -Index: Box2D/Box2D/Box2D.h -=================================================================== ---- Box2D/Box2D/Box2D.h (revision 70) -+++ Box2D/Box2D/Box2D.h (working copy) -@@ -35,6 +35,7 @@ - - #include - #include -+#include - - #include - #include -Index: Box2D/Box2D/CMakeLists.txt -=================================================================== ---- Box2D/Box2D/CMakeLists.txt (revision 70) -+++ Box2D/Box2D/CMakeLists.txt (working copy) -@@ -15,10 +15,12 @@ - Collision/b2TimeOfImpact.h - ) - set(BOX2D_Shapes_SRCS -+ Collision/Shapes/b2CapsuleShape.cpp - Collision/Shapes/b2CircleShape.cpp - Collision/Shapes/b2PolygonShape.cpp - ) - set(BOX2D_Shapes_HDRS -+ Collision/Shapes/b2CapsuleShape.h - Collision/Shapes/b2CircleShape.h - Collision/Shapes/b2PolygonShape.h - Collision/Shapes/b2Shape.h -@@ -53,18 +55,24 @@ - Dynamics/b2WorldCallbacks.h - ) - set(BOX2D_Contacts_SRCS -+ Dynamics/Contacts/b2CapsuleAndCircleContact.cpp -+ Dynamics/Contacts/b2CapsuleContact.cpp - Dynamics/Contacts/b2CircleContact.cpp - Dynamics/Contacts/b2Contact.cpp - Dynamics/Contacts/b2ContactSolver.cpp -+ Dynamics/Contacts/b2PolygonAndCapsuleContact.cpp - Dynamics/Contacts/b2PolygonAndCircleContact.cpp - Dynamics/Contacts/b2PolygonContact.cpp - Dynamics/Contacts/b2TOISolver.cpp - ) - set(BOX2D_Contacts_HDRS -+ Dynamics/Contacts/b2CapsuleAndCircleContact.h -+ Dynamics/Contacts/b2CapsuleContact.h - Dynamics/Contacts/b2CircleContact.h - Dynamics/Contacts/b2Contact.h - Dynamics/Contacts/b2ContactSolver.h - Dynamics/Contacts/b2NullContact.h -+ Dynamics/Contacts/b2PolygonAndCapsuleContact.h - Dynamics/Contacts/b2PolygonAndCircleContact.h - Dynamics/Contacts/b2PolygonContact.h - Dynamics/Contacts/b2TOISolver.h -Index: Box2D/Box2D/Collision/b2Collision.cpp -=================================================================== ---- Box2D/Box2D/Collision/b2Collision.cpp (revision 70) -+++ Box2D/Box2D/Collision/b2Collision.cpp (working copy) -@@ -248,3 +248,220 @@ - - return output.distance < 10.0f * b2_epsilon; - } -+ -+ -+// Collision Detection in Interactive 3D Environments by Gino van den Bergen -+// From Section 3.4.1 -+// x = mu1 * p1 + mu2 * p2 -+// mu1 + mu2 = 1 && mu1 >= 0 && mu2 >= 0 -+// mu1 = 1 - mu2; -+// x = (1 - mu2) * p1 + mu2 * p2 -+// = p1 + mu2 * (p2 - p1) -+// x = s + a * r (s := start, r := end - start) -+// s + a * r = p1 + mu2 * d (d := p2 - p1) -+// -a * r + mu2 * d = b (b := s - p1) -+// [-r d] * [a; mu2] = b -+// Cramer's rule: -+// denom = det[-r d] -+// a = det[b d] / denom -+// mu2 = det[-r b] / denom -+bool b2RaycastSegment(b2RayCastOutput* output, const b2RayCastInput& input, const b2Vec2& p1, const b2Vec2& p2) -+{ -+ b2Vec2 s = input.p1; -+ b2Vec2 r = input.p2 - s; -+ b2Vec2 d = p2 - p1; -+ b2Vec2 n = b2Cross(d, 1.0f); -+ -+ const float32 k_slop = 100.0f * b2_epsilon; -+ float32 denom = -b2Dot(r, n); -+ -+ // Cull back facing collision and ignore parallel segments. -+ if (denom > k_slop) -+ { -+ // Does the segment intersect the infinite line associated with this segment? -+ b2Vec2 b = s - p1; -+ float32 a = b2Dot(b, n); -+ -+ if (0.0f <= a && a <= input.maxFraction * denom) -+ { -+ float32 mu2 = -r.x * b.y + r.y * b.x; -+ -+ // Does the segment intersect this segment? -+ if (-k_slop * denom <= mu2 && mu2 <= denom * (1.0f + k_slop)) -+ { -+ a /= denom; -+ n.Normalize(); -+ output->normal = n; -+ output->fraction = a; -+ return true; -+ } -+ } -+ } -+ -+ return false; -+} -+ -+ -+static void FindNearestPointOnLineSegment( b2Vec2* nearest, float32* parameter, -+ const b2Vec2& A1, const b2Vec2& L, const b2Vec2& B, -+ bool infinite_line ) -+{ -+ float32 D = L.LengthSquared(); -+ if (D < b2_epsilon * b2_epsilon) -+ { -+ *nearest = A1; -+ return; -+ } -+ -+ b2Vec2 AB = B - A1; -+ *parameter = b2Dot(L, AB) / D; -+ if (!infinite_line) -+ { -+ *parameter = b2Clamp(*parameter, 0.0f, 1.0f); -+ } -+ *nearest = A1 + *parameter * L; -+} -+ -+// Based on Game Programming Gems 2 -+// Fast, Robust Intersection of 3D Line Segments -+// Graham Rhodes, Applied Research Associates -+b2Vec2 b2NearestPointOnLine(const b2Vec2& point, const b2Vec2& p1, const b2Vec2& p2) -+{ -+ b2Vec2 result; -+ float32 unused; -+ FindNearestPointOnLineSegment(&result, &unused, p1, p2 - p1, point, false); -+ return result; -+} -+ -+static void FindNearestPointOfParallelLineSegments( b2Vec2* x1, b2Vec2* x2, -+ const b2Vec2& A1, const b2Vec2& A2, const b2Vec2& La, -+ const b2Vec2& B1, const b2Vec2& B2, const b2Vec2& Lb) -+{ -+ float32 s, t; -+ FindNearestPointOnLineSegment(x1, &s, A1, La, B1, true); -+ FindNearestPointOnLineSegment(x2, &t, A1, La, B2, true); -+ -+ if (s < 0.0f && t < 0.0f) -+ { -+ *x1 = A1; -+ if (s < t) -+ *x2 = B2; -+ else -+ *x2 = B1; -+ return; -+ } -+ -+ if (s > 1.0f && t > 1.0f) -+ { -+ *x1 = A2; -+ if (s < t) -+ *x2 = B1; -+ else -+ *x2 = B2; -+ return; -+ } -+ -+ float32 temp = 0.5f * (b2Clamp(s, 0.0f, 1.0f) + b2Clamp(t, 0.0f, 1.0f)); -+ *x1 = A1 + temp * La; -+ -+ float32 unused; -+ FindNearestPointOnLineSegment(x2, &unused, B1, Lb, *x1, true); -+} -+ -+static void AdjustNearestPoints(b2Vec2* x1, b2Vec2* x2, -+ const b2Vec2& A1, const b2Vec2& A2, const b2Vec2& La, -+ const b2Vec2& B1, const b2Vec2& B2, const b2Vec2& Lb, -+ float32 s, float32 t) -+{ -+ if ((s < 0.0f || s > 1.0f) && (t < 0.0f || t > 1.0f)) -+ { -+ s = b2Clamp(s, 0.0f, 1.0f); -+ *x1 = A1 + s * La; -+ FindNearestPointOnLineSegment(x2, &t, B1, Lb, *x1, true); -+ if (t < 0.0f || t > 1.0f) -+ { -+ t = b2Clamp(t, 0.0f, 1.0f); -+ *x2 = B1 + t * Lb; -+ FindNearestPointOnLineSegment(x1, &s, A1, La, *x2, false); -+ FindNearestPointOnLineSegment(x2, &t, B1, Lb, *x1, false); -+ } -+ return; -+ } -+ if (s < 0.0f || s > 1.0f) -+ { -+ s = b2Clamp(s, 0.0f, 1.0f); -+ *x1 = A1 + s * La; -+ FindNearestPointOnLineSegment(x2, &t, B1, Lb, *x1, false); -+ return; -+ } -+ b2Assert(t < 0.0f || t > 1.0f); -+ t = b2Clamp(t, 0.0f, 1.0f); -+ *x2 = B1 + t * Lb; -+ FindNearestPointOnLineSegment(x1, &s, A1, La, *x2, false); -+} -+ -+static void IntersectLineSegments( b2Vec2* x1, b2Vec2* x2, -+ const b2Vec2& A1, const b2Vec2& A2, -+ const b2Vec2& B1, const b2Vec2& B2) -+{ -+ float32 unused; -+ -+ b2Vec2 La = A2 - A1; -+ b2Vec2 Lb = B2 - B1; -+ float32 L11 = La.LengthSquared(); -+ float32 L22 = Lb.LengthSquared(); -+ -+ // Check for degenerate parameters -+ if (L11 < b2_epsilon * b2_epsilon) -+ { -+ *x1 = A1; -+ FindNearestPointOnLineSegment(x2, &unused, B1, Lb, A1, false); -+ return; -+ } -+ if (L22 < b2_epsilon * b2_epsilon) -+ { -+ *x2 = B1; -+ FindNearestPointOnLineSegment(x1, &unused, A1, La, B1, false); -+ return; -+ } -+ -+ b2Vec2 AB = B1 - A1; -+ float32 L12 = -b2Dot(La, Lb); -+ float32 DetL = L11 * L22 - L12 * L12; -+ -+ // parallel segments -+ if (b2Abs(DetL) < b2_epsilon) -+ { -+ FindNearestPointOfParallelLineSegments(x1, x2, A1, A2, La, B1, B2, Lb); -+ return; -+ } -+ -+ float32 ra = b2Dot(La, AB); -+ float32 rb = -b2Dot(Lb, AB); -+ -+ float32 t = (L11 * rb - ra * L12) / DetL; -+ float32 s = (ra - L12 * t) / L11; -+ -+ // These tests can't quite stay within B2_FLT_EPSILON -+ //b2Assert(b2Abs(s * L11 + t * L12 - ra) < .0001f); -+ //b2Assert(b2Abs(s * L12 + t * L22 - rb) < .0001f); -+ -+ *x1 = A1 + s * La; -+ *x2 = B1 + t * Lb; -+ -+ if (s < 0.0f || s > 1.0f || t < 0.0f || t > 1.0f) -+ { -+ AdjustNearestPoints(x1, x2, A1, A2, La, B1, B2, Lb, s, t); -+ } -+} -+ -+// Based on Game Programming Gems 2 -+// Fast, Robust Intersection of 3D Line Segments -+// Graham Rhodes, Applied Research Associates -+float32 b2DistanceBetweenLines( b2Vec2* x1, b2Vec2* x2, -+ const b2Vec2& A1, const b2Vec2& A2, -+ const b2Vec2& B1, const b2Vec2& B2) -+{ -+ IntersectLineSegments(x1, x2, A1, A2, B1, B2); -+ return (*x2 - *x1).Length(); -+} -\ No newline at end of file -Index: Box2D/Box2D/Collision/b2Collision.h -=================================================================== ---- Box2D/Box2D/Collision/b2Collision.h (revision 70) -+++ Box2D/Box2D/Collision/b2Collision.h (working copy) -@@ -27,6 +27,7 @@ - /// queries, and TOI queries. - - class b2Shape; -+class b2CapsuleShape; - class b2CircleShape; - class b2PolygonShape; - -@@ -212,6 +213,18 @@ - bool b2TestOverlap(const b2Shape* shapeA, const b2Shape* shapeB, - const b2Transform& xfA, const b2Transform& xfB); - -+/// Perform a raycast against a given line segment. -+bool b2RaycastSegment(b2RayCastOutput* output, const b2RayCastInput& input, const b2Vec2& p1, const b2Vec2& p2); -+ -+/// Find the nearest point on a line. -+b2Vec2 b2NearestPointOnLine(const b2Vec2& point, const b2Vec2& p1, const b2Vec2& p2); -+ -+/// Find the nearest points on between two different lines. -+float32 b2DistanceBetweenLines( b2Vec2* x1, b2Vec2* x2, -+ const b2Vec2& A1, const b2Vec2& A2, -+ const b2Vec2& B1, const b2Vec2& B2); -+ -+ - // ---------------- Inline Functions ------------------------------------------ - - inline bool b2AABB::IsValid() const -Index: Box2D/Box2D/Collision/b2Distance.cpp -=================================================================== ---- Box2D/Box2D/Collision/b2Distance.cpp (revision 70) -+++ Box2D/Box2D/Collision/b2Distance.cpp (working copy) -@@ -17,6 +17,7 @@ - */ - - #include -+#include - #include - #include - -@@ -44,6 +45,15 @@ - m_radius = polygon->m_radius; - } - break; -+ -+ case b2Shape::e_capsule: -+ { -+ const b2CapsuleShape* capsule = (b2CapsuleShape*)shape; -+ m_vertices = capsule->m_vertices; -+ m_count = 2; -+ m_radius = capsule->m_radius; -+ } -+ break; - - default: - b2Assert(false); -Index: Box2D/Box2D/Collision/Shapes/b2CapsuleShape.cpp -=================================================================== ---- Box2D/Box2D/Collision/Shapes/b2CapsuleShape.cpp (revision 0) -+++ Box2D/Box2D/Collision/Shapes/b2CapsuleShape.cpp (revision 0) -@@ -0,0 +1,194 @@ -+/* -+* Copyright (c) 2006-2009 Erin Catto http://www.gphysics.com -+* -+* This software is provided 'as-is', without any express or implied -+* warranty. In no event will the authors be held liable for any damages -+* arising from the use of this software. -+* Permission is granted to anyone to use this software for any purpose, -+* including commercial applications, and to alter it and redistribute it -+* freely, subject to the following restrictions: -+* 1. The origin of this software must not be misrepresented; you must not -+* claim that you wrote the original software. If you use this software -+* in a product, an acknowledgment in the product documentation would be -+* appreciated but is not required. -+* 2. Altered source versions must be plainly marked as such, and must not be -+* misrepresented as being the original software. -+* 3. This notice may not be removed or altered from any source distribution. -+*/ -+ -+#include -+#include -+ -+void b2CapsuleShape::SetByExtentsX(float32 radius, float32 length) -+{ -+ m_radius = radius; -+ float32 half = length * 0.5f; -+ m_vertices[0] = b2Vec2(-half, 0.0f); -+ m_vertices[1] = b2Vec2(half, 0.0f); -+} -+ -+void b2CapsuleShape::SetByExtentsX(float32 radius, float32 length, -+ const b2Vec2& center, float32 angle) -+{ -+ SetByExtentsX(radius, length); -+ b2Transform xf; -+ xf.position = center; -+ xf.R.Set(angle); -+ -+ m_vertices[0] = b2Mul(xf, m_vertices[0]); -+ m_vertices[1] = b2Mul(xf, m_vertices[1]); -+} -+ -+ -+void b2CapsuleShape::SetByExtentsY(float32 radius, float32 height) -+{ -+ m_radius = radius; -+ float32 half = height * 0.5f; -+ m_vertices[0] = b2Vec2(0.0f, -half); -+ m_vertices[1] = b2Vec2(0.0f, half); -+} -+ -+void b2CapsuleShape::SetByExtentsY(float32 radius, float32 height, -+ const b2Vec2& center, float32 angle) -+{ -+ SetByExtentsY(radius, height); -+ b2Transform xf; -+ xf.position = center; -+ xf.R.Set(angle); -+ -+ m_vertices[0] = b2Mul(xf, m_vertices[0]); -+ m_vertices[1] = b2Mul(xf, m_vertices[1]); -+} -+ -+b2Shape* b2CapsuleShape::Clone(b2BlockAllocator* allocator) const -+{ -+ void* mem = allocator->Allocate(sizeof(b2CapsuleShape)); -+ b2CapsuleShape* clone = new (mem) b2CapsuleShape; -+ *clone = *this; -+ return clone; -+} -+ -+bool b2CapsuleShape::TestPoint(const b2Transform& transform, const b2Vec2& p) const -+{ -+ b2Vec2 local = b2MulT(transform, p); -+ b2Vec2 d = b2NearestPointOnLine(local, m_vertices[0], m_vertices[1]) - local; -+ return (d.LengthSquared() <= m_radius * m_radius); -+} -+ -+bool b2CapsuleShape::RayCast(b2RayCastOutput* output, const b2RayCastInput& input, const b2Transform& transform) const -+{ -+ // Test for starting inside first significantly reduces complexity -+ if (TestPoint(transform, input.p1)) { -+ return false; -+ } -+ -+ // Project capsule to world -+ b2Vec2 capsule[2]; -+ capsule[0] = b2Mul(transform, m_vertices[0]); -+ capsule[1] = b2Mul(transform, m_vertices[1]); -+ b2Vec2 d = capsule[1] - capsule[0]; -+ -+ // Consider "cylinder" -+ -+ // Figure out signed distance from p1 to infinite capsule line -+ float32 ld = b2Cross(d, capsule[0] - input.p1); -+ -+ // Only bother if we don't start inside the infinite "cylinder" -+ if (!(ld * ld <= m_radius * m_radius * d.LengthSquared())) { -+ -+ // Find a perpendicular vector to the intersect, with length equal to radius -+ b2Vec2 perp = b2Cross(d, m_radius / d.Length()); -+ -+ // Push the capsule segment by that vector -+ // Must swap if coming from the other side -+ b2Vec2 boundary[2]; -+ if (ld < 0) { -+ boundary[0] = capsule[1] - perp; -+ boundary[1] = capsule[0] - perp; -+ } -+ else { -+ boundary[0] = capsule[0] + perp; -+ boundary[1] = capsule[1] + perp; -+ } -+ -+ // Check intersection against the adjusted segments. -+ if (b2RaycastSegment(output, input, boundary[0], boundary[1])) -+ return true; -+ } -+ -+ // Consider circular caps -+ -+ // Precompute some circle values -+ b2Vec2 r = input.p2 - input.p1; -+ float32 rr = r.LengthSquared(); -+ -+ // Check for short segment -+ if (rr < b2_epsilon) -+ { -+ return false; -+ } -+ -+ // Check the circle caps, starting with closer -+ int startingIndex = 0; -+ if ((capsule[1] - input.p1).LengthSquared() < (capsule[0] - input.p1).LengthSquared()) { -+ startingIndex = 1; -+ } -+ b2Vec2 center = capsule[startingIndex]; -+ for (int i = 0; i < 2; ++i) -+ { -+ b2Vec2 s = input.p1 - center; -+ float32 b = b2Dot(s, s) - m_radius * m_radius; -+ -+ // Should not start inside -+ b2Assert(!(b < 0.0f)); -+ -+ // Solve quadratic equation. -+ float32 c = b2Dot(s, r); -+ float32 sigma = c * c - rr * b; -+ -+ // Check for negative discriminant. -+ if (!(sigma < 0.0f)) -+ { -+ // Find the point of intersection of the line with the circle. -+ float32 a = -(c + b2Sqrt(sigma)); -+ -+ // Is the intersection point on the segment? -+ if (0.0f <= a && a <= input.maxFraction * rr) -+ { -+ a /= rr; -+ output->fraction = a; -+ output->normal = s + a * r; -+ output->normal.Normalize(); -+ return true; -+ } -+ } -+ center = capsule[!startingIndex]; -+ } -+ -+ return false; -+} -+ -+void b2CapsuleShape::ComputeAABB(b2AABB* aabb, const b2Transform& transform) const -+{ -+ b2Vec2 p1 = transform.position + b2Mul(transform.R, m_vertices[0]); -+ b2Vec2 p2 = transform.position + b2Mul(transform.R, m_vertices[1]); -+ b2Vec2 min = b2Min(p1, p2); -+ b2Vec2 max = b2Max(p1, p2); -+ aabb->lowerBound.Set(min.x - m_radius, min.y - m_radius); -+ aabb->upperBound.Set(max.x + m_radius, max.y + m_radius); -+} -+ -+void b2CapsuleShape::ComputeMass(b2MassData* massData, float32 density) const -+{ -+ // Area of rectangle + 2 half circles -+ float32 rectHeight = (m_vertices[1] - m_vertices[0]).Length(); -+ float32 rectMass = density * rectHeight * m_radius; -+ float32 circleMass = density * b2_pi * m_radius * m_radius; -+ massData->mass = rectMass + circleMass; -+ massData->center = 0.5f * (m_vertices[0] + m_vertices[1]); -+ -+ // inertia about the local origin -+ float32 rectInertia = rectMass * (rectHeight * rectHeight + m_radius * m_radius) / 12.0f; -+ float32 circleInertia = circleMass * (0.5f * m_radius * m_radius + rectHeight * rectHeight * .25f); -+ massData->I = rectInertia + circleInertia + massData->mass * massData->center.LengthSquared(); -+} -Index: Box2D/Box2D/Collision/Shapes/b2CapsuleShape.h -=================================================================== ---- Box2D/Box2D/Collision/Shapes/b2CapsuleShape.h (revision 0) -+++ Box2D/Box2D/Collision/Shapes/b2CapsuleShape.h (revision 0) -@@ -0,0 +1,103 @@ -+/* -+* Copyright (c) 2006-2009 Erin Catto http://www.gphysics.com -+* -+* This software is provided 'as-is', without any express or implied -+* warranty. In no event will the authors be held liable for any damages -+* arising from the use of this software. -+* Permission is granted to anyone to use this software for any purpose, -+* including commercial applications, and to alter it and redistribute it -+* freely, subject to the following restrictions: -+* 1. The origin of this software must not be misrepresented; you must not -+* claim that you wrote the original software. If you use this software -+* in a product, an acknowledgment in the product documentation would be -+* appreciated but is not required. -+* 2. Altered source versions must be plainly marked as such, and must not be -+* misrepresented as being the original software. -+* 3. This notice may not be removed or altered from any source distribution. -+*/ -+ -+#ifndef B2_CAPSULE_SHAPE_H -+#define B2_CAPSULE_SHAPE_H -+ -+#include -+ -+/// A circle shape. -+class b2CapsuleShape : public b2Shape -+{ -+public: -+ b2CapsuleShape(); -+ -+ /// Set to a capsule across the X axis, with given width between focii. -+ void SetByExtentsX(float32 radius, float32 width); -+ /// Set to a capsule across the X axis, rotated and transposed. -+ void SetByExtentsX(float32 radius, float32 width, -+ const b2Vec2& center, float32 angle); -+ -+ /// Set to a capsule across the Y axis, with given height between focii. -+ void SetByExtentsY(float32 radius, float32 height); -+ /// Set to a capsule across the Y axis, rotated and transposed. -+ void SetByExtentsY(float32 radius, float32 height, -+ const b2Vec2& center, float32 angle); -+ -+ /// Implement b2Shape. -+ b2Shape* Clone(b2BlockAllocator* allocator) const; -+ -+ /// Implement b2Shape. -+ bool TestPoint(const b2Transform& transform, const b2Vec2& p) const; -+ -+ /// Implement b2Shape. -+ bool RayCast(b2RayCastOutput* output, const b2RayCastInput& input, const b2Transform& transform) const; -+ -+ /// @see b2Shape::ComputeAABB -+ void ComputeAABB(b2AABB* aabb, const b2Transform& transform) const; -+ -+ /// @see b2Shape::ComputeMass -+ void ComputeMass(b2MassData* massData, float32 density) const; -+ -+ /// Get the supporting vertex index in the given direction. -+ int32 GetSupport(const b2Vec2& d) const; -+ -+ /// Get the supporting vertex in the given direction. -+ const b2Vec2& GetSupportVertex(const b2Vec2& d) const; -+ -+ /// Get the vertex count. -+ int32 GetVertexCount() const { return 2; } -+ -+ /// Get a vertex by index. Used by b2Distance. -+ const b2Vec2& GetVertex(int32 index) const; -+ -+ /// Position of circle centers -+ b2Vec2 m_vertices[2]; -+}; -+ -+inline b2CapsuleShape::b2CapsuleShape() -+{ -+ m_type = e_capsule; -+ m_radius = 0.0f; -+ m_vertices[0].SetZero(); -+ m_vertices[1].SetZero(); -+} -+ -+ -+inline int32 b2CapsuleShape::GetSupport(const b2Vec2 &d) const -+{ -+ if ((m_vertices[0] - d).LengthSquared() <= (m_vertices[1] - d).LengthSquared()) { -+ return 0; -+ } -+ return 1; -+} -+ -+inline const b2Vec2& b2CapsuleShape::GetSupportVertex(const b2Vec2 &d) const -+{ -+ return GetVertex(GetSupport(d)); -+} -+ -+inline const b2Vec2& b2CapsuleShape::GetVertex(int32 index) const -+{ -+ b2Assert(index == 0 || index == 1); -+ return m_vertices[index]; -+} -+ -+ -+ -+#endif -Index: Box2D/Box2D/Collision/Shapes/b2Shape.h -=================================================================== ---- Box2D/Box2D/Collision/Shapes/b2Shape.h (revision 70) -+++ Box2D/Box2D/Collision/Shapes/b2Shape.h (working copy) -@@ -48,7 +48,8 @@ - e_unknown= -1, - e_circle = 0, - e_polygon = 1, -- e_typeCount = 2, -+ e_capsule = 2, -+ e_typeCount = 3, - }; - - b2Shape() { m_type = e_unknown; } -Index: Box2D/Box2D/Dynamics/b2Fixture.cpp -=================================================================== ---- Box2D/Box2D/Dynamics/b2Fixture.cpp (revision 70) -+++ Box2D/Box2D/Dynamics/b2Fixture.cpp (working copy) -@@ -18,6 +18,7 @@ - - #include - #include -+#include - #include - #include - #include -@@ -82,6 +83,14 @@ - allocator->Free(s, sizeof(b2PolygonShape)); - } - break; -+ -+ case b2Shape::e_capsule: -+ { -+ b2CapsuleShape* s = (b2CapsuleShape*)m_shape; -+ s->~b2CapsuleShape(); -+ allocator->Free(s, sizeof(b2CapsuleShape)); -+ } -+ break; - - default: - b2Assert(false); -Index: Box2D/Box2D/Dynamics/b2World.cpp -=================================================================== ---- Box2D/Box2D/Dynamics/b2World.cpp (revision 70) -+++ Box2D/Box2D/Dynamics/b2World.cpp (working copy) -@@ -26,6 +26,7 @@ - #include - #include - #include -+#include - #include - #include - #include -@@ -907,6 +908,18 @@ - m_debugDraw->DrawSolidPolygon(vertices, vertexCount, color); - } - break; -+ -+ case b2Shape::e_capsule: -+ { -+ b2CapsuleShape* capsule = (b2CapsuleShape*)fixture->GetShape(); -+ -+ b2Vec2 p1 = b2Mul(xf, capsule->m_vertices[0]); -+ b2Vec2 p2 = b2Mul(xf, capsule->m_vertices[1]); -+ float32 radius = capsule->m_radius; -+ -+ m_debugDraw->DrawSolidCapsule(p1, p2, radius, color); -+ } -+ break; - } - } - -Index: Box2D/Box2D/Dynamics/b2WorldCallbacks.h -=================================================================== ---- Box2D/Box2D/Dynamics/b2WorldCallbacks.h (revision 70) -+++ Box2D/Box2D/Dynamics/b2WorldCallbacks.h (working copy) -@@ -206,6 +206,12 @@ - /// Draw a solid circle. - virtual void DrawSolidCircle(const b2Vec2& center, float32 radius, const b2Vec2& axis, const b2Color& color) = 0; - -+ /// Draw a capsule. -+ virtual void DrawCapsule(const b2Vec2& p1, const b2Vec2& p2, float32 radius, const b2Color& color) = 0; -+ -+ /// Draw a solid capsule. -+ virtual void DrawSolidCapsule(const b2Vec2& p1, const b2Vec2& p2, float32 radius, const b2Color& color) = 0; -+ - /// Draw a line segment. - virtual void DrawSegment(const b2Vec2& p1, const b2Vec2& p2, const b2Color& color) = 0; - -Index: Box2D/Box2D/Dynamics/Contacts/b2CapsuleAndCircleContact.cpp -=================================================================== ---- Box2D/Box2D/Dynamics/Contacts/b2CapsuleAndCircleContact.cpp (revision 0) -+++ Box2D/Box2D/Dynamics/Contacts/b2CapsuleAndCircleContact.cpp (revision 0) -@@ -0,0 +1,63 @@ -+/* -+* Copyright (c) 2006-2009 Erin Catto http://www.gphysics.com -+* -+* This software is provided 'as-is', without any express or implied -+* warranty. In no event will the authors be held liable for any damages -+* arising from the use of this software. -+* Permission is granted to anyone to use this software for any purpose, -+* including commercial applications, and to alter it and redistribute it -+* freely, subject to the following restrictions: -+* 1. The origin of this software must not be misrepresented; you must not -+* claim that you wrote the original software. If you use this software -+* in a product, an acknowledgment in the product documentation would be -+* appreciated but is not required. -+* 2. Altered source versions must be plainly marked as such, and must not be -+* misrepresented as being the original software. -+* 3. This notice may not be removed or altered from any source distribution. -+*/ -+ -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+ -+#include -+ -+b2Contact* b2CapsuleAndCircleContact::Create(b2Fixture* fixtureA, b2Fixture* fixtureB, b2BlockAllocator* allocator) -+{ -+ void* mem = allocator->Allocate(sizeof(b2CapsuleAndCircleContact)); -+ return new (mem) b2CapsuleAndCircleContact(fixtureA, fixtureB); -+} -+ -+void b2CapsuleAndCircleContact::Destroy(b2Contact* contact, b2BlockAllocator* allocator) -+{ -+ ((b2CapsuleAndCircleContact*)contact)->~b2CapsuleAndCircleContact(); -+ allocator->Free(contact, sizeof(b2CapsuleAndCircleContact)); -+} -+ -+b2CapsuleAndCircleContact::b2CapsuleAndCircleContact(b2Fixture* fixtureA, b2Fixture* fixtureB) -+ : b2Contact(fixtureA, fixtureB) -+{ -+ b2Assert(m_fixtureA->GetType() == b2Shape::e_capsule); -+ b2Assert(m_fixtureB->GetType() == b2Shape::e_circle); -+} -+ -+void b2CapsuleAndCircleContact::Evaluate(b2Manifold* manifold, const b2Transform& xfA, const b2Transform& xfB) -+{ -+ b2Body* bodyA = m_fixtureA->GetBody(); -+ b2Body* bodyB = m_fixtureB->GetBody(); -+ -+ b2CapsuleShape* capsule = (b2CapsuleShape*)m_fixtureA->GetShape(); -+ -+ b2PolygonShape polygon; -+ polygon.SetAsEdge(capsule->m_vertices[0], capsule->m_vertices[1]); -+ polygon.m_radius = capsule->m_radius; -+ -+ b2CollidePolygonAndCircle( manifold, -+ &polygon, xfA, -+ (b2CircleShape*)m_fixtureB->GetShape(), xfB); -+} -Index: Box2D/Box2D/Dynamics/Contacts/b2CapsuleAndCircleContact.h -=================================================================== ---- Box2D/Box2D/Dynamics/Contacts/b2CapsuleAndCircleContact.h (revision 0) -+++ Box2D/Box2D/Dynamics/Contacts/b2CapsuleAndCircleContact.h (revision 0) -@@ -0,0 +1,38 @@ -+/* -+* Copyright (c) 2006-2009 Erin Catto http://www.gphysics.com -+* -+* This software is provided 'as-is', without any express or implied -+* warranty. In no event will the authors be held liable for any damages -+* arising from the use of this software. -+* Permission is granted to anyone to use this software for any purpose, -+* including commercial applications, and to alter it and redistribute it -+* freely, subject to the following restrictions: -+* 1. The origin of this software must not be misrepresented; you must not -+* claim that you wrote the original software. If you use this software -+* in a product, an acknowledgment in the product documentation would be -+* appreciated but is not required. -+* 2. Altered source versions must be plainly marked as such, and must not be -+* misrepresented as being the original software. -+* 3. This notice may not be removed or altered from any source distribution. -+*/ -+ -+#ifndef B2_CAPSULE_AND_CIRCLE_CONTACT_H -+#define B2_CAPSULE_AND_CIRCLE_CONTACT_H -+ -+#include -+ -+class b2BlockAllocator; -+ -+class b2CapsuleAndCircleContact : public b2Contact -+{ -+public: -+ static b2Contact* Create(b2Fixture* fixtureA, b2Fixture* fixtureB, b2BlockAllocator* allocator); -+ static void Destroy(b2Contact* contact, b2BlockAllocator* allocator); -+ -+ b2CapsuleAndCircleContact(b2Fixture* fixtureA, b2Fixture* fixtureB); -+ ~b2CapsuleAndCircleContact() {} -+ -+ void Evaluate(b2Manifold* manifold, const b2Transform& xfA, const b2Transform& xfB); -+}; -+ -+#endif -Index: Box2D/Box2D/Dynamics/Contacts/b2CapsuleContact.cpp -=================================================================== ---- Box2D/Box2D/Dynamics/Contacts/b2CapsuleContact.cpp (revision 0) -+++ Box2D/Box2D/Dynamics/Contacts/b2CapsuleContact.cpp (revision 0) -@@ -0,0 +1,66 @@ -+/* -+* Copyright (c) 2006-2009 Erin Catto http://www.gphysics.com -+* -+* This software is provided 'as-is', without any express or implied -+* warranty. In no event will the authors be held liable for any damages -+* arising from the use of this software. -+* Permission is granted to anyone to use this software for any purpose, -+* including commercial applications, and to alter it and redistribute it -+* freely, subject to the following restrictions: -+* 1. The origin of this software must not be misrepresented; you must not -+* claim that you wrote the original software. If you use this software -+* in a product, an acknowledgment in the product documentation would be -+* appreciated but is not required. -+* 2. Altered source versions must be plainly marked as such, and must not be -+* misrepresented as being the original software. -+* 3. This notice may not be removed or altered from any source distribution. -+*/ -+ -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+ -+#include -+ -+b2Contact* b2CapsuleContact::Create(b2Fixture* fixtureA, b2Fixture* fixtureB, b2BlockAllocator* allocator) -+{ -+ void* mem = allocator->Allocate(sizeof(b2CapsuleContact)); -+ return new (mem) b2CapsuleContact(fixtureA, fixtureB); -+} -+ -+void b2CapsuleContact::Destroy(b2Contact* contact, b2BlockAllocator* allocator) -+{ -+ ((b2CapsuleContact*)contact)->~b2CapsuleContact(); -+ allocator->Free(contact, sizeof(b2CapsuleContact)); -+} -+ -+b2CapsuleContact::b2CapsuleContact(b2Fixture* fixtureA, b2Fixture* fixtureB) -+ : b2Contact(fixtureA, fixtureB) -+{ -+ b2Assert(m_fixtureA->GetType() == b2Shape::e_capsule); -+ b2Assert(m_fixtureB->GetType() == b2Shape::e_capsule); -+} -+ -+void b2CapsuleContact::Evaluate(b2Manifold* manifold, const b2Transform& xfA, const b2Transform& xfB) -+{ -+ b2Body* bodyA = m_fixtureA->GetBody(); -+ b2Body* bodyB = m_fixtureB->GetBody(); -+ -+ b2CapsuleShape* capsule1 = (b2CapsuleShape*)m_fixtureA->GetShape(); -+ b2CapsuleShape* capsule2 = (b2CapsuleShape*)m_fixtureB->GetShape(); -+ -+ b2PolygonShape polygon1, polygon2; -+ polygon1.SetAsEdge(capsule1->m_vertices[0], capsule1->m_vertices[1]); -+ polygon2.SetAsEdge(capsule2->m_vertices[0], capsule2->m_vertices[1]); -+ polygon1.m_radius = capsule1->m_radius; -+ polygon2.m_radius = capsule2->m_radius; -+ -+ b2CollidePolygons( manifold, -+ &polygon1, xfA, -+ &polygon2, xfB); -+} -Index: Box2D/Box2D/Dynamics/Contacts/b2CapsuleContact.h -=================================================================== ---- Box2D/Box2D/Dynamics/Contacts/b2CapsuleContact.h (revision 0) -+++ Box2D/Box2D/Dynamics/Contacts/b2CapsuleContact.h (revision 0) -@@ -0,0 +1,38 @@ -+/* -+* Copyright (c) 2006-2009 Erin Catto http://www.gphysics.com -+* -+* This software is provided 'as-is', without any express or implied -+* warranty. In no event will the authors be held liable for any damages -+* arising from the use of this software. -+* Permission is granted to anyone to use this software for any purpose, -+* including commercial applications, and to alter it and redistribute it -+* freely, subject to the following restrictions: -+* 1. The origin of this software must not be misrepresented; you must not -+* claim that you wrote the original software. If you use this software -+* in a product, an acknowledgment in the product documentation would be -+* appreciated but is not required. -+* 2. Altered source versions must be plainly marked as such, and must not be -+* misrepresented as being the original software. -+* 3. This notice may not be removed or altered from any source distribution. -+*/ -+ -+#ifndef B2_CAPSULE_CONTACT_H -+#define B2_CAPSULE_CONTACT_H -+ -+#include -+ -+class b2BlockAllocator; -+ -+class b2CapsuleContact : public b2Contact -+{ -+public: -+ static b2Contact* Create(b2Fixture* fixtureA, b2Fixture* fixtureB, b2BlockAllocator* allocator); -+ static void Destroy(b2Contact* contact, b2BlockAllocator* allocator); -+ -+ b2CapsuleContact(b2Fixture* fixtureA, b2Fixture* fixtureB); -+ ~b2CapsuleContact() {} -+ -+ void Evaluate(b2Manifold* manifold, const b2Transform& xfA, const b2Transform& xfB); -+}; -+ -+#endif -Index: Box2D/Box2D/Dynamics/Contacts/b2Contact.cpp -=================================================================== ---- Box2D/Box2D/Dynamics/Contacts/b2Contact.cpp (revision 70) -+++ Box2D/Box2D/Dynamics/Contacts/b2Contact.cpp (working copy) -@@ -17,7 +17,10 @@ - */ - - #include -+#include -+#include - #include -+#include - #include - #include - #include -@@ -38,6 +41,10 @@ - AddType(b2CircleContact::Create, b2CircleContact::Destroy, b2Shape::e_circle, b2Shape::e_circle); - AddType(b2PolygonAndCircleContact::Create, b2PolygonAndCircleContact::Destroy, b2Shape::e_polygon, b2Shape::e_circle); - AddType(b2PolygonContact::Create, b2PolygonContact::Destroy, b2Shape::e_polygon, b2Shape::e_polygon); -+ -+ AddType(b2CapsuleContact::Create, b2CapsuleContact::Destroy, b2Shape::e_capsule, b2Shape::e_capsule); -+ AddType(b2CapsuleAndCircleContact::Create, b2CapsuleAndCircleContact::Destroy, b2Shape::e_capsule, b2Shape::e_circle); -+ AddType(b2PolygonAndCapsuleContact::Create, b2PolygonAndCapsuleContact::Destroy, b2Shape::e_polygon, b2Shape::e_capsule); - } - - void b2Contact::AddType(b2ContactCreateFcn* createFcn, b2ContactDestroyFcn* destoryFcn, -Index: Box2D/Box2D/Dynamics/Contacts/b2PolygonAndCapsuleContact.cpp -=================================================================== ---- Box2D/Box2D/Dynamics/Contacts/b2PolygonAndCapsuleContact.cpp (revision 0) -+++ Box2D/Box2D/Dynamics/Contacts/b2PolygonAndCapsuleContact.cpp (revision 0) -@@ -0,0 +1,63 @@ -+/* -+* Copyright (c) 2006-2009 Erin Catto http://www.gphysics.com -+* -+* This software is provided 'as-is', without any express or implied -+* warranty. In no event will the authors be held liable for any damages -+* arising from the use of this software. -+* Permission is granted to anyone to use this software for any purpose, -+* including commercial applications, and to alter it and redistribute it -+* freely, subject to the following restrictions: -+* 1. The origin of this software must not be misrepresented; you must not -+* claim that you wrote the original software. If you use this software -+* in a product, an acknowledgment in the product documentation would be -+* appreciated but is not required. -+* 2. Altered source versions must be plainly marked as such, and must not be -+* misrepresented as being the original software. -+* 3. This notice may not be removed or altered from any source distribution. -+*/ -+ -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+ -+#include -+ -+b2Contact* b2PolygonAndCapsuleContact::Create(b2Fixture* fixtureA, b2Fixture* fixtureB, b2BlockAllocator* allocator) -+{ -+ void* mem = allocator->Allocate(sizeof(b2PolygonAndCapsuleContact)); -+ return new (mem) b2PolygonAndCapsuleContact(fixtureA, fixtureB); -+} -+ -+void b2PolygonAndCapsuleContact::Destroy(b2Contact* contact, b2BlockAllocator* allocator) -+{ -+ ((b2PolygonAndCapsuleContact*)contact)->~b2PolygonAndCapsuleContact(); -+ allocator->Free(contact, sizeof(b2PolygonAndCapsuleContact)); -+} -+ -+b2PolygonAndCapsuleContact::b2PolygonAndCapsuleContact(b2Fixture* fixtureA, b2Fixture* fixtureB) -+ : b2Contact(fixtureA, fixtureB) -+{ -+ b2Assert(m_fixtureA->GetType() == b2Shape::e_polygon); -+ b2Assert(m_fixtureB->GetType() == b2Shape::e_capsule); -+} -+ -+void b2PolygonAndCapsuleContact::Evaluate(b2Manifold* manifold, const b2Transform& xfA, const b2Transform& xfB) -+{ -+ b2Body* bodyA = m_fixtureA->GetBody(); -+ b2Body* bodyB = m_fixtureB->GetBody(); -+ -+ b2CapsuleShape* capsule = (b2CapsuleShape*)m_fixtureB->GetShape(); -+ -+ b2PolygonShape polygon; -+ polygon.SetAsEdge(capsule->m_vertices[0], capsule->m_vertices[1]); -+ polygon.m_radius = capsule->m_radius; -+ -+ b2CollidePolygons( manifold, -+ (b2PolygonShape*)m_fixtureA->GetShape(), xfA, -+ &polygon, xfB); -+} -Index: Box2D/Box2D/Dynamics/Contacts/b2PolygonAndCapsuleContact.h -=================================================================== ---- Box2D/Box2D/Dynamics/Contacts/b2PolygonAndCapsuleContact.h (revision 0) -+++ Box2D/Box2D/Dynamics/Contacts/b2PolygonAndCapsuleContact.h (revision 0) -@@ -0,0 +1,38 @@ -+/* -+* Copyright (c) 2006-2009 Erin Catto http://www.gphysics.com -+* -+* This software is provided 'as-is', without any express or implied -+* warranty. In no event will the authors be held liable for any damages -+* arising from the use of this software. -+* Permission is granted to anyone to use this software for any purpose, -+* including commercial applications, and to alter it and redistribute it -+* freely, subject to the following restrictions: -+* 1. The origin of this software must not be misrepresented; you must not -+* claim that you wrote the original software. If you use this software -+* in a product, an acknowledgment in the product documentation would be -+* appreciated but is not required. -+* 2. Altered source versions must be plainly marked as such, and must not be -+* misrepresented as being the original software. -+* 3. This notice may not be removed or altered from any source distribution. -+*/ -+ -+#ifndef B2_POLYGON_AND_CAPSULE_CONTACT_H -+#define B2_POLYGON_AND_CAPSULE_CONTACT_H -+ -+#include -+ -+class b2BlockAllocator; -+ -+class b2PolygonAndCapsuleContact : public b2Contact -+{ -+public: -+ static b2Contact* Create(b2Fixture* fixtureA, b2Fixture* fixtureB, b2BlockAllocator* allocator); -+ static void Destroy(b2Contact* contact, b2BlockAllocator* allocator); -+ -+ b2PolygonAndCapsuleContact(b2Fixture* fixtureA, b2Fixture* fixtureB); -+ ~b2PolygonAndCapsuleContact() {} -+ -+ void Evaluate(b2Manifold* manifold, const b2Transform& xfA, const b2Transform& xfB); -+}; -+ -+#endif -Index: Box2D/Testbed/Framework/Render.cpp -=================================================================== ---- Box2D/Testbed/Framework/Render.cpp (revision 70) -+++ Box2D/Testbed/Framework/Render.cpp (working copy) -@@ -110,6 +110,83 @@ - glEnd(); - } - -+void DebugDraw::DrawCapsule(const b2Vec2& p1, const b2Vec2& p2, float32 radius, const b2Color& color) -+{ -+ b2Vec2 displacement = p2 - p1; -+ displacement.Normalize(); -+ float32 startingAngle = atan2f(displacement.y, displacement.x) + b2_pi / 2; -+ -+ const float32 k_segments = 8.0f; -+ const float32 k_increment = b2_pi / k_segments; -+ float32 theta = startingAngle; -+ glColor3f(color.r, color.g, color.b); -+ glBegin(GL_LINE_LOOP); -+ for (int32 i = 0; i < k_segments; ++i) -+ { -+ b2Vec2 v = p1 + radius * b2Vec2(cosf(theta), sinf(theta)); -+ glVertex2f(v.x, v.y); -+ theta += k_increment; -+ } -+ for (int32 i = 0; i < k_segments; ++i) -+ { -+ b2Vec2 v = p2 + radius * b2Vec2(cosf(theta), sinf(theta)); -+ glVertex2f(v.x, v.y); -+ theta += k_increment; -+ } -+ glEnd(); -+} -+ -+void DebugDraw::DrawSolidCapsule(const b2Vec2& p1, const b2Vec2& p2, float32 radius, const b2Color& color) -+{ -+ b2Vec2 displacement = p2 - p1; -+ displacement.Normalize(); -+ float32 startingAngle = atan2f(displacement.y, displacement.x) + b2_pi / 2; -+ -+ const float32 k_segments = 8.0f; -+ const float32 k_increment = b2_pi / k_segments; -+ float32 theta = startingAngle; -+ glEnable(GL_BLEND); -+ glBlendFunc (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); -+ glColor4f(0.5f * color.r, 0.5f * color.g, 0.5f * color.b, 0.5f); -+ glBegin(GL_TRIANGLE_FAN); -+ for (int32 i = 0; i < k_segments; ++i) -+ { -+ b2Vec2 v = p1 + radius * b2Vec2(cosf(theta), sinf(theta)); -+ glVertex2f(v.x, v.y); -+ theta += k_increment; -+ } -+ for (int32 i = 0; i < k_segments; ++i) -+ { -+ b2Vec2 v = p2 + radius * b2Vec2(cosf(theta), sinf(theta)); -+ glVertex2f(v.x, v.y); -+ theta += k_increment; -+ } -+ glEnd(); -+ glDisable(GL_BLEND); -+ -+ theta = startingAngle; -+ glColor4f(color.r, color.g, color.b, 1.0f); -+ glBegin(GL_LINE_LOOP); -+ for (int32 i = 0; i < k_segments; ++i) -+ { -+ b2Vec2 v = p1 + radius * b2Vec2(cosf(theta), sinf(theta)); -+ glVertex2f(v.x, v.y); -+ theta += k_increment; -+ } -+ for (int32 i = 0; i < k_segments; ++i) -+ { -+ b2Vec2 v = p2 + radius * b2Vec2(cosf(theta), sinf(theta)); -+ glVertex2f(v.x, v.y); -+ theta += k_increment; -+ } -+ glEnd(); -+ -+ glBegin(GL_LINES); -+ glVertex2f(p1.x, p1.y); -+ glVertex2f(p2.x, p2.y); -+ glEnd(); -+} -+ - void DebugDraw::DrawSegment(const b2Vec2& p1, const b2Vec2& p2, const b2Color& color) - { - glColor3f(color.r, color.g, color.b); -Index: Box2D/Testbed/Framework/Render.h -=================================================================== ---- Box2D/Testbed/Framework/Render.h (revision 70) -+++ Box2D/Testbed/Framework/Render.h (working copy) -@@ -36,6 +36,10 @@ - - void DrawSolidCircle(const b2Vec2& center, float32 radius, const b2Vec2& axis, const b2Color& color); - -+ void DrawCapsule(const b2Vec2& p1, const b2Vec2& p2, float32 radius, const b2Color& color); -+ -+ void DrawSolidCapsule(const b2Vec2& p1, const b2Vec2& p2, float32 radius, const b2Color& color); -+ - void DrawSegment(const b2Vec2& p1, const b2Vec2& p2, const b2Color& color); - - void DrawTransform(const b2Transform& xf); -Index: Box2D/Testbed/Tests/PolyShapes.h -=================================================================== ---- Box2D/Testbed/Tests/PolyShapes.h (revision 70) -+++ Box2D/Testbed/Tests/PolyShapes.h (working copy) -@@ -74,6 +74,19 @@ - m_debugDraw->DrawPolygon(vertices, vertexCount, color); - } - break; -+ -+ case b2Shape::e_capsule: -+ { -+ b2CapsuleShape* capsule = (b2CapsuleShape*)fixture->GetShape(); -+ -+ b2Vec2 p1 = b2Mul(xf, capsule->m_vertices[0]); -+ b2Vec2 p2 = b2Mul(xf, capsule->m_vertices[1]); -+ float32 radius = capsule->m_radius; -+ -+ m_debugDraw->DrawCapsule(p1, p2, radius, color); -+ } -+ break; -+ - } - } - -@@ -163,6 +176,14 @@ - m_circle.m_radius = 0.5f; - } - -+ { -+ m_capsules[0].SetByExtentsX(0.5f, 0.5f); -+ } -+ -+ { -+ m_capsules[1].SetByExtentsY(0.1f, 1.8f, b2Vec2(0.0f, 1.0f), 0.0f); -+ } -+ - m_bodyIndex = 0; - memset(m_bodies, 0, sizeof(m_bodies)); - } -@@ -197,7 +218,7 @@ - fd.friction = 0.3f; - m_bodies[m_bodyIndex]->CreateFixture(&fd); - } -- else -+ else if (index == 4) - { - b2FixtureDef fd; - fd.shape = &m_circle; -@@ -206,6 +227,15 @@ - - m_bodies[m_bodyIndex]->CreateFixture(&fd); - } -+ else -+ { -+ b2FixtureDef fd; -+ fd.shape = m_capsules + (index - 5); -+ fd.density = 1.0f; -+ fd.friction = 0.3f; -+ -+ m_bodies[m_bodyIndex]->CreateFixture(&fd); -+ } - - m_bodyIndex = (m_bodyIndex + 1) % k_maxBodies; - } -@@ -232,6 +262,8 @@ - case '3': - case '4': - case '5': -+ case '6': -+ case '7': - Create(key - '1'); - break; - -@@ -270,7 +302,7 @@ - b2Color color(0.4f, 0.7f, 0.8f); - m_debugDraw.DrawCircle(callback.m_circle.m_p, callback.m_circle.m_radius, color); - -- m_debugDraw.DrawString(5, m_textLine, "Press 1-5 to drop stuff"); -+ m_debugDraw.DrawString(5, m_textLine, "Press 1-7 to drop stuff"); - m_textLine += 15; - m_debugDraw.DrawString(5, m_textLine, "Press 'a' to (de)activate some bodies"); - m_textLine += 15; -@@ -287,6 +319,7 @@ - b2Body* m_bodies[k_maxBodies]; - b2PolygonShape m_polygons[4]; - b2CircleShape m_circle; -+ b2CapsuleShape m_capsules[2]; - }; - - #endif -Index: Box2D/Testbed/Tests/RayCast.h -=================================================================== ---- Box2D/Testbed/Tests/RayCast.h (revision 70) -+++ Box2D/Testbed/Tests/RayCast.h (working copy) -@@ -211,6 +211,14 @@ - m_circle.m_radius = 0.5f; - } - -+ { -+ m_capsules[0].SetByExtentsX(0.5f, 0.5f); -+ } -+ -+ { -+ m_capsules[1].SetByExtentsY(0.1f, 1.8f, b2Vec2(0.0f, 1.0f), 0.0f); -+ } -+ - m_bodyIndex = 0; - memset(m_bodies, 0, sizeof(m_bodies)); - -@@ -251,7 +259,7 @@ - fd.friction = 0.3f; - m_bodies[m_bodyIndex]->CreateFixture(&fd); - } -- else -+ else if (index == 4) - { - b2FixtureDef fd; - fd.shape = &m_circle; -@@ -259,6 +267,14 @@ - - m_bodies[m_bodyIndex]->CreateFixture(&fd); - } -+ else -+ { -+ b2FixtureDef fd; -+ fd.shape = m_capsules + (index - 5); -+ fd.friction = 0.3f; -+ -+ m_bodies[m_bodyIndex]->CreateFixture(&fd); -+ } - - m_bodyIndex = (m_bodyIndex + 1) % e_maxBodies; - } -@@ -285,6 +301,8 @@ - case '3': - case '4': - case '5': -+ case '6': -+ case '7': - Create(key - '1'); - break; - -@@ -311,7 +329,7 @@ - void Step(Settings* settings) - { - Test::Step(settings); -- m_debugDraw.DrawString(5, m_textLine, "Press 1-5 to drop stuff, m to change the mode"); -+ m_debugDraw.DrawString(5, m_textLine, "Press 1-7 to drop stuff, m to change the mode"); - m_textLine += 15; - m_debugDraw.DrawString(5, m_textLine, "Mode = %d", m_mode); - m_textLine += 15; -@@ -385,6 +403,7 @@ - int32 m_userData[e_maxBodies]; - b2PolygonShape m_polygons[4]; - b2CircleShape m_circle; -+ b2CapsuleShape m_capsules[2]; - - float32 m_angle; - diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/AABB.cpp b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/AABB.cpp deleted file mode 100644 index bb9c0ac..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/AABB.cpp +++ /dev/null @@ -1,32 +0,0 @@ -#pragma once - -#include "stdafx.h" -#include "Vector.cpp" - -namespace Box2D -{ - namespace Net - { - public ref class AABB - { - public: - Vector ^lowerBound, ^upperBound; - - bool IsValid() - { - return getAABB().IsValid(); - } - - AABB(Vector^ min, Vector^ max) : lowerBound(gcnew Vector(min)), upperBound(gcnew Vector(max)) { } - AABB() : lowerBound(gcnew Vector()), upperBound(gcnew Vector()) { } - - b2AABB getAABB() - { - b2AABB returnme; - returnme.lowerBound = lowerBound->getVec2(); - returnme.upperBound = upperBound->getVec2(); - return returnme; - } - }; - } -} diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/AssemblyInfo.cpp b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/AssemblyInfo.cpp deleted file mode 100644 index e24ee84..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/AssemblyInfo.cpp +++ /dev/null @@ -1,40 +0,0 @@ -#include "stdafx.h" - -using namespace System; -using namespace System::Reflection; -using namespace System::Runtime::CompilerServices; -using namespace System::Runtime::InteropServices; -using namespace System::Security::Permissions; - -// -// General Information about an assembly is controlled through the following -// set of attributes. Change these attribute values to modify the information -// associated with an assembly. -// -[assembly:AssemblyTitleAttribute("Box2DNet")]; -[assembly:AssemblyDescriptionAttribute("A .NET wrapper for the Box2D physics library")]; -[assembly:AssemblyConfigurationAttribute("")]; -[assembly:AssemblyCompanyAttribute("")]; -[assembly:AssemblyProductAttribute("Box2DNet")]; -[assembly:AssemblyCopyrightAttribute("Copyright (c) Jay Lemmon 2008")]; -[assembly:AssemblyTrademarkAttribute("")]; -[assembly:AssemblyCultureAttribute("")]; - -// -// Version information for an assembly consists of the following four values: -// -// Major Version -// Minor Version -// Build Number -// Revision -// -// You can specify all the value or you can default the Revision and Build Numbers -// by using the '*' as shown below: - -[assembly:AssemblyVersionAttribute("1.0.*")]; - -[assembly:ComVisible(false)]; - -[assembly:CLSCompliantAttribute(true)]; - -[assembly:SecurityPermission(SecurityAction::RequestMinimum, UnmanagedCode = true)]; diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/Body.cpp b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/Body.cpp deleted file mode 100644 index b8d897c..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/Body.cpp +++ /dev/null @@ -1,243 +0,0 @@ -#pragma once - -#include "Stdafx.h" -#include "Vector.cpp" -#include "Shape.cpp" -#include "ShapeDef.cpp" - -namespace Box2D -{ - namespace Net - { - /// - /// A rigid body. Internal computation are done in terms - /// of the center of mass position. The center of mass may - /// be offset from the body's origin. - /// - public ref class Body - { - internal: - b2Body *body; - Body(b2Body *bodyRef) : body(bodyRef) { } - public: - - /// - /// Set the position of the body's origin and rotation (radians). - /// This breaks any contacts and wakes the other bodies. - /// - void SetXForm(Vector^ position, float32 rotation) - { - body->SetXForm(position->getVec2(), rotation); - } - - /// - /// Get the position of the body's origin. The body's origin does not - /// necessarily coincide with the center of mass. It depends on how the - /// shapes are created. - /// - XForm^ GetXForm() - { - return gcnew XForm(body->GetXForm()); - } - - ///Accesses the linear velocity of the center of mass. - property Vector^ LinearVelocity - { - Vector^ get() - { - return gcnew Vector(body->GetLinearVelocity()); - } - - void set(Vector^ value) - { - body->SetLinearVelocity(value->getVec2()); - } - } - - ///Accesses the angular velocity. - property float32 AngularVelocity - { - float32 get() - { - return body->GetAngularVelocity(); - } - - void set(float32 value) - { - body->SetAngularVelocity(value); - } - } - - /// Apply a force at a world point. Additive. - void ApplyForce(Vector^ Force, Vector^ Point) - { - body->ApplyForce(Force->getVec2(), Point->getVec2()); - } - - /// Apply a torque. Additive. - void ApplyTorque(float32 Torque) - { - body->ApplyTorque(Torque); - } - - /// Apply an impulse at a point. This immediately modifies the velocity. - void ApplyImpulse(Vector^ Impulse, Vector^ Point) - { - body->ApplyImpulse(Impulse->getVec2(), Point->getVec2()); - } - - ///Accesses the Mass. - property float32 Mass - { - float32 get() - { - return body->GetMass(); - } - } - - ///Accesses the Mass. - property float32 Inertia - { - float32 get() - { - return body->GetInertia(); - } - } - - /// - /// Get the world coordinates of a point give the local coordinates - /// relative to the body's center of mass. - /// - Vector^ GetWorldPoint(Vector^ LocalPoint) - { - return gcnew Vector(body->GetWorldPoint(LocalPoint->getVec2())); - } - - /// - /// Get the world coordinates of a vector given the local coordinates. - /// - Vector^ GetWorldVector(Vector^ LocalVector) - { - return gcnew Vector(body->GetWorldVector(LocalVector->getVec2())); - } - - /// - /// Returns a local point relative to the center of mass given a world point. - /// - Vector^ GetLocalPoint(Vector^ WorldPoint) - { - return gcnew Vector(body->GetLocalPoint(WorldPoint->getVec2())); - } - - /// - /// Returns a local vector given a world vector. - /// - Vector^ GetLocalVector(Vector^ WorldVector) - { - return gcnew Vector(body->GetLocalVector(WorldVector->getVec2())); - } - - ///Is this body static (immovable) - property bool Static - { - bool get() - { - return body->IsStatic(); - } - } - - ///Is this body frozen - property bool Frozen - { - bool get() - { - return body->IsFrozen(); - } - } - - ///Is this body sleeping - property bool Sleeping - { - bool get() - { - return body->IsSleeping(); - } - } - - ///You can disable sleeping on this particular body. - property bool AllowSleeping - { - bool get() - { - return body->IsSleeping(); - } - - void set(bool value) - { - body->AllowSleeping(value); - } - } - - property bool Bullet - { - bool get() - { - return body->IsBullet(); - } - - void set(bool value) - { - body->SetBullet(value); - } - } - - void WakeUp() - { - body->WakeUp(); - } - - /// Get the list of all shapes attached to this body. - property IList^ Shapes - { - IList^ get() - { - List^ list = gcnew List(); - for(b2Shape *shape = body->GetShapeList(); shape; shape = shape->GetNext()) - list->Add(gcnew Shape(shape)); - - return list; - } - } - - void CreateShape(ShapeDef^ def) - { - body->CreateShape(def->def); - } - - void DestroyShape(Shape^ shape) - { - body->DestroyShape(shape->shape); - } - - void SetMassFromShapes() - { - body->SetMassFromShapes(); - } - - //TODO: - //void* GetUserData(); - //const b2Mat22& GetRotationMatrix() const; - }; - } -} - -/* -TODO: - -public: - // Get the list of all contacts attached to this body. - b2ContactNode* GetContactList(); - - // Get the list of all joints attached to this body. - b2JointNode* GetJointList(); -*/ diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/BodyDef.cpp b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/BodyDef.cpp deleted file mode 100644 index 4d10e16..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/BodyDef.cpp +++ /dev/null @@ -1,168 +0,0 @@ -#pragma once - -#include "stdafx.h" -#include "Vector.cpp" -#include "ShapeDef.cpp" - -using namespace System::Collections::Generic; - -namespace Box2D -{ - namespace Net - { - /// The type of body. - public enum class BodyType - { - e_staticBody = ::b2BodyDef::e_staticBody, ///< A static body should not move and has infinite mass. - e_dynamicBody = ::b2BodyDef::e_dynamicBody ///< A regular moving body. - }; - - public ref class BodyDef - { - internal: - b2BodyDef *def; - - public: - BodyDef() : def(new b2BodyDef()) { } - virtual ~BodyDef() - { - delete def; - } - - property Vector^ Position - { - Vector^ get() - { - return gcnew Vector(def->position); - } - - void set(Vector^ value) - { - def->position = value->getVec2(); - } - } - - property float32 Angle - { - float32 get() - { - return def->angle; - } - - void set(float32 value) - { - def->angle = value; - } - } - - property float32 LinearDamping - { - float32 get() - { - return def->linearDamping; - } - - void set(float32 value) - { - def->linearDamping = value; - } - } - - property float32 AngularDamping - { - float32 get() - { - return def->angularDamping; - } - - void set(float32 value) - { - def->angularDamping = value; - } - } - - property bool AllowSleep - { - bool get() - { - return def->allowSleep; - } - - void set(bool value) - { - def->allowSleep = value; - } - } - - property bool IsBullet - { - bool get() - { - return def->isBullet; - } - - void set(bool value) - { - def->isBullet = value; - } - } - - property bool IsSleeping - { - bool get() - { - return def->isSleeping; - } - - void set(bool value) - { - def->isSleeping = value; - } - } - - property bool FixedRotation - { - bool get() - { - return def->fixedRotation; - } - - void set(bool value) - { - def->fixedRotation = value; - } - } - - property BodyType BodyType - { - Box2D::Net::BodyType get() - { - return (Box2D::Net::BodyType)def->type; - } - - void set(Box2D::Net::BodyType value) - { - def->type = ((::b2BodyDef::Type)value); - } - } - - //TODO: - /*property Object^ UserData - { - Object^ get() - { - Object^ ReturnMe; - - System::Runtime::InteropServices::Marshal::PtrToStructure((System::IntPtr)def->userData, ReturnMe); - - return ReturnMe; - } - - void set(Object^ value) - { - def->userData = value; - } - }*/ - }; - } -} diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/Box2D.Net.vcproj b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/Box2D.Net.vcproj deleted file mode 100644 index 7cf8da9..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/Box2D.Net.vcproj +++ /dev/null @@ -1,291 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/Contact.cpp b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/Contact.cpp deleted file mode 100644 index 18e37c8..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/Contact.cpp +++ /dev/null @@ -1,53 +0,0 @@ -#pragma once - -#include "stdafx.h" -#include "Shape.cpp" -#include "Manifold.cpp" - -namespace Box2D -{ - namespace Net - { - public ref class Contact - { - internal: - b2Contact *contact; - Contact(b2Contact *contactRef) : contact(contactRef) { } - - public: - property Shape^ Shape1 - { - Shape^ get() - { - return gcnew Shape(contact->GetShape1()); - } - } - - property Shape^ Shape2 - { - Shape^ get() - { - return gcnew Shape(contact->GetShape2()); - } - } - - Contact^ GetNext() - { - return gcnew Contact(contact->GetNext()); - } - - Manifold^ GetManifolds() - { - return gcnew Manifold(contact->GetManifolds()); - } - - property int ManifoldCount - { - int get() - { - return contact->GetManifoldCount(); - } - } - }; - } -} diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/Delegates.cpp b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/Delegates.cpp deleted file mode 100644 index 72f4b36..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/Delegates.cpp +++ /dev/null @@ -1,28 +0,0 @@ -#pragma once - -#include "stdafx.h" -#include "Joint.cpp" -#include "Body.cpp" - -namespace Box2D -{ - namespace Net - { - /// - /// If a body is destroyed, then any joints attached to it are also destroyed. - /// This prevents memory leaks, but you may unexpectedly be left with an - /// orphaned joint pointer. - /// Box2D will notify you when a joint is implicitly destroyed. - /// It is NOT called if you directly destroy a joint. - /// DO NOT modify the Box2D world inside this callback. - /// - public delegate void NotifyJointDestroyed(Joint); - - /// - /// Return true if collision calculations should be performed between shape1 and shape2 - /// Box2D has a default implementation for this, so only add a new delegate if you - /// want to override the default behavior. - /// - public delegate bool CollisionFilter(Shape shape1, Shape shape2); - } -} diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/Joint.cpp b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/Joint.cpp deleted file mode 100644 index 854ce5e..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/Joint.cpp +++ /dev/null @@ -1,106 +0,0 @@ -#pragma once - -#include "stdafx.h" -#include "Body.cpp" -#include "JointDef.cpp" - -namespace Box2D -{ - namespace Net - { - public ref class Joint - { - internal: - b2Joint *joint; - Joint(b2Joint *jointRef) : joint(jointRef) { } - public: - - property JointType JointType - { - Box2D::Net::JointType get() - { - return (Box2D::Net::JointType) joint->GetType(); - } - } - - property Body^ Body1 - { - Body^ get() - { - return gcnew Body(joint->GetBody1()); - } - } - - property Body^ Body2 - { - Body^ get() - { - return gcnew Body(joint->GetBody2()); - } - } - - property Vector^ Anchor1 - { - Vector^ get() - { - return gcnew Vector(joint->GetAnchor1()); - } - } - - property Vector^ Anchor2 - { - Vector^ get() - { - return gcnew Vector(joint->GetAnchor2()); - } - } - - Vector^ GetReactionForce() - { - return gcnew Vector(joint->GetReactionForce()); - } - - float32 GetReactionTorque() - { - return joint->GetReactionTorque(); - } - - Joint^ GetNext() - { - return gcnew Joint(joint->GetNext()); - } - - //TODO: - /* - void* GetUserData(); - */ - }; - - public ref class MouseJoint : public Joint - { - internal: - b2MouseJoint *mouseJoint; - MouseJoint(b2MouseJoint *joint) : Joint(joint), mouseJoint(joint) { } - public: - MouseJoint(Joint^ joint) : Joint(joint->joint), mouseJoint(0) - { - if(joint->JointType == Box2D::Net::JointType::e_mouseJoint && - reinterpret_cast(joint->joint)) - { - mouseJoint = reinterpret_cast(joint->joint); - } - else - { - throw gcnew System::Exception("Attempting to convert a Joint to a MouseJoint, " - "but the joint is not a mouse joint."); - } - } - - void SetTarget(Vector^ Target) - { - mouseJoint->SetTarget(Target->getVec2()); - } - - }; - } -} diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/JointDef.cpp b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/JointDef.cpp deleted file mode 100644 index 86f1840..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/JointDef.cpp +++ /dev/null @@ -1,178 +0,0 @@ -#pragma once - -#include "stdafx.h" -#include "Body.cpp" -#include "Vector.cpp" - -using namespace System::Runtime::InteropServices; - -namespace Box2D -{ - namespace Net - { - //TODO: is there a way to automatically include the b2JointType as an enum here? - public enum class JointType - { - e_unknownJoint = ::e_unknownJoint, - e_revoluteJoint = ::e_revoluteJoint, - e_prismaticJoint = ::e_prismaticJoint, - - e_distanceJoint = ::e_distanceJoint, - e_pulleyJoint = ::e_pulleyJoint, - e_mouseJoint = ::e_mouseJoint, - e_gearJoint = ::e_gearJoint - }; - - public ref class JointDef - { - internal: - b2JointDef *def; - JointDef() : def(new b2JointDef()) { } - JointDef(b2JointDef *justBuilt) : def(justBuilt) { } - virtual ~JointDef() - { - delete def; - } - - public: - property JointType Type - { - JointType get() - { - return (JointType)def->type; - } - - void set(JointType value) - { - def->type = (b2JointType)value; - } - } - - property Object^ UserData - { - Object^ get() - { - return System::Runtime::InteropServices::GCHandle::FromIntPtr((System::IntPtr)def->userData).Target; - } - - void set(Object^ value) - { - GCHandle^ gch = GCHandle::Alloc(value); - def->userData = (void *)gch->ToIntPtr(*gch); - } - } - - property Body^ Body1 - { - Body^ get() - { - return gcnew Body(def->body1); - } - - void set(Body^ value) - { - def->body1 = value->body; - } - } - - property Body^ Body2 - { - Body^ get() - { - return gcnew Body(def->body2); - } - - void set(Body^ value) - { - def->body2 = value->body; - } - } - - property bool CollideConnected - { - bool get() - { - return def->collideConnected; - } - - void set(bool value) - { - def->collideConnected = value; - } - } - }; - - public ref class MouseJointDef : public JointDef - { - internal: - b2MouseJointDef *mouseJoint; - public: - MouseJointDef() : JointDef(mouseJoint = new b2MouseJointDef()) { } - - property Vector^ Target - { - Vector^ get() - { - return gcnew Vector(mouseJoint->target); - } - - void set(Vector^ value) - { - mouseJoint->target = value->getVec2(); - } - } - - property float32 MaxForce - { - float32 get() - { - return mouseJoint->maxForce; - } - - void set(float32 value) - { - mouseJoint->maxForce = value; - } - } - - property float32 FrequencyHz - { - float32 get() - { - return mouseJoint->frequencyHz; - } - - void set(float32 value) - { - mouseJoint->frequencyHz = value; - } - } - - property float32 DampingRatio - { - float32 get() - { - return mouseJoint->dampingRatio; - } - - void set(float32 value) - { - mouseJoint->dampingRatio = value; - } - } - - property float32 TimeStep - { - float32 get() - { - return mouseJoint->timeStep; - } - - void set(float32 value) - { - mouseJoint->timeStep = value; - } - } - }; - } -} diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/Manifold.cpp b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/Manifold.cpp deleted file mode 100644 index 51b77fd..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/Manifold.cpp +++ /dev/null @@ -1,44 +0,0 @@ -#pragma once - -#include "stdafx.h" -#include "Vector.cpp" -//#include "ContactPoint.cpp" -#include "ManifoldPoint.cpp" - -using namespace System::Collections::Generic; - -namespace Box2D -{ - namespace Net - { - public ref class Manifold - { - internal: - b2Manifold *fold; - Manifold(b2Manifold *foldRef) : fold(foldRef) { } - - public: - property Vector^ Normal - { - Vector^ get() - { - return gcnew Vector(fold->normal); - } - } - - property IList^ Points - { - IList^ get() - { - //TODO: implement - List^ list = gcnew List; - - for(int x = 0; x < fold->pointCount; ++x) - list->Add(gcnew ManifoldPoint(&fold->points[x])); - - return list; - } - } - }; - } -} diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/ManifoldPoint.cpp b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/ManifoldPoint.cpp deleted file mode 100644 index dc83906..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/ManifoldPoint.cpp +++ /dev/null @@ -1,100 +0,0 @@ -#pragma once - -#include "stdafx.h" -#include "Vector.cpp" - -namespace Box2D -{ - namespace Net - { - //TODO: is this class really necessary for the public interface? - public ref class ManifoldPoint - { - internal: - b2ManifoldPoint *point; - ManifoldPoint(b2ManifoldPoint *pointRef) : point(pointRef) { } - public: - - property Vector^ LocalPoint1 - { - Vector^ get() - { - return gcnew Vector(point->localPoint1); - } - - void set(Vector^ value) - { - point->localPoint1 = value->getVec2(); - } - } - - property Vector^ LocalPoint2 - { - Vector^ get() - { - return gcnew Vector(point->localPoint2); - } - - void set(Vector^ value) - { - point->localPoint2 = value->getVec2(); - } - } - - property float32 Separation - { - float32 get() - { - return point->separation; - } - - void set(float32 value) - { - point->separation = value; - } - } - - property float32 NormalForce - { - float32 get() - { - return point->normalForce; - } - - void set(float32 value) - { - point->normalForce = value; - } - } - - property float32 TangentForce - { - float32 get() - { - return point->tangentForce; - } - - void set(float32 value) - { - point->tangentForce = value; - } - } - - //TODO: marshall b2ContactID - /* - property b2ContactID ID - { - b2ContactID get() - { - return point->id; - } - - void set(b2ContactID value) - { - point->id = value; - } - } - */ - }; - } -} diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/MassData.cpp b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/MassData.cpp deleted file mode 100644 index 4f7dccc..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/MassData.cpp +++ /dev/null @@ -1,64 +0,0 @@ -#pragma once - -#include "stdafx.h" -#include "Vector.cpp" - -namespace Box2D -{ - namespace Net - { - public ref class MassData - { - internal: - bool DeleteWhenDone; - b2MassData *data; - MassData(b2MassData *dataRef) : data(dataRef), DeleteWhenDone(false) { } - public: - MassData() : data(new b2MassData()), DeleteWhenDone(true) { } - virtual ~MassData() - { - if(DeleteWhenDone) - delete data; - } - - property float32 Mass - { - float32 get() - { - return data->mass; - } - - void set(float32 value) - { - data->mass = value; - } - } - - property float32 I - { - float32 get() - { - return data->I; - } - - void set(float32 value) - { - data->I = value; - } - } - - property Vector^ Center - { - Vector^ get() - { - return gcnew Vector(data->center); - } - - void set(Vector^ value) - { - data->center = value->getVec2(); - } - } - }; - } -} diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/Matrix.cpp b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/Matrix.cpp deleted file mode 100644 index 2730fc8..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/Matrix.cpp +++ /dev/null @@ -1,94 +0,0 @@ -#pragma once - -#include "Stdafx.h" -#include "Vector.cpp" - -namespace Box2D -{ - namespace Net - { - public ref class Matrix - { - internal: - Matrix(const b2Mat22 &matrix) : col1(gcnew Vector(matrix.col1)), col2(gcnew Vector(matrix.col2)) { } - b2Mat22 getMat22() - { - return b2Mat22(col1->getVec2(), col2->getVec2()); - } - public: - Vector ^col1, ^col2; - - Matrix() : col1(gcnew Vector()), col2(gcnew Vector()) {} - Matrix(Vector^ c1, Vector^ c2) : col1(gcnew Vector(c1)), col2(gcnew Vector(c2)) { } - explicit Matrix(float32 angle) - { - Set(angle); - } - - void Set(Vector^ c1, Vector^ c2) - { - col1->X = c1->X; - col1->Y = c1->Y; - - col2->X = c2->X; - col2->Y = c2->Y; - } - - void Set(float32 angle) - { - float32 c = cosf(angle), s = sinf(angle); - col1->X = c; col2->X = -s; - col1->Y = s; col2->Y = c; - } - - void SetIdentity() - { - col1->X = 1; col2->X = 0; - col1->Y = 0; col2->Y = 1; - } - - static Vector^ operator * (Matrix^ mat, Vector^ a) - { - return gcnew Vector(b2Mul(mat->getMat22(), a->getVec2())); - } - }; - } -} - -/* -struct b2Mat22 -{ - void SetZero() - { - col1.x = 0.0f; col2.x = 0.0f; - col1.y = 0.0f; col2.y = 0.0f; - } - - b2Mat22 Invert() const - { - float32 a = col1.x, b = col2.x, c = col1.y, d = col2.y; - b2Mat22 B; - float32 det = a * d - b * c; - b2Assert(det != 0.0f); - det = 1.0f / det; - B.col1.x = det * d; B.col2.x = -det * b; - B.col1.y = -det * c; B.col2.y = det * a; - return B; - } - - // Solve A * x = b - b2Vec2 Solve(const b2Vec2& b) const - { - float32 a11 = col1.x, a12 = col2.x, a21 = col1.y, a22 = col2.y; - float32 det = a11 * a22 - a12 * a21; - b2Assert(det != 0.0f); - det = 1.0f / det; - b2Vec2 x; - x.x = det * (a22 * b.x - a12 * b.y); - x.y = det * (a11 * b.y - a21 * b.x); - return x; - } - - b2Vec2 col1, col2; -}; -*/ diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/RevoluteJoint.cpp b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/RevoluteJoint.cpp deleted file mode 100644 index f674150..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/RevoluteJoint.cpp +++ /dev/null @@ -1,190 +0,0 @@ -#pragma once - -#include "stdafx.h" -#include "Joint.cpp" -#include "JointDef.cpp" - -namespace Box2D -{ - namespace Net - { - public ref class RevoluteJointDef : public JointDef - { - public: - RevoluteJointDef() : JointDef(new b2RevoluteJointDef()) { } - - property Vector^ LocalAnchor1 - { - Vector^ get() - { - return gcnew Vector(reinterpret_cast(def)->localAnchor1); - } - - void set(Vector^ value) - { - reinterpret_cast(def)->localAnchor1 = value->getVec2(); - } - } - - property Vector^ LocalAnchor2 - { - Vector^ get() - { - return gcnew Vector(reinterpret_cast(def)->localAnchor2); - } - - void set(Vector^ value) - { - reinterpret_cast(def)->localAnchor2 = value->getVec2(); - } - } - - property float32 LowerAngle - { - float32 get() - { - return reinterpret_cast(def)->lowerAngle; - } - - void set(float32 value) - { - reinterpret_cast(def)->lowerAngle = value; - } - } - - property float32 UpperAngle - { - float32 get() - { - return reinterpret_cast(def)->upperAngle; - } - - void set(float32 value) - { - reinterpret_cast(def)->upperAngle = value; - } - } - - property float32 MotorTorque - { - float32 get() - { - return reinterpret_cast(def)->maxMotorTorque; - } - - void set(float32 value) - { - reinterpret_cast(def)->maxMotorTorque = value; - } - } - - property float32 MotorSpeed - { - float32 get() - { - return reinterpret_cast(def)->motorSpeed; - } - - void set(float32 value) - { - reinterpret_cast(def)->motorSpeed = value; - } - } - - property bool EnableLimit - { - bool get() - { - return reinterpret_cast(def)->enableLimit; - } - - void set(bool value) - { - reinterpret_cast(def)->enableLimit = value; - } - } - - property bool EnableMotor - { - bool get() - { - return reinterpret_cast(def)->enableMotor; - } - - void set(bool value) - { - reinterpret_cast(def)->enableMotor = value; - } - } - - void Initialize(Body^ body1, Body^ body2, Vector^ Anchor) - { - reinterpret_cast(def)->Initialize(body1->body, body2->body, Anchor->getVec2()); - } - }; - - public ref class RevoluteJoint : public Joint - { - internal: - RevoluteJoint(b2RevoluteJoint *jointRef) : Joint(jointRef) { } - - public: - property Vector^ Anchor1 - { - Vector^ get() - { - return gcnew Vector(reinterpret_cast(joint)->GetAnchor1()); - } - } - - property Vector^ Anchor2 - { - Vector^ get() - { - return gcnew Vector(reinterpret_cast(joint)->GetAnchor2()); - } - } - - Vector^ GetReactionForce() - { - return gcnew Vector(reinterpret_cast(joint)->GetReactionForce()); - } - - float32 GetReactionTorque() - { - return (reinterpret_cast(joint)->GetReactionTorque()); - } - - property float32 JointAngle - { - float32 get() - { - return (reinterpret_cast(joint)->GetJointAngle()); - } - } - - property float32 JointSpeed - { - float32 get() - { - return (reinterpret_cast(joint)->GetJointSpeed()); - } - } - - float32 GetMotorTorque() - { - return reinterpret_cast(joint)->GetMotorTorque(); - } - - void SetMotorSpeed(float32 speed) - { - reinterpret_cast(joint)->SetMotorSpeed(speed); - } - - void SetMotorTorque(float32 torque) - { - reinterpret_cast(joint)->SetMaxMotorTorque(torque); - } - }; - } -} diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/Shape.cpp b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/Shape.cpp deleted file mode 100644 index 99b25bf..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/Shape.cpp +++ /dev/null @@ -1,153 +0,0 @@ -#pragma once - -#include "stdafx.h" -#include "Vector.cpp" -#include "Matrix.cpp" -#include "ShapeType.cpp" -#include "XForm.cpp" - -using namespace System::Collections::Generic; - -namespace Box2D -{ - namespace Net - { - ref class Body; - public ref class Shape - { - internal: - b2Shape *shape; - Shape(b2Shape *shapeRef) : shape(shapeRef) { } - - public: - bool TestPoint(XForm^ xf, Vector^ p) - { - return shape->TestPoint(xf->getXForm(), p->getVec2()); - } - - property ShapeType ShapeType - { - Box2D::Net::ShapeType get() - { - return (Box2D::Net::ShapeType)shape->GetType(); - } - } - - /// - /// Get the parent body of this shape. - /// - property Body^ Body - { - Box2D::Net::Body^ get(); - } - - /* - /// - /// Get the world position. - /// - property Vector^ Position - { - Vector^ get() - { - return gcnew Vector(shape->Get->GetPosition()); - } - } - */ - - /* - property Matrix^ Rotation - { - Matrix^ get() - { - return gcnew Matrix(shape->GetRotationMatrix()); - } - } - */ - - //TODO: - //void* GetUserData(); - // - // Remove and then add proxy from the broad-phase. - // This is used to refresh the collision filters. - //virtual void ResetProxy(b2BroadPhase* broadPhase) = 0; - - /// - /// Get the next shape in the parent body's shape list. - /// - Shape^ GetNext() - { - return gcnew Shape(shape->GetNext()); - } - }; - - public ref class CircleShape : public Shape - { - internal: - b2CircleShape *circleShape; - CircleShape(b2CircleShape *shapeRef) : Shape(shapeRef), circleShape(shapeRef) { } - - public: - CircleShape(Shape^ shape) : Shape(shape->shape), circleShape(0) - { - if(shape->ShapeType == Box2D::Net::ShapeType::e_circleShape && - reinterpret_cast(shape->shape)) - { - circleShape = reinterpret_cast(shape->shape); - } - else - { - throw gcnew System::Exception("Attempting to convert a Shape to a CircleShape," - "but the Shape is not a circle shape."); - } - } - - //TODO: this is not technically part of the "public" interface for CircleShape - property float32 Radius - { - float32 get() - { - return circleShape->m_radius; - } - - void set(float32 value) - { - circleShape->m_radius = value; - } - } - }; - - public ref class PolyShape : public Shape - { - internal: - b2PolygonShape *polyShape; - PolyShape(b2PolygonShape *shapeRef) : Shape(shapeRef), polyShape(shapeRef) { } - - public: - PolyShape(Shape^ shape) : Shape(shape->shape), polyShape(0) - { - if(shape->ShapeType == Box2D::Net::ShapeType::e_polygonShape && - reinterpret_cast(shape->shape)) - { - polyShape = reinterpret_cast(shape->shape); - } - else - { - throw gcnew System::Exception("Attempting to convert a Shape to a PolyShape," - "but the Shape is not a poly shape."); - } - } - - property IList^ Vertices - { - IList^ get() - { - List^ list = gcnew List(); - for(int x = 0; x < polyShape->m_vertexCount; ++x) - list->Add(gcnew Vector(polyShape->m_vertices[x])); - - return list; - } - } - }; - } -} diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/Shape.h b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/Shape.h deleted file mode 100644 index 6c95f72..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/Shape.h +++ /dev/null @@ -1,125 +0,0 @@ -#pragma once - -#include "stdafx.h" - -using namespace System::Collections::Generic; - -namespace Box2D -{ - namespace Net - { - ref class Body; - enum class ShapeType; - ref class Vector; - ref class Matrix; - - public ref class Shape - { - internal: - b2Shape *shape; - Shape(b2Shape *shapeRef) : shape(shapeRef) { } - - public: - bool TestPoint(Vector^ p); - - property ShapeType ShapeType - { - ShapeType get(); - } - - /// - /// Get the parent body of this shape. - /// - property Body^ Body; - - /// - /// Get the world position. - /// - property Vector^ Position; - - property Matrix^ Rotation; - - //TODO: - //void* GetUserData(); - // - // Remove and then add proxy from the broad-phase. - // This is used to refresh the collision filters. - //virtual void ResetProxy(b2BroadPhase* broadPhase) = 0; - - /// - /// Get the next shape in the parent body's shape list. - /// - Shape^ GetNext(); - }; - - public ref class CircleShape : public Shape - { - internal: - b2CircleShape *circleShape; - CircleShape(b2CircleShape *shapeRef) : Shape(shapeRef), circleShape(shapeRef) { } - - public: - CircleShape(Shape^ shape) : Shape(shape->shape), circleShape(0) - { - if(shape->ShapeType == Box2D::Net::ShapeType::e_circleShape && - reinterpret_cast(shape->shape)) - { - circleShape = reinterpret_cast(shape->shape); - } - else - { - throw gcnew System::Exception("Attempting to convert a Shape to a CircleShape," - "but the Shape is not a circle shape."); - } - } - - //TODO: this is not technically part of the "public" interface for CircleShape - property float32 Radius - { - float32 get() - { - return circleShape->m_radius; - } - - void set(float32 value) - { - circleShape->m_radius = value; - } - } - }; - - public ref class PolyShape : public Shape - { - internal: - b2PolyShape *polyShape; - PolyShape(b2PolyShape *shapeRef) : Shape(shapeRef), polyShape(shapeRef) { } - - public: - PolyShape(Shape^ shape) : Shape(shape->shape), polyShape(0) - { - if(shape->ShapeType == Box2D::Net::ShapeType::e_polyShape && - reinterpret_cast(shape->shape)) - { - polyShape = reinterpret_cast(shape->shape); - } - else - { - throw gcnew System::Exception("Attempting to convert a Shape to a PolyShape," - "but the Shape is not a poly shape."); - } - } - - property IList^ Vertices - { - IList^ get() - { - List^ list = gcnew List(); - for(int x = 0; x < polyShape->m_vertexCount; ++x) - list->Add(gcnew Vector(polyShape->m_vertices[x])); - - return list; - } - } - }; - } -} diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/ShapeDef.cpp b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/ShapeDef.cpp deleted file mode 100644 index 4012074..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/ShapeDef.cpp +++ /dev/null @@ -1,202 +0,0 @@ -#pragma once - -#include "stdafx.h" -#include "MassData.cpp" -#include "ShapeType.cpp" - -using namespace System::Collections::Generic; - -namespace Box2D -{ - namespace Net - { - public ref class ShapeDef - { - internal: - bool DeleteOnDtor; - b2ShapeDef *def; - ShapeDef(b2ShapeDef *defRef) : def(defRef), DeleteOnDtor(false) { } - - //Needs to work for derivative types, too - b2ShapeDef GetShapeDef() - { - return *def; - } - - public: - virtual ~ShapeDef() - { - if(DeleteOnDtor) - delete def; - } - - property ShapeType ShapeType - { - Box2D::Net::ShapeType get() - { - return (Box2D::Net::ShapeType) def->type; - } - - void set(Box2D::Net::ShapeType value) - { - def->type = b2ShapeType(value); - } - } - - property float32 Friction - { - float32 get() - { - return def->friction; - } - - void set(float32 value) - { - def->friction = value; - } - } - - property float32 Restitution - { - float32 get() - { - return def->restitution; - } - - void set(float32 value) - { - def->restitution = value; - } - } - - property float32 Density - { - float32 get() - { - return def->density; - } - - void set(float32 value) - { - def->density = value; - } - } - - /// - /// The collision category bits. Normally you would just set one bit. - /// - property unsigned __int16 CategoryBits - { - unsigned __int16 get() - { - return def->categoryBits; - } - - void set(unsigned __int16 value) - { - def->categoryBits = value; - } - } - - /// - /// The collision mask bits. This states the categories that this - /// shape would accept for collision. - /// - property unsigned __int16 MaskBits - { - unsigned __int16 get() - { - return def->maskBits; - } - - void set(unsigned __int16 value) - { - def->maskBits = value; - } - } - - /// - /// Collision groups allow a certain group of objects to never collide (negative) - /// or always collide (positive). Zero means no collision group. Non-zero group - /// filtering always wins against the mask bits. - /// - property unsigned __int16 GroupIndex - { - unsigned __int16 get() - { - return def->groupIndex; - } - - void set(unsigned __int16 value) - { - def->groupIndex = value; - } - } - - //TODO: - //void* userData; - }; - - public ref class CircleDef : public ShapeDef - { - public: - CircleDef() : ShapeDef(new b2CircleDef()) - { - ShapeDef::DeleteOnDtor = (true); - } - - property float32 Radius - { - float32 get() - { - return reinterpret_cast(def)->radius; - } - - void set(float32 value) - { - reinterpret_cast(def)->radius = value; - } - } - }; - - public ref class PolygonDef : public ShapeDef - { - public: - PolygonDef() : ShapeDef(new b2PolygonDef()) - { - DeleteOnDtor = (true); - } - - void SetAsBox(float X, float Y) - { - reinterpret_cast(def)->SetAsBox(X, Y); - } - - void SetAsBox(float X, float Y, Vector^ Center, float Angle) - { - reinterpret_cast(def)->SetAsBox(X, Y, Center->getVec2(), Angle); - } - - property IList^ Verticies - { - IList^ get() - { - List^ list = gcnew List(); - for(int x = 0; x < reinterpret_cast(def)->vertexCount; ++x) - { - list->Add(gcnew Vector(reinterpret_cast(def)->vertices[x])); - } - return list; - } - - void set(IList^ value) - { - b2PolygonDef* Def = reinterpret_cast(def); - - for(int x = 0; x < value->Count; ++x) - Def->vertices[x] = value[x]->getVec2(); - } - } - }; - } -} diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/ShapeType.cpp b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/ShapeType.cpp deleted file mode 100644 index 1ad5eb1..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/ShapeType.cpp +++ /dev/null @@ -1,18 +0,0 @@ -#pragma once - -#include "stdafx.h" - -namespace Box2D -{ - namespace Net - { - //TODO: is there a way to auto incorporate shape types? - public enum class ShapeType - { - e_unknownShape = ::e_unknownShape, - e_circleShape = ::e_circleShape, - e_polygonShape = ::e_polygonShape, - e_shapeTypeCount = ::e_shapeTypeCount - }; - } -} diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/Stdafx.h b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/Stdafx.h deleted file mode 100644 index fda3bd9..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/Stdafx.h +++ /dev/null @@ -1,8 +0,0 @@ -// stdafx.h : include file for standard system include files, -// or project specific include files that are used frequently, -// but are changed infrequently - -#pragma once - - -#include "Box2D.h" diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/VariousImplementations.cpp b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/VariousImplementations.cpp deleted file mode 100644 index 2977121..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/VariousImplementations.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#pragma once - -#include "stdafx.h" -#include "Shape.cpp" -#include "Body.cpp" - -namespace Box2D -{ - namespace Net - { - Body^ Shape::Body::get() - { - return gcnew Box2D::Net::Body(shape->GetBody()); - } - } -} diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/Vector.cpp b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/Vector.cpp deleted file mode 100644 index bbe9cc0..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/Vector.cpp +++ /dev/null @@ -1,81 +0,0 @@ -#pragma once - -#include "Stdafx.h" - -namespace Box2D -{ - namespace Net - { - public ref class Vector - { - internal: - b2Vec2 getVec2() - { - return b2Vec2(X, Y); - } - - public: - - //TODO: this needs to be read only outside the class, - //because if you have a vector as a get property, and - //try to set the X,Y components, it won't take to the - //original vector: - // - //ie: Shape.Extents.X += 10; - //won't behave like you think it should (or will it?) - float32 X, Y; - - Vector() : X(0), Y(0) { } - Vector(float32 x, float32 y) : X(x), Y(y) { } - Vector(Vector^ other) : X(other->X), Y(other->Y) { } - Vector(const b2Vec2 &other) : X(other.x), Y(other.y) { } - - /* - Vector^ Set(float32 x, float32 y) - { - X = x; - Y = y; - return this; - } - */ - - ///Defines basic vector addition - static Vector^ operator +(Vector^ a, Vector^ b) - { - return gcnew Vector(a->X + b->X, a->Y + b->Y); - } - - ///Negates a vector (that is, returns (-X, -Y) - static Vector^ operator - (Vector^ a) - { - return gcnew Vector(-a->X, -a->Y); - } - - ///Defines basic vector subtraction - static Vector^ operator - (Vector^ a, Vector^ b) - { - return gcnew Vector(a->X - b->X, a->Y - b->Y); - } - - ///Scalar multiplication for a vector - static Vector^ operator * (Vector^ a, float32 b) - { - return gcnew Vector(a->X * b, a->Y * b); - } - - /* - static Vector^ operator = (Vector^ a, Vector^ b) - { - a.X = b.X; - a.Y = b.Y; - } - */ - - ///Returns a string representation of this vector - virtual System::String^ ToString() override - { - return gcnew System::String("<" + X + ", " + Y + ">"); - } - }; - } -} diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/World.cpp b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/World.cpp deleted file mode 100644 index 4f83468..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/World.cpp +++ /dev/null @@ -1,162 +0,0 @@ -#pragma once - -#include "Stdafx.h" -#include "AABB.cpp" -#include "Body.cpp" -#include "BodyDef.cpp" -#include "Joint.cpp" -#include "JointDef.cpp" -#include "Contact.cpp" - -namespace Box2D -{ - namespace Net - { - public ref class World - { - b2World *world; - public: - - World(AABB^ worldAABB, Vector^ gravity, bool doSleep) : world(new b2World( - worldAABB->getAABB(), gravity->getVec2(), doSleep)) { } - - ~World() - { - delete world; - } - - /// Create rigid body from a definition - Body^ CreateBody(BodyDef^ def) - { - return gcnew Body(world->CreateBody(def->def)); - } - - /// - /// Destroy rigid bodies. Destruction is deferred until the the next call to Step. - /// This is done so that bodies may be destroyed while you iterate through the contact list. - /// - void DestroyBody(Body^ body) - { - world->DestroyBody(body->body); - } - - /// - /// The world provides a single ground body with no collision shapes. You - /// can use this to simplify the creation of joints. - /// - Body^ GetGroundBody() - { - return gcnew Body(world->GetGroundBody()); - } - - void Step(float32 timeStep, int32 iterations) - { - world->Step(timeStep, iterations); - } - - Joint^ CreateJoint(JointDef^ def) - { - return gcnew Joint(world->CreateJoint(def->def)); - } - - void DestroyJoint(Joint^ joint) - { - world->DestroyJoint(joint->joint); - } - - property IList^ Bodies - { - IList^ get() - { - List^ list = gcnew List(); - for(b2Body *body = world->GetBodyList(); body; body = body->GetNext()) - list->Add(gcnew Body(body)); - - return list; - } - } - - property IList^ Joints - { - IList^ get() - { - List^ list = gcnew List(); - for(b2Joint *joint = world->GetJointList(); joint; joint = joint->GetNext()) - list->Add(gcnew Joint(joint)); - - return list; - } - } - - Joint^ GetJointList() - { - return gcnew Joint(world->GetJointList()); - } - - /// You can use these to iterate over all the bodies, joints, and contacts. - /* - Contact^ GetContactList() - { - return gcnew Contact(world->C>GetContactList()); - } - */ - - /// - /// Query the world for all shapes that potentially overlap the - /// provided AABB. You provide a shape pointer buffer of specified - /// size. The number of shapes found is returned. - /// - IList^ Query(AABB^ aabb) - { - const int32 k_maxCount = 25; - b2Shape* shapes[k_maxCount]; - int32 count = world->Query(aabb->getAABB(), shapes, k_maxCount); - - List^ list = gcnew List(); - for(int x = 0; x < count; ++x) - list->Add(gcnew Shape(shapes[x])); - - return list; - } - - static property bool PositionCorrection - { - bool get() - { - return b2World::s_enablePositionCorrection == 1; - } - - void set(bool value) - { - b2World::s_enablePositionCorrection = value ? 1 : 0; - } - } - - static property bool WarmStarting - { - bool get() - { - return b2World::s_enableWarmStarting == 1; - } - - void set(bool value) - { - b2World::s_enableWarmStarting = value ? 1 : 0; - } - } - }; - } -} - -/* -class b2World -{ -public: - // Register a world listener to receive important events that can - // help prevent your code from crashing. - void SetListener(b2WorldListener* listener); - - // Register a collision filter to provide specific control over collision. - // Otherwise the default filter is used (b2CollisionFilter). - void SetFilter(b2CollisionFilter* filter); -*/ diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/XForm.cpp b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/XForm.cpp deleted file mode 100644 index a28a1fe..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.Net/XForm.cpp +++ /dev/null @@ -1,47 +0,0 @@ -#pragma once - -#include "stdafx.h" -#include "Vector.cpp" -#include "Matrix.cpp" - -namespace Box2D -{ - namespace Net - { - public ref class XForm - { - internal: - b2XForm *xform; - bool DeleteOnDtor; - XForm(b2XForm *XForm) : xform(XForm), DeleteOnDtor(false) { } - XForm(b2XForm XForm) : xform(new b2XForm(XForm)), DeleteOnDtor(false) { } - b2XForm getXForm() - { - return *xform; - } - public: - XForm() : xform(new b2XForm()), DeleteOnDtor(true) { } - ~XForm() - { - if(DeleteOnDtor) - delete xform; - } - - property Vector^ Position - { - Vector^ get() - { - return gcnew Vector(xform->position); - } - } - - property Matrix^ Rotation - { - Matrix^ get() - { - return gcnew Matrix(xform->R); - } - } - }; - } -} diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.XNA.zip b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.XNA.zip deleted file mode 100644 index 2a4f144..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/Box2D.XNA.zip and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/TestBed.Net/MainWindow.Designer.cs b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/TestBed.Net/MainWindow.Designer.cs deleted file mode 100644 index 1506ee2..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/TestBed.Net/MainWindow.Designer.cs +++ /dev/null @@ -1,220 +0,0 @@ -namespace TestBed.Net -{ - partial class MainWindow - { - /// - /// Required designer variable. - /// - private System.ComponentModel.IContainer components = null; - - /// - /// Clean up any resources being used. - /// - /// true if managed resources should be disposed; otherwise, false. - protected override void Dispose(bool disposing) - { - if (disposing && (components != null)) - { - components.Dispose(); - } - base.Dispose(disposing); - } - - #region Windows Form Designer generated code - - /// - /// Required method for Designer support - do not modify - /// the contents of this method with the code editor. - /// - private void InitializeComponent() - { - this.components = new System.ComponentModel.Container(); - this.panel1 = new System.Windows.Forms.Panel(); - this.OpenGLControl = new Tao.Platform.Windows.SimpleOpenGlControl(); - this.panel2 = new System.Windows.Forms.Panel(); - this.label3 = new System.Windows.Forms.Label(); - this.label2 = new System.Windows.Forms.Label(); - this.numericUpDown2 = new System.Windows.Forms.NumericUpDown(); - this.numericUpDown1 = new System.Windows.Forms.NumericUpDown(); - this.checkBox2 = new System.Windows.Forms.CheckBox(); - this.checkBox1 = new System.Windows.Forms.CheckBox(); - this.TestsComboBox = new System.Windows.Forms.ComboBox(); - this.label1 = new System.Windows.Forms.Label(); - this.RedrawTimer = new System.Windows.Forms.Timer(this.components); - this.panel1.SuspendLayout(); - this.panel2.SuspendLayout(); - ((System.ComponentModel.ISupportInitialize)(this.numericUpDown2)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.numericUpDown1)).BeginInit(); - this.SuspendLayout(); - // - // panel1 - // - this.panel1.Controls.Add(this.OpenGLControl); - this.panel1.Location = new System.Drawing.Point(12, 12); - this.panel1.Name = "panel1"; - this.panel1.Size = new System.Drawing.Size(372, 242); - this.panel1.TabIndex = 3; - // - // OpenGLControl - // - this.OpenGLControl.AccumBits = ((byte)(0)); - this.OpenGLControl.AutoCheckErrors = true; - this.OpenGLControl.AutoFinish = true; - this.OpenGLControl.AutoMakeCurrent = true; - this.OpenGLControl.AutoSwapBuffers = true; - this.OpenGLControl.BackColor = System.Drawing.Color.Black; - this.OpenGLControl.ColorBits = ((byte)(32)); - this.OpenGLControl.DepthBits = ((byte)(16)); - this.OpenGLControl.Location = new System.Drawing.Point(106, 62); - this.OpenGLControl.Name = "OpenGLControl"; - this.OpenGLControl.Size = new System.Drawing.Size(137, 103); - this.OpenGLControl.StencilBits = ((byte)(0)); - this.OpenGLControl.TabIndex = 1; - this.OpenGLControl.PreviewKeyDown += new System.Windows.Forms.PreviewKeyDownEventHandler(this.OpenGLControl_PreviewKeyDown); - this.OpenGLControl.MouseDown += new System.Windows.Forms.MouseEventHandler(this.OpenGLControl_MouseDown); - this.OpenGLControl.MouseMove += new System.Windows.Forms.MouseEventHandler(this.OpenGLControl_MouseMove); - this.OpenGLControl.MouseUp += new System.Windows.Forms.MouseEventHandler(this.OpenGLControl_MouseUp); - // - // panel2 - // - this.panel2.Controls.Add(this.label3); - this.panel2.Controls.Add(this.label2); - this.panel2.Controls.Add(this.numericUpDown2); - this.panel2.Controls.Add(this.numericUpDown1); - this.panel2.Controls.Add(this.checkBox2); - this.panel2.Controls.Add(this.checkBox1); - this.panel2.Controls.Add(this.TestsComboBox); - this.panel2.Controls.Add(this.label1); - this.panel2.Location = new System.Drawing.Point(390, 12); - this.panel2.Name = "panel2"; - this.panel2.Size = new System.Drawing.Size(170, 242); - this.panel2.TabIndex = 4; - // - // label3 - // - this.label3.AutoSize = true; - this.label3.Location = new System.Drawing.Point(18, 81); - this.label3.Name = "label3"; - this.label3.Size = new System.Drawing.Size(32, 13); - this.label3.TabIndex = 10; - this.label3.Text = "Hertz"; - // - // label2 - // - this.label2.AutoSize = true; - this.label2.Location = new System.Drawing.Point(18, 55); - this.label2.Name = "label2"; - this.label2.Size = new System.Drawing.Size(50, 13); - this.label2.TabIndex = 9; - this.label2.Text = "Iterations"; - // - // numericUpDown2 - // - this.numericUpDown2.Location = new System.Drawing.Point(71, 79); - this.numericUpDown2.Name = "numericUpDown2"; - this.numericUpDown2.Size = new System.Drawing.Size(71, 20); - this.numericUpDown2.TabIndex = 8; - this.numericUpDown2.Value = new decimal(new int[] { - 60, - 0, - 0, - 0}); - // - // numericUpDown1 - // - this.numericUpDown1.Location = new System.Drawing.Point(71, 53); - this.numericUpDown1.Name = "numericUpDown1"; - this.numericUpDown1.Size = new System.Drawing.Size(71, 20); - this.numericUpDown1.TabIndex = 7; - this.numericUpDown1.Value = new decimal(new int[] { - 60, - 0, - 0, - 0}); - // - // checkBox2 - // - this.checkBox2.AutoSize = true; - this.checkBox2.Checked = true; - this.checkBox2.CheckState = System.Windows.Forms.CheckState.Checked; - this.checkBox2.Location = new System.Drawing.Point(21, 128); - this.checkBox2.Name = "checkBox2"; - this.checkBox2.Size = new System.Drawing.Size(93, 17); - this.checkBox2.TabIndex = 6; - this.checkBox2.Text = "Warm Starting"; - this.checkBox2.UseVisualStyleBackColor = true; - // - // checkBox1 - // - this.checkBox1.AutoSize = true; - this.checkBox1.Checked = true; - this.checkBox1.CheckState = System.Windows.Forms.CheckState.Checked; - this.checkBox1.Location = new System.Drawing.Point(21, 105); - this.checkBox1.Name = "checkBox1"; - this.checkBox1.Size = new System.Drawing.Size(114, 17); - this.checkBox1.TabIndex = 5; - this.checkBox1.Text = "Position Correction"; - this.checkBox1.UseVisualStyleBackColor = true; - // - // TestsComboBox - // - this.TestsComboBox.FormattingEnabled = true; - this.TestsComboBox.Location = new System.Drawing.Point(21, 26); - this.TestsComboBox.Name = "TestsComboBox"; - this.TestsComboBox.Size = new System.Drawing.Size(121, 21); - this.TestsComboBox.TabIndex = 3; - // - // label1 - // - this.label1.AutoSize = true; - this.label1.Location = new System.Drawing.Point(67, 10); - this.label1.Name = "label1"; - this.label1.Size = new System.Drawing.Size(33, 13); - this.label1.TabIndex = 4; - this.label1.Text = "Tests"; - // - // RedrawTimer - // - this.RedrawTimer.Enabled = true; - this.RedrawTimer.Interval = 30; - this.RedrawTimer.Tag = ""; - this.RedrawTimer.Tick += new System.EventHandler(this.RedrawTimer_Tick); - // - // MainWindow - // - this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); - this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.ClientSize = new System.Drawing.Size(572, 457); - this.Controls.Add(this.panel2); - this.Controls.Add(this.panel1); - this.Name = "MainWindow"; - this.Text = "MainWindow"; - this.Resize += new System.EventHandler(this.MainWindow_Resize); - this.Load += new System.EventHandler(this.MainWindow_Load); - this.panel1.ResumeLayout(false); - this.panel2.ResumeLayout(false); - this.panel2.PerformLayout(); - ((System.ComponentModel.ISupportInitialize)(this.numericUpDown2)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.numericUpDown1)).EndInit(); - this.ResumeLayout(false); - - } - - #endregion - - private System.Windows.Forms.Panel panel1; - private Tao.Platform.Windows.SimpleOpenGlControl OpenGLControl; - private System.Windows.Forms.Panel panel2; - private System.Windows.Forms.Label label1; - private System.Windows.Forms.ComboBox TestsComboBox; - private System.Windows.Forms.Timer RedrawTimer; - private System.Windows.Forms.CheckBox checkBox2; - private System.Windows.Forms.CheckBox checkBox1; - private System.Windows.Forms.NumericUpDown numericUpDown2; - private System.Windows.Forms.NumericUpDown numericUpDown1; - private System.Windows.Forms.Label label3; - private System.Windows.Forms.Label label2; - - - } -} diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/TestBed.Net/MainWindow.cs b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/TestBed.Net/MainWindow.cs deleted file mode 100644 index 5d69a0f..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/TestBed.Net/MainWindow.cs +++ /dev/null @@ -1,132 +0,0 @@ -using System; -using System.Collections.Generic; -using System.ComponentModel; -using System.Data; -using System.Drawing; -using System.Text; -using System.Windows.Forms; -using Tao.OpenGl; -using Box2D.Net; -using System.Reflection; - -namespace TestBed.Net -{ - public partial class MainWindow : Form - { - private Settings Settings = new Settings(); - private Test mCurrentTest; - public Test CurrentTest - { - get - { - return mCurrentTest; - } - - set - { - //Call code to reset current test - mCurrentTest = value; - } - } - - public MainWindow() - { - InitializeComponent(); - - //Find all Tests in this module - foreach (Type type in Assembly.GetExecutingAssembly().GetExportedTypes()) - { - Test test = new Test(); - if (type.IsSubclassOf(test.GetType())) - { - TestsComboBox.Items.Add(System.Activator.CreateInstance(type)); - } - } - TestsComboBox.SelectedIndex = 0; - CurrentTest = (Test)System.Activator.CreateInstance(TestsComboBox.SelectedItem.GetType()); - - OpenGLControl.Dock = DockStyle.Fill; - } - - private void MainWindow_Load(object sender, EventArgs e) - { - OpenGLControl.InitializeContexts(); - panel1.Dock = DockStyle.Fill; - panel2.Dock = DockStyle.Right; - MainWindow_Resize(null, null); - RedrawTimer.Interval = (int)(1000.0f / (float)Settings.Hz); - RedrawTimer.Start(); - } - - private void MainWindow_Resize(object sender, EventArgs e) - { - Size size = new Size(OpenGLControl.Size.Width - panel2.Width, OpenGLControl.Size.Height); - Renderer.InitOpenGL(size, CurrentTest.Zoom, CurrentTest.ViewOffset); - Renderer.OpenGLDraw(CurrentTest); - } - - private void OpenGLControl_Paint(object sender, PaintEventArgs e) - { - Renderer.OpenGLDraw(CurrentTest); - } - - private Vector RelativeCoordinates(Point MousePoint) - { - float Height = (float)OpenGLControl.Size.Height; - float Width = (float)(OpenGLControl.Size.Width - panel2.Width); - if(Height <= 0) - Height = 1; - - float AspectRatio = Width / Height; - - Vector relative = new Vector( - (float)MousePoint.X / Width, - (float)MousePoint.Y / Height); - - relative -= new Vector(.5f, .5f); - relative *= 2; - relative.Y *= -1; - relative.X *= AspectRatio; - return relative; - } - - private void OpenGLControl_MouseMove(object sender, MouseEventArgs e) - { - CurrentTest.MouseMove(RelativeCoordinates(e.Location)); - } - - private void OpenGLControl_MouseUp(object sender, MouseEventArgs e) - { - CurrentTest.MouseUp(RelativeCoordinates(e.Location)); - } - - private void OpenGLControl_MouseDown(object sender, MouseEventArgs e) - { - CurrentTest.MouseDown(RelativeCoordinates(e.Location)); - } - - private void RedrawTimer_Tick(object sender, EventArgs e) - { - CurrentTest.Step(Settings); - Renderer.OpenGLDraw(CurrentTest); - OpenGLControl.Draw(); - - int errorCode = 0; - if ((errorCode = Gl.glGetError()) > 0) - { - RedrawTimer.Stop(); - - //Handled by the OpenGLControl - //MessageBox.Show(Glu.gluErrorString(errorCode)); - } - } - - private void OpenGLControl_PreviewKeyDown(object sender, PreviewKeyDownEventArgs e) - { - if(e.KeyCode == Keys.R) - CurrentTest = (Test)System.Activator.CreateInstance(CurrentTest.GetType()); - else - CurrentTest.KeyPress(e.KeyCode); - } - } -} diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/TestBed.Net/MainWindow.resx b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/TestBed.Net/MainWindow.resx deleted file mode 100644 index 901f789..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/TestBed.Net/MainWindow.resx +++ /dev/null @@ -1,123 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - 17, 17 - - diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/TestBed.Net/Program.cs b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/TestBed.Net/Program.cs deleted file mode 100644 index 292c87d..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/TestBed.Net/Program.cs +++ /dev/null @@ -1,30 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Text; -using Box2D.Net; -using System.Windows.Forms; - -namespace TestBed.Net -{ - class Program - { - static void Main(string[] args) - { - Console.Title = "Box2D.Net Test Bed"; - Application.EnableVisualStyles(); - MainWindow win = new MainWindow(); - - Console.Write("Loading the OpenGL display window. Please be patient... "); - - //Show above the console - win.Show(); - win.BringToFront(); //Doesn't bring above the console? - win.TopMost = true; //Hacky fix instead: - win.TopMost = false; - - Console.WriteLine("DONE"); - - Application.Run(win); - } - } -} diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/TestBed.Net/Properties/AssemblyInfo.cs b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/TestBed.Net/Properties/AssemblyInfo.cs deleted file mode 100644 index cdc52d2..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/TestBed.Net/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,33 +0,0 @@ -using System.Reflection; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; - -// General Information about an assembly is controlled through the following -// set of attributes. Change these attribute values to modify the information -// associated with an assembly. -[assembly: AssemblyTitle("TestBed.Net")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("")] -[assembly: AssemblyProduct("TestBed.Net")] -[assembly: AssemblyCopyright("Copyright © 2008")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// Setting ComVisible to false makes the types in this assembly not visible -// to COM components. If you need to access a type in this assembly from -// COM, set the ComVisible attribute to true on that type. -[assembly: ComVisible(false)] - -// The following GUID is for the ID of the typelib if this project is exposed to COM -[assembly: Guid("c08bf3be-733a-49ed-820b-ad4f13ff3a00")] - -// Version information for an assembly consists of the following four values: -// -// Major Version -// Minor Version -// Build Number -// Revision -// -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/TestBed.Net/Renderer.cs b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/TestBed.Net/Renderer.cs deleted file mode 100644 index 8802e6c..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/TestBed.Net/Renderer.cs +++ /dev/null @@ -1,176 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Text; -using Tao.OpenGl; -using Box2D.Net; -using System.Windows.Forms; - -namespace TestBed.Net -{ - static class Renderer - { - public static void InitOpenGL(System.Drawing.Size WidthHeight, float viewZoom, Vector ViewOffset) - { - int Width = WidthHeight.Width; - int Height = WidthHeight.Height; - Height = Height > 0 ? Height : 1; - - Gl.glDisable(Gl.GL_CULL_FACE); - Gl.glClearColor(.5f, .5f, .5f, 1); - - float AspectRatio = (float)Width / (float)Height; - Gl.glViewport(0, 0, Width, Height); - Gl.glMatrixMode(Gl.GL_PROJECTION); - - Gl.glLoadIdentity(); - Glu.gluOrtho2D(-AspectRatio, AspectRatio, -1, 1); - - Gl.glMatrixMode(Gl.GL_MODELVIEW); - } - - public static void OpenGLDraw(Test test) - { - Gl.glClear(Gl.GL_COLOR_BUFFER_BIT); - Gl.glMatrixMode(Gl.GL_MODELVIEW); - Gl.glLoadIdentity(); - - Gl.glScalef(1.0f / test.Zoom, 1.0f / test.Zoom, 1.0f / test.Zoom); - Gl.glTranslatef(-test.ViewOffset.X, -test.ViewOffset.Y, 0); - Gl.glPushMatrix(); - - DrawBodies(test.world.Bodies); - DrawJoints(test.world.Joints); - - Gl.glPopMatrix(); - } - - public static void DrawJoints(IList joints) - { - foreach (Joint joint in joints) - { - DrawJoint(joint, System.Drawing.Color.LawnGreen); - } - } - - public static void DrawBodies(IList bodies) - { - foreach(Body body in bodies) - foreach (Shape shape in body.Shapes) - { - System.Drawing.Color color = System.Drawing.Color.White; - if (body.Static) - color = System.Drawing.Color.LightGreen; //Color(0.5f, 0.9f, 0.5f) - else if (body.Sleeping) - color = System.Drawing.Color.LightBlue; - //else if(body == bomb) - - DrawShape(body.GetXForm(), shape, System.Drawing.Color.White); - } - } - - public static void DrawShape(XForm xform, Shape shape, System.Drawing.Color c) - { - switch (shape.ShapeType) - { - case ShapeType.e_circleShape: - { - Vector x = xform.Position; - float r = (new CircleShape(shape)).Radius; - - float segments = 16; - double increment = 2 * Math.PI / segments; - - Gl.glColor3ub(c.R, c.G, c.B); - Gl.glBegin(Gl.GL_LINE_LOOP); - - for (double i = 0, theta = 0; i < segments; ++i, theta += increment) - { - Vector d = new Vector(r * (float)Math.Cos(theta), r * (float)Math.Sin(theta)); - Vector v = x + d; - Gl.glVertex2f(v.X, v.Y); - } - Gl.glEnd(); - - //Draw a line from the circle's center to it's right side - //so we can visually inspect rotations. - Gl.glBegin(Gl.GL_LINES); - Gl.glVertex2f(x.X, x.Y); - Vector ax = xform.Rotation.col1; - Gl.glVertex2f(x.X + r * ax.X, x.Y + r * ax.Y); - Gl.glEnd(); - } - break; - - case ShapeType.e_polygonShape: - { - Gl.glColor3ub(c.R, c.G, c.B); - Gl.glBegin(Gl.GL_LINE_LOOP); - - foreach (Vector vertex in (new PolyShape(shape)).Vertices) - { - Vector vertprime = xform.Rotation * vertex + xform.Position; - Gl.glVertex2f(vertprime.X, vertprime.Y); - } - - Gl.glEnd(); - } - break; - } - } - - public static void DrawAABB(AABB aabb, System.Drawing.Color c) - { - Gl.glColor3b(c.R, c.G, c.B); - Gl.glBegin(Gl.GL_LINE_LOOP); - Gl.glVertex2f(aabb.lowerBound.X, aabb.lowerBound.Y); - Gl.glVertex2f(aabb.upperBound.X, aabb.lowerBound.Y); - Gl.glVertex2f(aabb.upperBound.X, aabb.upperBound.Y); - Gl.glVertex2f(aabb.lowerBound.X, aabb.upperBound.Y); - Gl.glEnd(); - } - - public static void DrawJoint(Joint joint, System.Drawing.Color color) - { - Body b1 = joint.Body1; - Body b2 = joint.Body2; - Vector x1 = b1.GetXForm().Position; - Vector x2 = b2.GetXForm().Position; - Vector p1 = joint.Anchor2; - Vector p2 = joint.Anchor1; - - Gl.glColor3ub(color.R, color.G, color.B); - Gl.glBegin(Gl.GL_LINES); - - switch (joint.JointType) - { - case JointType.e_mouseJoint: - case JointType.e_distanceJoint: - Gl.glVertex2f(p1.X, p1.Y); - Gl.glVertex2f(p2.X, p2.Y); - break; - - /* - * case JointType.e_pulleyJoint: - { - b2PulleyJoint* pulley = (b2PulleyJoint*)joint; - b2Vec2 s1 = pulley->GetGroundPoint1(); - b2Vec2 s2 = pulley->GetGroundPoint2(); - glVertex2f(s1.x, s1.y); - glVertex2f(p1.x, p1.y); - glVertex2f(s2.x, s2.y); - glVertex2f(p2.x, p2.y); - } - break; - */ - default: - Gl.glVertex2f(x1.X, x1.Y); - Gl.glVertex2f(p1.X, p1.Y); - Gl.glVertex2f(x2.X, x2.Y); - Gl.glVertex2f(p2.X, p2.Y); - break; - } - - Gl.glEnd(); - } - } -} diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/TestBed.Net/Settings.cs b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/TestBed.Net/Settings.cs deleted file mode 100644 index bcd5a0a..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/TestBed.Net/Settings.cs +++ /dev/null @@ -1,20 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Text; - -namespace TestBed.Net -{ - public class Settings - { - public float Hz = 60; - public int IterationCount = 10; - public bool DrawStats = false; - public bool DrawContacts = false; - public bool DrawImpulses = false; - public bool DrawAABBs = false; - public bool DrawPairs = false; - public bool WarmStarting = true; - public bool PositionCorrection = true; - public bool Pause = false; - } -} diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/TestBed.Net/Test.cs b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/TestBed.Net/Test.cs deleted file mode 100644 index e1e5810..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/TestBed.Net/Test.cs +++ /dev/null @@ -1,179 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Text; -using Box2D.Net; -using Tao.OpenGl; - -namespace TestBed.Net -{ - public class Test - { - public World world; - public MouseJoint mouseJoint; - public Body bomb; - public float Zoom = 20; - public Vector ViewOffset = new Vector(); - public Vector Mouse = null; - - public Test() - { - AABB worldAABB = new AABB(new Vector(-100.0f, -100.0f), new Vector(100.0f, 200.0f)); - Vector gravity = new Vector(0, -10); - bool doSleep = true; - world = new World(worldAABB, gravity, doSleep); - - //m_textLine = 30; - // - //m_listener.test = this; - //m_world->SetListener(&m_listener); - } - - public void Step(Settings settings) - { - if(settings.Pause) - return; - - float timeStep = settings.Hz > 0 ? 1.0f / settings.Hz : 0; - - World.WarmStarting = settings.WarmStarting; - World.PositionCorrection = settings.PositionCorrection; - - world.Step(timeStep, settings.IterationCount); - - //m_world->m_broadPhase->Validate(); - } - - Vector RelativeToWorld(Vector Relative) - { - Vector working = Relative; - working *= Zoom; - working -= ViewOffset; - return working; - } - - /// - /// Handles what happens when a user clicks the mouse - /// - /// - /// The position of the mouse click in relative coordinates. - /// - public void MouseDown(Vector point) - { - Vector p = RelativeToWorld(point); - - if (mouseJoint != null) - throw new Exception("ASSERT: mouseJoint should be null"); - - // Make a small box. - Vector d = new Vector(.001f, .001f); - AABB aabb = new AABB(p - d, p + d); - - // Query the world for overlapping shapes. - IList shapes = world.Query(aabb); - Body body = null; - foreach (Shape shape in shapes) - { - if (shape.Body.Static == false && - shape.TestPoint(shape.Body.GetXForm(), p)) - { - body = shape.Body; - break; - } - } - - if (body != null) - { - MouseJointDef md = new MouseJointDef(); - md.Body1 = world.GetGroundBody(); - md.Body2 = body; - md.Target = p; - md.MaxForce = 1000 * body.Mass; - mouseJoint = new MouseJoint(world.CreateJoint(md)); - body.WakeUp(); - } - } - - public void MouseUp(Vector point) - { - Vector p = RelativeToWorld(point); - - if (mouseJoint != null) - { - world.DestroyJoint(mouseJoint); - mouseJoint = null; - } - } - - public void MouseMove(Vector point) - { - Vector p = RelativeToWorld(point); - - if (mouseJoint != null) - mouseJoint.SetTarget(p); - } - - public void KeyPress(System.Windows.Forms.Keys key) - { - switch (key) - { - case System.Windows.Forms.Keys.Space: - LaunchBomb(); - break; - - case System.Windows.Forms.Keys.Left: - ViewOffset.X -= 1; - break; - - case System.Windows.Forms.Keys.Right: - ViewOffset.X += 1; - break; - - case System.Windows.Forms.Keys.Up: - ViewOffset.Y += 1; - break; - - case System.Windows.Forms.Keys.Down: - ViewOffset.Y -= 1; - break; - - case System.Windows.Forms.Keys.X: - Zoom -= 1; - break; - - case System.Windows.Forms.Keys.Z: - Zoom += 1; - break; - } - } - - void LaunchBomb() - { - if (bomb != null) - { - world.DestroyBody(bomb); - bomb = null; - } - - BodyDef bd = new BodyDef(); - bd.BodyType = BodyType.e_dynamicBody; - bd.AllowSleep = true; - Random rand = new Random(); - bd.Position = new Vector((float)rand.NextDouble() * 30 - 15, 30.0f); - bd.IsBullet = true; - bomb = world.CreateBody(bd); - bomb.LinearVelocity = bd.Position * -5; - - CircleDef sd = new CircleDef(); - sd.Radius = 0.3f; - sd.Density = 20.0f; - sd.Restitution = 0.1f; - bomb.CreateShape(sd); - bomb.SetMassFromShapes(); - } - - public override string ToString() - { - return GetType().Name; - } - }; -} diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/TestBed.Net/TestBed.Net.csproj b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/TestBed.Net/TestBed.Net.csproj deleted file mode 100644 index 899018b..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/TestBed.Net/TestBed.Net.csproj +++ /dev/null @@ -1,74 +0,0 @@ - - - Debug - AnyCPU - 8.0.50727 - 2.0 - {B2F62680-048C-46AA-B1B2-7731252E1304} - Exe - Properties - TestBed.Net - TestBed.Net - - - true - full - false - bin\Debug\ - DEBUG;TRACE - prompt - 4 - - - pdbonly - true - bin\Release\ - TRACE - prompt - 4 - - - - - - - - - - - - - - Form - - - MainWindow.cs - - - - - - - - - - - {0E95DBB9-EA97-407B-811C-810B225E79D2} - Box2D.Net - - - - - Designer - MainWindow.cs - - - - - diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/TestBed.Net/Tests/Bridge.cs b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/TestBed.Net/Tests/Bridge.cs deleted file mode 100644 index 43c3ea8..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/TestBed.Net/Tests/Bridge.cs +++ /dev/null @@ -1,59 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Text; -using Box2D.Net; - -namespace TestBed.Net.Tests -{ - public class Bridge : TestBed.Net.Test - { - public Bridge() - { - Body ground; - { - PolygonDef sd = new PolygonDef(); - sd.ShapeType = ShapeType.e_polygonShape; - sd.SetAsBox(50.0f, 10.0f); - - BodyDef bd = new BodyDef(); - bd.Position = new Vector(0, -10); - - ground = world.CreateBody(bd); - ground.CreateShape(sd); - } - - { - PolygonDef sd = new PolygonDef(); - sd.SetAsBox(0.5f, 0.125f); - sd.Density = 20.0f; - sd.Friction = 0.2f; - - BodyDef bd = new BodyDef(); - bd.BodyType = BodyType.e_dynamicBody; - - RevoluteJointDef jd = new RevoluteJointDef(); - const float numPlanks = 30; - - Body prevBody = ground; - - for (float i = 0; i < numPlanks; ++i) - { - bd.Position = new Vector(-14.5f + i, 5); - Body body = world.CreateBody(bd); - body.CreateShape(sd); - body.SetMassFromShapes(); - - Vector anchor = new Vector(-15 + i, 5); - jd.Initialize(prevBody, body, anchor); - world.CreateJoint(jd); - - prevBody = body; - } - - Vector anchor2 = new Vector(-15 + numPlanks, 5); - jd.Initialize(prevBody, ground, anchor2); - world.CreateJoint(jd); - } - } - } -} diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/CMakeLists.txt b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/CMakeLists.txt deleted file mode 100644 index 1ab087d..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/CMakeLists.txt +++ /dev/null @@ -1,36 +0,0 @@ -cmake_minimum_required(VERSION 2.6) - -set(BOX2D_VERSION 2.1.0) -set(BOX2D_BUILD_STATIC true) -set(BOX2D_DIR ../../../Box2D) -subdirs(${BOX2D_DIR}/Box2D) - -project(iPhoneTestbed) - -include_directories(${BOX2D_DIR} ${BOX2D_DIR}/Testbed/Tests) -file(GLOB iPhoneTestbed_Classes_SRCS Classes/*.mm) -source_group(Classes FILES ${iPhoneTestbed_Classes_SRCS}) - -set(CMAKE_OSX_SYSROOT iphoneos) -set(CMAKE_OSX_DEPLOYMENT_TARGET "") -set(CMAKE_OSX_ARCHITECTURES $(ARCHS_STANDARD_32_BIT)) -set(CMAKE_EXE_LINKER_FLAGS "-framework Foundation -framework CoreGraphics -framework QuartzCore -framework OpenGLES -framework UIKit") -set(MACOSX_BUNDLE_PRODUCT_NAME \${PRODUCT_NAME}) -set(MACOSX_BUNDLE_GUI_IDENTIFIER "com.mycompany.\${PRODUCT_NAME:identifier}") - -add_executable(iPhoneTestbed MACOSX_BUNDLE - ${iPhoneTestbed_Classes_SRCS} - main.m -) - -target_link_libraries(iPhoneTestbed Box2D) - -set_target_properties(iPhoneTestbed PROPERTIES MACOSX_BUNDLE_INFO_PLIST Info.plist.in XCODE_ATTRIBUTE_CODE_SIGN_IDENTITY "iPhone Developer") - -set(APP_NAME \${TARGET_BUILD_DIR}/\${FULL_PRODUCT_NAME}) -find_program(IBTOOL ibtool HINTS "/usr/bin" "${OSX_DEVELOPER_ROOT}/usr/bin") -set(NIB MainWindow) -add_custom_command(TARGET iPhoneTestbed POST_BUILD - COMMAND /Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -resolve-src-symlinks Resources/* ${APP_NAME} - COMMAND ${IBTOOL} --errors --warnings --notices --output-format human-readable-text --compile ${iPhoneTestbed_BINARY_DIR}/\${CONFIGURATION}/${PROJECT_NAME}.app/${NIB}.nib ${NIB}.xib -) diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/Classes/Box2DAppDelegate.h b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/Classes/Box2DAppDelegate.h deleted file mode 100644 index f081ba3..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/Classes/Box2DAppDelegate.h +++ /dev/null @@ -1,24 +0,0 @@ -// -// Box2DAppDelegate.h -// Box2D -// -// Box2D iPhone port by Simon Oliver - http://www.simonoliver.com - http://www.handcircus.com -// - -#import -#import "TestEntriesViewController.h" -#import "Delegates.h" - -@class Box2DView; - -@interface Box2DAppDelegate : NSObject { - UIWindow *window; - Box2DView *glView; - TestEntriesViewController *testEntriesView; -} - -@property (nonatomic, retain) IBOutlet UIWindow *window; -@property (nonatomic, retain) IBOutlet Box2DView *glView; - -@end - diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/Classes/Box2DAppDelegate.mm b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/Classes/Box2DAppDelegate.mm deleted file mode 100644 index e04a09e..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/Classes/Box2DAppDelegate.mm +++ /dev/null @@ -1,62 +0,0 @@ -// -// Box2DAppDelegate.m -// Box2D -// -// Box2D iPhone port by Simon Oliver - http://www.simonoliver.com - http://www.handcircus.com -// - -#import -#import "Box2DAppDelegate.h" -#import "Box2DView.h" - -@implementation Box2DAppDelegate - -@synthesize window; -@synthesize glView; - -- (void)applicationDidFinishLaunching:(UIApplication *)application { - [application setStatusBarHidden:true]; - - [glView removeFromSuperview]; - - glView.animationInterval = 1.0 / 60.0; - - testEntriesView=[[TestEntriesViewController alloc] initWithStyle:UITableViewStylePlain]; - [testEntriesView setDelegate:self]; - [glView setDelegate:self]; - - [window addSubview:[testEntriesView view]]; -} - --(void) selectTest:(int) testIndex -{ - [[testEntriesView view] removeFromSuperview]; - [window addSubview:glView]; - [glView startAnimation]; - [glView selectTestEntry:testIndex]; -} - --(void) leaveTest -{ - [glView stopAnimation]; - [glView removeFromSuperview]; - [window addSubview:[testEntriesView view]]; -} - -- (void)applicationWillResignActive:(UIApplication *)application { - glView.animationInterval = 1.0 / 5.0; -} - - -- (void)applicationDidBecomeActive:(UIApplication *)application { - glView.animationInterval = 1.0 / 60.0; -} - - -- (void)dealloc { - [window release]; - [glView release]; - [super dealloc]; -} - -@end diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/Classes/Box2DView.h b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/Classes/Box2DView.h deleted file mode 100644 index 81d50b3..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/Classes/Box2DView.h +++ /dev/null @@ -1,63 +0,0 @@ -// -// Box2DView.h -// Box2D OpenGL View -// -// Box2D iPhone port by Simon Oliver - http://www.simonoliver.com - http://www.handcircus.com -// - - -#import -#import -#import -#import - -#import "iPhoneTest.h" -#import "Delegates.h" - -/* -This class wraps the CAEAGLLayer from CoreAnimation into a convenient UIView subclass. -The view content is basically an EAGL surface you render your OpenGL scene into. -Note that setting the view non-opaque will only work if the EAGL surface has an alpha channel. -*/ -@interface Box2DView : UIView { - -@private - /* The pixel dimensions of the backbuffer */ - GLint backingWidth; - GLint backingHeight; - - EAGLContext *context; - - /* OpenGL names for the renderbuffer and framebuffers used to render to this view */ - GLuint viewRenderbuffer, viewFramebuffer; - - /* OpenGL name for the depth buffer that is attached to viewFramebuffer, if it exists (0 if it does not exist) */ - GLuint depthRenderbuffer; - - NSTimer *animationTimer; - NSTimeInterval animationInterval; - - TestEntry* entry; - Test* test; - - // Position offset and scale - float sceneScale; - CGPoint positionOffset; - CGPoint lastWorldTouch; - CGPoint lastScreenTouch; - - bool panning; - int doubleClickValidCountdown; - - id _delegate; - -} -@property(assign) id delegate; -@property NSTimeInterval animationInterval; - -- (void)startAnimation; -- (void)stopAnimation; -- (void)drawView; --(void) selectTestEntry:(int) testIndex; - -@end diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/Classes/Box2DView.mm b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/Classes/Box2DView.mm deleted file mode 100644 index edbf9ef..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/Classes/Box2DView.mm +++ /dev/null @@ -1,299 +0,0 @@ -// -// Box2DView.mm -// Box2D OpenGL View -// -// Box2D iPhone port by Simon Oliver - http://www.simonoliver.com - http://www.handcircus.com -// - -#import -#import - -#import "Box2DView.h" - -#define USE_DEPTH_BUFFER 0 -#define kAccelerometerFrequency 30 -#define FRAMES_BETWEEN_PRESSES_FOR_DOUBLE_CLICK 10 - -Settings settings; - -// A class extension to declare private methods -@interface Box2DView () - -@property (nonatomic, retain) EAGLContext *context; -@property (nonatomic, assign) NSTimer *animationTimer; - -- (BOOL) createFramebuffer; -- (void) destroyFramebuffer; - -@end - - -@implementation Box2DView - -@synthesize context; -@synthesize animationTimer; -@synthesize animationInterval; -@synthesize delegate=_delegate; - -// You must implement this method -+ (Class)layerClass { - return [CAEAGLLayer class]; -} - - -//The GL view is stored in the nib file. When it's unarchived it's sent -initWithCoder: -- (id)initWithCoder:(NSCoder*)coder { - - if ((self = [super initWithCoder:coder])) { - // Get the layer - CAEAGLLayer *eaglLayer = (CAEAGLLayer *)self.layer; - - eaglLayer.opaque = YES; - eaglLayer.drawableProperties = [NSDictionary dictionaryWithObjectsAndKeys: - [NSNumber numberWithBool:NO], kEAGLDrawablePropertyRetainedBacking, kEAGLColorFormatRGBA8, kEAGLDrawablePropertyColorFormat, nil]; - - context = [[EAGLContext alloc] initWithAPI:kEAGLRenderingAPIOpenGLES1]; - - if (!context || ![EAGLContext setCurrentContext:context]) { - [self release]; - return nil; - } - - animationInterval = 1.0 / 60.0; - sceneScale=10.0f; - positionOffset=CGPointMake(0, 0); - lastWorldTouch=CGPointMake(0, 0); - - [[UIAccelerometer sharedAccelerometer] setUpdateInterval:(1.0 / kAccelerometerFrequency)]; - [[UIAccelerometer sharedAccelerometer] setDelegate:self]; - - //[self setMultipleTouchEnabled:YES]; - } - - - return self; -} - --(void) selectTestEntry:(int) testIndex -{ - // Destroy existing scene - delete test; - - entry = g_testEntries + testIndex; - test = entry->createFcn(); - - doubleClickValidCountdown=0; - - sceneScale=10.0f; - positionOffset=CGPointMake(0, 0); - lastWorldTouch=CGPointMake(0, 0); -} - - - -- (void)drawView { - - - - if (doubleClickValidCountdown>0) doubleClickValidCountdown--; - - [EAGLContext setCurrentContext:context]; - - glBindFramebufferOES(GL_FRAMEBUFFER_OES, viewFramebuffer); - glViewport(0, 0, backingWidth, backingHeight); - - glMatrixMode(GL_PROJECTION); - glLoadIdentity(); - - glOrthof(-sceneScale, sceneScale, -sceneScale*1.5f, sceneScale*1.5f, -1.0f, 1.0f); - - glMatrixMode(GL_MODELVIEW); - glLoadIdentity(); - glTranslatef(positionOffset.x, positionOffset.y,0); - glClearColor(0.0f, 0.0f, 0.0f, 1.0f); - glClear(GL_COLOR_BUFFER_BIT); - - glEnable(GL_BLEND); - glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); - - glEnableClientState(GL_VERTEX_ARRAY); - - test->Step(&settings); - - glBindRenderbufferOES(GL_RENDERBUFFER_OES, viewRenderbuffer); - [context presentRenderbuffer:GL_RENDERBUFFER_OES]; -} - - -- (void)layoutSubviews { - [EAGLContext setCurrentContext:context]; - [self destroyFramebuffer]; - [self createFramebuffer]; - [self drawView]; -} - - -- (BOOL)createFramebuffer { - - glGenFramebuffersOES(1, &viewFramebuffer); - glGenRenderbuffersOES(1, &viewRenderbuffer); - - glBindFramebufferOES(GL_FRAMEBUFFER_OES, viewFramebuffer); - glBindRenderbufferOES(GL_RENDERBUFFER_OES, viewRenderbuffer); - [context renderbufferStorage:GL_RENDERBUFFER_OES fromDrawable:(CAEAGLLayer*)self.layer]; - glFramebufferRenderbufferOES(GL_FRAMEBUFFER_OES, GL_COLOR_ATTACHMENT0_OES, GL_RENDERBUFFER_OES, viewRenderbuffer); - - glGetRenderbufferParameterivOES(GL_RENDERBUFFER_OES, GL_RENDERBUFFER_WIDTH_OES, &backingWidth); - glGetRenderbufferParameterivOES(GL_RENDERBUFFER_OES, GL_RENDERBUFFER_HEIGHT_OES, &backingHeight); - - if (USE_DEPTH_BUFFER) { - glGenRenderbuffersOES(1, &depthRenderbuffer); - glBindRenderbufferOES(GL_RENDERBUFFER_OES, depthRenderbuffer); - glRenderbufferStorageOES(GL_RENDERBUFFER_OES, GL_DEPTH_COMPONENT16_OES, backingWidth, backingHeight); - glFramebufferRenderbufferOES(GL_FRAMEBUFFER_OES, GL_DEPTH_ATTACHMENT_OES, GL_RENDERBUFFER_OES, depthRenderbuffer); - } - - if(glCheckFramebufferStatusOES(GL_FRAMEBUFFER_OES) != GL_FRAMEBUFFER_COMPLETE_OES) { - NSLog(@"failed to make complete framebuffer object %x", glCheckFramebufferStatusOES(GL_FRAMEBUFFER_OES)); - return NO; - } - - return YES; -} - - -- (void)destroyFramebuffer { - - glDeleteFramebuffersOES(1, &viewFramebuffer); - viewFramebuffer = 0; - glDeleteRenderbuffersOES(1, &viewRenderbuffer); - viewRenderbuffer = 0; - - if(depthRenderbuffer) { - glDeleteRenderbuffersOES(1, &depthRenderbuffer); - depthRenderbuffer = 0; - } -} - - -- (void)startAnimation { - self.animationTimer = [NSTimer scheduledTimerWithTimeInterval:animationInterval target:self selector:@selector(drawView) userInfo:nil repeats:YES]; -} - - -- (void)stopAnimation { - self.animationTimer = nil; -} - - -- (void)setAnimationTimer:(NSTimer *)newTimer { - [animationTimer invalidate]; - animationTimer = newTimer; -} - - -- (void)setAnimationInterval:(NSTimeInterval)interval { - - animationInterval = interval; - if (animationTimer) { - [self stopAnimation]; - [self startAnimation]; - } -} - - -- (void)dealloc { - - [self stopAnimation]; - - if ([EAGLContext currentContext] == context) { - [EAGLContext setCurrentContext:nil]; - } - - [context release]; - [super dealloc]; -} - --(CGPoint) screenSpaceToWorldSpace:(CGPoint) screenLocation -{ - screenLocation.x-=160; - screenLocation.y-=240; - screenLocation.x/=160; - screenLocation.y/=160; - screenLocation.x*=sceneScale; - screenLocation.y*=-sceneScale; - - screenLocation.x-=positionOffset.x; - screenLocation.y-=positionOffset.y; - return screenLocation; -} - -- (void) touchesBegan:(NSSet*)touches withEvent:(UIEvent*)event -{ - - if (doubleClickValidCountdown>0) - { - [_delegate leaveTest]; - return; - } - - doubleClickValidCountdown=FRAMES_BETWEEN_PRESSES_FOR_DOUBLE_CLICK; - - - panning=false; - for (UITouch *touch in touches) - { - CGPoint touchLocation=[touch locationInView:self]; - CGPoint worldPosition=[self screenSpaceToWorldSpace:touchLocation]; - //printf("Screen touched %f,%f -> %f,%f\n",touchLocation.x,touchLocation.y,worldPosition.x,worldPosition.y); - lastScreenTouch=touchLocation; - lastWorldTouch=worldPosition; - b2Vec2 p = b2Vec2(lastWorldTouch.x,lastWorldTouch.y); - test->MouseDown(p); - //test->ShiftMouseDown(p); - - if (!test->m_mouseJoint) panning=true; - } -} - -- (void) touchesMoved:(NSSet*)touches withEvent:(UIEvent*)event -{ - for (UITouch *touch in touches) - { - CGPoint touchLocation=[touch locationInView:self]; - CGPoint worldPosition=[self screenSpaceToWorldSpace:touchLocation]; - //printf("Screen touched %f,%f -> %f,%f\n",touchLocation.x,touchLocation.y,worldPosition.x,worldPosition.y); - - - CGPoint screenDistanceMoved=CGPointMake(touchLocation.x-lastScreenTouch.x,touchLocation.y-lastScreenTouch.y); - if (panning) - { - screenDistanceMoved.x/=160; - screenDistanceMoved.y/=160; - screenDistanceMoved.x*=sceneScale; - screenDistanceMoved.y*=-sceneScale; - positionOffset.x+=screenDistanceMoved.x; - positionOffset.y+=screenDistanceMoved.y; - } - - lastScreenTouch=touchLocation; - lastWorldTouch=worldPosition; - test->MouseMove(b2Vec2(lastWorldTouch.x,lastWorldTouch.y)); - - } -} -- (void) touchesEnded:(NSSet*)touches withEvent:(UIEvent*)event -{ - test->MouseUp(b2Vec2(lastWorldTouch.x,lastWorldTouch.y)); -} - -- (void) accelerometer:(UIAccelerometer*)accelerometer didAccelerate:(UIAcceleration*)acceleration -{ - // Only run for valid values - if (acceleration.y!=0 && acceleration.x!=0) - { - if (test) test->SetGravity(acceleration.x,acceleration.y); - } -} - -@end diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/Classes/Delegates.h b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/Classes/Delegates.h deleted file mode 100644 index b4b7976..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/Classes/Delegates.h +++ /dev/null @@ -1,14 +0,0 @@ -/* - * Delegates.h - * Box2D - * - * Box2D iPhone port by Simon Oliver - http://www.simonoliver.com - http://www.handcircus.com - * - * - */ - -@protocol TestSelectDelegate - -(void) selectTest:(int) testIndex; - -(void) leaveTest; - -@end \ No newline at end of file diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/Classes/GLES-Render.h b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/Classes/GLES-Render.h deleted file mode 100644 index 8e02a74..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/Classes/GLES-Render.h +++ /dev/null @@ -1,58 +0,0 @@ -/* -* Copyright (c) 2006-2007 Erin Catto http://www.gphysics.com -* -* iPhone port by Simon Oliver - http://www.simonoliver.com - http://www.handcircus.com -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef RENDER_H -#define RENDER_H - -#import -#import -#import -#import - -#include - -struct b2AABB; - -// This class implements debug drawing callbacks that are invoked -// inside b2World::Step. -class GLESDebugDraw : public b2Draw -{ -public: - void DrawPolygon(const b2Vec2* vertices, int32 vertexCount, const b2Color& color); - - void DrawSolidPolygon(const b2Vec2* vertices, int32 vertexCount, const b2Color& color); - - void DrawCircle(const b2Vec2& center, float32 radius, const b2Color& color); - - void DrawSolidCircle(const b2Vec2& center, float32 radius, const b2Vec2& axis, const b2Color& color); - - void DrawSegment(const b2Vec2& p1, const b2Vec2& p2, const b2Color& color); - - void DrawTransform(const b2Transform& xf); - - void DrawPoint(const b2Vec2& p, float32 size, const b2Color& color); - - void DrawString(int x, int y, const char* string, ...); - - void DrawAABB(b2AABB* aabb, const b2Color& color); -}; - - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/Classes/GLES-Render.mm b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/Classes/GLES-Render.mm deleted file mode 100644 index abf5c57..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/Classes/GLES-Render.mm +++ /dev/null @@ -1,149 +0,0 @@ -/* -* Copyright (c) 2006-2007 Erin Catto http://www.gphysics.com -* -* iPhone port by Simon Oliver - http://www.simonoliver.com - http://www.handcircus.com -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include "GLES-Render.h" - - -#include -#include - -#include - -void GLESDebugDraw::DrawPolygon(const b2Vec2* vertices, int32 vertexCount, const b2Color& color) -{ - glColor4f(color.r, color.g, color.b,1); - glVertexPointer(2, GL_FLOAT, 0, vertices); - glDrawArrays(GL_LINE_LOOP, 0, vertexCount); -} - -void GLESDebugDraw::DrawSolidPolygon(const b2Vec2* vertices, int32 vertexCount, const b2Color& color) -{ - glVertexPointer(2, GL_FLOAT, 0, vertices); - - glColor4f(color.r, color.g, color.b,0.5f); - glDrawArrays(GL_TRIANGLE_FAN, 0, vertexCount); - - glColor4f(color.r, color.g, color.b,1); - glDrawArrays(GL_LINE_LOOP, 0, vertexCount); -} - -void GLESDebugDraw::DrawCircle(const b2Vec2& center, float32 radius, const b2Color& color) -{ - const float32 k_segments = 16.0f; - int vertexCount=16; - const float32 k_increment = 2.0f * b2_pi / k_segments; - float32 theta = 0.0f; - - GLfloat glVertices[vertexCount*2]; - for (int32 i = 0; i < k_segments; ++i) - { - b2Vec2 v = center + radius * b2Vec2(cosf(theta), sinf(theta)); - glVertices[i*2]=v.x; - glVertices[i*2+1]=v.y; - theta += k_increment; - } - - glColor4f(color.r, color.g, color.b,1); - glVertexPointer(2, GL_FLOAT, 0, glVertices); - - glDrawArrays(GL_TRIANGLE_FAN, 0, vertexCount); -} - -void GLESDebugDraw::DrawSolidCircle(const b2Vec2& center, float32 radius, const b2Vec2& axis, const b2Color& color) -{ - const float32 k_segments = 16.0f; - int vertexCount=16; - const float32 k_increment = 2.0f * b2_pi / k_segments; - float32 theta = 0.0f; - - GLfloat glVertices[vertexCount*2]; - for (int32 i = 0; i < k_segments; ++i) - { - b2Vec2 v = center + radius * b2Vec2(cosf(theta), sinf(theta)); - glVertices[i*2]=v.x; - glVertices[i*2+1]=v.y; - theta += k_increment; - } - - glColor4f(color.r, color.g, color.b,0.5f); - glVertexPointer(2, GL_FLOAT, 0, glVertices); - glDrawArrays(GL_TRIANGLE_FAN, 0, vertexCount); - glColor4f(color.r, color.g, color.b,1); - glDrawArrays(GL_LINE_LOOP, 0, vertexCount); - - // Draw the axis line - DrawSegment(center,center+radius*axis,color); -} - -void GLESDebugDraw::DrawSegment(const b2Vec2& p1, const b2Vec2& p2, const b2Color& color) -{ - glColor4f(color.r, color.g, color.b,1); - GLfloat glVertices[] = { - p1.x,p1.y,p2.x,p2.y - }; - glVertexPointer(2, GL_FLOAT, 0, glVertices); - glDrawArrays(GL_LINES, 0, 2); -} - -void GLESDebugDraw::DrawTransform(const b2Transform& xf) -{ - b2Vec2 p1 = xf.position, p2; - const float32 k_axisScale = 0.4f; - - p2 = p1 + k_axisScale * xf.R.col1; - DrawSegment(p1,p2,b2Color(1,0,0)); - - p2 = p1 + k_axisScale * xf.R.col2; - DrawSegment(p1,p2,b2Color(0,1,0)); -} - -void GLESDebugDraw::DrawPoint(const b2Vec2& p, float32 size, const b2Color& color) -{ - glColor4f(color.r, color.g, color.b,1); - glPointSize(size); - GLfloat glVertices[] = { - p.x,p.y - }; - glVertexPointer(2, GL_FLOAT, 0, glVertices); - glDrawArrays(GL_POINTS, 0, 1); - glPointSize(1.0f); -} - -void GLESDebugDraw::DrawString(int x, int y, const char *string, ...) -{ - - /* Unsupported as yet. Could replace with bitmap font renderer at a later date */ -} - -void GLESDebugDraw::DrawAABB(b2AABB* aabb, const b2Color& c) -{ - - glColor4f(c.r, c.g, c.b,1); - - GLfloat glVertices[] = { - aabb->lowerBound.x, aabb->lowerBound.y, - aabb->upperBound.x, aabb->lowerBound.y, - aabb->upperBound.x, aabb->upperBound.y, - aabb->lowerBound.x, aabb->upperBound.y - }; - glVertexPointer(2, GL_FLOAT, 0, glVertices); - glDrawArrays(GL_LINE_LOOP, 0, 8); - -} diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/Classes/TestEntriesViewController.h b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/Classes/TestEntriesViewController.h deleted file mode 100644 index d28a655..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/Classes/TestEntriesViewController.h +++ /dev/null @@ -1,19 +0,0 @@ -// -// TestEntriesViewController.h -// Box2D -// -// Box2D iPhone port by Simon Oliver - http://www.simonoliver.com - http://www.handcircus.com -// - -#import -#import "iPhoneTest.h" -#import "Delegates.h" - -@interface TestEntriesViewController : UITableViewController { - int32 testCount; - id _delegate; -} - -@property(assign) id delegate; - -@end diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/Classes/TestEntriesViewController.mm b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/Classes/TestEntriesViewController.mm deleted file mode 100644 index bb8e1ac..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/Classes/TestEntriesViewController.mm +++ /dev/null @@ -1,75 +0,0 @@ -// -// TestEntriesViewController.m -// Box2D -// -// Box2D iPhone port by Simon Oliver - http://www.simonoliver.com - http://www.handcircus.com -// - -#import "TestEntriesViewController.h" - - -@implementation TestEntriesViewController - -@synthesize delegate=_delegate; - -- (id)initWithStyle:(UITableViewStyle)style { - if (self = [super initWithStyle:style]) { - testCount = 0; - TestEntry* e = g_testEntries; - while (e->createFcn) - { - ++testCount; - ++e; - } - } - return self; -} - -- (void)didReceiveMemoryWarning { - [super didReceiveMemoryWarning]; // Releases the view if it doesn't have a superview - // Release anything that's not essential, such as cached data -} - -#pragma mark Table view methods - -- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView { - return 1; -} - - -// Customize the number of rows in the table view. -- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section { - return testCount; -} - - -// Customize the appearance of table view cells. -- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { - - static NSString *CellIdentifier = @"Cell"; - - UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier]; - if (cell == nil) { - cell = [[[UITableViewCell alloc] initWithFrame:CGRectZero reuseIdentifier:CellIdentifier] autorelease]; - } - - // Set up the cell... - TestEntry* e = g_testEntries; - e+=indexPath.row; - - cell.textLabel.text = [NSString stringWithUTF8String:e->name]; - return cell; -} - - -- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { - [_delegate selectTest:indexPath.row]; -} - -- (void)dealloc { - [super dealloc]; -} - - -@end - diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/Classes/iPhoneTest.h b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/Classes/iPhoneTest.h deleted file mode 100644 index c7c767a..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/Classes/iPhoneTest.h +++ /dev/null @@ -1,189 +0,0 @@ -/* -* Copyright (c) 2006-2007 Erin Catto http://www.gphysics.com -* -* iPhone port by Simon Oliver - http://www.simonoliver.com - http://www.handcircus.com -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - - - -#ifndef TEST_H -#define TEST_H - -#import -#include -#include "GLES-Render.h" - -#include - -class Test; -struct Settings; - -typedef Test* TestCreateFcn(); - -#define RAND_LIMIT 32767 - -/// Random number in range [-1,1] -inline float32 RandomFloat() -{ - float32 r = (float32)(rand() & (RAND_LIMIT)); - r /= RAND_LIMIT; - r = 2.0f * r - 1.0f; - return r; -} - -/// Random floating point number in range [lo, hi] -inline float32 RandomFloat(float32 lo, float32 hi) -{ - float32 r = (float32)(rand() & (RAND_LIMIT)); - r /= RAND_LIMIT; - r = (hi - lo) * r + lo; - return r; -} - -/// Test settings. Some can be controlled in the GUI. -struct Settings -{ - Settings() : - viewCenter(0.0f, 20.0f), - hz(60.0f), - velocityIterations(8), - positionIterations(3), - drawShapes(1), - drawJoints(1), - drawAABBs(0), - drawPairs(0), - drawContactPoints(0), - drawContactNormals(0), - drawContactForces(0), - drawFrictionForces(0), - drawCOMs(0), - drawStats(0), - enableWarmStarting(1), - enableContinuous(1), - enableSubStepping(0), - pause(0), - singleStep(0) - {} - - b2Vec2 viewCenter; - float32 hz; - int32 velocityIterations; - int32 positionIterations; - int32 drawShapes; - int32 drawJoints; - int32 drawAABBs; - int32 drawPairs; - int32 drawContactPoints; - int32 drawContactNormals; - int32 drawContactForces; - int32 drawFrictionForces; - int32 drawCOMs; - int32 drawStats; - int32 enableWarmStarting; - int32 enableContinuous; - int32 enableSubStepping; - int32 pause; - int32 singleStep; -}; - -struct TestEntry -{ - const char *name; - TestCreateFcn *createFcn; -}; - -extern TestEntry g_testEntries[]; -// This is called when a joint in the world is implicitly destroyed -// because an attached body is destroyed. This gives us a chance to -// nullify the mouse joint. -class DestructionListener : public b2DestructionListener - { - public: - void SayGoodbye(b2Fixture* fixture) { B2_NOT_USED(fixture); } - void SayGoodbye(b2Joint* joint); - - Test* test; - }; - -const int32 k_maxContactPoints = 2048; - -struct ContactPoint -{ - b2Fixture* fixtureA; - b2Fixture* fixtureB; - b2Vec2 normal; - b2Vec2 position; - b2PointState state; -}; - -class Test : public b2ContactListener - { - public: - - Test(); - virtual ~Test(); - - void SetGravity(float x,float y); - void SetTextLine(int32 line) { m_textLine = line; } - void DrawTitle(int x, int y, const char *string); - virtual void Step(Settings* settings); - virtual void Keyboard(unsigned char key) { B2_NOT_USED(key); } - void ShiftMouseDown(const b2Vec2& p); - virtual void MouseDown(const b2Vec2& p); - virtual void MouseUp(const b2Vec2& p); - void MouseMove(const b2Vec2& p); - void LaunchBomb(); - void LaunchBomb(const b2Vec2& position, const b2Vec2& velocity); - - void SpawnBomb(const b2Vec2& worldPt); - void CompleteBombSpawn(const b2Vec2& p); - - // Let derived tests know that a joint was destroyed. - virtual void JointDestroyed(b2Joint* joint) { B2_NOT_USED(joint); } - - // Callbacks for derived classes. - virtual void BeginContact(b2Contact* contact) { B2_NOT_USED(contact); } - virtual void EndContact(b2Contact* contact) { B2_NOT_USED(contact); } - virtual void PreSolve(b2Contact* contact, const b2Manifold* oldManifold); - virtual void PostSolve(b2Contact* contact, const b2ContactImpulse* impulse) - { - B2_NOT_USED(contact); - B2_NOT_USED(impulse); - } - - protected: - friend class DestructionListener; - friend class BoundaryListener; - friend class ContactListener; - - b2Body* m_groundBody; - b2AABB m_worldAABB; - ContactPoint m_points[k_maxContactPoints]; - int32 m_pointCount; - DestructionListener m_destructionListener; - GLESDebugDraw m_debugDraw; - int32 m_textLine; - b2World* m_world; - b2Body* m_bomb; - b2MouseJoint* m_mouseJoint; - b2Vec2 m_bombSpawnPoint; - bool m_bombSpawning; - b2Vec2 m_mouseWorld; - int32 m_stepCount; - }; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/Classes/iPhoneTest.mm b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/Classes/iPhoneTest.mm deleted file mode 100644 index faf08df..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/Classes/iPhoneTest.mm +++ /dev/null @@ -1,415 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.gphysics.com -* -* iPhone port by Simon Oliver - http://www.simonoliver.com - http://www.handcircus.com -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include "iPhoneTest.h" -#include "GLES-Render.h" - -#include - -void DestructionListener::SayGoodbye(b2Joint* joint) -{ - if (test->m_mouseJoint == joint) - { - test->m_mouseJoint = NULL; - } - else - { - test->JointDestroyed(joint); - } -} - -Test::Test() -: m_debugDraw() -{ - b2Vec2 gravity; - gravity.Set(0.0f, -10.0f); - bool doSleep = true; - m_world = new b2World(gravity, doSleep); - m_bomb = NULL; - m_textLine = 30; - m_mouseJoint = NULL; - m_pointCount = 0; - - m_destructionListener.test = this; - m_world->SetDestructionListener(&m_destructionListener); - m_world->SetContactListener(this); - m_world->SetDebugDraw(&m_debugDraw); - - m_bombSpawning = false; - - m_stepCount = 0; - - b2BodyDef bodyDef; - m_groundBody = m_world->CreateBody(&bodyDef); -} - -Test::~Test() -{ - // By deleting the world, we delete the bomb, mouse joint, etc. - delete m_world; - m_world = NULL; - -} - -void Test::SetGravity( float x, float y) -{ - float tVectorLength=sqrt(x*x+y*y); - float newGravityX=9.81f*x/tVectorLength; - float newGravityY=9.81f*y/tVectorLength; - m_world->SetGravity(b2Vec2(newGravityX,newGravityY)); -} - -void Test::PreSolve(b2Contact* contact, const b2Manifold* oldManifold) -{ - const b2Manifold* manifold = contact->GetManifold(); - - if (manifold->pointCount == 0) - { - return; - } - - b2Fixture* fixtureA = contact->GetFixtureA(); - b2Fixture* fixtureB = contact->GetFixtureB(); - - b2PointState state1[b2_maxManifoldPoints], state2[b2_maxManifoldPoints]; - b2GetPointStates(state1, state2, oldManifold, manifold); - - b2WorldManifold worldManifold; - contact->GetWorldManifold(&worldManifold); - - for (int32 i = 0; i < manifold->pointCount && m_pointCount < k_maxContactPoints; ++i) - { - ContactPoint* cp = m_points + m_pointCount; - cp->fixtureA = fixtureA; - cp->fixtureB = fixtureB; - cp->position = worldManifold.points[i]; - cp->normal = worldManifold.normal; - cp->state = state2[i]; - ++m_pointCount; - } -} - -void Test::DrawTitle(int x, int y, const char *string) -{ - m_debugDraw.DrawString(x, y, string); -} - -class QueryCallback : public b2QueryCallback -{ -public: - QueryCallback(const b2Vec2& point) - { - m_point = point; - m_fixture = NULL; - } - - bool ReportFixture(b2Fixture* fixture) - { - b2Body* body = fixture->GetBody(); - if (body->GetType() == b2_dynamicBody) - { - bool inside = fixture->TestPoint(m_point); - if (inside) - { - m_fixture = fixture; - - // We are done, terminate the query. - return false; - } - } - - // Continue the query. - return true; - } - - b2Vec2 m_point; - b2Fixture* m_fixture; -}; - -void Test::MouseDown(const b2Vec2& p) -{ - m_mouseWorld = p; - - if (m_mouseJoint != NULL) - { - return; - } - - // Make a small box. - b2AABB aabb; - b2Vec2 d; - d.Set(0.001f, 0.001f); - aabb.lowerBound = p - d; - aabb.upperBound = p + d; - - // Query the world for overlapping shapes. - QueryCallback callback(p); - m_world->QueryAABB(&callback, aabb); - - if (callback.m_fixture) - { - b2Body* body = callback.m_fixture->GetBody(); - b2MouseJointDef md; - md.bodyA = m_groundBody; - md.bodyB = body; - md.target = p; -#ifdef TARGET_FLOAT32_IS_FIXED - md.maxForce = (body->GetMass() < 16.0)? - (1000.0f * body->GetMass()) : float32(16000.0); -#else - md.maxForce = 1000.0f * body->GetMass(); -#endif - m_mouseJoint = (b2MouseJoint*)m_world->CreateJoint(&md); - body->SetAwake(true); - } -} - -void Test::SpawnBomb(const b2Vec2& worldPt) -{ - m_bombSpawnPoint = worldPt; - m_bombSpawning = true; -} - -void Test::CompleteBombSpawn(const b2Vec2& p) -{ - if (m_bombSpawning == false) - { - return; - } - - const float multiplier = 30.0f; - b2Vec2 vel = m_bombSpawnPoint - p; - vel *= multiplier; - LaunchBomb(m_bombSpawnPoint,vel); - m_bombSpawning = false; -} - -void Test::ShiftMouseDown(const b2Vec2& p) -{ - m_mouseWorld = p; - - if (m_mouseJoint != NULL) - { - return; - } - - SpawnBomb(p); -} - -void Test::MouseUp(const b2Vec2& p) -{ - if (m_mouseJoint) - { - m_world->DestroyJoint(m_mouseJoint); - m_mouseJoint = NULL; - } - - if (m_bombSpawning) - { - CompleteBombSpawn(p); - } -} - -void Test::MouseMove(const b2Vec2& p) -{ - m_mouseWorld = p; - - if (m_mouseJoint) - { - m_mouseJoint->SetTarget(p); - } -} - -void Test::LaunchBomb() -{ - b2Vec2 p(RandomFloat(-15.0f, 15.0f), 30.0f); - b2Vec2 v = -5.0f * p; - LaunchBomb(p, v); -} - -void Test::LaunchBomb(const b2Vec2& position, const b2Vec2& velocity) -{ - if (m_bomb) - { - m_world->DestroyBody(m_bomb); - m_bomb = NULL; - } - - b2BodyDef bd; - bd.type = b2_dynamicBody; - bd.position = position; - bd.bullet = true; - m_bomb = m_world->CreateBody(&bd); - m_bomb->SetLinearVelocity(velocity); - - b2CircleShape circle; - circle.m_radius = 0.3f; - - b2FixtureDef fd; - fd.shape = &circle; - fd.density = 20.0f; - fd.restitution = 0.0f; - - b2Vec2 minV = position - b2Vec2(0.3f,0.3f); - b2Vec2 maxV = position + b2Vec2(0.3f,0.3f); - - b2AABB aabb; - aabb.lowerBound = minV; - aabb.upperBound = maxV; - - m_bomb->CreateFixture(&fd); -} - -void Test::Step(Settings* settings) -{ - float32 timeStep = settings->hz > 0.0f ? 1.0f / settings->hz : float32(0.0f); - - if (settings->pause) - { - if (settings->singleStep) - { - settings->singleStep = 0; - } - else - { - timeStep = 0.0f; - } - - m_debugDraw.DrawString(5, m_textLine, "****PAUSED****"); - m_textLine += 15; - } - - uint32 flags = 0; - flags += settings->drawShapes * b2Draw::e_shapeBit; - flags += settings->drawJoints * b2Draw::e_jointBit; - flags += settings->drawAABBs * b2Draw::e_aabbBit; - flags += settings->drawPairs * b2Draw::e_pairBit; - flags += settings->drawCOMs * b2Draw::e_centerOfMassBit; - m_debugDraw.SetFlags(flags); - - m_world->SetWarmStarting(settings->enableWarmStarting > 0); - m_world->SetContinuousPhysics(settings->enableContinuous > 0); - m_world->SetSubStepping(settings->enableSubStepping > 0); - - m_pointCount = 0; - - m_world->Step(timeStep, settings->velocityIterations, settings->positionIterations); - - m_world->DrawDebugData(); - - if (timeStep > 0.0f) - { - ++m_stepCount; - } - - if (settings->drawStats) - { - m_debugDraw.DrawString(5, m_textLine, "bodies/contacts/joints/proxies = %d/%d/%d", - m_world->GetBodyCount(), m_world->GetContactCount(), m_world->GetJointCount(), m_world->GetProxyCount()); - m_textLine += 15; - } - - if (m_mouseJoint) - { - b2Vec2 p1 = m_mouseJoint->GetAnchorB(); - b2Vec2 p2 = m_mouseJoint->GetTarget(); - - glPointSize(4.0f); - glColor4f(0.0f, 1.0f, 0.0f, 1.0f); - GLbyte verts1[2 * 3] = { - p1.x, p1.y, 0.0f, - p2.x, p2.y, 0.0f - }; - glVertexPointer(3, GL_BYTE, 0, verts1); - glDrawArrays(GL_POINTS, 0, 2); - glPointSize(1.0f); - - glColor4f(0.8f, 0.8f, 0.8f, 1.0f); - GLbyte verts2[2 * 3] = { - p1.x, p1.y, 0.0f, - p2.x, p2.y, 0.0f - }; - glVertexPointer(3, GL_BYTE, 0, verts2); - glDrawArrays(GL_LINES, 0, 2); - } - - if (m_bombSpawning) - { - glPointSize(4.0f); - glColor4f(0.0f, 0.0f, 1.0f, 1.0f); - glColor4f(0.0f, 0.0f, 1.0f, 1.0f); - GLbyte verts1[1 * 3] = { - m_bombSpawnPoint.x, m_bombSpawnPoint.y, 0.0f - }; - glVertexPointer(3, GL_BYTE, 0, verts1); - glDrawArrays(GL_POINTS, 0, 1); - - glColor4f(0.8f, 0.8f, 0.8f, 1.0f); - GLbyte verts2[2 * 3] = { - m_mouseWorld.x, m_mouseWorld.y, 0.0f, - m_bombSpawnPoint.x, m_bombSpawnPoint.y, 0.0f - }; - glVertexPointer(3, GL_BYTE, 0, verts2); - glDrawArrays(GL_LINES, 0, 2); - } - - if (settings->drawContactPoints) - { - //const float32 k_impulseScale = 0.1f; - const float32 k_axisScale = 0.3f; - - for (int32 i = 0; i < m_pointCount; ++i) - { - ContactPoint* point = m_points + i; - - if (point->state == b2_addState) - { - // Add - m_debugDraw.DrawPoint(point->position, 10.0f, b2Color(0.3f, 0.95f, 0.3f)); - } - else if (point->state == b2_persistState) - { - // Persist - m_debugDraw.DrawPoint(point->position, 5.0f, b2Color(0.3f, 0.3f, 0.95f)); - } - - if (settings->drawContactNormals == 1) - { - b2Vec2 p1 = point->position; - b2Vec2 p2 = p1 + k_axisScale * point->normal; - m_debugDraw.DrawSegment(p1, p2, b2Color(0.9f, 0.9f, 0.9f)); - } - else if (settings->drawContactForces == 1) - { - //b2Vec2 p1 = point->position; - //b2Vec2 p2 = p1 + k_forceScale * point->normalForce * point->normal; - //DrawSegment(p1, p2, b2Color(0.9f, 0.9f, 0.3f)); - } - - if (settings->drawFrictionForces == 1) - { - //b2Vec2 tangent = b2Cross(point->normal, 1.0f); - //b2Vec2 p1 = point->position; - //b2Vec2 p2 = p1 + k_forceScale * point->tangentForce * tangent; - //DrawSegment(p1, p2, b2Color(0.9f, 0.9f, 0.3f)); - } - } - } -} diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/Classes/iPhoneTestEntries.mm b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/Classes/iPhoneTestEntries.mm deleted file mode 100644 index 18faaa0..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/Classes/iPhoneTestEntries.mm +++ /dev/null @@ -1,111 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#include "iPhoneTest.h" -#include -using namespace std; - -#include "ApplyForce.h" -#include "BodyTypes.h" -#include "Breakable.h" -#include "Bridge.h" -#include "BulletTest.h" -#include "Cantilever.h" -#include "Car.h" -#include "ContinuousTest.h" -#include "Chain.h" -#include "CharacterCollision.h" -#include "CollisionFiltering.h" -#include "CollisionProcessing.h" -#include "CompoundShapes.h" -#include "Confined.h" -#include "DistanceTest.h" -#include "Dominos.h" -#include "DynamicTreeTest.h" -#include "EdgeShapes.h" -#include "EdgeTest.h" -#include "Gears.h" -#include "OneSidedPlatform.h" -#include "Pinball.h" -#include "PolyCollision.h" -#include "PolyShapes.h" -#include "Prismatic.h" -#include "Pulleys.h" -#include "Pyramid.h" -#include "RayCast.h" -#include "Revolute.h" -#include "Rope.h" -#include "RopeJoint.h" -#include "SensorTest.h" -#include "ShapeEditing.h" -#include "SliderCrank.h" -#include "SphereStack.h" -#include "TheoJansen.h" -#include "Tiles.h" -#include "TimeOfImpact.h" -#include "VaryingFriction.h" -#include "VaryingRestitution.h" -#include "VerticalStack.h" -#include "Web.h" - -TestEntry g_testEntries[] = -{ - {"Pulleys", Pulleys::Create}, - {"SphereStack", SphereStack::Create}, - {"Tiles", Tiles::Create}, - {"Polygon Shapes", PolyShapes::Create}, - {"Rope", Rope::Create}, - {"Web", Web::Create}, - {"Car", Car::Create}, - {"Vertical Stack", VerticalStack::Create}, - {"RopeJoint", RopeJoint::Create}, - {"Character Collision", CharacterCollision::Create}, - {"Edge Test", EdgeTest::Create}, - {"One-Sided Platform", OneSidedPlatform::Create}, - {"Pinball", Pinball::Create}, - {"Bullet Test", BulletTest::Create}, - {"Continuous Test", ContinuousTest::Create}, - {"Time of Impact", TimeOfImpact::Create}, - {"Ray-Cast", RayCast::Create}, - {"Confined", Confined::Create}, - {"Pyramid", Pyramid::Create}, - {"Varying Restitution", VaryingRestitution::Create}, - {"Theo Jansen's Walker", TheoJansen::Create}, - {"Body Types", BodyTypes::Create}, - {"Prismatic", Prismatic::Create}, - {"Edge Shapes", EdgeShapes::Create}, - {"PolyCollision", PolyCollision::Create}, - {"Apply Force", ApplyForce::Create}, - {"Cantilever", Cantilever::Create}, - {"Bridge", Bridge::Create}, - {"Breakable", Breakable::Create}, - {"Chain", Chain::Create}, - {"Collision Filtering", CollisionFiltering::Create}, - {"Collision Processing", CollisionProcessing::Create}, - {"Compound Shapes", CompoundShapes::Create}, - {"Distance Test", DistanceTest::Create}, - {"Dominos", Dominos::Create}, - {"Dynamic Tree", DynamicTreeTest::Create}, - {"Gears", Gears::Create}, - {"Revolute", Revolute::Create}, - {"Sensor Test", SensorTest::Create}, - {"Shape Editing", ShapeEditing::Create}, - {"Slider Crank", SliderCrank::Create}, - {"Varying Friction", VaryingFriction::Create}, - {NULL, NULL} -}; diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/Info.plist.in b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/Info.plist.in deleted file mode 100644 index 5a00279..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/Info.plist.in +++ /dev/null @@ -1,30 +0,0 @@ - - - - - CFBundleDevelopmentRegion - English - CFBundleDisplayName - ${MACOSX_BUNDLE_PRODUCT_NAME} - CFBundleExecutable - ${MACOSX_BUNDLE_EXECUTABLE_NAME} - CFBundleIconFile - - CFBundleIdentifier - ${MACOSX_BUNDLE_GUI_IDENTIFIER} - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - ${MACOSX_BUNDLE_PRODUCT_NAME} - CFBundlePackageType - APPL - CFBundleSignature - ???? - CFBundleVersion - 1.0 - LSRequiresIPhoneOS - - NSMainNibFile - MainWindow - - diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/MainWindow.xib b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/MainWindow.xib deleted file mode 100644 index f2e35a9..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/MainWindow.xib +++ /dev/null @@ -1,232 +0,0 @@ - - - - 528 - 9G55 - 677 - 949.43 - 353.00 - - YES - - - - YES - com.apple.InterfaceBuilder.IBCocoaTouchPlugin - - - YES - - YES - - - YES - - - - YES - - IBFilesOwner - - - IBFirstResponder - - - - - 1316 - - YES - - - 1298 - {320, 480} - - - 3 - MQA - - 2 - - - NO - - - - {320, 480} - - - 1 - MSAxIDEAA - - NO - YES - - - - - YES - - - delegate - - - - 4 - - - - window - - - - 5 - - - - glView - - - - 9 - - - - - YES - - 0 - - YES - - - - - - 2 - - - YES - - - - - - -1 - - - RmlsZSdzIE93bmVyA - - - 3 - - - - - 8 - - - - - -2 - - - - - - - YES - - YES - -1.CustomClassName - -2.CustomClassName - 2.IBAttributePlaceholdersKey - 2.IBEditorWindowLastContentRect - 2.IBPluginDependency - 3.CustomClassName - 3.IBPluginDependency - 8.CustomClassName - 8.IBPluginDependency - - - YES - UIApplication - UIResponder - - YES - - YES - - - YES - - - {{500, 343}, {320, 480}} - com.apple.InterfaceBuilder.IBCocoaTouchPlugin - Box2DAppDelegate - com.apple.InterfaceBuilder.IBCocoaTouchPlugin - Box2DView - com.apple.InterfaceBuilder.IBCocoaTouchPlugin - - - - YES - - YES - - - YES - - - - - YES - - YES - - - YES - - - - 9 - - - - YES - - Box2DAppDelegate - NSObject - - YES - - YES - glView - window - - - YES - Box2DView - UIWindow - - - - IBProjectSource - Classes/Box2DAppDelegate.h - - - - Box2DView - UIView - - IBProjectSource - Classes/Box2DView.h - - - - - 0 - Box2D.xcodeproj - 3 - - diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/Resources/Icon.png b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/Resources/Icon.png deleted file mode 100644 index fe81a59..0000000 Binary files a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/Resources/Icon.png and /dev/null differ diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/main.m b/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/main.m deleted file mode 100644 index 1c48429..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Platforms/iPhone/main.m +++ /dev/null @@ -1,17 +0,0 @@ -// -// main.m -// Box2D -// -// Created by Simon Oliver on 14/01/2009. -// Copyright HandCircus 2009. All rights reserved. -// - -#import - -int main(int argc, char *argv[]) { - - NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init]; - int retVal = UIApplicationMain(argc, argv, nil, nil); - [pool release]; - return retVal; -} diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Readme.txt b/src/dependencies/Box2D_v2.3.0/Contributions/Readme.txt deleted file mode 100644 index 7caf56c..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Readme.txt +++ /dev/null @@ -1,3 +0,0 @@ -This folder contains user contributions. Contributions are _not_ supported by the Box2D project. - -Contributions may not compile or function correctly. \ No newline at end of file diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Tests/Biped.cpp b/src/dependencies/Box2D_v2.3.0/Contributions/Tests/Biped.cpp deleted file mode 100644 index 291495c..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Tests/Biped.cpp +++ /dev/null @@ -1,187 +0,0 @@ -#include "Biped.h" -#include "BipedDef.h" - -Biped::Biped(b2World* w, const b2Vec2& position) -{ - m_world = w; - - BipedDef def; - b2BodyDef bd; - - // create body parts - bd = def.LFootDef; - bd.position += position; - LFoot = w->CreateBody(&bd); - LFoot->CreateFixture(&def.LFootPoly); - LFoot->SetMassFromShapes(); - - bd = def.RFootDef; - bd.position += position; - RFoot = w->CreateBody(&bd); - RFoot->CreateFixture(&def.RFootPoly); - RFoot->SetMassFromShapes(); - - bd = def.LCalfDef; - bd.position += position; - LCalf = w->CreateBody(&bd); - LCalf->CreateFixture(&def.LCalfPoly); - LCalf->SetMassFromShapes(); - - bd = def.RCalfDef; - bd.position += position; - RCalf = w->CreateBody(&bd); - RCalf->CreateFixture(&def.RCalfPoly); - RCalf->SetMassFromShapes(); - - bd = def.LThighDef; - bd.position += position; - LThigh = w->CreateBody(&bd); - LThigh->CreateFixture(&def.LThighPoly); - LThigh->SetMassFromShapes(); - - bd = def.RThighDef; - bd.position += position; - RThigh = w->CreateBody(&bd); - RThigh->CreateFixture(&def.RThighPoly); - RThigh->SetMassFromShapes(); - - bd = def.PelvisDef; - bd.position += position; - Pelvis = w->CreateBody(&bd); - Pelvis->CreateFixture(&def.PelvisPoly); - Pelvis->SetMassFromShapes(); - - bd = def.StomachDef; - bd.position += position; - Stomach = w->CreateBody(&bd); - Stomach->CreateFixture(&def.StomachPoly); - Stomach->SetMassFromShapes(); - - bd = def.ChestDef; - bd.position += position; - Chest = w->CreateBody(&bd); - Chest->CreateFixture(&def.ChestPoly); - Chest->SetMassFromShapes(); - - bd = def.NeckDef; - bd.position += position; - Neck = w->CreateBody(&bd); - Neck->CreateFixture(&def.NeckPoly); - Neck->SetMassFromShapes(); - - bd = def.HeadDef; - bd.position += position; - Head = w->CreateBody(&bd); - Head->CreateFixture(&def.HeadCirc); - Head->SetMassFromShapes(); - - bd = def.LUpperArmDef; - bd.position += position; - LUpperArm = w->CreateBody(&bd); - LUpperArm->CreateFixture(&def.LUpperArmPoly); - LUpperArm->SetMassFromShapes(); - - bd = def.RUpperArmDef; - bd.position += position; - RUpperArm = w->CreateBody(&bd); - RUpperArm->CreateFixture(&def.RUpperArmPoly); - RUpperArm->SetMassFromShapes(); - - bd = def.LForearmDef; - bd.position += position; - LForearm = w->CreateBody(&bd); - LForearm->CreateFixture(&def.LForearmPoly); - LForearm->SetMassFromShapes(); - - bd = def.RForearmDef; - bd.position += position; - RForearm = w->CreateBody(&bd); - RForearm->CreateFixture(&def.RForearmPoly); - RForearm->SetMassFromShapes(); - - bd = def.LHandDef; - bd.position += position; - LHand = w->CreateBody(&bd); - LHand->CreateFixture(&def.LHandPoly); - LHand->SetMassFromShapes(); - - bd = def.RHandDef; - bd.position += position; - RHand = w->CreateBody(&bd); - RHand->CreateFixture(&def.RHandPoly); - RHand->SetMassFromShapes(); - - // link body parts - def.LAnkleDef.body1 = LFoot; - def.LAnkleDef.body2 = LCalf; - def.RAnkleDef.body1 = RFoot; - def.RAnkleDef.body2 = RCalf; - def.LKneeDef.body1 = LCalf; - def.LKneeDef.body2 = LThigh; - def.RKneeDef.body1 = RCalf; - def.RKneeDef.body2 = RThigh; - def.LHipDef.body1 = LThigh; - def.LHipDef.body2 = Pelvis; - def.RHipDef.body1 = RThigh; - def.RHipDef.body2 = Pelvis; - def.LowerAbsDef.body1 = Pelvis; - def.LowerAbsDef.body2 = Stomach; - def.UpperAbsDef.body1 = Stomach; - def.UpperAbsDef.body2 = Chest; - def.LowerNeckDef.body1 = Chest; - def.LowerNeckDef.body2 = Neck; - def.UpperNeckDef.body1 = Chest; - def.UpperNeckDef.body2 = Head; - def.LShoulderDef.body1 = Chest; - def.LShoulderDef.body2 = LUpperArm; - def.RShoulderDef.body1 = Chest; - def.RShoulderDef.body2 = RUpperArm; - def.LElbowDef.body1 = LForearm; - def.LElbowDef.body2 = LUpperArm; - def.RElbowDef.body1 = RForearm; - def.RElbowDef.body2 = RUpperArm; - def.LWristDef.body1 = LHand; - def.LWristDef.body2 = LForearm; - def.RWristDef.body1 = RHand; - def.RWristDef.body2 = RForearm; - - // create joints - LAnkle = (b2RevoluteJoint*)w->CreateJoint(&def.LAnkleDef); - RAnkle = (b2RevoluteJoint*)w->CreateJoint(&def.RAnkleDef); - LKnee = (b2RevoluteJoint*)w->CreateJoint(&def.LKneeDef); - RKnee = (b2RevoluteJoint*)w->CreateJoint(&def.RKneeDef); - LHip = (b2RevoluteJoint*)w->CreateJoint(&def.LHipDef); - RHip = (b2RevoluteJoint*)w->CreateJoint(&def.RHipDef); - LowerAbs = (b2RevoluteJoint*)w->CreateJoint(&def.LowerAbsDef); - UpperAbs = (b2RevoluteJoint*)w->CreateJoint(&def.UpperAbsDef); - LowerNeck = (b2RevoluteJoint*)w->CreateJoint(&def.LowerNeckDef); - UpperNeck = (b2RevoluteJoint*)w->CreateJoint(&def.UpperNeckDef); - LShoulder = (b2RevoluteJoint*)w->CreateJoint(&def.LShoulderDef); - RShoulder = (b2RevoluteJoint*)w->CreateJoint(&def.RShoulderDef); - LElbow = (b2RevoluteJoint*)w->CreateJoint(&def.LElbowDef); - RElbow = (b2RevoluteJoint*)w->CreateJoint(&def.RElbowDef); - LWrist = (b2RevoluteJoint*)w->CreateJoint(&def.LWristDef); - RWrist = (b2RevoluteJoint*)w->CreateJoint(&def.RWristDef); -} - - -Biped::~Biped(void) -{ - m_world->DestroyBody(LFoot); - m_world->DestroyBody(RFoot); - m_world->DestroyBody(LCalf); - m_world->DestroyBody(RCalf); - m_world->DestroyBody(LThigh); - m_world->DestroyBody(RThigh); - m_world->DestroyBody(Pelvis); - m_world->DestroyBody(Stomach); - m_world->DestroyBody(Chest); - m_world->DestroyBody(Neck); - m_world->DestroyBody(Head); - m_world->DestroyBody(LUpperArm); - m_world->DestroyBody(RUpperArm); - m_world->DestroyBody(LForearm); - m_world->DestroyBody(RForearm); - m_world->DestroyBody(LHand); - m_world->DestroyBody(RHand); -} diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Tests/Biped.h b/src/dependencies/Box2D_v2.3.0/Contributions/Tests/Biped.h deleted file mode 100644 index 4d0f05b..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Tests/Biped.h +++ /dev/null @@ -1,25 +0,0 @@ -#ifndef BIPED_H -#define BIPED_H - -#include "Box2D.h" - -// Ragdoll class thanks to darkzerox. -class Biped -{ -public: - Biped(b2World*, const b2Vec2& position); - ~Biped(); - -private: - b2World* m_world; - - b2Body *LFoot, *RFoot, *LCalf, *RCalf, *LThigh, *RThigh, - *Pelvis, *Stomach, *Chest, *Neck, *Head, - *LUpperArm, *RUpperArm, *LForearm, *RForearm, *LHand, *RHand; - - b2RevoluteJoint *LAnkle, *RAnkle, *LKnee, *RKnee, *LHip, *RHip, - *LowerAbs, *UpperAbs, *LowerNeck, *UpperNeck, - *LShoulder, *RShoulder, *LElbow, *RElbow, *LWrist, *RWrist; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Tests/BipedDef.cpp b/src/dependencies/Box2D_v2.3.0/Contributions/Tests/BipedDef.cpp deleted file mode 100644 index f4fcb03..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Tests/BipedDef.cpp +++ /dev/null @@ -1,478 +0,0 @@ -#include "BipedDef.h" - -int16 BipedDef::count = 0; - -const float32 k_scale = 3.0f; - -BipedDef::BipedDef() -{ - SetMotorTorque(2.0f); - SetMotorSpeed(0.0f); - SetDensity(20.0f); - SetRestitution(0.0f); - SetLinearDamping(0.0f); - SetAngularDamping(0.005f); - SetGroupIndex(--count); - EnableMotor(); - EnableLimit(); - - DefaultVertices(); - DefaultPositions(); - DefaultJoints(); - - LFootPoly.friction = RFootPoly.friction = 0.85f; -} - -void BipedDef::IsFast(bool b) -{ - B2_NOT_USED(b); - /* - LFootDef.isFast = b; - RFootDef.isFast = b; - LCalfDef.isFast = b; - RCalfDef.isFast = b; - LThighDef.isFast = b; - RThighDef.isFast = b; - PelvisDef.isFast = b; - StomachDef.isFast = b; - ChestDef.isFast = b; - NeckDef.isFast = b; - HeadDef.isFast = b; - LUpperArmDef.isFast = b; - RUpperArmDef.isFast = b; - LForearmDef.isFast = b; - RForearmDef.isFast = b; - LHandDef.isFast = b; - RHandDef.isFast = b; - */ -} - -void BipedDef::SetGroupIndex(int16 i) -{ - LFootPoly.filter.groupIndex = i; - RFootPoly.filter.groupIndex = i; - LCalfPoly.filter.groupIndex = i; - RCalfPoly.filter.groupIndex = i; - LThighPoly.filter.groupIndex = i; - RThighPoly.filter.groupIndex = i; - PelvisPoly.filter.groupIndex = i; - StomachPoly.filter.groupIndex = i; - ChestPoly.filter.groupIndex = i; - NeckPoly.filter.groupIndex = i; - HeadCirc.filter.groupIndex = i; - LUpperArmPoly.filter.groupIndex = i; - RUpperArmPoly.filter.groupIndex = i; - LForearmPoly.filter.groupIndex = i; - RForearmPoly.filter.groupIndex = i; - LHandPoly.filter.groupIndex = i; - RHandPoly.filter.groupIndex = i; -} - -void BipedDef::SetLinearDamping(float f) -{ - LFootDef.linearDamping = f; - RFootDef.linearDamping = f; - LCalfDef.linearDamping = f; - RCalfDef.linearDamping = f; - LThighDef.linearDamping = f; - RThighDef.linearDamping = f; - PelvisDef.linearDamping = f; - StomachDef.linearDamping = f; - ChestDef.linearDamping = f; - NeckDef.linearDamping = f; - HeadDef.linearDamping = f; - LUpperArmDef.linearDamping = f; - RUpperArmDef.linearDamping = f; - LForearmDef.linearDamping = f; - RForearmDef.linearDamping = f; - LHandDef.linearDamping = f; - RHandDef.linearDamping = f; -} - -void BipedDef::SetAngularDamping(float f) -{ - LFootDef.angularDamping = f; - RFootDef.angularDamping = f; - LCalfDef.angularDamping = f; - RCalfDef.angularDamping = f; - LThighDef.angularDamping = f; - RThighDef.angularDamping = f; - PelvisDef.angularDamping = f; - StomachDef.angularDamping = f; - ChestDef.angularDamping = f; - NeckDef.angularDamping = f; - HeadDef.angularDamping = f; - LUpperArmDef.angularDamping = f; - RUpperArmDef.angularDamping = f; - LForearmDef.angularDamping = f; - RForearmDef.angularDamping = f; - LHandDef.angularDamping = f; - RHandDef.angularDamping = f; -} - -void BipedDef::SetMotorTorque(float f) -{ - LAnkleDef.maxMotorTorque = f; - RAnkleDef.maxMotorTorque = f; - LKneeDef.maxMotorTorque = f; - RKneeDef.maxMotorTorque = f; - LHipDef.maxMotorTorque = f; - RHipDef.maxMotorTorque = f; - LowerAbsDef.maxMotorTorque = f; - UpperAbsDef.maxMotorTorque = f; - LowerNeckDef.maxMotorTorque = f; - UpperNeckDef.maxMotorTorque = f; - LShoulderDef.maxMotorTorque = f; - RShoulderDef.maxMotorTorque = f; - LElbowDef.maxMotorTorque = f; - RElbowDef.maxMotorTorque = f; - LWristDef.maxMotorTorque = f; - RWristDef.maxMotorTorque = f; -} - -void BipedDef::SetMotorSpeed(float f) -{ - LAnkleDef.motorSpeed = f; - RAnkleDef.motorSpeed = f; - LKneeDef.motorSpeed = f; - RKneeDef.motorSpeed = f; - LHipDef.motorSpeed = f; - RHipDef.motorSpeed = f; - LowerAbsDef.motorSpeed = f; - UpperAbsDef.motorSpeed = f; - LowerNeckDef.motorSpeed = f; - UpperNeckDef.motorSpeed = f; - LShoulderDef.motorSpeed = f; - RShoulderDef.motorSpeed = f; - LElbowDef.motorSpeed = f; - RElbowDef.motorSpeed = f; - LWristDef.motorSpeed = f; - RWristDef.motorSpeed = f; -} - -void BipedDef::SetDensity(float f) -{ - LFootPoly.density = f; - RFootPoly.density = f; - LCalfPoly.density = f; - RCalfPoly.density = f; - LThighPoly.density = f; - RThighPoly.density = f; - PelvisPoly.density = f; - StomachPoly.density = f; - ChestPoly.density = f; - NeckPoly.density = f; - HeadCirc.density = f; - LUpperArmPoly.density = f; - RUpperArmPoly.density = f; - LForearmPoly.density = f; - RForearmPoly.density = f; - LHandPoly.density = f; - RHandPoly.density = f; -} - -void BipedDef::SetRestitution(float f) -{ - LFootPoly.restitution = f; - RFootPoly.restitution = f; - LCalfPoly.restitution = f; - RCalfPoly.restitution = f; - LThighPoly.restitution = f; - RThighPoly.restitution = f; - PelvisPoly.restitution = f; - StomachPoly.restitution = f; - ChestPoly.restitution = f; - NeckPoly.restitution = f; - HeadCirc.restitution = f; - LUpperArmPoly.restitution = f; - RUpperArmPoly.restitution = f; - LForearmPoly.restitution = f; - RForearmPoly.restitution = f; - LHandPoly.restitution = f; - RHandPoly.restitution = f; -} - -void BipedDef::EnableLimit() -{ - SetLimit(true); -} - -void BipedDef::DisableLimit() -{ - SetLimit(false); -} - -void BipedDef::SetLimit(bool b) -{ - LAnkleDef.enableLimit = b; - RAnkleDef.enableLimit = b; - LKneeDef.enableLimit = b; - RKneeDef.enableLimit = b; - LHipDef.enableLimit = b; - RHipDef.enableLimit = b; - LowerAbsDef.enableLimit = b; - UpperAbsDef.enableLimit = b; - LowerNeckDef.enableLimit = b; - UpperNeckDef.enableLimit = b; - LShoulderDef.enableLimit = b; - RShoulderDef.enableLimit = b; - LElbowDef.enableLimit = b; - RElbowDef.enableLimit = b; - LWristDef.enableLimit = b; - RWristDef.enableLimit = b; -} - -void BipedDef::EnableMotor() -{ - SetMotor(true); -} - -void BipedDef::DisableMotor() -{ - SetMotor(false); -} - -void BipedDef::SetMotor(bool b) -{ - LAnkleDef.enableMotor = b; - RAnkleDef.enableMotor = b; - LKneeDef.enableMotor = b; - RKneeDef.enableMotor = b; - LHipDef.enableMotor = b; - RHipDef.enableMotor = b; - LowerAbsDef.enableMotor = b; - UpperAbsDef.enableMotor = b; - LowerNeckDef.enableMotor = b; - UpperNeckDef.enableMotor = b; - LShoulderDef.enableMotor = b; - RShoulderDef.enableMotor = b; - LElbowDef.enableMotor = b; - RElbowDef.enableMotor = b; - LWristDef.enableMotor = b; - RWristDef.enableMotor = b; -} - -BipedDef::~BipedDef(void) -{ -} - -void BipedDef::DefaultVertices() -{ - { // feet - LFootPoly.vertexCount = RFootPoly.vertexCount = 5; - LFootPoly.vertices[0] = RFootPoly.vertices[0] = k_scale * b2Vec2(.033f,.143f); - LFootPoly.vertices[1] = RFootPoly.vertices[1] = k_scale * b2Vec2(.023f,.033f); - LFootPoly.vertices[2] = RFootPoly.vertices[2] = k_scale * b2Vec2(.267f,.035f); - LFootPoly.vertices[3] = RFootPoly.vertices[3] = k_scale * b2Vec2(.265f,.065f); - LFootPoly.vertices[4] = RFootPoly.vertices[4] = k_scale * b2Vec2(.117f,.143f); - } - { // calves - LCalfPoly.vertexCount = RCalfPoly.vertexCount = 4; - LCalfPoly.vertices[0] = RCalfPoly.vertices[0] = k_scale * b2Vec2(.089f,.016f); - LCalfPoly.vertices[1] = RCalfPoly.vertices[1] = k_scale * b2Vec2(.178f,.016f); - LCalfPoly.vertices[2] = RCalfPoly.vertices[2] = k_scale * b2Vec2(.205f,.417f); - LCalfPoly.vertices[3] = RCalfPoly.vertices[3] = k_scale * b2Vec2(.095f,.417f); - } - { // thighs - LThighPoly.vertexCount = RThighPoly.vertexCount = 4; - LThighPoly.vertices[0] = RThighPoly.vertices[0] = k_scale * b2Vec2(.137f,.032f); - LThighPoly.vertices[1] = RThighPoly.vertices[1] = k_scale * b2Vec2(.243f,.032f); - LThighPoly.vertices[2] = RThighPoly.vertices[2] = k_scale * b2Vec2(.318f,.343f); - LThighPoly.vertices[3] = RThighPoly.vertices[3] = k_scale * b2Vec2(.142f,.343f); - } - { // pelvis - PelvisPoly.vertexCount = 5; - PelvisPoly.vertices[0] = k_scale * b2Vec2(.105f,.051f); - PelvisPoly.vertices[1] = k_scale * b2Vec2(.277f,.053f); - PelvisPoly.vertices[2] = k_scale * b2Vec2(.320f,.233f); - PelvisPoly.vertices[3] = k_scale * b2Vec2(.112f,.233f); - PelvisPoly.vertices[4] = k_scale * b2Vec2(.067f,.152f); - } - { // stomach - StomachPoly.vertexCount = 4; - StomachPoly.vertices[0] = k_scale * b2Vec2(.088f,.043f); - StomachPoly.vertices[1] = k_scale * b2Vec2(.284f,.043f); - StomachPoly.vertices[2] = k_scale * b2Vec2(.295f,.231f); - StomachPoly.vertices[3] = k_scale * b2Vec2(.100f,.231f); - } - { // chest - ChestPoly.vertexCount = 4; - ChestPoly.vertices[0] = k_scale * b2Vec2(.091f,.042f); - ChestPoly.vertices[1] = k_scale * b2Vec2(.283f,.042f); - ChestPoly.vertices[2] = k_scale * b2Vec2(.177f,.289f); - ChestPoly.vertices[3] = k_scale * b2Vec2(.065f,.289f); - } - { // head - HeadCirc.radius = k_scale * .115f; - } - { // neck - NeckPoly.vertexCount = 4; - NeckPoly.vertices[0] = k_scale * b2Vec2(.038f,.054f); - NeckPoly.vertices[1] = k_scale * b2Vec2(.149f,.054f); - NeckPoly.vertices[2] = k_scale * b2Vec2(.154f,.102f); - NeckPoly.vertices[3] = k_scale * b2Vec2(.054f,.113f); - } - { // upper arms - LUpperArmPoly.vertexCount = RUpperArmPoly.vertexCount = 5; - LUpperArmPoly.vertices[0] = RUpperArmPoly.vertices[0] = k_scale * b2Vec2(.092f,.059f); - LUpperArmPoly.vertices[1] = RUpperArmPoly.vertices[1] = k_scale * b2Vec2(.159f,.059f); - LUpperArmPoly.vertices[2] = RUpperArmPoly.vertices[2] = k_scale * b2Vec2(.169f,.335f); - LUpperArmPoly.vertices[3] = RUpperArmPoly.vertices[3] = k_scale * b2Vec2(.078f,.335f); - LUpperArmPoly.vertices[4] = RUpperArmPoly.vertices[4] = k_scale * b2Vec2(.064f,.248f); - } - { // forearms - LForearmPoly.vertexCount = RForearmPoly.vertexCount = 4; - LForearmPoly.vertices[0] = RForearmPoly.vertices[0] = k_scale * b2Vec2(.082f,.054f); - LForearmPoly.vertices[1] = RForearmPoly.vertices[1] = k_scale * b2Vec2(.138f,.054f); - LForearmPoly.vertices[2] = RForearmPoly.vertices[2] = k_scale * b2Vec2(.149f,.296f); - LForearmPoly.vertices[3] = RForearmPoly.vertices[3] = k_scale * b2Vec2(.088f,.296f); - } - { // hands - LHandPoly.vertexCount = RHandPoly.vertexCount = 5; - LHandPoly.vertices[0] = RHandPoly.vertices[0] = k_scale * b2Vec2(.066f,.031f); - LHandPoly.vertices[1] = RHandPoly.vertices[1] = k_scale * b2Vec2(.123f,.020f); - LHandPoly.vertices[2] = RHandPoly.vertices[2] = k_scale * b2Vec2(.160f,.127f); - LHandPoly.vertices[3] = RHandPoly.vertices[3] = k_scale * b2Vec2(.127f,.178f); - LHandPoly.vertices[4] = RHandPoly.vertices[4] = k_scale * b2Vec2(.074f,.178f);; - } -} - -void BipedDef::DefaultJoints() -{ - //b.LAnkleDef.body1 = LFoot; - //b.LAnkleDef.body2 = LCalf; - //b.RAnkleDef.body1 = RFoot; - //b.RAnkleDef.body2 = RCalf; - { // ankles - b2Vec2 anchor = k_scale * b2Vec2(-.045f,-.75f); - LAnkleDef.localAnchor1 = RAnkleDef.localAnchor1 = anchor - LFootDef.position; - LAnkleDef.localAnchor2 = RAnkleDef.localAnchor2 = anchor - LCalfDef.position; - LAnkleDef.referenceAngle = RAnkleDef.referenceAngle = 0.0f; - LAnkleDef.lowerAngle = RAnkleDef.lowerAngle = -0.523598776f; - LAnkleDef.upperAngle = RAnkleDef.upperAngle = 0.523598776f; - } - - //b.LKneeDef.body1 = LCalf; - //b.LKneeDef.body2 = LThigh; - //b.RKneeDef.body1 = RCalf; - //b.RKneeDef.body2 = RThigh; - { // knees - b2Vec2 anchor = k_scale * b2Vec2(-.030f,-.355f); - LKneeDef.localAnchor1 = RKneeDef.localAnchor1 = anchor - LCalfDef.position; - LKneeDef.localAnchor2 = RKneeDef.localAnchor2 = anchor - LThighDef.position; - LKneeDef.referenceAngle = RKneeDef.referenceAngle = 0.0f; - LKneeDef.lowerAngle = RKneeDef.lowerAngle = 0; - LKneeDef.upperAngle = RKneeDef.upperAngle = 2.61799388f; - } - - //b.LHipDef.body1 = LThigh; - //b.LHipDef.body2 = Pelvis; - //b.RHipDef.body1 = RThigh; - //b.RHipDef.body2 = Pelvis; - { // hips - b2Vec2 anchor = k_scale * b2Vec2(.005f,-.045f); - LHipDef.localAnchor1 = RHipDef.localAnchor1 = anchor - LThighDef.position; - LHipDef.localAnchor2 = RHipDef.localAnchor2 = anchor - PelvisDef.position; - LHipDef.referenceAngle = RHipDef.referenceAngle = 0.0f; - LHipDef.lowerAngle = RHipDef.lowerAngle = -2.26892803f; - LHipDef.upperAngle = RHipDef.upperAngle = 0; - } - - //b.LowerAbsDef.body1 = Pelvis; - //b.LowerAbsDef.body2 = Stomach; - { // lower abs - b2Vec2 anchor = k_scale * b2Vec2(.035f,.135f); - LowerAbsDef.localAnchor1 = anchor - PelvisDef.position; - LowerAbsDef.localAnchor2 = anchor - StomachDef.position; - LowerAbsDef.referenceAngle = 0.0f; - LowerAbsDef.lowerAngle = -0.523598776f; - LowerAbsDef.upperAngle = 0.523598776f; - } - - //b.UpperAbsDef.body1 = Stomach; - //b.UpperAbsDef.body2 = Chest; - { // upper abs - b2Vec2 anchor = k_scale * b2Vec2(.045f,.320f); - UpperAbsDef.localAnchor1 = anchor - StomachDef.position; - UpperAbsDef.localAnchor2 = anchor - ChestDef.position; - UpperAbsDef.referenceAngle = 0.0f; - UpperAbsDef.lowerAngle = -0.523598776f; - UpperAbsDef.upperAngle = 0.174532925f; - } - - //b.LowerNeckDef.body1 = Chest; - //b.LowerNeckDef.body2 = Neck; - { // lower neck - b2Vec2 anchor = k_scale * b2Vec2(-.015f,.575f); - LowerNeckDef.localAnchor1 = anchor - ChestDef.position; - LowerNeckDef.localAnchor2 = anchor - NeckDef.position; - LowerNeckDef.referenceAngle = 0.0f; - LowerNeckDef.lowerAngle = -0.174532925f; - LowerNeckDef.upperAngle = 0.174532925f; - } - - //b.UpperNeckDef.body1 = Chest; - //b.UpperNeckDef.body2 = Head; - { // upper neck - b2Vec2 anchor = k_scale * b2Vec2(-.005f,.630f); - UpperNeckDef.localAnchor1 = anchor - ChestDef.position; - UpperNeckDef.localAnchor2 = anchor - HeadDef.position; - UpperNeckDef.referenceAngle = 0.0f; - UpperNeckDef.lowerAngle = -0.610865238f; - UpperNeckDef.upperAngle = 0.785398163f; - } - - //b.LShoulderDef.body1 = Chest; - //b.LShoulderDef.body2 = LUpperArm; - //b.RShoulderDef.body1 = Chest; - //b.RShoulderDef.body2 = RUpperArm; - { // shoulders - b2Vec2 anchor = k_scale * b2Vec2(-.015f,.545f); - LShoulderDef.localAnchor1 = RShoulderDef.localAnchor1 = anchor - ChestDef.position; - LShoulderDef.localAnchor2 = RShoulderDef.localAnchor2 = anchor - LUpperArmDef.position; - LShoulderDef.referenceAngle = RShoulderDef.referenceAngle = 0.0f; - LShoulderDef.lowerAngle = RShoulderDef.lowerAngle = -1.04719755f; - LShoulderDef.upperAngle = RShoulderDef.upperAngle = 3.14159265f; - } - - //b.LElbowDef.body1 = LForearm; - //b.LElbowDef.body2 = LUpperArm; - //b.RElbowDef.body1 = RForearm; - //b.RElbowDef.body2 = RUpperArm; - { // elbows - b2Vec2 anchor = k_scale * b2Vec2(-.005f,.290f); - LElbowDef.localAnchor1 = RElbowDef.localAnchor1 = anchor - LForearmDef.position; - LElbowDef.localAnchor2 = RElbowDef.localAnchor2 = anchor - LUpperArmDef.position; - LElbowDef.referenceAngle = RElbowDef.referenceAngle = 0.0f; - LElbowDef.lowerAngle = RElbowDef.lowerAngle = -2.7925268f; - LElbowDef.upperAngle = RElbowDef.upperAngle = 0; - } - - //b.LWristDef.body1 = LHand; - //b.LWristDef.body2 = LForearm; - //b.RWristDef.body1 = RHand; - //b.RWristDef.body2 = RForearm; - { // wrists - b2Vec2 anchor = k_scale * b2Vec2(-.010f,.045f); - LWristDef.localAnchor1 = RWristDef.localAnchor1 = anchor - LHandDef.position; - LWristDef.localAnchor2 = RWristDef.localAnchor2 = anchor - LForearmDef.position; - LWristDef.referenceAngle = RWristDef.referenceAngle = 0.0f; - LWristDef.lowerAngle = RWristDef.lowerAngle = -0.174532925f; - LWristDef.upperAngle = RWristDef.upperAngle = 0.174532925f; - } -} - -void BipedDef::DefaultPositions() -{ - LFootDef.position = RFootDef.position = k_scale * b2Vec2(-.122f,-.901f); - LCalfDef.position = RCalfDef.position = k_scale * b2Vec2(-.177f,-.771f); - LThighDef.position = RThighDef.position = k_scale * b2Vec2(-.217f,-.391f); - LUpperArmDef.position = RUpperArmDef.position = k_scale * b2Vec2(-.127f,.228f); - LForearmDef.position = RForearmDef.position = k_scale * b2Vec2(-.117f,-.011f); - LHandDef.position = RHandDef.position = k_scale * b2Vec2(-.112f,-.136f); - PelvisDef.position = k_scale * b2Vec2(-.177f,-.101f); - StomachDef.position = k_scale * b2Vec2(-.142f,.088f); - ChestDef.position = k_scale * b2Vec2(-.132f,.282f); - NeckDef.position = k_scale * b2Vec2(-.102f,.518f); - HeadDef.position = k_scale * b2Vec2(.022f,.738f); -} diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Tests/BipedDef.h b/src/dependencies/Box2D_v2.3.0/Contributions/Tests/BipedDef.h deleted file mode 100644 index 5cd3dca..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Tests/BipedDef.h +++ /dev/null @@ -1,51 +0,0 @@ -#ifndef BIPED_DEF_H -#define BIPED_DEF_H - -#include "Box2D.h" - -class BipedDef -{ -public: - BipedDef(); - ~BipedDef(void); - - void SetMotorTorque(float); - void SetMotorSpeed(float); - void SetDensity(float); - void SetFriction(float); - void SetRestitution(float); - void SetLinearDamping(float); - void SetAngularDamping(float); - void EnableLimit(); - void DisableLimit(); - void SetLimit(bool); - void EnableMotor(); - void DisableMotor(); - void SetMotor(bool); - void SetGroupIndex(int16); - void SetPosition(float, float); - void SetPosition(b2Vec2); - void IsFast(bool); - - static int16 count; - - b2BodyDef LFootDef, RFootDef, LCalfDef, RCalfDef, LThighDef, RThighDef, - PelvisDef, StomachDef, ChestDef, NeckDef, HeadDef, - LUpperArmDef, RUpperArmDef, LForearmDef, RForearmDef, LHandDef, RHandDef; - - b2PolygonDef LFootPoly, RFootPoly, LCalfPoly, RCalfPoly, LThighPoly, RThighPoly, - PelvisPoly, StomachPoly, ChestPoly, NeckPoly, - LUpperArmPoly, RUpperArmPoly, LForearmPoly, RForearmPoly, LHandPoly, RHandPoly; - - b2CircleDef HeadCirc; - - b2RevoluteJointDef LAnkleDef, RAnkleDef, LKneeDef, RKneeDef, LHipDef, RHipDef, - LowerAbsDef, UpperAbsDef, LowerNeckDef, UpperNeckDef, - LShoulderDef, RShoulderDef, LElbowDef, RElbowDef, LWristDef, RWristDef; - - void DefaultVertices(); - void DefaultPositions(); - void DefaultJoints(); -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Tests/BipedTest.h b/src/dependencies/Box2D_v2.3.0/Contributions/Tests/BipedTest.h deleted file mode 100644 index 0172a3e..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Tests/BipedTest.h +++ /dev/null @@ -1,87 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.gphysics.com -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef BIPED_TEST_H -#define BIPED_TEST_H - -#include "Biped.h" - -class BipedTest : public Test -{ -public: - - BipedTest() - { - const float32 k_restitution = 1.4f; - - { - b2BodyDef bd; - bd.position.Set(0.0f, 20.0f); - b2Body* body = m_world->CreateBody(&bd); - - b2PolygonDef sd; - sd.density = 0.0f; - sd.restitution = k_restitution; - - sd.SetAsBox(0.1f, 10.0f, b2Vec2(-10.0f, 0.0f), 0.0f); - body->CreateFixture(&sd); - - sd.SetAsBox(0.1f, 10.0f, b2Vec2(10.0f, 0.0f), 0.0f); - body->CreateFixture(&sd); - - sd.SetAsBox(0.1f, 10.0f, b2Vec2(0.0f, -10.0f), 0.5f * b2_pi); - body->CreateFixture(&sd); - - sd.SetAsBox(0.1f, 10.0f, b2Vec2(0.0f, 10.0f), -0.5f * b2_pi); - body->CreateFixture(&sd); - } - - m_biped = new Biped(m_world, b2Vec2(0.0f, 20.0f)); - - for (int32 i = 0; i < 8; ++i) - { - b2BodyDef bd; - bd.position.Set(5.0f, 20.0f + i); - bd.isBullet = true; - b2Body* body = m_world->CreateBody(&bd); - body->SetLinearVelocity(b2Vec2(0.0f, -100.0f)); - body->SetAngularVelocity(RandomFloat(-50.0f, 50.0f)); - - b2CircleDef sd; - sd.radius = 0.25f; - sd.density = 15.0f; - sd.restitution = k_restitution; - body->CreateFixture(&sd); - body->SetMassFromShapes(); - } - } - - ~BipedTest() - { - delete m_biped; - } - - static Test* Create() - { - return new BipedTest; - } - - Biped* m_biped; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Tests/BreakableBody.h b/src/dependencies/Box2D_v2.3.0/Contributions/Tests/BreakableBody.h deleted file mode 100644 index fdad669..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Tests/BreakableBody.h +++ /dev/null @@ -1,603 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.gphysics.com -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -/* Testbed example showing deformable and breakable bodies using the soft - * b2DistanceJoint and a small,liteweight triangle mesher. - * 2008-05-09 / nimodo - */ -#ifndef BREAKABLE_BODY_H -#define BREAKABLE_BODY_H - -#include "TriangleMesh.h" - -/// utility macro -#define H(x) (x)/2.0f -#define N_MAXVERTEX 256 - -class BreakableBody : public Test -{ - -public: - BreakableBody() - { - /// geometries - float32 gx = 100.0f, gy = 1.0f, - dx = 34.0f, br = 0.3f; - float32 sx=-dx-H(dx), sy = 30.f; - /// break joint, if the reactionforce exceeds: - maxAllowableForce = 100.0f; - m_drawMode = m_staticBodies = false; - m_drawCount = 0; - /// ground - { - b2PolygonDef sd; - b2BodyDef bd; - b2Body* ground; - bd.position.Set(0.0f, 0.0f); - ground = m_world->CreateBody(&bd); - /// bottom - sd.SetAsBox( H(gx), H(gy) ); - ground->CreateFixture(&sd); - sd.SetAsBox( H(dx), H(gy), b2Vec2(-dx,sy-1.0f), 0.0f ); - ground->CreateFixture(&sd); - } - /// dyn bodies - { - b2PolygonDef pd; - b2DistanceJointDef dj; - - dj.dampingRatio = 0.0f; - dj.collideConnected = true; - - ExampleData('B'); - dj.frequencyHz = 20.f; - pd.density = 1.0f/70.0f; - pd.friction = 0.4f; - pd.restitution = 0.01f; - CreateSoftBody( b2Vec2(sx,sy), 0, 0, pd, dj, - nodes,n_nodes, segments,n_segments, holes,n_holes) ; - - ExampleData('@'); - dj.frequencyHz = 20.f; - pd.density = 1.0f/36.0f; - pd.friction = 0.1f; - pd.restitution = 0.5f; - CreateSoftBody( b2Vec2(sx+6.f,sy), 0, 0, pd, dj, - nodes,n_nodes, segments,n_segments, holes,n_holes) ; - - ExampleData('x'); - dj.frequencyHz = 20.0f; - pd.density = 1.0f/60.0f; - pd.friction = 0.6f; - pd.restitution = 0.0f; - CreateSoftBody( b2Vec2(sx+13.f,sy), 0, 0, pd, dj, - nodes,n_nodes, segments,n_segments, holes,n_holes) ; - - ExampleData('2'); - pd.density = 0.01f; - pd.friction = 0.3f; - pd.restitution = 0.3f; - CreateSoftBody( b2Vec2(sx+20.f,sy), 0, 0, pd, dj, - nodes,n_nodes, segments,n_segments, holes,n_holes) ; - - ExampleData('D'); - CreateSoftBody( b2Vec2(sx+28.f,sy), 0, 0, pd, dj, - nodes,n_nodes, segments,n_segments, holes,n_holes) ; - - ExampleData('b'); - dj.frequencyHz = 10.0f; - dj.dampingRatio = 20.0f; - pd.friction = 0.9f; - pd.restitution = 0.01f; - pd.density = 0.01f; - CreateSoftBody( b2Vec2(-5.f,5.f*gy), 0, 0, pd, dj, - nodes,n_nodes, segments,n_segments, holes,n_holes) ; - - b2CircleDef cd; - b2BodyDef bd; - b2Body* b; - cd.radius = br; - cd.density= 0.001f; - bd.position.Set(0.0f,10.0f*gy); - for (int32 i=0; i<60; i++ ) - { - b = m_world->CreateBody(&bd); - b->CreateFixture (&cd); - b->SetMassFromShapes(); - } - - } - } - - /// Create compound (soft) body using a triangle mesh - /// If meshDensity is 0, a minimal grid is generated. - /// Actually pd and dj define the behaviour for all triangles - void CreateSoftBody(b2Vec2 pos, int32 meshDensity,int32 options, - b2PolygonDef pd, b2DistanceJointDef dj, - tmVertex* nodes,int32 n_nodes, - tmSegmentId *segments=NULL, int32 n_segments=0, - tmVertex* holes=NULL, int32 n_holes=0) - { - int32 i; - /// TriangleMesh defs - tmTriangle *triangles; - TriangleMesh md; - /// box2d defs - b2BodyDef bd; - b2Body *b; - /// in case of meshDensit>3 ... - md.SetMaxVertexCount(meshDensity); - if (options>0) md.SetOptions(options); - /// triangulator main - md.Mesh( nodes, n_nodes, segments,n_segments, holes, n_holes ); - md.PrintData(); - /// bodies (triangles) - triangles = md.GetTriangles(); - if ( triangles==NULL ) return; - pd.vertexCount = 3; - for ( i=0; i b2PolygonDef - pd.vertices[0].Set(triangles[i].v[0]->x, triangles[i].v[0]->y); - pd.vertices[1].Set(triangles[i].v[1]->x, triangles[i].v[1]->y); - pd.vertices[2].Set(triangles[i].v[2]->x, triangles[i].v[2]->y); - bd.position.Set(pos.x,pos.y); - b = m_world->CreateBody(&bd); - b->CreateFixture(&pd); - b->SetMassFromShapes(); - /// we need the body pointer in the triangles for the joints later - triangles[i].userData = (void *)b; - } - } - /// joints - /// for each triangle-pair in edges, connect with a distance joint - tmEdge *edges; - tmTriangle *t0,*t1; - b2Body *b1,*b2; - edges = md.GetEdges(); - for ( i=0; iinside==false) || (t1->inside==false) ) continue; - - /// Get bodies - b1 = (b2Body*)t0->userData; - b2 = (b2Body*)t1->userData; - if ( b1==NULL || b2==NULL ) continue; - - dj.Initialize( b1,b2, b1->GetWorldCenter(), b2->GetWorldCenter()); - m_world->CreateJoint(&dj); - } - /// clean TriangleMesh - md.FreeMemory(); - } - - /// maybe here to check for maximal reaction forces to break a body - void Step(Settings* settings) - { - b2Joint *jStressed=NULL; - float32 F=0.0f, tmp; - - Test::Step(settings); - - for (b2Joint* j = m_world->GetJointList(); j; j = j->GetNext()) - { - tmp = j->GetReactionForce(settings->hz).Length(); - if ( tmp>F ) - { - F = tmp; - jStressed = j; - } - } - if ( jStressed && (F>maxAllowableForce) ) - { - m_world->DestroyJoint(jStressed); - } - - m_debugDraw.DrawString(1, m_textLine,"max.reactionforce=%.0f allowable=%.0f change:-+", (float)F,(float)maxAllowableForce); - m_textLine += 12; - - m_debugDraw.DrawString(1, m_textLine,"drawmode(%s):d mesh:m static(%s):s", (m_drawMode)?"on":"off", (m_staticBodies)?"on":"off"); - m_textLine += 12; - - for ( int32 i=0; i0 ) - { - b2PolygonDef pd; - b2DistanceJointDef dj; - dj.collideConnected = true; - dj.frequencyHz = 20.f; - dj.dampingRatio = 10.0f; - pd.density = (m_staticBodies) ? 0.0f : 1.0f/32.0f; - pd.friction = 0.99f; - pd.restitution = 0.01f; - CreateSoftBody( b2Vec2(0.0f,0.0f), 0, tmO_SEGMENTBOUNDARY|tmO_GRADING, - pd, dj, m_drawVertices, m_drawCount) ; - - m_drawCount = 0; - m_drawMode = false; - } - break; - } - } - - void MouseDown(const b2Vec2& p) - { - if ( m_drawMode && (m_drawCountCreateBody(&bd); - m_vehicle->CreateFixture(&poly1); - m_vehicle->CreateFixture(&poly2); - m_vehicle->SetMassFromShapes(); - } - - { // vehicle wheels - b2CircleDef circ; - circ.density = 40.0f; - circ.radius = 0.38608f; - circ.friction = 0.8f; - circ.filter.groupIndex = -1; - - b2BodyDef bd; - bd.allowSleep = false; - bd.position.Set(-33.8f, 2.0f); - - m_rightWheel = m_world->CreateBody(&bd); - m_rightWheel->CreateFixture(&circ); - m_rightWheel->SetMassFromShapes(); - - bd.position.Set(-36.2f, 2.0f); - m_leftWheel = m_world->CreateBody(&bd); - m_leftWheel->CreateFixture(&circ); - m_leftWheel->SetMassFromShapes(); - } - - { // join wheels to chassis - b2Vec2 anchor; - b2RevoluteJointDef jd; - jd.Initialize(m_vehicle, m_leftWheel, m_leftWheel->GetWorldCenter()); - jd.collideConnected = false; - jd.enableMotor = true; - jd.maxMotorTorque = 10.0f; - jd.motorSpeed = 0.0f; - m_leftJoint = (b2RevoluteJoint*)m_world->CreateJoint(&jd); - - jd.Initialize(m_vehicle, m_rightWheel, m_rightWheel->GetWorldCenter()); - jd.collideConnected = false; - m_rightJoint = (b2RevoluteJoint*)m_world->CreateJoint(&jd); - } - - { // ground - b2PolygonDef box; - box.SetAsBox(19.5f, 0.5f); - box.friction = 0.62f; - - b2BodyDef bd; - bd.position.Set(-25.0f, 1.0f); - - b2Body* ground = m_world->CreateBody(&bd); - ground->CreateFixture(&box); - } - - { // more ground - b2PolygonDef box; - b2BodyDef bd; - - box.SetAsBox(9.5f, 0.5f, b2Vec2_zero, 0.1f * b2_pi); - box.friction = 0.62f; - bd.position.Set(27.0f - 30.0f, 3.1f); - - b2Body* ground = m_world->CreateBody(&bd); - ground->CreateFixture(&box); - } - - { // more ground - b2PolygonDef box; - b2BodyDef bd; - - box.SetAsBox(9.5f, 0.5f, b2Vec2_zero, -0.1f * b2_pi); - box.friction = 0.62f; - bd.position.Set(55.0f - 30.0f, 3.1f); - - b2Body* ground = m_world->CreateBody(&bd); - ground->CreateFixture(&box); - } - - { // more ground - b2PolygonDef box; - b2BodyDef bd; - - box.SetAsBox(9.5f, 0.5f, b2Vec2_zero, 0.03f * b2_pi); - box.friction = 0.62f; - bd.position.Set(41.0f, 2.0f); - - b2Body* ground = m_world->CreateBody(&bd); - ground->CreateFixture(&box); - } - - { // more ground - b2PolygonDef box; - b2BodyDef bd; - - box.SetAsBox(5.0f, 0.5f, b2Vec2_zero, 0.15f * b2_pi); - box.friction = 0.62f; - bd.position.Set(50.0f, 4.0f); - - b2Body* ground = m_world->CreateBody(&bd); - ground->CreateFixture(&box); - } - - { // more ground - b2PolygonDef box; - b2BodyDef bd; - - box.SetAsBox(20.0f, 0.5f); - box.friction = 0.62f; - bd.position.Set(85.0f, 2.0f); - - b2Body* ground = m_world->CreateBody(&bd); - ground->CreateFixture(&box); - } - } - - void Step(Settings* settings) - { - m_debugDraw.DrawString(5, m_textLine, "Keys: left = a, brake = s, right = d"); - m_textLine += 15; - - Test::Step(settings); - } - - void Keyboard(unsigned char key) - { - switch (key) - { - case 'a': - m_leftJoint->SetMaxMotorTorque(800.0f); - m_leftJoint->SetMotorSpeed(12.0f); - break; - - case 's': - m_leftJoint->SetMaxMotorTorque(100.0f); - m_leftJoint->SetMotorSpeed(0.0f); - break; - - case 'd': - m_leftJoint->SetMaxMotorTorque(1200.0f); - m_leftJoint->SetMotorSpeed(-36.0f); - break; - } - } - - static Test* Create() - { - return new Car; - } - - b2Body* m_leftWheel; - b2Body* m_rightWheel; - b2Body* m_vehicle; - b2RevoluteJoint* m_leftJoint; - b2RevoluteJoint* m_rightJoint; -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Tests/ContactCallbackTest.h b/src/dependencies/Box2D_v2.3.0/Contributions/Tests/ContactCallbackTest.h deleted file mode 100644 index a31a093..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Tests/ContactCallbackTest.h +++ /dev/null @@ -1,260 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.gphysics.com -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -// Contributed by caspin. - -#ifndef CONTACT_CB_H -#define CONTACT_CB_H - -#include -#include -#include -#include -#include - -bool key_comp( const ContactPoint& lhs, const ContactPoint& rhs ) -{ - if( lhs.fixtureA < rhs.fixtureA ) return true; - if( lhs.fixtureA == rhs.fixtureA && lhs.fixtureB < rhs.fixtureB ) return true; - if( lhs.fixtureA == rhs.fixtureA && lhs.fixtureB == rhs.fixtureB && lhs.id.key < rhs.id.key ) return true; - return false; -} - -class ContactCB : public Test -{ -public: - - ContactCB() - : m_set(&key_comp) - { - b2PolygonDef sd; - sd.friction = 0; - sd.vertexCount = 3; - - sd.vertices[0].Set(10,10); - sd.vertices[1].Set(9,7); - sd.vertices[2].Set(10,0); - m_world->GetGroundBody()->CreateFixture(&sd); - - sd.vertices[0].Set(9,7); - sd.vertices[1].Set(8,0); - sd.vertices[2].Set(10,0); - m_world->GetGroundBody()->CreateFixture(&sd); - - sd.vertices[0].Set(9,7); - sd.vertices[1].Set(8,5); - sd.vertices[2].Set(8,0); - m_world->GetGroundBody()->CreateFixture(&sd); - - sd.vertices[0].Set(8,5); - sd.vertices[1].Set(7,4); - sd.vertices[2].Set(8,0); - m_world->GetGroundBody()->CreateFixture(&sd); - - sd.vertices[0].Set(7,4); - sd.vertices[1].Set(5,0); - sd.vertices[2].Set(8,0); - m_world->GetGroundBody()->CreateFixture(&sd); - - sd.vertices[0].Set(7,4); - sd.vertices[1].Set(5,3); - sd.vertices[2].Set(5,0); - m_world->GetGroundBody()->CreateFixture(&sd); - - sd.vertices[0].Set(5,3); - sd.vertices[1].Set(2,2); - sd.vertices[2].Set(5,0); - m_world->GetGroundBody()->CreateFixture(&sd); - - sd.vertices[0].Set(2,2); - sd.vertices[1].Set(0,0); - sd.vertices[2].Set(5,0); - m_world->GetGroundBody()->CreateFixture(&sd); - - sd.vertices[0].Set(2,2); - sd.vertices[1].Set(-2,2); - sd.vertices[2].Set(0,0); - m_world->GetGroundBody()->CreateFixture(&sd); - - sd.vertices[2].Set(-2,2); - sd.vertices[1].Set(0,0); - sd.vertices[0].Set(-5,0); - m_world->GetGroundBody()->CreateFixture(&sd); - - sd.vertices[2].Set(-5,3); - sd.vertices[1].Set(-2,2); - sd.vertices[0].Set(-5,0); - m_world->GetGroundBody()->CreateFixture(&sd); - - sd.vertices[2].Set(-7,4); - sd.vertices[1].Set(-5,3); - sd.vertices[0].Set(-5,0); - m_world->GetGroundBody()->CreateFixture(&sd); - - sd.vertices[2].Set(-7,4); - sd.vertices[1].Set(-5,0); - sd.vertices[0].Set(-8,0); - m_world->GetGroundBody()->CreateFixture(&sd); - - sd.vertices[2].Set(-8,5); - sd.vertices[1].Set(-7,4); - sd.vertices[0].Set(-8,0); - m_world->GetGroundBody()->CreateFixture(&sd); - - sd.vertices[2].Set(-9,7); - sd.vertices[1].Set(-8,5); - sd.vertices[0].Set(-8,0); - m_world->GetGroundBody()->CreateFixture(&sd); - - sd.vertices[2].Set(-9,7); - sd.vertices[1].Set(-8,0); - sd.vertices[0].Set(-10,0); - m_world->GetGroundBody()->CreateFixture(&sd); - - sd.vertices[2].Set(-10,10); - sd.vertices[1].Set(-9,7); - sd.vertices[0].Set(-10,0); - m_world->GetGroundBody()->CreateFixture(&sd); - - sd.SetAsBox(.5,6,b2Vec2(10.5,6),0); - m_world->GetGroundBody()->CreateFixture(&sd); - - sd.SetAsBox(.5,6,b2Vec2(-10.5,6),0); - m_world->GetGroundBody()->CreateFixture(&sd); - - b2BodyDef bd; - bd.position.Set(9.5,60); - b2Body* m_ball = m_world->CreateBody( &bd ); - -#if 1 - b2PolygonDef cd; - cd.vertexCount = 8; - float32 w = 0.95f; - float32 b = w / (2.0f + sqrtf(2.0f)); - float32 s = sqrtf(2.0f) * b; - cd.vertices[0].Set(0.5f * s, 0.0f); - cd.vertices[1].Set(0.5f * w, b); - cd.vertices[2].Set(0.5f * w, b + s); - cd.vertices[3].Set(0.5f * s, w); - cd.vertices[4].Set(-0.5f * s, w); - cd.vertices[5].Set(-0.5f * w, b + s); - cd.vertices[6].Set(-0.5f * w, b); - cd.vertices[7].Set(-0.5f * s, 0.0f); - cd.density = 1.0f; -#else - b2CircleDef cd; - cd.radius = 0.33f; - cd.friction = 0; - cd.density = 1; -#endif - - m_ball_shape = m_ball->CreateFixture(&cd); - m_ball->SetMassFromShapes(); - } - - void Step(Settings* settings) - { - Test::Step(settings); - std::ostringstream oss; - oss << std::hex; - - for (int32 i=0; i< m_pointCount; ++i) - { -#if 0 - if (m_points[i].shape1 > m_points[i].shape2) - { - b2Swap(m_points[i].shape1, m_points[i].shape2); - m_points[i].normal *= -1.0f; - m_points[i].velocity *= -1.0f; - } -#endif - oss.str(""); - switch( m_points[i].state ) - { - case e_contactAdded: - { - if( ! m_set.insert( m_points[i] ).second ) - { - oss << "ERROR "; - } - else - { - oss << " "; - } - oss << "added: " << m_points[i].fixtureA << " -> " << m_points[i].fixtureB; - oss << " : " << m_points[i].id.key; - m_strings.push_back( oss.str() ); - std::cout << oss.str() << std::endl; - break; - } - case e_contactRemoved: - { - if( m_set.find( m_points[i] ) == m_set.end() ) - { - oss << "ERROR "; - } - else - { - oss << " "; - } - oss << "removed: " << m_points[i].fixtureA << " -> " << m_points[i].fixtureB; - oss << " : " << m_points[i].id.key; - m_strings.push_back( oss.str() ); - std::cout << oss.str() << std::endl; - m_set.erase( m_points[i] ); - break; - } - case e_contactPersisted: - { - if( m_set.find( m_points[i] ) == m_set.end() ) - { - oss << "ERROR persist: " << m_points[i].fixtureA << " -> "; - oss << m_points[i].fixtureB << " : " << m_points[i].id.key; - m_strings.push_back( oss.str() ); - std::cout << oss.str() << std::endl; - } - break; - } - } - } - while( m_strings.size() > 15 ) - { - m_strings.pop_front(); - } - - for( unsigned i=0; i m_set; - std::deque m_strings; - -}; - -#endif // CONTACT_CB_H diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Tests/DynamicEdges.h b/src/dependencies/Box2D_v2.3.0/Contributions/Tests/DynamicEdges.h deleted file mode 100644 index fff4b0c..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Tests/DynamicEdges.h +++ /dev/null @@ -1,294 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.gphysics.com -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef DYNAMIC_EDGES_H -#define DYNAMIC_EDGES_H - -class DynamicEdges : public Test -{ -public: - DynamicEdges() - { - { - b2BodyDef bd; - bd.position.Set(0.0f, -10.0f); - b2Body* body = m_world->CreateBody(&bd); - - b2PolygonDef sd; - sd.SetAsBox(50.0f, 10.0f); - body->CreateFixture(&sd); - } - - { - b2CircleDef sd1; - sd1.radius = 0.5f; - sd1.localPosition.Set(-0.5f, 0.5f); - sd1.density = 2.0f; - - b2CircleDef sd2; - sd2.radius = 0.5f; - sd2.localPosition.Set(0.5f, 0.5f); - sd2.density = 0.0f; // massless - - for (int i = 0; i < 10; ++i) - { - float32 x = RandomFloat(-0.1f, 0.1f); - b2BodyDef bd; - bd.position.Set(x + 5.0f, 1.05f + 2.5f * i); - bd.angle = RandomFloat(-b2_pi, b2_pi); - b2Body* body = m_world->CreateBody(&bd); - body->CreateFixture(&sd1); - body->CreateFixture(&sd2); - body->SetMassFromShapes(); - } - } - - { - b2PolygonDef sd1; - sd1.SetAsBox(0.25f, 0.5f); - sd1.density = 2.0f; - - b2PolygonDef sd2; - sd2.SetAsBox(0.25f, 0.5f, b2Vec2(0.0f, -0.5f), 0.5f * b2_pi); - sd2.density = 2.0f; - - for (int i = 0; i < 10; ++i) - { - float32 x = RandomFloat(-0.1f, 0.1f); - b2BodyDef bd; - bd.position.Set(x - 5.0f, 1.05f + 2.5f * i); - bd.angle = RandomFloat(-b2_pi, b2_pi); - b2Body* body = m_world->CreateBody(&bd); - body->CreateFixture(&sd1); - body->CreateFixture(&sd2); - body->SetMassFromShapes(); - } - } - - { - b2XForm xf1; - xf1.R.Set(0.3524f * b2_pi); - xf1.position = b2Mul(xf1.R, b2Vec2(1.0f, 0.0f)); - - b2PolygonDef sd1; - sd1.vertexCount = 3; - sd1.vertices[0] = b2Mul(xf1, b2Vec2(-1.0f, 0.0f)); - sd1.vertices[1] = b2Mul(xf1, b2Vec2(1.0f, 0.0f)); - sd1.vertices[2] = b2Mul(xf1, b2Vec2(0.0f, 0.5f)); - sd1.density = 2.0f; - - b2XForm xf2; - xf2.R.Set(-0.3524f * b2_pi); - xf2.position = b2Mul(xf2.R, b2Vec2(-1.0f, 0.0f)); - - b2PolygonDef sd2; - sd2.vertexCount = 3; - sd2.vertices[0] = b2Mul(xf2, b2Vec2(-1.0f, 0.0f)); - sd2.vertices[1] = b2Mul(xf2, b2Vec2(1.0f, 0.0f)); - sd2.vertices[2] = b2Mul(xf2, b2Vec2(0.0f, 0.5f)); - sd2.density = 2.0f; - - for (int32 i = 0; i < 10; ++i) - { - float32 x = RandomFloat(-0.1f, 0.1f); - b2BodyDef bd; - bd.position.Set(x, 2.05f + 2.5f * i); - bd.angle = 0.0f; - b2Body* body = m_world->CreateBody(&bd); - body->CreateFixture(&sd1); - body->CreateFixture(&sd2); - body->SetMassFromShapes(); - } - } - - { - b2PolygonDef sd_bottom; - sd_bottom.SetAsBox( 1.5f, 0.15f ); - sd_bottom.density = 4.0f; - - b2PolygonDef sd_left; - sd_left.SetAsBox(0.15f, 2.7f, b2Vec2(-1.45f, 2.35f), 0.2f); - sd_left.density = 4.0f; - - b2PolygonDef sd_right; - sd_right.SetAsBox(0.15f, 2.7f, b2Vec2(1.45f, 2.35f), -0.2f); - sd_right.density = 4.0f; - - b2BodyDef bd; - bd.position.Set( 0.0f, 2.0f ); - b2Body* body = m_world->CreateBody(&bd); - body->CreateFixture(&sd_bottom); - body->CreateFixture(&sd_left); - body->CreateFixture(&sd_right); - body->SetMassFromShapes(); - } - - { - float32 loop1[] = - { - 0.063134534f,8.3695248f, - 0.94701801f,9.3165428f, - 0.0f,9.0640047f, - -0.12626907f,10.326695f, - 1.4520943f,11.77879f, - 2.2728432f,10.137292f, - 2.3991123f,11.147444f, - 3.5986685f,10.958041f, - 3.9143411f,7.3593722f, - 4.1668793f,9.4428119f, - 5.4295699f,9.3165428f, - 6.2503189f,8.3063903f, - 6.6922606f,10.137292f, - 4.9876282f,9.8216191f, - 4.7350901f,10.958041f, - 7.2604714f,11.652521f, - 10.732871f,11.147444f, - 10.480333f,10.642368f, - 10.732871f,9.8216191f, - 11.55362f,9.4428119f, - 12.374369f,9.3796773f, - 13.005714f,9.8216191f, - 13.195118f,10.38983f, - 13.005714f,10.768637f, - 12.626907f,10.894906f, - 12.753176f,11.526252f, - 13.573925f,11.715655f, - 14.836616f,11.399982f, - 16.351844f,10.768637f, - 17.867073f,11.399982f, - 17.803939f,10.263561f, - 17.361997f,8.3063903f, - 17.803939f,8.1801212f, - 18.056477f,9.5059464f, - 18.182746f,11.336848f, - 18.561553f,11.210579f, - 18.561553f,9.6322155f, - 18.561553f,7.7381795f, - 18.687822f,5.5284708f, - 19.382302f,5.6547398f, - 19.066629f,8.1801212f, - 19.003495f,10.263561f, - 19.066629f,11.463117f, - 19.887378f,11.841924f, - 20.708127f,11.273713f, - 21.0238f,10.011023f, - 20.708127f,7.2962377f, - 21.086934f,6.2860852f, - 21.150069f,3.7607038f, - 20.392455f,2.5611476f, - 18.624688f,2.5611476f, - 20.771262f,2.1192059f, - 20.771262f,0.22516988f, - 18.624688f,-0.2799064f, - 13.826463f,0.16203534f, - 14.015867f,1.7403987f, - 13.195118f,2.1823404f, - 12.626907f,1.5509951f, - 12.879445f,0.85651522f, - 12.626907f,0.35143895f, - 10.543467f,1.298457f, - 11.490485f,3.9501074f, - 13.889598f,3.6344347f, - 13.889598f,2.9399549f, - 14.584077f,3.8869729f, - 11.932427f,5.2127981f, - 9.7227183f,4.0132419f, - 10.796005f,3.5081657f, - 9.7858528f,3.2556275f, - 10.796005f,2.4980131f, - 7.9549513f,1.7403987f, - 9.6595837f,1.424726f, - 9.217642f,0.66711162f, - 8.270624f,-0.090502792f, - 7.0079333f,0.85651522f, - 6.1240498f,-0.15363733f, - 6.1240498f,3.192493f, - 5.6821081f,2.4348786f, - 4.9876282f,2.1192059f, - 4.1037447f,1.8666678f, - 3.0304576f,1.8666678f, - 2.0834396f,2.245475f, - 1.6414979f,2.6242822f, - 1.3258252f,3.5081657f, - 1.2626907f,0.47770802f, - 0.63134534f,0.035766276f, - 0.063134534f,0.98278429f - }; - - float32 loop2[] = - { - 8.270624f,6.1598161f, - 8.270624f,5.3390672f, - 8.7757003f,5.086529f, - 9.4701801f,5.5284708f, - 9.217642f,6.033547f, - 8.7757003f,6.4123542f - }; - - b2Vec2 b2Loop1[87]; - b2Vec2 b2Loop2[6]; - - for (int32 i = 86; i >= 0; i--) { - b2Loop1[86 - i].Set(loop1[i*2] + 10.0f, loop1[i*2 + 1] + 1.0f); - } - /*for (int32 i = 0; i < 87; i++) { - b2Loop1[i].Set(loop1[i*2] + 10.0f, loop1[i*2 + 1] + 1.0f); - }*/ - - for (int32 i = 0; i < 6; i++) { - b2Loop2[i].Set(loop2[i*2], loop2[i*2 + 1]); - } - - b2BodyDef bd; - bd.position.Set( 0.0f, 0.0f ); - b2Body* body = m_world->CreateBody(&bd); - - b2CircleDef weight; - weight.filter.maskBits = 0x0000; - weight.density = 4.0f; - weight.radius = 0.5f; - weight.localPosition.Set(8.9f, 5.75f); - body->CreateFixture(&weight); - - b2EdgeChainDef edgeDef; - edgeDef.vertexCount = 6; - edgeDef.vertices = b2Loop2; - b2CreateEdgeChain(body, &edgeDef); - - body->SetMassFromShapes(); - - body = m_world->CreateBody(&bd); - weight.radius = 5.0f; - weight.localPosition.Set(20.5f, 7.0f); - body->CreateFixture(&weight); - - edgeDef.vertexCount = 87; - edgeDef.vertices = b2Loop1; - b2CreateEdgeChain(body, &edgeDef); - - body->SetMassFromShapes(); - } - } - - static Test* Create() - { - return new DynamicEdges; - } -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Tests/ElasticBody.h b/src/dependencies/Box2D_v2.3.0/Contributions/Tests/ElasticBody.h deleted file mode 100644 index 12e599d..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Tests/ElasticBody.h +++ /dev/null @@ -1,465 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.gphysics.com -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef ELASTIC_BODY_H -#define ELASTIC_BODY_H - -class ElasticBody : public Test -{ -public: - b2Body* bodies[64]; - b2Body* m_ground; - b2Body* m_elev; - b2PrismaticJoint* m_joint_elev; - /// Main... - ElasticBody() - { - /// Bottom static body - { - b2PolygonDef sd; - sd.SetAsBox(50.0f, 2.0f); - sd.friction = 0.1f; - sd.restitution = 0.1f; - b2BodyDef bd; - bd.position.Set(-1.0f, -7.5f); - m_ground = m_world->CreateBody(&bd); - m_ground->CreateFixture(&sd); - } - /// Upper static body - { - b2PolygonDef sd; - sd.SetAsBox(20.0f, 0.50f,b2Vec2(0.f,0.f),0.047f*b2_pi); - sd.friction = 0.01f; - sd.restitution = 0.001f; - b2BodyDef bd; - bd.position.Set(-20.f, 93.0f); - b2Body* g = m_world->CreateBody(&bd); - g->CreateFixture(&sd); - sd.SetAsBox(15.f, 0.50f,b2Vec2(-15.0f,12.5f),0.0f); - g->CreateFixture(&sd); - - sd.SetAsBox(20.f,0.5f,b2Vec2(0.0f,-25.0f),-0.5f); - g->CreateFixture(&sd); - } - /// Left channel left wall - { - b2PolygonDef sd; - sd.SetAsBox(0.7f, 55.0f); - sd.friction = 0.1f; - sd.restitution = 0.1f; - b2BodyDef bd; - bd.position.Set(-49.3f, 50.0f); - b2Body* g = m_world->CreateBody(&bd); - g->CreateFixture(&sd); - } - /// Right wall - { - b2PolygonDef sd; - sd.SetAsBox(0.7f, 55.0f); - sd.friction = 0.1f; - sd.restitution = 0.1f; - b2BodyDef bd; - bd.position.Set(45.f, 50.0f); - b2Body* g = m_world->CreateBody(&bd); - g->CreateFixture(&sd); - } - /// Left channel right upper wall - { - b2PolygonDef sd; - sd.SetAsBox(0.5f, 20.0f); - sd.friction = 0.05f; - sd.restitution = 0.01f; - b2BodyDef bd; - bd.position.Set(-42.0f, 70.0f); - bd.angle = -0.03f*b2_pi; - b2Body* g = m_world->CreateBody(&bd); - g->CreateFixture(&sd); - } - /// Left channel right lower wall - { - b2PolygonDef sd; - sd.SetAsBox(0.50f, 23.0f); - sd.friction = 0.05f; - sd.restitution = 0.01f; - b2BodyDef bd; - bd.position.Set(-44.0f, 27.0f); - b2Body* g = m_world->CreateBody(&bd); - g->CreateFixture(&sd); - /// Bottom motors - b2CircleDef cd; - cd.radius = 3.0f; - cd.density = 15.0f; - cd.friction = 1.f; - cd.restitution = 0.2f; - /// 1. - bd.position.Set(-40.0f,2.5f); - b2Body* body = m_world->CreateBody(&bd); - body->CreateFixture(&cd); - body->SetMassFromShapes(); - b2RevoluteJointDef jr; - jr.Initialize (g,body,body->GetWorldCenter()+b2Vec2(0.f,1.f)); - jr.maxMotorTorque = 30000.f; - jr.enableMotor = true; - jr.motorSpeed = 20.f; - m_world->CreateJoint(&jr); - /// 1. left down - bd.position.Set(-46.0f,-2.5f); - cd. radius = 1.5f; jr.motorSpeed = -20.f; - body = m_world->CreateBody(&bd); - body->CreateFixture(&cd); - sd.SetAsBox(2.0f, 0.50f); - body->CreateFixture(&sd); - body->SetMassFromShapes(); - jr.Initialize (g,body,body->GetWorldCenter()); - m_world->CreateJoint(&jr); - /// 2. - cd.radius = 3.0f; jr.motorSpeed = 20.f; - bd.position.Set(-32.0f,2.5f); - body = m_world->CreateBody(&bd); - body->CreateFixture(&cd); - body->SetMassFromShapes(); - jr.Initialize (g,body,body->GetWorldCenter()+b2Vec2(0.f,1.f)); - m_world->CreateJoint(&jr); - /// 3. - jr.motorSpeed = 20.f; - bd.position.Set(-24.0f,1.5f); - body = m_world->CreateBody(&bd); - body->CreateFixture(&cd); - body->SetMassFromShapes(); - jr.Initialize (g,body,body->GetWorldCenter()+b2Vec2(0.f,1.f)); - m_world->CreateJoint(&jr); - /// 4. - bd.position.Set(-16.0f,0.8f); - body = m_world->CreateBody(&bd); - body->CreateFixture(&cd); - body->SetMassFromShapes(); - jr.Initialize (g,body,body->GetWorldCenter()+b2Vec2(0.f,1.f)); - m_world->CreateJoint(&jr); - /// 5. - bd.position.Set(-8.0f,0.5f); - body = m_world->CreateBody(&bd); - body->CreateFixture(&cd); - body->SetMassFromShapes(); - jr.Initialize (g,body,body->GetWorldCenter()+b2Vec2(0.f,1.f)); - m_world->CreateJoint(&jr); - /// 6. - bd.position.Set(0.0f,0.1f); - body = m_world->CreateBody(&bd); - body->CreateFixture(&cd); - body->SetMassFromShapes(); - jr.Initialize (g,body,body->GetWorldCenter()+b2Vec2(0.f,1.f)); - m_world->CreateJoint(&jr); - /// 7. - bd.position.Set(8.0f,-0.5f); - body = m_world->CreateBody(&bd); - body->CreateFixture(&cd); - sd.SetAsBox(3.7f, 0.5f); - body->CreateFixture(&sd); - body->SetMassFromShapes(); - jr.Initialize (g,body,body->GetWorldCenter()+b2Vec2(0.f,1.f)); - m_world->CreateJoint(&jr); - /// 8. right rotator - sd.SetAsBox(5.f, 0.5f); - sd.density = 2.0f; - bd.position.Set(18.0f,1.f); - b2Body* rightmotor = m_world->CreateBody(&bd); - rightmotor->CreateFixture(&sd); - sd.SetAsBox(4.5f, 0.5f, b2Vec2(0.f,0.f),b2_pi/3.f); - rightmotor->CreateFixture(&sd); - sd.SetAsBox(4.5f, 0.5f, b2Vec2(0.f,0.f),b2_pi*2.f/3.f); - rightmotor->CreateFixture(&sd); - cd.radius = 4.2f; - rightmotor->CreateFixture(&cd); - rightmotor->SetMassFromShapes(); - jr.Initialize (g,rightmotor,rightmotor->GetWorldCenter()); - jr.maxMotorTorque = 70000.f; - jr.motorSpeed = -4.f; - m_world->CreateJoint(&jr); - /// 9. left rotator - sd.SetAsBox(8.5f, 0.5f); - sd.density = 2.0f; - bd.position.Set(-34.0f,17.f); - body = m_world->CreateBody(&bd); - body->CreateFixture(&sd); - sd.SetAsBox(8.5f, 0.5f, b2Vec2(0.f,0.f),b2_pi*.5f); - body->CreateFixture(&sd); - cd.radius = 7.f; - cd.friction = 0.9f; - body->CreateFixture(&cd); - body->SetMassFromShapes(); - jr.Initialize (g,body,body->GetWorldCenter()); - jr.maxMotorTorque = 100000.f; - jr.motorSpeed = -5.f; - m_world->CreateJoint(&jr); - /// big compressor - sd.SetAsBox(3.0f,4.f); - sd.density = 10.0f; - bd.position.Set(-16.0f,17.f); - b2Body *hammerleft = m_world->CreateBody(&bd); - hammerleft->CreateFixture(&sd); - hammerleft->SetMassFromShapes(); - b2DistanceJointDef jd; - jd.Initialize(body, hammerleft, body->GetWorldCenter()+b2Vec2(0.f,6.f), hammerleft->GetWorldCenter() ); - m_world->CreateJoint(&jd); - - bd.position.Set(4.0f,17.f); - b2Body *hammerright = m_world->CreateBody(&bd); - hammerright->CreateFixture(&sd); - hammerright->SetMassFromShapes(); - jd.Initialize(body, hammerright, body->GetWorldCenter()-b2Vec2(0.f,6.f), hammerright->GetWorldCenter() ); - m_world->CreateJoint(&jd); - /// pusher - sd.SetAsBox(6.f,0.75f); - bd.position.Set(-21.0f,9.f); - b2Body* pusher = m_world->CreateBody(&bd); - pusher->CreateFixture(&sd); - sd.SetAsBox(2.f,1.5f,b2Vec2(-5.f,0.f),0.f); - pusher->SetMassFromShapes(); - pusher->CreateFixture(&sd); - jd.Initialize(rightmotor,pusher,rightmotor->GetWorldCenter()+b2Vec2(-8.0f,0.f), - pusher->GetWorldCenter()+b2Vec2(5.0f,0.f) ); - m_world->CreateJoint(&jd); - } - /// Static bodies above motors - { - b2PolygonDef sd; - b2CircleDef cd; - sd.SetAsBox(9.0f, 0.5f); - sd.friction = 0.05f; - sd.restitution = 0.01f; - b2BodyDef bd; - bd.position.Set(-15.5f, 12.f); - bd.angle = 0.0; - b2Body* g = m_world->CreateBody(&bd); - g->CreateFixture(&sd); - - sd.SetAsBox(8.f, 0.5f, b2Vec2(23.f,0.f),0.f); - g->CreateFixture(&sd); - /// compressor statics - sd.SetAsBox(7.0f, 0.5f, b2Vec2(-2.f,9.f),0.f); - g->CreateFixture(&sd); - sd.SetAsBox(9.0f, 0.5f, b2Vec2(22.f,9.f),0.f); - g->CreateFixture(&sd); - - sd.SetAsBox(19.0f, 0.5f, b2Vec2(-9.f,15.f),-0.05f); - g->CreateFixture(&sd); - sd.SetAsBox(4.7f, 0.5f, b2Vec2(15.f,11.5f),-0.5f); - g->CreateFixture(&sd); - /// below compressor - sd.SetAsBox(26.0f, 0.3f, b2Vec2(17.f,-4.4f),-0.02f); - g->CreateFixture(&sd); - cd.radius = 1.0f; cd.friction = 1.0; - cd.localPosition = b2Vec2(29.f,-6.f); - g->CreateFixture(&cd); - cd.radius = 0.7f; - cd.localPosition = b2Vec2(-2.f,-4.5f); - g->CreateFixture(&cd); - } - /// Elevator - { - b2BodyDef bd; - b2CircleDef cd; - b2PolygonDef sd; - - bd.position.Set(40.0f,4.0f); - m_elev = m_world->CreateBody(&bd); - - sd.SetAsBox(0.5f, 2.5f,b2Vec2(3.0f,-3.0f), 0.f); - sd.density = 1.f; - sd.friction = 0.01f; - m_elev->CreateFixture(&sd); - sd.SetAsBox(7.0f, 0.5f, b2Vec2(-3.5f,-5.5f), 0.f); - m_elev->CreateFixture(&sd); - sd.SetAsBox(0.5f, 2.5f, b2Vec2(-11.f,-3.5f), 0.f); - m_elev->CreateFixture(&sd); - m_elev->SetMassFromShapes(); - - b2PrismaticJointDef jp; - jp.Initialize(m_ground,m_elev, bd.position, b2Vec2(0.0f, 1.0f)); - jp.lowerTranslation = 0.0f; - jp.upperTranslation = 100.0f; - jp.enableLimit = true; - jp.enableMotor = true; - jp.maxMotorForce = 10000.f; - jp.motorSpeed = 0.f; - m_joint_elev = (b2PrismaticJoint*)m_world->CreateJoint(&jp); - - /// Korb - sd.SetAsBox(2.3f, 0.5f,b2Vec2(1.f,0.0f), 0.0f); - sd.density = 0.5f; - bd.position.Set(29.0f,6.5f); - b2Body* body = m_world->CreateBody(&bd); - body->CreateFixture(&sd); - sd.SetAsBox(2.5f, 0.5f,b2Vec2(3.0f,-2.f), b2_pi/2.f); - body->CreateFixture(&sd); - sd.SetAsBox(4.6f, 0.5f,b2Vec2(7.8f,-4.0f), 0.f); - body->CreateFixture(&sd); - sd.SetAsBox(0.5f, 4.5f,b2Vec2(12.f,0.0f), 0.f); - body->CreateFixture(&sd); - - sd.SetAsBox(0.5f, 0.5f,b2Vec2(13.f,4.0f), 0.f); - body->CreateFixture(&sd); - - cd.radius = 0.7f; cd.density = 1.f; cd.friction = 0.01f; - cd.localPosition = b2Vec2(0.f,0.f); - body->CreateFixture(&cd); - body->SetMassFromShapes(); - - b2RevoluteJointDef jr; - jr.Initialize(m_elev,body, bd.position); - jr.enableLimit = true; - jr.lowerAngle = -0.2f; - jr.upperAngle = b2_pi*1.1f; - jr.collideConnected = true; - m_world->CreateJoint(&jr); - /// upper body exit - sd.SetAsBox(14.0f, 0.5f,b2Vec2(-3.5f,-10.0f), 0.0f); - bd.position.Set(17.5f,96.0f); - body = m_world->CreateBody(&bd); - body->CreateFixture(&sd); - } - /// "Elastic body" 64 bodies - something like a lin. elastic compound - /// connected via dynamic forces (springs) - { - b2PolygonDef sd; - sd.SetAsBox(0.55f, 0.55f); - sd.density = 1.5f; - sd.friction = 0.01f; - sd.filter.groupIndex = -1; - b2Vec2 startpoint(30.f,20.f); - b2BodyDef bd; - bd.isBullet = false; - bd.allowSleep = false; - for (int i = 0; i < 8; ++i) - { - for (int j = 0; j < 8; ++j) - { - bd.position.Set(j*1.02f, 2.51f + 1.02f * i); - bd.position += startpoint; - b2Body* body = m_world->CreateBody(&bd); - bodies[8*i+j] = body; - body->CreateFixture(&sd); - body->SetMassFromShapes(); - } - } - } - } - /// Apply dynamic forces (springs) and check elevator state - void Step(Settings* settings) - { - Test::Step(settings); - for (int i=0; i<8; ++i){ - for (int j=0; j<8; ++j){ - b2Vec2 zero(0.0f,0.0f); - b2Vec2 down(0.0f, -0.5f); - b2Vec2 up(0.0f, 0.5f); - b2Vec2 right(0.5f, 0.0f); - b2Vec2 left(-0.5f, 0.0f); - int ind = i*8+j; - int indr = ind+1; - int indd = ind+8; - float32 spring = 500.0f; - float32 damp = 5.0f; - if (j<7) { - AddSpringForce(*(bodies[ind]),zero,*(bodies[indr]),zero,spring, damp, 1.0f); - AddSpringForce(*(bodies[ind]),right,*(bodies[indr]),left,0.5f*spring, damp, 0.0f); - } - if (i<7) { - AddSpringForce(*(bodies[ind]),zero,*(bodies[indd]),zero,spring, damp, 1.0f); - AddSpringForce(*(bodies[ind]),up,*(bodies[indd]),down,0.5f*spring,damp,0.0f); - } - int inddr = indd + 1; - int inddl = indd - 1; - float32 drdist = sqrtf(2.0f); - if (i < 7 && j < 7){ - AddSpringForce(*(bodies[ind]),zero,*(bodies[inddr]),zero,spring, damp, drdist); - } - if (i < 7 && j > 0){ - AddSpringForce(*(bodies[ind]),zero,*(bodies[inddl]),zero,spring, damp, drdist); - } - - indr = ind+2; - indd = ind+8*2; - if (j<6) { - AddSpringForce(*(bodies[ind]),zero,*(bodies[indr]),zero,spring, damp, 2.0f); - } - if (i<6) { - AddSpringForce(*(bodies[ind]),zero,*(bodies[indd]),zero,spring,damp,2.0f); - } - - inddr = indd + 2; - inddl = indd - 2; - drdist = sqrtf(2.0f)*2.0f; - if (i < 6 && j < 6){ - AddSpringForce(*(bodies[ind]),zero,*(bodies[inddr]),zero,spring, damp, drdist); - } - if (i < 6 && j > 1){ - AddSpringForce(*(bodies[ind]),zero,*(bodies[inddl]),zero,spring, damp, drdist); - } - } - } - /// Check if bodies are near elevator - /// Look if the body to lift is near the elevator - b2Vec2 p1 = bodies[0]->GetWorldCenter(); - b2Vec2 p2 = bodies[63]->GetWorldCenter(); - /// m_elev: elevator prism. joint - b2Vec2 e = m_elev->GetWorldCenter() + b2Vec2(0.f,7.f); - // maybe not the best way to do it... - // Bodies reached the elevator side - if ( p1.x>e.x || p2.x>e.x ) { - // go up - if ( ( p1.yGetJointTranslation()<=m_joint_elev->GetLowerLimit()+1.f ) ) - { - m_joint_elev->SetMotorSpeed(20.f); - //printf("lift goes up trans: %G\n",m_joint_elev->GetJointTranslation()); - } - } - // go down - if ( (m_joint_elev->GetJointTranslation()>=m_joint_elev->GetUpperLimit()-2.f) ) - { - m_joint_elev->SetMotorSpeed(-15.f); - //printf("lift goes down: %G\n",m_joint_elev->GetJointTranslation()); - } - } - /// Add a spring force - void AddSpringForce(b2Body& bA, b2Vec2& localA, b2Body& bB, b2Vec2& localB, float32 k, float32 friction, float32 desiredDist) - { - b2Vec2 pA = bA.GetWorldPoint(localA); - b2Vec2 pB = bB.GetWorldPoint(localB); - b2Vec2 diff = pB - pA; - //Find velocities of attach points - b2Vec2 vA = bA.GetLinearVelocity() - b2Cross(bA.GetWorldVector(localA), bA.GetAngularVelocity()); - b2Vec2 vB = bB.GetLinearVelocity() - b2Cross(bB.GetWorldVector(localB), bB.GetAngularVelocity()); - b2Vec2 vdiff = vB-vA; - float32 dx = diff.Normalize(); //normalizes diff and puts length into dx - float32 vrel = vdiff.x*diff.x + vdiff.y*diff.y; - float32 forceMag = -k*(dx-desiredDist) - friction*vrel; - diff *= forceMag; // diff *= forceMag - bB.ApplyForce(diff, bA.GetWorldPoint(localA)); - diff *= -1.0f; - bA.ApplyForce(diff, bB.GetWorldPoint(localB)); - } - /// Default constructor - static Test* Create() - { - return new ElasticBody; - } -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Tests/PyramidStaticEdges.h b/src/dependencies/Box2D_v2.3.0/Contributions/Tests/PyramidStaticEdges.h deleted file mode 100644 index b96aa8f..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Tests/PyramidStaticEdges.h +++ /dev/null @@ -1,91 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.gphysics.com -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef PYRAMID_STATIC_EDGES_H -#define PYRAMID_STATIC_EDGES_H - -class PyramidStaticEdges : public Test -{ -public: - PyramidStaticEdges() - { - { - float32 coords[] = - { - 50.0f,0.0f, - -50.0f,0.0f - }; - - b2Vec2 verts[2]; - - for (int32 i = 0; i < 2; i++) - { - verts[i].Set(coords[i*2], coords[i*2 + 1]); - } - - b2BodyDef bd; - bd.position.Set( 0.0f, 0.0f ); - b2Body* body = m_world->CreateBody(&bd); - b2EdgeDef edgeDef; - edgeDef.vertex1 = verts[0]; - edgeDef.vertex2 = verts[1]; - body->CreateFixture(&edgeDef); - - //body->SetMassFromShapes(); - } - - { - b2PolygonDef sd; - float32 a = 0.5f; - sd.SetAsBox(a, a); - sd.density = 5.0f; - - b2Vec2 x(-10.0f, 1.0f); - b2Vec2 y; - b2Vec2 deltaX(0.5625f, 2.0f); - b2Vec2 deltaY(1.125f, 0.0f); - - const int32 N = 2; - - for (int32 i = 0; i < N; ++i) - { - y = x; - - for (int32 j = i; j < N; ++j) - { - b2BodyDef bd; - bd.position = y; - b2Body* body = m_world->CreateBody(&bd); - body->CreateFixture(&sd); - body->SetMassFromShapes(); - - y += deltaY; - } - - x += deltaX; - } - } - } - - static Test* Create() - { - return new PyramidStaticEdges; - } -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Tests/StaticEdges.h b/src/dependencies/Box2D_v2.3.0/Contributions/Tests/StaticEdges.h deleted file mode 100644 index 0dd6395..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Tests/StaticEdges.h +++ /dev/null @@ -1,278 +0,0 @@ -/* -* Copyright (c) 2006-2009 Erin Catto http://www.gphysics.com -* -* This software is provided 'as-is', without any express or implied -* warranty. In no event will the authors be held liable for any damages -* arising from the use of this software. -* Permission is granted to anyone to use this software for any purpose, -* including commercial applications, and to alter it and redistribute it -* freely, subject to the following restrictions: -* 1. The origin of this software must not be misrepresented; you must not -* claim that you wrote the original software. If you use this software -* in a product, an acknowledgment in the product documentation would be -* appreciated but is not required. -* 2. Altered source versions must be plainly marked as such, and must not be -* misrepresented as being the original software. -* 3. This notice may not be removed or altered from any source distribution. -*/ - -#ifndef STATIC_EDGES_H -#define STATIC_EDGES_H - -class StaticEdges : public Test -{ -public: - StaticEdges() - { -#if 0 - { - b2CircleDef sd; - sd.radius = 0.5f; - sd.localPosition.SetZero(); - sd.density = 2.0f; - - b2BodyDef bd; - bd.position.Set(0.0f, 2.0f); - b2Body* body = m_world->CreateBody(&bd); - body->CreateFixture(&sd); - body->SetMassFromShapes(); - } -#endif - - { - b2CircleDef sd1; - sd1.radius = 0.5f; - sd1.localPosition.Set(-0.5f, 0.5f); - sd1.density = 2.0f; - - b2CircleDef sd2; - sd2.radius = 0.5f; - sd2.localPosition.Set(0.5f, 0.5f); - sd2.density = 0.0f; // massless - - for (int i = 0; i < 10; ++i) - { - float32 x = RandomFloat(-0.1f, 0.1f); - b2BodyDef bd; - bd.position.Set(x + 5.0f, 1.05f + 2.5f * i); - bd.angle = RandomFloat(-b2_pi, b2_pi); - b2Body* body = m_world->CreateBody(&bd); - body->CreateFixture(&sd1); - body->CreateFixture(&sd2); - body->SetMassFromShapes(); - } - } - - { - b2PolygonDef sd1; - sd1.SetAsBox(0.25f, 0.5f); - sd1.density = 2.0f; - - b2PolygonDef sd2; - sd2.SetAsBox(0.25f, 0.5f, b2Vec2(0.0f, -0.5f), 0.5f * b2_pi); - sd2.density = 2.0f; - - for (int i = 0; i < 10; ++i) - { - float32 x = RandomFloat(-0.1f, 0.1f); - b2BodyDef bd; - bd.position.Set(x - 5.0f, 1.05f + 2.5f * i); - bd.angle = RandomFloat(-b2_pi, b2_pi); - b2Body* body = m_world->CreateBody(&bd); - body->CreateFixture(&sd1); - body->CreateFixture(&sd2); - body->SetMassFromShapes(); - } - } - - { - b2XForm xf1; - xf1.R.Set(0.3524f * b2_pi); - xf1.position = b2Mul(xf1.R, b2Vec2(1.0f, 0.0f)); - - b2PolygonDef sd1; - sd1.vertexCount = 3; - sd1.vertices[0] = b2Mul(xf1, b2Vec2(-1.0f, 0.0f)); - sd1.vertices[1] = b2Mul(xf1, b2Vec2(1.0f, 0.0f)); - sd1.vertices[2] = b2Mul(xf1, b2Vec2(0.0f, 0.5f)); - sd1.density = 2.0f; - - b2XForm xf2; - xf2.R.Set(-0.3524f * b2_pi); - xf2.position = b2Mul(xf2.R, b2Vec2(-1.0f, 0.0f)); - - b2PolygonDef sd2; - sd2.vertexCount = 3; - sd2.vertices[0] = b2Mul(xf2, b2Vec2(-1.0f, 0.0f)); - sd2.vertices[1] = b2Mul(xf2, b2Vec2(1.0f, 0.0f)); - sd2.vertices[2] = b2Mul(xf2, b2Vec2(0.0f, 0.5f)); - sd2.density = 2.0f; - - for (int32 i = 0; i < 10; ++i) - { - float32 x = RandomFloat(-0.1f, 0.1f); - b2BodyDef bd; - bd.position.Set(x, 2.05f + 2.5f * i); - bd.angle = 0.0f; - b2Body* body = m_world->CreateBody(&bd); - body->CreateFixture(&sd1); - body->CreateFixture(&sd2); - body->SetMassFromShapes(); - } - } - - { - float32 loop1[] = - { - 0.063134534f,8.3695248f, - 0.94701801f,9.3165428f, - 0.0f,9.0640047f, - -0.12626907f,10.326695f, - 1.4520943f,11.77879f, - 2.2728432f,10.137292f, - 2.3991123f,11.147444f, - 3.5986685f,10.958041f, - 3.9143411f,7.3593722f, - 4.1668793f,9.4428119f, - 5.4295699f,9.3165428f, - 6.2503189f,8.3063903f, - 6.6922606f,10.137292f, - 4.9876282f,9.8216191f, - 4.7350901f,10.958041f, - 7.2604714f,11.652521f, - 10.732871f,11.147444f, - 10.480333f,10.642368f, - 10.732871f,9.8216191f, - 11.55362f,9.4428119f, - 12.374369f,9.3796773f, - 13.005714f,9.8216191f, - 13.195118f,10.38983f, - 13.005714f,10.768637f, - 12.626907f,10.894906f, - 12.753176f,11.526252f, - 13.573925f,11.715655f, - 14.836616f,11.399982f, - 16.351844f,10.768637f, - 17.867073f,11.399982f, - 17.803939f,10.263561f, - 17.361997f,8.3063903f, - 17.803939f,8.1801212f, - 18.056477f,9.5059464f, - 18.182746f,11.336848f, - 18.561553f,11.210579f, - 18.561553f,9.6322155f, - 18.561553f,7.7381795f, - 18.687822f,5.5284708f, - 19.382302f,5.6547398f, - 19.066629f,8.1801212f, - 19.003495f,10.263561f, - 19.066629f,11.463117f, - 19.887378f,11.841924f, - 20.708127f,11.273713f, - 21.0238f,10.011023f, - 20.708127f,7.2962377f, - 21.086934f,6.2860852f, - 21.150069f,3.7607038f, - 20.392455f,2.5611476f, - 18.624688f,2.5611476f, - 20.771262f,2.1192059f, - 20.771262f,0.22516988f, - 18.624688f,-0.2799064f, - 13.826463f,0.16203534f, - 14.015867f,1.7403987f, - 13.195118f,2.1823404f, - 12.626907f,1.5509951f, - 12.879445f,0.85651522f, - 12.626907f,0.35143895f, - 10.543467f,1.298457f, - 11.490485f,3.9501074f, - 13.889598f,3.6344347f, - 13.889598f,2.9399549f, - 14.584077f,3.8869729f, - 11.932427f,5.2127981f, - 9.7227183f,4.0132419f, - 10.796005f,3.5081657f, - 9.7858528f,3.2556275f, - 10.796005f,2.4980131f, - 7.9549513f,1.7403987f, - 9.6595837f,1.424726f, - 9.217642f,0.66711162f, - 8.270624f,-0.090502792f, - 7.0079333f,0.85651522f, - 6.1240498f,-0.15363733f, - 6.1240498f,3.192493f, - 5.6821081f,2.4348786f, - 4.9876282f,2.1192059f, - 4.1037447f,1.8666678f, - 3.0304576f,1.8666678f, - 2.0834396f,2.245475f, - 1.6414979f,2.6242822f, - 1.3258252f,3.5081657f, - 1.2626907f,0.47770802f, - 0.63134534f,0.035766276f, - 0.063134534f,0.98278429f - }; - - float32 loop2[] = - { - 8.270624f,6.1598161f, - 8.270624f,5.3390672f, - 8.7757003f,5.086529f, - 9.4701801f,5.5284708f, - 9.217642f,6.033547f, - 8.7757003f,6.4123542f - }; - - float32 loop3[] = - { - -5.0f, 10.0f, - 5.0f, 10.0f, - 5.0f, 0.0f, - -5.0f, 0.0f, - }; - - b2Vec2 pointLoop1[87]; - b2Vec2 pointLoop2[6]; - b2Vec2 pointLoop3[4]; - - for (int32 i = 0; i < 87; i++) - { - pointLoop1[i].Set(loop1[i*2] - 10.0f, loop1[i*2 + 1]); - } - - for (int32 i = 0; i < 6; i++) - { - pointLoop2[i].Set(loop2[i*2] - 10.0f, loop2[i*2 + 1]); - } - - for (int32 i = 0; i < 4; i++) - { - pointLoop3[i].Set(loop3[i*2], loop3[i*2 + 1]); - } - - b2BodyDef bd; - bd.position.Set( 0.0f, 0.0f ); - b2Body* body = m_world->CreateBody(&bd); - - b2EdgeChainDef edgeDef; - edgeDef.vertexCount = 87; - edgeDef.vertices = pointLoop1; - b2CreateEdgeChain(body, &edgeDef); - - edgeDef.vertexCount = 6; - edgeDef.vertices = pointLoop2; - b2CreateEdgeChain(body, &edgeDef); - - //edgeDef.vertexCount = 4; - //edgeDef.vertices = pointLoop3; - //b2CreateEdgeChain(body, &edgeDef); - } - } - - static Test* Create() - { - return new StaticEdges; - } -}; - -#endif diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Utilities/ConvexDecomposition/b2Polygon.cpp b/src/dependencies/Box2D_v2.3.0/Contributions/Utilities/ConvexDecomposition/b2Polygon.cpp deleted file mode 100644 index 1fc755b..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Utilities/ConvexDecomposition/b2Polygon.cpp +++ /dev/null @@ -1,1579 +0,0 @@ -/* - * Copyright (c) 2007 Eric Jordan - * - * This software is provided 'as-is', without any express or implied - * warranty. In no event will the authors be held liable for any damages - * arising from the use of this software. - * Permission is granted to anyone to use this software for any purpose, - * including commercial applications, and to alter it and redistribute it - * freely, subject to the following restrictions: - * 1. The origin of this software must not be misrepresented; you must not - * claim that you wrote the original software. If you use this software - * in a product, an acknowledgment in the product documentation would be - * appreciated but is not required. - * 2. Altered source versions must be plainly marked as such, and must not be - * misrepresented as being the original software. - * 3. This notice may not be removed or altered from any source distribution. - */ - -// This utility works with Box2d version 2.0 (or higher), and not with 1.4.3 - -#include "b2Triangle.h" -#include "b2Polygon.h" - -#include -#include - -static bool B2_POLYGON_REPORT_ERRORS = false; - -//If you're using 1.4.3, b2_toiSlop won't exist, so set this equal to 0 -static const float32 toiSlop = 0.0f; - -/* - * Check if the lines a0->a1 and b0->b1 cross. - * If they do, intersectionPoint will be filled - * with the point of crossing. - * - * Grazing lines should not return true. - */ -bool intersect(const b2Vec2& a0, const b2Vec2& a1, - const b2Vec2& b0, const b2Vec2& b1, - b2Vec2& intersectionPoint) { - - if (a0 == b0 || a0 == b1 || a1 == b0 || a1 == b1) return false; - float x1 = a0.x; float y1 = a0.y; - float x2 = a1.x; float y2 = a1.y; - float x3 = b0.x; float y3 = b0.y; - float x4 = b1.x; float y4 = b1.y; - - //AABB early exit - if (b2Max(x1,x2) < b2Min(x3,x4) || b2Max(x3,x4) < b2Min(x1,x2) ) return false; - if (b2Max(y1,y2) < b2Min(y3,y4) || b2Max(y3,y4) < b2Min(y1,y2) ) return false; - - float ua = ((x4 - x3) * (y1 - y3) - (y4 - y3) * (x1 - x3)); - float ub = ((x2 - x1) * (y1 - y3) - (y2 - y1) * (x1 - x3)); - float denom = (y4 - y3) * (x2 - x1) - (x4 - x3) * (y2 - y1); - if (b2Abs(denom) < FLT_EPSILON) { - //Lines are too close to parallel to call - return false; - } - ua /= denom; - ub /= denom; - - if ((0 < ua) && (ua < 1) && (0 < ub) && (ub < 1)) { - //if (intersectionPoint){ - intersectionPoint.x = (x1 + ua * (x2 - x1)); - intersectionPoint.y = (y1 + ua * (y2 - y1)); - //} - //printf("%f, %f -> %f, %f crosses %f, %f -> %f, %f\n",x1,y1,x2,y2,x3,y3,x4,y4); - return true; - } - - return false; -} - -/* - * True if line from a0->a1 intersects b0->b1 - */ -bool intersect(const b2Vec2& a0, const b2Vec2& a1, - const b2Vec2& b0, const b2Vec2& b1) { - b2Vec2 myVec(0.0f,0.0f); - return intersect(a0, a1, b0, b1, myVec); -} - -b2Polygon::b2Polygon(float32* _x, float32* _y, int32 nVert) { - nVertices = nVert; - x = new float32[nVertices]; - y = new float32[nVertices]; - for (int32 i = 0; i < nVertices; ++i) { - x[i] = _x[i]; - y[i] = _y[i]; - } - areaIsSet = false; -} - -b2Polygon::b2Polygon(b2Vec2* v, int32 nVert) { - nVertices = nVert; - x = new float32[nVertices]; - y = new float32[nVertices]; - for (int32 i = 0; i < nVertices; ++i) { - x[i] = v[i].x; - y[i] = v[i].y; - - } - areaIsSet = false; -} - -b2Polygon::b2Polygon() { - x = NULL; - y = NULL; - nVertices = 0; - areaIsSet = false; -} - -b2Polygon::~b2Polygon() { - //printf("About to delete poly with %d vertices\n",nVertices); - delete[] x; - delete[] y; -} - -float32 b2Polygon::GetArea() { - // TODO: fix up the areaIsSet caching so that it can be used - //if (areaIsSet) return area; - area = 0.0f; - - //First do wraparound - area += x[nVertices-1]*y[0]-x[0]*y[nVertices-1]; - for (int i=0; i 0.0f); -} - -void b2Polygon::MergeParallelEdges(float32 tolerance) { - if (nVertices <= 3) return; //Can't do anything useful here to a triangle - bool* mergeMe = new bool[nVertices]; - int32 newNVertices = nVertices; - for (int32 i = 0; i < nVertices; ++i) { - int32 lower = (i == 0) ? (nVertices - 1) : (i - 1); - int32 middle = i; - int32 upper = (i == nVertices - 1) ? (0) : (i + 1); - float32 dx0 = x[middle] - x[lower]; - float32 dy0 = y[middle] - y[lower]; - float32 dx1 = x[upper] - x[middle]; - float32 dy1 = y[upper] - y[middle]; - float32 norm0 = sqrtf(dx0*dx0+dy0*dy0); - float32 norm1 = sqrtf(dx1*dx1+dy1*dy1); - if ( !(norm0 > 0.0f && norm1 > 0.0f) && newNVertices > 3 ) { - //Merge identical points - mergeMe[i] = true; - --newNVertices; - } - dx0 /= norm0; dy0 /= norm0; - dx1 /= norm1; dy1 /= norm1; - float32 cross = dx0 * dy1 - dx1 * dy0; - float32 dot = dx0 * dx1 + dy0 * dy1; - if (fabs(cross) < tolerance && dot > 0 && newNVertices > 3) { - mergeMe[i] = true; - --newNVertices; - } else { - mergeMe[i] = false; - } - } - if(newNVertices == nVertices || newNVertices == 0) { - delete[] mergeMe; - return; - } - float32* newx = new float32[newNVertices]; - float32* newy = new float32[newNVertices]; - int32 currIndex = 0; - for (int32 i=0; i < nVertices; ++i) { - if (mergeMe[i] || newNVertices == 0 || currIndex == newNVertices) continue; - b2Assert(currIndex < newNVertices); - newx[currIndex] = x[i]; - newy[currIndex] = y[i]; - ++currIndex; - } - delete[] x; - delete[] y; - delete[] mergeMe; - x = newx; - y = newy; - nVertices = newNVertices; -// printf("%d \n", newNVertices); -} - - /* - * Allocates and returns pointer to vector vertex array. - * Length of array is nVertices. - */ -b2Vec2* b2Polygon::GetVertexVecs() { - b2Vec2* out = new b2Vec2[nVertices]; - for (int32 i = 0; i < nVertices; ++i) { - out[i].Set(x[i], y[i]); - } - return out; -} - -b2Polygon::b2Polygon(b2Triangle& t) { - nVertices = 3; - x = new float[nVertices]; - y = new float[nVertices]; - for (int32 i = 0; i < nVertices; ++i) { - x[i] = t.x[i]; - y[i] = t.y[i]; - } -} - -void b2Polygon::Set(const b2Polygon& p) { - if (nVertices != p.nVertices){ - nVertices = p.nVertices; - if (x) delete[] x; - if (y) delete[] y; - x = new float32[nVertices]; - y = new float32[nVertices]; - } - - for (int32 i = 0; i < nVertices; ++i) { - x[i] = p.x[i]; - y[i] = p.y[i]; - } - areaIsSet = false; -} - - /* - * Assuming the polygon is simple, checks if it is convex. - */ -bool b2Polygon::IsConvex() { - bool isPositive = false; - for (int32 i = 0; i < nVertices; ++i) { - int32 lower = (i == 0) ? (nVertices - 1) : (i - 1); - int32 middle = i; - int32 upper = (i == nVertices - 1) ? (0) : (i + 1); - float32 dx0 = x[middle] - x[lower]; - float32 dy0 = y[middle] - y[lower]; - float32 dx1 = x[upper] - x[middle]; - float32 dy1 = y[upper] - y[middle]; - float32 cross = dx0 * dy1 - dx1 * dy0; - // Cross product should have same sign - // for each vertex if poly is convex. - bool newIsP = (cross >= 0) ? true : false; - if (i == 0) { - isPositive = newIsP; - } - else if (isPositive != newIsP) { - return false; - } - } - return true; -} - -/* - * Pulled from b2Shape.cpp, assertions removed - */ -static b2Vec2 PolyCentroid(const b2Vec2* vs, int32 count) -{ - b2Vec2 c; c.Set(0.0f, 0.0f); - float32 area = 0.0f; - - const float32 inv3 = 1.0f / 3.0f; - b2Vec2 pRef(0.0f, 0.0f); - for (int32 i = 0; i < count; ++i) - { - // Triangle vertices. - b2Vec2 p1 = pRef; - b2Vec2 p2 = vs[i]; - b2Vec2 p3 = i + 1 < count ? vs[i+1] : vs[0]; - - b2Vec2 e1 = p2 - p1; - b2Vec2 e2 = p3 - p1; - - float32 D = b2Cross(e1, e2); - - float32 triangleArea = 0.5f * D; - area += triangleArea; - - // Area weighted centroid - c += triangleArea * inv3 * (p1 + p2 + p3); - } - - // Centroid - c *= 1.0f / area; - return c; -} - - -/* - * Checks if polygon is valid for use in Box2d engine. - * Last ditch effort to ensure no invalid polygons are - * added to world geometry. - * - * Performs a full check, for simplicity, convexity, - * orientation, minimum angle, and volume. This won't - * be very efficient, and a lot of it is redundant when - * other tools in this section are used. - */ -bool b2Polygon::IsUsable(bool printErrors){ - int32 error = -1; - bool noError = true; - if (nVertices < 3 || nVertices > b2_maxPolygonVertices) {noError = false; error = 0;} - if (!IsConvex()) {noError = false; error = 1;} - if (!IsSimple()) {noError = false; error = 2;} - if (GetArea() < FLT_EPSILON) {noError = false; error = 3;} - - //Compute normals - b2Vec2* normals = new b2Vec2[nVertices]; - b2Vec2* vertices = new b2Vec2[nVertices]; - for (int32 i = 0; i < nVertices; ++i){ - vertices[i].Set(x[i],y[i]); - int32 i1 = i; - int32 i2 = i + 1 < nVertices ? i + 1 : 0; - b2Vec2 edge(x[i2]-x[i1],y[i2]-y[i1]); - normals[i] = b2Cross(edge, 1.0f); - normals[i].Normalize(); - } - - //Required side checks - for (int32 i=0; i= -b2_linearSlop){ - noError = false; - error = 5; - } - } - - - b2Vec2 centroid = PolyCentroid(vertices,nVertices); - b2Vec2 n1 = normals[iminus]; - b2Vec2 n2 = normals[i]; - b2Vec2 v = vertices[i] - centroid;; - - b2Vec2 d; - d.x = b2Dot(n1, v) - toiSlop; - d.y = b2Dot(n2, v) - toiSlop; - - // Shifting the edge inward by b2_toiSlop should - // not cause the plane to pass the centroid. - if ((d.x < 0.0f)||(d.y < 0.0f)){ - noError = false; - error = 6; - } - - } - delete[] vertices; - delete[] normals; - - if (!noError && printErrors){ - printf("Found invalid polygon, "); - switch(error){ - case 0: - printf("must have between 3 and %d vertices.\n",b2_maxPolygonVertices); - break; - case 1: - printf("must be convex.\n"); - break; - case 2: - printf("must be simple (cannot intersect itself).\n"); - break; - case 3: - printf("area is too small.\n"); - break; - case 4: - printf("sides are too close to parallel.\n"); - break; - case 5: - printf("polygon is too thin.\n"); - break; - case 6: - printf("core shape generation would move edge past centroid (too thin).\n"); - break; - default: - printf("don't know why.\n"); - } - } - return noError; -} - - -bool b2Polygon::IsUsable(){ - return IsUsable(B2_POLYGON_REPORT_ERRORS); -} - -//Check for edge crossings -bool b2Polygon::IsSimple() { - for (int32 i=0; i nVertices-1)?0:i+1; - b2Vec2 a1(x[i],y[i]); - b2Vec2 a2(x[iplus],y[iplus]); - for (int32 j=i+1; j nVertices-1)?0:j+1; - b2Vec2 b1(x[j],y[j]); - b2Vec2 b2(x[jplus],y[jplus]); - if (intersect(a1,a2,b1,b2)){ - return false; - } - } - } - return true; -} - - /* - * Tries to add a triangle to the polygon. Returns null if it can't connect - * properly, otherwise returns a pointer to the new Polygon. Assumes bitwise - * equality of joined vertex positions. - * - * Remember to delete the pointer afterwards. - * Todo: Make this return a b2Polygon instead - * of a pointer to a heap-allocated one. - * - * For internal use. - */ -b2Polygon* b2Polygon::Add(b2Triangle& t) { -// float32 equalTol = .001f; - // First, find vertices that connect - int32 firstP = -1; - int32 firstT = -1; - int32 secondP = -1; - int32 secondT = -1; - for (int32 i = 0; i < nVertices; i++) { - if (t.x[0] == x[i] && t.y[0] == y[i]) { - if (firstP == -1) { - firstP = i; - firstT = 0; - } - else { - secondP = i; - secondT = 0; - } - } - else if (t.x[1] == x[i] && t.y[1] == y[i]) { - if (firstP == -1) { - firstP = i; - firstT = 1; - } - else { - secondP = i; - secondT = 1; - } - } - else if (t.x[2] == x[i] && t.y[2] == y[i]) { - if (firstP == -1) { - firstP = i; - firstT = 2; - } - else { - secondP = i; - secondT = 2; - } - } - else { - } - } - // Fix ordering if first should be last vertex of poly - if (firstP == 0 && secondP == nVertices - 1) { - firstP = nVertices - 1; - secondP = 0; - } - - // Didn't find it - if (secondP == -1) { - return NULL; - } - - // Find tip index on triangle - int32 tipT = 0; - if (tipT == firstT || tipT == secondT) - tipT = 1; - if (tipT == firstT || tipT == secondT) - tipT = 2; - - float32* newx = new float[nVertices + 1]; - float32* newy = new float[nVertices + 1]; - int32 currOut = 0; - for (int32 i = 0; i < nVertices; i++) { - newx[currOut] = x[i]; - newy[currOut] = y[i]; - if (i == firstP) { - ++currOut; - newx[currOut] = t.x[tipT]; - newy[currOut] = t.y[tipT]; - } - ++currOut; - } - b2Polygon* result = new b2Polygon(newx, newy, nVertices+1); - delete[] newx; - delete[] newy; - return result; -} - - /** - * Adds this polygon to a PolyDef. - */ -void b2Polygon::AddTo(b2FixtureDef& pd) { - if (nVertices < 3) return; - - b2Assert(nVertices <= b2_maxPolygonVertices); - - b2Vec2* vecs = GetVertexVecs(); - b2Vec2* vecsToAdd = new b2Vec2[nVertices]; - - int32 offset = 0; - - b2PolygonShape *polyShape = new b2PolygonShape; - int32 ind; - - for (int32 i = 0; i < nVertices; ++i) { - - //Omit identical neighbors (including wraparound) - ind = i - offset; - if (vecs[i].x==vecs[remainder(i+1,nVertices)].x && - vecs[i].y==vecs[remainder(i+1,nVertices)].y){ - offset++; - continue; - } - - vecsToAdd[ind] = vecs[i]; - - } - - polyShape->Set((const b2Vec2*)vecsToAdd, ind+1); - pd.shape = polyShape; - - delete[] vecs; - delete[] vecsToAdd; -} - - /** - * Finds and fixes "pinch points," points where two polygon - * vertices are at the same point. - * - * If a pinch point is found, pin is broken up into poutA and poutB - * and true is returned; otherwise, returns false. - * - * Mostly for internal use. - */ -bool ResolvePinchPoint(const b2Polygon& pin, b2Polygon& poutA, b2Polygon& poutB){ - if (pin.nVertices < 3) return false; - float32 tol = .001f; - bool hasPinchPoint = false; - int32 pinchIndexA = -1; - int32 pinchIndexB = -1; - for (int i=0; i 3) { - // Find an ear - int32 earIndex = -1; - //float32 earVolume = -1.0f; - float32 earMaxMinCross = -10.0f; - for (int32 i = 0; i < vNum; ++i) { - if (IsEar(i, xrem, yrem, vNum)) { - int32 lower = remainder(i-1,vNum); - int32 upper = remainder(i+1,vNum); - b2Vec2 d1(xrem[upper]-xrem[i],yrem[upper]-yrem[i]); - b2Vec2 d2(xrem[i]-xrem[lower],yrem[i]-yrem[lower]); - b2Vec2 d3(xrem[lower]-xrem[upper],yrem[lower]-yrem[upper]); - - d1.Normalize(); - d2.Normalize(); - d3.Normalize(); - float32 cross12 = b2Abs( b2Cross(d1,d2) ); - float32 cross23 = b2Abs( b2Cross(d2,d3) ); - float32 cross31 = b2Abs( b2Cross(d3,d1) ); - //Find the maximum minimum angle - float32 minCross = b2Min(cross12, b2Min(cross23,cross31)); - if (minCross > earMaxMinCross){ - earIndex = i; - earMaxMinCross = minCross; - } - - /*//This bit chooses the ear with greatest volume first - float32 testVol = b2Abs( d1.x*d2.y-d2.x*d1.y ); - if (testVol > earVolume){ - earIndex = i; - earVolume = testVol; - }*/ - } - } - - // If we still haven't found an ear, we're screwed. - // Note: sometimes this is happening because the - // remaining points are collinear. Really these - // should just be thrown out without halting triangulation. - if (earIndex == -1){ - if (B2_POLYGON_REPORT_ERRORS){ - b2Polygon dump(xrem,yrem,vNum); - printf("Couldn't find an ear, dumping remaining poly:\n"); - dump.printFormatted(); - printf("Please submit this dump to ewjordan at Box2d forums\n"); - } - for (int32 i = 0; i < bufferSize; i++) { - results[i].Set(buffer[i]); - } - - delete[] buffer; - - if (bufferSize > 0) return bufferSize; - else return -1; - } - - // Clip off the ear: - // - remove the ear tip from the list - - --vNum; - float32* newx = new float32[vNum]; - float32* newy = new float32[vNum]; - int32 currDest = 0; - for (int32 i = 0; i < vNum; ++i) { - if (currDest == earIndex) ++currDest; - newx[i] = xrem[currDest]; - newy[i] = yrem[currDest]; - ++currDest; - } - - // - add the clipped triangle to the triangle list - int32 under = (earIndex == 0) ? (vNum) : (earIndex - 1); - int32 over = (earIndex == vNum) ? 0 : (earIndex + 1); - b2Triangle toAdd = b2Triangle(xrem[earIndex], yrem[earIndex], xrem[over], yrem[over], xrem[under], yrem[under]); - buffer[bufferSize].Set(toAdd); - ++bufferSize; - - // - replace the old list with the new one - delete[] xrem; - delete[] yrem; - xrem = newx; - yrem = newy; - } - - b2Triangle toAdd = b2Triangle(xrem[1], yrem[1], xrem[2], yrem[2], - xrem[0], yrem[0]); - buffer[bufferSize].Set(toAdd); - ++bufferSize; - - delete[] xrem; - delete[] yrem; - - b2Assert(bufferSize == xremLength-2); - - for (int32 i = 0; i < bufferSize; i++) { - results[i].Set(buffer[i]); - } - - delete[] buffer; - - return bufferSize; -} - - /** - * Turns a list of triangles into a list of convex polygons. Very simple - * method - start with a seed triangle, keep adding triangles to it until - * you can't add any more without making the polygon non-convex. - * - * Returns an integer telling how many polygons were created. Will fill - * polys array up to polysLength entries, which may be smaller or larger - * than the return value. - * - * Takes O(N*P) where P is the number of resultant polygons, N is triangle - * count. - * - * The final polygon list will not necessarily be minimal, though in - * practice it works fairly well. - */ -int32 PolygonizeTriangles(b2Triangle* triangulated, int32 triangulatedLength, b2Polygon* polys, int32 polysLength) { - int32 polyIndex = 0; - - if (triangulatedLength <= 0) { - return 0; - } - else { - int* covered = new int[triangulatedLength]; - for (int32 i = 0; i < triangulatedLength; ++i) { - covered[i] = 0; - //Check here for degenerate triangles - if ( ( (triangulated[i].x[0] == triangulated[i].x[1]) && (triangulated[i].y[0] == triangulated[i].y[1]) ) - || ( (triangulated[i].x[1] == triangulated[i].x[2]) && (triangulated[i].y[1] == triangulated[i].y[2]) ) - || ( (triangulated[i].x[0] == triangulated[i].x[2]) && (triangulated[i].y[0] == triangulated[i].y[2]) ) ) { - covered[i] = 1; - } - } - - bool notDone = true; - while (notDone) { - int32 currTri = -1; - for (int32 i = 0; i < triangulatedLength; ++i) { - if (covered[i]) - continue; - currTri = i; - break; - } - if (currTri == -1) { - notDone = false; - } - else { - b2Polygon poly(triangulated[currTri]); - covered[currTri] = 1; - int32 index = 0; - for (int32 i = 0; i < 2*triangulatedLength; ++i,++index) { - while (index >= triangulatedLength) index -= triangulatedLength; - if (covered[index]) { - continue; - } - b2Polygon* newP = poly.Add(triangulated[index]); - if (!newP) { - continue; - } - if (newP->nVertices > b2Polygon::maxVerticesPerPolygon) { - delete newP; - newP = NULL; - continue; - } - if (newP->IsConvex()) { //Or should it be IsUsable? Maybe re-write IsConvex to apply the angle threshold from Box2d - poly.Set(*newP); - delete newP; - newP = NULL; - covered[index] = 1; - } else { - delete newP; - newP = NULL; - } - } - if (polyIndex < polysLength){ - poly.MergeParallelEdges(b2_angularSlop); - //If identical points are present, a triangle gets - //borked by the MergeParallelEdges function, hence - //the vertex number check - if (poly.nVertices >= 3) polys[polyIndex].Set(poly); - //else printf("Skipping corrupt poly\n"); - } - if (poly.nVertices >= 3) polyIndex++; //Must be outside (polyIndex < polysLength) test - } - //printf("MEMCHECK: %d\n",_CrtCheckMemory()); - } - delete[] covered; - } - return polyIndex; -} - - /** - * Checks if vertex i is the tip of an ear in polygon defined by xv[] and - * yv[]. - * - * Assumes clockwise orientation of polygon...ick - */ -bool IsEar(int32 i, float32* xv, float32* yv, int32 xvLength) { - float32 dx0, dy0, dx1, dy1; - dx0 = dy0 = dx1 = dy1 = 0; - if (i >= xvLength || i < 0 || xvLength < 3) { - return false; - } - int32 upper = i + 1; - int32 lower = i - 1; - if (i == 0) { - dx0 = xv[0] - xv[xvLength - 1]; - dy0 = yv[0] - yv[xvLength - 1]; - dx1 = xv[1] - xv[0]; - dy1 = yv[1] - yv[0]; - lower = xvLength - 1; - } - else if (i == xvLength - 1) { - dx0 = xv[i] - xv[i - 1]; - dy0 = yv[i] - yv[i - 1]; - dx1 = xv[0] - xv[i]; - dy1 = yv[0] - yv[i]; - upper = 0; - } - else { - dx0 = xv[i] - xv[i - 1]; - dy0 = yv[i] - yv[i - 1]; - dx1 = xv[i + 1] - xv[i]; - dy1 = yv[i + 1] - yv[i]; - } - float32 cross = dx0 * dy1 - dx1 * dy0; - if (cross > 0) - return false; - b2Triangle myTri(xv[i], yv[i], xv[upper], yv[upper], - xv[lower], yv[lower]); - for (int32 j = 0; j < xvLength; ++j) { - if (j == i || j == lower || j == upper) - continue; - if (myTri.IsInside(xv[j], yv[j])) - return false; - } - return true; -} - -void ReversePolygon(b2Polygon& p){ - ReversePolygon(p.x,p.y,p.nVertices); -} - -void ReversePolygon(float* x, float* y, int n) { - if (n == 1) - return; - int32 low = 0; - int32 high = n - 1; - while (low < high) { - float32 buffer = x[low]; - x[low] = x[high]; - x[high] = buffer; - buffer = y[low]; - y[low] = y[high]; - y[high] = buffer; - ++low; - --high; - } -} - - /** - * Decomposes a non-convex polygon into a number of convex polygons, up - * to maxPolys (remaining pieces are thrown out, but the total number - * is returned, so the return value can be greater than maxPolys). - * - * Each resulting polygon will have no more than maxVerticesPerPolygon - * vertices (set to b2MaxPolyVertices by default, though you can change - * this). - * - * Returns -1 if operation fails (usually due to self-intersection of - * polygon). - */ -int32 DecomposeConvex(b2Polygon* p, b2Polygon* results, int32 maxPolys) { - if (p->nVertices < 3) return 0; - - b2Triangle* triangulated = new b2Triangle[p->nVertices - 2]; - int32 nTri; - if (p->IsCCW()) { - //printf("It is ccw \n"); - b2Polygon tempP; - tempP.Set(*p); - ReversePolygon(tempP.x, tempP.y, tempP.nVertices); - nTri = TriangulatePolygon(tempP.x, tempP.y, tempP.nVertices, triangulated); -// ReversePolygon(p->x, p->y, p->nVertices); //reset orientation - } else { - //printf("It is not ccw \n"); - nTri = TriangulatePolygon(p->x, p->y, p->nVertices, triangulated); - } - if (nTri < 1) { - //Still no luck? Oh well... - return -1; - } - int32 nPolys = PolygonizeTriangles(triangulated, nTri, results, maxPolys); - delete[] triangulated; - return nPolys; -} - - /** - * Decomposes a polygon into convex polygons and adds all pieces to a b2BodyDef - * using a prototype b2PolyDef. All fields of the prototype are used for every - * shape except the vertices (friction, restitution, density, etc). - * - * If you want finer control, you'll have to add everything by hand. - * - * This is the simplest method to add a complicated polygon to a body. - * - * Until Box2D's b2BodyDef behavior changes, this method returns a pointer to - * a heap-allocated array of b2PolyDefs, which must be deleted by the user - * after the b2BodyDef is added to the world. - */ -void DecomposeConvexAndAddTo(b2Polygon* p, b2Body* bd, b2FixtureDef* prototype) { - - if (p->nVertices < 3) return; - b2Polygon* decomposed = new b2Polygon[p->nVertices - 2]; //maximum number of polys - int32 nPolys = DecomposeConvex(p, decomposed, p->nVertices - 2); -// printf("npolys: %d",nPolys); - b2FixtureDef* pdarray = new b2FixtureDef[2*p->nVertices];//extra space in case of splits - int32 extra = 0; - for (int32 i = 0; i < nPolys; ++i) { - b2FixtureDef* toAdd = &pdarray[i+extra]; - *toAdd = *prototype; - //Hmm, shouldn't have to do all this... - /* - toAdd->type = prototype->type; - toAdd->friction = prototype->friction; - toAdd->restitution = prototype->restitution; - toAdd->density = prototype->density; - toAdd->userData = prototype->userData; - toAdd->categoryBits = prototype->categoryBits; - toAdd->maskBits = prototype->maskBits; - toAdd->groupIndex = prototype->groupIndex;//*/ - //decomposed[i].print(); - b2Polygon curr = decomposed[i]; - //TODO ewjordan: move this triangle handling to a better place so that - //it happens even if this convenience function is not called. - if (curr.nVertices == 3){ - //Check here for near-parallel edges, since we can't - //handle this in merge routine - for (int j=0; j<3; ++j){ - int32 lower = (j == 0) ? (curr.nVertices - 1) : (j - 1); - int32 middle = j; - int32 upper = (j == curr.nVertices - 1) ? (0) : (j + 1); - float32 dx0 = curr.x[middle] - curr.x[lower]; float32 dy0 = curr.y[middle] - curr.y[lower]; - float32 dx1 = curr.x[upper] - curr.x[middle]; float32 dy1 = curr.y[upper] - curr.y[middle]; - float32 norm0 = sqrtf(dx0*dx0+dy0*dy0); float32 norm1 = sqrtf(dx1*dx1+dy1*dy1); - if ( !(norm0 > 0.0f && norm1 > 0.0f) ) { - //Identical points, don't do anything! - goto Skip; - } - dx0 /= norm0; dy0 /= norm0; - dx1 /= norm1; dy1 /= norm1; - float32 cross = dx0 * dy1 - dx1 * dy0; - float32 dot = dx0*dx1 + dy0*dy1; - if (fabs(cross) < b2_angularSlop && dot > 0) { - //Angle too close, split the triangle across from this point. - //This is guaranteed to result in two triangles that satify - //the tolerance (one of the angles is 90 degrees) - float32 dx2 = curr.x[lower] - curr.x[upper]; float32 dy2 = curr.y[lower] - curr.y[upper]; - float32 norm2 = sqrtf(dx2*dx2+dy2*dy2); - if (norm2 == 0.0f) { - goto Skip; - } - dx2 /= norm2; dy2 /= norm2; - float32 thisArea = curr.GetArea(); - float32 thisHeight = 2.0f * thisArea / norm2; - float32 buffer2 = dx2; - dx2 = dy2; dy2 = -buffer2; - //Make two new polygons - //printf("dx2: %f, dy2: %f, thisHeight: %f, middle: %d\n",dx2,dy2,thisHeight,middle); - float32 newX1[3] = { curr.x[middle]+dx2*thisHeight, curr.x[lower], curr.x[middle] }; - float32 newY1[3] = { curr.y[middle]+dy2*thisHeight, curr.y[lower], curr.y[middle] }; - float32 newX2[3] = { newX1[0], curr.x[middle], curr.x[upper] }; - float32 newY2[3] = { newY1[0], curr.y[middle], curr.y[upper] }; - b2Polygon p1(newX1,newY1,3); - b2Polygon p2(newX2,newY2,3); - if (p1.IsUsable()){ - p1.AddTo(*toAdd); - - - bd->CreateFixture(toAdd); - ++extra; - } else if (B2_POLYGON_REPORT_ERRORS){ - printf("Didn't add unusable polygon. Dumping vertices:\n"); - p1.print(); - } - if (p2.IsUsable()){ - p2.AddTo(pdarray[i+extra]); - - bd->CreateFixture(toAdd); - } else if (B2_POLYGON_REPORT_ERRORS){ - printf("Didn't add unusable polygon. Dumping vertices:\n"); - p2.print(); - } - goto Skip; - } - } - - } - if (decomposed[i].IsUsable()){ - decomposed[i].AddTo(*toAdd); - - bd->CreateFixture((const b2FixtureDef*)toAdd); - } else if (B2_POLYGON_REPORT_ERRORS){ - printf("Didn't add unusable polygon. Dumping vertices:\n"); - decomposed[i].print(); - } -Skip: - ; - } - delete[] pdarray; - delete[] decomposed; - return;// pdarray; //needs to be deleted after body is created -} - - - /** - * Find the convex hull of a point cloud using "Gift-wrap" algorithm - start - * with an extremal point, and walk around the outside edge by testing - * angles. - * - * Runs in O(N*S) time where S is number of sides of resulting polygon. - * Worst case: point cloud is all vertices of convex polygon -> O(N^2). - * - * There may be faster algorithms to do this, should you need one - - * this is just the simplest. You can get O(N log N) expected time if you - * try, I think, and O(N) if you restrict inputs to simple polygons. - * - * Returns null if number of vertices passed is less than 3. - * - * Results should be passed through convex decomposition afterwards - * to ensure that each shape has few enough points to be used in Box2d. - * - * FIXME?: May be buggy with colinear points on hull. Couldn't find a test - * case that resulted in wrong behavior. If one turns up, the solution is to - * supplement angle check with an equality resolver that always picks the - * longer edge. I think the current solution is working, though it sometimes - * creates an extra edge along a line. - */ - -b2Polygon ConvexHull(b2Vec2* v, int nVert) { - float32* cloudX = new float32[nVert]; - float32* cloudY = new float32[nVert]; - for (int32 i = 0; i < nVert; ++i) { - cloudX[i] = v[i].x; - cloudY[i] = v[i].y; - } - b2Polygon result = ConvexHull(cloudX, cloudY, nVert); - delete[] cloudX; - delete[] cloudY; - return result; -} - -b2Polygon ConvexHull(float32* cloudX, float32* cloudY, int32 nVert) { - b2Assert(nVert > 2); - int32* edgeList = new int32[nVert]; - int32 numEdges = 0; - - float32 minY = FLT_MAX; - int32 minYIndex = nVert; - for (int32 i = 0; i < nVert; ++i) { - if (cloudY[i] < minY) { - minY = cloudY[i]; - minYIndex = i; - } - } - - int32 startIndex = minYIndex; - int32 winIndex = -1; - float32 dx = -1.0f; - float32 dy = 0.0f; - while (winIndex != minYIndex) { - float32 newdx = 0.0f; - float32 newdy = 0.0f; - float32 maxDot = -2.0f; - for (int32 i = 0; i < nVert; ++i) { - if (i == startIndex) - continue; - newdx = cloudX[i] - cloudX[startIndex]; - newdy = cloudY[i] - cloudY[startIndex]; - float32 nrm = sqrtf(newdx * newdx + newdy * newdy); - nrm = (nrm == 0.0f) ? 1.0f : nrm; - newdx /= nrm; - newdy /= nrm; - - //Cross and dot products act as proxy for angle - //without requiring inverse trig. - //FIXED: don't need cross test - //float32 newCross = newdx * dy - newdy * dx; - float32 newDot = newdx * dx + newdy * dy; - if (newDot > maxDot) {//newCross >= 0.0f && newDot > maxDot) { - maxDot = newDot; - winIndex = i; - } - } - edgeList[numEdges++] = winIndex; - dx = cloudX[winIndex] - cloudX[startIndex]; - dy = cloudY[winIndex] - cloudY[startIndex]; - float32 nrm = sqrtf(dx * dx + dy * dy); - nrm = (nrm == 0.0f) ? 1.0f : nrm; - dx /= nrm; - dy /= nrm; - startIndex = winIndex; - } - - float32* xres = new float32[numEdges]; - float32* yres = new float32[numEdges]; - for (int32 i = 0; i < numEdges; i++) { - xres[i] = cloudX[edgeList[i]]; - yres[i] = cloudY[edgeList[i]]; - //("%f, %f\n",xres[i],yres[i]); - } - - b2Polygon returnVal(xres, yres, numEdges); - - delete[] xres; - delete[] yres; - delete[] edgeList; - returnVal.MergeParallelEdges(b2_angularSlop); - return returnVal; -} - - -/* - * Given sines and cosines, tells if A's angle is less than B's on -Pi, Pi - * (in other words, is A "righter" than B) - */ -bool IsRighter(float32 sinA, float32 cosA, float32 sinB, float32 cosB){ - if (sinA < 0){ - if (sinB > 0 || cosA <= cosB) return true; - else return false; - } else { - if (sinB < 0 || cosA <= cosB) return false; - else return true; - } -} - -//Fix for obnoxious behavior for the % operator for negative numbers... -int32 remainder(int32 x, int32 modulus){ - int32 rem = x % modulus; - while (rem < 0){ - rem += modulus; - } - return rem; -} - -/* -Method: -Start at vertex with minimum y (pick maximum x one if there are two). -We aim our "lastDir" vector at (1.0, 0) -We look at the two rays going off from our start vertex, and follow whichever -has the smallest angle (in -Pi -> Pi) wrt lastDir ("rightest" turn) - -Loop until we hit starting vertex: - -We add our current vertex to the list. -We check the seg from current vertex to next vertex for intersections - - if no intersections, follow to next vertex and continue - - if intersections, pick one with minimum distance - - if more than one, pick one with "rightest" next point (two possibilities for each) - -*/ - -b2Polygon TraceEdge(b2Polygon* p){ - b2PolyNode* nodes = new b2PolyNode[p->nVertices*p->nVertices];//overkill, but sufficient (order of mag. is right) - int32 nNodes = 0; - - //Add base nodes (raw outline) - for (int32 i=0; i < p->nVertices; ++i){ - b2Vec2 pos(p->x[i],p->y[i]); - nodes[i].position = pos; - ++nNodes; - int32 iplus = (i==p->nVertices-1)?0:i+1; - int32 iminus = (i==0)?p->nVertices-1:i-1; - nodes[i].AddConnection(nodes[iplus]); - nodes[i].AddConnection(nodes[iminus]); - } - - //Process intersection nodes - horribly inefficient - bool dirty = true; - int counter = 0; - while (dirty){ - dirty = false; - for (int32 i=0; i < nNodes; ++i){ - for (int32 j=0; j < nodes[i].nConnected; ++j){ - for (int32 k=0; k < nNodes; ++k){ - if (k==i || &nodes[k] == nodes[i].connected[j]) continue; - for (int32 l=0; l < nodes[k].nConnected; ++l){ - - if ( nodes[k].connected[l] == nodes[i].connected[j] || - nodes[k].connected[l] == &nodes[i]) continue; - //Check intersection - b2Vec2 intersectPt; - //if (counter > 100) printf("checking intersection: %d, %d, %d, %d\n",i,j,k,l); - bool crosses = intersect(nodes[i].position,nodes[i].connected[j]->position, - nodes[k].position,nodes[k].connected[l]->position, - intersectPt); - if (crosses){ - /*if (counter > 100) { - printf("Found crossing at %f, %f\n",intersectPt.x, intersectPt.y); - printf("Locations: %f,%f - %f,%f | %f,%f - %f,%f\n", - nodes[i].position.x, nodes[i].position.y, - nodes[i].connected[j]->position.x, nodes[i].connected[j]->position.y, - nodes[k].position.x,nodes[k].position.y, - nodes[k].connected[l]->position.x,nodes[k].connected[l]->position.y); - printf("Memory addresses: %d, %d, %d, %d\n",(int)&nodes[i],(int)nodes[i].connected[j],(int)&nodes[k],(int)nodes[k].connected[l]); - }*/ - dirty = true; - //Destroy and re-hook connections at crossing point - b2PolyNode* connj = nodes[i].connected[j]; - b2PolyNode* connl = nodes[k].connected[l]; - nodes[i].connected[j]->RemoveConnection(nodes[i]); - nodes[i].RemoveConnection(*connj); - nodes[k].connected[l]->RemoveConnection(nodes[k]); - nodes[k].RemoveConnection(*connl); - nodes[nNodes] = b2PolyNode(intersectPt); - nodes[nNodes].AddConnection(nodes[i]); - nodes[i].AddConnection(nodes[nNodes]); - nodes[nNodes].AddConnection(nodes[k]); - nodes[k].AddConnection(nodes[nNodes]); - nodes[nNodes].AddConnection(*connj); - connj->AddConnection(nodes[nNodes]); - nodes[nNodes].AddConnection(*connl); - connl->AddConnection(nodes[nNodes]); - ++nNodes; - goto SkipOut; - } - } - } - } - } - SkipOut: - ++counter; - //if (counter > 100) printf("Counter: %d\n",counter); - } - - /* - // Debugging: check for connection consistency - for (int32 i=0; inConnected == 0) b2Assert(false); - b2PolyNode* connect = nodes[i].connected[j]; - bool found = false; - for (int32 k=0; knConnected; ++k) { - if (connect->connected[k] == &nodes[i]) found = true; - } - b2Assert(found); - } - }*/ - - //Collapse duplicate points - bool foundDupe = true; - int nActive = nNodes; - while (foundDupe){ - foundDupe = false; - for (int32 i=0; i < nNodes; ++i){ - if (nodes[i].nConnected == 0) continue; - for (int32 j=i+1; j < nNodes; ++j){ - if (nodes[j].nConnected == 0) continue; - b2Vec2 diff = nodes[i].position - nodes[j].position; - if (diff.LengthSquared() <= COLLAPSE_DIST_SQR){ - if (nActive <= 3) return b2Polygon(); - //printf("Found dupe, %d left\n",nActive); - --nActive; - foundDupe = true; - b2PolyNode* inode = &nodes[i]; - b2PolyNode* jnode = &nodes[j]; - //Move all of j's connections to i, and orphan j - int32 njConn = jnode->nConnected; - for (int32 k=0; k < njConn; ++k){ - b2PolyNode* knode = jnode->connected[k]; - b2Assert(knode != jnode); - if (knode != inode) { - inode->AddConnection(*knode); - knode->AddConnection(*inode); - } - knode->RemoveConnection(*jnode); - //printf("knode %d on node %d now has %d connections\n",k,j,knode->nConnected); - //printf("Found duplicate point.\n"); - } - //printf("Orphaning node at address %d\n",(int)jnode); - //for (int32 k=0; kconnected[k]->IsConnectedTo(*jnode)) printf("Problem!!!\n"); - //} - /* - for (int32 k=0; k < njConn; ++k){ - jnode->RemoveConnectionByIndex(k); - }*/ - jnode->nConnected = 0; - } - } - } - } - - /* - // Debugging: check for connection consistency - for (int32 i=0; inConnected == 0) { - printf("Problem with node %d connection at address %d\n",i,(int)(nodes[i].connected[j])); - b2Assert(false); - } - b2PolyNode* connect = nodes[i].connected[j]; - bool found = false; - for (int32 k=0; knConnected; ++k) { - if (connect->connected[k] == &nodes[i]) found = true; - } - if (!found) printf("Connection %d (of %d) on node %d (of %d) did not have reciprocal connection.\n",j,nConn,i,nNodes); - b2Assert(found); - } - }//*/ - - //Now walk the edge of the list - - //Find node with minimum y value (max x if equal) - float32 minY = FLT_MAX; - float32 maxX = -FLT_MAX; - int32 minYIndex = -1; - for (int32 i = 0; i < nNodes; ++i) { - if (nodes[i].position.y < minY && nodes[i].nConnected > 1) { - minY = nodes[i].position.y; - minYIndex = i; - maxX = nodes[i].position.x; - } else if (nodes[i].position.y == minY && nodes[i].position.x > maxX && nodes[i].nConnected > 1) { - minYIndex = i; - maxX = nodes[i].position.x; - } - } - - b2Vec2 origDir(1.0f,0.0f); - b2Vec2* resultVecs = new b2Vec2[4*nNodes];// nodes may be visited more than once, unfortunately - change to growable array! - int32 nResultVecs = 0; - b2PolyNode* currentNode = &nodes[minYIndex]; - b2PolyNode* startNode = currentNode; - b2Assert(currentNode->nConnected > 0); - b2PolyNode* nextNode = currentNode->GetRightestConnection(origDir); - if (!nextNode) goto CleanUp; // Borked, clean up our mess and return - resultVecs[0] = startNode->position; - ++nResultVecs; - while (nextNode != startNode){ - if (nResultVecs > 4*nNodes){ - /* - printf("%d, %d, %d\n",(int)startNode,(int)currentNode,(int)nextNode); - printf("%f, %f -> %f, %f\n",currentNode->position.x,currentNode->position.y, nextNode->position.x, nextNode->position.y); - p->printFormatted(); - printf("Dumping connection graph: \n"); - for (int32 i=0; iposition.x, i,j,nodes[i].connected[j]->position.y); - } - } - printf("Dumping results thus far: \n"); - for (int32 i=0; iposition; - b2PolyNode* oldNode = currentNode; - currentNode = nextNode; - //printf("Old node connections = %d; address %d\n",oldNode->nConnected, (int)oldNode); - //printf("Current node connections = %d; address %d\n",currentNode->nConnected, (int)currentNode); - nextNode = currentNode->GetRightestConnection(oldNode); - if (!nextNode) goto CleanUp; // There was a problem, so jump out of the loop and use whatever garbage we've generated so far - //printf("nextNode address: %d\n",(int)nextNode); - } - - CleanUp: - - float32* xres = new float32[nResultVecs]; - float32* yres = new float32[nResultVecs]; - for (int32 i=0; iposition){ - isFound = true; - foundIndex = i; - break; - } - } - b2Assert(isFound); - --nConnected; - //printf("nConnected: %d\n",nConnected); - for (int32 i=foundIndex; i < nConnected; ++i){ - connected[i] = connected[i+1]; - } -} -void b2PolyNode::RemoveConnectionByIndex(int32 index){ - --nConnected; - //printf("New nConnected = %d\n",nConnected); - for (int32 i=index; i < nConnected; ++i){ - connected[i] = connected[i+1]; - } -} -bool b2PolyNode::IsConnectedTo(b2PolyNode& me){ - bool isFound = false; - for (int32 i=0; iposition){ - isFound = true; - break; - } - } - return isFound; -} -b2PolyNode* b2PolyNode::GetRightestConnection(b2PolyNode* incoming){ - if (nConnected == 0) b2Assert(false); // This means the connection graph is inconsistent - if (nConnected == 1) { - //b2Assert(false); - // Because of the possibility of collapsing nearby points, - // we may end up with "spider legs" dangling off of a region. - // The correct behavior here is to turn around. - return incoming; - } - b2Vec2 inDir = position - incoming->position; - float32 inLength = inDir.Normalize(); - b2Assert(inLength > FLT_EPSILON); - - b2PolyNode* result = NULL; - for (int32 i=0; iposition - position; - float32 testLengthSqr = testDir.LengthSquared(); - testDir.Normalize(); - /* - if (testLengthSqr < COLLAPSE_DIST_SQR) { - printf("Problem with connection %d\n",i); - printf("This node has %d connections\n",nConnected); - printf("That one has %d\n",connected[i]->nConnected); - if (this == connected[i]) printf("This points at itself.\n"); - }*/ - b2Assert (testLengthSqr >= COLLAPSE_DIST_SQR); - float32 myCos = b2Dot(inDir,testDir); - float32 mySin = b2Cross(inDir,testDir); - if (result){ - b2Vec2 resultDir = result->position - position; - resultDir.Normalize(); - float32 resCos = b2Dot(inDir,resultDir); - float32 resSin = b2Cross(inDir,resultDir); - if (IsRighter(mySin,myCos,resSin,resCos)){ - result = connected[i]; - } - } else{ - result = connected[i]; - } - } - if (B2_POLYGON_REPORT_ERRORS && !result) { - printf("nConnected = %d\n",nConnected); - for (int32 i=0; i0); - if (ccw){ - x[0] = x1; x[1] = x2; x[2] = x3; - y[0] = y1; y[1] = y2; y[2] = y3; - } else{ - x[0] = x1; x[1] = x3; x[2] = x2; - y[0] = y1; y[1] = y3; y[2] = y2; - } -} - -b2Triangle::b2Triangle(){ - x = new float32[3]; - y = new float32[3]; -} - -b2Triangle::~b2Triangle(){ - delete[] x; - delete[] y; -} - -void b2Triangle::Set(const b2Triangle& toMe) { - for (int32 i=0; i<3; ++i) { - x[i] = toMe.x[i]; - y[i] = toMe.y[i]; - } -} - -bool b2Triangle::IsInside(float32 _x, float32 _y){ - if (_x < x[0] && _x < x[1] && _x < x[2]) return false; - if (_x > x[0] && _x > x[1] && _x > x[2]) return false; - if (_y < y[0] && _y < y[1] && _y < y[2]) return false; - if (_y > y[0] && _y > y[1] && _y > y[2]) return false; - - float32 vx2 = _x-x[0]; float32 vy2 = _y-y[0]; - float32 vx1 = x[1]-x[0]; float32 vy1 = y[1]-y[0]; - float32 vx0 = x[2]-x[0]; float32 vy0 = y[2]-y[0]; - - float32 dot00 = vx0*vx0+vy0*vy0; - float32 dot01 = vx0*vx1+vy0*vy1; - float32 dot02 = vx0*vx2+vy0*vy2; - float32 dot11 = vx1*vx1+vy1*vy1; - float32 dot12 = vx1*vx2+vy1*vy2; - float32 invDenom = 1.0f / (dot00*dot11 - dot01*dot01); - float32 u = (dot11*dot02 - dot01*dot12)*invDenom; - float32 v = (dot00*dot12 - dot01*dot02)*invDenom; - - return ((u>=0)&&(v>=0)&&(u+v<=1)); -} \ No newline at end of file diff --git a/src/dependencies/Box2D_v2.3.0/Contributions/Utilities/ConvexDecomposition/b2Triangle.h b/src/dependencies/Box2D_v2.3.0/Contributions/Utilities/ConvexDecomposition/b2Triangle.h deleted file mode 100644 index 7478113..0000000 --- a/src/dependencies/Box2D_v2.3.0/Contributions/Utilities/ConvexDecomposition/b2Triangle.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) 2007 Eric Jordan - * - * This software is provided 'as-is', without any express or implied - * warranty. In no event will the authors be held liable for any damages - * arising from the use of this software. - * Permission is granted to anyone to use this software for any purpose, - * including commercial applications, and to alter it and redistribute it - * freely, subject to the following restrictions: - * 1. The origin of this software must not be misrepresented; you must not - * claim that you wrote the original software. If you use this software - * in a product, an acknowledgment in the product documentation would be - * appreciated but is not required. - * 2. Altered source versions must be plainly marked as such, and must not be - * misrepresented as being the original software. - * 3. This notice may not be removed or altered from any source distribution. - */ - -#ifndef B2_TRIANGLE_H -#define B2_TRIANGLE_H - -#include "b2Math.h" - -class b2Triangle{ -public: - float* x; - float* y; - b2Triangle(); - b2Triangle(float32 x1, float32 y1, float32 x2, float32 y2, float32 x3, float32 y3); - ~b2Triangle(); - bool IsInside(float32 _x, float32 _y); - void Set(const b2Triangle& toMe); - -}; - -#endif \ No newline at end of file diff --git a/src/dependencies/rapidxml/license.txt b/src/dependencies/rapidxml/license.txt deleted file mode 100644 index 0095bc7..0000000 --- a/src/dependencies/rapidxml/license.txt +++ /dev/null @@ -1,52 +0,0 @@ -Use of this software is granted under one of the following two licenses, -to be chosen freely by the user. - -1. Boost Software License - Version 1.0 - August 17th, 2003 -=============================================================================== - -Copyright (c) 2006, 2007 Marcin Kalicinski - -Permission is hereby granted, free of charge, to any person or organization -obtaining a copy of the software and accompanying documentation covered by -this license (the "Software") to use, reproduce, display, distribute, -execute, and transmit the Software, and to prepare derivative works of the -Software, and to permit third-parties to whom the Software is furnished to -do so, all subject to the following: - -The copyright notices in the Software and this entire statement, including -the above license grant, this restriction and the following disclaimer, -must be included in all copies of the Software, in whole or in part, and -all derivative works of the Software, unless such copies or derivative -works are solely in the form of machine-executable object code generated by -a source language processor. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT -SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE -FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE, -ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. - -2. The MIT License -=============================================================================== - -Copyright (c) 2006, 2007 Marcin Kalicinski - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies -of the Software, and to permit persons to whom the Software is furnished to do so, -subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS -IN THE SOFTWARE. diff --git a/src/dependencies/rapidxml/manual.html b/src/dependencies/rapidxml/manual.html deleted file mode 100644 index 4e6a5f1..0000000 --- a/src/dependencies/rapidxml/manual.html +++ /dev/null @@ -1,406 +0,0 @@ -

    RAPIDXML Manual

    Version 1.13

    Copyright (C) 2006, 2009 Marcin Kalicinski
    See accompanying file license.txt for license information.

    Table of Contents

    1. What is RapidXml?
    1.1 Dependencies And Compatibility
    1.2 Character Types And Encodings
    1.3 Error Handling
    1.4 Memory Allocation
    1.5 W3C Compliance
    1.6 API Design
    1.7 Reliability
    1.8 Acknowledgements
    2. Two Minute Tutorial
    2.1 Parsing
    2.2 Accessing The DOM Tree
    2.3 Modifying The DOM Tree
    2.4 Printing XML
    3. Differences From Regular XML Parsers
    3.1 Lifetime Of Source Text
    3.2 Ownership Of Strings
    3.3 Destructive Vs Non-Destructive Mode
    4. Performance
    4.1 Comparison With Other Parsers
    5. Reference

    1. What is RapidXml?

    RapidXml is an attempt to create the fastest XML DOM parser possible, while retaining useability, portability and reasonable W3C compatibility. It is an in-situ parser written in C++, with parsing speed approaching that of strlen() function executed on the same data.

    - Entire parser is contained in a single header file, so no building or linking is neccesary. To use it you just need to copy rapidxml.hpp file to a convenient place (such as your project directory), and include it where needed. You may also want to use printing functions contained in header rapidxml_print.hpp.

    1.1 Dependencies And Compatibility

    RapidXml has no dependencies other than a very small subset of standard C++ library (<cassert>, <cstdlib>, <new> and <exception>, unless exceptions are disabled). It should compile on any reasonably conformant compiler, and was tested on Visual C++ 2003, Visual C++ 2005, Visual C++ 2008, gcc 3, gcc 4, and Comeau 4.3.3. Care was taken that no warnings are produced on these compilers, even with highest warning levels enabled.

    1.2 Character Types And Encodings

    RapidXml is character type agnostic, and can work both with narrow and wide characters. Current version does not fully support UTF-16 or UTF-32, so use of wide characters is somewhat incapacitated. However, it should succesfully parse wchar_t strings containing UTF-16 or UTF-32 if endianness of the data matches that of the machine. UTF-8 is fully supported, including all numeric character references, which are expanded into appropriate UTF-8 byte sequences (unless you enable parse_no_utf8 flag).

    - Note that RapidXml performs no decoding - strings returned by name() and value() functions will contain text encoded using the same encoding as source file. Rapidxml understands and expands the following character references: &apos; &amp; &quot; &lt; &gt; &#...; Other character references are not expanded.

    1.3 Error Handling

    By default, RapidXml uses C++ exceptions to report errors. If this behaviour is undesirable, RAPIDXML_NO_EXCEPTIONS can be defined to suppress exception code. See parse_error class and parse_error_handler() function for more information.

    1.4 Memory Allocation

    RapidXml uses a special memory pool object to allocate nodes and attributes, because direct allocation using new operator would be far too slow. Underlying memory allocations performed by the pool can be customized by use of memory_pool::set_allocator() function. See class memory_pool for more information.

    1.5 W3C Compliance

    RapidXml is not a W3C compliant parser, primarily because it ignores DOCTYPE declarations. There is a number of other, minor incompatibilities as well. Still, it can successfully parse and produce complete trees of all valid XML files in W3C conformance suite (over 1000 files specially designed to find flaws in XML processors). In destructive mode it performs whitespace normalization and character entity substitution for a small set of built-in entities.

    1.6 API Design

    RapidXml API is minimalistic, to reduce code size as much as possible, and facilitate use in embedded environments. Additional convenience functions are provided in separate headers: rapidxml_utils.hpp and rapidxml_print.hpp. Contents of these headers is not an essential part of the library, and is currently not documented (otherwise than with comments in code).

    1.7 Reliability

    RapidXml is very robust and comes with a large harness of unit tests. Special care has been taken to ensure stability of the parser no matter what source text is thrown at it. One of the unit tests produces 100,000 randomly corrupted variants of XML document, which (when uncorrupted) contains all constructs recognized by RapidXml. RapidXml passes this test when it correctly recognizes that errors have been introduced, and does not crash or loop indefinitely.

    - Another unit test puts RapidXml head-to-head with another, well estabilished XML parser, and verifies that their outputs match across a wide variety of small and large documents.

    - Yet another test feeds RapidXml with over 1000 test files from W3C compliance suite, and verifies that correct results are obtained. There are also additional tests that verify each API function separately, and test that various parsing modes work as expected.

    1.8 Acknowledgements

    I would like to thank Arseny Kapoulkine for his work on pugixml, which was an inspiration for this project. Additional thanks go to Kristen Wegner for creating pugxml, from which pugixml was derived. Janusz Wohlfeil kindly ran RapidXml speed tests on hardware that I did not have access to, allowing me to expand performance comparison table.

    2. Two Minute Tutorial

    2.1 Parsing

    The following code causes RapidXml to parse a zero-terminated string named text:
    using namespace rapidxml;
    -xml_document<> doc;    // character type defaults to char
    -doc.parse<0>(text);    // 0 means default parse flags
    -
    doc object is now a root of DOM tree containing representation of the parsed XML. Because all RapidXml interface is contained inside namespace rapidxml, users must either bring contents of this namespace into scope, or fully qualify all the names. Class xml_document represents a root of the DOM hierarchy. By means of public inheritance, it is also an xml_node and a memory_pool. Template parameter of xml_document::parse() function is used to specify parsing flags, with which you can fine-tune behaviour of the parser. Note that flags must be a compile-time constant.

    2.2 Accessing The DOM Tree

    To access the DOM tree, use methods of xml_node and xml_attribute classes:
    cout << "Name of my first node is: " << doc.first_node()->name() << "\n";
    -xml_node<> *node = doc.first_node("foobar");
    -cout << "Node foobar has value " << node->value() << "\n";
    -for (xml_attribute<> *attr = node->first_attribute();
    -     attr; attr = attr->next_attribute())
    -{
    -    cout << "Node foobar has attribute " << attr->name() << " ";
    -    cout << "with value " << attr->value() << "\n";
    -}
    -

    2.3 Modifying The DOM Tree

    DOM tree produced by the parser is fully modifiable. Nodes and attributes can be added/removed, and their contents changed. The below example creates a HTML document, whose sole contents is a link to google.com website:
    xml_document<> doc;
    -xml_node<> *node = doc.allocate_node(node_element, "a", "Google");
    -doc.append_node(node);
    -xml_attribute<> *attr = doc.allocate_attribute("href", "google.com");
    -node->append_attribute(attr);
    -
    One quirk is that nodes and attributes do not own the text of their names and values. This is because normally they only store pointers to the source text. So, when assigning a new name or value to the node, care must be taken to ensure proper lifetime of the string. The easiest way to achieve it is to allocate the string from the xml_document memory pool. In the above example this is not necessary, because we are only assigning character constants. But the code below uses memory_pool::allocate_string() function to allocate node name (which will have the same lifetime as the document), and assigns it to a new node:
    xml_document<> doc;
    -char *node_name = doc.allocate_string(name);        // Allocate string and copy name into it
    -xml_node<> *node = doc.allocate_node(node_element, node_name);  // Set node name to node_name
    -
    Check Reference section for description of the entire interface.

    2.4 Printing XML

    You can print xml_document and xml_node objects into an XML string. Use print() function or operator <<, which are defined in rapidxml_print.hpp header.
    using namespace rapidxml;
    -xml_document<> doc;    // character type defaults to char
    -// ... some code to fill the document
    -
    -// Print to stream using operator <<
    -std::cout << doc;   
    -
    -// Print to stream using print function, specifying printing flags
    -print(std::cout, doc, 0);   // 0 means default printing flags
    -
    -// Print to string using output iterator
    -std::string s;
    -print(std::back_inserter(s), doc, 0);
    -
    -// Print to memory buffer using output iterator
    -char buffer[4096];                      // You are responsible for making the buffer large enough!
    -char *end = print(buffer, doc, 0);      // end contains pointer to character after last printed character
    -*end = 0;                               // Add string terminator after XML
    -

    3. Differences From Regular XML Parsers

    RapidXml is an in-situ parser, which allows it to achieve very high parsing speed. In-situ means that parser does not make copies of strings. Instead, it places pointers to the source text in the DOM hierarchy.

    3.1 Lifetime Of Source Text

    In-situ parsing requires that source text lives at least as long as the document object. If source text is destroyed, names and values of nodes in DOM tree will become destroyed as well. Additionally, whitespace processing, character entity translation, and zero-termination of strings require that source text be modified during parsing (but see non-destructive mode). This makes the text useless for further processing once it was parsed by RapidXml.

    - In many cases however, these are not serious issues.

    3.2 Ownership Of Strings

    Nodes and attributes produced by RapidXml do not own their name and value strings. They merely hold the pointers to them. This means you have to be careful when setting these values manually, by using xml_base::name(const Ch *) or xml_base::value(const Ch *) functions. Care must be taken to ensure that lifetime of the string passed is at least as long as lifetime of the node/attribute. The easiest way to achieve it is to allocate the string from memory_pool owned by the document. Use memory_pool::allocate_string() function for this purpose.

    3.3 Destructive Vs Non-Destructive Mode

    By default, the parser modifies source text during the parsing process. This is required to achieve character entity translation, whitespace normalization, and zero-termination of strings.

    - In some cases this behaviour may be undesirable, for example if source text resides in read only memory, or is mapped to memory directly from file. By using appropriate parser flags (parse_non_destructive), source text modifications can be disabled. However, because RapidXml does in-situ parsing, it obviously has the following side-effects:

    4. Performance

    RapidXml achieves its speed through use of several techniques:
    • In-situ parsing. When building DOM tree, RapidXml does not make copies of string data, such as node names and values. Instead, it stores pointers to interior of the source text.
    • Use of template metaprogramming techniques. This allows it to move much of the work to compile time. Through magic of the templates, C++ compiler generates a separate copy of parsing code for any combination of parser flags you use. In each copy, all possible decisions are made at compile time and all unused code is omitted.
    • Extensive use of lookup tables for parsing.
    • Hand-tuned C++ with profiling done on several most popular CPUs.
    This results in a very small and fast code: a parser which is custom tailored to exact needs with each invocation.

    4.1 Comparison With Other Parsers

    The table below compares speed of RapidXml to some other parsers, and to strlen() function executed on the same data. On a modern CPU (as of 2007), you can expect parsing throughput to be close to 1 GB/s. As a rule of thumb, parsing speed is about 50-100x faster than Xerces DOM, 30-60x faster than TinyXml, 3-12x faster than pugxml, and about 5% - 30% faster than pugixml, the fastest XML parser I know of.
    • The test file is a real-world, 50kB large, moderately dense XML file.
    • All timing is done by using RDTSC instruction present in Pentium-compatible CPUs.
    • No profile-guided optimizations are used.
    • All parsers are running in their fastest modes.
    • The results are given in CPU cycles per character, so frequency of CPUs is irrelevant.
    • The results are minimum values from a large number of runs, to minimize effects of operating system activity, task switching, interrupt handling etc.
    • A single parse of the test file takes about 1/10th of a millisecond, so with large number of runs there is a good chance of hitting at least one no-interrupt streak, and obtaining undisturbed results.
    Platform
    Compiler
    strlen() RapidXml pugixml 0.3 pugxml TinyXml
    Pentium 4
    MSVC 8.0
    2.5
    5.4
    7.0
    61.7
    298.8
    Pentium 4
    gcc 4.1.1
    0.8
    6.1
    9.5
    67.0
    413.2
    Core 2
    MSVC 8.0
    1.0
    4.5
    5.0
    24.6
    154.8
    Core 2
    gcc 4.1.1
    0.6
    4.6
    5.4
    28.3
    229.3
    Athlon XP
    MSVC 8.0
    3.1
    7.7
    8.0
    25.5
    182.6
    Athlon XP
    gcc 4.1.1
    0.9
    8.2
    9.2
    33.7
    265.2
    Pentium 3
    MSVC 8.0
    2.0
    6.3
    7.0
    30.9
    211.9
    Pentium 3
    gcc 4.1.1
    1.0
    6.7
    8.9
    35.3
    316.0
    (*) All results are in CPU cycles per character of source text

    5. Reference

    This section lists all classes, functions, constants etc. and describes them in detail.
    class - template - rapidxml::memory_pool
    - constructor - memory_pool()
    - destructor - ~memory_pool()
    function allocate_node(node_type type, const Ch *name=0, const Ch *value=0, std::size_t name_size=0, std::size_t value_size=0)
    function allocate_attribute(const Ch *name=0, const Ch *value=0, std::size_t name_size=0, std::size_t value_size=0)
    function allocate_string(const Ch *source=0, std::size_t size=0)
    function clone_node(const xml_node< Ch > *source, xml_node< Ch > *result=0)
    function clear()
    function set_allocator(alloc_func *af, free_func *ff)

    class rapidxml::parse_error
    - constructor - parse_error(const char *what, void *where)
    function what() const
    function where() const

    class - template - rapidxml::xml_attribute
    - constructor - xml_attribute()
    function document() const
    function previous_attribute(const Ch *name=0, std::size_t name_size=0, bool case_sensitive=true) const
    function next_attribute(const Ch *name=0, std::size_t name_size=0, bool case_sensitive=true) const

    class - template - rapidxml::xml_base
    - constructor - xml_base()
    function name() const
    function name_size() const
    function value() const
    function value_size() const
    function name(const Ch *name, std::size_t size)
    function name(const Ch *name)
    function value(const Ch *value, std::size_t size)
    function value(const Ch *value)
    function parent() const

    class - template - rapidxml::xml_document
    - constructor - xml_document()
    function parse(Ch *text)
    function clear()

    class - template - rapidxml::xml_node
    - constructor - xml_node(node_type type)
    function type() const
    function document() const
    function first_node(const Ch *name=0, std::size_t name_size=0, bool case_sensitive=true) const
    function last_node(const Ch *name=0, std::size_t name_size=0, bool case_sensitive=true) const
    function previous_sibling(const Ch *name=0, std::size_t name_size=0, bool case_sensitive=true) const
    function next_sibling(const Ch *name=0, std::size_t name_size=0, bool case_sensitive=true) const
    function first_attribute(const Ch *name=0, std::size_t name_size=0, bool case_sensitive=true) const
    function last_attribute(const Ch *name=0, std::size_t name_size=0, bool case_sensitive=true) const
    function type(node_type type)
    function prepend_node(xml_node< Ch > *child)
    function append_node(xml_node< Ch > *child)
    function insert_node(xml_node< Ch > *where, xml_node< Ch > *child)
    function remove_first_node()
    function remove_last_node()
    function remove_node(xml_node< Ch > *where)
    function remove_all_nodes()
    function prepend_attribute(xml_attribute< Ch > *attribute)
    function append_attribute(xml_attribute< Ch > *attribute)
    function insert_attribute(xml_attribute< Ch > *where, xml_attribute< Ch > *attribute)
    function remove_first_attribute()
    function remove_last_attribute()
    function remove_attribute(xml_attribute< Ch > *where)
    function remove_all_attributes()

    namespace rapidxml
    enum node_type
    function parse_error_handler(const char *what, void *where)
    function print(OutIt out, const xml_node< Ch > &node, int flags=0)
    function print(std::basic_ostream< Ch > &out, const xml_node< Ch > &node, int flags=0)
    function operator<<(std::basic_ostream< Ch > &out, const xml_node< Ch > &node)
    - constant - parse_no_data_nodes
    - constant - parse_no_element_values
    - constant - parse_no_string_terminators
    - constant - parse_no_entity_translation
    - constant - parse_no_utf8
    - constant - parse_declaration_node
    - constant - parse_comment_nodes
    - constant - parse_doctype_node
    - constant - parse_pi_nodes
    - constant - parse_validate_closing_tags
    - constant - parse_trim_whitespace
    - constant - parse_normalize_whitespace
    - constant - parse_default
    - constant - parse_non_destructive
    - constant - parse_fastest
    - constant - parse_full
    - constant - print_no_indenting


    class - template - rapidxml::memory_pool

    - - Defined in rapidxml.hpp
    - Base class for - xml_document

    Description

    This class is used by the parser to create new nodes and attributes, without overheads of dynamic memory allocation. In most cases, you will not need to use this class directly. However, if you need to create nodes manually or modify names/values of nodes, you are encouraged to use memory_pool of relevant xml_document to allocate the memory. Not only is this faster than allocating them by using new operator, but also their lifetime will be tied to the lifetime of document, possibly simplyfing memory management.

    - Call allocate_node() or allocate_attribute() functions to obtain new nodes or attributes from the pool. You can also call allocate_string() function to allocate strings. Such strings can then be used as names or values of nodes without worrying about their lifetime. Note that there is no free() function -- all allocations are freed at once when clear() function is called, or when the pool is destroyed.

    - It is also possible to create a standalone memory_pool, and use it to allocate nodes, whose lifetime will not be tied to any document.

    - Pool maintains RAPIDXML_STATIC_POOL_SIZE bytes of statically allocated memory. Until static memory is exhausted, no dynamic memory allocations are done. When static memory is exhausted, pool allocates additional blocks of memory of size RAPIDXML_DYNAMIC_POOL_SIZE each, by using global new[] and delete[] operators. This behaviour can be changed by setting custom allocation routines. Use set_allocator() function to set them.

    - Allocations for nodes, attributes and strings are aligned at RAPIDXML_ALIGNMENT bytes. This value defaults to the size of pointer on target architecture.

    - To obtain absolutely top performance from the parser, it is important that all nodes are allocated from a single, contiguous block of memory. Otherwise, cache misses when jumping between two (or more) disjoint blocks of memory can slow down parsing quite considerably. If required, you can tweak RAPIDXML_STATIC_POOL_SIZE, RAPIDXML_DYNAMIC_POOL_SIZE and RAPIDXML_ALIGNMENT to obtain best wasted memory to performance compromise. To do it, define their values before rapidxml.hpp file is included.

    Parameters

    Ch
    Character type of created nodes.

    - constructor - memory_pool::memory_pool

    Synopsis

    memory_pool(); -

    Description

    Constructs empty pool with default allocator functions.

    - destructor - memory_pool::~memory_pool

    Synopsis

    ~memory_pool(); -

    Description

    Destroys pool and frees all the memory. This causes memory occupied by nodes allocated by the pool to be freed. Nodes allocated from the pool are no longer valid.

    function memory_pool::allocate_node

    Synopsis

    xml_node<Ch>* allocate_node(node_type type, const Ch *name=0, const Ch *value=0, std::size_t name_size=0, std::size_t value_size=0); -

    Description

    Allocates a new node from the pool, and optionally assigns name and value to it. If the allocation request cannot be accomodated, this function will throw std::bad_alloc. If exceptions are disabled by defining RAPIDXML_NO_EXCEPTIONS, this function will call rapidxml::parse_error_handler() function.

    Parameters

    type
    Type of node to create.
    name
    Name to assign to the node, or 0 to assign no name.
    value
    Value to assign to the node, or 0 to assign no value.
    name_size
    Size of name to assign, or 0 to automatically calculate size from name string.
    value_size
    Size of value to assign, or 0 to automatically calculate size from value string.

    Returns

    Pointer to allocated node. This pointer will never be NULL.

    function memory_pool::allocate_attribute

    Synopsis

    xml_attribute<Ch>* allocate_attribute(const Ch *name=0, const Ch *value=0, std::size_t name_size=0, std::size_t value_size=0); -

    Description

    Allocates a new attribute from the pool, and optionally assigns name and value to it. If the allocation request cannot be accomodated, this function will throw std::bad_alloc. If exceptions are disabled by defining RAPIDXML_NO_EXCEPTIONS, this function will call rapidxml::parse_error_handler() function.

    Parameters

    name
    Name to assign to the attribute, or 0 to assign no name.
    value
    Value to assign to the attribute, or 0 to assign no value.
    name_size
    Size of name to assign, or 0 to automatically calculate size from name string.
    value_size
    Size of value to assign, or 0 to automatically calculate size from value string.

    Returns

    Pointer to allocated attribute. This pointer will never be NULL.

    function memory_pool::allocate_string

    Synopsis

    Ch* allocate_string(const Ch *source=0, std::size_t size=0); -

    Description

    Allocates a char array of given size from the pool, and optionally copies a given string to it. If the allocation request cannot be accomodated, this function will throw std::bad_alloc. If exceptions are disabled by defining RAPIDXML_NO_EXCEPTIONS, this function will call rapidxml::parse_error_handler() function.

    Parameters

    source
    String to initialize the allocated memory with, or 0 to not initialize it.
    size
    Number of characters to allocate, or zero to calculate it automatically from source string length; if size is 0, source string must be specified and null terminated.

    Returns

    Pointer to allocated char array. This pointer will never be NULL.

    function memory_pool::clone_node

    Synopsis

    xml_node<Ch>* clone_node(const xml_node< Ch > *source, xml_node< Ch > *result=0); -

    Description

    Clones an xml_node and its hierarchy of child nodes and attributes. Nodes and attributes are allocated from this memory pool. Names and values are not cloned, they are shared between the clone and the source. Result node can be optionally specified as a second parameter, in which case its contents will be replaced with cloned source node. This is useful when you want to clone entire document.

    Parameters

    source
    Node to clone.
    result
    Node to put results in, or 0 to automatically allocate result node

    Returns

    Pointer to cloned node. This pointer will never be NULL.

    function memory_pool::clear

    Synopsis

    void clear(); -

    Description

    Clears the pool. This causes memory occupied by nodes allocated by the pool to be freed. Any nodes or strings allocated from the pool will no longer be valid.

    function memory_pool::set_allocator

    Synopsis

    void set_allocator(alloc_func *af, free_func *ff); -

    Description

    Sets or resets the user-defined memory allocation functions for the pool. This can only be called when no memory is allocated from the pool yet, otherwise results are undefined. Allocation function must not return invalid pointer on failure. It should either throw, stop the program, or use longjmp() function to pass control to other place of program. If it returns invalid pointer, results are undefined.

    - User defined allocation functions must have the following forms:

    -void *allocate(std::size_t size);
    -void free(void *pointer);

    Parameters

    af
    Allocation function, or 0 to restore default function
    ff
    Free function, or 0 to restore default function

    class rapidxml::parse_error

    - - Defined in rapidxml.hpp

    Description

    Parse error exception. This exception is thrown by the parser when an error occurs. Use what() function to get human-readable error message. Use where() function to get a pointer to position within source text where error was detected.

    - If throwing exceptions by the parser is undesirable, it can be disabled by defining RAPIDXML_NO_EXCEPTIONS macro before rapidxml.hpp is included. This will cause the parser to call rapidxml::parse_error_handler() function instead of throwing an exception. This function must be defined by the user.

    - This class derives from std::exception class.

    - constructor - parse_error::parse_error

    Synopsis

    parse_error(const char *what, void *where); -

    Description

    Constructs parse error.

    function parse_error::what

    Synopsis

    virtual const char* what() const; -

    Description

    Gets human readable description of error.

    Returns

    Pointer to null terminated description of the error.

    function parse_error::where

    Synopsis

    Ch* where() const; -

    Description

    Gets pointer to character data where error happened. Ch should be the same as char type of xml_document that produced the error.

    Returns

    Pointer to location within the parsed string where error occured.

    class - template - rapidxml::xml_attribute

    - - Defined in rapidxml.hpp
    - Inherits from - xml_base

    Description

    Class representing attribute node of XML document. Each attribute has name and value strings, which are available through name() and value() functions (inherited from xml_base). Note that after parse, both name and value of attribute will point to interior of source text used for parsing. Thus, this text must persist in memory for the lifetime of attribute.

    Parameters

    Ch
    Character type to use.

    - constructor - xml_attribute::xml_attribute

    Synopsis

    xml_attribute(); -

    Description

    Constructs an empty attribute with the specified type. Consider using memory_pool of appropriate xml_document if allocating attributes manually.

    function xml_attribute::document

    Synopsis

    xml_document<Ch>* document() const; -

    Description

    Gets document of which attribute is a child.

    Returns

    Pointer to document that contains this attribute, or 0 if there is no parent document.

    function xml_attribute::previous_attribute

    Synopsis

    xml_attribute<Ch>* previous_attribute(const Ch *name=0, std::size_t name_size=0, bool case_sensitive=true) const; -

    Description

    Gets previous attribute, optionally matching attribute name.

    Parameters

    name
    Name of attribute to find, or 0 to return previous attribute regardless of its name; this string doesn't have to be zero-terminated if name_size is non-zero
    name_size
    Size of name, in characters, or 0 to have size calculated automatically from string
    case_sensitive
    Should name comparison be case-sensitive; non case-sensitive comparison works properly only for ASCII characters

    Returns

    Pointer to found attribute, or 0 if not found.

    function xml_attribute::next_attribute

    Synopsis

    xml_attribute<Ch>* next_attribute(const Ch *name=0, std::size_t name_size=0, bool case_sensitive=true) const; -

    Description

    Gets next attribute, optionally matching attribute name.

    Parameters

    name
    Name of attribute to find, or 0 to return next attribute regardless of its name; this string doesn't have to be zero-terminated if name_size is non-zero
    name_size
    Size of name, in characters, or 0 to have size calculated automatically from string
    case_sensitive
    Should name comparison be case-sensitive; non case-sensitive comparison works properly only for ASCII characters

    Returns

    Pointer to found attribute, or 0 if not found.

    class - template - rapidxml::xml_base

    - - Defined in rapidxml.hpp
    - Base class for - xml_attribute xml_node

    Description

    Base class for xml_node and xml_attribute implementing common functions: name(), name_size(), value(), value_size() and parent().

    Parameters

    Ch
    Character type to use

    - constructor - xml_base::xml_base

    Synopsis

    xml_base(); -

    function xml_base::name

    Synopsis

    Ch* name() const; -

    Description

    Gets name of the node. Interpretation of name depends on type of node. Note that name will not be zero-terminated if rapidxml::parse_no_string_terminators option was selected during parse.

    - Use name_size() function to determine length of the name.

    Returns

    Name of node, or empty string if node has no name.

    function xml_base::name_size

    Synopsis

    std::size_t name_size() const; -

    Description

    Gets size of node name, not including terminator character. This function works correctly irrespective of whether name is or is not zero terminated.

    Returns

    Size of node name, in characters.

    function xml_base::value

    Synopsis

    Ch* value() const; -

    Description

    Gets value of node. Interpretation of value depends on type of node. Note that value will not be zero-terminated if rapidxml::parse_no_string_terminators option was selected during parse.

    - Use value_size() function to determine length of the value.

    Returns

    Value of node, or empty string if node has no value.

    function xml_base::value_size

    Synopsis

    std::size_t value_size() const; -

    Description

    Gets size of node value, not including terminator character. This function works correctly irrespective of whether value is or is not zero terminated.

    Returns

    Size of node value, in characters.

    function xml_base::name

    Synopsis

    void name(const Ch *name, std::size_t size); -

    Description

    Sets name of node to a non zero-terminated string. See Ownership Of Strings .

    - Note that node does not own its name or value, it only stores a pointer to it. It will not delete or otherwise free the pointer on destruction. It is reponsibility of the user to properly manage lifetime of the string. The easiest way to achieve it is to use memory_pool of the document to allocate the string - on destruction of the document the string will be automatically freed.

    - Size of name must be specified separately, because name does not have to be zero terminated. Use name(const Ch *) function to have the length automatically calculated (string must be zero terminated).

    Parameters

    name
    Name of node to set. Does not have to be zero terminated.
    size
    Size of name, in characters. This does not include zero terminator, if one is present.

    function xml_base::name

    Synopsis

    void name(const Ch *name); -

    Description

    Sets name of node to a zero-terminated string. See also Ownership Of Strings and xml_node::name(const Ch *, std::size_t).

    Parameters

    name
    Name of node to set. Must be zero terminated.

    function xml_base::value

    Synopsis

    void value(const Ch *value, std::size_t size); -

    Description

    Sets value of node to a non zero-terminated string. See Ownership Of Strings .

    - Note that node does not own its name or value, it only stores a pointer to it. It will not delete or otherwise free the pointer on destruction. It is reponsibility of the user to properly manage lifetime of the string. The easiest way to achieve it is to use memory_pool of the document to allocate the string - on destruction of the document the string will be automatically freed.

    - Size of value must be specified separately, because it does not have to be zero terminated. Use value(const Ch *) function to have the length automatically calculated (string must be zero terminated).

    - If an element has a child node of type node_data, it will take precedence over element value when printing. If you want to manipulate data of elements using values, use parser flag rapidxml::parse_no_data_nodes to prevent creation of data nodes by the parser.

    Parameters

    value
    value of node to set. Does not have to be zero terminated.
    size
    Size of value, in characters. This does not include zero terminator, if one is present.

    function xml_base::value

    Synopsis

    void value(const Ch *value); -

    Description

    Sets value of node to a zero-terminated string. See also Ownership Of Strings and xml_node::value(const Ch *, std::size_t).

    Parameters

    value
    Vame of node to set. Must be zero terminated.

    function xml_base::parent

    Synopsis

    xml_node<Ch>* parent() const; -

    Description

    Gets node parent.

    Returns

    Pointer to parent node, or 0 if there is no parent.

    class - template - rapidxml::xml_document

    - - Defined in rapidxml.hpp
    - Inherits from - xml_node memory_pool

    Description

    This class represents root of the DOM hierarchy. It is also an xml_node and a memory_pool through public inheritance. Use parse() function to build a DOM tree from a zero-terminated XML text string. parse() function allocates memory for nodes and attributes by using functions of xml_document, which are inherited from memory_pool. To access root node of the document, use the document itself, as if it was an xml_node.

    Parameters

    Ch
    Character type to use.

    - constructor - xml_document::xml_document

    Synopsis

    xml_document(); -

    Description

    Constructs empty XML document.

    function xml_document::parse

    Synopsis

    void parse(Ch *text); -

    Description

    Parses zero-terminated XML string according to given flags. Passed string will be modified by the parser, unless rapidxml::parse_non_destructive flag is used. The string must persist for the lifetime of the document. In case of error, rapidxml::parse_error exception will be thrown.

    - If you want to parse contents of a file, you must first load the file into the memory, and pass pointer to its beginning. Make sure that data is zero-terminated.

    - Document can be parsed into multiple times. Each new call to parse removes previous nodes and attributes (if any), but does not clear memory pool.

    Parameters

    text
    XML data to parse; pointer is non-const to denote fact that this data may be modified by the parser.

    function xml_document::clear

    Synopsis

    void clear(); -

    Description

    Clears the document by deleting all nodes and clearing the memory pool. All nodes owned by document pool are destroyed.

    class - template - rapidxml::xml_node

    - - Defined in rapidxml.hpp
    - Inherits from - xml_base
    - Base class for - xml_document

    Description

    Class representing a node of XML document. Each node may have associated name and value strings, which are available through name() and value() functions. Interpretation of name and value depends on type of the node. Type of node can be determined by using type() function.

    - Note that after parse, both name and value of node, if any, will point interior of source text used for parsing. Thus, this text must persist in the memory for the lifetime of node.

    Parameters

    Ch
    Character type to use.

    - constructor - xml_node::xml_node

    Synopsis

    xml_node(node_type type); -

    Description

    Constructs an empty node with the specified type. Consider using memory_pool of appropriate document to allocate nodes manually.

    Parameters

    type
    Type of node to construct.

    function xml_node::type

    Synopsis

    node_type type() const; -

    Description

    Gets type of node.

    Returns

    Type of node.

    function xml_node::document

    Synopsis

    xml_document<Ch>* document() const; -

    Description

    Gets document of which node is a child.

    Returns

    Pointer to document that contains this node, or 0 if there is no parent document.

    function xml_node::first_node

    Synopsis

    xml_node<Ch>* first_node(const Ch *name=0, std::size_t name_size=0, bool case_sensitive=true) const; -

    Description

    Gets first child node, optionally matching node name.

    Parameters

    name
    Name of child to find, or 0 to return first child regardless of its name; this string doesn't have to be zero-terminated if name_size is non-zero
    name_size
    Size of name, in characters, or 0 to have size calculated automatically from string
    case_sensitive
    Should name comparison be case-sensitive; non case-sensitive comparison works properly only for ASCII characters

    Returns

    Pointer to found child, or 0 if not found.

    function xml_node::last_node

    Synopsis

    xml_node<Ch>* last_node(const Ch *name=0, std::size_t name_size=0, bool case_sensitive=true) const; -

    Description

    Gets last child node, optionally matching node name. Behaviour is undefined if node has no children. Use first_node() to test if node has children.

    Parameters

    name
    Name of child to find, or 0 to return last child regardless of its name; this string doesn't have to be zero-terminated if name_size is non-zero
    name_size
    Size of name, in characters, or 0 to have size calculated automatically from string
    case_sensitive
    Should name comparison be case-sensitive; non case-sensitive comparison works properly only for ASCII characters

    Returns

    Pointer to found child, or 0 if not found.

    function xml_node::previous_sibling

    Synopsis

    xml_node<Ch>* previous_sibling(const Ch *name=0, std::size_t name_size=0, bool case_sensitive=true) const; -

    Description

    Gets previous sibling node, optionally matching node name. Behaviour is undefined if node has no parent. Use parent() to test if node has a parent.

    Parameters

    name
    Name of sibling to find, or 0 to return previous sibling regardless of its name; this string doesn't have to be zero-terminated if name_size is non-zero
    name_size
    Size of name, in characters, or 0 to have size calculated automatically from string
    case_sensitive
    Should name comparison be case-sensitive; non case-sensitive comparison works properly only for ASCII characters

    Returns

    Pointer to found sibling, or 0 if not found.

    function xml_node::next_sibling

    Synopsis

    xml_node<Ch>* next_sibling(const Ch *name=0, std::size_t name_size=0, bool case_sensitive=true) const; -

    Description

    Gets next sibling node, optionally matching node name. Behaviour is undefined if node has no parent. Use parent() to test if node has a parent.

    Parameters

    name
    Name of sibling to find, or 0 to return next sibling regardless of its name; this string doesn't have to be zero-terminated if name_size is non-zero
    name_size
    Size of name, in characters, or 0 to have size calculated automatically from string
    case_sensitive
    Should name comparison be case-sensitive; non case-sensitive comparison works properly only for ASCII characters

    Returns

    Pointer to found sibling, or 0 if not found.

    function xml_node::first_attribute

    Synopsis

    xml_attribute<Ch>* first_attribute(const Ch *name=0, std::size_t name_size=0, bool case_sensitive=true) const; -

    Description

    Gets first attribute of node, optionally matching attribute name.

    Parameters

    name
    Name of attribute to find, or 0 to return first attribute regardless of its name; this string doesn't have to be zero-terminated if name_size is non-zero
    name_size
    Size of name, in characters, or 0 to have size calculated automatically from string
    case_sensitive
    Should name comparison be case-sensitive; non case-sensitive comparison works properly only for ASCII characters

    Returns

    Pointer to found attribute, or 0 if not found.

    function xml_node::last_attribute

    Synopsis

    xml_attribute<Ch>* last_attribute(const Ch *name=0, std::size_t name_size=0, bool case_sensitive=true) const; -

    Description

    Gets last attribute of node, optionally matching attribute name.

    Parameters

    name
    Name of attribute to find, or 0 to return last attribute regardless of its name; this string doesn't have to be zero-terminated if name_size is non-zero
    name_size
    Size of name, in characters, or 0 to have size calculated automatically from string
    case_sensitive
    Should name comparison be case-sensitive; non case-sensitive comparison works properly only for ASCII characters

    Returns

    Pointer to found attribute, or 0 if not found.

    function xml_node::type

    Synopsis

    void type(node_type type); -

    Description

    Sets type of node.

    Parameters

    type
    Type of node to set.

    function xml_node::prepend_node

    Synopsis

    void prepend_node(xml_node< Ch > *child); -

    Description

    Prepends a new child node. The prepended child becomes the first child, and all existing children are moved one position back.

    Parameters

    child
    Node to prepend.

    function xml_node::append_node

    Synopsis

    void append_node(xml_node< Ch > *child); -

    Description

    Appends a new child node. The appended child becomes the last child.

    Parameters

    child
    Node to append.

    function xml_node::insert_node

    Synopsis

    void insert_node(xml_node< Ch > *where, xml_node< Ch > *child); -

    Description

    Inserts a new child node at specified place inside the node. All children after and including the specified node are moved one position back.

    Parameters

    where
    Place where to insert the child, or 0 to insert at the back.
    child
    Node to insert.

    function xml_node::remove_first_node

    Synopsis

    void remove_first_node(); -

    Description

    Removes first child node. If node has no children, behaviour is undefined. Use first_node() to test if node has children.

    function xml_node::remove_last_node

    Synopsis

    void remove_last_node(); -

    Description

    Removes last child of the node. If node has no children, behaviour is undefined. Use first_node() to test if node has children.

    function xml_node::remove_node

    Synopsis

    void remove_node(xml_node< Ch > *where); -

    Description

    Removes specified child from the node.

    function xml_node::remove_all_nodes

    Synopsis

    void remove_all_nodes(); -

    Description

    Removes all child nodes (but not attributes).

    function xml_node::prepend_attribute

    Synopsis

    void prepend_attribute(xml_attribute< Ch > *attribute); -

    Description

    Prepends a new attribute to the node.

    Parameters

    attribute
    Attribute to prepend.

    function xml_node::append_attribute

    Synopsis

    void append_attribute(xml_attribute< Ch > *attribute); -

    Description

    Appends a new attribute to the node.

    Parameters

    attribute
    Attribute to append.

    function xml_node::insert_attribute

    Synopsis

    void insert_attribute(xml_attribute< Ch > *where, xml_attribute< Ch > *attribute); -

    Description

    Inserts a new attribute at specified place inside the node. All attributes after and including the specified attribute are moved one position back.

    Parameters

    where
    Place where to insert the attribute, or 0 to insert at the back.
    attribute
    Attribute to insert.

    function xml_node::remove_first_attribute

    Synopsis

    void remove_first_attribute(); -

    Description

    Removes first attribute of the node. If node has no attributes, behaviour is undefined. Use first_attribute() to test if node has attributes.

    function xml_node::remove_last_attribute

    Synopsis

    void remove_last_attribute(); -

    Description

    Removes last attribute of the node. If node has no attributes, behaviour is undefined. Use first_attribute() to test if node has attributes.

    function xml_node::remove_attribute

    Synopsis

    void remove_attribute(xml_attribute< Ch > *where); -

    Description

    Removes specified attribute from node.

    Parameters

    where
    Pointer to attribute to be removed.

    function xml_node::remove_all_attributes

    Synopsis

    void remove_all_attributes(); -

    Description

    Removes all attributes of node.

    enum node_type

    Description

    Enumeration listing all node types produced by the parser. Use xml_node::type() function to query node type.

    Values

    node_document
    A document node. Name and value are empty.
    node_element
    An element node. Name contains element name. Value contains text of first data node.
    node_data
    A data node. Name is empty. Value contains data text.
    node_cdata
    A CDATA node. Name is empty. Value contains data text.
    node_comment
    A comment node. Name is empty. Value contains comment text.
    node_declaration
    A declaration node. Name and value are empty. Declaration parameters (version, encoding and standalone) are in node attributes.
    node_doctype
    A DOCTYPE node. Name is empty. Value contains DOCTYPE text.
    node_pi
    A PI node. Name contains target. Value contains instructions.

    function parse_error_handler

    Synopsis

    void rapidxml::parse_error_handler(const char *what, void *where); -

    Description

    When exceptions are disabled by defining RAPIDXML_NO_EXCEPTIONS, this function is called to notify user about the error. It must be defined by the user.

    - This function cannot return. If it does, the results are undefined.

    - A very simple definition might look like that: - void rapidxml::parse_error_handler(const char *what, void *where) - { - std::cout << "Parse error: " << what << "\n"; - std::abort(); - } -

    Parameters

    what
    Human readable description of the error.
    where
    Pointer to character data where error was detected.

    function print

    Synopsis

    OutIt rapidxml::print(OutIt out, const xml_node< Ch > &node, int flags=0); -

    Description

    Prints XML to given output iterator.

    Parameters

    out
    Output iterator to print to.
    node
    Node to be printed. Pass xml_document to print entire document.
    flags
    Flags controlling how XML is printed.

    Returns

    Output iterator pointing to position immediately after last character of printed text.

    function print

    Synopsis

    std::basic_ostream<Ch>& rapidxml::print(std::basic_ostream< Ch > &out, const xml_node< Ch > &node, int flags=0); -

    Description

    Prints XML to given output stream.

    Parameters

    out
    Output stream to print to.
    node
    Node to be printed. Pass xml_document to print entire document.
    flags
    Flags controlling how XML is printed.

    Returns

    Output stream.

    function operator<<

    Synopsis

    std::basic_ostream<Ch>& rapidxml::operator<<(std::basic_ostream< Ch > &out, const xml_node< Ch > &node); -

    Description

    Prints formatted XML to given output stream. Uses default printing flags. Use print() function to customize printing process.

    Parameters

    out
    Output stream to print to.
    node
    Node to be printed.

    Returns

    Output stream.

    - constant - parse_no_data_nodes

    Synopsis

    const int parse_no_data_nodes - = 0x1; -

    Description

    Parse flag instructing the parser to not create data nodes. Text of first data node will still be placed in value of parent element, unless rapidxml::parse_no_element_values flag is also specified. Can be combined with other flags by use of | operator.

    - See xml_document::parse() function.

    - constant - parse_no_element_values

    Synopsis

    const int parse_no_element_values - = 0x2; -

    Description

    Parse flag instructing the parser to not use text of first data node as a value of parent element. Can be combined with other flags by use of | operator. Note that child data nodes of element node take precendence over its value when printing. That is, if element has one or more child data nodes and a value, the value will be ignored. Use rapidxml::parse_no_data_nodes flag to prevent creation of data nodes if you want to manipulate data using values of elements.

    - See xml_document::parse() function.

    - constant - parse_no_string_terminators

    Synopsis

    const int parse_no_string_terminators - = 0x4; -

    Description

    Parse flag instructing the parser to not place zero terminators after strings in the source text. By default zero terminators are placed, modifying source text. Can be combined with other flags by use of | operator.

    - See xml_document::parse() function.

    - constant - parse_no_entity_translation

    Synopsis

    const int parse_no_entity_translation - = 0x8; -

    Description

    Parse flag instructing the parser to not translate entities in the source text. By default entities are translated, modifying source text. Can be combined with other flags by use of | operator.

    - See xml_document::parse() function.

    - constant - parse_no_utf8

    Synopsis

    const int parse_no_utf8 - = 0x10; -

    Description

    Parse flag instructing the parser to disable UTF-8 handling and assume plain 8 bit characters. By default, UTF-8 handling is enabled. Can be combined with other flags by use of | operator.

    - See xml_document::parse() function.

    - constant - parse_declaration_node

    Synopsis

    const int parse_declaration_node - = 0x20; -

    Description

    Parse flag instructing the parser to create XML declaration node. By default, declaration node is not created. Can be combined with other flags by use of | operator.

    - See xml_document::parse() function.

    - constant - parse_comment_nodes

    Synopsis

    const int parse_comment_nodes - = 0x40; -

    Description

    Parse flag instructing the parser to create comments nodes. By default, comment nodes are not created. Can be combined with other flags by use of | operator.

    - See xml_document::parse() function.

    - constant - parse_doctype_node

    Synopsis

    const int parse_doctype_node - = 0x80; -

    Description

    Parse flag instructing the parser to create DOCTYPE node. By default, doctype node is not created. Although W3C specification allows at most one DOCTYPE node, RapidXml will silently accept documents with more than one. Can be combined with other flags by use of | operator.

    - See xml_document::parse() function.

    - constant - parse_pi_nodes

    Synopsis

    const int parse_pi_nodes - = 0x100; -

    Description

    Parse flag instructing the parser to create PI nodes. By default, PI nodes are not created. Can be combined with other flags by use of | operator.

    - See xml_document::parse() function.

    - constant - parse_validate_closing_tags

    Synopsis

    const int parse_validate_closing_tags - = 0x200; -

    Description

    Parse flag instructing the parser to validate closing tag names. If not set, name inside closing tag is irrelevant to the parser. By default, closing tags are not validated. Can be combined with other flags by use of | operator.

    - See xml_document::parse() function.

    - constant - parse_trim_whitespace

    Synopsis

    const int parse_trim_whitespace - = 0x400; -

    Description

    Parse flag instructing the parser to trim all leading and trailing whitespace of data nodes. By default, whitespace is not trimmed. This flag does not cause the parser to modify source text. Can be combined with other flags by use of | operator.

    - See xml_document::parse() function.

    - constant - parse_normalize_whitespace

    Synopsis

    const int parse_normalize_whitespace - = 0x800; -

    Description

    Parse flag instructing the parser to condense all whitespace runs of data nodes to a single space character. Trimming of leading and trailing whitespace of data is controlled by rapidxml::parse_trim_whitespace flag. By default, whitespace is not normalized. If this flag is specified, source text will be modified. Can be combined with other flags by use of | operator.

    - See xml_document::parse() function.

    - constant - parse_default

    Synopsis

    const int parse_default - = 0; -

    Description

    Parse flags which represent default behaviour of the parser. This is always equal to 0, so that all other flags can be simply ored together. Normally there is no need to inconveniently disable flags by anding with their negated (~) values. This also means that meaning of each flag is a negation of the default setting. For example, if flag name is rapidxml::parse_no_utf8, it means that utf-8 is enabled by default, and using the flag will disable it.

    - See xml_document::parse() function.

    - constant - parse_non_destructive

    Synopsis

    const int parse_non_destructive - = parse_no_string_terminators | parse_no_entity_translation; -

    Description

    A combination of parse flags that forbids any modifications of the source text. This also results in faster parsing. However, note that the following will occur:
    • names and values of nodes will not be zero terminated, you have to use xml_base::name_size() and xml_base::value_size() functions to determine where name and value ends
    • entities will not be translated
    • whitespace will not be normalized
    -See xml_document::parse() function.

    - constant - parse_fastest

    Synopsis

    const int parse_fastest - = parse_non_destructive | parse_no_data_nodes; -

    Description

    A combination of parse flags resulting in fastest possible parsing, without sacrificing important data.

    - See xml_document::parse() function.

    - constant - parse_full

    Synopsis

    const int parse_full - = parse_declaration_node | parse_comment_nodes | parse_doctype_node | parse_pi_nodes | parse_validate_closing_tags; -

    Description

    A combination of parse flags resulting in largest amount of data being extracted. This usually results in slowest parsing.

    - See xml_document::parse() function.

    - constant - print_no_indenting

    Synopsis

    const int print_no_indenting - = 0x1; -

    Description

    Printer flag instructing the printer to suppress indenting of XML. See print() function.

    \ No newline at end of file diff --git a/src/dependencies/rapidxml/rapidxml.hpp b/src/dependencies/rapidxml/rapidxml.hpp deleted file mode 100644 index 6b82f20..0000000 --- a/src/dependencies/rapidxml/rapidxml.hpp +++ /dev/null @@ -1,2596 +0,0 @@ -#ifndef RAPIDXML_HPP_INCLUDED -#define RAPIDXML_HPP_INCLUDED - -// Copyright (C) 2006, 2009 Marcin Kalicinski -// Version 1.13 -// Revision $DateTime: 2009/05/13 01:46:17 $ -//! \file rapidxml.hpp This file contains rapidxml parser and DOM implementation - -// If standard library is disabled, user must provide implementations of required functions and typedefs -#if !defined(RAPIDXML_NO_STDLIB) - #include // For std::size_t - #include // For assert - #include // For placement new -#endif - -// On MSVC, disable "conditional expression is constant" warning (level 4). -// This warning is almost impossible to avoid with certain types of templated code -#ifdef _MSC_VER - #pragma warning(push) - #pragma warning(disable:4127) // Conditional expression is constant -#endif - -/////////////////////////////////////////////////////////////////////////// -// RAPIDXML_PARSE_ERROR - -#if defined(RAPIDXML_NO_EXCEPTIONS) - -#define RAPIDXML_PARSE_ERROR(what, where) { parse_error_handler(what, where); assert(0); } - -namespace rapidxml -{ - //! When exceptions are disabled by defining RAPIDXML_NO_EXCEPTIONS, - //! this function is called to notify user about the error. - //! It must be defined by the user. - //!

    - //! This function cannot return. If it does, the results are undefined. - //!

    - //! A very simple definition might look like that: - //!

    -    //! void %rapidxml::%parse_error_handler(const char *what, void *where)
    -    //! {
    -    //!     std::cout << "Parse error: " << what << "\n";
    -    //!     std::abort();
    -    //! }
    -    //! 
    - //! \param what Human readable description of the error. - //! \param where Pointer to character data where error was detected. - void parse_error_handler(const char *what, void *where); -} - -#else - -#include // For std::exception - -#define RAPIDXML_PARSE_ERROR(what, where) throw parse_error(what, where) - -namespace rapidxml -{ - - //! Parse error exception. - //! This exception is thrown by the parser when an error occurs. - //! Use what() function to get human-readable error message. - //! Use where() function to get a pointer to position within source text where error was detected. - //!

    - //! If throwing exceptions by the parser is undesirable, - //! it can be disabled by defining RAPIDXML_NO_EXCEPTIONS macro before rapidxml.hpp is included. - //! This will cause the parser to call rapidxml::parse_error_handler() function instead of throwing an exception. - //! This function must be defined by the user. - //!

    - //! This class derives from std::exception class. - class parse_error: public std::exception - { - - public: - - //! Constructs parse error - parse_error(const char *what, void *where) - : m_what(what) - , m_where(where) - { - } - - //! Gets human readable description of error. - //! \return Pointer to null terminated description of the error. - virtual const char *what() const throw() - { - return m_what; - } - - //! Gets pointer to character data where error happened. - //! Ch should be the same as char type of xml_document that produced the error. - //! \return Pointer to location within the parsed string where error occured. - template - Ch *where() const - { - return reinterpret_cast(m_where); - } - - private: - - const char *m_what; - void *m_where; - - }; -} - -#endif - -/////////////////////////////////////////////////////////////////////////// -// Pool sizes - -#ifndef RAPIDXML_STATIC_POOL_SIZE - // Size of static memory block of memory_pool. - // Define RAPIDXML_STATIC_POOL_SIZE before including rapidxml.hpp if you want to override the default value. - // No dynamic memory allocations are performed by memory_pool until static memory is exhausted. - #define RAPIDXML_STATIC_POOL_SIZE (64 * 1024) -#endif - -#ifndef RAPIDXML_DYNAMIC_POOL_SIZE - // Size of dynamic memory block of memory_pool. - // Define RAPIDXML_DYNAMIC_POOL_SIZE before including rapidxml.hpp if you want to override the default value. - // After the static block is exhausted, dynamic blocks with approximately this size are allocated by memory_pool. - #define RAPIDXML_DYNAMIC_POOL_SIZE (64 * 1024) -#endif - -#ifndef RAPIDXML_ALIGNMENT - // Memory allocation alignment. - // Define RAPIDXML_ALIGNMENT before including rapidxml.hpp if you want to override the default value, which is the size of pointer. - // All memory allocations for nodes, attributes and strings will be aligned to this value. - // This must be a power of 2 and at least 1, otherwise memory_pool will not work. - #define RAPIDXML_ALIGNMENT sizeof(void *) -#endif - -namespace rapidxml -{ - // Forward declarations - template class xml_node; - template class xml_attribute; - template class xml_document; - - //! Enumeration listing all node types produced by the parser. - //! Use xml_node::type() function to query node type. - enum node_type - { - node_document, //!< A document node. Name and value are empty. - node_element, //!< An element node. Name contains element name. Value contains text of first data node. - node_data, //!< A data node. Name is empty. Value contains data text. - node_cdata, //!< A CDATA node. Name is empty. Value contains data text. - node_comment, //!< A comment node. Name is empty. Value contains comment text. - node_declaration, //!< A declaration node. Name and value are empty. Declaration parameters (version, encoding and standalone) are in node attributes. - node_doctype, //!< A DOCTYPE node. Name is empty. Value contains DOCTYPE text. - node_pi //!< A PI node. Name contains target. Value contains instructions. - }; - - /////////////////////////////////////////////////////////////////////// - // Parsing flags - - //! Parse flag instructing the parser to not create data nodes. - //! Text of first data node will still be placed in value of parent element, unless rapidxml::parse_no_element_values flag is also specified. - //! Can be combined with other flags by use of | operator. - //!

    - //! See xml_document::parse() function. - const int parse_no_data_nodes = 0x1; - - //! Parse flag instructing the parser to not use text of first data node as a value of parent element. - //! Can be combined with other flags by use of | operator. - //! Note that child data nodes of element node take precendence over its value when printing. - //! That is, if element has one or more child data nodes and a value, the value will be ignored. - //! Use rapidxml::parse_no_data_nodes flag to prevent creation of data nodes if you want to manipulate data using values of elements. - //!

    - //! See xml_document::parse() function. - const int parse_no_element_values = 0x2; - - //! Parse flag instructing the parser to not place zero terminators after strings in the source text. - //! By default zero terminators are placed, modifying source text. - //! Can be combined with other flags by use of | operator. - //!

    - //! See xml_document::parse() function. - const int parse_no_string_terminators = 0x4; - - //! Parse flag instructing the parser to not translate entities in the source text. - //! By default entities are translated, modifying source text. - //! Can be combined with other flags by use of | operator. - //!

    - //! See xml_document::parse() function. - const int parse_no_entity_translation = 0x8; - - //! Parse flag instructing the parser to disable UTF-8 handling and assume plain 8 bit characters. - //! By default, UTF-8 handling is enabled. - //! Can be combined with other flags by use of | operator. - //!

    - //! See xml_document::parse() function. - const int parse_no_utf8 = 0x10; - - //! Parse flag instructing the parser to create XML declaration node. - //! By default, declaration node is not created. - //! Can be combined with other flags by use of | operator. - //!

    - //! See xml_document::parse() function. - const int parse_declaration_node = 0x20; - - //! Parse flag instructing the parser to create comments nodes. - //! By default, comment nodes are not created. - //! Can be combined with other flags by use of | operator. - //!

    - //! See xml_document::parse() function. - const int parse_comment_nodes = 0x40; - - //! Parse flag instructing the parser to create DOCTYPE node. - //! By default, doctype node is not created. - //! Although W3C specification allows at most one DOCTYPE node, RapidXml will silently accept documents with more than one. - //! Can be combined with other flags by use of | operator. - //!

    - //! See xml_document::parse() function. - const int parse_doctype_node = 0x80; - - //! Parse flag instructing the parser to create PI nodes. - //! By default, PI nodes are not created. - //! Can be combined with other flags by use of | operator. - //!

    - //! See xml_document::parse() function. - const int parse_pi_nodes = 0x100; - - //! Parse flag instructing the parser to validate closing tag names. - //! If not set, name inside closing tag is irrelevant to the parser. - //! By default, closing tags are not validated. - //! Can be combined with other flags by use of | operator. - //!

    - //! See xml_document::parse() function. - const int parse_validate_closing_tags = 0x200; - - //! Parse flag instructing the parser to trim all leading and trailing whitespace of data nodes. - //! By default, whitespace is not trimmed. - //! This flag does not cause the parser to modify source text. - //! Can be combined with other flags by use of | operator. - //!

    - //! See xml_document::parse() function. - const int parse_trim_whitespace = 0x400; - - //! Parse flag instructing the parser to condense all whitespace runs of data nodes to a single space character. - //! Trimming of leading and trailing whitespace of data is controlled by rapidxml::parse_trim_whitespace flag. - //! By default, whitespace is not normalized. - //! If this flag is specified, source text will be modified. - //! Can be combined with other flags by use of | operator. - //!

    - //! See xml_document::parse() function. - const int parse_normalize_whitespace = 0x800; - - // Compound flags - - //! Parse flags which represent default behaviour of the parser. - //! This is always equal to 0, so that all other flags can be simply ored together. - //! Normally there is no need to inconveniently disable flags by anding with their negated (~) values. - //! This also means that meaning of each flag is a negation of the default setting. - //! For example, if flag name is rapidxml::parse_no_utf8, it means that utf-8 is enabled by default, - //! and using the flag will disable it. - //!

    - //! See xml_document::parse() function. - const int parse_default = 0; - - //! A combination of parse flags that forbids any modifications of the source text. - //! This also results in faster parsing. However, note that the following will occur: - //!
      - //!
    • names and values of nodes will not be zero terminated, you have to use xml_base::name_size() and xml_base::value_size() functions to determine where name and value ends
    • - //!
    • entities will not be translated
    • - //!
    • whitespace will not be normalized
    • - //!
    - //! See xml_document::parse() function. - const int parse_non_destructive = parse_no_string_terminators | parse_no_entity_translation; - - //! A combination of parse flags resulting in fastest possible parsing, without sacrificing important data. - //!

    - //! See xml_document::parse() function. - const int parse_fastest = parse_non_destructive | parse_no_data_nodes; - - //! A combination of parse flags resulting in largest amount of data being extracted. - //! This usually results in slowest parsing. - //!

    - //! See xml_document::parse() function. - const int parse_full = parse_declaration_node | parse_comment_nodes | parse_doctype_node | parse_pi_nodes | parse_validate_closing_tags; - - /////////////////////////////////////////////////////////////////////// - // Internals - - //! \cond internal - namespace internal - { - - // Struct that contains lookup tables for the parser - // It must be a template to allow correct linking (because it has static data members, which are defined in a header file). - template - struct lookup_tables - { - static const unsigned char lookup_whitespace[256]; // Whitespace table - static const unsigned char lookup_node_name[256]; // Node name table - static const unsigned char lookup_text[256]; // Text table - static const unsigned char lookup_text_pure_no_ws[256]; // Text table - static const unsigned char lookup_text_pure_with_ws[256]; // Text table - static const unsigned char lookup_attribute_name[256]; // Attribute name table - static const unsigned char lookup_attribute_data_1[256]; // Attribute data table with single quote - static const unsigned char lookup_attribute_data_1_pure[256]; // Attribute data table with single quote - static const unsigned char lookup_attribute_data_2[256]; // Attribute data table with double quotes - static const unsigned char lookup_attribute_data_2_pure[256]; // Attribute data table with double quotes - static const unsigned char lookup_digits[256]; // Digits - static const unsigned char lookup_upcase[256]; // To uppercase conversion table for ASCII characters - }; - - // Find length of the string - template - inline std::size_t measure(const Ch *p) - { - const Ch *tmp = p; - while (*tmp) - ++tmp; - return tmp - p; - } - - // Compare strings for equality - template - inline bool compare(const Ch *p1, std::size_t size1, const Ch *p2, std::size_t size2, bool case_sensitive) - { - if (size1 != size2) - return false; - if (case_sensitive) - { - for (const Ch *end = p1 + size1; p1 < end; ++p1, ++p2) - if (*p1 != *p2) - return false; - } - else - { - for (const Ch *end = p1 + size1; p1 < end; ++p1, ++p2) - if (lookup_tables<0>::lookup_upcase[static_cast(*p1)] != lookup_tables<0>::lookup_upcase[static_cast(*p2)]) - return false; - } - return true; - } - } - //! \endcond - - /////////////////////////////////////////////////////////////////////// - // Memory pool - - //! This class is used by the parser to create new nodes and attributes, without overheads of dynamic memory allocation. - //! In most cases, you will not need to use this class directly. - //! However, if you need to create nodes manually or modify names/values of nodes, - //! you are encouraged to use memory_pool of relevant xml_document to allocate the memory. - //! Not only is this faster than allocating them by using new operator, - //! but also their lifetime will be tied to the lifetime of document, - //! possibly simplyfing memory management. - //!

    - //! Call allocate_node() or allocate_attribute() functions to obtain new nodes or attributes from the pool. - //! You can also call allocate_string() function to allocate strings. - //! Such strings can then be used as names or values of nodes without worrying about their lifetime. - //! Note that there is no free() function -- all allocations are freed at once when clear() function is called, - //! or when the pool is destroyed. - //!

    - //! It is also possible to create a standalone memory_pool, and use it - //! to allocate nodes, whose lifetime will not be tied to any document. - //!

    - //! Pool maintains RAPIDXML_STATIC_POOL_SIZE bytes of statically allocated memory. - //! Until static memory is exhausted, no dynamic memory allocations are done. - //! When static memory is exhausted, pool allocates additional blocks of memory of size RAPIDXML_DYNAMIC_POOL_SIZE each, - //! by using global new[] and delete[] operators. - //! This behaviour can be changed by setting custom allocation routines. - //! Use set_allocator() function to set them. - //!

    - //! Allocations for nodes, attributes and strings are aligned at RAPIDXML_ALIGNMENT bytes. - //! This value defaults to the size of pointer on target architecture. - //!

    - //! To obtain absolutely top performance from the parser, - //! it is important that all nodes are allocated from a single, contiguous block of memory. - //! Otherwise, cache misses when jumping between two (or more) disjoint blocks of memory can slow down parsing quite considerably. - //! If required, you can tweak RAPIDXML_STATIC_POOL_SIZE, RAPIDXML_DYNAMIC_POOL_SIZE and RAPIDXML_ALIGNMENT - //! to obtain best wasted memory to performance compromise. - //! To do it, define their values before rapidxml.hpp file is included. - //! \param Ch Character type of created nodes. - template - class memory_pool - { - - public: - - //! \cond internal - typedef void *(alloc_func)(std::size_t); // Type of user-defined function used to allocate memory - typedef void (free_func)(void *); // Type of user-defined function used to free memory - //! \endcond - - //! Constructs empty pool with default allocator functions. - memory_pool() - : m_alloc_func(0) - , m_free_func(0) - { - init(); - } - - //! Destroys pool and frees all the memory. - //! This causes memory occupied by nodes allocated by the pool to be freed. - //! Nodes allocated from the pool are no longer valid. - ~memory_pool() - { - clear(); - } - - //! Allocates a new node from the pool, and optionally assigns name and value to it. - //! If the allocation request cannot be accomodated, this function will throw std::bad_alloc. - //! If exceptions are disabled by defining RAPIDXML_NO_EXCEPTIONS, this function - //! will call rapidxml::parse_error_handler() function. - //! \param type Type of node to create. - //! \param name Name to assign to the node, or 0 to assign no name. - //! \param value Value to assign to the node, or 0 to assign no value. - //! \param name_size Size of name to assign, or 0 to automatically calculate size from name string. - //! \param value_size Size of value to assign, or 0 to automatically calculate size from value string. - //! \return Pointer to allocated node. This pointer will never be NULL. - xml_node *allocate_node(node_type type, - const Ch *name = 0, const Ch *value = 0, - std::size_t name_size = 0, std::size_t value_size = 0) - { - void *memory = allocate_aligned(sizeof(xml_node)); - xml_node *node = new(memory) xml_node(type); - if (name) - { - if (name_size > 0) - node->name(name, name_size); - else - node->name(name); - } - if (value) - { - if (value_size > 0) - node->value(value, value_size); - else - node->value(value); - } - return node; - } - - //! Allocates a new attribute from the pool, and optionally assigns name and value to it. - //! If the allocation request cannot be accomodated, this function will throw std::bad_alloc. - //! If exceptions are disabled by defining RAPIDXML_NO_EXCEPTIONS, this function - //! will call rapidxml::parse_error_handler() function. - //! \param name Name to assign to the attribute, or 0 to assign no name. - //! \param value Value to assign to the attribute, or 0 to assign no value. - //! \param name_size Size of name to assign, or 0 to automatically calculate size from name string. - //! \param value_size Size of value to assign, or 0 to automatically calculate size from value string. - //! \return Pointer to allocated attribute. This pointer will never be NULL. - xml_attribute *allocate_attribute(const Ch *name = 0, const Ch *value = 0, - std::size_t name_size = 0, std::size_t value_size = 0) - { - void *memory = allocate_aligned(sizeof(xml_attribute)); - xml_attribute *attribute = new(memory) xml_attribute; - if (name) - { - if (name_size > 0) - attribute->name(name, name_size); - else - attribute->name(name); - } - if (value) - { - if (value_size > 0) - attribute->value(value, value_size); - else - attribute->value(value); - } - return attribute; - } - - //! Allocates a char array of given size from the pool, and optionally copies a given string to it. - //! If the allocation request cannot be accomodated, this function will throw std::bad_alloc. - //! If exceptions are disabled by defining RAPIDXML_NO_EXCEPTIONS, this function - //! will call rapidxml::parse_error_handler() function. - //! \param source String to initialize the allocated memory with, or 0 to not initialize it. - //! \param size Number of characters to allocate, or zero to calculate it automatically from source string length; if size is 0, source string must be specified and null terminated. - //! \return Pointer to allocated char array. This pointer will never be NULL. - Ch *allocate_string(const Ch *source = 0, std::size_t size = 0) - { - assert(source || size); // Either source or size (or both) must be specified - if (size == 0) - size = internal::measure(source) + 1; - Ch *result = static_cast(allocate_aligned(size * sizeof(Ch))); - if (source) - for (std::size_t i = 0; i < size; ++i) - result[i] = source[i]; - return result; - } - - //! Clones an xml_node and its hierarchy of child nodes and attributes. - //! Nodes and attributes are allocated from this memory pool. - //! Names and values are not cloned, they are shared between the clone and the source. - //! Result node can be optionally specified as a second parameter, - //! in which case its contents will be replaced with cloned source node. - //! This is useful when you want to clone entire document. - //! \param source Node to clone. - //! \param result Node to put results in, or 0 to automatically allocate result node - //! \return Pointer to cloned node. This pointer will never be NULL. - xml_node *clone_node(const xml_node *source, xml_node *result = 0) - { - // Prepare result node - if (result) - { - result->remove_all_attributes(); - result->remove_all_nodes(); - result->type(source->type()); - } - else - result = allocate_node(source->type()); - - // Clone name and value - result->name(source->name(), source->name_size()); - result->value(source->value(), source->value_size()); - - // Clone child nodes and attributes - for (xml_node *child = source->first_node(); child; child = child->next_sibling()) - result->append_node(clone_node(child)); - for (xml_attribute *attr = source->first_attribute(); attr; attr = attr->next_attribute()) - result->append_attribute(allocate_attribute(attr->name(), attr->value(), attr->name_size(), attr->value_size())); - - return result; - } - - //! Clears the pool. - //! This causes memory occupied by nodes allocated by the pool to be freed. - //! Any nodes or strings allocated from the pool will no longer be valid. - void clear() - { - while (m_begin != m_static_memory) - { - char *previous_begin = reinterpret_cast
    (align(m_begin))->previous_begin; - if (m_free_func) - m_free_func(m_begin); - else - delete[] m_begin; - m_begin = previous_begin; - } - init(); - } - - //! Sets or resets the user-defined memory allocation functions for the pool. - //! This can only be called when no memory is allocated from the pool yet, otherwise results are undefined. - //! Allocation function must not return invalid pointer on failure. It should either throw, - //! stop the program, or use longjmp() function to pass control to other place of program. - //! If it returns invalid pointer, results are undefined. - //!

    - //! User defined allocation functions must have the following forms: - //!
    - //!
    void *allocate(std::size_t size); - //!
    void free(void *pointer); - //!

    - //! \param af Allocation function, or 0 to restore default function - //! \param ff Free function, or 0 to restore default function - void set_allocator(alloc_func *af, free_func *ff) - { - assert(m_begin == m_static_memory && m_ptr == align(m_begin)); // Verify that no memory is allocated yet - m_alloc_func = af; - m_free_func = ff; - } - - private: - - struct header - { - char *previous_begin; - }; - - void init() - { - m_begin = m_static_memory; - m_ptr = align(m_begin); - m_end = m_static_memory + sizeof(m_static_memory); - } - - char *align(char *ptr) - { - std::size_t alignment = ((RAPIDXML_ALIGNMENT - (std::size_t(ptr) & (RAPIDXML_ALIGNMENT - 1))) & (RAPIDXML_ALIGNMENT - 1)); - return ptr + alignment; - } - - char *allocate_raw(std::size_t size) - { - // Allocate - void *memory; - if (m_alloc_func) // Allocate memory using either user-specified allocation function or global operator new[] - { - memory = m_alloc_func(size); - assert(memory); // Allocator is not allowed to return 0, on failure it must either throw, stop the program or use longjmp - } - else - { - memory = new char[size]; -#ifdef RAPIDXML_NO_EXCEPTIONS - if (!memory) // If exceptions are disabled, verify memory allocation, because new will not be able to throw bad_alloc - RAPIDXML_PARSE_ERROR("out of memory", 0); -#endif - } - return static_cast(memory); - } - - void *allocate_aligned(std::size_t size) - { - // Calculate aligned pointer - char *result = align(m_ptr); - - // If not enough memory left in current pool, allocate a new pool - if (result + size > m_end) - { - // Calculate required pool size (may be bigger than RAPIDXML_DYNAMIC_POOL_SIZE) - std::size_t pool_size = RAPIDXML_DYNAMIC_POOL_SIZE; - if (pool_size < size) - pool_size = size; - - // Allocate - std::size_t alloc_size = sizeof(header) + (2 * RAPIDXML_ALIGNMENT - 2) + pool_size; // 2 alignments required in worst case: one for header, one for actual allocation - char *raw_memory = allocate_raw(alloc_size); - - // Setup new pool in allocated memory - char *pool = align(raw_memory); - header *new_header = reinterpret_cast
    (pool); - new_header->previous_begin = m_begin; - m_begin = raw_memory; - m_ptr = pool + sizeof(header); - m_end = raw_memory + alloc_size; - - // Calculate aligned pointer again using new pool - result = align(m_ptr); - } - - // Update pool and return aligned pointer - m_ptr = result + size; - return result; - } - - char *m_begin; // Start of raw memory making up current pool - char *m_ptr; // First free byte in current pool - char *m_end; // One past last available byte in current pool - char m_static_memory[RAPIDXML_STATIC_POOL_SIZE]; // Static raw memory - alloc_func *m_alloc_func; // Allocator function, or 0 if default is to be used - free_func *m_free_func; // Free function, or 0 if default is to be used - }; - - /////////////////////////////////////////////////////////////////////////// - // XML base - - //! Base class for xml_node and xml_attribute implementing common functions: - //! name(), name_size(), value(), value_size() and parent(). - //! \param Ch Character type to use - template - class xml_base - { - - public: - - /////////////////////////////////////////////////////////////////////////// - // Construction & destruction - - // Construct a base with empty name, value and parent - xml_base() - : m_name(0) - , m_value(0) - , m_parent(0) - { - } - - /////////////////////////////////////////////////////////////////////////// - // Node data access - - //! Gets name of the node. - //! Interpretation of name depends on type of node. - //! Note that name will not be zero-terminated if rapidxml::parse_no_string_terminators option was selected during parse. - //!

    - //! Use name_size() function to determine length of the name. - //! \return Name of node, or empty string if node has no name. - Ch *name() const - { - return m_name ? m_name : nullstr(); - } - - //! Gets size of node name, not including terminator character. - //! This function works correctly irrespective of whether name is or is not zero terminated. - //! \return Size of node name, in characters. - std::size_t name_size() const - { - return m_name ? m_name_size : 0; - } - - //! Gets value of node. - //! Interpretation of value depends on type of node. - //! Note that value will not be zero-terminated if rapidxml::parse_no_string_terminators option was selected during parse. - //!

    - //! Use value_size() function to determine length of the value. - //! \return Value of node, or empty string if node has no value. - Ch *value() const - { - return m_value ? m_value : nullstr(); - } - - //! Gets size of node value, not including terminator character. - //! This function works correctly irrespective of whether value is or is not zero terminated. - //! \return Size of node value, in characters. - std::size_t value_size() const - { - return m_value ? m_value_size : 0; - } - - /////////////////////////////////////////////////////////////////////////// - // Node modification - - //! Sets name of node to a non zero-terminated string. - //! See \ref ownership_of_strings. - //!

    - //! Note that node does not own its name or value, it only stores a pointer to it. - //! It will not delete or otherwise free the pointer on destruction. - //! It is reponsibility of the user to properly manage lifetime of the string. - //! The easiest way to achieve it is to use memory_pool of the document to allocate the string - - //! on destruction of the document the string will be automatically freed. - //!

    - //! Size of name must be specified separately, because name does not have to be zero terminated. - //! Use name(const Ch *) function to have the length automatically calculated (string must be zero terminated). - //! \param name Name of node to set. Does not have to be zero terminated. - //! \param size Size of name, in characters. This does not include zero terminator, if one is present. - void name(const Ch *name, std::size_t size) - { - m_name = const_cast(name); - m_name_size = size; - } - - //! Sets name of node to a zero-terminated string. - //! See also \ref ownership_of_strings and xml_node::name(const Ch *, std::size_t). - //! \param name Name of node to set. Must be zero terminated. - void name(const Ch *name) - { - this->name(name, internal::measure(name)); - } - - //! Sets value of node to a non zero-terminated string. - //! See \ref ownership_of_strings. - //!

    - //! Note that node does not own its name or value, it only stores a pointer to it. - //! It will not delete or otherwise free the pointer on destruction. - //! It is reponsibility of the user to properly manage lifetime of the string. - //! The easiest way to achieve it is to use memory_pool of the document to allocate the string - - //! on destruction of the document the string will be automatically freed. - //!

    - //! Size of value must be specified separately, because it does not have to be zero terminated. - //! Use value(const Ch *) function to have the length automatically calculated (string must be zero terminated). - //!

    - //! If an element has a child node of type node_data, it will take precedence over element value when printing. - //! If you want to manipulate data of elements using values, use parser flag rapidxml::parse_no_data_nodes to prevent creation of data nodes by the parser. - //! \param value value of node to set. Does not have to be zero terminated. - //! \param size Size of value, in characters. This does not include zero terminator, if one is present. - void value(const Ch *value, std::size_t size) - { - m_value = const_cast(value); - m_value_size = size; - } - - //! Sets value of node to a zero-terminated string. - //! See also \ref ownership_of_strings and xml_node::value(const Ch *, std::size_t). - //! \param value Vame of node to set. Must be zero terminated. - void value(const Ch *value) - { - this->value(value, internal::measure(value)); - } - - /////////////////////////////////////////////////////////////////////////// - // Related nodes access - - //! Gets node parent. - //! \return Pointer to parent node, or 0 if there is no parent. - xml_node *parent() const - { - return m_parent; - } - - protected: - - // Return empty string - static Ch *nullstr() - { - static Ch zero = Ch('\0'); - return &zero; - } - - Ch *m_name; // Name of node, or 0 if no name - Ch *m_value; // Value of node, or 0 if no value - std::size_t m_name_size; // Length of node name, or undefined of no name - std::size_t m_value_size; // Length of node value, or undefined if no value - xml_node *m_parent; // Pointer to parent node, or 0 if none - - }; - - //! Class representing attribute node of XML document. - //! Each attribute has name and value strings, which are available through name() and value() functions (inherited from xml_base). - //! Note that after parse, both name and value of attribute will point to interior of source text used for parsing. - //! Thus, this text must persist in memory for the lifetime of attribute. - //! \param Ch Character type to use. - template - class xml_attribute: public xml_base - { - - friend class xml_node; - - public: - - /////////////////////////////////////////////////////////////////////////// - // Construction & destruction - - //! Constructs an empty attribute with the specified type. - //! Consider using memory_pool of appropriate xml_document if allocating attributes manually. - xml_attribute() - { - } - - /////////////////////////////////////////////////////////////////////////// - // Related nodes access - - //! Gets document of which attribute is a child. - //! \return Pointer to document that contains this attribute, or 0 if there is no parent document. - xml_document *document() const - { - if (xml_node *node = this->parent()) - { - while (node->parent()) - node = node->parent(); - return node->type() == node_document ? static_cast *>(node) : 0; - } - else - return 0; - } - - //! Gets previous attribute, optionally matching attribute name. - //! \param name Name of attribute to find, or 0 to return previous attribute regardless of its name; this string doesn't have to be zero-terminated if name_size is non-zero - //! \param name_size Size of name, in characters, or 0 to have size calculated automatically from string - //! \param case_sensitive Should name comparison be case-sensitive; non case-sensitive comparison works properly only for ASCII characters - //! \return Pointer to found attribute, or 0 if not found. - xml_attribute *previous_attribute(const Ch *name = 0, std::size_t name_size = 0, bool case_sensitive = true) const - { - if (name) - { - if (name_size == 0) - name_size = internal::measure(name); - for (xml_attribute *attribute = m_prev_attribute; attribute; attribute = attribute->m_prev_attribute) - if (internal::compare(attribute->name(), attribute->name_size(), name, name_size, case_sensitive)) - return attribute; - return 0; - } - else - return this->m_parent ? m_prev_attribute : 0; - } - - //! Gets next attribute, optionally matching attribute name. - //! \param name Name of attribute to find, or 0 to return next attribute regardless of its name; this string doesn't have to be zero-terminated if name_size is non-zero - //! \param name_size Size of name, in characters, or 0 to have size calculated automatically from string - //! \param case_sensitive Should name comparison be case-sensitive; non case-sensitive comparison works properly only for ASCII characters - //! \return Pointer to found attribute, or 0 if not found. - xml_attribute *next_attribute(const Ch *name = 0, std::size_t name_size = 0, bool case_sensitive = true) const - { - if (name) - { - if (name_size == 0) - name_size = internal::measure(name); - for (xml_attribute *attribute = m_next_attribute; attribute; attribute = attribute->m_next_attribute) - if (internal::compare(attribute->name(), attribute->name_size(), name, name_size, case_sensitive)) - return attribute; - return 0; - } - else - return this->m_parent ? m_next_attribute : 0; - } - - private: - - xml_attribute *m_prev_attribute; // Pointer to previous sibling of attribute, or 0 if none; only valid if parent is non-zero - xml_attribute *m_next_attribute; // Pointer to next sibling of attribute, or 0 if none; only valid if parent is non-zero - - }; - - /////////////////////////////////////////////////////////////////////////// - // XML node - - //! Class representing a node of XML document. - //! Each node may have associated name and value strings, which are available through name() and value() functions. - //! Interpretation of name and value depends on type of the node. - //! Type of node can be determined by using type() function. - //!

    - //! Note that after parse, both name and value of node, if any, will point interior of source text used for parsing. - //! Thus, this text must persist in the memory for the lifetime of node. - //! \param Ch Character type to use. - template - class xml_node: public xml_base - { - - public: - - /////////////////////////////////////////////////////////////////////////// - // Construction & destruction - - //! Constructs an empty node with the specified type. - //! Consider using memory_pool of appropriate document to allocate nodes manually. - //! \param type Type of node to construct. - xml_node(node_type type) - : m_type(type) - , m_first_node(0) - , m_first_attribute(0) - { - } - - /////////////////////////////////////////////////////////////////////////// - // Node data access - - //! Gets type of node. - //! \return Type of node. - node_type type() const - { - return m_type; - } - - /////////////////////////////////////////////////////////////////////////// - // Related nodes access - - //! Gets document of which node is a child. - //! \return Pointer to document that contains this node, or 0 if there is no parent document. - xml_document *document() const - { - xml_node *node = const_cast *>(this); - while (node->parent()) - node = node->parent(); - return node->type() == node_document ? static_cast *>(node) : 0; - } - - //! Gets first child node, optionally matching node name. - //! \param name Name of child to find, or 0 to return first child regardless of its name; this string doesn't have to be zero-terminated if name_size is non-zero - //! \param name_size Size of name, in characters, or 0 to have size calculated automatically from string - //! \param case_sensitive Should name comparison be case-sensitive; non case-sensitive comparison works properly only for ASCII characters - //! \return Pointer to found child, or 0 if not found. - xml_node *first_node(const Ch *name = 0, std::size_t name_size = 0, bool case_sensitive = true) const - { - if (name) - { - if (name_size == 0) - name_size = internal::measure(name); - for (xml_node *child = m_first_node; child; child = child->next_sibling()) - if (internal::compare(child->name(), child->name_size(), name, name_size, case_sensitive)) - return child; - return 0; - } - else - return m_first_node; - } - - //! Gets last child node, optionally matching node name. - //! Behaviour is undefined if node has no children. - //! Use first_node() to test if node has children. - //! \param name Name of child to find, or 0 to return last child regardless of its name; this string doesn't have to be zero-terminated if name_size is non-zero - //! \param name_size Size of name, in characters, or 0 to have size calculated automatically from string - //! \param case_sensitive Should name comparison be case-sensitive; non case-sensitive comparison works properly only for ASCII characters - //! \return Pointer to found child, or 0 if not found. - xml_node *last_node(const Ch *name = 0, std::size_t name_size = 0, bool case_sensitive = true) const - { - assert(m_first_node); // Cannot query for last child if node has no children - if (name) - { - if (name_size == 0) - name_size = internal::measure(name); - for (xml_node *child = m_last_node; child; child = child->previous_sibling()) - if (internal::compare(child->name(), child->name_size(), name, name_size, case_sensitive)) - return child; - return 0; - } - else - return m_last_node; - } - - //! Gets previous sibling node, optionally matching node name. - //! Behaviour is undefined if node has no parent. - //! Use parent() to test if node has a parent. - //! \param name Name of sibling to find, or 0 to return previous sibling regardless of its name; this string doesn't have to be zero-terminated if name_size is non-zero - //! \param name_size Size of name, in characters, or 0 to have size calculated automatically from string - //! \param case_sensitive Should name comparison be case-sensitive; non case-sensitive comparison works properly only for ASCII characters - //! \return Pointer to found sibling, or 0 if not found. - xml_node *previous_sibling(const Ch *name = 0, std::size_t name_size = 0, bool case_sensitive = true) const - { - assert(this->m_parent); // Cannot query for siblings if node has no parent - if (name) - { - if (name_size == 0) - name_size = internal::measure(name); - for (xml_node *sibling = m_prev_sibling; sibling; sibling = sibling->m_prev_sibling) - if (internal::compare(sibling->name(), sibling->name_size(), name, name_size, case_sensitive)) - return sibling; - return 0; - } - else - return m_prev_sibling; - } - - //! Gets next sibling node, optionally matching node name. - //! Behaviour is undefined if node has no parent. - //! Use parent() to test if node has a parent. - //! \param name Name of sibling to find, or 0 to return next sibling regardless of its name; this string doesn't have to be zero-terminated if name_size is non-zero - //! \param name_size Size of name, in characters, or 0 to have size calculated automatically from string - //! \param case_sensitive Should name comparison be case-sensitive; non case-sensitive comparison works properly only for ASCII characters - //! \return Pointer to found sibling, or 0 if not found. - xml_node *next_sibling(const Ch *name = 0, std::size_t name_size = 0, bool case_sensitive = true) const - { - assert(this->m_parent); // Cannot query for siblings if node has no parent - if (name) - { - if (name_size == 0) - name_size = internal::measure(name); - for (xml_node *sibling = m_next_sibling; sibling; sibling = sibling->m_next_sibling) - if (internal::compare(sibling->name(), sibling->name_size(), name, name_size, case_sensitive)) - return sibling; - return 0; - } - else - return m_next_sibling; - } - - //! Gets first attribute of node, optionally matching attribute name. - //! \param name Name of attribute to find, or 0 to return first attribute regardless of its name; this string doesn't have to be zero-terminated if name_size is non-zero - //! \param name_size Size of name, in characters, or 0 to have size calculated automatically from string - //! \param case_sensitive Should name comparison be case-sensitive; non case-sensitive comparison works properly only for ASCII characters - //! \return Pointer to found attribute, or 0 if not found. - xml_attribute *first_attribute(const Ch *name = 0, std::size_t name_size = 0, bool case_sensitive = true) const - { - if (name) - { - if (name_size == 0) - name_size = internal::measure(name); - for (xml_attribute *attribute = m_first_attribute; attribute; attribute = attribute->m_next_attribute) - if (internal::compare(attribute->name(), attribute->name_size(), name, name_size, case_sensitive)) - return attribute; - return 0; - } - else - return m_first_attribute; - } - - //! Gets last attribute of node, optionally matching attribute name. - //! \param name Name of attribute to find, or 0 to return last attribute regardless of its name; this string doesn't have to be zero-terminated if name_size is non-zero - //! \param name_size Size of name, in characters, or 0 to have size calculated automatically from string - //! \param case_sensitive Should name comparison be case-sensitive; non case-sensitive comparison works properly only for ASCII characters - //! \return Pointer to found attribute, or 0 if not found. - xml_attribute *last_attribute(const Ch *name = 0, std::size_t name_size = 0, bool case_sensitive = true) const - { - if (name) - { - if (name_size == 0) - name_size = internal::measure(name); - for (xml_attribute *attribute = m_last_attribute; attribute; attribute = attribute->m_prev_attribute) - if (internal::compare(attribute->name(), attribute->name_size(), name, name_size, case_sensitive)) - return attribute; - return 0; - } - else - return m_first_attribute ? m_last_attribute : 0; - } - - /////////////////////////////////////////////////////////////////////////// - // Node modification - - //! Sets type of node. - //! \param type Type of node to set. - void type(node_type type) - { - m_type = type; - } - - /////////////////////////////////////////////////////////////////////////// - // Node manipulation - - //! Prepends a new child node. - //! The prepended child becomes the first child, and all existing children are moved one position back. - //! \param child Node to prepend. - void prepend_node(xml_node *child) - { - assert(child && !child->parent() && child->type() != node_document); - if (first_node()) - { - child->m_next_sibling = m_first_node; - m_first_node->m_prev_sibling = child; - } - else - { - child->m_next_sibling = 0; - m_last_node = child; - } - m_first_node = child; - child->m_parent = this; - child->m_prev_sibling = 0; - } - - //! Appends a new child node. - //! The appended child becomes the last child. - //! \param child Node to append. - void append_node(xml_node *child) - { - assert(child && !child->parent() && child->type() != node_document); - if (first_node()) - { - child->m_prev_sibling = m_last_node; - m_last_node->m_next_sibling = child; - } - else - { - child->m_prev_sibling = 0; - m_first_node = child; - } - m_last_node = child; - child->m_parent = this; - child->m_next_sibling = 0; - } - - //! Inserts a new child node at specified place inside the node. - //! All children after and including the specified node are moved one position back. - //! \param where Place where to insert the child, or 0 to insert at the back. - //! \param child Node to insert. - void insert_node(xml_node *where, xml_node *child) - { - assert(!where || where->parent() == this); - assert(child && !child->parent() && child->type() != node_document); - if (where == m_first_node) - prepend_node(child); - else if (where == 0) - append_node(child); - else - { - child->m_prev_sibling = where->m_prev_sibling; - child->m_next_sibling = where; - where->m_prev_sibling->m_next_sibling = child; - where->m_prev_sibling = child; - child->m_parent = this; - } - } - - //! Removes first child node. - //! If node has no children, behaviour is undefined. - //! Use first_node() to test if node has children. - void remove_first_node() - { - assert(first_node()); - xml_node *child = m_first_node; - m_first_node = child->m_next_sibling; - if (child->m_next_sibling) - child->m_next_sibling->m_prev_sibling = 0; - else - m_last_node = 0; - child->m_parent = 0; - } - - //! Removes last child of the node. - //! If node has no children, behaviour is undefined. - //! Use first_node() to test if node has children. - void remove_last_node() - { - assert(first_node()); - xml_node *child = m_last_node; - if (child->m_prev_sibling) - { - m_last_node = child->m_prev_sibling; - child->m_prev_sibling->m_next_sibling = 0; - } - else - m_first_node = 0; - child->m_parent = 0; - } - - //! Removes specified child from the node - // \param where Pointer to child to be removed. - void remove_node(xml_node *where) - { - assert(where && where->parent() == this); - assert(first_node()); - if (where == m_first_node) - remove_first_node(); - else if (where == m_last_node) - remove_last_node(); - else - { - where->m_prev_sibling->m_next_sibling = where->m_next_sibling; - where->m_next_sibling->m_prev_sibling = where->m_prev_sibling; - where->m_parent = 0; - } - } - - //! Removes all child nodes (but not attributes). - void remove_all_nodes() - { - for (xml_node *node = first_node(); node; node = node->m_next_sibling) - node->m_parent = 0; - m_first_node = 0; - } - - //! Prepends a new attribute to the node. - //! \param attribute Attribute to prepend. - void prepend_attribute(xml_attribute *attribute) - { - assert(attribute && !attribute->parent()); - if (first_attribute()) - { - attribute->m_next_attribute = m_first_attribute; - m_first_attribute->m_prev_attribute = attribute; - } - else - { - attribute->m_next_attribute = 0; - m_last_attribute = attribute; - } - m_first_attribute = attribute; - attribute->m_parent = this; - attribute->m_prev_attribute = 0; - } - - //! Appends a new attribute to the node. - //! \param attribute Attribute to append. - void append_attribute(xml_attribute *attribute) - { - assert(attribute && !attribute->parent()); - if (first_attribute()) - { - attribute->m_prev_attribute = m_last_attribute; - m_last_attribute->m_next_attribute = attribute; - } - else - { - attribute->m_prev_attribute = 0; - m_first_attribute = attribute; - } - m_last_attribute = attribute; - attribute->m_parent = this; - attribute->m_next_attribute = 0; - } - - //! Inserts a new attribute at specified place inside the node. - //! All attributes after and including the specified attribute are moved one position back. - //! \param where Place where to insert the attribute, or 0 to insert at the back. - //! \param attribute Attribute to insert. - void insert_attribute(xml_attribute *where, xml_attribute *attribute) - { - assert(!where || where->parent() == this); - assert(attribute && !attribute->parent()); - if (where == m_first_attribute) - prepend_attribute(attribute); - else if (where == 0) - append_attribute(attribute); - else - { - attribute->m_prev_attribute = where->m_prev_attribute; - attribute->m_next_attribute = where; - where->m_prev_attribute->m_next_attribute = attribute; - where->m_prev_attribute = attribute; - attribute->m_parent = this; - } - } - - //! Removes first attribute of the node. - //! If node has no attributes, behaviour is undefined. - //! Use first_attribute() to test if node has attributes. - void remove_first_attribute() - { - assert(first_attribute()); - xml_attribute *attribute = m_first_attribute; - if (attribute->m_next_attribute) - { - attribute->m_next_attribute->m_prev_attribute = 0; - } - else - m_last_attribute = 0; - attribute->m_parent = 0; - m_first_attribute = attribute->m_next_attribute; - } - - //! Removes last attribute of the node. - //! If node has no attributes, behaviour is undefined. - //! Use first_attribute() to test if node has attributes. - void remove_last_attribute() - { - assert(first_attribute()); - xml_attribute *attribute = m_last_attribute; - if (attribute->m_prev_attribute) - { - attribute->m_prev_attribute->m_next_attribute = 0; - m_last_attribute = attribute->m_prev_attribute; - } - else - m_first_attribute = 0; - attribute->m_parent = 0; - } - - //! Removes specified attribute from node. - //! \param where Pointer to attribute to be removed. - void remove_attribute(xml_attribute *where) - { - assert(first_attribute() && where->parent() == this); - if (where == m_first_attribute) - remove_first_attribute(); - else if (where == m_last_attribute) - remove_last_attribute(); - else - { - where->m_prev_attribute->m_next_attribute = where->m_next_attribute; - where->m_next_attribute->m_prev_attribute = where->m_prev_attribute; - where->m_parent = 0; - } - } - - //! Removes all attributes of node. - void remove_all_attributes() - { - for (xml_attribute *attribute = first_attribute(); attribute; attribute = attribute->m_next_attribute) - attribute->m_parent = 0; - m_first_attribute = 0; - } - - private: - - /////////////////////////////////////////////////////////////////////////// - // Restrictions - - // No copying - xml_node(const xml_node &); - void operator =(const xml_node &); - - /////////////////////////////////////////////////////////////////////////// - // Data members - - // Note that some of the pointers below have UNDEFINED values if certain other pointers are 0. - // This is required for maximum performance, as it allows the parser to omit initialization of - // unneded/redundant values. - // - // The rules are as follows: - // 1. first_node and first_attribute contain valid pointers, or 0 if node has no children/attributes respectively - // 2. last_node and last_attribute are valid only if node has at least one child/attribute respectively, otherwise they contain garbage - // 3. prev_sibling and next_sibling are valid only if node has a parent, otherwise they contain garbage - - node_type m_type; // Type of node; always valid - xml_node *m_first_node; // Pointer to first child node, or 0 if none; always valid - xml_node *m_last_node; // Pointer to last child node, or 0 if none; this value is only valid if m_first_node is non-zero - xml_attribute *m_first_attribute; // Pointer to first attribute of node, or 0 if none; always valid - xml_attribute *m_last_attribute; // Pointer to last attribute of node, or 0 if none; this value is only valid if m_first_attribute is non-zero - xml_node *m_prev_sibling; // Pointer to previous sibling of node, or 0 if none; this value is only valid if m_parent is non-zero - xml_node *m_next_sibling; // Pointer to next sibling of node, or 0 if none; this value is only valid if m_parent is non-zero - - }; - - /////////////////////////////////////////////////////////////////////////// - // XML document - - //! This class represents root of the DOM hierarchy. - //! It is also an xml_node and a memory_pool through public inheritance. - //! Use parse() function to build a DOM tree from a zero-terminated XML text string. - //! parse() function allocates memory for nodes and attributes by using functions of xml_document, - //! which are inherited from memory_pool. - //! To access root node of the document, use the document itself, as if it was an xml_node. - //! \param Ch Character type to use. - template - class xml_document: public xml_node, public memory_pool - { - - public: - - //! Constructs empty XML document - xml_document() - : xml_node(node_document) - { - } - - //! Parses zero-terminated XML string according to given flags. - //! Passed string will be modified by the parser, unless rapidxml::parse_non_destructive flag is used. - //! The string must persist for the lifetime of the document. - //! In case of error, rapidxml::parse_error exception will be thrown. - //!

    - //! If you want to parse contents of a file, you must first load the file into the memory, and pass pointer to its beginning. - //! Make sure that data is zero-terminated. - //!

    - //! Document can be parsed into multiple times. - //! Each new call to parse removes previous nodes and attributes (if any), but does not clear memory pool. - //! \param text XML data to parse; pointer is non-const to denote fact that this data may be modified by the parser. - template - void parse(Ch *text) - { - assert(text); - - // Remove current contents - this->remove_all_nodes(); - this->remove_all_attributes(); - - // Parse BOM, if any - parse_bom(text); - - // Parse children - while (1) - { - // Skip whitespace before node - skip(text); - if (*text == 0) - break; - - // Parse and append new child - if (*text == Ch('<')) - { - ++text; // Skip '<' - if (xml_node *node = parse_node(text)) - this->append_node(node); - } - else - RAPIDXML_PARSE_ERROR("expected <", text); - } - - } - - //! Clears the document by deleting all nodes and clearing the memory pool. - //! All nodes owned by document pool are destroyed. - void clear() - { - this->remove_all_nodes(); - this->remove_all_attributes(); - memory_pool::clear(); - } - - private: - - /////////////////////////////////////////////////////////////////////// - // Internal character utility functions - - // Detect whitespace character - struct whitespace_pred - { - static unsigned char test(Ch ch) - { - return internal::lookup_tables<0>::lookup_whitespace[static_cast(ch)]; - } - }; - - // Detect node name character - struct node_name_pred - { - static unsigned char test(Ch ch) - { - return internal::lookup_tables<0>::lookup_node_name[static_cast(ch)]; - } - }; - - // Detect attribute name character - struct attribute_name_pred - { - static unsigned char test(Ch ch) - { - return internal::lookup_tables<0>::lookup_attribute_name[static_cast(ch)]; - } - }; - - // Detect text character (PCDATA) - struct text_pred - { - static unsigned char test(Ch ch) - { - return internal::lookup_tables<0>::lookup_text[static_cast(ch)]; - } - }; - - // Detect text character (PCDATA) that does not require processing - struct text_pure_no_ws_pred - { - static unsigned char test(Ch ch) - { - return internal::lookup_tables<0>::lookup_text_pure_no_ws[static_cast(ch)]; - } - }; - - // Detect text character (PCDATA) that does not require processing - struct text_pure_with_ws_pred - { - static unsigned char test(Ch ch) - { - return internal::lookup_tables<0>::lookup_text_pure_with_ws[static_cast(ch)]; - } - }; - - // Detect attribute value character - template - struct attribute_value_pred - { - static unsigned char test(Ch ch) - { - if (Quote == Ch('\'')) - return internal::lookup_tables<0>::lookup_attribute_data_1[static_cast(ch)]; - if (Quote == Ch('\"')) - return internal::lookup_tables<0>::lookup_attribute_data_2[static_cast(ch)]; - return 0; // Should never be executed, to avoid warnings on Comeau - } - }; - - // Detect attribute value character - template - struct attribute_value_pure_pred - { - static unsigned char test(Ch ch) - { - if (Quote == Ch('\'')) - return internal::lookup_tables<0>::lookup_attribute_data_1_pure[static_cast(ch)]; - if (Quote == Ch('\"')) - return internal::lookup_tables<0>::lookup_attribute_data_2_pure[static_cast(ch)]; - return 0; // Should never be executed, to avoid warnings on Comeau - } - }; - - // Insert coded character, using UTF8 or 8-bit ASCII - template - static void insert_coded_character(Ch *&text, unsigned long code) - { - if (Flags & parse_no_utf8) - { - // Insert 8-bit ASCII character - // Todo: possibly verify that code is less than 256 and use replacement char otherwise? - text[0] = static_cast(code); - text += 1; - } - else - { - // Insert UTF8 sequence - if (code < 0x80) // 1 byte sequence - { - text[0] = static_cast(code); - text += 1; - } - else if (code < 0x800) // 2 byte sequence - { - text[1] = static_cast((code | 0x80) & 0xBF); code >>= 6; - text[0] = static_cast(code | 0xC0); - text += 2; - } - else if (code < 0x10000) // 3 byte sequence - { - text[2] = static_cast((code | 0x80) & 0xBF); code >>= 6; - text[1] = static_cast((code | 0x80) & 0xBF); code >>= 6; - text[0] = static_cast(code | 0xE0); - text += 3; - } - else if (code < 0x110000) // 4 byte sequence - { - text[3] = static_cast((code | 0x80) & 0xBF); code >>= 6; - text[2] = static_cast((code | 0x80) & 0xBF); code >>= 6; - text[1] = static_cast((code | 0x80) & 0xBF); code >>= 6; - text[0] = static_cast(code | 0xF0); - text += 4; - } - else // Invalid, only codes up to 0x10FFFF are allowed in Unicode - { - RAPIDXML_PARSE_ERROR("invalid numeric character entity", text); - } - } - } - - // Skip characters until predicate evaluates to true - template - static void skip(Ch *&text) - { - Ch *tmp = text; - while (StopPred::test(*tmp)) - ++tmp; - text = tmp; - } - - // Skip characters until predicate evaluates to true while doing the following: - // - replacing XML character entity references with proper characters (' & " < > &#...;) - // - condensing whitespace sequences to single space character - template - static Ch *skip_and_expand_character_refs(Ch *&text) - { - // If entity translation, whitespace condense and whitespace trimming is disabled, use plain skip - if (Flags & parse_no_entity_translation && - !(Flags & parse_normalize_whitespace) && - !(Flags & parse_trim_whitespace)) - { - skip(text); - return text; - } - - // Use simple skip until first modification is detected - skip(text); - - // Use translation skip - Ch *src = text; - Ch *dest = src; - while (StopPred::test(*src)) - { - // If entity translation is enabled - if (!(Flags & parse_no_entity_translation)) - { - // Test if replacement is needed - if (src[0] == Ch('&')) - { - switch (src[1]) - { - - // & ' - case Ch('a'): - if (src[2] == Ch('m') && src[3] == Ch('p') && src[4] == Ch(';')) - { - *dest = Ch('&'); - ++dest; - src += 5; - continue; - } - if (src[2] == Ch('p') && src[3] == Ch('o') && src[4] == Ch('s') && src[5] == Ch(';')) - { - *dest = Ch('\''); - ++dest; - src += 6; - continue; - } - break; - - // " - case Ch('q'): - if (src[2] == Ch('u') && src[3] == Ch('o') && src[4] == Ch('t') && src[5] == Ch(';')) - { - *dest = Ch('"'); - ++dest; - src += 6; - continue; - } - break; - - // > - case Ch('g'): - if (src[2] == Ch('t') && src[3] == Ch(';')) - { - *dest = Ch('>'); - ++dest; - src += 4; - continue; - } - break; - - // < - case Ch('l'): - if (src[2] == Ch('t') && src[3] == Ch(';')) - { - *dest = Ch('<'); - ++dest; - src += 4; - continue; - } - break; - - // &#...; - assumes ASCII - case Ch('#'): - if (src[2] == Ch('x')) - { - unsigned long code = 0; - src += 3; // Skip &#x - while (1) - { - unsigned char digit = internal::lookup_tables<0>::lookup_digits[static_cast(*src)]; - if (digit == 0xFF) - break; - code = code * 16 + digit; - ++src; - } - insert_coded_character(dest, code); // Put character in output - } - else - { - unsigned long code = 0; - src += 2; // Skip &# - while (1) - { - unsigned char digit = internal::lookup_tables<0>::lookup_digits[static_cast(*src)]; - if (digit == 0xFF) - break; - code = code * 10 + digit; - ++src; - } - insert_coded_character(dest, code); // Put character in output - } - if (*src == Ch(';')) - ++src; - else - RAPIDXML_PARSE_ERROR("expected ;", src); - continue; - - // Something else - default: - // Ignore, just copy '&' verbatim - break; - - } - } - } - - // If whitespace condensing is enabled - if (Flags & parse_normalize_whitespace) - { - // Test if condensing is needed - if (whitespace_pred::test(*src)) - { - *dest = Ch(' '); ++dest; // Put single space in dest - ++src; // Skip first whitespace char - // Skip remaining whitespace chars - while (whitespace_pred::test(*src)) - ++src; - continue; - } - } - - // No replacement, only copy character - *dest++ = *src++; - - } - - // Return new end - text = src; - return dest; - - } - - /////////////////////////////////////////////////////////////////////// - // Internal parsing functions - - // Parse BOM, if any - template - void parse_bom(Ch *&text) - { - // UTF-8? - if (static_cast(text[0]) == 0xEF && - static_cast(text[1]) == 0xBB && - static_cast(text[2]) == 0xBF) - { - text += 3; // Skup utf-8 bom - } - } - - // Parse XML declaration ( - xml_node *parse_xml_declaration(Ch *&text) - { - // If parsing of declaration is disabled - if (!(Flags & parse_declaration_node)) - { - // Skip until end of declaration - while (text[0] != Ch('?') || text[1] != Ch('>')) - { - if (!text[0]) - RAPIDXML_PARSE_ERROR("unexpected end of data", text); - ++text; - } - text += 2; // Skip '?>' - return 0; - } - - // Create declaration - xml_node *declaration = this->allocate_node(node_declaration); - - // Skip whitespace before attributes or ?> - skip(text); - - // Parse declaration attributes - parse_node_attributes(text, declaration); - - // Skip ?> - if (text[0] != Ch('?') || text[1] != Ch('>')) - RAPIDXML_PARSE_ERROR("expected ?>", text); - text += 2; - - return declaration; - } - - // Parse XML comment (' - return 0; // Do not produce comment node - } - - // Remember value start - Ch *value = text; - - // Skip until end of comment - while (text[0] != Ch('-') || text[1] != Ch('-') || text[2] != Ch('>')) - { - if (!text[0]) - RAPIDXML_PARSE_ERROR("unexpected end of data", text); - ++text; - } - - // Create comment node - xml_node *comment = this->allocate_node(node_comment); - comment->value(value, text - value); - - // Place zero terminator after comment value - if (!(Flags & parse_no_string_terminators)) - *text = Ch('\0'); - - text += 3; // Skip '-->' - return comment; - } - - // Parse DOCTYPE - template - xml_node *parse_doctype(Ch *&text) - { - // Remember value start - Ch *value = text; - - // Skip to > - while (*text != Ch('>')) - { - // Determine character type - switch (*text) - { - - // If '[' encountered, scan for matching ending ']' using naive algorithm with depth - // This works for all W3C test files except for 2 most wicked - case Ch('['): - { - ++text; // Skip '[' - int depth = 1; - while (depth > 0) - { - switch (*text) - { - case Ch('['): ++depth; break; - case Ch(']'): --depth; break; - case 0: RAPIDXML_PARSE_ERROR("unexpected end of data", text); - } - ++text; - } - break; - } - - // Error on end of text - case Ch('\0'): - RAPIDXML_PARSE_ERROR("unexpected end of data", text); - - // Other character, skip it - default: - ++text; - - } - } - - // If DOCTYPE nodes enabled - if (Flags & parse_doctype_node) - { - // Create a new doctype node - xml_node *doctype = this->allocate_node(node_doctype); - doctype->value(value, text - value); - - // Place zero terminator after value - if (!(Flags & parse_no_string_terminators)) - *text = Ch('\0'); - - text += 1; // skip '>' - return doctype; - } - else - { - text += 1; // skip '>' - return 0; - } - - } - - // Parse PI - template - xml_node *parse_pi(Ch *&text) - { - // If creation of PI nodes is enabled - if (Flags & parse_pi_nodes) - { - // Create pi node - xml_node *pi = this->allocate_node(node_pi); - - // Extract PI target name - Ch *name = text; - skip(text); - if (text == name) - RAPIDXML_PARSE_ERROR("expected PI target", text); - pi->name(name, text - name); - - // Skip whitespace between pi target and pi - skip(text); - - // Remember start of pi - Ch *value = text; - - // Skip to '?>' - while (text[0] != Ch('?') || text[1] != Ch('>')) - { - if (*text == Ch('\0')) - RAPIDXML_PARSE_ERROR("unexpected end of data", text); - ++text; - } - - // Set pi value (verbatim, no entity expansion or whitespace normalization) - pi->value(value, text - value); - - // Place zero terminator after name and value - if (!(Flags & parse_no_string_terminators)) - { - pi->name()[pi->name_size()] = Ch('\0'); - pi->value()[pi->value_size()] = Ch('\0'); - } - - text += 2; // Skip '?>' - return pi; - } - else - { - // Skip to '?>' - while (text[0] != Ch('?') || text[1] != Ch('>')) - { - if (*text == Ch('\0')) - RAPIDXML_PARSE_ERROR("unexpected end of data", text); - ++text; - } - text += 2; // Skip '?>' - return 0; - } - } - - // Parse and append data - // Return character that ends data. - // This is necessary because this character might have been overwritten by a terminating 0 - template - Ch parse_and_append_data(xml_node *node, Ch *&text, Ch *contents_start) - { - // Backup to contents start if whitespace trimming is disabled - if (!(Flags & parse_trim_whitespace)) - text = contents_start; - - // Skip until end of data - Ch *value = text, *end; - if (Flags & parse_normalize_whitespace) - end = skip_and_expand_character_refs(text); - else - end = skip_and_expand_character_refs(text); - - // Trim trailing whitespace if flag is set; leading was already trimmed by whitespace skip after > - if (Flags & parse_trim_whitespace) - { - if (Flags & parse_normalize_whitespace) - { - // Whitespace is already condensed to single space characters by skipping function, so just trim 1 char off the end - if (*(end - 1) == Ch(' ')) - --end; - } - else - { - // Backup until non-whitespace character is found - while (whitespace_pred::test(*(end - 1))) - --end; - } - } - - // If characters are still left between end and value (this test is only necessary if normalization is enabled) - // Create new data node - if (!(Flags & parse_no_data_nodes)) - { - xml_node *data = this->allocate_node(node_data); - data->value(value, end - value); - node->append_node(data); - } - - // Add data to parent node if no data exists yet - if (!(Flags & parse_no_element_values)) - if (*node->value() == Ch('\0')) - node->value(value, end - value); - - // Place zero terminator after value - if (!(Flags & parse_no_string_terminators)) - { - Ch ch = *text; - *end = Ch('\0'); - return ch; // Return character that ends data; this is required because zero terminator overwritten it - } - - // Return character that ends data - return *text; - } - - // Parse CDATA - template - xml_node *parse_cdata(Ch *&text) - { - // If CDATA is disabled - if (Flags & parse_no_data_nodes) - { - // Skip until end of cdata - while (text[0] != Ch(']') || text[1] != Ch(']') || text[2] != Ch('>')) - { - if (!text[0]) - RAPIDXML_PARSE_ERROR("unexpected end of data", text); - ++text; - } - text += 3; // Skip ]]> - return 0; // Do not produce CDATA node - } - - // Skip until end of cdata - Ch *value = text; - while (text[0] != Ch(']') || text[1] != Ch(']') || text[2] != Ch('>')) - { - if (!text[0]) - RAPIDXML_PARSE_ERROR("unexpected end of data", text); - ++text; - } - - // Create new cdata node - xml_node *cdata = this->allocate_node(node_cdata); - cdata->value(value, text - value); - - // Place zero terminator after value - if (!(Flags & parse_no_string_terminators)) - *text = Ch('\0'); - - text += 3; // Skip ]]> - return cdata; - } - - // Parse element node - template - xml_node *parse_element(Ch *&text) - { - // Create element node - xml_node *element = this->allocate_node(node_element); - - // Extract element name - Ch *name = text; - skip(text); - if (text == name) - RAPIDXML_PARSE_ERROR("expected element name", text); - element->name(name, text - name); - - // Skip whitespace between element name and attributes or > - skip(text); - - // Parse attributes, if any - parse_node_attributes(text, element); - - // Determine ending type - if (*text == Ch('>')) - { - ++text; - parse_node_contents(text, element); - } - else if (*text == Ch('/')) - { - ++text; - if (*text != Ch('>')) - RAPIDXML_PARSE_ERROR("expected >", text); - ++text; - } - else - RAPIDXML_PARSE_ERROR("expected >", text); - - // Place zero terminator after name - if (!(Flags & parse_no_string_terminators)) - element->name()[element->name_size()] = Ch('\0'); - - // Return parsed element - return element; - } - - // Determine node type, and parse it - template - xml_node *parse_node(Ch *&text) - { - // Parse proper node type - switch (text[0]) - { - - // <... - default: - // Parse and append element node - return parse_element(text); - - // (text); - } - else - { - // Parse PI - return parse_pi(text); - } - - // (text); - } - break; - - // (text); - } - break; - - // (text); - } - - } // switch - - // Attempt to skip other, unrecognized node types starting with ')) - { - if (*text == 0) - RAPIDXML_PARSE_ERROR("unexpected end of data", text); - ++text; - } - ++text; // Skip '>' - return 0; // No node recognized - - } - } - - // Parse contents of the node - children, data etc. - template - void parse_node_contents(Ch *&text, xml_node *node) - { - // For all children and text - while (1) - { - // Skip whitespace between > and node contents - Ch *contents_start = text; // Store start of node contents before whitespace is skipped - skip(text); - Ch next_char = *text; - - // After data nodes, instead of continuing the loop, control jumps here. - // This is because zero termination inside parse_and_append_data() function - // would wreak havoc with the above code. - // Also, skipping whitespace after data nodes is unnecessary. - after_data_node: - - // Determine what comes next: node closing, child node, data node, or 0? - switch (next_char) - { - - // Node closing or child node - case Ch('<'): - if (text[1] == Ch('/')) - { - // Node closing - text += 2; // Skip '(text); - if (!internal::compare(node->name(), node->name_size(), closing_name, text - closing_name, true)) - RAPIDXML_PARSE_ERROR("invalid closing tag name", text); - } - else - { - // No validation, just skip name - skip(text); - } - // Skip remaining whitespace after node name - skip(text); - if (*text != Ch('>')) - RAPIDXML_PARSE_ERROR("expected >", text); - ++text; // Skip '>' - return; // Node closed, finished parsing contents - } - else - { - // Child node - ++text; // Skip '<' - if (xml_node *child = parse_node(text)) - node->append_node(child); - } - break; - - // End of data - error - case Ch('\0'): - RAPIDXML_PARSE_ERROR("unexpected end of data", text); - - // Data node - default: - next_char = parse_and_append_data(node, text, contents_start); - goto after_data_node; // Bypass regular processing after data nodes - - } - } - } - - // Parse XML attributes of the node - template - void parse_node_attributes(Ch *&text, xml_node *node) - { - // For all attributes - while (attribute_name_pred::test(*text)) - { - // Extract attribute name - Ch *name = text; - ++text; // Skip first character of attribute name - skip(text); - if (text == name) - RAPIDXML_PARSE_ERROR("expected attribute name", name); - - // Create new attribute - xml_attribute *attribute = this->allocate_attribute(); - attribute->name(name, text - name); - node->append_attribute(attribute); - - // Skip whitespace after attribute name - skip(text); - - // Skip = - if (*text != Ch('=')) - RAPIDXML_PARSE_ERROR("expected =", text); - ++text; - - // Add terminating zero after name - if (!(Flags & parse_no_string_terminators)) - attribute->name()[attribute->name_size()] = 0; - - // Skip whitespace after = - skip(text); - - // Skip quote and remember if it was ' or " - Ch quote = *text; - if (quote != Ch('\'') && quote != Ch('"')) - RAPIDXML_PARSE_ERROR("expected ' or \"", text); - ++text; - - // Extract attribute value and expand char refs in it - Ch *value = text, *end; - const int AttFlags = Flags & ~parse_normalize_whitespace; // No whitespace normalization in attributes - if (quote == Ch('\'')) - end = skip_and_expand_character_refs, attribute_value_pure_pred, AttFlags>(text); - else - end = skip_and_expand_character_refs, attribute_value_pure_pred, AttFlags>(text); - - // Set attribute value - attribute->value(value, end - value); - - // Make sure that end quote is present - if (*text != quote) - RAPIDXML_PARSE_ERROR("expected ' or \"", text); - ++text; // Skip quote - - // Add terminating zero after value - if (!(Flags & parse_no_string_terminators)) - attribute->value()[attribute->value_size()] = 0; - - // Skip whitespace after attribute value - skip(text); - } - } - - }; - - //! \cond internal - namespace internal - { - - // Whitespace (space \n \r \t) - template - const unsigned char lookup_tables::lookup_whitespace[256] = - { - // 0 1 2 3 4 5 6 7 8 9 A B C D E F - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0, 0, // 0 - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 1 - 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 2 - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 3 - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 4 - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 5 - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 6 - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 7 - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 8 - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // 9 - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // A - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // B - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // C - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // D - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // E - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 // F - }; - - // Node name (anything but space \n \r \t / > ? \0) - template - const unsigned char lookup_tables::lookup_node_name[256] = - { - // 0 1 2 3 4 5 6 7 8 9 A B C D E F - 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 1, // 0 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 1 - 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, // 2 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, // 3 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 4 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 5 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 6 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 7 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 8 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 9 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // A - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // B - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // C - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // D - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // E - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 // F - }; - - // Text (i.e. PCDATA) (anything but < \0) - template - const unsigned char lookup_tables::lookup_text[256] = - { - // 0 1 2 3 4 5 6 7 8 9 A B C D E F - 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 0 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 1 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 2 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, // 3 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 4 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 5 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 6 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 7 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 8 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 9 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // A - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // B - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // C - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // D - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // E - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 // F - }; - - // Text (i.e. PCDATA) that does not require processing when ws normalization is disabled - // (anything but < \0 &) - template - const unsigned char lookup_tables::lookup_text_pure_no_ws[256] = - { - // 0 1 2 3 4 5 6 7 8 9 A B C D E F - 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 0 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 1 - 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 2 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, // 3 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 4 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 5 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 6 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 7 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 8 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 9 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // A - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // B - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // C - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // D - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // E - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 // F - }; - - // Text (i.e. PCDATA) that does not require processing when ws normalizationis is enabled - // (anything but < \0 & space \n \r \t) - template - const unsigned char lookup_tables::lookup_text_pure_with_ws[256] = - { - // 0 1 2 3 4 5 6 7 8 9 A B C D E F - 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 1, // 0 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 1 - 0, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 2 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, // 3 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 4 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 5 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 6 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 7 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 8 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 9 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // A - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // B - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // C - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // D - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // E - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 // F - }; - - // Attribute name (anything but space \n \r \t / < > = ? ! \0) - template - const unsigned char lookup_tables::lookup_attribute_name[256] = - { - // 0 1 2 3 4 5 6 7 8 9 A B C D E F - 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 1, // 0 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 1 - 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, // 2 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, // 3 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 4 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 5 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 6 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 7 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 8 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 9 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // A - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // B - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // C - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // D - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // E - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 // F - }; - - // Attribute data with single quote (anything but ' \0) - template - const unsigned char lookup_tables::lookup_attribute_data_1[256] = - { - // 0 1 2 3 4 5 6 7 8 9 A B C D E F - 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 0 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 1 - 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, // 2 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 3 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 4 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 5 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 6 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 7 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 8 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 9 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // A - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // B - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // C - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // D - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // E - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 // F - }; - - // Attribute data with single quote that does not require processing (anything but ' \0 &) - template - const unsigned char lookup_tables::lookup_attribute_data_1_pure[256] = - { - // 0 1 2 3 4 5 6 7 8 9 A B C D E F - 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 0 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 1 - 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, // 2 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 3 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 4 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 5 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 6 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 7 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 8 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 9 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // A - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // B - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // C - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // D - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // E - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 // F - }; - - // Attribute data with double quote (anything but " \0) - template - const unsigned char lookup_tables::lookup_attribute_data_2[256] = - { - // 0 1 2 3 4 5 6 7 8 9 A B C D E F - 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 0 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 1 - 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 2 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 3 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 4 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 5 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 6 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 7 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 8 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 9 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // A - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // B - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // C - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // D - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // E - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 // F - }; - - // Attribute data with double quote that does not require processing (anything but " \0 &) - template - const unsigned char lookup_tables::lookup_attribute_data_2_pure[256] = - { - // 0 1 2 3 4 5 6 7 8 9 A B C D E F - 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 0 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 1 - 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 2 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 3 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 4 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 5 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 6 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 7 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 8 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // 9 - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // A - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // B - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // C - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // D - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, // E - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 // F - }; - - // Digits (dec and hex, 255 denotes end of numeric character reference) - template - const unsigned char lookup_tables::lookup_digits[256] = - { - // 0 1 2 3 4 5 6 7 8 9 A B C D E F - 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, // 0 - 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, // 1 - 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, // 2 - 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,255,255,255,255,255,255, // 3 - 255, 10, 11, 12, 13, 14, 15,255,255,255,255,255,255,255,255,255, // 4 - 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, // 5 - 255, 10, 11, 12, 13, 14, 15,255,255,255,255,255,255,255,255,255, // 6 - 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, // 7 - 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, // 8 - 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, // 9 - 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, // A - 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, // B - 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, // C - 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, // D - 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, // E - 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255 // F - }; - - // Upper case conversion - template - const unsigned char lookup_tables::lookup_upcase[256] = - { - // 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A B C D E F - 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, // 0 - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, // 1 - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, // 2 - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, // 3 - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, // 4 - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, // 5 - 96, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, // 6 - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 123,124,125,126,127, // 7 - 128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143, // 8 - 144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159, // 9 - 160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175, // A - 176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191, // B - 192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207, // C - 208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223, // D - 224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239, // E - 240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255 // F - }; - } - //! \endcond - -} - -// Undefine internal macros -#undef RAPIDXML_PARSE_ERROR - -// On MSVC, restore warnings state -#ifdef _MSC_VER - #pragma warning(pop) -#endif - -#endif diff --git a/src/dependencies/rapidxml/rapidxml_iterators.hpp b/src/dependencies/rapidxml/rapidxml_iterators.hpp deleted file mode 100644 index 85c5894..0000000 --- a/src/dependencies/rapidxml/rapidxml_iterators.hpp +++ /dev/null @@ -1,174 +0,0 @@ -#ifndef RAPIDXML_ITERATORS_HPP_INCLUDED -#define RAPIDXML_ITERATORS_HPP_INCLUDED - -// Copyright (C) 2006, 2009 Marcin Kalicinski -// Version 1.13 -// Revision $DateTime: 2009/05/13 01:46:17 $ -//! \file rapidxml_iterators.hpp This file contains rapidxml iterators - -#include "rapidxml.hpp" - -namespace rapidxml -{ - - //! Iterator of child nodes of xml_node - template - class node_iterator - { - - public: - - typedef typename xml_node value_type; - typedef typename xml_node &reference; - typedef typename xml_node *pointer; - typedef std::ptrdiff_t difference_type; - typedef std::bidirectional_iterator_tag iterator_category; - - node_iterator() - : m_node(0) - { - } - - node_iterator(xml_node *node) - : m_node(node->first_node()) - { - } - - reference operator *() const - { - assert(m_node); - return *m_node; - } - - pointer operator->() const - { - assert(m_node); - return m_node; - } - - node_iterator& operator++() - { - assert(m_node); - m_node = m_node->next_sibling(); - return *this; - } - - node_iterator operator++(int) - { - node_iterator tmp = *this; - ++this; - return tmp; - } - - node_iterator& operator--() - { - assert(m_node && m_node->previous_sibling()); - m_node = m_node->previous_sibling(); - return *this; - } - - node_iterator operator--(int) - { - node_iterator tmp = *this; - ++this; - return tmp; - } - - bool operator ==(const node_iterator &rhs) - { - return m_node == rhs.m_node; - } - - bool operator !=(const node_iterator &rhs) - { - return m_node != rhs.m_node; - } - - private: - - xml_node *m_node; - - }; - - //! Iterator of child attributes of xml_node - template - class attribute_iterator - { - - public: - - typedef typename xml_attribute value_type; - typedef typename xml_attribute &reference; - typedef typename xml_attribute *pointer; - typedef std::ptrdiff_t difference_type; - typedef std::bidirectional_iterator_tag iterator_category; - - attribute_iterator() - : m_attribute(0) - { - } - - attribute_iterator(xml_node *node) - : m_attribute(node->first_attribute()) - { - } - - reference operator *() const - { - assert(m_attribute); - return *m_attribute; - } - - pointer operator->() const - { - assert(m_attribute); - return m_attribute; - } - - attribute_iterator& operator++() - { - assert(m_attribute); - m_attribute = m_attribute->next_attribute(); - return *this; - } - - attribute_iterator operator++(int) - { - attribute_iterator tmp = *this; - ++this; - return tmp; - } - - attribute_iterator& operator--() - { - assert(m_attribute && m_attribute->previous_attribute()); - m_attribute = m_attribute->previous_attribute(); - return *this; - } - - attribute_iterator operator--(int) - { - attribute_iterator tmp = *this; - ++this; - return tmp; - } - - bool operator ==(const attribute_iterator &rhs) - { - return m_attribute == rhs.m_attribute; - } - - bool operator !=(const attribute_iterator &rhs) - { - return m_attribute != rhs.m_attribute; - } - - private: - - xml_attribute *m_attribute; - - }; - -} - -#endif diff --git a/src/dependencies/rapidxml/rapidxml_print.hpp b/src/dependencies/rapidxml/rapidxml_print.hpp deleted file mode 100644 index 2b646e3..0000000 --- a/src/dependencies/rapidxml/rapidxml_print.hpp +++ /dev/null @@ -1,448 +0,0 @@ -#ifndef RAPIDXML_PRINT_HPP_INCLUDED -#define RAPIDXML_PRINT_HPP_INCLUDED - -// Copyright (C) 2006, 2009 Marcin Kalicinski -// Version 1.13 -// Revision $DateTime: 2009/05/13 01:46:17 $ -//! \file rapidxml_print.hpp This file contains rapidxml printer implementation - -#include "rapidxml.hpp" - -// Only include streams if not disabled -#ifndef RAPIDXML_NO_STREAMS - #include - #include -#endif - -namespace rapidxml -{ - - /////////////////////////////////////////////////////////////////////// - // Printing flags - - const int print_no_indenting = 0x1; //!< Printer flag instructing the printer to suppress indenting of XML. See print() function. - - /////////////////////////////////////////////////////////////////////// - // Internal - - //! \cond internal - namespace internal - { - - /////////////////////////////////////////////////////////////////////////// - // Internal character operations - - // Copy characters from given range to given output iterator - template - inline OutIt copy_chars(const Ch *begin, const Ch *end, OutIt out) - { - while (begin != end) - *out++ = *begin++; - return out; - } - - // Copy characters from given range to given output iterator and expand - // characters into references (< > ' " &) - template - inline OutIt copy_and_expand_chars(const Ch *begin, const Ch *end, Ch noexpand, OutIt out) - { - while (begin != end) - { - if (*begin == noexpand) - { - *out++ = *begin; // No expansion, copy character - } - else - { - switch (*begin) - { - case Ch('<'): - *out++ = Ch('&'); *out++ = Ch('l'); *out++ = Ch('t'); *out++ = Ch(';'); - break; - case Ch('>'): - *out++ = Ch('&'); *out++ = Ch('g'); *out++ = Ch('t'); *out++ = Ch(';'); - break; - case Ch('\''): - *out++ = Ch('&'); *out++ = Ch('a'); *out++ = Ch('p'); *out++ = Ch('o'); *out++ = Ch('s'); *out++ = Ch(';'); - break; - case Ch('"'): - *out++ = Ch('&'); *out++ = Ch('q'); *out++ = Ch('u'); *out++ = Ch('o'); *out++ = Ch('t'); *out++ = Ch(';'); - break; - case Ch('&'): - *out++ = Ch('&'); *out++ = Ch('a'); *out++ = Ch('m'); *out++ = Ch('p'); *out++ = Ch(';'); - break; - default: - *out++ = *begin; // No expansion, copy character - } - } - ++begin; // Step to next character - } - return out; - } - - // Fill given output iterator with repetitions of the same character - template - inline OutIt fill_chars(OutIt out, int n, Ch ch) - { - for (int i = 0; i < n; ++i) - *out++ = ch; - return out; - } - - // Find character - template - inline bool find_char(const Ch *begin, const Ch *end) - { - while (begin != end) - if (*begin++ == ch) - return true; - return false; - } - - /////////////////////////////////////////////////////////////////////////// - // Internal printing operations - - template - inline OutIt print_children(OutIt out, const xml_node *node, int flags, int indent); - - template - inline OutIt print_attributes(OutIt out, const xml_node *node, int flags); - - template - inline OutIt print_data_node(OutIt out, const xml_node *node, int flags, int indent); - - template - inline OutIt print_cdata_node(OutIt out, const xml_node *node, int flags, int indent); - - template - inline OutIt print_element_node(OutIt out, const xml_node *node, int flags, int indent); - - template - inline OutIt print_declaration_node(OutIt out, const xml_node *node, int flags, int indent); - - template - inline OutIt print_comment_node(OutIt out, const xml_node *node, int flags, int indent); - - template - inline OutIt print_doctype_node(OutIt out, const xml_node *node, int flags, int indent); - - template - inline OutIt print_pi_node(OutIt out, const xml_node *node, int flags, int indent); - - // Print node - template - inline OutIt print_node(OutIt out, const xml_node *node, int flags, int indent) - { - // Print proper node type - switch (node->type()) - { - - // Document - case node_document: - out = print_children(out, node, flags, indent); - break; - - // Element - case node_element: - out = print_element_node(out, node, flags, indent); - break; - - // Data - case node_data: - out = print_data_node(out, node, flags, indent); - break; - - // CDATA - case node_cdata: - out = print_cdata_node(out, node, flags, indent); - break; - - // Declaration - case node_declaration: - out = print_declaration_node(out, node, flags, indent); - break; - - // Comment - case node_comment: - out = print_comment_node(out, node, flags, indent); - break; - - // Doctype - case node_doctype: - out = print_doctype_node(out, node, flags, indent); - break; - - // Pi - case node_pi: - out = print_pi_node(out, node, flags, indent); - break; - - // Unknown - default: - assert(0); - break; - } - - // If indenting not disabled, add line break after node - if (!(flags & print_no_indenting)) - *out = Ch('\n'), ++out; - - // Return modified iterator - return out; - } - - // Print children of the node - template - inline OutIt print_children(OutIt out, const xml_node *node, int flags, int indent) - { - for (xml_node *child = node->first_node(); child; child = child->next_sibling()) - out = print_node(out, child, flags, indent); - return out; - } - - // Print attributes of the node - template - inline OutIt print_attributes(OutIt out, const xml_node *node, int flags) - { - for (xml_attribute *attribute = node->first_attribute(); attribute; attribute = attribute->next_attribute()) - { - if (attribute->name() && attribute->value()) - { - // Print attribute name - *out = Ch(' '), ++out; - out = copy_chars(attribute->name(), attribute->name() + attribute->name_size(), out); - *out = Ch('='), ++out; - // Print attribute value using appropriate quote type - if (find_char(attribute->value(), attribute->value() + attribute->value_size())) - { - *out = Ch('\''), ++out; - out = copy_and_expand_chars(attribute->value(), attribute->value() + attribute->value_size(), Ch('"'), out); - *out = Ch('\''), ++out; - } - else - { - *out = Ch('"'), ++out; - out = copy_and_expand_chars(attribute->value(), attribute->value() + attribute->value_size(), Ch('\''), out); - *out = Ch('"'), ++out; - } - } - } - return out; - } - - // Print data node - template - inline OutIt print_data_node(OutIt out, const xml_node *node, int flags, int indent) - { - assert(node->type() == node_data); - if (!(flags & print_no_indenting)) - out = fill_chars(out, indent, Ch('\t')); - out = copy_and_expand_chars(node->value(), node->value() + node->value_size(), Ch(0), out); - return out; - } - - // Print data node - template - inline OutIt print_cdata_node(OutIt out, const xml_node *node, int flags, int indent) - { - assert(node->type() == node_cdata); - if (!(flags & print_no_indenting)) - out = fill_chars(out, indent, Ch('\t')); - *out = Ch('<'); ++out; - *out = Ch('!'); ++out; - *out = Ch('['); ++out; - *out = Ch('C'); ++out; - *out = Ch('D'); ++out; - *out = Ch('A'); ++out; - *out = Ch('T'); ++out; - *out = Ch('A'); ++out; - *out = Ch('['); ++out; - out = copy_chars(node->value(), node->value() + node->value_size(), out); - *out = Ch(']'); ++out; - *out = Ch(']'); ++out; - *out = Ch('>'); ++out; - return out; - } - - // Print element node - template - inline OutIt print_element_node(OutIt out, const xml_node *node, int flags, int indent) - { - assert(node->type() == node_element); - - // Print element name and attributes, if any - if (!(flags & print_no_indenting)) - out = fill_chars(out, indent, Ch('\t')); - *out = Ch('<'), ++out; - out = copy_chars(node->name(), node->name() + node->name_size(), out); - out = print_attributes(out, node, flags); - - // If node is childless - if (node->value_size() == 0 && !node->first_node()) - { - // Print childless node tag ending - *out = Ch('/'), ++out; - *out = Ch('>'), ++out; - } - else - { - // Print normal node tag ending - *out = Ch('>'), ++out; - - // Test if node contains a single data node only (and no other nodes) - xml_node *child = node->first_node(); - if (!child) - { - // If node has no children, only print its value without indenting - out = copy_and_expand_chars(node->value(), node->value() + node->value_size(), Ch(0), out); - } - else if (child->next_sibling() == 0 && child->type() == node_data) - { - // If node has a sole data child, only print its value without indenting - out = copy_and_expand_chars(child->value(), child->value() + child->value_size(), Ch(0), out); - } - else - { - // Print all children with full indenting - if (!(flags & print_no_indenting)) - *out = Ch('\n'), ++out; - out = print_children(out, node, flags, indent + 1); - if (!(flags & print_no_indenting)) - out = fill_chars(out, indent, Ch('\t')); - } - - // Print node end - *out = Ch('<'), ++out; - *out = Ch('/'), ++out; - out = copy_chars(node->name(), node->name() + node->name_size(), out); - *out = Ch('>'), ++out; - } - return out; - } - - // Print declaration node - template - inline OutIt print_declaration_node(OutIt out, const xml_node *node, int flags, int indent) - { - // Print declaration start - if (!(flags & print_no_indenting)) - out = fill_chars(out, indent, Ch('\t')); - *out = Ch('<'), ++out; - *out = Ch('?'), ++out; - *out = Ch('x'), ++out; - *out = Ch('m'), ++out; - *out = Ch('l'), ++out; - - // Print attributes - out = print_attributes(out, node, flags); - - // Print declaration end - *out = Ch('?'), ++out; - *out = Ch('>'), ++out; - - return out; - } - - // Print comment node - template - inline OutIt print_comment_node(OutIt out, const xml_node *node, int flags, int indent) - { - assert(node->type() == node_comment); - if (!(flags & print_no_indenting)) - out = fill_chars(out, indent, Ch('\t')); - *out = Ch('<'), ++out; - *out = Ch('!'), ++out; - *out = Ch('-'), ++out; - *out = Ch('-'), ++out; - out = copy_chars(node->value(), node->value() + node->value_size(), out); - *out = Ch('-'), ++out; - *out = Ch('-'), ++out; - *out = Ch('>'), ++out; - return out; - } - - // Print doctype node - template - inline OutIt print_doctype_node(OutIt out, const xml_node *node, int flags, int indent) - { - assert(node->type() == node_doctype); - if (!(flags & print_no_indenting)) - out = fill_chars(out, indent, Ch('\t')); - *out = Ch('<'), ++out; - *out = Ch('!'), ++out; - *out = Ch('D'), ++out; - *out = Ch('O'), ++out; - *out = Ch('C'), ++out; - *out = Ch('T'), ++out; - *out = Ch('Y'), ++out; - *out = Ch('P'), ++out; - *out = Ch('E'), ++out; - *out = Ch(' '), ++out; - out = copy_chars(node->value(), node->value() + node->value_size(), out); - *out = Ch('>'), ++out; - return out; - } - - // Print pi node - template - inline OutIt print_pi_node(OutIt out, const xml_node *node, int flags, int indent) - { - assert(node->type() == node_pi); - if (!(flags & print_no_indenting)) - out = fill_chars(out, indent, Ch('\t')); - *out = Ch('<'), ++out; - *out = Ch('?'), ++out; - out = copy_chars(node->name(), node->name() + node->name_size(), out); - *out = Ch(' '), ++out; - out = copy_chars(node->value(), node->value() + node->value_size(), out); - *out = Ch('?'), ++out; - *out = Ch('>'), ++out; - return out; - } - - } - //! \endcond - - /////////////////////////////////////////////////////////////////////////// - // Printing - - //! Prints XML to given output iterator. - //! \param out Output iterator to print to. - //! \param node Node to be printed. Pass xml_document to print entire document. - //! \param flags Flags controlling how XML is printed. - //! \return Output iterator pointing to position immediately after last character of printed text. - template - inline OutIt print(OutIt out, const xml_node &node, int flags = 0) - { - return internal::print_node(out, &node, flags, 0); - } - -#ifndef RAPIDXML_NO_STREAMS - - //! Prints XML to given output stream. - //! \param out Output stream to print to. - //! \param node Node to be printed. Pass xml_document to print entire document. - //! \param flags Flags controlling how XML is printed. - //! \return Output stream. - template - inline std::basic_ostream &print(std::basic_ostream &out, const xml_node &node, int flags = 0) - { - print(std::ostream_iterator(out), node, flags); - return out; - } - - //! Prints formatted XML to given output stream. Uses default printing flags. Use print() function to customize printing process. - //! \param out Output stream to print to. - //! \param node Node to be printed. - //! \return Output stream. - template - inline std::basic_ostream &operator <<(std::basic_ostream &out, const xml_node &node) - { - return print(out, node); - } - -#endif - -} - -#endif diff --git a/src/dependencies/rapidxml/rapidxml_utils.hpp b/src/dependencies/rapidxml/rapidxml_utils.hpp deleted file mode 100644 index 5eafa35..0000000 --- a/src/dependencies/rapidxml/rapidxml_utils.hpp +++ /dev/null @@ -1,122 +0,0 @@ -#ifndef RAPIDXML_UTILS_HPP_INCLUDED -#define RAPIDXML_UTILS_HPP_INCLUDED - -// Copyright (C) 2006, 2009 Marcin Kalicinski -// Version 1.13 -// Revision $DateTime: 2009/05/13 01:46:17 $ -//! \file rapidxml_utils.hpp This file contains high-level rapidxml utilities that can be useful -//! in certain simple scenarios. They should probably not be used if maximizing performance is the main objective. - -#include "rapidxml.hpp" -#include -#include -#include -#include - -namespace rapidxml -{ - - //! Represents data loaded from a file - template - class file - { - - public: - - //! Loads file into the memory. Data will be automatically destroyed by the destructor. - //! \param filename Filename to load. - file(const char *filename) - { - using namespace std; - - // Open stream - basic_ifstream stream(filename, ios::binary); - if (!stream) - throw runtime_error(string("cannot open file ") + filename); - stream.unsetf(ios::skipws); - - // Determine stream size - stream.seekg(0, ios::end); - size_t size = stream.tellg(); - stream.seekg(0); - - // Load data and add terminating 0 - m_data.resize(size + 1); - stream.read(&m_data.front(), static_cast(size)); - m_data[size] = 0; - } - - //! Loads file into the memory. Data will be automatically destroyed by the destructor - //! \param stream Stream to load from - file(std::basic_istream &stream) - { - using namespace std; - - // Load data and add terminating 0 - stream.unsetf(ios::skipws); - m_data.assign(istreambuf_iterator(stream), istreambuf_iterator()); - if (stream.fail() || stream.bad()) - throw runtime_error("error reading stream"); - m_data.push_back(0); - } - - //! Gets file data. - //! \return Pointer to data of file. - Ch *data() - { - return &m_data.front(); - } - - //! Gets file data. - //! \return Pointer to data of file. - const Ch *data() const - { - return &m_data.front(); - } - - //! Gets file data size. - //! \return Size of file data, in characters. - std::size_t size() const - { - return m_data.size(); - } - - private: - - std::vector m_data; // File data - - }; - - //! Counts children of node. Time complexity is O(n). - //! \return Number of children of node - template - inline std::size_t count_children(xml_node *node) - { - xml_node *child = node->first_node(); - std::size_t count = 0; - while (child) - { - ++count; - child = child->next_sibling(); - } - return count; - } - - //! Counts attributes of node. Time complexity is O(n). - //! \return Number of attributes of node - template - inline std::size_t count_attributes(xml_node *node) - { - xml_attribute *attr = node->first_attribute(); - std::size_t count = 0; - while (attr) - { - ++count; - attr = attr->next_attribute(); - } - return count; - } - -} - -#endif diff --git a/src/engine.cpp b/src/engine.cpp index f5a4ef2..2d178aa 100644 --- a/src/engine.cpp +++ b/src/engine.cpp @@ -1,8 +1,9 @@ #include "engine.hpp" #include "resource_manager/resource_manager.hpp" -#include "dependencies/rapidxml/rapidxml.hpp" +#include #include "util/file_to_string.hpp" #include "physics/physics_component.hpp" +#include "renderer/graphics_component.hpp" #include #include #include @@ -87,6 +88,8 @@ eventHandler( this ) char* mcFileText = fileToString(mcFileName.c_str()); + assert(mcFileText && "main_character.xml not found"); + xml_document<> mcDoc; mcDoc.parse<0>( mcFileText ); @@ -104,38 +107,31 @@ void Engine::init() SDL_Init(SDL_INIT_TIMER); - ResourceManager::init(); ResourceManager* resourceManager = ResourceManager::getSingleton(); resourceManager->launch(); - if( !mainCharacter ) - { - //worldStreamer->init(mainCharacter->getCell(), mainCharacter->getPosition()); - } - else - { - worldStreamer->init - ( - mainCharacter->getCell(), - mainCharacter->getPosition() - ); - } - + worldStreamer->init + ( + mainCharacter->getCell(), + mainCharacter->getPosition() + ); } void Engine::mainLoop() { + unsigned prevTicks = SDL_GetTicks(); + while( !end ) { - unsigned int beginTicks = SDL_GetTicks(); + unsigned ticks = SDL_GetTicks(); eventHandler.poll(); // update physics - physicsSystem->update( 1000/fps ); + physicsSystem->update( ticks - prevTicks ); // update world streamer worldStreamer->update( mainCharacter->getPosition(), mainCharacter ); @@ -169,17 +165,19 @@ void Engine::mainLoop() graphicsSystem->getCamera()->setPosition( -mainCharacter->getPosition() ); // update graphics - graphicsSystem->update(1000/fps); + graphicsSystem->update(ticks-prevTicks); // draw graphicsSystem->draw(); graphicsSystem->swap(); unsigned int endTicks = SDL_GetTicks(); - int sleepTicks = 1000/fps - (endTicks-beginTicks); + int sleepTicks = 1000/fps - (endTicks-ticks); if(sleepTicks > 0) SDL_Delay( sleepTicks ); + prevTicks = ticks; + } } diff --git a/src/entity.cpp b/src/entity.cpp index e6e3f31..14038b7 100644 --- a/src/entity.cpp +++ b/src/entity.cpp @@ -3,6 +3,7 @@ #include "physics/physics_component.hpp" #include #include +#include "util/xmlstr.hpp" using namespace std; using namespace rapidxml; @@ -79,41 +80,47 @@ xml_node<>* Entity::createXmlNode(xml_document<>* doc, float cellSize) { xml_node<>* node_ent; - node_ent = doc->allocate_node(node_element, "entity"); + node_ent = doc->allocate_node(node_element, xmlstr::entity); float x = getPosition().x; float y = getPosition().y; - + // we have to do this because positions are wrt the cell + // where the main character is and not wrt the cell where + // this entity is while( x < 0 ) x += cellSize; while( x >= cellSize) x -= cellSize; while( y < 0) y += cellSize; while( y >= cellSize ) y -= cellSize; - xml_node<>* pos_node = doc->allocate_node(node_element, "position"); + xml_node<>* pos_node = doc->allocate_node(node_element, xmlstr::position); node_ent->append_node( pos_node ); + /// x stringstream ss; ss << x; string sx = ss.str(); char* s = doc->allocate_string(sx.c_str()); - xml_node<>* x_node = doc->allocate_node(node_element, "x", s); + xml_node<>* x_node = doc->allocate_node(node_element, xmlstr::x, s); pos_node->append_node( x_node ); + /// y ss.str( string() ); ss.clear(); ss << y; string sy = ss.str(); s = doc->allocate_string(sy.c_str()); - xml_node<>* y_node = doc->allocate_node(node_element, "y", s); + xml_node<>* y_node = doc->allocate_node(node_element, xmlstr::y, s); pos_node->append_node( y_node ); + /// graphics component if( graphicsComponent ) { xml_node<>* graphics_node = getGraphicsComponent()->createXmlNode(doc); node_ent->append_node( graphics_node ); } + /// physics component if( physicsComponent ) { xml_node<>* physics_node = getPhysicsComponent()->createXmlNode(doc); diff --git a/src/entity.hpp b/src/entity.hpp index 9d44a17..969a88f 100644 --- a/src/entity.hpp +++ b/src/entity.hpp @@ -1,6 +1,6 @@ #include #include "position.hpp" -#include "dependencies/rapidxml/rapidxml.hpp" +#include #ifndef GRAPHICS_COMPONENT class GraphicsComponent; diff --git a/src/entity_factory.cpp b/src/entity_factory.cpp index e55abfe..d27fbca 100644 --- a/src/entity_factory.cpp +++ b/src/entity_factory.cpp @@ -4,7 +4,10 @@ #include "physics/physics_component.hpp" #include "physics/physics_box.hpp" #include "engine.hpp" +#include "renderer/sprite_status.hpp" #include +#include +#include "util/xmlstr.hpp" using namespace rapidxml; using namespace std; @@ -41,29 +44,29 @@ Entity* EntityFactory::createEntity } // position - xml_node<> *position_node = node->first_node("position"); - xml_node<> *x_position_node = position_node->first_node("x"); + xml_node<> *position_node = node->first_node(xmlstr::position); + xml_node<> *x_position_node = position_node->first_node(xmlstr::x); pos.x += atof( x_position_node->value() ); - xml_node<> *y_position_node = position_node->first_node("y"); + xml_node<> *y_position_node = position_node->first_node(xmlstr::y); pos.y += atof( y_position_node->value() ); // graphics - xml_node<> *graphics_node = node->first_node("graphics"); + xml_node<> *graphics_node = node->first_node(xmlstr::graphics); if( graphics_node ) { - xml_node<> *texture_node = graphics_node->first_node("texture"); - string textureFileName( string("img/") + texture_node->value() ); - xml_node<> *width_graphics_node = graphics_node->first_node("width"); + xml_node<> *sprite_node = graphics_node->first_node(xmlstr::sprite); + string spriteName = sprite_node->value(); + xml_node<> *width_graphics_node = graphics_node->first_node(xmlstr::width); float width_graphics = atof( width_graphics_node->value() ); - xml_node<> *height_graphics_node = graphics_node->first_node("height"); + xml_node<> *height_graphics_node = graphics_node->first_node(xmlstr::height); float height_graphics = atof( height_graphics_node->value() ); - xml_node<> *priority_node = graphics_node->first_node("priority"); + xml_node<> *priority_node = graphics_node->first_node(xmlstr::priority); GraphicsComponent* graphicsComponent = - myEngine->getGraphicsSystem()->createSprite + myEngine->getGraphicsSystem()->instanceSprite ( - textureFileName, + spriteName, Vec2f( width_graphics, height_graphics ) ); @@ -78,26 +81,46 @@ Entity* EntityFactory::createEntity } // physics - xml_node<> *physics_node = node->first_node("physics"); + xml_node<> *physics_node = node->first_node(xmlstr::physics); if( physics_node ) { + PhysicsComponent* physicsComponent; - xml_node<> *shape_node = physics_node->first_node("shape"); + xml_node<> *shape_node = physics_node->first_node(xmlstr::shape); string sShape( shape_node->value() ); - xml_node<> *width_physics_node = physics_node->first_node("width"); - float width_physics = atof( width_physics_node->value() ); - xml_node<> *height_physics_node = physics_node->first_node("height"); - float height_physics = atof( height_physics_node->value() ); - xml_node<> *mass_node = physics_node->first_node("mass"); + + xml_node<> *mass_node = physics_node->first_node(xmlstr::mass); float mass = atof( mass_node->value() ); - PhysicsComponent* physicsComponent = - myEngine->getPhysicsSystem()->createPhysicsBox - ( - pos, - Vec2f(width_physics, height_physics), - mass - ); + if(sShape == xmlstr::box) + { + xml_node<> *width_physics_node = physics_node->first_node(xmlstr::width); + float width_physics = atof( width_physics_node->value() ); + xml_node<> *height_physics_node = physics_node->first_node(xmlstr::height); + float height_physics = atof( height_physics_node->value() ); + + physicsComponent = + myEngine->getPhysicsSystem()->createPhysicsBox + ( + pos, + Vec2f(width_physics, height_physics), + mass + ); + } + else if(sShape == xmlstr::circle) + { + xml_node<> *radius_node = physics_node->first_node(xmlstr::radius); + float radius = atof( radius_node->value() ); + physicsComponent = + myEngine->getPhysicsSystem()->createPhysicsCircle + ( + pos, + radius, + mass + ); + } + else + {cerr << "error: type of shape not recognized" << endl;} entity->setPhysicsComponent( physicsComponent ); @@ -129,33 +152,33 @@ MainCharacter* EntityFactory::createMainCharacter(rapidxml::xml_node<> *node) } // position - xml_node<> *position_node = node->first_node("position"); - xml_node<> *cell_x_node = position_node->first_node("cell_x"); + xml_node<> *position_node = node->first_node(xmlstr::position); + xml_node<> *cell_x_node = position_node->first_node(xmlstr::cell_x); int cell_x = atoi( cell_x_node->value() ); - xml_node<> *cell_y_node = position_node->first_node("cell_y"); + xml_node<> *cell_y_node = position_node->first_node(xmlstr::cell_y); int cell_y = atoi( cell_y_node->value() ); - xml_node<> *x_position_node = position_node->first_node("x"); + xml_node<> *x_position_node = position_node->first_node(xmlstr::x); pos.x = atof( x_position_node->value() ); - xml_node<> *y_position_node = position_node->first_node("y"); + xml_node<> *y_position_node = position_node->first_node(xmlstr::y); pos.y = atof( y_position_node->value() ); // graphics - xml_node<> *graphics_node = node->first_node("graphics"); + xml_node<> *graphics_node = node->first_node(xmlstr::graphics); if( graphics_node ) { - xml_node<> *texture_node = graphics_node->first_node("texture"); - string textureFileName( string("img/") + texture_node->value() ); - xml_node<> *width_graphics_node = graphics_node->first_node("width"); + xml_node<> *sprite_node = graphics_node->first_node(xmlstr::sprite); + string spriteName = sprite_node->value(); + xml_node<> *width_graphics_node = graphics_node->first_node(xmlstr::width); float width_graphics = atof( width_graphics_node->value() ); - xml_node<> *height_graphics_node = graphics_node->first_node("height"); + xml_node<> *height_graphics_node = graphics_node->first_node(xmlstr::height); float height_graphics = atof( height_graphics_node->value() ); - xml_node<> *priority_node = graphics_node->first_node("priority"); + xml_node<> *priority_node = graphics_node->first_node(xmlstr::priority); GraphicsComponent* graphicsComponent = - myEngine->getGraphicsSystem()->createSprite + myEngine->getGraphicsSystem()->instanceSprite ( - textureFileName, + spriteName, Vec2f( width_graphics, height_graphics ) ); @@ -170,18 +193,18 @@ MainCharacter* EntityFactory::createMainCharacter(rapidxml::xml_node<> *node) } // physics - xml_node<> *physics_node = node->first_node("physics"); + xml_node<> *physics_node = node->first_node(xmlstr::physics); if( physics_node ) { - xml_node<> *shape_node = physics_node->first_node("shape"); + xml_node<> *shape_node = physics_node->first_node(xmlstr::shape); string sShape( shape_node->value() ); - xml_node<> *width_physics_node = physics_node->first_node("width"); + xml_node<> *width_physics_node = physics_node->first_node(xmlstr::width); float width_physics = atof( width_physics_node->value() ); - xml_node<> *height_physics_node = physics_node->first_node("height"); + xml_node<> *height_physics_node = physics_node->first_node(xmlstr::height); float height_physics = atof( height_physics_node->value() ); - xml_node<> *mass_node = physics_node->first_node("mass"); + xml_node<> *mass_node = physics_node->first_node(xmlstr::mass); float mass = atof( mass_node->value() ); PhysicsComponent* physicsComponent = diff --git a/src/entity_factory.hpp b/src/entity_factory.hpp index e45304c..321c318 100644 --- a/src/entity_factory.hpp +++ b/src/entity_factory.hpp @@ -1,6 +1,6 @@ #include "entity.hpp" #include "main_character.hpp" -#include "dependencies/rapidxml/rapidxml.hpp" +#include #ifndef ENGINE class Engine; diff --git a/src/main.cpp b/src/main.cpp index 1b34d72..2beb6d4 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -1,6 +1,6 @@ #include "engine.hpp" -int main() +int main(int argc, char* argv[]) { Engine engine("init_file.xml", "world_folder"); @@ -9,4 +9,5 @@ int main() engine.mainLoop(); + return 0; } diff --git a/src/math/aarect.hpp b/src/math/aarect.hpp index 2391bb8..bc840be 100644 --- a/src/math/aarect.hpp +++ b/src/math/aarect.hpp @@ -1,7 +1,7 @@ #ifndef AARECT_HPP_INCLUDED #define AARECT_HPP_INCLUDED -/* Axialy aligned rectangle */ +/* Axially aligned rectangle */ class AARect{ public: diff --git a/src/math/functions.cpp b/src/math/functions.cpp new file mode 100644 index 0000000..d6303f4 --- /dev/null +++ b/src/math/functions.cpp @@ -0,0 +1 @@ +#include "functions.hpp" diff --git a/src/math/functions.hpp b/src/math/functions.hpp new file mode 100644 index 0000000..c6ef789 --- /dev/null +++ b/src/math/functions.hpp @@ -0,0 +1,16 @@ +#ifndef FUNCTIONS +#define FUNCTIONS + +#define M_PI 3.14159265 + +/** +* \brief compute a % b for floats +*/ +// already defined in +/*float fmod(float a, float b) +{ + while(a>b) a -= b; + return a; +}*/ + +#endif // FUNCTIONS diff --git a/src/math/vec2f.cpp b/src/math/vec2f.cpp index 977b160..c224fc6 100644 --- a/src/math/vec2f.cpp +++ b/src/math/vec2f.cpp @@ -1,4 +1,5 @@ #include "vec2f.hpp" +#include "vec2i.hpp" Vec2f::Vec2f(float x, float y) { @@ -6,6 +7,18 @@ Vec2f::Vec2f(float x, float y) this->y = y; } +Vec2f::Vec2f(const Vec2f& v) +{ + this->x = v.x; + this->y = v.y; +} + +Vec2f::Vec2f(const Vec2i& v) +{ + this->x = v.x; + this->y = v.y; +} + Vec2f Vec2f::operator=(const Vec2f& vec) { x = vec.x; @@ -13,6 +26,19 @@ Vec2f Vec2f::operator=(const Vec2f& vec) return *this; } +Vec2f Vec2f::operator+=(const Vec2f& vec) +{ + (*this) = (*this) + vec; + return *this; +} + +Vec2f Vec2f::operator-=(const Vec2f& vec) +{ + (*this) = (*this) - vec; + return *this; +} + + Vec2f Vec2f::operator+(const Vec2f& vec)const { float x = this->x + vec.x; diff --git a/src/math/vec2f.hpp b/src/math/vec2f.hpp index eb926ec..5e38e11 100644 --- a/src/math/vec2f.hpp +++ b/src/math/vec2f.hpp @@ -2,10 +2,11 @@ #ifndef VEC2F #define VEC2F +class Vec2i; + /** * Represents a vector of two float components */ - class Vec2f { @@ -15,9 +16,14 @@ class Vec2f Vec2f(){} Vec2f(float x, float y); + Vec2f(const Vec2f& v); + Vec2f(const Vec2i& v); Vec2f operator=(const Vec2f& vec); + Vec2f operator+=(const Vec2f& vec); + Vec2f operator-=(const Vec2f& vec); + Vec2f operator+(const Vec2f& vec)const; Vec2f operator-(const Vec2f& vec)const; Vec2f operator-()const; diff --git a/src/math/vec2i.cpp b/src/math/vec2i.cpp index bbfd651..4720c12 100644 --- a/src/math/vec2i.cpp +++ b/src/math/vec2i.cpp @@ -1,4 +1,5 @@ #include "vec2i.hpp" +#include "vec2f.hpp" Vec2i::Vec2i(int x, int y) { @@ -6,6 +7,18 @@ Vec2i::Vec2i(int x, int y) this->y = y; } +Vec2i::Vec2i(const Vec2i& v) +{ + this->x = v.x; + this->y = v.y; +} + +Vec2i::Vec2i(const Vec2f& v) +{ + this->x = v.x; + this->y = v.y; +} + Vec2i Vec2i::operator=(const Vec2i& vec) { this->x = vec.x; diff --git a/src/math/vec2i.hpp b/src/math/vec2i.hpp index 1065b1d..864de2b 100644 --- a/src/math/vec2i.hpp +++ b/src/math/vec2i.hpp @@ -2,11 +2,12 @@ #ifndef VEC2I #define VEC2I +class Vec2f; + /** * Represents a vector of two integer components * */ - class Vec2i { @@ -16,6 +17,8 @@ class Vec2i Vec2i(){} Vec2i(int x, int y); + Vec2i(const Vec2i& v); + Vec2i(const Vec2f& v); Vec2i operator=(const Vec2i& vec); diff --git a/src/owman.cbp b/src/owman.cbp index d3539eb..bf1aac1 100644 --- a/src/owman.cbp +++ b/src/owman.cbp @@ -15,6 +15,7 @@ + @@ -169,6 +170,8 @@