diff --git a/zh-cn/application-dev/reference/apis/js-apis-curve.md b/zh-cn/application-dev/reference/apis/js-apis-curve.md index 433c7e17adfeb2a33b13edbd477b5966138ed4c6..333e0779f286e16a054af0dc42a760fe9eae7566 100644 --- a/zh-cn/application-dev/reference/apis/js-apis-curve.md +++ b/zh-cn/application-dev/reference/apis/js-apis-curve.md @@ -220,14 +220,12 @@ interpolatingSpring(velocity: number, mass: number, stiffness: number, damping: | stiffness | number | 是 | 刚度。表示物体抵抗施加的力而形变的程度。刚度越大,抵抗变形的能力越强,恢复到平衡位置的速度越快。 | | damping | number | 是 | 阻尼。是一个纯数,无真实的物理意义,用于描述系统在受到扰动后震荡及衰减的情形。阻尼越大,弹性运动的震荡次数越少、震荡幅度越小。 | - **返回值:** | 类型 | 说明 | | ---------------------------------- | ---------------- | | [ICurve](#icurve)| 曲线的插值对象。 | - **示例:** ```ts @@ -235,6 +233,37 @@ import Curves from '@ohos.curves' Curves.interpolatingSpring(100, 1, 228, 30) // 创建一个时长由弹簧参数决定的弹簧插值曲线 ``` +## Curves.customCurve10+ + +customCurve(interpolate: (fraction: number) => number): ICurve + +构造自定义曲线对象。 + +**系统能力:** SystemCapability.ArkUI.ArkUI.Full + +**参数:** + +| 参数名 | 类型 | 必填 | 说明 | +| ----------- | ---------------------------- | ---- | ------------------------------------------------------------ | +| interpolate | (fraction: number) => number | 是 | 用户自定义的插值回调函数。
fraction为动画开始时的插值输入x值。取值范围:[0,1]
返回值为曲线的y值。取值范围:[0,1]
**说明:**
fraction等于0时,返回值为0对应动画起点,返回不为0,动画在起点处有跳变效果。
fraction等于1时,返回值为1对应动画终点,返回值不为1将导致动画的终值不是状态变量的值,出现大于或者小于状态变量值,再跳变到状态变量值的效果。 | + +**返回值:** + +| 类型 | 说明 | +| ----------------- | ---------------- | +| [ICurve](#icurve) | 曲线的插值对象。 | + +**示例:** + +```ts +import Curves from '@ohos.curves' +interpolate(fraction) { + return Math.sqrt(fraction); + } +Curves.customCurve(this.interpolate) // 创建一个用户自定义插值曲线 +``` + + ## ICurve