| 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 | 9 |
| 10 static inline bool eq4(const SkMScalar* SK_RESTRICT a, | 10 static inline bool eq4(const SkMScalar* SK_RESTRICT a, |
| (...skipping 816 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 827 dst4[1] = mat[0][1] * sx + mat[1][1] * sy + mat[3][1]; | 827 dst4[1] = mat[0][1] * sx + mat[1][1] * sy + mat[3][1]; |
| 828 dst4[2] = mat[0][2] * sx + mat[1][2] * sy + mat[3][2]; | 828 dst4[2] = mat[0][2] * sx + mat[1][2] * sy + mat[3][2]; |
| 829 dst4[3] = 1; | 829 dst4[3] = 1; |
| 830 src2 += 2; | 830 src2 += 2; |
| 831 dst4 += 4; | 831 dst4 += 4; |
| 832 } | 832 } |
| 833 } | 833 } |
| 834 | 834 |
| 835 static void map2_pf(const SkMScalar mat[][4], const float* SK_RESTRICT src2, | 835 static void map2_pf(const SkMScalar mat[][4], const float* SK_RESTRICT src2, |
| 836 int count, float* SK_RESTRICT dst4) { | 836 int count, float* SK_RESTRICT dst4) { |
| 837 double r; | |
| 838 for (int n = 0; n < count; ++n) { | 837 for (int n = 0; n < count; ++n) { |
| 839 double sx = src2[0]; | 838 float sx = src2[0]; |
| 840 double sy = src2[1]; | 839 float sy = src2[1]; |
| 841 for (int i = 0; i < 4; i++) { | 840 for (int i = 0; i < 4; i++) { |
| 842 r = mat[0][i] * sx + mat[1][i] * sy + mat[3][i]; | 841 dst4[i] = mat[0][i] * sx + mat[1][i] * sy + mat[3][i]; |
| 843 dst4[i] = SkMScalarToFloat(r); | |
| 844 } | 842 } |
| 845 src2 += 2; | 843 src2 += 2; |
| 846 dst4 += 4; | 844 dst4 += 4; |
| 847 } | 845 } |
| 848 } | 846 } |
| 849 | 847 |
| 850 static void map2_pd(const SkMScalar mat[][4], const double* SK_RESTRICT src2, | 848 static void map2_pd(const SkMScalar mat[][4], const double* SK_RESTRICT src2, |
| 851 int count, double* SK_RESTRICT dst4) { | 849 int count, double* SK_RESTRICT dst4) { |
| 852 for (int n = 0; n < count; ++n) { | 850 for (int n = 0; n < count; ++n) { |
| 853 double sx = src2[0]; | 851 double sx = src2[0]; |
| (...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 947 dst[SkMatrix::kMScaleX] = SkMScalarToScalar(fMat[0][0]); | 945 dst[SkMatrix::kMScaleX] = SkMScalarToScalar(fMat[0][0]); |
| 948 dst[SkMatrix::kMSkewX] = SkMScalarToScalar(fMat[1][0]); | 946 dst[SkMatrix::kMSkewX] = SkMScalarToScalar(fMat[1][0]); |
| 949 dst[SkMatrix::kMTransX] = SkMScalarToScalar(fMat[3][0]); | 947 dst[SkMatrix::kMTransX] = SkMScalarToScalar(fMat[3][0]); |
| 950 | 948 |
| 951 dst[SkMatrix::kMSkewY] = SkMScalarToScalar(fMat[0][1]); | 949 dst[SkMatrix::kMSkewY] = SkMScalarToScalar(fMat[0][1]); |
| 952 dst[SkMatrix::kMScaleY] = SkMScalarToScalar(fMat[1][1]); | 950 dst[SkMatrix::kMScaleY] = SkMScalarToScalar(fMat[1][1]); |
| 953 dst[SkMatrix::kMTransY] = SkMScalarToScalar(fMat[3][1]); | 951 dst[SkMatrix::kMTransY] = SkMScalarToScalar(fMat[3][1]); |
| 954 | 952 |
| 955 return dst; | 953 return dst; |
| 956 } | 954 } |
| OLD | NEW |