Ocean
|
This class implements a cone quadric. More...
Public Member Functions | |
Cone () | |
Creates an invalid cone. More... | |
Cone (const Scalar angle, const HomogenousMatrix4 &transformation) | |
Creates a cone by a given dihedral angle and a transformation. More... | |
Public Member Functions inherited from Ocean::Geometry::Quadric | |
Quadric () | |
Creates an invalid quadric. More... | |
bool | isInside (const Vector3 &point) const |
Returns whether a given point lies inside or on the surface of the cone. More... | |
bool | isOnSurface (const Vector3 &point) const |
Returns whether a given point lies on the surface of the cone. More... | |
Scalar | value (const Vector3 &point) const |
Returns the quadric value for a given point. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from Ocean::Geometry::Quadric | |
void | createCombinedQuadric (const SquareMatrix4 &quadric, const HomogenousMatrix4 &transformation) |
Creates the combination of quadric and transformation matrix. More... | |
Protected Attributes inherited from Ocean::Geometry::Quadric | |
SquareMatrix4 | combinedQuadric |
Holds the combined quadric and transformation matrix. More... | |
This class implements a cone quadric.
Quadric for cone Q: Cone apex at: (m_x, m_y, m_z) Cone angle: a
[ 1 0 0 -m_x ]
[ 0 1 0 -m_y ]
[ 0 0 -tan^2(a) m_z tan^2 ]
[ -m_x -m_y m_z tan^2(a) (m_x^2 + m_y^2 - m_z^2 tan^2(a)) ]
Inside test: p^T * Q * p <= 0.0
Ocean::Geometry::Cone::Cone | ( | ) |
Creates an invalid cone.
Ocean::Geometry::Cone::Cone | ( | const Scalar | angle, |
const HomogenousMatrix4 & | transformation | ||
) |
Creates a cone by a given dihedral angle and a transformation.
angle | Dihedral angle of the cone in radian, which is half of the aperture (aperture = 2 * angle) |
transformation | Transformation to transform the default cone defined about the z axis |