Files
watrbx-game-engine/CSG/sgCore/Core/GEO/NTOHOBJ.cpp
T
2025-09-18 17:55:52 -04:00

32 lines
623 B
C++

#include "../sg.h"
lpD_POINT near_to_hobj(hOBJ hobj, OBJTYPE type, lpD_POINT vp, lpD_POINT p)
{
GEO_OBJ geo;
if(!true_geo_info(hobj, &type, &geo))
return NULL;
return near_to_geo_obj(type, &geo, vp, p);
}
lpD_POINT near_to_geo_obj(OBJTYPE type, void * geo,
lpD_POINT vp, lpD_POINT p)
{
BOOL flag_arc;
set_flag_el(&type, &flag_arc);
switch(type){
case OPOINT:
dpoint_copy(p, (lpD_POINT)geo);
return p;
case OLINE:
return near_3d_pl((lpGEO_LINE)geo, vp, p);
case OARC:
return near_3d_pa((lpGEO_ARC)geo, flag_arc, vp, p);
default:
return NULL;
}
}