vec3

Types

The Vector3 alias.

pub type Vector3 =
  #(Float, Float, Float)

Constants

pub const zero: #(Float, Float, Float)

Functions

pub fn add(
  v: #(Float, Float, Float),
  w: #(Float, Float, Float),
) -> #(Float, Float, Float)

Adds two vectors.

pub fn cross(
  v: #(Float, Float, Float),
  w: #(Float, Float, Float),
) -> #(Float, Float, Float)

Computes the cross product of two vectors.

pub fn dot(
  v: #(Float, Float, Float),
  w: #(Float, Float, Float),
) -> Float

Computes the dot product of two vectors.

pub fn length(v: #(Float, Float, Float)) -> Float

Computes the length of a vector.

pub fn loosely_equals(
  v: #(Float, Float, Float),
  w: #(Float, Float, Float),
  epsilon: Float,
) -> Bool

Asserts if vector3 are loosely equals

pub fn negate(
  v: #(Float, Float, Float),
) -> #(Float, Float, Float)

Negates a vector.

pub fn normalize(
  v: #(Float, Float, Float),
) -> #(Float, Float, Float)

Normalizes a vector.

pub fn orthogonal(
  v: #(Float, Float, Float),
) -> #(Float, Float, Float)

Find one of the orthogonal vectors to the given vector.

pub fn scale(
  v: #(Float, Float, Float),
  factor: Float,
) -> #(Float, Float, Float)

Scales a vector by a factor.

pub fn square_length(v: #(Float, Float, Float)) -> Float

Computes the squared length of a vector.

pub fn substract(
  v: #(Float, Float, Float),
  w: #(Float, Float, Float),
) -> #(Float, Float, Float)

Substracts two vectors.

pub fn times(
  v: #(Float, Float, Float),
  w: #(Float, Float, Float),
) -> #(Float, Float, Float)

Multiplies (element-wise) two vectors.

Search Document