00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00022
00023
#ifndef __M3DMATH_PLANE_H__
00024
#define __M3DMATH_PLANE_H__
00025
00026
#include "m3dmath_common.h"
00027
#include "m3dmath_vector3.h"
00028
#include "m3dmath_vector4.h"
00029
00030
struct plane
00031 {
00032 vector3 normal;
00033
float32 d;
00034
00035 plane();
00036 plane(
const plane &i_vVal );
00037 plane(
const float32 i_fA,
const float32 i_fB,
const float32 i_fC,
const float32 i_fD );
00038 plane(
const struct vector3 &i_vNormal,
const float32 i_fD );
00039
00040
const plane &operator =(
const plane &i_vVal );
00041
00042 operator float32*();
00043 operator const float32*() const;
00044
00045 plane operator +() const;
00046 plane operator -() const;
00047
00048
float32 operator *( const struct vector3 &i_vVal ) const;
00049
float32 operator *( const struct vector4 &i_vVal ) const;
00050 };
00051
00052 #include "m3dmath_plane.inl"
00053
00054 #endif