| 
    CeresEngine 0.2.0
    
   A game development framework 
   | 
 
A plane represented by a normal and a distance. More...
#include <CeresEngine/Math/Geometry.hpp>
Public Types | |
| enum | Side : UInt32 { None = 0U , Positive = (1U << 0U) , Negative = (1U << 1U) , Both = Positive | Negative } | 
| The "positive side" of the plane is the half space to which the plane normal points.  More... | |
Public Member Functions | |
| TPlane ()=default | |
| TPlane (const TPlane &)=default | |
| TPlane (const TVector3< T > &normal, T d) | |
| TPlane (const TVector4< T > &data) | |
| TPlane (T a, T b, T c, T d) | |
| TPlane (const TVector3< T > &normal, const TVector3< T > &point) | |
| TPlane (const TVector3< T > &point0, const TVector3< T > &point1, const TVector3< T > &point2) | |
| TPlane & | operator= (const TPlane &rhs)=default | 
| void | transform (const TMatrix4< T > &matrix) | 
| Transforms the plane by the given matrix.   | |
| void | transform (const TTransform< T > &aTransform) | 
| Transforms the plane by the given matrix.     | |
| Side | getSide (const TVector3< T > &point, T epsilon=0.0) const | 
| Returns the side of the plane where the point is located on.   | |
| Side | getSide (const TAABox< T > &box) const | 
| Returns the side where the alignedBox is.   | |
| Side | getSide (const TSphere< T > &sphere) const | 
| Returns the side where the sphere is.   | |
| T | getDistance (const TVector3< T > &point) const | 
| Returns a distance from point to plane.   | |
| TVector3< T > | projectVector (const TVector3< T > &v) const | 
| Project a vector onto the plane.   | |
| T | normalize () | 
| Normalizes the plane's normal and the length scale of d.   | |
| bool | intersects (const TAABox< T > &box) const | 
| Box/plane intersection.   | |
| bool | intersects (const TSphere< T > &sphere) const | 
| Sphere/plane intersection.   | |
| TRayIntersection< T > | intersects (const TRay< T > &ray) const | 
| Ray/plane intersection, returns boolean result and distance to intersection point.   | |
| bool | operator== (const TPlane &rhs) const | 
| bool | operator!= (const TPlane &rhs) const | 
Public Attributes | |
| TVector3< T > | normal = TVector3<T>(T(0.0)) | 
| T | distance = T(0.0) | 
A plane represented by a normal and a distance.
| enum Math::TPlane::Side : UInt32 | 
      
  | 
  default | 
      
  | 
  default | 
      
  | 
  inline | 
      
  | 
  inlineexplicit | 
      
  | 
  inline | 
      
  | 
  inline | 
| Math::TPlane< T >::TPlane | ( | const TVector3< T > & | point0, | 
| const TVector3< T > & | point1, | ||
| const TVector3< T > & | point2 | ||
| ) | 
| T Math::TPlane< T >::getDistance | ( | const TVector3< T > & | point | ) | const | 
Returns a distance from point to plane.
| Side Math::TPlane< T >::getSide | ( | const TAABox< T > & | box | ) | const | 
Returns the side where the alignedBox is.
The flag both indicates an intersecting box. One corner ON the plane is sufficient to consider the box and the plane intersecting. 
| Side Math::TPlane< T >::getSide | ( | const TSphere< T > & | sphere | ) | const | 
Returns the side where the sphere is.
The flag BOTH_SIDE indicates an intersecting sphere.
| Side Math::TPlane< T >::getSide | ( | const TVector3< T > & | point, | 
| T | epsilon = 0.0  | 
        ||
| ) | const | 
Returns the side of the plane where the point is located on.
| bool Math::TPlane< T >::intersects | ( | const TAABox< T > & | box | ) | const | 
Box/plane intersection.
| TRayIntersection< T > Math::TPlane< T >::intersects | ( | const TRay< T > & | ray | ) | const | 
Ray/plane intersection, returns boolean result and distance to intersection point.
| bool Math::TPlane< T >::intersects | ( | const TSphere< T > & | sphere | ) | const | 
Sphere/plane intersection.
| T Math::TPlane< T >::normalize | ( | ) | 
Normalizes the plane's normal and the length scale of d.
      
  | 
  inline | 
      
  | 
  default | 
      
  | 
  inline | 
| TVector3< T > Math::TPlane< T >::projectVector | ( | const TVector3< T > & | v | ) | const | 
Project a vector onto the plane.
| void Math::TPlane< T >::transform | ( | const TMatrix4< T > & | matrix | ) | 
Transforms the plane by the given matrix.
      
  | 
  inline | 
Transforms the plane by the given matrix.
| T Math::TPlane< T >::distance = T(0.0) | 
| TVector3<T> Math::TPlane< T >::normal = TVector3<T>(T(0.0)) |