Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Basic lerp
- function lerp (min, max, amount) {
- return min + amount * (max - min);
- }
- // Lerp values in string
- function lerpAllNumbers (a, b, amount) {
- var aNumbers = separateNumbers(a);
- var bNumbers = separateNumbers(b);
- var returnValue = null;
- if (aNumbers.length === bNumbers.length) {
- for (var i = 0; i < aNumbers.length; i++) {
- var searchString = aNumbers[i].value + aNumbers[i].extension;
- var newValue = lerp(aNumbers[i].value, bNumbers[i].value, amount).toFixed(3) + aNumbers[i].extension;
- returnValue = a.toString().replace(searchString, newValue);
- }
- return returnValue;
- }
- }
- // Separate numbers from string and create object with value and extension
- function separateNumbers(text) {
- var splitter = text.toString().split(" ");
- var returnArray = [];
- splitter.forEach(function(item){
- var numberObj = {
- value: parseFloat(item),
- extension: item.replace(/^-?d+((.|,)d+)?/g, '')
- }
- returnArray.push(numberObj);
- });
- return returnArray;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement