Skip to main content

geometry_box/
point3_box.rs

1#[derive(Debug, Copy, Clone, Default)]
2#[repr(C)]
3pub struct Point3Box<T>
4where
5    T: From<u8> + Default + Copy,
6{
7    pub x: T,
8    pub y: T,
9    pub z: T,
10}
11
12impl<T> Point3Box<T>
13where
14    T: From<u8> + Default + Copy,
15{
16    pub fn be_zero(&mut self) {
17        self.x = 0u8.into();
18        self.y = 0u8.into();
19        self.z = 0u8.into();
20    }
21
22    pub fn new(x: T, y: T, z: T) -> Self {
23        Point3Box::<T> { x, y, z }
24    }
25}