static void buf4_to_integer(char *buf, int *x) { int x1, x2, x3, x4, ret = 0; x1 = hex_to_i(buf[2]); x2 = hex_to_i(buf[3]); x3 = hex_to_i(buf[0]); x4 = hex_to_i(buf[1]); *x = x1*4096+x2*256+x3*16+x4; /*x = x1*1000+x2*100+x3*10+x4; */ }
void add_cylinder(t_env *env, char **tab) { t_point p; t_list *list; char **split; split = ft_strsplit(tab[1], ','); p.x = ft_atoi(split[0] + 1); p.y = ft_atoi(split[1]); p.z = ft_atoi(split[2]); list = new_list(p, hex_to_i(tab[4])); list->name = "cylinder"; ft_strsplit_clr(split); split = ft_strsplit(tab[2], ','); list->ori.x = ft_atoi(split[0] + 1); list->ori.y = ft_atoi(split[1]); list->ori.z = ft_atoi(split[2]); list->ori = norm(list->ori); list->radius = ft_atoi(tab[3]); list->diffuse = ft_atoi(tab[5]) / 100.0; list->specular = ft_atoi(tab[6]) / 100.0; list->phong = ft_atoi(tab[7]); list->fun = &(keyword[3]); env->object = add_list_list(env->object, list); ft_strsplit_clr(split); }
void add_light(t_env *env, char **tab) { t_point p; t_list *list; char **split; split = ft_strsplit(tab[1], ','); p.x = ft_atoi(split[0] + 1); p.y = ft_atoi(split[1]); p.z = ft_atoi(split[2]); ft_strsplit_clr(split); list = new_list(p, hex_to_i(tab[2])); list->name = "light"; list->intensity = ft_atoi(tab[3]) / 100; env->light = add_list_list(env->light, list); }
void fill_color(t_env *env, char **tab) { env->color = hex_to_i(tab[1]); env->intensity = ft_atoi(tab[2]) / 100.0; }