Lua MathExtra: Difference between revisions
From Spring
Jump to navigationJump to search
No edit summary |
|||
| Line 2: | Line 2: | ||
= Additional math functions= | = Additional math functions= | ||
'''math.clamp''' {{new|95}} | |||
( number x, number min, number max ) -> number | |||
<span class="note">Returns x clamped to min and max boundaries.</span> | |||
'''math.diag''' {{new|95}} | |||
( number x1 [, ... ] ] ) -> number | |||
<span class="note">Returns the length of diagonal of an n-dimensional box. Rather quick method that does not | |||
handle intermediate overflows/underflows nor is made for numerical stability.</span> | |||
'''math.erf''' {{new|95}} | |||
( number x ) -> number | |||
<span class="note">Returns [http://en.wikipedia.org/wiki/Error_function erf](x).</span> | |||
'''math.hypot''' {{new|95}} | '''math.hypot''' {{new|95}} | ||
( number x, number y ) -> number | ( number x, number y ) -> number | ||
| Line 8: | Line 21: | ||
overflows/underflows, but is also slower.</span> | overflows/underflows, but is also slower.</span> | ||
'''math. | '''math.mix''' {{new|95}} | ||
( number | ( number x, number y, number a ) -> number | ||
<span class="note">Returns | <span class="note">Returns linear interpolation bewteen x and y with ratio a (x+(y-x)*a).</span> | ||
'''math.round''' {{new|95}} | |||
( number x [, number n] ) -> number | |||
<span class="note">Returns x rounded to n decimal digits, if n is omitted or <=0, rounds to nearest integer. | |||
Note that Spring's LUA interpreter uses 32-bit floats for all numbers so max. precision | |||
is ~7 digits.</span> | |||
'''math. | '''math.sgn''' {{new|95}} | ||
( number x | ( number x ) -> number | ||
<span class="note">Returns x | <span class="note">Returns [http://en.wikipedia.org/wiki/Sign_function sgn](x).</span> | ||
[[category: Lua]] | [[category: Lua]] | ||
Revision as of 09:11, 10 October 2013
Development < Lua Scripting < Lua MathExtra
Additional math functions
math.clamp New in version 95
( number x, number min, number max ) -> number
Returns x clamped to min and max boundaries.
math.diag New in version 95
( number x1 [, ... ] ] ) -> number
Returns the length of diagonal of an n-dimensional box. Rather quick method that does not
handle intermediate overflows/underflows nor is made for numerical stability.
math.erf New in version 95
( number x ) -> number
Returns erf(x).
math.hypot New in version 95
( number x, number y ) -> number
Returns the length of hypotenuse of right angle triangle with sides x and y, equivalent
to sqrt(x*x + y*y), but has better numerical stability and internaly handles intermediate
overflows/underflows, but is also slower.
math.mix New in version 95
( number x, number y, number a ) -> number
Returns linear interpolation bewteen x and y with ratio a (x+(y-x)*a).
math.round New in version 95
( number x [, number n] ) -> number
Returns x rounded to n decimal digits, if n is omitted or <=0, rounds to nearest integer.
Note that Spring's LUA interpreter uses 32-bit floats for all numbers so max. precision
is ~7 digits.
math.sgn New in version 95
( number x ) -> number
Returns sgn(x).