| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright 2011 Google Inc. | 2 * Copyright 2011 Google Inc. |
| 3 * | 3 * |
| 4 * Use of this source code is governed by a BSD-style license that can be | 4 * Use of this source code is governed by a BSD-style license that can be |
| 5 * found in the LICENSE file. | 5 * found in the LICENSE file. |
| 6 */ | 6 */ |
| 7 | 7 |
| 8 #include "SkMath.h" | 8 #include "SkMath.h" |
| 9 #include "SkMatrix.h" | 9 #include "SkMatrix.h" |
| 10 #include "SkMatrixUtils.h" | 10 #include "SkMatrixUtils.h" |
| (...skipping 187 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 198 REPORTER_ASSERT(reporter, SK_Scalar1 == translate.getMinScale()); | 198 REPORTER_ASSERT(reporter, SK_Scalar1 == translate.getMinScale()); |
| 199 REPORTER_ASSERT(reporter, SK_Scalar1 == translate.getMaxScale()); | 199 REPORTER_ASSERT(reporter, SK_Scalar1 == translate.getMaxScale()); |
| 200 success = translate.getMinMaxScales(scales); | 200 success = translate.getMinMaxScales(scales); |
| 201 REPORTER_ASSERT(reporter, success && SK_Scalar1 == scales[0] && SK_Scalar1 =
= scales[1]); | 201 REPORTER_ASSERT(reporter, success && SK_Scalar1 == scales[0] && SK_Scalar1 =
= scales[1]); |
| 202 | 202 |
| 203 SkMatrix perspX; | 203 SkMatrix perspX; |
| 204 perspX.reset(); | 204 perspX.reset(); |
| 205 perspX.setPerspX(SK_Scalar1 / 1000); | 205 perspX.setPerspX(SK_Scalar1 / 1000); |
| 206 REPORTER_ASSERT(reporter, -SK_Scalar1 == perspX.getMinScale()); | 206 REPORTER_ASSERT(reporter, -SK_Scalar1 == perspX.getMinScale()); |
| 207 REPORTER_ASSERT(reporter, -SK_Scalar1 == perspX.getMaxScale()); | 207 REPORTER_ASSERT(reporter, -SK_Scalar1 == perspX.getMaxScale()); |
| 208 // Verify that getMinMaxScales() doesn't update the scales array on failure. | |
| 209 scales[0] = -5; | |
| 210 scales[1] = -5; | |
| 211 success = perspX.getMinMaxScales(scales); | 208 success = perspX.getMinMaxScales(scales); |
| 212 REPORTER_ASSERT(reporter, !success && -5 * SK_Scalar1 == scales[0] && -5 * S
K_Scalar1 == scales[1]); | 209 REPORTER_ASSERT(reporter, !success); |
| 210 |
| 211 // skbug.com/4718 |
| 212 SkMatrix big; |
| 213 big.setAll(2.39394089e+36f, 8.85347779e+36f, 9.26526204e+36f, |
| 214 3.9159619e+36f, 1.44823453e+37f, 1.51559342e+37f, |
| 215 0.f, 0.f, 1.f); |
| 216 REPORTER_ASSERT(reporter, -SK_Scalar1 == perspX.getMinScale()); |
| 217 REPORTER_ASSERT(reporter, -SK_Scalar1 == perspX.getMaxScale()); |
| 218 success = big.getMinMaxScales(scales); |
| 219 REPORTER_ASSERT(reporter, !success); |
| 213 | 220 |
| 214 SkMatrix perspY; | 221 SkMatrix perspY; |
| 215 perspY.reset(); | 222 perspY.reset(); |
| 216 perspY.setPerspY(-SK_Scalar1 / 500); | 223 perspY.setPerspY(-SK_Scalar1 / 500); |
| 217 REPORTER_ASSERT(reporter, -SK_Scalar1 == perspY.getMinScale()); | 224 REPORTER_ASSERT(reporter, -SK_Scalar1 == perspY.getMinScale()); |
| 218 REPORTER_ASSERT(reporter, -SK_Scalar1 == perspY.getMaxScale()); | 225 REPORTER_ASSERT(reporter, -SK_Scalar1 == perspY.getMaxScale()); |
| 219 scales[0] = -5; | 226 scales[0] = -5; |
| 220 scales[1] = -5; | 227 scales[1] = -5; |
| 221 success = perspY.getMinMaxScales(scales); | 228 success = perspY.getMinMaxScales(scales); |
| 222 REPORTER_ASSERT(reporter, !success && -5 * SK_Scalar1 == scales[0] && -5 * S
K_Scalar1 == scales[1]); | 229 REPORTER_ASSERT(reporter, !success && -5 * SK_Scalar1 == scales[0] && -5 * S
K_Scalar1 == scales[1]); |
| (...skipping 716 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 939 a.setTranslate(10, 20); | 946 a.setTranslate(10, 20); |
| 940 | 947 |
| 941 SkMatrix b; | 948 SkMatrix b; |
| 942 b.setScale(3, 5); | 949 b.setScale(3, 5); |
| 943 | 950 |
| 944 SkMatrix expected; | 951 SkMatrix expected; |
| 945 expected.setConcat(a,b); | 952 expected.setConcat(a,b); |
| 946 | 953 |
| 947 REPORTER_ASSERT(r, expected == SkMatrix::Concat(a, b)); | 954 REPORTER_ASSERT(r, expected == SkMatrix::Concat(a, b)); |
| 948 } | 955 } |
| OLD | NEW |