UNPKG

fabric

Version:

Object model for HTML5 canvas, and SVG-to-canvas parser. Backed by jsdom and node-canvas.

1 lines 954 B
{"version":3,"file":"cos.mjs","names":[],"sources":["../../../../src/util/misc/cos.ts"],"sourcesContent":["import type { TRadian } from '../../typedefs';\nimport { halfPI } from '../../constants';\n\n/**\n * Calculate the cos of an angle, avoiding returning floats for known results\n * This function is here just to avoid getting 0.999999999999999 when dealing\n * with numbers that are really 1 or 0.\n * @param {TRadian} angle the angle\n * @return {Number} the cosin value for angle.\n */\nexport const cos = (angle: TRadian): number => {\n if (angle === 0) {\n return 1;\n }\n const angleSlice = Math.abs(angle) / halfPI;\n switch (angleSlice) {\n case 1:\n case 3:\n return 0;\n case 2:\n return -1;\n }\n return Math.cos(angle);\n};\n"],"mappings":";;;;;;;;;AAUA,MAAa,OAAO,UAA2B;AAC7C,KAAI,UAAU,EACZ,QAAO;AAGT,SADmB,KAAK,IAAI,MAAM,GAAG,QACrC;EACE,KAAK;EACL,KAAK,EACH,QAAO;EACT,KAAK,EACH,QAAO;;AAEX,QAAO,KAAK,IAAI,MAAM"}