react-planner-viewer
Version:
react-planner-viewer is a React Component for view plans builded with react-planner in 2D mode
44 lines (39 loc) • 3.69 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports._toFixedFloat = _toFixedFloat;
exports.toFixedFloat = toFixedFloat;
/** @description Return float fixed to desired precision, > 32 bit error
* @param {number} num Float to fix
* @param {number} precision Desired precision, or 6 if not specified
* @return {number}
*/
function _toFixedFloat(num) {
var precision = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 6;
if (num && precision) {
var prec = Math.pow(10, precision);
return ~~(num * prec) / prec;
}
return 0;
}
/** @description Return float fixed to desired precision
* @param {number} num Float to fix
* @param {number} precision Desired precision, or 6 if not specified
* @return {number}
*/
function toFixedFloat(num) {
var precision = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 6;
if (num && precision) {
return parseFloat(parseFloat(num).toFixed(precision));
}
return 0;
}
/** @description Return absolute value of a number
* @param {number} n Number of wich get value without sign
* @return {number}
*/
var fAbs = exports.fAbs = function fAbs(n) {
var x = n;x < 0 && (x = ~x + 1);return x;
};
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9tYXRoLmpzIl0sIm5hbWVzIjpbIl90b0ZpeGVkRmxvYXQiLCJ0b0ZpeGVkRmxvYXQiLCJudW0iLCJwcmVjaXNpb24iLCJwcmVjIiwiTWF0aCIsInBvdyIsInBhcnNlRmxvYXQiLCJ0b0ZpeGVkIiwiZkFicyIsIngiLCJuIl0sIm1hcHBpbmdzIjoiOzs7OztRQUtnQkEsYSxHQUFBQSxhO1FBYUFDLFksR0FBQUEsWTtBQWxCaEI7Ozs7O0FBS08sU0FBU0QsYUFBVCxDQUF1QkUsR0FBdkIsRUFBMkM7QUFBQSxNQUFmQyxTQUFlLHVFQUFILENBQUc7O0FBQ2hELE1BQUlELE9BQU9DLFNBQVgsRUFBc0I7QUFDcEIsUUFBSUMsT0FBUUMsS0FBS0MsR0FBTCxDQUFTLEVBQVQsRUFBWUgsU0FBWixDQUFaO0FBQ0EsV0FBUyxDQUFDLEVBQUVELE1BQU1FLElBQVIsQ0FBRCxHQUFpQkEsSUFBMUI7QUFDRDtBQUNELFNBQU8sQ0FBUDtBQUNEOztBQUVEOzs7OztBQUtPLFNBQVNILFlBQVQsQ0FBc0JDLEdBQXRCLEVBQTBDO0FBQUEsTUFBZkMsU0FBZSx1RUFBSCxDQUFHOztBQUMvQyxNQUFJRCxPQUFPQyxTQUFYLEVBQXNCO0FBQ3BCLFdBQU9JLFdBQVlBLFdBQVlMLEdBQVosRUFBa0JNLE9BQWxCLENBQTJCTCxTQUEzQixDQUFaLENBQVA7QUFDRDtBQUNELFNBQU8sQ0FBUDtBQUNEOztBQUVEOzs7O0FBSU8sSUFBTU0sc0JBQU8sU0FBUEEsSUFBTyxJQUFLO0FBQUUsTUFBSUMsSUFBSUMsQ0FBUixDQUFZRCxJQUFFLENBQUgsS0FBVUEsSUFBRSxDQUFDQSxDQUFELEdBQUcsQ0FBZixFQUFtQixPQUFPQSxDQUFQO0FBQVcsQ0FBN0QiLCJmaWxlIjoibWF0aC5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8qKiBAZGVzY3JpcHRpb24gUmV0dXJuIGZsb2F0IGZpeGVkIHRvIGRlc2lyZWQgcHJlY2lzaW9uLCA+IDMyIGJpdCBlcnJvclxuICogIEBwYXJhbSB7bnVtYmVyfSBudW0gRmxvYXQgdG8gZml4XG4gKiAgQHBhcmFtIHtudW1iZXJ9IHByZWNpc2lvbiBEZXNpcmVkIHByZWNpc2lvbiwgb3IgNiBpZiBub3Qgc3BlY2lmaWVkXG4gKiAgQHJldHVybiB7bnVtYmVyfVxuKi9cbmV4cG9ydCBmdW5jdGlvbiBfdG9GaXhlZEZsb2F0KG51bSwgcHJlY2lzaW9uID0gNikge1xuICBpZiAobnVtICYmIHByZWNpc2lvbikge1xuICAgIGxldCBwcmVjID0gKE1hdGgucG93KDEwLHByZWNpc2lvbikpO1xuICAgIHJldHVybiAoIH5+KG51bSAqIHByZWMpIC8gcHJlYyk7XG4gIH1cbiAgcmV0dXJuIDA7XG59XG5cbi8qKiBAZGVzY3JpcHRpb24gUmV0dXJuIGZsb2F0IGZpeGVkIHRvIGRlc2lyZWQgcHJlY2lzaW9uXG4gKiAgQHBhcmFtIHtudW1iZXJ9IG51bSBGbG9hdCB0byBmaXhcbiAqICBAcGFyYW0ge251bWJlcn0gcHJlY2lzaW9uIERlc2lyZWQgcHJlY2lzaW9uLCBvciA2IGlmIG5vdCBzcGVjaWZpZWRcbiAqICBAcmV0dXJuIHtudW1iZXJ9XG4qL1xuZXhwb3J0IGZ1bmN0aW9uIHRvRml4ZWRGbG9hdChudW0sIHByZWNpc2lvbiA9IDYpIHtcbiAgaWYgKG51bSAmJiBwcmVjaXNpb24pIHtcbiAgICByZXR1cm4gcGFyc2VGbG9hdCggcGFyc2VGbG9hdCggbnVtICkudG9GaXhlZCggcHJlY2lzaW9uICkgKTtcbiAgfVxuICByZXR1cm4gMDtcbn1cblxuLyoqIEBkZXNjcmlwdGlvbiBSZXR1cm4gYWJzb2x1dGUgdmFsdWUgb2YgYSBudW1iZXJcbiAqICBAcGFyYW0ge251bWJlcn0gbiBOdW1iZXIgb2Ygd2ljaCBnZXQgdmFsdWUgd2l0aG91dCBzaWduXG4gKiAgQHJldHVybiB7bnVtYmVyfVxuKi9cbmV4cG9ydCBjb25zdCBmQWJzID0gbiA9PiB7IGxldCB4ID0gbjsgKHg8MCkgJiYgKHg9fngrMSk7IHJldHVybiB4OyB9O1xuIl19