OLD | NEW |
1 | 1 |
2 /* | 2 /* |
3 * Copyright 2012 Google Inc. | 3 * Copyright 2012 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 "SkRadialGradient.h" | 9 #include "SkRadialGradient.h" |
10 #include "SkNx.h" | 10 #include "SkNx.h" |
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
61 return kRadial_GradientType; | 61 return kRadial_GradientType; |
62 } | 62 } |
63 | 63 |
64 SkFlattenable* SkRadialGradient::CreateProc(SkReadBuffer& buffer) { | 64 SkFlattenable* SkRadialGradient::CreateProc(SkReadBuffer& buffer) { |
65 DescriptorScope desc; | 65 DescriptorScope desc; |
66 if (!desc.unflatten(buffer)) { | 66 if (!desc.unflatten(buffer)) { |
67 return nullptr; | 67 return nullptr; |
68 } | 68 } |
69 const SkPoint center = buffer.readPoint(); | 69 const SkPoint center = buffer.readPoint(); |
70 const SkScalar radius = buffer.readScalar(); | 70 const SkScalar radius = buffer.readScalar(); |
71 return SkGradientShader::CreateRadial(center, radius, desc.fColors, desc.fPo
s, desc.fCount, | 71 return SkGradientShader::MakeRadial(center, radius, desc.fColors, desc.fPos,
desc.fCount, |
72 desc.fTileMode, desc.fGradFlags, desc.
fLocalMatrix); | 72 desc.fTileMode, desc.fGradFlags, |
| 73 desc.fLocalMatrix).release(); |
73 } | 74 } |
74 | 75 |
75 void SkRadialGradient::flatten(SkWriteBuffer& buffer) const { | 76 void SkRadialGradient::flatten(SkWriteBuffer& buffer) const { |
76 this->INHERITED::flatten(buffer); | 77 this->INHERITED::flatten(buffer); |
77 buffer.writePoint(fCenter); | 78 buffer.writePoint(fCenter); |
78 buffer.writeScalar(fRadius); | 79 buffer.writeScalar(fRadius); |
79 } | 80 } |
80 | 81 |
81 namespace { | 82 namespace { |
82 | 83 |
(...skipping 223 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
306 | 307 |
307 const GrFragmentProcessor* GrRadialGradient::TestCreate(GrProcessorTestData* d)
{ | 308 const GrFragmentProcessor* GrRadialGradient::TestCreate(GrProcessorTestData* d)
{ |
308 SkPoint center = {d->fRandom->nextUScalar1(), d->fRandom->nextUScalar1()}; | 309 SkPoint center = {d->fRandom->nextUScalar1(), d->fRandom->nextUScalar1()}; |
309 SkScalar radius = d->fRandom->nextUScalar1(); | 310 SkScalar radius = d->fRandom->nextUScalar1(); |
310 | 311 |
311 SkColor colors[kMaxRandomGradientColors]; | 312 SkColor colors[kMaxRandomGradientColors]; |
312 SkScalar stopsArray[kMaxRandomGradientColors]; | 313 SkScalar stopsArray[kMaxRandomGradientColors]; |
313 SkScalar* stops = stopsArray; | 314 SkScalar* stops = stopsArray; |
314 SkShader::TileMode tm; | 315 SkShader::TileMode tm; |
315 int colorCount = RandomGradientParams(d->fRandom, colors, &stops, &tm); | 316 int colorCount = RandomGradientParams(d->fRandom, colors, &stops, &tm); |
316 SkAutoTUnref<SkShader> shader(SkGradientShader::CreateRadial(center, radius, | 317 auto shader = SkGradientShader::MakeRadial(center, radius, colors, stops, co
lorCount, tm); |
317 colors, stops,
colorCount, | |
318 tm)); | |
319 const GrFragmentProcessor* fp = shader->asFragmentProcessor(d->fContext, | 318 const GrFragmentProcessor* fp = shader->asFragmentProcessor(d->fContext, |
320 GrTest::TestMatrix(d->fRandom), NULL, kNone_SkFilterQuality); | 319 GrTest::TestMatrix(d->fRandom), NULL, kNone_SkFilterQuality); |
321 GrAlwaysAssert(fp); | 320 GrAlwaysAssert(fp); |
322 return fp; | 321 return fp; |
323 } | 322 } |
324 | 323 |
325 ///////////////////////////////////////////////////////////////////// | 324 ///////////////////////////////////////////////////////////////////// |
326 | 325 |
327 void GrGLRadialGradient::emitCode(EmitArgs& args) { | 326 void GrGLRadialGradient::emitCode(EmitArgs& args) { |
328 const GrRadialGradient& ge = args.fFp.cast<GrRadialGradient>(); | 327 const GrRadialGradient& ge = args.fFp.cast<GrRadialGradient>(); |
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
377 str->appendScalar(fCenter.fY); | 376 str->appendScalar(fCenter.fY); |
378 str->append(") radius: "); | 377 str->append(") radius: "); |
379 str->appendScalar(fRadius); | 378 str->appendScalar(fRadius); |
380 str->append(" "); | 379 str->append(" "); |
381 | 380 |
382 this->INHERITED::toString(str); | 381 this->INHERITED::toString(str); |
383 | 382 |
384 str->append(")"); | 383 str->append(")"); |
385 } | 384 } |
386 #endif | 385 #endif |
OLD | NEW |