1#ifndef GIM_CLIP_POLYGON_H_INCLUDED
2#define GIM_CLIP_POLYGON_H_INCLUDED
40 template <
typename CLASS_POINT,
typename CLASS_PLANE>
47template <
typename CLASS_POINT>
75template <
typename CLASS_POINT,
typename CLASS_PLANE,
typename DISTANCE_PLANE_FUNC>
124template <
typename CLASS_POINT,
typename CLASS_PLANE,
typename DISTANCE_PLANE_FUNC>
178template <
typename CLASS_POINT,
typename CLASS_PLANE>
188template <
typename CLASS_POINT,
typename CLASS_PLANE>
const T & btMax(const T &a, const T &b)
#define SIMD_FORCE_INLINE
This function calcs the distance from a 3D plane.
GREAL operator()(const CLASS_PLANE &plane, const CLASS_POINT &point)
#define DISTANCE_PLANE_POINT(plane, point)
GUINT PLANE_CLIP_POLYGON3D(const CLASS_PLANE &plane, const CLASS_POINT *polygon_points, GUINT polygon_point_count, CLASS_POINT *clipped)
GUINT PLANE_CLIP_POLYGON_GENERIC(const CLASS_PLANE &plane, const CLASS_POINT *polygon_points, GUINT polygon_point_count, CLASS_POINT *clipped, DISTANCE_PLANE_FUNC distance_func)
Clips a polygon by a plane.
GUINT PLANE_CLIP_TRIANGLE3D(const CLASS_PLANE &plane, const CLASS_POINT &point0, const CLASS_POINT &point1, const CLASS_POINT &point2, CLASS_POINT *clipped)
GUINT PLANE_CLIP_TRIANGLE_GENERIC(const CLASS_PLANE &plane, const CLASS_POINT &point0, const CLASS_POINT &point1, const CLASS_POINT &point2, CLASS_POINT *clipped, DISTANCE_PLANE_FUNC distance_func)
Clips a polygon by a plane.
void PLANE_CLIP_POLYGON_COLLECT(const CLASS_POINT &point0, const CLASS_POINT &point1, GREAL dist0, GREAL dist1, CLASS_POINT *clipped, GUINT &clipped_count)
#define VEC_COPY(b, a)
Copy 3D vector.
#define VEC_BLEND(vr, a, b, s)