pub fn draw_on_image<I: GenericImage, F: Fn(&I::Pixel) -> I::Pixel>( im: I, boundary_points: impl Iterator<Item = (u32, u32)>, inner_points: impl Iterator<Item = (u32, u32)>, color: &I::Pixel, fn_inner_color: F, ) -> Iwhere <<I as GenericImageView>::Pixel as Pixel>::Subpixel: Clamp<f32>, f32: From<<<I as GenericImageView>::Pixel as Pixel>::Subpixel>,