BinaryAnimator.java
net.minecraft.util.BinaryAnimator
信息
- 全限定名:net.minecraft.util.BinaryAnimator
- 类型:public class
- 包:net.minecraft.util
- 源码路径:src/main/java/net/minecraft/util/BinaryAnimator.java
- 起始行号:L3
- 职责:
TODO
字段/常量
-
animationLength- 类型:
int - 修饰符:
private final - 源码定位:
L4 - 说明:
TODO
- 类型:
-
easing- 类型:
EasingType - 修饰符:
private final - 源码定位:
L5 - 说明:
TODO
- 类型:
-
ticks- 类型:
int - 修饰符:
private - 源码定位:
L6 - 说明:
TODO
- 类型:
-
ticksOld- 类型:
int - 修饰符:
private - 源码定位:
L7 - 说明:
TODO
- 类型:
内部类/嵌套类型
- 无
构造器
public BinaryAnimator(int animationLength, EasingType easing) @ L9
- 构造器名:BinaryAnimator
- 源码定位:L9
- 修饰符:public
参数:
- animationLength: int
- easing: EasingType
说明:
TODO
public BinaryAnimator(int animationLength) @ L14
- 构造器名:BinaryAnimator
- 源码定位:L14
- 修饰符:public
参数:
- animationLength: int
说明:
TODO
方法
下面的方法块按源码顺序生成。
public void tick(boolean active) @ L18
- 方法名:tick
- 源码定位:L18
- 返回类型:void
- 修饰符:public
参数:
- active: boolean
说明:
TODO
public float getFactor(float partialTicks) @ L29
- 方法名:getFactor
- 源码定位:L29
- 返回类型:float
- 修饰符:public
参数:
- partialTicks: float
说明:
TODO
代码
public class BinaryAnimator {
private final int animationLength;
private final EasingType easing;
private int ticks;
private int ticksOld;
public BinaryAnimator(int animationLength, EasingType easing) {
this.animationLength = animationLength;
this.easing = easing;
}
public BinaryAnimator(int animationLength) {
this(animationLength, EasingType.LINEAR);
}
public void tick(boolean active) {
this.ticksOld = this.ticks;
if (active) {
if (this.ticks < this.animationLength) {
this.ticks++;
}
} else if (this.ticks > 0) {
this.ticks--;
}
}
public float getFactor(float partialTicks) {
float factor = Mth.lerp(partialTicks, (float)this.ticksOld, (float)this.ticks) / this.animationLength;
return this.easing.apply(factor);
}
}引用的其他类
-
- 引用位置:
参数/字段
- 引用位置:
-
- 引用位置:
方法调用 - 关联成员:
Mth.lerp()
- 引用位置: