simple_vec3 1.0.0

Just a quick and simple lib to use a Vec3 type
Documentation
#[derive(Debug, Default, Clone)]
pub struct Vec3<T> {
    pub x: T,
    pub y: T,
    pub z: T
}

impl Vec3<f64> {
    pub fn to_tuple(&self) -> (f64, f64, f64) {
        (self.x, self.y, self.z)
    }
}

pub trait VectorConversion {
    fn to_vec3<T>(&self) -> Vec3<T> where T: Default + Clone + From<f64> + From<i32> + From<u32>;
}

impl VectorConversion for Vec<f64> {
    fn to_vec3<T>(&self) -> Vec3<T> where T: Default + Clone + From<f64> {
        Vec3 { x: self[0].into(), y: self[1].into(), z: self[2].into() }
    }
}

impl VectorConversion for Vec<i32> {
    fn to_vec3<T>(&self) -> Vec3<T> where T: Default + Clone + From<i32> {
        Vec3 { x: self[0].into(), y: self[1].into(), z: self[2].into() }
    }
}

impl VectorConversion for Vec<u32> {
    fn to_vec3<T>(&self) -> Vec3<T> where T: Default + Clone + From<u32> {
        Vec3 { x: self[0].into(), y: self[1].into(), z: self[2].into() }
    }
}