1// Signature format: 4.0
2package androidx.graphics.shapes {
3
4  public final class CornerRounding {
5    ctor public CornerRounding();
6    ctor public CornerRounding(optional @FloatRange(from=0.0) float radius, optional @FloatRange(from=0.0, to=1.0) float smoothing);
7    method public float getRadius();
8    method public float getSmoothing();
9    property @FloatRange(from=0.0) public float radius;
10    property @FloatRange(from=0.0, to=1.0) public float smoothing;
11    field public static final androidx.graphics.shapes.CornerRounding.Companion Companion;
12    field public static final androidx.graphics.shapes.CornerRounding Unrounded;
13  }
14
15  public static final class CornerRounding.Companion {
16    property public androidx.graphics.shapes.CornerRounding Unrounded;
17  }
18
19  public class Cubic {
20    method public static final androidx.graphics.shapes.Cubic circularArc(float centerX, float centerY, float x0, float y0, float x1, float y1);
21    method public final operator androidx.graphics.shapes.Cubic div(float x);
22    method public final operator androidx.graphics.shapes.Cubic div(int x);
23    method public final float getAnchor0X();
24    method public final float getAnchor0Y();
25    method public final float getAnchor1X();
26    method public final float getAnchor1Y();
27    method public final float getControl0X();
28    method public final float getControl0Y();
29    method public final float getControl1X();
30    method public final float getControl1Y();
31    method public final operator androidx.graphics.shapes.Cubic plus(androidx.graphics.shapes.Cubic o);
32    method public final androidx.graphics.shapes.Cubic reverse();
33    method public final kotlin.Pair<androidx.graphics.shapes.Cubic,androidx.graphics.shapes.Cubic> split(float t);
34    method public static final androidx.graphics.shapes.Cubic straightLine(float x0, float y0, float x1, float y1);
35    method public final operator androidx.graphics.shapes.Cubic times(float x);
36    method public final operator androidx.graphics.shapes.Cubic times(int x);
37    method public final androidx.graphics.shapes.Cubic transformed(androidx.graphics.shapes.PointTransformer f);
38    property public final float anchor0X;
39    property public final float anchor0Y;
40    property public final float anchor1X;
41    property public final float anchor1Y;
42    property public final float control0X;
43    property public final float control0Y;
44    property public final float control1X;
45    property public final float control1Y;
46    field public static final androidx.graphics.shapes.Cubic.Companion Companion;
47  }
48
49  public static final class Cubic.Companion {
50    method public androidx.graphics.shapes.Cubic circularArc(float centerX, float centerY, float x0, float y0, float x1, float y1);
51    method public androidx.graphics.shapes.Cubic straightLine(float x0, float y0, float x1, float y1);
52  }
53
54  public final class CubicKt {
55    method public static androidx.graphics.shapes.Cubic Cubic(float anchor0X, float anchor0Y, float control0X, float control0Y, float control1X, float control1Y, float anchor1X, float anchor1Y);
56  }
57
58  public abstract class Feature {
59    ctor public Feature(java.util.List<? extends androidx.graphics.shapes.Cubic> cubics);
60    method public final java.util.List<androidx.graphics.shapes.Cubic> getCubics();
61    method public abstract boolean isConcaveCorner();
62    method public abstract boolean isConvexCorner();
63    method public abstract boolean isEdge();
64    method public abstract boolean isIgnorableFeature();
65    method public abstract androidx.graphics.shapes.Feature reversed();
66    method public abstract androidx.graphics.shapes.Feature transformed(androidx.graphics.shapes.PointTransformer f);
67    property public final java.util.List<androidx.graphics.shapes.Cubic> cubics;
68    property public abstract boolean isConcaveCorner;
69    property public abstract boolean isConvexCorner;
70    property public abstract boolean isEdge;
71    property public abstract boolean isIgnorableFeature;
72    field public static final androidx.graphics.shapes.Feature.Factory Factory;
73  }
74
75  public static final class Feature.Factory {
76    method public androidx.graphics.shapes.Feature buildConcaveCorner(java.util.List<? extends androidx.graphics.shapes.Cubic> cubics);
77    method public androidx.graphics.shapes.Feature buildConvexCorner(java.util.List<? extends androidx.graphics.shapes.Cubic> cubics);
78    method public androidx.graphics.shapes.Feature buildEdge(androidx.graphics.shapes.Cubic cubic);
79    method public androidx.graphics.shapes.Feature buildIgnorableFeature(java.util.List<? extends androidx.graphics.shapes.Cubic> cubics);
80  }
81
82  public final class FeatureSerializer {
83    method public static java.util.List<androidx.graphics.shapes.Feature> parse(String serializedFeatures);
84    method public static String serialize(java.util.List<? extends androidx.graphics.shapes.Feature> features);
85    field public static final androidx.graphics.shapes.FeatureSerializer.Companion Companion;
86  }
87
88  public static final class FeatureSerializer.Companion {
89    method public java.util.List<androidx.graphics.shapes.Feature> parse(String serializedFeatures);
90    method public String serialize(java.util.List<? extends androidx.graphics.shapes.Feature> features);
91  }
92
93  public final class Morph {
94    ctor public Morph(androidx.graphics.shapes.RoundedPolygon start, androidx.graphics.shapes.RoundedPolygon end);
95    method public java.util.List<androidx.graphics.shapes.Cubic> asCubics(float progress);
96    method public float[] calculateBounds();
97    method public float[] calculateBounds(optional float[] bounds);
98    method public float[] calculateBounds(optional float[] bounds, optional boolean approximate);
99    method public float[] calculateMaxBounds(optional float[] bounds);
100    method public inline void forEachCubic(float progress, optional androidx.graphics.shapes.MutableCubic mutableCubic, kotlin.jvm.functions.Function1<? super androidx.graphics.shapes.MutableCubic,kotlin.Unit> callback);
101    method public inline void forEachCubic(float progress, kotlin.jvm.functions.Function1<? super androidx.graphics.shapes.MutableCubic,kotlin.Unit> callback);
102    property @kotlin.PublishedApi internal java.util.List<kotlin.Pair<androidx.graphics.shapes.Cubic,androidx.graphics.shapes.Cubic>> morphMatch;
103  }
104
105  public final class MutableCubic extends androidx.graphics.shapes.Cubic {
106    ctor public MutableCubic();
107    method public void interpolate(androidx.graphics.shapes.Cubic c1, androidx.graphics.shapes.Cubic c2, float progress);
108    method public void transform(androidx.graphics.shapes.PointTransformer f);
109  }
110
111  public interface MutablePoint {
112    method public float getX();
113    method public float getY();
114    method public void setX(float);
115    method public void setY(float);
116    property public abstract float x;
117    property public abstract float y;
118  }
119
120  public fun interface PointTransformer {
121    method public long transform(float x, float y);
122  }
123
124  public final class RoundedPolygon {
125    method public float[] calculateBounds();
126    method public float[] calculateBounds(optional float[] bounds);
127    method public float[] calculateBounds(optional float[] bounds, optional boolean approximate);
128    method public float[] calculateMaxBounds(optional float[] bounds);
129    method public float getCenterX();
130    method public float getCenterY();
131    method public java.util.List<androidx.graphics.shapes.Cubic> getCubics();
132    method public java.util.List<androidx.graphics.shapes.Feature> getFeatures();
133    method public androidx.graphics.shapes.RoundedPolygon normalized();
134    method public androidx.graphics.shapes.RoundedPolygon transformed(androidx.graphics.shapes.PointTransformer f);
135    property public float centerX;
136    property public float centerY;
137    property public java.util.List<androidx.graphics.shapes.Cubic> cubics;
138    property public java.util.List<androidx.graphics.shapes.Feature> features;
139    field public static final androidx.graphics.shapes.RoundedPolygon.Companion Companion;
140  }
141
142  public static final class RoundedPolygon.Companion {
143  }
144
145  public final class RoundedPolygonKt {
146    method public static androidx.graphics.shapes.RoundedPolygon RoundedPolygon(androidx.graphics.shapes.RoundedPolygon source);
147    method public static androidx.graphics.shapes.RoundedPolygon RoundedPolygon(float[] vertices);
148    method public static androidx.graphics.shapes.RoundedPolygon RoundedPolygon(float[] vertices, optional androidx.graphics.shapes.CornerRounding rounding);
149    method public static androidx.graphics.shapes.RoundedPolygon RoundedPolygon(float[] vertices, optional androidx.graphics.shapes.CornerRounding rounding, optional java.util.List<androidx.graphics.shapes.CornerRounding>? perVertexRounding);
150    method public static androidx.graphics.shapes.RoundedPolygon RoundedPolygon(float[] vertices, optional androidx.graphics.shapes.CornerRounding rounding, optional java.util.List<androidx.graphics.shapes.CornerRounding>? perVertexRounding, optional float centerX);
151    method public static androidx.graphics.shapes.RoundedPolygon RoundedPolygon(float[] vertices, optional androidx.graphics.shapes.CornerRounding rounding, optional java.util.List<androidx.graphics.shapes.CornerRounding>? perVertexRounding, optional float centerX, optional float centerY);
152    method public static androidx.graphics.shapes.RoundedPolygon RoundedPolygon(@IntRange(from=3L) int numVertices);
153    method public static androidx.graphics.shapes.RoundedPolygon RoundedPolygon(@IntRange(from=3L) int numVertices, optional float radius);
154    method public static androidx.graphics.shapes.RoundedPolygon RoundedPolygon(@IntRange(from=3L) int numVertices, optional float radius, optional float centerX);
155    method public static androidx.graphics.shapes.RoundedPolygon RoundedPolygon(@IntRange(from=3L) int numVertices, optional float radius, optional float centerX, optional float centerY);
156    method public static androidx.graphics.shapes.RoundedPolygon RoundedPolygon(@IntRange(from=3L) int numVertices, optional float radius, optional float centerX, optional float centerY, optional androidx.graphics.shapes.CornerRounding rounding);
157    method public static androidx.graphics.shapes.RoundedPolygon RoundedPolygon(@IntRange(from=3L) int numVertices, optional float radius, optional float centerX, optional float centerY, optional androidx.graphics.shapes.CornerRounding rounding, optional java.util.List<androidx.graphics.shapes.CornerRounding>? perVertexRounding);
158    method public static androidx.graphics.shapes.RoundedPolygon RoundedPolygon(java.util.List<? extends androidx.graphics.shapes.Feature> features);
159    method public static androidx.graphics.shapes.RoundedPolygon RoundedPolygon(java.util.List<? extends androidx.graphics.shapes.Feature> features, optional float centerX);
160    method public static androidx.graphics.shapes.RoundedPolygon RoundedPolygon(java.util.List<? extends androidx.graphics.shapes.Feature> features, optional float centerX, optional float centerY);
161  }
162
163  public final class ShapesKt {
164    method public static androidx.graphics.shapes.RoundedPolygon circle(androidx.graphics.shapes.RoundedPolygon.Companion);
165    method public static androidx.graphics.shapes.RoundedPolygon circle(androidx.graphics.shapes.RoundedPolygon.Companion, optional @IntRange(from=3L) int numVertices);
166    method public static androidx.graphics.shapes.RoundedPolygon circle(androidx.graphics.shapes.RoundedPolygon.Companion, optional @IntRange(from=3L) int numVertices, optional float radius);
167    method public static androidx.graphics.shapes.RoundedPolygon circle(androidx.graphics.shapes.RoundedPolygon.Companion, optional @IntRange(from=3L) int numVertices, optional float radius, optional float centerX);
168    method public static androidx.graphics.shapes.RoundedPolygon circle(androidx.graphics.shapes.RoundedPolygon.Companion, optional @IntRange(from=3L) int numVertices, optional float radius, optional float centerX, optional float centerY);
169    method public static androidx.graphics.shapes.RoundedPolygon pill(androidx.graphics.shapes.RoundedPolygon.Companion);
170    method public static androidx.graphics.shapes.RoundedPolygon pill(androidx.graphics.shapes.RoundedPolygon.Companion, optional float width);
171    method public static androidx.graphics.shapes.RoundedPolygon pill(androidx.graphics.shapes.RoundedPolygon.Companion, optional float width, optional float height);
172    method public static androidx.graphics.shapes.RoundedPolygon pill(androidx.graphics.shapes.RoundedPolygon.Companion, optional float width, optional float height, optional float smoothing);
173    method public static androidx.graphics.shapes.RoundedPolygon pill(androidx.graphics.shapes.RoundedPolygon.Companion, optional float width, optional float height, optional float smoothing, optional float centerX);
174    method public static androidx.graphics.shapes.RoundedPolygon pill(androidx.graphics.shapes.RoundedPolygon.Companion, optional float width, optional float height, optional float smoothing, optional float centerX, optional float centerY);
175    method public static androidx.graphics.shapes.RoundedPolygon pillStar(androidx.graphics.shapes.RoundedPolygon.Companion);
176    method public static androidx.graphics.shapes.RoundedPolygon pillStar(androidx.graphics.shapes.RoundedPolygon.Companion, optional float width);
177    method public static androidx.graphics.shapes.RoundedPolygon pillStar(androidx.graphics.shapes.RoundedPolygon.Companion, optional float width, optional float height);
178    method public static androidx.graphics.shapes.RoundedPolygon pillStar(androidx.graphics.shapes.RoundedPolygon.Companion, optional float width, optional float height, optional int numVerticesPerRadius);
179    method public static androidx.graphics.shapes.RoundedPolygon pillStar(androidx.graphics.shapes.RoundedPolygon.Companion, optional float width, optional float height, optional int numVerticesPerRadius, optional @FloatRange(from=0.0, fromInclusive=false, to=1.0, toInclusive=false) float innerRadiusRatio);
180    method public static androidx.graphics.shapes.RoundedPolygon pillStar(androidx.graphics.shapes.RoundedPolygon.Companion, optional float width, optional float height, optional int numVerticesPerRadius, optional @FloatRange(from=0.0, fromInclusive=false, to=1.0, toInclusive=false) float innerRadiusRatio, optional androidx.graphics.shapes.CornerRounding rounding);
181    method public static androidx.graphics.shapes.RoundedPolygon pillStar(androidx.graphics.shapes.RoundedPolygon.Companion, optional float width, optional float height, optional int numVerticesPerRadius, optional @FloatRange(from=0.0, fromInclusive=false, to=1.0, toInclusive=false) float innerRadiusRatio, optional androidx.graphics.shapes.CornerRounding rounding, optional androidx.graphics.shapes.CornerRounding? innerRounding);
182    method public static androidx.graphics.shapes.RoundedPolygon pillStar(androidx.graphics.shapes.RoundedPolygon.Companion, optional float width, optional float height, optional int numVerticesPerRadius, optional @FloatRange(from=0.0, fromInclusive=false, to=1.0, toInclusive=false) float innerRadiusRatio, optional androidx.graphics.shapes.CornerRounding rounding, optional androidx.graphics.shapes.CornerRounding? innerRounding, optional java.util.List<androidx.graphics.shapes.CornerRounding>? perVertexRounding);
183    method public static androidx.graphics.shapes.RoundedPolygon pillStar(androidx.graphics.shapes.RoundedPolygon.Companion, optional float width, optional float height, optional int numVerticesPerRadius, optional @FloatRange(from=0.0, fromInclusive=false, to=1.0, toInclusive=false) float innerRadiusRatio, optional androidx.graphics.shapes.CornerRounding rounding, optional androidx.graphics.shapes.CornerRounding? innerRounding, optional java.util.List<androidx.graphics.shapes.CornerRounding>? perVertexRounding, optional @FloatRange(from=0.0, to=1.0) float vertexSpacing);
184    method public static androidx.graphics.shapes.RoundedPolygon pillStar(androidx.graphics.shapes.RoundedPolygon.Companion, optional float width, optional float height, optional int numVerticesPerRadius, optional @FloatRange(from=0.0, fromInclusive=false, to=1.0, toInclusive=false) float innerRadiusRatio, optional androidx.graphics.shapes.CornerRounding rounding, optional androidx.graphics.shapes.CornerRounding? innerRounding, optional java.util.List<androidx.graphics.shapes.CornerRounding>? perVertexRounding, optional @FloatRange(from=0.0, to=1.0) float vertexSpacing, optional @FloatRange(from=0.0, to=1.0) float startLocation);
185    method public static androidx.graphics.shapes.RoundedPolygon pillStar(androidx.graphics.shapes.RoundedPolygon.Companion, optional float width, optional float height, optional int numVerticesPerRadius, optional @FloatRange(from=0.0, fromInclusive=false, to=1.0, toInclusive=false) float innerRadiusRatio, optional androidx.graphics.shapes.CornerRounding rounding, optional androidx.graphics.shapes.CornerRounding? innerRounding, optional java.util.List<androidx.graphics.shapes.CornerRounding>? perVertexRounding, optional @FloatRange(from=0.0, to=1.0) float vertexSpacing, optional @FloatRange(from=0.0, to=1.0) float startLocation, optional float centerX);
186    method public static androidx.graphics.shapes.RoundedPolygon pillStar(androidx.graphics.shapes.RoundedPolygon.Companion, optional float width, optional float height, optional int numVerticesPerRadius, optional @FloatRange(from=0.0, fromInclusive=false, to=1.0, toInclusive=false) float innerRadiusRatio, optional androidx.graphics.shapes.CornerRounding rounding, optional androidx.graphics.shapes.CornerRounding? innerRounding, optional java.util.List<androidx.graphics.shapes.CornerRounding>? perVertexRounding, optional @FloatRange(from=0.0, to=1.0) float vertexSpacing, optional @FloatRange(from=0.0, to=1.0) float startLocation, optional float centerX, optional float centerY);
187    method public static androidx.graphics.shapes.RoundedPolygon rectangle(androidx.graphics.shapes.RoundedPolygon.Companion, optional float width, optional float height, optional androidx.graphics.shapes.CornerRounding rounding, optional java.util.List<androidx.graphics.shapes.CornerRounding>? perVertexRounding, optional float centerX, optional float centerY);
188    method public static androidx.graphics.shapes.RoundedPolygon star(androidx.graphics.shapes.RoundedPolygon.Companion, int numVerticesPerRadius);
189    method public static androidx.graphics.shapes.RoundedPolygon star(androidx.graphics.shapes.RoundedPolygon.Companion, int numVerticesPerRadius, optional float radius);
190    method public static androidx.graphics.shapes.RoundedPolygon star(androidx.graphics.shapes.RoundedPolygon.Companion, int numVerticesPerRadius, optional float radius, optional float innerRadius);
191    method public static androidx.graphics.shapes.RoundedPolygon star(androidx.graphics.shapes.RoundedPolygon.Companion, int numVerticesPerRadius, optional float radius, optional float innerRadius, optional androidx.graphics.shapes.CornerRounding rounding);
192    method public static androidx.graphics.shapes.RoundedPolygon star(androidx.graphics.shapes.RoundedPolygon.Companion, int numVerticesPerRadius, optional float radius, optional float innerRadius, optional androidx.graphics.shapes.CornerRounding rounding, optional androidx.graphics.shapes.CornerRounding? innerRounding);
193    method public static androidx.graphics.shapes.RoundedPolygon star(androidx.graphics.shapes.RoundedPolygon.Companion, int numVerticesPerRadius, optional float radius, optional float innerRadius, optional androidx.graphics.shapes.CornerRounding rounding, optional androidx.graphics.shapes.CornerRounding? innerRounding, optional java.util.List<androidx.graphics.shapes.CornerRounding>? perVertexRounding);
194    method public static androidx.graphics.shapes.RoundedPolygon star(androidx.graphics.shapes.RoundedPolygon.Companion, int numVerticesPerRadius, optional float radius, optional float innerRadius, optional androidx.graphics.shapes.CornerRounding rounding, optional androidx.graphics.shapes.CornerRounding? innerRounding, optional java.util.List<androidx.graphics.shapes.CornerRounding>? perVertexRounding, optional float centerX);
195    method public static androidx.graphics.shapes.RoundedPolygon star(androidx.graphics.shapes.RoundedPolygon.Companion, int numVerticesPerRadius, optional float radius, optional float innerRadius, optional androidx.graphics.shapes.CornerRounding rounding, optional androidx.graphics.shapes.CornerRounding? innerRounding, optional java.util.List<androidx.graphics.shapes.CornerRounding>? perVertexRounding, optional float centerX, optional float centerY);
196  }
197
198  public final class Shapes_androidKt {
199    method public static android.graphics.Path toPath(androidx.graphics.shapes.Morph, float progress, optional android.graphics.Path path);
200    method public static android.graphics.Path toPath(androidx.graphics.shapes.RoundedPolygon);
201    method public static android.graphics.Path toPath(androidx.graphics.shapes.RoundedPolygon, optional android.graphics.Path path);
202    method public static androidx.graphics.shapes.RoundedPolygon transformed(androidx.graphics.shapes.RoundedPolygon, android.graphics.Matrix matrix);
203  }
204
205  public final class SvgPathParser {
206    method public static java.util.List<androidx.graphics.shapes.Feature> parseFeatures(String svgPath);
207    field public static final androidx.graphics.shapes.SvgPathParser.Companion Companion;
208  }
209
210  public static final class SvgPathParser.Companion {
211    method public java.util.List<androidx.graphics.shapes.Feature> parseFeatures(String svgPath);
212  }
213
214}
215
216