js-electrical-engineering-equations
Version:
This is an ES6/ES2015 library of Electrical Engineering Equations. It works with Typescript, es6, and es5.
81 lines (71 loc) • 2.18 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
/**
*
* Takes a number and sets it to a given decimal precision.
*
* @param {number} num
* @param {number} precision
* @return {number}
*/
function getFloat() {
var num = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
var precision = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 2;
return parseFloat(num.toFixed(precision));
}
/**
* Takes meters and converts them to centimeters with a given precision.
* @param {number} meters
* @param {number} precision
* @return {number}
*/
function metersToCentimeters(meters) {
var precision = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 4;
return getFloat(meters * 100, precision);
}
/**
* Takes meters and converts them to feet with a given precision.
* @param {number} meters
* @param {number} precision
* @return {number}
*/
function metersToFeet(meters) {
var precision = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 4;
return getFloat(meters * 3.2808399, precision);
}
/**
* Takes meters and converts them to inches with a given precision.
* @param {number} meters
* @param {number} precision
* @return {number}
*/
function metersToInches(meters) {
var precision = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 4;
return getFloat(meters * 3.2808399 * 12, precision);
}
/**
* Takes a unit of length, a length in meters and converts meters to the given unit of length with the specified precision.
* @param unit
* @param value
* @param precision
* @return {number}
*/
function meterConversion(unit, value, precision) {
switch (unit) {
case 'cm':
return metersToCentimeters(value, precision);
case 'm':
return getFloat(value, precision);
case 'f':
return metersToFeet(value, precision);
case 'in':
return metersToInches(value, precision);
}
}
exports.getFloat = getFloat;
exports.metersToCentimeters = metersToCentimeters;
exports.metersToFeet = metersToFeet;
exports.metersToInches = metersToInches;
exports.meterConversion = meterConversion;