1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
use crate::geometry::surface::SurfaceGeometry;

/// A two-dimensional shape
#[derive(Clone, Copy, Debug, Eq, PartialEq, Hash, Ord, PartialOrd)]
pub struct Surface {
    geometry: SurfaceGeometry,
}

impl Surface {
    /// Construct an instance of `Surface`
    pub fn new(geometry: SurfaceGeometry) -> Self {
        Self { geometry }
    }

    /// Access the surface's geometry
    pub fn geometry(&self) -> SurfaceGeometry {
        self.geometry
    }
}