Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(48)

Side by Side Diff: src/effects/gradients/SkTwoPointConicalGradient.cpp

Issue 2337313002: (Some) gradients are gamma and gamut correct on GPU (Closed)
Patch Set: Rebase Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright 2012 Google Inc. 2 * Copyright 2012 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 "SkTwoPointConicalGradient.h" 8 #include "SkTwoPointConicalGradient.h"
9 #include "SkTwoPointConicalGradient_gpu.h" 9 #include "SkTwoPointConicalGradient_gpu.h"
10 10
(...skipping 342 matching lines...) Expand 10 before | Expand all | Expand 10 after
353 } 353 }
354 354
355 #if SK_SUPPORT_GPU 355 #if SK_SUPPORT_GPU
356 356
357 #include "SkGr.h" 357 #include "SkGr.h"
358 358
359 sk_sp<GrFragmentProcessor> SkTwoPointConicalGradient::asFragmentProcessor( 359 sk_sp<GrFragmentProcessor> SkTwoPointConicalGradient::asFragmentProcessor(
360 const AsFPArgs& args) const { 360 const AsFPArgs& args) const {
361 SkASSERT(args.fContext); 361 SkASSERT(args.fContext);
362 SkASSERT(fPtsToUnit.isIdentity()); 362 SkASSERT(fPtsToUnit.isIdentity());
363 sk_sp<GrColorSpaceXform> colorSpaceXform = GrColorSpaceXform::Make(fColorSpa ce.get(),
364 args.fDst ColorSpace);
363 sk_sp<GrFragmentProcessor> inner(Gr2PtConicalGradientEffect::Make( 365 sk_sp<GrFragmentProcessor> inner(Gr2PtConicalGradientEffect::Make(
364 GrGradientEffect::CreateArgs(args.fContext, this, args.fLocalMatrix, fTi leMode))); 366 GrGradientEffect::CreateArgs(args.fContext, this, args.fLocalMatrix, fTi leMode,
367 std::move(colorSpaceXform), SkToBool(args.f DstColorSpace))));
365 return GrFragmentProcessor::MulOutputByInputAlpha(std::move(inner)); 368 return GrFragmentProcessor::MulOutputByInputAlpha(std::move(inner));
366 } 369 }
367 370
368 #endif 371 #endif
369 372
370 #ifndef SK_IGNORE_TO_STRING 373 #ifndef SK_IGNORE_TO_STRING
371 void SkTwoPointConicalGradient::toString(SkString* str) const { 374 void SkTwoPointConicalGradient::toString(SkString* str) const {
372 str->append("SkTwoPointConicalGradient: ("); 375 str->append("SkTwoPointConicalGradient: (");
373 376
374 str->append("center1: ("); 377 str->append("center1: (");
(...skipping 10 matching lines...) Expand all
385 str->appendScalar(fCenter2.fY); 388 str->appendScalar(fCenter2.fY);
386 str->append(") radius2: "); 389 str->append(") radius2: ");
387 str->appendScalar(fRadius2); 390 str->appendScalar(fRadius2);
388 str->append(" "); 391 str->append(" ");
389 392
390 this->INHERITED::toString(str); 393 this->INHERITED::toString(str);
391 394
392 str->append(")"); 395 str->append(")");
393 } 396 }
394 #endif 397 #endif
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698