Skip to main content
Version: bleeding-edge 🩸

NanosMath

A table containing useful and aux Math functions.

🗿Static Class
This is a Static Class. Access it's methods directly with .. It's not possible to spawn new instances.
👐Open Source
This library implementation is Open Sourced on GitHub!
🧑‍💻API Source
This page is auto-generated! The Functions, Properties and Events described here are defined in our GitHub's API Repository! Feel free to commit suggestions and changes to the source .json API files!

🎒 Examples

(NanosMath.ClampAxis) Clamping an angle
local axis = NanosMath.ClampAxis(720)
(NanosMath.FInterpTo) Interpolating a number until it reaches 100 with speed 3
local my_value = 0
Client.Subscribe("Tick", function(delta_time)
my_value = NanosMath.FInterpTo(my_value, 100, delta_time, 3)
end)
(NanosMath.VInterpTo) Interpolating a Vector until it reaches Vector(1000, 200, 100) with speed 5
local my_value = Vector(0, 0, 0)
Client.Subscribe("Tick", function(delta_time)
my_value = NanosMath.VInterpTo(my_value, Vector(1000, 200, 100), delta_time, 5)
end)

🗿 Static Functions

ReturnsNameDescription
numberRoundRounds a number
numberClampClamps a number
numberClampAxisClamps an angle to the range of [0, 360]
numberNormalizeAxisClamps an angle to the range of [-180, 180]
Vector, RotatorRelativeToCalculates the location and rotation relative to an actor
floatRandomFloatReturns a random float value
numberFInterpToInterpolate number from Current to Target
RotatorRInterpToInterpolate Rotator from Current to Target
RotatorRInterpConstantToInterpolate Rotator from Current to Target with a constant step
VectorVInterpToInterpolate Vector from Current to Target
VectorVInterpConstantToInterpolate Vector from Current to Target with a constant step

Round

Rounds a number

— Returns number (the rounded number).

local ret = NanosMath.Round(value)
TypeParameterDefaultDescription
numbervalue Required parameter The number to be rounded

Clamp

Clamps a number

— Returns number (the number clamped).

local ret = NanosMath.Clamp(value, min, max)
TypeParameterDefaultDescription
numbervalue Required parameter The number to be clamped
numbermin Required parameter The min value
numbermax Required parameter The max value

ClampAxis

Clamps an angle to the range of [0, 360]

— Returns number (the number clamped).

local ret = NanosMath.ClampAxis(value)
TypeParameterDefaultDescription
numbervalue Required parameter The number to be clamped
NanosMath.ClampAxis Examples
Clamping an angle
local axis = NanosMath.ClampAxis(720)

NormalizeAxis

Clamps an angle to the range of [-180, 180]

— Returns number (the number clamped).

local ret = NanosMath.NormalizeAxis(value)
TypeParameterDefaultDescription
numbervalue Required parameter The number to be clamped

RelativeTo

Calculates the location and rotation relative to an actor

— Returns Vector, Rotator (the location relative to the actor, the rotation relative to the actor).

local ret_01, ret_02 = NanosMath.RelativeTo(location, rotation, actor)
TypeParameterDefaultDescription
Vectorlocation Required parameter The location of the new system
Rotatorrotation Required parameter The rotation of the new system
Base Actoractor Required parameter The actor to be translated to the new system

RandomFloat

Returns a random float value

— Returns float (the random value).

local ret = NanosMath.RandomFloat(min, max)
TypeParameterDefaultDescription
floatmin Required parameter Minimum value
floatmax Required parameter Maximum value

FInterpTo

Interpolate number from Current to Target

— Returns number.

local ret = NanosMath.FInterpTo(current, target, delta_time, interp_speed)
TypeParameterDefaultDescription
numbercurrent Required parameter No description provided
numbertarget Required parameter No description provided
numberdelta_time Required parameter No description provided
numberinterp_speed Required parameter No description provided
NanosMath.FInterpTo Examples
Interpolating a number until it reaches 100 with speed 3
local my_value = 0
Client.Subscribe("Tick", function(delta_time)
my_value = NanosMath.FInterpTo(my_value, 100, delta_time, 3)
end)

RInterpTo

Interpolate Rotator from Current to Target

— Returns Rotator.

local ret = NanosMath.RInterpTo(current, target, delta_time, interp_speed)
TypeParameterDefaultDescription
Rotatorcurrent Required parameter No description provided
Rotatortarget Required parameter No description provided
numberdelta_time Required parameter No description provided
numberinterp_speed Required parameter No description provided

RInterpConstantTo

Interpolate Rotator from Current to Target with a constant step

— Returns Rotator.

local ret = NanosMath.RInterpConstantTo(current, target, delta_time, interp_speed)
TypeParameterDefaultDescription
Rotatorcurrent Required parameter No description provided
Rotatortarget Required parameter No description provided
numberdelta_time Required parameter No description provided
numberinterp_speed Required parameter No description provided

VInterpTo

Interpolate Vector from Current to Target

— Returns Vector.

local ret = NanosMath.VInterpTo(current, target, delta_time, interp_speed)
TypeParameterDefaultDescription
Vectorcurrent Required parameter No description provided
Vectortarget Required parameter No description provided
numberdelta_time Required parameter No description provided
numberinterp_speed Required parameter No description provided
NanosMath.VInterpTo Examples
Interpolating a Vector until it reaches Vector(1000, 200, 100) with speed 5
local my_value = Vector(0, 0, 0)
Client.Subscribe("Tick", function(delta_time)
my_value = NanosMath.VInterpTo(my_value, Vector(1000, 200, 100), delta_time, 5)
end)

VInterpConstantTo

Interpolate Vector from Current to Target with a constant step

— Returns Vector.

local ret = NanosMath.VInterpConstantTo(current, target, delta_time, interp_speed)
TypeParameterDefaultDescription
Vectorcurrent Required parameter No description provided
Vectortarget Required parameter No description provided
numberdelta_time Required parameter No description provided
numberinterp_speed Required parameter No description provided