public override float transform(float t) { if (t == 0.0 || t == 1.0) { D.assert(curve.transform(t).round() == t); return(t); } return(curve.transform(t)); }
protected override float transformInternal(float t) { D.assert(t >= 0.0 && t <= 1.0); D.assert(begin >= 0.0); D.assert(begin <= 1.0); D.assert(end >= 0.0); D.assert(end <= 1.0); D.assert(end >= begin); t = ((t - begin) / (end - begin)).clamp(0.0f, 1.0f); if (t == 0.0 || t == 1.0) { return(t); } return(curve.transform(t)); }
public override float x(float timeInSeconds) { float t = (timeInSeconds / _durationInSeconds).clamp(0.0f, 1.0f); if (t == 0.0f) { return(_begin); } else if (t == 1.0f) { return(_end); } else { return(_begin + (_end - _begin) * _curve.transform(t)); } }
protected override float transformInternal(float t) { return(1.0f - curve.transform(1.0f - t)); }