msenkpiel
3/1/2012 - 9:53 AM

Javascript Utilities

Javascript Utilities

var Utils = {

	Math:{

		roundFloat:function(number, dec) {

			if (dec < 1 || dec > 14) {
				return false;
			}

			var e = Math.pow(10, dec);
			var k = (Math.round(number * e) / e).toString();

			if (k.indexOf('.') == -1) {
				k += '.';
			}

			k += e.toString().substring(1);

			return k.substring(0, k.indexOf('.') + dec + 1);
		},

		getPercentOfRange:function(xValue, scaleMin, scaleMax){
			var len = (scaleMax - scaleMin);
			return (xValue - scaleMin) / len;
		},

		getPositionOfRange:function(xPercent, scaleMin, scaleMax){
			var len = (scaleMin - scaleMax);
			return (xPercent * len) + scaleMin;
		},

		transformValueToScale:function(xValue, sourceScaleMin, sourceScaleMax, targetScaleMin, targetScaleMax){
			return this.getPositionOfRange(this.getPercentOfRange(xValue, sourceScaleMin, sourceScaleMax), targetScaleMin, targetScaleMax);
		}
	}
};