pub fn vec3_permutei(v: &Vector3i, x: usize, y: usize, z: usize) -> Vector3i {
    let v3: [i32; 3] = [v.x, v.y, v.z];
    let xp: i32 = v3[x];
    let yp: i32 = v3[y];
    let zp: i32 = v3[z];
    Vector3i {
        x: xp,
        y: yp,
        z: zp,
    }
}
/// Permute the coordinate values according to the povided
/// permutation.
Permute the coordinate values according to the povided
permutation.
Permute the coordinate values according to the povided permutation .
pub fn vec3_permutei(v: &Vector3i, x: usize, y: usize, z: usize) -> Vector3i {
    let v3: [i32; 3] = [v.x, v.y, v.z];
    let xp: i32 = v3[x];
    let yp: i32 = v3[y];
    let zp: i32 = v3[z];
    Vector3i {
        x: xp,
        y: yp,
        z: zp,
    }
}
pub fn vec3_permutei ( v : & Vector3i , x : usize , y : usize , z : usize ) -> Vector3i { let v3 : [ i32 ; 3 ] = [ v . x , v . y , v . z ] ; let xp : i32 = v3 [ x ] ; let yp : i32 = v3 [ y ] ; let zp : i32 = v3 [ z ] ; Vector3i { x : xp , y : yp , z : zp , } }
Permute the coordinate values according to the povided
permutation.
Permute the coordinate values according to the povided permutation .
v
&Vector3i
x
usize
y
usize
z
usize