Socket
Book a DemoInstallSign in
Socket

@okiba/math

Package Overview
Dependencies
Maintainers
3
Versions
28
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@okiba/math

Math functions used in okiba.js

latest
Source
npmnpm
Version
1.0.26
Version published
Maintainers
3
Created
Source

Okiba / math

Collection of math functions

__

Installation

npm i --save @okiba/math

Or import it directly in the browser

<script type="module" src="https://unpkg.com/@okiba/math/index.js"></script>

Usage

import math from '@okiba/math'

Untranspiled code 🛑

Okiba Core packages are not transpiled, so don't forget to transpile them with your favourite bundler. For example, using Babel with Webpack, you should prevent imports from okiba to be excluded from transpilation, like follows:

{
  test: /\.js$/,
  exclude: /node_modules\/(?!(@okiba)\/).*/,
  use: {
    loader: 'babel-loader',
    options: {
      presets: ['@babel/preset-env']
    }
  }
}

lerp(min, max, fraction)

Linear interpolation between a two values

import {lerp} from '@okiba/math'
const xPosition = lerp(0, 100, 0.5)
console.log(xPosition) // 50

Arguments

+ min: Number

Minimum possible value

+ max: Number

Maximum possible value

+ fraction: Number

Current position

Returns

Number The interpolated value

map(n, min1, max1, min2, max2)

Maps a value between two ranges

import {map} from '@okiba/math'

const x = map(0.5, 0, 1, 0, 1000)
console.log(x) // 500

const y = map(0, -1, 1, -1000, 1000)
console.log(y) // 0

Arguments

+ n: Number

Value to map

+ min1: Number

Source range minimum

+ max1: Number

Source range maximum

+ min2: Number

Target range minimum

+ max2: Number

Target range maximum

Returns

Number Mapped value

cap(n, min, max)

Limit a value between a min and a max (inclusive)

import {cap} from '@okiba/math'
let progress = 1.1
progress = cap(0, 1, progress)
console.log(progress) // 1

Arguments

+ n: Number

Value to cap

+ min: Number

Minimum possible value

+ max: Number

Maximum possible value

Returns

Number Capped value

distance(x1, x2)

Distance between two numbers

import {distance} from '@okiba/math'
const x1 = -100, x2 = 100
const d = distance(x1, x2)
console.log(d) // 200

Arguments

+ x1: Number

First number

+ x2: Number

Second number

Returns

Number Distance between the values

round(n, p)

Round a number with given precision, with memoized powers

import {round} from '@okiba/math'
const rounded = distance(1.111111, 3)
console.log(rounded) // 1.111

Arguments

+ n: Number

Number to round

+ p: Number | optional - default: 3

Precision of digits to leave

Returns

Number Rounded number

FAQs

Package last updated on 26 May 2020

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts