| 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 |