aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorMike Reed <reed@google.com>2009-09-22 13:39:47 -0700
committerAndroid Git Automerger <android-git-automerger@android.com>2009-09-22 13:39:47 -0700
commit61bc62284f836e625831c82dd54edfa687273e04 (patch)
tree77029e5d57790680e0a449342ca83380df8ab18d /include
parentfd0d1c5d73672f6b49c2b399f9d9b410e9e6a0c4 (diff)
parent924f59d3627a697f2b0df3299915e814e160f981 (diff)
downloadexternal_skia-61bc62284f836e625831c82dd54edfa687273e04.zip
external_skia-61bc62284f836e625831c82dd54edfa687273e04.tar.gz
external_skia-61bc62284f836e625831c82dd54edfa687273e04.tar.bz2
am 924f59d3: refresh from skia/trunk - two-point-radial gradients, needed for <canvas> and svg
Merge commit '924f59d3627a697f2b0df3299915e814e160f981' into eclair-plus-aosp * commit '924f59d3627a697f2b0df3299915e814e160f981': refresh from skia/trunk - two-point-radial gradients, needed for <canvas> and svg
Diffstat (limited to 'include')
-rw-r--r--include/effects/SkGradientShader.h30
1 files changed, 29 insertions, 1 deletions
diff --git a/include/effects/SkGradientShader.h b/include/effects/SkGradientShader.h
index 9a8696c..c800c66 100644
--- a/include/effects/SkGradientShader.h
+++ b/include/effects/SkGradientShader.h
@@ -72,9 +72,37 @@ public:
SkShader::TileMode mode,
SkUnitMapper* mapper = NULL);
+ /** Returns a shader that generates a radial gradient given the start position, start radius, end position and end radius.
+ <p />
+ CreateTwoPointRadial returns a shader with a reference count of 1.
+ The caller should decrement the shader's reference count when done with the shader.
+ It is an error for colorCount to be < 2, for startRadius or endRadius to be < 0, or for
+ startRadius to be equal to endRadius.
+ @param start The center of the start circle for this gradient
+ @param startRadius Must be positive. The radius of the start circle for this gradient.
+ @param end The center of the end circle for this gradient
+ @param endRadius Must be positive. The radius of the end circle for this gradient.
+ @param colors The array[count] of colors, to be distributed between the center and edge of the circle
+ @param pos May be NULL. The array[count] of SkScalars, or NULL, of the relative position of
+ each corresponding color in the colors array. If this is NULL,
+ the the colors are distributed evenly between the center and edge of the circle.
+ If this is not null, the values must begin with 0, end with 1.0, and
+ intermediate values must be strictly increasing.
+ @param count Must be >= 2. The number of colors (and pos if not NULL) entries
+ @param mode The tiling mode
+ @param mapper May be NULL. Callback to modify the spread of the colors.
+ */
+ static SkShader* CreateTwoPointRadial(const SkPoint& start,
+ SkScalar startRadius,
+ const SkPoint& end,
+ SkScalar endRadius,
+ const SkColor colors[],
+ const SkScalar pos[], int count,
+ SkShader::TileMode mode,
+ SkUnitMapper* mapper = NULL);
/** Returns a shader that generates a sweep gradient given a center.
<p />
- CreateRadial returns a shader with a reference count of 1.
+ CreateSweep returns a shader with a reference count of 1.
The caller should decrement the shader's reference count when done with the shader.
It is an error for colorCount to be < 2.
@param cx The X coordinate of the center of the sweep