Search
@type t() :: {x :: number(), y :: number(), z :: number()}
@spec add(vector3_a :: t(), vector3_b :: t()) :: t()
@spec clamp(vector3 :: t(), min :: t(), max :: t()) :: t()
@spec cross(vector3_a :: t(), vector3_b :: t()) :: t()
@spec distance(vector3_a :: t(), vector3_b :: t()) :: number()
@spec distance_squared(vector3_a :: t(), vector3_b :: t()) :: number()
@spec div(vector3 :: t(), scalar :: number()) :: t()
@spec dot(vector3_a :: t(), vector3_b :: t()) :: number()
@spec length(vector3 :: t()) :: number()
@spec length_squared(vector3 :: t()) :: number()
@spec lerp(vector_a :: t(), vector_b :: t(), t :: number()) :: t()
@spec mul(vector3 :: t(), scalar :: number() | t()) :: t()
@spec normalize(vector3 :: t()) :: t()
@spec project(vector :: t(), matrix :: Scenic.Math.matrix()) :: t()
@spec reflect(vector3 :: t(), normal :: t()) :: t()
@spec sub(vector3_a :: t(), vector3_b :: t()) :: t()
@spec truncate(vector :: t()) :: t()