| OLD | NEW |
| 1 | 1 |
| 2 /* | 2 /* |
| 3 * Copyright 2014 Google Inc. | 3 * Copyright 2014 Google Inc. |
| 4 * | 4 * |
| 5 * Use of this source code is governed by a BSD-style license that can be | 5 * Use of this source code is governed by a BSD-style license that can be |
| 6 * found in the LICENSE file. | 6 * found in the LICENSE file. |
| 7 */ | 7 */ |
| 8 | 8 |
| 9 #include "SkTwoPointConicalGradient_gpu.h" | 9 #include "SkTwoPointConicalGradient_gpu.h" |
| 10 | 10 |
| (...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 73 virtual const GrBackendFragmentProcessorFactory& getFactory() const SK_OVERR
IDE; | 73 virtual const GrBackendFragmentProcessorFactory& getFactory() const SK_OVERR
IDE; |
| 74 | 74 |
| 75 // The radial gradient parameters can collapse to a linear (instead of quadr
atic) equation. | 75 // The radial gradient parameters can collapse to a linear (instead of quadr
atic) equation. |
| 76 SkScalar center() const { return fCenterX1; } | 76 SkScalar center() const { return fCenterX1; } |
| 77 SkScalar diffRadius() const { return fDiffRadius; } | 77 SkScalar diffRadius() const { return fDiffRadius; } |
| 78 SkScalar radius() const { return fRadius0; } | 78 SkScalar radius() const { return fRadius0; } |
| 79 | 79 |
| 80 typedef GLEdge2PtConicalEffect GLProcessor; | 80 typedef GLEdge2PtConicalEffect GLProcessor; |
| 81 | 81 |
| 82 private: | 82 private: |
| 83 virtual bool onIsEqual(const GrProcessor& sBase) const SK_OVERRIDE { | 83 virtual bool onIsEqual(const GrFragmentProcessor& sBase) const SK_OVERRIDE { |
| 84 const Edge2PtConicalEffect& s = sBase.cast<Edge2PtConicalEffect>(); | 84 const Edge2PtConicalEffect& s = sBase.cast<Edge2PtConicalEffect>(); |
| 85 return (INHERITED::onIsEqual(sBase) && | 85 return (INHERITED::onIsEqual(sBase) && |
| 86 this->fCenterX1 == s.fCenterX1 && | 86 this->fCenterX1 == s.fCenterX1 && |
| 87 this->fRadius0 == s.fRadius0 && | 87 this->fRadius0 == s.fRadius0 && |
| 88 this->fDiffRadius == s.fDiffRadius); | 88 this->fDiffRadius == s.fDiffRadius); |
| 89 } | 89 } |
| 90 | 90 |
| 91 Edge2PtConicalEffect(GrContext* ctx, | 91 Edge2PtConicalEffect(GrContext* ctx, |
| 92 const SkTwoPointConicalGradient& shader, | 92 const SkTwoPointConicalGradient& shader, |
| 93 const SkMatrix& matrix, | 93 const SkMatrix& matrix, |
| (...skipping 293 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 387 | 387 |
| 388 static const char* Name() { return "Two-Point Conical Gradient Focal Outside
"; } | 388 static const char* Name() { return "Two-Point Conical Gradient Focal Outside
"; } |
| 389 virtual const GrBackendFragmentProcessorFactory& getFactory() const SK_OVERR
IDE; | 389 virtual const GrBackendFragmentProcessorFactory& getFactory() const SK_OVERR
IDE; |
| 390 | 390 |
| 391 bool isFlipped() const { return fIsFlipped; } | 391 bool isFlipped() const { return fIsFlipped; } |
| 392 SkScalar focal() const { return fFocalX; } | 392 SkScalar focal() const { return fFocalX; } |
| 393 | 393 |
| 394 typedef GLFocalOutside2PtConicalEffect GLProcessor; | 394 typedef GLFocalOutside2PtConicalEffect GLProcessor; |
| 395 | 395 |
| 396 private: | 396 private: |
| 397 virtual bool onIsEqual(const GrProcessor& sBase) const SK_OVERRIDE { | 397 virtual bool onIsEqual(const GrFragmentProcessor& sBase) const SK_OVERRIDE { |
| 398 const FocalOutside2PtConicalEffect& s = sBase.cast<FocalOutside2PtConica
lEffect>(); | 398 const FocalOutside2PtConicalEffect& s = sBase.cast<FocalOutside2PtConica
lEffect>(); |
| 399 return (INHERITED::onIsEqual(sBase) && | 399 return (INHERITED::onIsEqual(sBase) && |
| 400 this->fFocalX == s.fFocalX && | 400 this->fFocalX == s.fFocalX && |
| 401 this->fIsFlipped == s.fIsFlipped); | 401 this->fIsFlipped == s.fIsFlipped); |
| 402 } | 402 } |
| 403 | 403 |
| 404 FocalOutside2PtConicalEffect(GrContext* ctx, | 404 FocalOutside2PtConicalEffect(GrContext* ctx, |
| 405 const SkTwoPointConicalGradient& shader, | 405 const SkTwoPointConicalGradient& shader, |
| 406 const SkMatrix& matrix, | 406 const SkMatrix& matrix, |
| 407 SkShader::TileMode tm, | 407 SkShader::TileMode tm, |
| (...skipping 190 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 598 virtual ~FocalInside2PtConicalEffect() {} | 598 virtual ~FocalInside2PtConicalEffect() {} |
| 599 | 599 |
| 600 static const char* Name() { return "Two-Point Conical Gradient Focal Inside"
; } | 600 static const char* Name() { return "Two-Point Conical Gradient Focal Inside"
; } |
| 601 virtual const GrBackendFragmentProcessorFactory& getFactory() const SK_OVERR
IDE; | 601 virtual const GrBackendFragmentProcessorFactory& getFactory() const SK_OVERR
IDE; |
| 602 | 602 |
| 603 SkScalar focal() const { return fFocalX; } | 603 SkScalar focal() const { return fFocalX; } |
| 604 | 604 |
| 605 typedef GLFocalInside2PtConicalEffect GLProcessor; | 605 typedef GLFocalInside2PtConicalEffect GLProcessor; |
| 606 | 606 |
| 607 private: | 607 private: |
| 608 virtual bool onIsEqual(const GrProcessor& sBase) const SK_OVERRIDE { | 608 virtual bool onIsEqual(const GrFragmentProcessor& sBase) const SK_OVERRIDE { |
| 609 const FocalInside2PtConicalEffect& s = sBase.cast<FocalInside2PtConicalE
ffect>(); | 609 const FocalInside2PtConicalEffect& s = sBase.cast<FocalInside2PtConicalE
ffect>(); |
| 610 return (INHERITED::onIsEqual(sBase) && | 610 return (INHERITED::onIsEqual(sBase) && |
| 611 this->fFocalX == s.fFocalX); | 611 this->fFocalX == s.fFocalX); |
| 612 } | 612 } |
| 613 | 613 |
| 614 FocalInside2PtConicalEffect(GrContext* ctx, | 614 FocalInside2PtConicalEffect(GrContext* ctx, |
| 615 const SkTwoPointConicalGradient& shader, | 615 const SkTwoPointConicalGradient& shader, |
| 616 const SkMatrix& matrix, | 616 const SkMatrix& matrix, |
| 617 SkShader::TileMode tm, | 617 SkShader::TileMode tm, |
| 618 SkScalar focalX) | 618 SkScalar focalX) |
| (...skipping 221 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 840 | 840 |
| 841 SkScalar centerX() const { return fInfo.fCenterEnd.fX; } | 841 SkScalar centerX() const { return fInfo.fCenterEnd.fX; } |
| 842 SkScalar centerY() const { return fInfo.fCenterEnd.fY; } | 842 SkScalar centerY() const { return fInfo.fCenterEnd.fY; } |
| 843 SkScalar A() const { return fInfo.fA; } | 843 SkScalar A() const { return fInfo.fA; } |
| 844 SkScalar B() const { return fInfo.fB; } | 844 SkScalar B() const { return fInfo.fB; } |
| 845 SkScalar C() const { return fInfo.fC; } | 845 SkScalar C() const { return fInfo.fC; } |
| 846 | 846 |
| 847 typedef GLCircleInside2PtConicalEffect GLProcessor; | 847 typedef GLCircleInside2PtConicalEffect GLProcessor; |
| 848 | 848 |
| 849 private: | 849 private: |
| 850 virtual bool onIsEqual(const GrProcessor& sBase) const SK_OVERRIDE { | 850 virtual bool onIsEqual(const GrFragmentProcessor& sBase) const SK_OVERRIDE { |
| 851 const CircleInside2PtConicalEffect& s = sBase.cast<CircleInside2PtConica
lEffect>(); | 851 const CircleInside2PtConicalEffect& s = sBase.cast<CircleInside2PtConica
lEffect>(); |
| 852 return (INHERITED::onIsEqual(sBase) && | 852 return (INHERITED::onIsEqual(sBase) && |
| 853 this->fInfo.fCenterEnd == s.fInfo.fCenterEnd && | 853 this->fInfo.fCenterEnd == s.fInfo.fCenterEnd && |
| 854 this->fInfo.fA == s.fInfo.fA && | 854 this->fInfo.fA == s.fInfo.fA && |
| 855 this->fInfo.fB == s.fInfo.fB && | 855 this->fInfo.fB == s.fInfo.fB && |
| 856 this->fInfo.fC == s.fInfo.fC); | 856 this->fInfo.fC == s.fInfo.fC); |
| 857 } | 857 } |
| 858 | 858 |
| 859 CircleInside2PtConicalEffect(GrContext* ctx, | 859 CircleInside2PtConicalEffect(GrContext* ctx, |
| 860 const SkTwoPointConicalGradient& shader, | 860 const SkTwoPointConicalGradient& shader, |
| (...skipping 198 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1059 SkScalar centerY() const { return fInfo.fCenterEnd.fY; } | 1059 SkScalar centerY() const { return fInfo.fCenterEnd.fY; } |
| 1060 SkScalar A() const { return fInfo.fA; } | 1060 SkScalar A() const { return fInfo.fA; } |
| 1061 SkScalar B() const { return fInfo.fB; } | 1061 SkScalar B() const { return fInfo.fB; } |
| 1062 SkScalar C() const { return fInfo.fC; } | 1062 SkScalar C() const { return fInfo.fC; } |
| 1063 SkScalar tLimit() const { return fTLimit; } | 1063 SkScalar tLimit() const { return fTLimit; } |
| 1064 bool isFlipped() const { return fIsFlipped; } | 1064 bool isFlipped() const { return fIsFlipped; } |
| 1065 | 1065 |
| 1066 typedef GLCircleOutside2PtConicalEffect GLProcessor; | 1066 typedef GLCircleOutside2PtConicalEffect GLProcessor; |
| 1067 | 1067 |
| 1068 private: | 1068 private: |
| 1069 virtual bool onIsEqual(const GrProcessor& sBase) const SK_OVERRIDE { | 1069 virtual bool onIsEqual(const GrFragmentProcessor& sBase) const SK_OVERRIDE { |
| 1070 const CircleOutside2PtConicalEffect& s = sBase.cast<CircleOutside2PtConi
calEffect>(); | 1070 const CircleOutside2PtConicalEffect& s = sBase.cast<CircleOutside2PtConi
calEffect>(); |
| 1071 return (INHERITED::onIsEqual(sBase) && | 1071 return (INHERITED::onIsEqual(sBase) && |
| 1072 this->fInfo.fCenterEnd == s.fInfo.fCenterEnd && | 1072 this->fInfo.fCenterEnd == s.fInfo.fCenterEnd && |
| 1073 this->fInfo.fA == s.fInfo.fA && | 1073 this->fInfo.fA == s.fInfo.fA && |
| 1074 this->fInfo.fB == s.fInfo.fB && | 1074 this->fInfo.fB == s.fInfo.fB && |
| 1075 this->fInfo.fC == s.fInfo.fC && | 1075 this->fInfo.fC == s.fInfo.fC && |
| 1076 this->fTLimit == s.fTLimit && | 1076 this->fTLimit == s.fTLimit && |
| 1077 this->fIsFlipped == s.fIsFlipped); | 1077 this->fIsFlipped == s.fIsFlipped); |
| 1078 } | 1078 } |
| 1079 | 1079 |
| (...skipping 255 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1335 return CircleInside2PtConicalEffect::Create(ctx, shader, matrix, tm, inf
o); | 1335 return CircleInside2PtConicalEffect::Create(ctx, shader, matrix, tm, inf
o); |
| 1336 } else if (type == kEdge_ConicalType) { | 1336 } else if (type == kEdge_ConicalType) { |
| 1337 set_matrix_edge_conical(shader, &matrix); | 1337 set_matrix_edge_conical(shader, &matrix); |
| 1338 return Edge2PtConicalEffect::Create(ctx, shader, matrix, tm); | 1338 return Edge2PtConicalEffect::Create(ctx, shader, matrix, tm); |
| 1339 } else { | 1339 } else { |
| 1340 return CircleOutside2PtConicalEffect::Create(ctx, shader, matrix, tm, in
fo); | 1340 return CircleOutside2PtConicalEffect::Create(ctx, shader, matrix, tm, in
fo); |
| 1341 } | 1341 } |
| 1342 } | 1342 } |
| 1343 | 1343 |
| 1344 #endif | 1344 #endif |
| OLD | NEW |