JSPM

@rbxts/math

1.0.0
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 10
  • Score
    100M100P100Q31801F
  • License MIT

A port of RobloxianDemo's Math module.

Package Exports

  • @rbxts/math
  • @rbxts/math/src/Math/init.luau

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@rbxts/math) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

Math

Math is a highly lightweight utility, served as an addition to Roblox's traditional Math library.

Installation

๐Ÿ“ฆ โ€” NPM:

npm i @rbxts/math

๐Ÿงถ โ€” Yarn:

yarn add @rbxts/math

๐Ÿ“€ โ€” pnPM:

pnpm add @rbxts/math

Math API

Math.Map

function Map<T extends number>(
    number: number,
    minimumA: number,
    maximumA: number,
    minimumB: number,
    maximumB: number,
): T;

Map the specified number using two ranges.

Math.Lerp

function Lerp<T extends number>(minimum: number, maximum: number, alpha: number): T;

Interpolate between two specified numbers with a given alpha number.

Math.LerpClamp

function LerpClamp<T extends number>(minimum: number, maximum: number, alpha: number): T;

Interpolate between two specified numbers with a given alpha number, which is clamped.

Math.InverseClamp

function InverseClamp<T extends number>(minimum: number, maximum: number, alpha: number): T;

Inverse lerp between two specified numbers to return its alpha number.

Math.LawOfCosines

function LawOfCosines<T extends number>(numberA: number, numberB: number, numberC: number): T;

Solve for the opposite angle from numberC.

Math.Round

function Round<T extends number>(number: number, precision: number): T;

Round the specified number relative to the given precision factor, utilizing math.round.

Math.RoundUp

function RoundUp<T extends number>(number: number, precision: number): T;

Round the specified number relative to the given precision factor, utilizing math.ceil.

Math.RoundDown

function RoundDown<T extends number>(number: number, precision: number): T;

Round the specified number relative to the given precision factor, utilizing math.floor.

Math.EulersNumber

function EulersNumber<T extends number>(): T;

Return eulers number.

Math.EulersConstant

function EulersConstant<T extends number>(): T;

Return eulers constant.

Math.GammaCoefficient

function GammaCoefficient<T extends number>(): T;

Return the gamma coefficient.

Math.GammaQuad

function GammaQuad<T extends number>(): T;

Return the gamma quad.

Math.GammaSet

function GammaSet<T extends number>(): T;

Return the gamma set.

Math.E

function E<T extends number>(): T;

Return E.

Math.Tau

function Tau<T extends number>(): T;

Return tau.

Math.AperysConstant

function AperysConstant<T extends number>(): T;

Return apery's constant.

Math.BelphegorsPrimeNumber

function BelphegorsPrimeNumber<T extends number>(): T;

Return belphegor's prime number.

Example

// Services
import { Workspace } from "@rbxts/services";

// Modules
import { Math } from "@rbxts/math";

// Functions
const Part = new Instance("Part");
Part.Name = "Part";
Part.Position = new Vector3(0, 5, 0);
Part.Size = new Vector3(5, 1, 5);
Part.Parent = Workspace;

const partPositionClamped = Math.LerpClamp(Part.Position.X + 1, Part.Position.Y + 1, Part.Position.Z + 1);

print(partPositionClamped);