OffsetEdgeTreatment


Kotlin |Java

public final class OffsetEdgeTreatment extends EdgeTreatment 


Offsets a different edge treatment by the given amount.

Summary

Public constructors

OffsetEdgeTreatment(EdgeTreatment other, float offset)

Public methods

void
getEdgePath(
float length,
float center,
float interpolation,
ShapePath shapePath
)

Generates a ShapePath for this edge treatment.

void
(削除) getEdgePath (削除ここまで)(float length, float interpolation, ShapePath shapePath)

This method is deprecated.

Does not support interpolation.

Inherited methods

From com.google.android.material.shape.EdgeTreatment

Public constructors

OffsetEdgeTreatment

public OffsetEdgeTreatment(EdgeTreatment other, float offset)

Public methods

getEdgePath

public void getEdgePath(
float length,
float center,
float interpolation,
ShapePath shapePath
)

Generates a ShapePath for this edge treatment.

EdgeTreatments have an origin of (0, 0) and a destination of (0, length) (i.e. they represent the top edge), and are automatically rotated and scaled as necessary when applied to other edges. Only the horizontal, top EdgeTreatment needs to be defined in order to apply it to all four edges.

Parameters
float length

the length of the edge.

float center

the distance to the center of the edge. This takes into account any offset added by the proceeding corner. Drawing anything at (center, 0) will be center aligned with the shape. Normally you'll want to use this instead of length / 2.

float interpolation

the interpolation of the edge treatment. Ranges between 0 (none) and 1 (fully) interpolated. Custom edge treatments can implement interpolation to support shape transition between two arbitrary states. Typically, a value of 0 indicates that the custom edge treatment is not rendered (i.e. that it is a straight line), and a value of 1 indicates that the treatment is fully rendered. Animation between these two values can "heal" or "reveal" an edge treatment.

ShapePath shapePath

the ShapePath that this treatment should write to.

Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Last updated 2026年05月14日 UTC.