mathutil

package
v0.3.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 22, 2024 License: MIT Imports: 2 Imported by: 9

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Abs added in v0.1.7

func Abs[T constraints.SignedReal](x T) T

Abs returns abs of x

func Add added in v0.2.19

func Add[T constraints.Number](x, y T) T

func CeilPowerOfTwo added in v0.1.7

func CeilPowerOfTwo[T constraints.Integer](value T) T

func Clamp added in v0.1.7

func Clamp[T constraints.Ordered](x, min, max T) T

Clamp clamps x into range [min, max]

func Deg2Rad added in v0.1.7

func Deg2Rad[T constraints.Float](deg T) T

func Div added in v0.2.19

func Div[T constraints.Number](x, y T) T

func EuclideanModulo added in v0.1.7

func EuclideanModulo[T constraints.Float](x, y T) T

EuclideanModulo computes euclidean modulo: x % y

func FloorPowerOfTwo added in v0.1.7

func FloorPowerOfTwo[T constraints.Integer](value T) T

func Identity added in v0.2.19

func Identity[T constraints.Number](x T) T

func IsPowerOfTwo added in v0.1.7

func IsPowerOfTwo[T constraints.Integer](value T) bool

func IsZero added in v0.2.19

func IsZero[T constraints.SignedReal](x T) T

func Lerp added in v0.1.7

func Lerp[T constraints.Field](x, y, t T) T

https://en.wikipedia.org/wiki/Linear_interpolation

func MapLinear added in v0.1.7

func MapLinear[T constraints.Field](x, a1, a2, b1, b2 T) T

MapLinear mapping from range <a1, a2> to range <b1, b2>

func Max added in v0.1.7

func Max[T constraints.Ordered](x, y T) T

Max returns maxinum value

func Min added in v0.1.7

func Min[T constraints.Ordered](x, y T) T

Min returns mininum value

func Minmax added in v0.1.7

func Minmax[T constraints.Ordered](x, y T) (min, max T)

Minmax returns ordered values

func Mul added in v0.2.19

func Mul[T constraints.Number](x, y T) T

func One added in v0.2.19

func One[T constraints.Number](x T) T

func PingPong added in v0.1.7

func PingPong[T constraints.Float](x, length T) T

https://www.desmos.com/calculator/vcsjnyz7x4

func Pow added in v0.2.19

func Pow[T constraints.Real](x, y T) T

func Predict added in v0.2.11

func Predict[T constraints.Number](ok bool) T

Predict returns 1 if ok, otherwise 0

func Rad2Deg added in v0.1.7

func Rad2Deg[T constraints.Float](rad T) T

func Sigmoid added in v0.2.19

func Sigmoid[T constraints.Real](x T) T

func SigmoidPrime added in v0.2.19

func SigmoidPrime[T constraints.Real](x T) T

func Sign added in v0.2.19

func Sign[T constraints.SignedReal](x T) T

func SmoothStep added in v0.1.7

func SmoothStep[T constraints.Float](x, min, max T) T

http://en.wikipedia.org/wiki/Smoothstep

func SmoothStepFunc added in v0.1.7

func SmoothStepFunc[T constraints.Float](x, min, max T, fn func(T) T) T

func Square added in v0.2.19

func Square[T constraints.Number](x T) T

func Sub added in v0.2.19

func Sub[T constraints.Number](x, y T) T

func Zero added in v0.2.19

func Zero[T constraints.Number](x T) T

Types

type BinaryFn added in v0.2.19

type BinaryFn[T constraints.Number] func(x, y T) T

func (BinaryFn[T]) Add added in v0.2.19

func (f BinaryFn[T]) Add(f2 BinaryFn[T]) BinaryFn[T]

func (BinaryFn[T]) Div added in v0.2.19

func (f BinaryFn[T]) Div(f2 BinaryFn[T]) BinaryFn[T]

func (BinaryFn[T]) Mul added in v0.2.19

func (f BinaryFn[T]) Mul(f2 BinaryFn[T]) BinaryFn[T]

func (BinaryFn[T]) Sub added in v0.2.19

func (f BinaryFn[T]) Sub(f2 BinaryFn[T]) BinaryFn[T]

type UnaryFn added in v0.2.19

type UnaryFn[T constraints.Number] func(T) T

func Affine added in v0.2.19

func Affine[T constraints.Number](k, b T) UnaryFn[T]

func Constant added in v0.2.19

func Constant[T constraints.Number](c T) UnaryFn[T]

func KSigmoid added in v0.2.19

func KSigmoid[T constraints.Real](k T) UnaryFn[T]

func KSigmoidPrime added in v0.2.19

func KSigmoidPrime[T constraints.Real](k T) UnaryFn[T]

func Offset added in v0.2.19

func Offset[T constraints.Number](b T) UnaryFn[T]

func Power added in v0.2.19

func Power[T constraints.Real](p T) UnaryFn[T]

func Scale added in v0.2.19

func Scale[T constraints.Number](k T) UnaryFn[T]

func (UnaryFn[T]) Add added in v0.2.19

func (f UnaryFn[T]) Add(f2 UnaryFn[T]) UnaryFn[T]

func (UnaryFn[T]) Div added in v0.2.19

func (f UnaryFn[T]) Div(f2 UnaryFn[T]) UnaryFn[T]

func (UnaryFn[T]) Mul added in v0.2.19

func (f UnaryFn[T]) Mul(f2 UnaryFn[T]) UnaryFn[T]

func (UnaryFn[T]) Sub added in v0.2.19

func (f UnaryFn[T]) Sub(f2 UnaryFn[T]) UnaryFn[T]

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL