UNPKG

map-number

Version:

processing/p5.js map like function, including floating point numbers support

1 lines 2.76 kB
{"version":3,"file":"map.min.mjs","sources":["../../src/map.ts","../../src/transform.ts","../../src/ceil.ts","../../src/compile.ts","../../src/floor.ts","../../src/limit.ts","../../src/round.ts"],"sourcesContent":["export function map(num: number, inMin: number, inMax: number, outMin: number, outMax: number): number {\n return (num - inMin) * (outMax - outMin) / (inMax - inMin) + outMin;\n}\n","import { MapFunction, TransformFunction } from './types';\n\nexport function transformed<O = number, M = number, I = number>(map: MapFunction<M, I>, transform: TransformFunction<M, O>): MapFunction<O, I> {\n return (num: I, inMin: number, inMax: number, outMin: number, outMax: number): O => transform(\n map(num, inMin, inMax, outMin, outMax),\n );\n}\n","import { map } from './map';\nimport { transformed } from './transform';\n\nexport const ceil = transformed(map, Math.ceil);\n","import { CompiledMapFunction, MapFunction } from './types';\n\nexport function compile<O = number, I = number>(map: MapFunction<O, I>, inMin: number, inMax: number, outMin: number, outMax: number): CompiledMapFunction<O, I> {\n return (value: I): O => map(value, inMin, inMax, outMin, outMax);\n}\n","import { map } from './map';\nimport { transformed } from './transform';\n\nexport const floor = transformed(map, Math.floor);\n","import { map } from './map';\n\nexport function limit(num: number, inMin: number, inMax: number, outMin: number, outMax: number): number {\n\n const result = map(num, inMin, inMax, outMin, outMax);\n\n let boundMin = outMin;\n let boundMax = outMax;\n\n if (boundMax < boundMin) {\n const temp = boundMin;\n boundMin = boundMax;\n boundMax = temp;\n }\n\n return result > boundMax ? boundMax : result < boundMin ? boundMin : result;\n\n}\n","import { map } from './map';\nimport { transformed } from './transform';\n\nexport const round = transformed(map, Math.round);\n"],"names":["map","num","inMin","inMax","outMin","outMax","transformed","transform","ceil","Math","compile","value","floor","limit","result","boundMin","boundMax","temp","round"],"mappings":"AAAM,SAAUA,EAAIC,EAAaC,EAAeC,EAAeC,EAAgBC,GAC7E,OAAQJ,EAAMC,IAAUG,EAASD,IAAWD,EAAQD,GAASE,CAC/D,CCAgB,SAAAE,EAAgDN,EAAwBO,GACtF,MAAO,CAACN,EAAQC,EAAeC,EAAeC,EAAgBC,IAAsBE,EAClFP,EAAIC,EAAKC,EAAOC,EAAOC,EAAQC,GAEnC,CCHO,MAAMG,EAAOF,EAAYN,EAAKS,KAAKD,MCDpC,SAAUE,EAAgCV,EAAwBE,EAAeC,EAAeC,EAAgBC,GACpH,OAAQM,GAAgBX,EAAIW,EAAOT,EAAOC,EAAOC,EAAQC,EAC3D,CCDO,MAAMO,EAAQN,EAAYN,EAAKS,KAAKG,OCDrC,SAAUC,EAAMZ,EAAaC,EAAeC,EAAeC,EAAgBC,GAE/E,MAAMS,EAASd,EAAIC,EAAKC,EAAOC,EAAOC,EAAQC,GAE9C,IAAIU,EAAWX,EACXY,EAAWX,EAEf,GAAIW,EAAWD,EAAU,CACvB,MAAME,EAAOF,EACbA,EAAWC,EACXA,EAAWC,CACb,CAEA,OAAOH,EAASE,EAAWA,EAAWF,EAASC,EAAWA,EAAWD,CAEvE,CCdO,MAAMI,EAAQZ,EAAYN,EAAKS,KAAKS"}