crow/math/vec.crow (source)

vec2-32 record

2-dimensional vector with 32-bit elements.

vec2-64 record

2-dimensional vector with 64-bit elements.

vec2 alias

vec3-32 record

3-dimensional vector with 32-bit elements.

vec3-64 record

3-dimensional vector with 64-bit elements.

vec3 alias

new vec2-32() bare

0 vector.

new vec2-64() bare

new vec3-32() bare

new vec3-64() bare

show string(a vec2-32)

"<x, y>"

show string(a vec2-64)

show string(a vec3-32)

"<x, y, z>"

show string(a vec3-64)

to float32 array(a vec2-32)

to float64 array(a vec2-64)

to float32 array(a vec3-32)

to float64 array(a vec3-64)

left vec2-32() bare

left vec2-64() bare

left vec3-32() bare

left vec3-64() bare

right vec2-32() bare

right vec2-64() bare

right vec3-32() bare

right vec3-64() bare

up vec2-32() bare

up vec2-64() bare

up vec3-32() bare

up vec3-64() bare

down vec2-32() bare

down vec2-64() bare

down vec3-32() bare

down vec3-64() bare

forward vec3-32() bare

forward vec3-64() bare

backward vec3-32() bare

backward vec3-64() bare

+ vec2-32(a vec2-32, b vec2-32) bare

Vector addition -- adds corresponding elements.

+ vec2-64(a vec2-64, b vec2-64) bare

+ vec3-32(a vec3-32, b vec3-32) bare

+ vec3-64(a vec3-64, b vec3-64) bare

- vec2-32(a vec2-32, b vec2-32) bare

Vector subtraction -- subtracts corresponding elements.

- vec2-64(a vec2-64, b vec2-64) bare

- vec3-32(a vec3-32, b vec3-32) bare

- vec3-64(a vec3-64, b vec3-64) bare

- vec2-32(a vec2-32) bare

- vec2-64(a vec2-64) bare

- vec3-32(a vec3-32) bare

- vec3-64(a vec3-64) bare

* vec2-32(a vec2-32, b float32) bare

Scales a vector by a scalar.

* vec2-64(a vec2-64, b float64) bare

* vec3-32(a vec3-32, b float32) bare

* vec3-64(a vec3-64, b float64) bare

* vec2-32(a float32, b vec2-32) bare

* vec2-64(a float64, b vec2-64) bare

* vec3-32(a float32, b vec3-32) bare

* vec3-64(a float64, b vec3-64) bare

/ vec2-32(a vec2-32, b float32)

/ vec2-64(a vec2-64, b float64)

/ vec3-32(a vec3-32, b float32)

/ vec3-64(a vec3-64, b float64)

length-squared float32(a vec2-32) bare

Equivalent to a.length ** 2 (but more efficient).

length-squared float64(a vec2-64) bare

length-squared float32(a vec3-32) bare

length-squared float64(a vec3-64) bare

length float32(a vec2-32) bare

Vector length, also known as the magnitude or norm.

length float64(a vec2-64) bare

length float32(a vec3-32) bare

length float64(a vec3-64) bare

normalize vec2-32(a vec2-32)

Scale vector length to 1.
Throws if length is 0.

normalize vec2-64(a vec2-64)

normalize vec3-32(a vec3-32)

normalize vec3-64(a vec3-64)

dot float32(a vec2-32, b vec2-32) bare

dot float64(a vec2-64, b vec2-64) bare

dot float32(a vec3-32, b vec3-32) bare

dot float64(a vec3-64, b vec3-64) bare

to vec2-32(a vec2-64) bare

to vec2-64(a vec2-32) bare

to vec3-32(a vec3-64) bare

to vec3-64(a vec3-32) bare