OLD | NEW |
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 "GrClipMaskManager.h" | 8 #include "GrClipMaskManager.h" |
9 #include "GrAAConvexPathRenderer.h" | 9 #include "GrAAConvexPathRenderer.h" |
10 #include "GrAAHairLinePathRenderer.h" | 10 #include "GrAAHairLinePathRenderer.h" |
(...skipping 407 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
418 return SkToBool(*pr); | 418 return SkToBool(*pr); |
419 } | 419 } |
420 } | 420 } |
421 | 421 |
422 void GrClipMaskManager::mergeMask(GrDrawState* drawState, | 422 void GrClipMaskManager::mergeMask(GrDrawState* drawState, |
423 GrTexture* dstMask, | 423 GrTexture* dstMask, |
424 GrTexture* srcMask, | 424 GrTexture* srcMask, |
425 SkRegion::Op op, | 425 SkRegion::Op op, |
426 const SkIRect& dstBound, | 426 const SkIRect& dstBound, |
427 const SkIRect& srcBound) { | 427 const SkIRect& srcBound) { |
428 SkAssertResult(drawState->setIdentityViewMatrix()); | |
429 | |
430 drawState->setRenderTarget(dstMask->asRenderTarget()); | 428 drawState->setRenderTarget(dstMask->asRenderTarget()); |
431 | 429 |
432 // We want to invert the coverage here | 430 // We want to invert the coverage here |
433 set_coverage_drawing_xpf(op, false, drawState); | 431 set_coverage_drawing_xpf(op, false, drawState); |
434 | 432 |
435 SkMatrix sampleM; | 433 SkMatrix sampleM; |
436 sampleM.setIDiv(srcMask->width(), srcMask->height()); | 434 sampleM.setIDiv(srcMask->width(), srcMask->height()); |
437 | 435 |
438 drawState->addCoverageProcessor( | 436 drawState->addCoverageProcessor( |
439 GrTextureDomainEffect::Create(srcMask, | 437 GrTextureDomainEffect::Create(srcMask, |
(...skipping 618 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1058 } | 1056 } |
1059 | 1057 |
1060 void GrClipMaskManager::adjustPathStencilParams(const GrStencilBuffer* stencilBu
ffer, | 1058 void GrClipMaskManager::adjustPathStencilParams(const GrStencilBuffer* stencilBu
ffer, |
1061 GrStencilSettings* settings) { | 1059 GrStencilSettings* settings) { |
1062 // TODO: dynamically attach a stencil buffer | 1060 // TODO: dynamically attach a stencil buffer |
1063 if (stencilBuffer) { | 1061 if (stencilBuffer) { |
1064 int stencilBits = stencilBuffer->bits(); | 1062 int stencilBits = stencilBuffer->bits(); |
1065 this->adjustStencilParams(settings, fClipMode, stencilBits); | 1063 this->adjustStencilParams(settings, fClipMode, stencilBits); |
1066 } | 1064 } |
1067 } | 1065 } |
OLD | NEW |