Exemple #1
0
t_eye		*make_eye(t_list *list, t_map *map)
{
  t_cord	*rot;
  t_eye		*eye;
  t_cord	*cord;

  if (map->eye != NULL)
    c_puterror("un seul oeil par map est autorisé");
  if (list->length != 6)
    c_puterror("mauvais nombre d'arguments pour l'oeil");
  cord = init_cord(c_getnbr(chose_elem(list, 1)),
		   c_getnbr(chose_elem(list, 2)),
		   c_getnbr(chose_elem(list, 3)));
  rot = init_cord(c_getnbr(chose_elem(list, 4)),
		  c_getnbr(chose_elem(list, 5)),
		  c_getnbr(chose_elem(list, 6)));
  eye = init_eye(cord, rot);
  return (eye);
}
Exemple #2
0
int		main(int ac, char **av)
{
	t_env e;

	init_env(&e);
	parsing(&e, ac, av[1]);
	init_eye(&e);
	get_lightspot_number(&e);
	init_viewpoint(&e);
	e.v = 0;
	e.v2 = 0;
	e.nl = 1 / e.nl;
	e.mlx = mlx_init();
	e.win = mlx_new_window(e.mlx, e.width, e.height, e.name);
	ray_tracer(&e);
	mlx_expose_hook(e.win, expose_hook, &e);
	mlx_key_hook(e.win, event_mlx, &e);
	mlx_loop(e.mlx);
	return (0);
}
void visual_system_impl::load_exercise(dict_cref dict)
{
	system_base::load_exercise(dict);
	init_eye();
}
void visual_system_impl::update_props(vis_sys_props const& props)
{
	props_ = props;
	init_eye();
}