Package com.curiouscreature.kotlin.math

Types

Bool2
Link copied to clipboard
data class Bool2(x: Boolean, y: Boolean)
Bool3
Link copied to clipboard
data class Bool3(x: Boolean, y: Boolean, z: Boolean)
Bool4
Link copied to clipboard
data class Bool4(x: Boolean, y: Boolean, z: Boolean, w: Boolean)
Degrees
Link copied to clipboard
typealias Degrees = Float
Float2
Link copied to clipboard
data class Float2(x: Float, y: Float)
Float3
Link copied to clipboard
data class Float3(x: Float, y: Float, z: Float)
Float4
Link copied to clipboard
data class Float4(x: Float, y: Float, z: Float, w: Float)
Mat2
Link copied to clipboard
data class Mat2(x: Float2, y: Float2)
Mat3
Link copied to clipboard
data class Mat3(x: Float3, y: Float3, z: Float3)
Mat4
Link copied to clipboard
data class Mat4(x: Float4, y: Float4, z: Float4, w: Float4)
MatrixColumn
Link copied to clipboard
enum MatrixColumn : Enum<MatrixColumn>
Quaternion
Link copied to clipboard
data class Quaternion(x: Float, y: Float, z: Float, w: Float)
Radians
Link copied to clipboard
typealias Radians = Float
Ray
Link copied to clipboard
data class Ray(origin: Float3, direction: Float3)
VectorComponent
Link copied to clipboard
enum VectorComponent : Enum<VectorComponent>

Functions

abs
Link copied to clipboard
inline fun abs(v: Float2): Float2
inline fun abs(v: Float3): Float3
inline fun abs(v: Float4): Float4
all
Link copied to clipboard
inline fun all(v: Bool2): Boolean
inline fun all(v: Bool3): Boolean
inline fun all(v: Bool4): Boolean
any
Link copied to clipboard
inline fun any(v: Bool2): Boolean
inline fun any(v: Bool3): Boolean
inline fun any(v: Bool4): Boolean
clamp
Link copied to clipboard
inline fun clamp(v: Float2, min: Float2, max: Float2): Float2
inline fun clamp(v: Float2, min: Float, max: Float): Float2
inline fun clamp(v: Float3, min: Float3, max: Float3): Float3
inline fun clamp(v: Float3, min: Float, max: Float): Float3
inline fun clamp(v: Float4, min: Float4, max: Float4): Float4
inline fun clamp(v: Float4, min: Float, max: Float): Float4
inline fun clamp(x: Float, min: Float, max: Float): Float
cross
Link copied to clipboard
inline fun cross(a: Float3, b: Float3): Float3
degrees
Link copied to clipboard
inline fun degrees(v: Radians): Float
Convert Radians to Degrees
distance
Link copied to clipboard
inline fun distance(a: Float2, b: Float2): Float
inline fun distance(a: Float3, b: Float3): Float
inline fun distance(a: Float4, b: Float4): Float
div
Link copied to clipboard
inline operator fun Float.div(v: Float2): Float2
inline operator fun Float.div(v: Float3): Float3
inline operator fun Float.div(v: Float4): Float4
dot
Link copied to clipboard
inline fun dot(a: Float2, b: Float2): Float
inline fun dot(a: Float3, b: Float3): Float
inline fun dot(a: Float4, b: Float4): Float
eq
Link copied to clipboard
infix inline fun Float2.eq(b: Float2): Bool2
infix inline fun Float2.eq(b: Float): Bool2
infix inline fun Float3.eq(b: Float3): Bool3
infix inline fun Float3.eq(b: Float): Bool3
infix inline fun Float4.eq(b: Float4): Bool4
infix inline fun Float4.eq(b: Float): Bool4
equal
Link copied to clipboard
inline fun equal(a: Float2, b: Float2): Bool2
inline fun equal(a: Float2, b: Float): Bool2
inline fun equal(a: Float3, b: Float3): Bool3
inline fun equal(a: Float3, b: Float): Bool3
inline fun equal(a: Float4, b: Float4): Bool4
inline fun equal(a: Float4, b: Float): Bool4
fract
Link copied to clipboard
inline fun fract(v: Float): Float
greaterThan
Link copied to clipboard
inline fun greaterThan(a: Float2, b: Float2): Bool2
inline fun greaterThan(a: Float2, b: Float): Bool2
inline fun greaterThan(a: Float3, b: Float3): Bool3
inline fun greaterThan(a: Float3, b: Float): Bool3
inline fun greaterThan(a: Float4, b: Float4): Bool4
inline fun greaterThan(a: Float4, b: Float): Bool4
greaterThanEqual
Link copied to clipboard
inline fun greaterThanEqual(a: Float2, b: Float2): Bool2
inline fun greaterThanEqual(a: Float2, b: Float): Bool2
inline fun greaterThanEqual(a: Float3, b: Float3): Bool3
inline fun greaterThanEqual(a: Float3, b: Float): Bool3
inline fun greaterThanEqual(a: Float4, b: Float4): Bool4
inline fun greaterThanEqual(a: Float4, b: Float): Bool4
gt
Link copied to clipboard
infix inline fun Float2.gt(b: Float2): Bool2
infix inline fun Float2.gt(b: Float): Bool2
infix inline fun Float3.gt(b: Float3): Bool3
infix inline fun Float3.gt(b: Float): Bool3
infix inline fun Float4.gt(b: Float4): Bool4
infix inline fun Float4.gt(b: Float): Bool4
gte
Link copied to clipboard
infix inline fun Float2.gte(b: Float2): Bool2
infix inline fun Float2.gte(b: Float): Bool2
infix inline fun Float3.gte(b: Float3): Bool3
infix inline fun Float3.gte(b: Float): Bool3
infix inline fun Float4.gte(b: Float4): Bool4
infix inline fun Float4.gte(b: Float): Bool4
interpolate
Link copied to clipboard
fun interpolate(a: Float3, b: Float3, blend: Float): Float3
Interpolation between a and b.
fun interpolate(a: Quaternion, b: Quaternion, blend: Float): Quaternion
inverse
Link copied to clipboard
fun inverse(m: Mat3): Mat3
fun inverse(m: Mat4): Mat4
length
Link copied to clipboard
inline fun length(v: Float2): Float
inline fun length(v: Float3): Float
inline fun length(v: Float4): Float
length2
Link copied to clipboard
inline fun length2(v: Float2): Float
inline fun length2(v: Float3): Float
inline fun length2(v: Float4): Float
lessThan
Link copied to clipboard
inline fun lessThan(a: Float2, b: Float2): Bool2
inline fun lessThan(a: Float2, b: Float): Bool2
inline fun lessThan(a: Float3, b: Float3): Bool3
inline fun lessThan(a: Float3, b: Float): Bool3
inline fun lessThan(a: Float4, b: Float4): Bool4
inline fun lessThan(a: Float4, b: Float): Bool4
lessThanEqual
Link copied to clipboard
inline fun lessThanEqual(a: Float2, b: Float2): Bool2
inline fun lessThanEqual(a: Float2, b: Float): Bool2
inline fun lessThanEqual(a: Float3, b: Float3): Bool3
inline fun lessThanEqual(a: Float3, b: Float): Bool3
inline fun lessThanEqual(a: Float4, b: Float4): Bool4
inline fun lessThanEqual(a: Float4, b: Float): Bool4
lookAt
Link copied to clipboard
fun lookAt(eye: Float3, target: Float3, up: Float3): Mat4
lookTowards
Link copied to clipboard
fun lookTowards(eye: Float3, direction: Float3, up: Float3): Mat4
lt
Link copied to clipboard
infix inline fun Float2.lt(b: Float2): Bool2
infix inline fun Float2.lt(b: Float): Bool2
infix inline fun Float3.lt(b: Float3): Bool3
infix inline fun Float3.lt(b: Float): Bool3
infix inline fun Float4.lt(b: Float4): Bool4
infix inline fun Float4.lt(b: Float): Bool4
lte
Link copied to clipboard
infix inline fun Float2.lte(b: Float2): Bool2
infix inline fun Float2.lte(b: Float): Bool2
infix inline fun Float3.lte(b: Float3): Bool3
infix inline fun Float3.lte(b: Float): Bool3
infix inline fun Float4.lte(b: Float4): Bool4
infix inline fun Float4.lte(b: Float): Bool4
max
Link copied to clipboard
inline fun max(v: Float2): Float
inline fun max(v: Float3): Float
inline fun max(v: Float4): Float
inline fun max(a: Float2, b: Float2): Float2
inline fun max(a: Float3, b: Float3): Float3
inline fun max(a: Float4, b: Float4): Float4
min
Link copied to clipboard
inline fun min(v: Float2): Float
inline fun min(v: Float3): Float
inline fun min(v: Float4): Float
inline fun min(a: Float2, b: Float2): Float2
inline fun min(a: Float3, b: Float3): Float3
inline fun min(a: Float4, b: Float4): Float4
minus
Link copied to clipboard
inline operator fun Float.minus(v: Float2): Float2
inline operator fun Float.minus(v: Float3): Float3
inline operator fun Float.minus(v: Float4): Float4
mix
Link copied to clipboard
inline fun mix(a: Float2, b: Float2, x: Float2): Float2
inline fun mix(a: Float2, b: Float2, x: Float): Float2
inline fun mix(a: Float3, b: Float3, x: Float3): Float3
inline fun mix(a: Float3, b: Float3, x: Float): Float3
inline fun mix(a: Float4, b: Float4, x: Float4): Float4
inline fun mix(a: Float4, b: Float4, x: Float): Float4
inline fun mix(a: Float, b: Float, x: Float): Float
neq
Link copied to clipboard
infix inline fun Float2.neq(b: Float2): Bool2
infix inline fun Float2.neq(b: Float): Bool2
infix inline fun Float3.neq(b: Float3): Bool3
infix inline fun Float3.neq(b: Float): Bool3
infix inline fun Float4.neq(b: Float4): Bool4
infix inline fun Float4.neq(b: Float): Bool4
normal
Link copied to clipboard
fun normal(m: Mat4): Mat4
normalize
Link copied to clipboard
fun normalize(v: Float2): Float2
fun normalize(v: Float3): Float3
fun normalize(v: Float4): Float4
fun normalize(quaternion: Quaternion): Quaternion
notEqual
Link copied to clipboard
inline fun notEqual(a: Float2, b: Float2): Bool2
inline fun notEqual(a: Float2, b: Float): Bool2
inline fun notEqual(a: Float3, b: Float3): Bool3
inline fun notEqual(a: Float3, b: Float): Bool3
inline fun notEqual(a: Float4, b: Float4): Bool4
inline fun notEqual(a: Float4, b: Float): Bool4
ortho
Link copied to clipboard
fun ortho(l: Float, r: Float, b: Float, t: Float, n: Float, f: Float): Mat4
perspective
Link copied to clipboard
fun perspective(fov: Degrees, aspect: Float, near: Float, far: Float): Mat4
plus
Link copied to clipboard
inline operator fun Float.plus(v: Float2): Float2
inline operator fun Float.plus(v: Float3): Float3
inline operator fun Float.plus(v: Float4): Float4
pointAt
Link copied to clipboard
fun pointAt(r: Ray, t: Float): Float3
pow
Link copied to clipboard
inline fun pow(x: Float, y: Float): Float
radians
Link copied to clipboard
inline fun radians(v: Degrees): Float
Convert Degrees to Radians
reflect
Link copied to clipboard
inline fun reflect(i: Float2, n: Float2): Float2
inline fun reflect(i: Float3, n: Float3): Float3
refract
Link copied to clipboard
fun refract(i: Float2, n: Float2, eta: Float): Float2
fun refract(i: Float3, n: Float3, eta: Float): Float3
rotation
Link copied to clipboard
fun rotation(d: Float3): Mat4
fun rotation(m: Mat4): Mat4
fun rotation(axis: Float3, angle: Float): Mat4
Create a rotation matrix.
saturate
Link copied to clipboard
inline fun saturate(x: Float): Float
scale
Link copied to clipboard
fun scale(s: Float3): Mat4
fun scale(m: Mat4): Mat4
sqr
Link copied to clipboard
inline fun sqr(v: Float): Float
times
Link copied to clipboard
inline operator fun Float.times(v: Float2): Float2
inline operator fun Float.times(v: Float3): Float3
inline operator fun Float.times(v: Float4): Float4
transform
Link copied to clipboard
inline fun transform(v: Float2, block: (Float) -> Float): Float2
inline fun transform(v: Float3, block: (Float) -> Float): Float3
inline fun transform(v: Float4, block: (Float) -> Float): Float4
translation
Link copied to clipboard
fun translation(t: Float3): Mat4
fun translation(m: Mat4): Mat4
transpose
Link copied to clipboard
fun transpose(m: Mat2): Mat2
fun transpose(m: Mat3): Mat3
fun transpose(m: Mat4): Mat4
x
Link copied to clipboard
infix inline fun Float3.x(v: Float3): Float3

Properties

FOUR_PI
Link copied to clipboard
const val FOUR_PI: Float
HALF_PI
Link copied to clipboard
const val HALF_PI: Float
INV_FOUR_PI
Link copied to clipboard
const val INV_FOUR_PI: Float
INV_PI
Link copied to clipboard
const val INV_PI: Float
INV_TWO_PI
Link copied to clipboard
const val INV_TWO_PI: Float
PI
Link copied to clipboard
const val PI: Float = 3.1415926536f
TWO_PI
Link copied to clipboard
const val TWO_PI: Float