UNPKG

c8y-openlayer

Version:

This module is designed to help integrate Openlayer with Cumulocity IoT

64 lines (53 loc) 1.33 kB
var _ol_easing_ = {}; /** * Start slow and speed up. * @param {number} t Input between 0 and 1. * @return {number} Output between 0 and 1. * @api */ _ol_easing_.easeIn = function(t) { return Math.pow(t, 3); }; /** * Start fast and slow down. * @param {number} t Input between 0 and 1. * @return {number} Output between 0 and 1. * @api */ _ol_easing_.easeOut = function(t) { return 1 - _ol_easing_.easeIn(1 - t); }; /** * Start slow, speed up, and then slow down again. * @param {number} t Input between 0 and 1. * @return {number} Output between 0 and 1. * @api */ _ol_easing_.inAndOut = function(t) { return 3 * t * t - 2 * t * t * t; }; /** * Maintain a constant speed over time. * @param {number} t Input between 0 and 1. * @return {number} Output between 0 and 1. * @api */ _ol_easing_.linear = function(t) { return t; }; /** * Start slow, speed up, and at the very end slow down again. This has the * same general behavior as {@link ol.easing.inAndOut}, but the final slowdown * is delayed. * @param {number} t Input between 0 and 1. * @return {number} Output between 0 and 1. * @api */ _ol_easing_.upAndDown = function(t) { if (t < 0.5) { return _ol_easing_.inAndOut(2 * t); } else { return 1 - _ol_easing_.inAndOut(2 * (t - 0.5)); } }; export default _ol_easing_;