This class defines mathematical functions and constants.

### `staticread onlyNEGATIVE_INFINITY:Float`

A special `Float` constant which denotes negative infinity.

For example, this is the result of `-1.0 / 0.0`.

Operations with `NEGATIVE_INFINITY` as an operand may result in `NEGATIVE_INFINITY`, `POSITIVE_INFINITY` or `NaN`.

If this constant is converted to an `Int`, e.g. through `Std.int()`, the result is unspecified.

### `staticread onlyNaN:Float`

A special `Float` constant which denotes an invalid number.

`NaN` stands for "Not a Number". It occurs when a mathematically incorrect operation is executed, such as taking the square root of a negative number: `Math.sqrt(-1)`.

All further operations with `NaN` as an operand will result in `NaN`.

If this constant is converted to an `Int`, e.g. through `Std.int()`, the result is unspecified.

In order to test if a value is `NaN`, you should use `Math.isNaN()` function.

### `staticread onlyPI:Float`

Represents the ratio of the circumference of a circle to its diameter, specified by the constant, π. `PI` is approximately `3.141592653589793`.

### `staticread onlyPOSITIVE_INFINITY:Float`

A special `Float` constant which denotes positive infinity.

For example, this is the result of `1.0 / 0.0`.

Operations with `POSITIVE_INFINITY` as an operand may result in `NEGATIVE_INFINITY`, `POSITIVE_INFINITY` or `NaN`.

If this constant is converted to an `Int`, e.g. through `Std.int()`, the result is unspecified.

### `staticabs(v:Float):Float`

Returns the absolute value of `v`.

• If `v` is positive or `0`, the result is unchanged. Otherwise the result is `-v`.
• If `v` is `NEGATIVE_INFINITY` or `POSITIVE_INFINITY`, the result is `POSITIVE_INFINITY`.
• If `v` is `NaN`, the result is `NaN`.

### `staticacos(v:Float):Float`

Returns the trigonometric arc cosine of the specified angle `v`, in radians.

If `v` is `NaN` or infinite, the result is `NaN`.

### `staticasin(v:Float):Float`

Returns the trigonometric arc of the specified angle `v`, in radians.

If `v` is `NaN` or infinite, the result is `NaN`.

### `staticatan(v:Float):Float`

Returns the trigonometric arc tangent of the specified angle `v`, in radians.

If `v` is `NaN` or infinite, the result is `NaN`.

### `staticatan2(y:Float, x:Float):Float`

Returns the trigonometric arc tangent whose tangent is the quotient of two specified numbers, in radians.

If parameter `x` or `y` is `NaN`, `NEGATIVE_INFINITY` or `POSITIVE_INFINITY`, the result is `NaN`.

### `staticceil(v:Float):Int`

Returns the smallest integer value that is not less than `v`.

If `v` is outside of the signed `Int32` range, or is `NaN`, `NEGATIVE_INFINITY` or `POSITIVE_INFINITY`, the result is unspecified.

### `staticcos(v:Float):Float`

Returns the trigonometric cosine of the specified angle `v`, in radians.

If `v` is `NaN` or infinite, the result is `NaN`.

### `staticexp(v:Float):Float`

Returns Euler's number, raised to the power of `v`.

`exp(1.0)` is approximately `2.718281828459`.

• If `v` is `POSITIVE_INFINITY`, the result is `POSITIVE_INFINITY`.
• If `v` is `NEGATIVE_INFINITY`, the result is `0.0`.
• If `v` is `NaN`, the result is `NaN`.

### `staticfceil(v:Float):Float`

Returns the smallest integer value that is not less than `v`, as a `Float`.

If `v` is is `NaN`, `NEGATIVE_INFINITY` or `POSITIVE_INFINITY`, the result is unspecified.

### `staticffloor(v:Float):Float`

Returns the largest integer value that is not greater than `v`, as a `Float`.

If `v` is is `NaN`, `NEGATIVE_INFINITY` or `POSITIVE_INFINITY`, the result is unspecified.

### `staticfloor(v:Float):Int`

Returns the largest integer value that is not greater than `v`.

If `v` is outside of the signed `Int32` range, or is `NaN`, `NEGATIVE_INFINITY` or `POSITIVE_INFINITY`, the result is unspecified.

### `staticfround(v:Float):Float`

Rounds `v` to the nearest integer value, as a Float.

Ties are rounded up, so that `0.5` becomes `1` and `-0.5` becomes `0`.

If `v` is is `NaN`, `NEGATIVE_INFINITY` or `POSITIVE_INFINITY`, the result is unspecified.

### `staticisFinite(f:Float):Bool`

Tells if `f` is a finite number.

If `f` is `POSITIVE_INFINITY`, `NEGATIVE_INFINITY` or `NaN`, the result is `false`, otherwise the result is `true`.

### `staticisNaN(f:Float):Bool`

Tells if `f` is `Math.NaN`.

If `f` is `NaN`, the result is `true`, otherwise the result is `false`. In particular, `null`, `POSITIVE_INFINITY` and `NEGATIVE_INFINITY` are not considered `NaN`.

### `staticlog(v:Float):Float`

Returns the natural logarithm of `v`.

This is the mathematical inverse operation of exp, i.e. `log(exp(v)) == v` always holds.

• If `v` is negative (including `NEGATIVE_INFINITY`) or `NaN`, the result is `NaN`.
• If `v` is `POSITIVE_INFINITY`, the result is `POSITIVE_INFINITY`.
• If `v` is `0.0`, the result is `NEGATIVE_INFINITY`.

### `staticmax(a:Float, b:Float):Float`

Returns the greater of values `a` and `b`.

• If `a` or `b` are `NaN`, the result is `NaN`.
• If `a` or `b` are `POSITIVE_INFINITY`, the result is `POSITIVE_INFINITY`.
• If `a` and `b` are `NEGATIVE_INFINITY`, the result is `NEGATIVE_INFINITY`.

### `staticmin(a:Float, b:Float):Float`

Returns the smaller of values `a` and `b`.

• If `a` or `b` are `NaN`, the result is `NaN`.
• If `a` or `b` are `NEGATIVE_INFINITY`, the result is `NEGATIVE_INFINITY`.
• If `a` and `b` are `POSITIVE_INFINITY`, the result is `POSITIVE_INFINITY`.

### `staticpow(v:Float, exp:Float):Float`

Returns a specified base `v` raised to the specified power `exp`.

### `staticrandom():Float`

Returns a pseudo-random number which is greater than or equal to `0.0`, and less than `1.0`.

### `staticround(v:Float):Int`

Rounds `v` to the nearest integer value.

Ties are rounded up, so that `0.5` becomes `1` and `-0.5` becomes `0`.

If `v` is outside of the signed `Int32` range, or is `NaN`, `NEGATIVE_INFINITY` or `POSITIVE_INFINITY`, the result is unspecified.

### `staticsin(v:Float):Float`

Returns the trigonometric sine of the specified angle `v`, in radians.

If `v` is `NaN` or infinite, the result is `NaN`.

### `staticsqrt(v:Float):Float`

Returns the square root of `v`.

• If `v` is negative (including `NEGATIVE_INFINITY`) or `NaN`, the result is `NaN`.
• If `v` is `POSITIVE_INFINITY`, the result is `POSITIVE_INFINITY`.
• If `v` is `0.0`, the result is `0.0`.

### `statictan(v:Float):Float`

Returns the trigonometric tangent of the specified angle `v`, in radians.

If `v` is `NaN` or infinite, the result is `NaN`.