nalgebra_glm
pub fn sign<N: Number, D: Dimension>(x: &TVec<N, D>) -> TVec<N, D> where DefaultAllocator: Alloc<N, D>,
For each vector component x: 1 if x > 0, 0 if x == 0, or -1 if x < 0.
x
x > 0
x == 0
x < 0
let vec = glm::vec4(-2.0, 0.0, -0.0, 2.0); assert_eq!(glm::vec4(-1.0, 0.0, 0.0, 1.0), glm::sign(&vec));
abs