51 lines
1.5 KiB
C
51 lines
1.5 KiB
C
/* ************************************************************************** */
|
|
/* */
|
|
/* ::: :::::::: */
|
|
/* color.c :+: :+: :+: */
|
|
/* +:+ +:+ +:+ */
|
|
/* By: gbrochar <marvin@42.fr> +#+ +:+ +#+ */
|
|
/* +#+#+#+#+#+ +#+ */
|
|
/* Created: 2019/02/06 16:38:04 by gbrochar #+# #+# */
|
|
/* Updated: 2019/02/08 20:47:12 by gbrochar ### ########.fr */
|
|
/* */
|
|
/* ************************************************************************** */
|
|
|
|
#include "rtv1.h"
|
|
|
|
t_color color(int r, int g, int b)
|
|
{
|
|
t_color color;
|
|
|
|
color.r = r;
|
|
color.g = g;
|
|
color.b = b;
|
|
return (color);
|
|
}
|
|
|
|
t_color color_add(t_color c1, t_color c2)
|
|
{
|
|
c1.r = c1.r + c2.r;
|
|
c1.g = c1.g + c2.g;
|
|
c1.b = c1.b + c2.b;
|
|
return (c1);
|
|
}
|
|
|
|
t_color color_mul(t_color c, double scalar)
|
|
{
|
|
c.r = (int)((double)c.r * scalar);
|
|
c.g = (int)((double)c.g * scalar);
|
|
c.b = (int)((double)c.b * scalar);
|
|
return (c);
|
|
}
|
|
|
|
t_color color_cap(t_color c)
|
|
{
|
|
c.r = (c.r > 255 ? 255 : c.r);
|
|
c.r = (c.r < 0 ? 0 : c.r);
|
|
c.g = (c.g > 255 ? 255 : c.g);
|
|
c.g = (c.g < 0 ? 0 : c.g);
|
|
c.b = (c.b > 255 ? 255 : c.b);
|
|
c.b = (c.b < 0 ? 0 : c.b);
|
|
return (c);
|
|
}
|