/* ************************************************************************** */ /* */ /* ::: :::::::: */ /* ft_darken_rgb.c :+: :+: :+: */ /* +:+ +:+ +:+ */ /* By: rbousset +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2020/03/05 16:04:28 by rbousset #+# #+# */ /* Updated: 2020/03/05 16:04:29 by rbousset ### ########lyon.fr */ /* */ /* ************************************************************************** */ #include #include #include uint32_t ft_darken_ceil(t_rgb rgb, int32_t y, t_cub *cl) { t_rgb darker; float calc; darker = rgb; calc = ((float)(y - (75000.0 / cl->wlist.y_size)) / (cl->wlist.y_size / 2)); calc = (calc < 0) ? (0) : (calc); darker.r *= 1 - calc; darker.g *= 1 - calc; darker.b *= 1 - calc; return (ft_rgb_to_hex(darker)); } uint32_t ft_darken_floor(t_rgb rgb, int32_t y, t_cub *cl) { t_rgb darker; float calc; calc = ((float)(y + (75000.0 / cl->wlist.y_size)) / (cl->wlist.y_size / 2)) - 1.0; calc = (calc < 0) ? (0) : (calc); darker = rgb; darker.r *= calc; darker.g *= calc; darker.b *= calc; return (ft_rgb_to_hex(darker)); }