| 
    CeresEngine 0.2.0
    
   A game development framework 
   | 
 
Represents a convex volume defined by planes representing the volume border. More...
#include <CeresEngine/Math/Geometry.hpp>
Public Member Functions | |
| TConvexVolume ()=default | |
| TConvexVolume (SmallVector< TPlane< T >, 10 > planes) | |
| TConvexVolume (const TMatrix4< T > &projectionMatrix, bool useNearPlane=true) | |
| Creates frustum planes from the provided projection matrix.   | |
| void | transform (const TMatrix4< T > &matrix) | 
| Transforms the convex volume by the given matrix.   | |
| void | transform (const TTransform< T > &aTransform) | 
| Transforms the convex volume by the given matrix.     | |
| bool | intersects (const TAABox< T > &box) const | 
| Checks does the volume intersects the provided axis aligned box.   | |
| bool | intersects (const TSphere< T > &sphere) const | 
| Checks does the volume intersects the provided sphere.   | |
| TRayIntersection< T > | intersects (const TRay< T > &ray) const | 
| Ray/convex volume intersection, returns boolean result and distance to nearest intersection.   | |
| bool | contains (const TVector3< T > &p, T expand=0.0) const | 
| Checks if the convex volume contains the provided point.   | |
| const TPlane< T > & | getPlane (FrustumPlane whichPlane) const | 
| Returns the specified plane that represents the volume.   | |
Public Attributes | |
| SmallVector< TPlane< T >, 10 > | planes | 
| The set of planes that represent the volume.   | |
Friends | |
| TConvexVolume | operator* (const TMatrix4< T > &lhs, TConvexVolume rhs) | 
| Transforms the convex volume by the given matrix.   | |
| TConvexVolume | operator* (const TTransform< T > &lhs, TConvexVolume rhs) | 
| Transforms the convex volume by the given transform.   | |
Represents a convex volume defined by planes representing the volume border.
      
  | 
  default | 
      
  | 
  inlineexplicit | 
      
  | 
  explicit | 
Creates frustum planes from the provided projection matrix.
| bool Math::TConvexVolume< T >::contains | ( | const TVector3< T > & | p, | 
| T | expand = 0.0  | 
        ||
| ) | const | 
Checks if the convex volume contains the provided point.
| p | Point to check. | 
| expand | Optional value to expand the size of the convex volume by the specified value during the check. Negative values shrink the volume. | 
| const TPlane< T > & Math::TConvexVolume< T >::getPlane | ( | FrustumPlane | whichPlane | ) | const | 
Returns the specified plane that represents the volume.
| bool Math::TConvexVolume< T >::intersects | ( | const TAABox< T > & | box | ) | const | 
Checks does the volume intersects the provided axis aligned box.
This will return true if the box is fully inside the volume.
| TRayIntersection< T > Math::TConvexVolume< T >::intersects | ( | const TRay< T > & | ray | ) | const | 
Ray/convex volume intersection, returns boolean result and distance to nearest intersection.
| ray | Ray to intersect with the sphere. | 
| bool Math::TConvexVolume< T >::intersects | ( | const TSphere< T > & | sphere | ) | const | 
Checks does the volume intersects the provided sphere.
This will return true if the sphere is fully inside the volume.
| void Math::TConvexVolume< T >::transform | ( | const TMatrix4< T > & | matrix | ) | 
Transforms the convex volume by the given matrix.
      
  | 
  inline | 
Transforms the convex volume by the given matrix.
      
  | 
  friend | 
Transforms the convex volume by the given matrix.
      
  | 
  friend | 
Transforms the convex volume by the given transform.
| SmallVector<TPlane<T>, 10> Math::TConvexVolume< T >::planes | 
The set of planes that represent the volume.