/* * This file is part of the DXX-Rebirth project . * It is copyright by its individual contributors, as recorded in the * project's Git history. See COPYING.txt at the top level for license * terms and a link to the Git history. */ /* * * Header for clipper.c * */ #pragma once #ifdef __cplusplus #include "dxxsconf.h" #include struct g3s_codes; struct g3s_point; #if !DXX_USE_OGL #include "dsx-ns.h" #include "3d.h" #include "globvars.h" #include "compiler-array.h" namespace dcx { struct polygon_clip_points : array {}; struct temporary_points_t { uint_fast32_t free_point_num; array temp_points; array free_points; temporary_points_t(); void free_temp_point(g3s_point *cp); }; const polygon_clip_points &clip_polygon(polygon_clip_points &src,polygon_clip_points &dest,int *nv,g3s_codes *cc,temporary_points_t &); void clip_line(g3s_point *&p0,g3s_point *&p1,uint_fast8_t codes_or,temporary_points_t &); } #endif #endif