#include <assert.h>
#include <stdlib.h>
#include "vec3.h"
#include "vec4.h"
#include "plane.h"
Go to the source code of this file.
Functions | |
kmScalar | kmPlaneDot (const kmPlane *pP, const kmVec4 *pV) |
kmScalar | kmPlaneDotCoord (const kmPlane *pP, const kmVec3 *pV) |
kmScalar | kmPlaneDotNormal (const kmPlane *pP, const kmVec3 *pV) |
kmPlane * | kmPlaneFromPointNormal (kmPlane *pOut, const kmVec3 *pPoint, const kmVec3 *pNormal) |
kmPlane * | kmPlaneFromPoints (kmPlane *pOut, const kmVec3 *p1, const kmVec3 *p2, const kmVec3 *p3) |
kmVec3 * | kmPlaneIntersectLine (kmVec3 *pOut, const kmPlane *pP, const kmVec3 *pV1, const kmVec3 *pV2) |
kmPlane * | kmPlaneNormalize (kmPlane *pOut, const kmPlane *pP) |
kmPlane * | kmPlaneScale (kmPlane *pOut, const kmPlane *pP, kmScalar s) |
POINT_CLASSIFICATION | kmPlaneClassifyPoint (const kmPlane *pIn, const kmVec3 *pP) |
POINT_CLASSIFICATION kmPlaneClassifyPoint | ( | const kmPlane * | pIn, | |
const kmVec3 * | pP | |||
) |
Returns POINT_INFRONT_OF_PLANE if pP is infront of pIn. Returns POINT_BEHIND_PLANE if it is behind. Returns POINT_ON_PLANE otherwise
Definition at line 162 of file plane.c.
References kmPlane::a, kmPlane::b, kmPlane::c, kmPlane::d, POINT_BEHIND_PLANE, POINT_INFRONT_OF_PLANE, POINT_ON_PLANE, kmVec3::x, kmVec3::y, and kmVec3::z.
Definition at line 33 of file plane.c.
References kmPlane::a, kmPlane::b, kmPlane::c, kmPlane::d, kmVec4::w, kmVec4::x, kmVec4::y, and kmVec4::z.
Definition at line 43 of file plane.c.
References kmPlane::a, kmPlane::b, kmPlane::c, kmPlane::d, kmVec3::x, kmVec3::y, and kmVec3::z.
Definition at line 50 of file plane.c.
References kmPlane::a, kmPlane::b, kmPlane::c, kmVec3::x, kmVec3::y, and kmVec3::z.
Definition at line 57 of file plane.c.
References kmPlane::a, kmPlane::b, kmPlane::c, kmPlane::d, kmVec3Dot(), kmVec3::x, kmVec3::y, and kmVec3::z.
kmPlane* kmPlaneFromPoints | ( | kmPlane * | pOut, | |
const kmVec3 * | p1, | |||
const kmVec3 * | p2, | |||
const kmVec3 * | p3 | |||
) |
Creates a plane from 3 points. The result is stored in pOut. pOut is returned.
Definition at line 79 of file plane.c.
References kmPlane::a, kmPlane::b, kmPlane::c, kmPlane::d, kmVec3Cross(), kmVec3Dot(), kmVec3Normalize(), kmVec3Scale(), kmVec3Subtract(), kmVec3::x, kmVec3::y, and kmVec3::z.
Definition at line 131 of file plane.c.
References kmPlane::a, kmPlane::b, kmPlane::c, kmPlane::d, kmScalar, kmVec3Length(), kmVec3Normalize(), kmVec3::x, kmVec3::y, and kmVec3::z.