HyperplaneBase defines a splitting hyperplane based on a projection vector and projection value.
More...
#include <hyperplane.hpp>
|
typedef BoundT | BoundType |
| Useful typedef for the bound type.
|
|
typedef ProjVectorT | ProjVectorType |
| Useful typedef for the projection vector type.
|
|
|
| HyperplaneBase () |
| Empty Constructor. More...
|
|
| HyperplaneBase (const ProjVectorType &projVect, double splitVal) |
| Create the hyperplane with the specified projection vector and split value. More...
|
|
template<typename VecType > |
double | Project (const VecType &point, typename std::enable_if_t< IsVector< VecType >::value > *=0) const |
| Project the given point on the projection vector and subtract the split value. More...
|
|
template<typename VecType > |
bool | Left (const VecType &point, typename std::enable_if_t< IsVector< VecType >::value > *=0) const |
| Determine if the given point is to the left of the hyperplane, this means if the projection over the projection vector is negative or zero. More...
|
|
template<typename VecType > |
bool | Right (const VecType &point, typename std::enable_if_t< IsVector< VecType >::value > *=0) const |
| Determine if the given point is to the right of the hyperplane, this means if the projection over the projection vector is positive. More...
|
|
bool | Left (const BoundType &bound) const |
| Determine if the given bound is to the left of the hyperplane. More...
|
|
bool | Right (const BoundType &bound) const |
| Determine if the given bound is to the right of the hyperplane. More...
|
|
template<typename Archive > |
void | serialize (Archive &ar, const uint32_t) |
| Serialization.
|
|
template<typename BoundT, typename ProjVectorT>
class mlpack::tree::HyperplaneBase< BoundT, ProjVectorT >
HyperplaneBase defines a splitting hyperplane based on a projection vector and projection value.
- Template Parameters
-
◆ HyperplaneBase() [1/2]
template<typename BoundT, typename ProjVectorT>
Empty Constructor.
By default will consider all points to the left.
◆ HyperplaneBase() [2/2]
template<typename BoundT, typename ProjVectorT>
Create the hyperplane with the specified projection vector and split value.
- Parameters
-
projVect | Projection vector. |
splitVal | Split value. |
◆ Left() [1/2]
template<typename BoundT, typename ProjVectorT>
template<typename VecType >
Determine if the given point is to the left of the hyperplane, this means if the projection over the projection vector is negative or zero.
- Parameters
-
point | Point to be analyzed. |
◆ Left() [2/2]
template<typename BoundT, typename ProjVectorT>
Determine if the given bound is to the left of the hyperplane.
- Parameters
-
bound | Bound to be analyzed. |
◆ Project()
template<typename BoundT, typename ProjVectorT>
template<typename VecType >
Project the given point on the projection vector and subtract the split value.
- Parameters
-
point | Point to be projected. |
◆ Right() [1/2]
template<typename BoundT, typename ProjVectorT>
template<typename VecType >
Determine if the given point is to the right of the hyperplane, this means if the projection over the projection vector is positive.
- Parameters
-
point | Point to be analyzed. |
◆ Right() [2/2]
template<typename BoundT, typename ProjVectorT>
Determine if the given bound is to the right of the hyperplane.
- Parameters
-
bound | Bound to be analyzed. |
The documentation for this class was generated from the following file: