PathInterpolator
public
class
PathInterpolator
extends Object
implements
Interpolator
java.lang.Object | |
↳ | androidx.core.animation.PathInterpolator |
An interpolator that can traverse a Path that extends from Point
(0, 0)
to (1, 1)
. The x coordinate along the Path
is the input value and the output is the y coordinate of the line at that point.
This means that the Path must conform to a function y = f(x)
.
The Path
must not have gaps in the x direction and must not
loop back on itself such that there can be two points sharing the same x coordinate.
It is alright to have a disjoint line in the vertical direction:
Path path = new Path(); path.lineTo(0.25f, 0.25f); path.moveTo(0.25f, 0.5f); path.lineTo(1f, 1f);
Summary
Public constructors | |
---|---|
PathInterpolator(Path path)
Create an interpolator for an arbitrary |
|
PathInterpolator(float controlX, float controlY)
Create an interpolator for a quadratic Bezier curve. |
|
PathInterpolator(float controlX1, float controlY1, float controlX2, float controlY2)
Create an interpolator for a cubic Bezier curve. |
|
PathInterpolator(Context context, AttributeSet attrs, XmlPullParser parser)
Create an interpolator from XML. |
|
PathInterpolator(Resources res, Resources.Theme theme, AttributeSet attrs, XmlPullParser parser)
Create an interpolator from XML. |
Public methods | |
---|---|
float
|
getInterpolation(float t)
Using the line in the Path in this interpolator that can be described as
|
Inherited methods | |
---|---|
Public constructors
PathInterpolator
public PathInterpolator (Path path)
Create an interpolator for an arbitrary Path
. The Path
must begin at (0, 0)
and end at (1, 1)
.
Parameters | |
---|---|
path |
Path : The Path to use to make the line representing the interpolator.
|
PathInterpolator
public PathInterpolator (float controlX, float controlY)
Create an interpolator for a quadratic Bezier curve. The end points
(0, 0)
and (1, 1)
are assumed.
Parameters | |
---|---|
controlX |
float : The x coordinate of the quadratic Bezier control point. |
controlY |
float : The y coordinate of the quadratic Bezier control point.
|
PathInterpolator
public PathInterpolator (float controlX1, float controlY1, float controlX2, float controlY2)
Create an interpolator for a cubic Bezier curve. The end points
(0, 0)
and (1, 1)
are assumed.
Parameters | |
---|---|
controlX1 |
float : The x coordinate of the first control point of the cubic Bezier. |
controlY1 |
float : The y coordinate of the first control point of the cubic Bezier. |
controlX2 |
float : The x coordinate of the second control point of the cubic Bezier. |
controlY2 |
float : The y coordinate of the second control point of the cubic Bezier.
|
PathInterpolator
public PathInterpolator (Context context, AttributeSet attrs, XmlPullParser parser)
Create an interpolator from XML.
Parameters | |
---|---|
context |
Context : The context. |
attrs |
AttributeSet : The AttributeSet for pathInterpolator. |
parser |
XmlPullParser : The XmlPullParser that was used to create the AttributeSet with
Xml.asAttributeSet(XmlPullParser) .
|
PathInterpolator
public PathInterpolator (Resources res, Resources.Theme theme, AttributeSet attrs, XmlPullParser parser)
Create an interpolator from XML.
Parameters | |
---|---|
res |
Resources : The resources. |
theme |
Resources.Theme : The theme. |
attrs |
AttributeSet : The AttributeSet for pathInterpolator. |
parser |
XmlPullParser : The XmlPullParser that was used to create the AttributeSet with
Xml.asAttributeSet(XmlPullParser) .
|
Public methods
getInterpolation
public float getInterpolation (float t)
Using the line in the Path in this interpolator that can be described as
y = f(x)
, finds the y coordinate of the line given t
as the x coordinate. Values less than 0 will always return 0 and values greater
than 1 will always return 1.
Parameters | |
---|---|
t |
float : Treated as the x coordinate along the line.Value is between 0.0 and 1.0 inclusive. |
Returns | |
---|---|
float |
The y coordinate of the Path along the line where x = t . |
See also: