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 "SkMatrix44.h" | 8 #include "SkMatrix44.h" |
9 #include "Test.h" | 9 #include "Test.h" |
10 | 10 |
(...skipping 743 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
754 transform.preConcat(transform2); | 754 transform.preConcat(transform2); |
755 test(false, reporter, transform); | 755 test(false, reporter, transform); |
756 | 756 |
757 transform.setIdentity(); | 757 transform.setIdentity(); |
758 transform.set(3, 2, -0.1); // Perspective depth 10 | 758 transform.set(3, 2, -0.1); // Perspective depth 10 |
759 transform2.setRotateDegreesAbout(0.0, 0.0, 1.0, 90.0); | 759 transform2.setRotateDegreesAbout(0.0, 0.0, 1.0, 90.0); |
760 transform.preConcat(transform2); | 760 transform.preConcat(transform2); |
761 test(true, reporter, transform); | 761 test(true, reporter, transform); |
762 } | 762 } |
763 | 763 |
| 764 // just want to exercise the various converters for MScalar |
| 765 static void test_toint(skiatest::Reporter* reporter) { |
| 766 SkMatrix44 mat(SkMatrix44::kUninitialized_Constructor); |
| 767 mat.setScale(3, 3, 3); |
| 768 |
| 769 SkMScalar sum = SkMScalarFloor(mat.get(0, 0)) + |
| 770 SkMScalarRound(mat.get(1, 0)) + |
| 771 SkMScalarCeil(mat.get(2, 0)); |
| 772 int isum = SkMScalarFloorToInt(mat.get(0, 1)) + |
| 773 SkMScalarRoundToInt(mat.get(1, 2)) + |
| 774 SkMScalarCeilToInt(mat.get(2, 3)); |
| 775 REPORTER_ASSERT(reporter, sum >= 0); |
| 776 REPORTER_ASSERT(reporter, isum >= 0); |
| 777 REPORTER_ASSERT(reporter, static_cast<SkMScalar>(isum) == SkIntToMScalar(isu
m)); |
| 778 } |
764 | 779 |
765 DEF_TEST(Matrix44, reporter) { | 780 DEF_TEST(Matrix44, reporter) { |
766 SkMatrix44 mat(SkMatrix44::kUninitialized_Constructor); | 781 SkMatrix44 mat(SkMatrix44::kUninitialized_Constructor); |
767 SkMatrix44 inverse(SkMatrix44::kUninitialized_Constructor); | 782 SkMatrix44 inverse(SkMatrix44::kUninitialized_Constructor); |
768 SkMatrix44 iden1(SkMatrix44::kUninitialized_Constructor); | 783 SkMatrix44 iden1(SkMatrix44::kUninitialized_Constructor); |
769 SkMatrix44 iden2(SkMatrix44::kUninitialized_Constructor); | 784 SkMatrix44 iden2(SkMatrix44::kUninitialized_Constructor); |
770 SkMatrix44 rot(SkMatrix44::kUninitialized_Constructor); | 785 SkMatrix44 rot(SkMatrix44::kUninitialized_Constructor); |
771 | 786 |
772 mat.setTranslate(1, 1, 1); | 787 mat.setTranslate(1, 1, 1); |
773 mat.invert(&inverse); | 788 mat.invert(&inverse); |
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
862 test_invert(reporter); | 877 test_invert(reporter); |
863 test_transpose(reporter); | 878 test_transpose(reporter); |
864 test_get_set_double(reporter); | 879 test_get_set_double(reporter); |
865 test_set_row_col_major(reporter); | 880 test_set_row_col_major(reporter); |
866 test_translate(reporter); | 881 test_translate(reporter); |
867 test_scale(reporter); | 882 test_scale(reporter); |
868 test_map2(reporter); | 883 test_map2(reporter); |
869 test_3x3_conversion(reporter); | 884 test_3x3_conversion(reporter); |
870 test_has_perspective(reporter); | 885 test_has_perspective(reporter); |
871 test_preserves_2d_axis_alignment(reporter); | 886 test_preserves_2d_axis_alignment(reporter); |
| 887 test_toint(reporter); |
872 } | 888 } |
OLD | NEW |