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}