OLD | NEW |
1 /* | 1 /* |
2 * Copyright 2013 Google Inc. | 2 * Copyright 2013 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 "gm.h" | 8 #include "gm.h" |
9 #include "SkColor.h" | 9 #include "SkColor.h" |
10 #include "SkColorSpaceXform.h" | 10 #include "SkColorSpaceXform.h" |
(...skipping 19 matching lines...) Expand all Loading... |
30 } | 30 } |
31 | 31 |
32 static constexpr float kWideGamutRGB_toXYZD50[]{ | 32 static constexpr float kWideGamutRGB_toXYZD50[]{ |
33 0.7161046f, 0.1009296f, 0.1471858f, | 33 0.7161046f, 0.1009296f, 0.1471858f, |
34 0.2581874f, 0.7249378f, 0.0168748f, | 34 0.2581874f, 0.7249378f, 0.0168748f, |
35 0.0000000f, 0.0517813f, 0.7734287f, | 35 0.0000000f, 0.0517813f, 0.7734287f, |
36 }; | 36 }; |
37 | 37 |
38 SkMatrix44 wideGamut(SkMatrix44::kUninitialized_Constructor); | 38 SkMatrix44 wideGamut(SkMatrix44::kUninitialized_Constructor); |
39 wideGamut.set3x3RowMajorf(kWideGamutRGB_toXYZD50); | 39 wideGamut.set3x3RowMajorf(kWideGamutRGB_toXYZD50); |
40 std::unique_ptr<SkColorSpaceXform> xform = SkColorSpaceXform::New( | 40 |
41 SkColorSpace::NewNamed(SkColorSpace::kSRGB_Named), | 41 sk_sp<SkColorSpace> srcSpace = SkColorSpace::NewNamed(SkColorSpace::kSRG
B_Named); |
42 SkColorSpace::NewRGB(SkColorSpace::kLinear_RenderTargetGamma, wi
deGamut)); | 42 sk_sp<SkColorSpace> dstSpace = |
| 43 SkColorSpace::NewRGB(SkColorSpace::kLinear_RenderTargetGamma, wi
deGamut); |
| 44 std::unique_ptr<SkColorSpaceXform> xform = SkColorSpaceXform::New(srcSpa
ce.get(), |
| 45 dstSpa
ce.get()); |
43 | 46 |
44 xform->apply(fWideGamutColors, colors, kNumColors, | 47 xform->apply(fWideGamutColors, colors, kNumColors, |
45 SkColorSpaceXform::kRGBA_F32_ColorFormat, kOpaque_SkAlphaTy
pe); | 48 SkColorSpaceXform::kRGBA_F32_ColorFormat, kOpaque_SkAlphaTy
pe); |
46 } | 49 } |
47 | 50 |
48 SkString onShortName() override { | 51 SkString onShortName() override { |
49 return SkString("colorspacexform"); | 52 return SkString("colorspacexform"); |
50 } | 53 } |
51 | 54 |
52 SkISize onISize() override { | 55 SkISize onISize() override { |
(...skipping 26 matching lines...) Expand all Loading... |
79 private: | 82 private: |
80 static constexpr int kNumColors = 10; | 83 static constexpr int kNumColors = 10; |
81 | 84 |
82 SkColor4f fSRGBColors[kNumColors]; | 85 SkColor4f fSRGBColors[kNumColors]; |
83 SkColor4f fWideGamutColors[kNumColors]; | 86 SkColor4f fWideGamutColors[kNumColors]; |
84 | 87 |
85 typedef skiagm::GM INHERITED; | 88 typedef skiagm::GM INHERITED; |
86 }; | 89 }; |
87 | 90 |
88 DEF_GM(return new ColorSpaceXformGM;) | 91 DEF_GM(return new ColorSpaceXformGM;) |
OLD | NEW |