public class android.graphics.RadialGradient extends android.graphics.Shader
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: android.graphics.RadialGradient
super_class: android.graphics.Shader
{
private static final int TYPE_COLORS_AND_POSITIONS;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1
private static final int TYPE_COLOR_CENTER_AND_COLOR_EDGE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 2
private int mType;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private float mX;
descriptor: F
flags: (0x0002) ACC_PRIVATE
private float mY;
descriptor: F
flags: (0x0002) ACC_PRIVATE
private float mRadius;
descriptor: F
flags: (0x0002) ACC_PRIVATE
private int[] mColors;
descriptor: [I
flags: (0x0002) ACC_PRIVATE
private float[] mPositions;
descriptor: [F
flags: (0x0002) ACC_PRIVATE
private int mCenterColor;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int mEdgeColor;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private android.graphics.Shader$TileMode mTileMode;
descriptor: Landroid/graphics/Shader$TileMode;
flags: (0x0002) ACC_PRIVATE
public void <init>(float, float, float, int[], float[], android.graphics.Shader$TileMode);
descriptor: (FFF[I[FLandroid/graphics/Shader$TileMode;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=7, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 0
invokespecial android.graphics.Shader.<init>:()V
1: fload 3
fconst_0
fcmpg
ifgt 3
2: new java.lang.IllegalArgumentException
dup
ldc "radius must be > 0"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals: android.graphics.RadialGradient float float float int[] float[] android.graphics.Shader$TileMode
StackMap stack:
aload 4
arraylength
iconst_2
if_icmpge 5
4: new java.lang.IllegalArgumentException
dup
ldc "needs >= 2 number of colors"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals:
StackMap stack:
aload 5
ifnull 7
aload 4
arraylength
aload 5
arraylength
if_icmpeq 7
6: new java.lang.IllegalArgumentException
dup
ldc "color and position arrays must be of equal length"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
7: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield android.graphics.RadialGradient.mType:I
8: aload 0
fload 1
putfield android.graphics.RadialGradient.mX:F
9: aload 0
fload 2
putfield android.graphics.RadialGradient.mY:F
10: aload 0
fload 3
putfield android.graphics.RadialGradient.mRadius:F
11: aload 0
aload 4
invokevirtual int[].clone:()Ljava/lang/Object;
checkcast int[]
putfield android.graphics.RadialGradient.mColors:[I
12: aload 0
aload 5
ifnull 13
aload 5
invokevirtual float[].clone:()Ljava/lang/Object;
checkcast float[]
goto 14
StackMap locals:
StackMap stack: android.graphics.RadialGradient
13: aconst_null
StackMap locals: android.graphics.RadialGradient float float float int[] float[] android.graphics.Shader$TileMode
StackMap stack: android.graphics.RadialGradient float[]
14: putfield android.graphics.RadialGradient.mPositions:[F
15: aload 0
aload 6
putfield android.graphics.RadialGradient.mTileMode:Landroid/graphics/Shader$TileMode;
16: return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Landroid/graphics/RadialGradient;
0 17 1 centerX F
0 17 2 centerY F
0 17 3 radius F
0 17 4 colors [I
0 17 5 stops [F
0 17 6 tileMode Landroid/graphics/Shader$TileMode;
MethodParameters:
Name Flags
centerX
centerY
radius
colors
stops
tileMode
public void <init>(float, float, float, int, int, android.graphics.Shader$TileMode);
descriptor: (FFFIILandroid/graphics/Shader$TileMode;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=7, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 0
invokespecial android.graphics.Shader.<init>:()V
1: fload 3
fconst_0
fcmpg
ifgt 3
2: new java.lang.IllegalArgumentException
dup
ldc "radius must be > 0"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals: android.graphics.RadialGradient float float float int int android.graphics.Shader$TileMode
StackMap stack:
aload 0
iconst_2
putfield android.graphics.RadialGradient.mType:I
4: aload 0
fload 1
putfield android.graphics.RadialGradient.mX:F
5: aload 0
fload 2
putfield android.graphics.RadialGradient.mY:F
6: aload 0
fload 3
putfield android.graphics.RadialGradient.mRadius:F
7: aload 0
iload 4
putfield android.graphics.RadialGradient.mCenterColor:I
8: aload 0
iload 5
putfield android.graphics.RadialGradient.mEdgeColor:I
9: aload 0
aload 6
putfield android.graphics.RadialGradient.mTileMode:Landroid/graphics/Shader$TileMode;
10: return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Landroid/graphics/RadialGradient;
0 11 1 centerX F
0 11 2 centerY F
0 11 3 radius F
0 11 4 centerColor I
0 11 5 edgeColor I
0 11 6 tileMode Landroid/graphics/Shader$TileMode;
MethodParameters:
Name Flags
centerX
centerY
radius
centerColor
edgeColor
tileMode
long createNativeInstance(long);
descriptor: (J)J
flags: (0x0000)
Code:
stack=8, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield android.graphics.RadialGradient.mType:I
iconst_1
if_icmpne 4
1: lload 1
aload 0
getfield android.graphics.RadialGradient.mX:F
aload 0
getfield android.graphics.RadialGradient.mY:F
aload 0
getfield android.graphics.RadialGradient.mRadius:F
2: aload 0
getfield android.graphics.RadialGradient.mColors:[I
aload 0
getfield android.graphics.RadialGradient.mPositions:[F
aload 0
getfield android.graphics.RadialGradient.mTileMode:Landroid/graphics/Shader$TileMode;
getfield android.graphics.Shader$TileMode.nativeInt:I
3: invokestatic android.graphics.RadialGradient.nativeCreate1:(JFFF[I[FI)J
lreturn
4: StackMap locals:
StackMap stack:
lload 1
aload 0
getfield android.graphics.RadialGradient.mX:F
aload 0
getfield android.graphics.RadialGradient.mY:F
aload 0
getfield android.graphics.RadialGradient.mRadius:F
5: aload 0
getfield android.graphics.RadialGradient.mCenterColor:I
aload 0
getfield android.graphics.RadialGradient.mEdgeColor:I
aload 0
getfield android.graphics.RadialGradient.mTileMode:Landroid/graphics/Shader$TileMode;
getfield android.graphics.Shader$TileMode.nativeInt:I
6: invokestatic android.graphics.RadialGradient.nativeCreate2:(JFFFIII)J
lreturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Landroid/graphics/RadialGradient;
0 7 1 nativeMatrix J
MethodParameters:
Name Flags
nativeMatrix
protected android.graphics.Shader copy();
descriptor: ()Landroid/graphics/Shader;
flags: (0x0004) ACC_PROTECTED
Code:
stack=8, locals=2, args_size=1
start local 0 0: aload 0
getfield android.graphics.RadialGradient.mType:I
iconst_1
if_icmpne 7
1: new android.graphics.RadialGradient
dup
aload 0
getfield android.graphics.RadialGradient.mX:F
aload 0
getfield android.graphics.RadialGradient.mY:F
aload 0
getfield android.graphics.RadialGradient.mRadius:F
aload 0
getfield android.graphics.RadialGradient.mColors:[I
invokevirtual int[].clone:()Ljava/lang/Object;
checkcast int[]
2: aload 0
getfield android.graphics.RadialGradient.mPositions:[F
ifnull 3
aload 0
getfield android.graphics.RadialGradient.mPositions:[F
invokevirtual float[].clone:()Ljava/lang/Object;
checkcast float[]
goto 4
StackMap locals: android.graphics.RadialGradient
StackMap stack: new 1 new 1 float float float int[]
3: aconst_null
StackMap locals: android.graphics.RadialGradient
StackMap stack: new 1 new 1 float float float int[] float[]
4: aload 0
getfield android.graphics.RadialGradient.mTileMode:Landroid/graphics/Shader$TileMode;
5: invokespecial android.graphics.RadialGradient.<init>:(FFF[I[FLandroid/graphics/Shader$TileMode;)V
astore 1
start local 1 6: goto 8
end local 1 7: StackMap locals:
StackMap stack:
new android.graphics.RadialGradient
dup
aload 0
getfield android.graphics.RadialGradient.mX:F
aload 0
getfield android.graphics.RadialGradient.mY:F
aload 0
getfield android.graphics.RadialGradient.mRadius:F
aload 0
getfield android.graphics.RadialGradient.mCenterColor:I
aload 0
getfield android.graphics.RadialGradient.mEdgeColor:I
aload 0
getfield android.graphics.RadialGradient.mTileMode:Landroid/graphics/Shader$TileMode;
invokespecial android.graphics.RadialGradient.<init>:(FFFIILandroid/graphics/Shader$TileMode;)V
astore 1
start local 1 8: StackMap locals: android.graphics.RadialGradient
StackMap stack:
aload 0
aload 1
invokevirtual android.graphics.RadialGradient.copyLocalMatrix:(Landroid/graphics/Shader;)V
9: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Landroid/graphics/RadialGradient;
6 7 1 copy Landroid/graphics/RadialGradient;
8 10 1 copy Landroid/graphics/RadialGradient;
private static native long nativeCreate1(long, float, float, float, int[], float[], int);
descriptor: (JFFF[I[FI)J
flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
MethodParameters:
Name Flags
matrix
x
y
radius
colors
positions
tileMode
private static native long nativeCreate2(long, float, float, float, int, int, int);
descriptor: (JFFFIII)J
flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
MethodParameters:
Name Flags
matrix
x
y
radius
color0
color1
tileMode
}
SourceFile: "RadialGradient.java"
InnerClasses:
public final TileMode = android.graphics.Shader$TileMode of android.graphics.Shader