| 123 | } |
| 124 | |
| 125 | void |
| 126 | testFun () |
| 127 | { |
| 128 | cout << "Testing functions in ImathFun.h" << endl; |
| 129 | |
| 130 | cout << "floor" << endl; |
| 131 | |
| 132 | assert (IMATH_INTERNAL_NAMESPACE::floor (0.0f) == 0); |
| 133 | assert (IMATH_INTERNAL_NAMESPACE::floor (0.5f) == 0); |
| 134 | assert (IMATH_INTERNAL_NAMESPACE::floor (-0.5f) == -1); |
| 135 | assert (IMATH_INTERNAL_NAMESPACE::floor (1.0f) == 1); |
| 136 | assert (IMATH_INTERNAL_NAMESPACE::floor (-1.0f) == -1); |
| 137 | assert (IMATH_INTERNAL_NAMESPACE::floor (1.5f) == 1); |
| 138 | assert (IMATH_INTERNAL_NAMESPACE::floor (-1.5f) == -2); |
| 139 | |
| 140 | cout << "ceil" << endl; |
| 141 | |
| 142 | assert (IMATH_INTERNAL_NAMESPACE::ceil (0.0f) == 0); |
| 143 | assert (IMATH_INTERNAL_NAMESPACE::ceil (0.5f) == 1); |
| 144 | assert (IMATH_INTERNAL_NAMESPACE::ceil (-0.5f) == 0); |
| 145 | assert (IMATH_INTERNAL_NAMESPACE::ceil (1.0f) == 1); |
| 146 | assert (IMATH_INTERNAL_NAMESPACE::ceil (-1.0f) == -1); |
| 147 | assert (IMATH_INTERNAL_NAMESPACE::ceil (1.5f) == 2); |
| 148 | assert (IMATH_INTERNAL_NAMESPACE::ceil (-1.5f) == -1); |
| 149 | |
| 150 | cout << "trunc" << endl; |
| 151 | |
| 152 | assert (IMATH_INTERNAL_NAMESPACE::trunc (0.0f) == 0); |
| 153 | assert (IMATH_INTERNAL_NAMESPACE::trunc (0.5f) == 0); |
| 154 | assert (IMATH_INTERNAL_NAMESPACE::trunc (-0.5f) == 0); |
| 155 | assert (IMATH_INTERNAL_NAMESPACE::trunc (1.0f) == 1); |
| 156 | assert (IMATH_INTERNAL_NAMESPACE::trunc (-1.0f) == -1); |
| 157 | assert (IMATH_INTERNAL_NAMESPACE::trunc (1.5f) == 1); |
| 158 | assert (IMATH_INTERNAL_NAMESPACE::trunc (-1.5f) == -1); |
| 159 | |
| 160 | cout << "divs / mods" << endl; |
| 161 | |
| 162 | assert ( |
| 163 | IMATH_INTERNAL_NAMESPACE::divs (5, 2) == 2 && |
| 164 | IMATH_INTERNAL_NAMESPACE::mods (5, 2) == 1); |
| 165 | assert ( |
| 166 | IMATH_INTERNAL_NAMESPACE::divs (4, 2) == 2 && |
| 167 | IMATH_INTERNAL_NAMESPACE::mods (4, 2) == 0); |
| 168 | assert ( |
| 169 | IMATH_INTERNAL_NAMESPACE::divs (3, 2) == 1 && |
| 170 | IMATH_INTERNAL_NAMESPACE::mods (3, 2) == 1); |
| 171 | assert ( |
| 172 | IMATH_INTERNAL_NAMESPACE::divs (2, 2) == 1 && |
| 173 | IMATH_INTERNAL_NAMESPACE::mods (2, 2) == 0); |
| 174 | assert ( |
| 175 | IMATH_INTERNAL_NAMESPACE::divs (1, 2) == 0 && |
| 176 | IMATH_INTERNAL_NAMESPACE::mods (1, 2) == 1); |
| 177 | assert ( |
| 178 | IMATH_INTERNAL_NAMESPACE::divs (0, 2) == 0 && |
| 179 | IMATH_INTERNAL_NAMESPACE::mods (0, 2) == 0); |
| 180 | assert ( |
| 181 | IMATH_INTERNAL_NAMESPACE::divs (-1, 2) == 0 && |
| 182 | IMATH_INTERNAL_NAMESPACE::mods (-1, 2) == -1); |