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

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

Issue 1213623022: fix up test create functions (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: more cleanup Created 5 years, 5 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
« no previous file with comments | « src/effects/gradients/SkSweepGradient.cpp ('k') | src/gpu/GrAAConvexPathRenderer.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 169 matching lines...) Expand 10 before | Expand all | Expand 10 after
180 180
181 GrGLFragmentProcessor* Edge2PtConicalEffect::createGLInstance() const { 181 GrGLFragmentProcessor* Edge2PtConicalEffect::createGLInstance() const {
182 return SkNEW_ARGS(GLEdge2PtConicalEffect, (*this)); 182 return SkNEW_ARGS(GLEdge2PtConicalEffect, (*this));
183 } 183 }
184 184
185 GR_DEFINE_FRAGMENT_PROCESSOR_TEST(Edge2PtConicalEffect); 185 GR_DEFINE_FRAGMENT_PROCESSOR_TEST(Edge2PtConicalEffect);
186 186
187 /* 187 /*
188 * All Two point conical gradient test create functions may occasionally create edge case shaders 188 * All Two point conical gradient test create functions may occasionally create edge case shaders
189 */ 189 */
190 GrFragmentProcessor* Edge2PtConicalEffect::TestCreate(SkRandom* random, 190 GrFragmentProcessor* Edge2PtConicalEffect::TestCreate(GrProcessorTestData* d) {
191 GrContext* context, 191 SkPoint center1 = {d->fRandom->nextUScalar1(), d->fRandom->nextUScalar1()};
192 const GrCaps&, 192 SkScalar radius1 = d->fRandom->nextUScalar1();
193 GrTexture**) {
194 SkPoint center1 = {random->nextUScalar1(), random->nextUScalar1()};
195 SkScalar radius1 = random->nextUScalar1();
196 SkPoint center2; 193 SkPoint center2;
197 SkScalar radius2; 194 SkScalar radius2;
198 do { 195 do {
199 center2.set(random->nextUScalar1(), random->nextUScalar1()); 196 center2.set(d->fRandom->nextUScalar1(), d->fRandom->nextUScalar1());
200 // If the circles are identical the factory will give us an empty shader . 197 // If the circles are identical the factory will give us an empty shader .
201 // This will happen if we pick identical centers 198 // This will happen if we pick identical centers
202 } while (center1 == center2); 199 } while (center1 == center2);
203 200
204 // Below makes sure that circle one is contained within circle two 201 // Below makes sure that circle one is contained within circle two
205 // and both circles are touching on an edge 202 // and both circles are touching on an edge
206 SkPoint diff = center2 - center1; 203 SkPoint diff = center2 - center1;
207 SkScalar diffLen = diff.length(); 204 SkScalar diffLen = diff.length();
208 radius2 = radius1 + diffLen; 205 radius2 = radius1 + diffLen;
209 206
210 SkColor colors[kMaxRandomGradientColors]; 207 SkColor colors[kMaxRandomGradientColors];
211 SkScalar stopsArray[kMaxRandomGradientColors]; 208 SkScalar stopsArray[kMaxRandomGradientColors];
212 SkScalar* stops = stopsArray; 209 SkScalar* stops = stopsArray;
213 SkShader::TileMode tm; 210 SkShader::TileMode tm;
214 int colorCount = RandomGradientParams(random, colors, &stops, &tm); 211 int colorCount = RandomGradientParams(d->fRandom, colors, &stops, &tm);
215 SkAutoTUnref<SkShader> shader(SkGradientShader::CreateTwoPointConical(center 1, radius1, 212 SkAutoTUnref<SkShader> shader(SkGradientShader::CreateTwoPointConical(center 1, radius1,
216 center 2, radius2, 213 center 2, radius2,
217 colors , stops, colorCount, 214 colors , stops, colorCount,
218 tm)); 215 tm));
219 SkPaint paint; 216 SkPaint paint;
220 GrFragmentProcessor* fp; 217 GrFragmentProcessor* fp;
221 GrColor paintColor; 218 GrColor paintColor;
222 GrPaint grPaint; 219 SkAssertResult(shader->asFragmentProcessor(d->fContext, paint,
223 SkAssertResult(shader->asFragmentProcessor(context, paint, 220 GrTest::TestMatrix(d->fRandom), N ULL,
224 GrTest::TestMatrix(random), NULL, 221 &paintColor, d->fShaderDataManage r, &fp));
225 &paintColor, grPaint.getShaderDat aManager(), &fp));
226 return fp; 222 return fp;
227 } 223 }
228 224
229 GLEdge2PtConicalEffect::GLEdge2PtConicalEffect(const GrProcessor&) 225 GLEdge2PtConicalEffect::GLEdge2PtConicalEffect(const GrProcessor&)
230 : fVSVaryingName(NULL) 226 : fVSVaryingName(NULL)
231 , fFSVaryingName(NULL) 227 , fFSVaryingName(NULL)
232 , fCachedRadius(-SK_ScalarMax) 228 , fCachedRadius(-SK_ScalarMax)
233 , fCachedDiffRadius(-SK_ScalarMax) {} 229 , fCachedDiffRadius(-SK_ScalarMax) {}
234 230
235 void GLEdge2PtConicalEffect::emitCode(GrGLFPBuilder* builder, 231 void GLEdge2PtConicalEffect::emitCode(GrGLFPBuilder* builder,
(...skipping 239 matching lines...) Expand 10 before | Expand all | Expand 10 after
475 471
476 GrGLFragmentProcessor* FocalOutside2PtConicalEffect::createGLInstance() const { 472 GrGLFragmentProcessor* FocalOutside2PtConicalEffect::createGLInstance() const {
477 return SkNEW_ARGS(GLFocalOutside2PtConicalEffect, (*this)); 473 return SkNEW_ARGS(GLFocalOutside2PtConicalEffect, (*this));
478 } 474 }
479 475
480 GR_DEFINE_FRAGMENT_PROCESSOR_TEST(FocalOutside2PtConicalEffect); 476 GR_DEFINE_FRAGMENT_PROCESSOR_TEST(FocalOutside2PtConicalEffect);
481 477
482 /* 478 /*
483 * All Two point conical gradient test create functions may occasionally create edge case shaders 479 * All Two point conical gradient test create functions may occasionally create edge case shaders
484 */ 480 */
485 GrFragmentProcessor* FocalOutside2PtConicalEffect::TestCreate(SkRandom* random, 481 GrFragmentProcessor* FocalOutside2PtConicalEffect::TestCreate(GrProcessorTestDat a* d) {
486 GrContext* context , 482 SkPoint center1 = {d->fRandom->nextUScalar1(), d->fRandom->nextUScalar1()};
487 const GrCaps&,
488 GrTexture**) {
489 SkPoint center1 = {random->nextUScalar1(), random->nextUScalar1()};
490 SkScalar radius1 = 0.f; 483 SkScalar radius1 = 0.f;
491 SkPoint center2; 484 SkPoint center2;
492 SkScalar radius2; 485 SkScalar radius2;
493 do { 486 do {
494 center2.set(random->nextUScalar1(), random->nextUScalar1()); 487 center2.set(d->fRandom->nextUScalar1(), d->fRandom->nextUScalar1());
495 // Need to make sure the centers are not the same or else focal point wi ll be inside 488 // Need to make sure the centers are not the same or else focal point wi ll be inside
496 } while (center1 == center2); 489 } while (center1 == center2);
497 SkPoint diff = center2 - center1; 490 SkPoint diff = center2 - center1;
498 SkScalar diffLen = diff.length(); 491 SkScalar diffLen = diff.length();
499 // Below makes sure that the focal point is not contained within circle two 492 // Below makes sure that the focal point is not contained within circle two
500 radius2 = random->nextRangeF(0.f, diffLen); 493 radius2 = d->fRandom->nextRangeF(0.f, diffLen);
501 494
502 SkColor colors[kMaxRandomGradientColors]; 495 SkColor colors[kMaxRandomGradientColors];
503 SkScalar stopsArray[kMaxRandomGradientColors]; 496 SkScalar stopsArray[kMaxRandomGradientColors];
504 SkScalar* stops = stopsArray; 497 SkScalar* stops = stopsArray;
505 SkShader::TileMode tm; 498 SkShader::TileMode tm;
506 int colorCount = RandomGradientParams(random, colors, &stops, &tm); 499 int colorCount = RandomGradientParams(d->fRandom, colors, &stops, &tm);
507 SkAutoTUnref<SkShader> shader(SkGradientShader::CreateTwoPointConical(center 1, radius1, 500 SkAutoTUnref<SkShader> shader(SkGradientShader::CreateTwoPointConical(center 1, radius1,
508 center 2, radius2, 501 center 2, radius2,
509 colors , stops, colorCount, 502 colors , stops, colorCount,
510 tm)); 503 tm));
511 SkPaint paint; 504 SkPaint paint;
512 GrFragmentProcessor* effect; 505 GrFragmentProcessor* effect;
513 GrColor paintColor; 506 GrColor paintColor;
514 GrPaint grPaint; 507 GrPaint grPaint;
515 SkAssertResult(shader->asFragmentProcessor(context, paint, 508 SkAssertResult(shader->asFragmentProcessor(d->fContext, paint,
516 GrTest::TestMatrix(random), NULL, 509 GrTest::TestMatrix(d->fRandom), N ULL,
517 &paintColor, grPaint.getShaderDat aManager(), 510 &paintColor, d->fShaderDataManage r,
518 &effect)); 511 &effect));
519 return effect; 512 return effect;
520 } 513 }
521 514
522 GLFocalOutside2PtConicalEffect::GLFocalOutside2PtConicalEffect(const GrProcessor & processor) 515 GLFocalOutside2PtConicalEffect::GLFocalOutside2PtConicalEffect(const GrProcessor & processor)
523 : fVSVaryingName(NULL) 516 : fVSVaryingName(NULL)
524 , fFSVaryingName(NULL) 517 , fFSVaryingName(NULL)
525 , fCachedFocal(SK_ScalarMax) { 518 , fCachedFocal(SK_ScalarMax) {
526 const FocalOutside2PtConicalEffect& data = processor.cast<FocalOutside2PtCon icalEffect>(); 519 const FocalOutside2PtConicalEffect& data = processor.cast<FocalOutside2PtCon icalEffect>();
527 fIsFlipped = data.isFlipped(); 520 fIsFlipped = data.isFlipped();
(...skipping 170 matching lines...) Expand 10 before | Expand all | Expand 10 after
698 691
699 GrGLFragmentProcessor* FocalInside2PtConicalEffect::createGLInstance() const { 692 GrGLFragmentProcessor* FocalInside2PtConicalEffect::createGLInstance() const {
700 return SkNEW_ARGS(GLFocalInside2PtConicalEffect, (*this)); 693 return SkNEW_ARGS(GLFocalInside2PtConicalEffect, (*this));
701 } 694 }
702 695
703 GR_DEFINE_FRAGMENT_PROCESSOR_TEST(FocalInside2PtConicalEffect); 696 GR_DEFINE_FRAGMENT_PROCESSOR_TEST(FocalInside2PtConicalEffect);
704 697
705 /* 698 /*
706 * All Two point conical gradient test create functions may occasionally create edge case shaders 699 * All Two point conical gradient test create functions may occasionally create edge case shaders
707 */ 700 */
708 GrFragmentProcessor* FocalInside2PtConicalEffect::TestCreate(SkRandom* random, 701 GrFragmentProcessor* FocalInside2PtConicalEffect::TestCreate(GrProcessorTestData * d) {
709 GrContext* context, 702 SkPoint center1 = {d->fRandom->nextUScalar1(), d->fRandom->nextUScalar1()};
710 const GrCaps&,
711 GrTexture**) {
712 SkPoint center1 = {random->nextUScalar1(), random->nextUScalar1()};
713 SkScalar radius1 = 0.f; 703 SkScalar radius1 = 0.f;
714 SkPoint center2; 704 SkPoint center2;
715 SkScalar radius2; 705 SkScalar radius2;
716 do { 706 do {
717 center2.set(random->nextUScalar1(), random->nextUScalar1()); 707 center2.set(d->fRandom->nextUScalar1(), d->fRandom->nextUScalar1());
718 // Below makes sure radius2 is larger enouch such that the focal point 708 // Below makes sure radius2 is larger enouch such that the focal point
719 // is inside the end circle 709 // is inside the end circle
720 SkScalar increase = random->nextUScalar1(); 710 SkScalar increase = d->fRandom->nextUScalar1();
721 SkPoint diff = center2 - center1; 711 SkPoint diff = center2 - center1;
722 SkScalar diffLen = diff.length(); 712 SkScalar diffLen = diff.length();
723 radius2 = diffLen + increase; 713 radius2 = diffLen + increase;
724 // If the circles are identical the factory will give us an empty shader . 714 // If the circles are identical the factory will give us an empty shader .
725 } while (radius1 == radius2 && center1 == center2); 715 } while (radius1 == radius2 && center1 == center2);
726 716
727 SkColor colors[kMaxRandomGradientColors]; 717 SkColor colors[kMaxRandomGradientColors];
728 SkScalar stopsArray[kMaxRandomGradientColors]; 718 SkScalar stopsArray[kMaxRandomGradientColors];
729 SkScalar* stops = stopsArray; 719 SkScalar* stops = stopsArray;
730 SkShader::TileMode tm; 720 SkShader::TileMode tm;
731 int colorCount = RandomGradientParams(random, colors, &stops, &tm); 721 int colorCount = RandomGradientParams(d->fRandom, colors, &stops, &tm);
732 SkAutoTUnref<SkShader> shader(SkGradientShader::CreateTwoPointConical(center 1, radius1, 722 SkAutoTUnref<SkShader> shader(SkGradientShader::CreateTwoPointConical(center 1, radius1,
733 center 2, radius2, 723 center 2, radius2,
734 colors , stops, colorCount, 724 colors , stops, colorCount,
735 tm)); 725 tm));
736 SkPaint paint; 726 SkPaint paint;
737 GrColor paintColor; 727 GrColor paintColor;
738 GrFragmentProcessor* fp; 728 GrFragmentProcessor* fp;
739 GrPaint grPaint; 729 SkAssertResult(shader->asFragmentProcessor(d->fContext, paint,
740 SkAssertResult(shader->asFragmentProcessor(context, paint, 730 GrTest::TestMatrix(d->fRandom), N ULL,
741 GrTest::TestMatrix(random), NULL, 731 &paintColor, d->fShaderDataManage r, &fp));
742 &paintColor, grPaint.getShaderDat aManager(), &fp));
743 return fp; 732 return fp;
744 } 733 }
745 734
746 GLFocalInside2PtConicalEffect::GLFocalInside2PtConicalEffect(const GrProcessor&) 735 GLFocalInside2PtConicalEffect::GLFocalInside2PtConicalEffect(const GrProcessor&)
747 : fVSVaryingName(NULL) 736 : fVSVaryingName(NULL)
748 , fFSVaryingName(NULL) 737 , fFSVaryingName(NULL)
749 , fCachedFocal(SK_ScalarMax) {} 738 , fCachedFocal(SK_ScalarMax) {}
750 739
751 void GLFocalInside2PtConicalEffect::emitCode(GrGLFPBuilder* builder, 740 void GLFocalInside2PtConicalEffect::emitCode(GrGLFPBuilder* builder,
752 const GrFragmentProcessor& fp, 741 const GrFragmentProcessor& fp,
(...skipping 205 matching lines...) Expand 10 before | Expand all | Expand 10 after
958 947
959 GrGLFragmentProcessor* CircleInside2PtConicalEffect::createGLInstance() const { 948 GrGLFragmentProcessor* CircleInside2PtConicalEffect::createGLInstance() const {
960 return SkNEW_ARGS(GLCircleInside2PtConicalEffect, (*this)); 949 return SkNEW_ARGS(GLCircleInside2PtConicalEffect, (*this));
961 } 950 }
962 951
963 GR_DEFINE_FRAGMENT_PROCESSOR_TEST(CircleInside2PtConicalEffect); 952 GR_DEFINE_FRAGMENT_PROCESSOR_TEST(CircleInside2PtConicalEffect);
964 953
965 /* 954 /*
966 * All Two point conical gradient test create functions may occasionally create edge case shaders 955 * All Two point conical gradient test create functions may occasionally create edge case shaders
967 */ 956 */
968 GrFragmentProcessor* CircleInside2PtConicalEffect::TestCreate(SkRandom* random, 957 GrFragmentProcessor*
969 GrContext* context , 958 CircleInside2PtConicalEffect::TestCreate(GrProcessorTestData* d) {
970 const GrCaps&, 959 SkPoint center1 = {d->fRandom->nextUScalar1(), d->fRandom->nextUScalar1()};
971 GrTexture**) { 960 SkScalar radius1 = d->fRandom->nextUScalar1() + 0.0001f; // make sure radius 1 != 0
972 SkPoint center1 = {random->nextUScalar1(), random->nextUScalar1()};
973 SkScalar radius1 = random->nextUScalar1() + 0.0001f; // make sure radius1 != 0
974 SkPoint center2; 961 SkPoint center2;
975 SkScalar radius2; 962 SkScalar radius2;
976 do { 963 do {
977 center2.set(random->nextUScalar1(), random->nextUScalar1()); 964 center2.set(d->fRandom->nextUScalar1(), d->fRandom->nextUScalar1());
978 // Below makes sure that circle one is contained within circle two 965 // Below makes sure that circle one is contained within circle two
979 SkScalar increase = random->nextUScalar1(); 966 SkScalar increase = d->fRandom->nextUScalar1();
980 SkPoint diff = center2 - center1; 967 SkPoint diff = center2 - center1;
981 SkScalar diffLen = diff.length(); 968 SkScalar diffLen = diff.length();
982 radius2 = radius1 + diffLen + increase; 969 radius2 = radius1 + diffLen + increase;
983 // If the circles are identical the factory will give us an empty shader . 970 // If the circles are identical the factory will give us an empty shader .
984 } while (radius1 == radius2 && center1 == center2); 971 } while (radius1 == radius2 && center1 == center2);
985 972
986 SkColor colors[kMaxRandomGradientColors]; 973 SkColor colors[kMaxRandomGradientColors];
987 SkScalar stopsArray[kMaxRandomGradientColors]; 974 SkScalar stopsArray[kMaxRandomGradientColors];
988 SkScalar* stops = stopsArray; 975 SkScalar* stops = stopsArray;
989 SkShader::TileMode tm; 976 SkShader::TileMode tm;
990 int colorCount = RandomGradientParams(random, colors, &stops, &tm); 977 int colorCount = RandomGradientParams(d->fRandom, colors, &stops, &tm);
991 SkAutoTUnref<SkShader> shader(SkGradientShader::CreateTwoPointConical(center 1, radius1, 978 SkAutoTUnref<SkShader> shader(SkGradientShader::CreateTwoPointConical(center 1, radius1,
992 center 2, radius2, 979 center 2, radius2,
993 colors , stops, colorCount, 980 colors , stops, colorCount,
994 tm)); 981 tm));
995 SkPaint paint; 982 SkPaint paint;
996 GrColor paintColor; 983 GrColor paintColor;
997 GrFragmentProcessor* fp; 984 GrFragmentProcessor* fp;
998 GrPaint grPaint; 985 SkAssertResult(shader->asFragmentProcessor(d->fContext, paint,
999 SkAssertResult(shader->asFragmentProcessor(context, paint, 986 GrTest::TestMatrix(d->fRandom), N ULL,
1000 GrTest::TestMatrix(random), NULL, 987 &paintColor, d->fShaderDataManage r, &fp));
1001 &paintColor, grPaint.getShaderDat aManager(), &fp));
1002 return fp; 988 return fp;
1003 } 989 }
1004 990
1005 GLCircleInside2PtConicalEffect::GLCircleInside2PtConicalEffect(const GrProcessor & processor) 991 GLCircleInside2PtConicalEffect::GLCircleInside2PtConicalEffect(const GrProcessor & processor)
1006 : fVSVaryingName(NULL) 992 : fVSVaryingName(NULL)
1007 , fFSVaryingName(NULL) 993 , fFSVaryingName(NULL)
1008 , fCachedCenterX(SK_ScalarMax) 994 , fCachedCenterX(SK_ScalarMax)
1009 , fCachedCenterY(SK_ScalarMax) 995 , fCachedCenterY(SK_ScalarMax)
1010 , fCachedA(SK_ScalarMax) 996 , fCachedA(SK_ScalarMax)
1011 , fCachedB(SK_ScalarMax) 997 , fCachedB(SK_ScalarMax)
(...skipping 189 matching lines...) Expand 10 before | Expand all | Expand 10 after
1201 1187
1202 GrGLFragmentProcessor* CircleOutside2PtConicalEffect::createGLInstance() const { 1188 GrGLFragmentProcessor* CircleOutside2PtConicalEffect::createGLInstance() const {
1203 return SkNEW_ARGS(GLCircleOutside2PtConicalEffect, (*this)); 1189 return SkNEW_ARGS(GLCircleOutside2PtConicalEffect, (*this));
1204 } 1190 }
1205 1191
1206 GR_DEFINE_FRAGMENT_PROCESSOR_TEST(CircleOutside2PtConicalEffect); 1192 GR_DEFINE_FRAGMENT_PROCESSOR_TEST(CircleOutside2PtConicalEffect);
1207 1193
1208 /* 1194 /*
1209 * All Two point conical gradient test create functions may occasionally create edge case shaders 1195 * All Two point conical gradient test create functions may occasionally create edge case shaders
1210 */ 1196 */
1211 GrFragmentProcessor* CircleOutside2PtConicalEffect::TestCreate(SkRandom* random, 1197 GrFragmentProcessor* CircleOutside2PtConicalEffect::TestCreate(GrProcessorTestDa ta* d) {
1212 GrContext* contex t, 1198 SkPoint center1 = {d->fRandom->nextUScalar1(), d->fRandom->nextUScalar1()};
1213 const GrCaps&, 1199 SkScalar radius1 = d->fRandom->nextUScalar1() + 0.0001f; // make sure radius 1 != 0
1214 GrTexture**) {
1215 SkPoint center1 = {random->nextUScalar1(), random->nextUScalar1()};
1216 SkScalar radius1 = random->nextUScalar1() + 0.0001f; // make sure radius1 != 0
1217 SkPoint center2; 1200 SkPoint center2;
1218 SkScalar radius2; 1201 SkScalar radius2;
1219 SkScalar diffLen; 1202 SkScalar diffLen;
1220 do { 1203 do {
1221 center2.set(random->nextUScalar1(), random->nextUScalar1()); 1204 center2.set(d->fRandom->nextUScalar1(), d->fRandom->nextUScalar1());
1222 // If the circles share a center than we can't be in the outside case 1205 // If the circles share a center than we can't be in the outside case
1223 } while (center1 == center2); 1206 } while (center1 == center2);
1224 SkPoint diff = center2 - center1; 1207 SkPoint diff = center2 - center1;
1225 diffLen = diff.length(); 1208 diffLen = diff.length();
1226 // Below makes sure that circle one is not contained within circle two 1209 // Below makes sure that circle one is not contained within circle two
1227 // and have radius2 >= radius to match sorting on cpu side 1210 // and have radius2 >= radius to match sorting on cpu side
1228 radius2 = radius1 + random->nextRangeF(0.f, diffLen); 1211 radius2 = radius1 + d->fRandom->nextRangeF(0.f, diffLen);
1229 1212
1230 SkColor colors[kMaxRandomGradientColors]; 1213 SkColor colors[kMaxRandomGradientColors];
1231 SkScalar stopsArray[kMaxRandomGradientColors]; 1214 SkScalar stopsArray[kMaxRandomGradientColors];
1232 SkScalar* stops = stopsArray; 1215 SkScalar* stops = stopsArray;
1233 SkShader::TileMode tm; 1216 SkShader::TileMode tm;
1234 int colorCount = RandomGradientParams(random, colors, &stops, &tm); 1217 int colorCount = RandomGradientParams(d->fRandom, colors, &stops, &tm);
1235 SkAutoTUnref<SkShader> shader(SkGradientShader::CreateTwoPointConical(center 1, radius1, 1218 SkAutoTUnref<SkShader> shader(SkGradientShader::CreateTwoPointConical(center 1, radius1,
1236 center 2, radius2, 1219 center 2, radius2,
1237 colors , stops, colorCount, 1220 colors , stops, colorCount,
1238 tm)); 1221 tm));
1239 SkPaint paint; 1222 SkPaint paint;
1240 GrColor paintColor; 1223 GrColor paintColor;
1241 GrFragmentProcessor* fp; 1224 GrFragmentProcessor* fp;
1242 GrPaint grPaint; 1225 SkAssertResult(shader->asFragmentProcessor(d->fContext, paint,
1243 SkAssertResult(shader->asFragmentProcessor(context, paint, 1226 GrTest::TestMatrix(d->fRandom), N ULL,
1244 GrTest::TestMatrix(random), NULL, 1227 &paintColor, d->fShaderDataManage r, &fp));
1245 &paintColor, grPaint.getShaderDat aManager(), &fp));
1246 return fp; 1228 return fp;
1247 } 1229 }
1248 1230
1249 GLCircleOutside2PtConicalEffect::GLCircleOutside2PtConicalEffect(const GrProcess or& processor) 1231 GLCircleOutside2PtConicalEffect::GLCircleOutside2PtConicalEffect(const GrProcess or& processor)
1250 : fVSVaryingName(NULL) 1232 : fVSVaryingName(NULL)
1251 , fFSVaryingName(NULL) 1233 , fFSVaryingName(NULL)
1252 , fCachedCenterX(SK_ScalarMax) 1234 , fCachedCenterX(SK_ScalarMax)
1253 , fCachedCenterY(SK_ScalarMax) 1235 , fCachedCenterY(SK_ScalarMax)
1254 , fCachedA(SK_ScalarMax) 1236 , fCachedA(SK_ScalarMax)
1255 , fCachedB(SK_ScalarMax) 1237 , fCachedB(SK_ScalarMax)
(...skipping 141 matching lines...) Expand 10 before | Expand all | Expand 10 after
1397 } else if (type == kEdge_ConicalType) { 1379 } else if (type == kEdge_ConicalType) {
1398 set_matrix_edge_conical(shader, &matrix); 1380 set_matrix_edge_conical(shader, &matrix);
1399 return Edge2PtConicalEffect::Create(ctx, shaderDataManager, shader, matr ix, tm); 1381 return Edge2PtConicalEffect::Create(ctx, shaderDataManager, shader, matr ix, tm);
1400 } else { 1382 } else {
1401 return CircleOutside2PtConicalEffect::Create(ctx, shaderDataManager, sha der, matrix, tm, 1383 return CircleOutside2PtConicalEffect::Create(ctx, shaderDataManager, sha der, matrix, tm,
1402 info); 1384 info);
1403 } 1385 }
1404 } 1386 }
1405 1387
1406 #endif 1388 #endif
OLDNEW
« no previous file with comments | « src/effects/gradients/SkSweepGradient.cpp ('k') | src/gpu/GrAAConvexPathRenderer.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698