use derive_new::new;
#[derive(new, Debug, Clone, serde::Deserialize, serde::Serialize)]
pub enum InterpolateMode {
Nearest,
Bilinear,
Bicubic,
Lanczos3,
}
#[derive(Debug, Clone)]
pub struct InterpolateOptions {
pub mode: InterpolateMode,
pub align_corners: bool,
}
impl InterpolateOptions {
pub fn new(mode: InterpolateMode) -> Self {
Self {
mode,
align_corners: true,
}
}
pub fn with_align_corners(mut self, align_corners: bool) -> Self {
self.align_corners = align_corners;
self
}
}