Files
cglm/include/cglm/plane.h
2018-04-21 22:36:25 +03:00

37 lines
653 B
C

/*
* Copyright (c), Recep Aslantas.
*
* MIT License (MIT), http://opensource.org/licenses/MIT
* Full license can be found in the LICENSE file
*/
#ifndef cglm_plane_h
#define cglm_plane_h
#include "common.h"
#include "vec4.h"
/*
Plane equation: Ax + By + Cz + D = 0;
It stored in vec4 as [A, B, C, D]. (A, B, C) is normal and D is distance
*/
/*
Functions:
CGLM_INLINE void glm_plane_normalize(vec4 plane);
*/
/*!
* @brief normalizes a plane
*
* @param[in, out] plane pnale to normalize
*/
CGLM_INLINE
void
glm_plane_normalize(vec4 plane) {
glm_vec4_scale(plane, 1.0f / glm_vec_norm(plane), plane);
}
#endif /* cglm_plane_h */