mElite  1.0
An Elite clone based on TextElite by Jan-Philipp Kappmeier and Melanie Schmidt.
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Plane.h
Go to the documentation of this file.
1 
6 #pragma once
7 
8 #include "Vector3.h"
9 
18 class Plane {
19  // constructors
20 public:
21  Plane( void );
22  Plane( const Vector3 &v1, const Vector3 &v2, const Vector3 &v3 );
23  Plane( Vector3 normal, Vector3 point);
24  ~Plane( void );
25 
26  // setting up the plane
27 public:
28  void setPlane( const Vector3 &normal, const Vector3 &point );
29  void setPlane( const Vector3 &v1, const Vector3 &v2, const Vector3 &v3 );
30  void setPlane( float a, float b, float c, float d );
31 private:
32  Vector3 normal;
33  Vector3 point;
34  float d; // used for calculation of signed distance
35 
36  // retrieving informations
37 public:
38  float distance( const Vector3 &p ); // calculates signed distance to p
39  Vector3 getNormal( void );
40 };