#include <hpp/affordance/operations.hh>
|
| OperationBase () |
|
| OperationBase (const double margin=0.3, const double nbTriMargin=0.3, const double minArea=0.05, const char *affordanceName="noAffordance") |
|
virtual bool | requirement (const fcl::Vec3f &normal)=0 |
|
Base class for the data needed to determine affordances of different types. For each affordance type, a child class inheriting OperationBase will have to be created.
◆ OperationBase() [1/2]
hpp::affordance::OperationBase::OperationBase |
( |
| ) |
|
|
inline |
If an OperationBase object is created without parameters, an affordance type called "noAffordance" is created as default, with certain default values for its member variables. This constructor should not be used..!
◆ OperationBase() [2/2]
hpp::affordance::OperationBase::OperationBase |
( |
const double |
margin = 0.3 , |
|
|
const double |
nbTriMargin = 0.3 , |
|
|
const double |
minArea = 0.05 , |
|
|
const char * |
affordanceName = "noAffordance" |
|
) |
| |
|
inlineexplicit |
Constructor that allows for user-defined parameters. Default values are given for parameters that are not defined by the user.
- Parameters
-
margin | Margin needed for the evaluation of the requirement function |
nbTriMargin | Margin between two triangles tested for a single affordance surface. If the angle between two triangles is greater than the provided margin, the triangles cannot be part of the same affordance surface. |
minArea | Minimum area needed for the formation of an affordance object |
affordanceName | The name of the affordance type |
◆ requirement()
virtual bool hpp::affordance::OperationBase::requirement |
( |
const fcl::Vec3f & |
normal | ) |
|
|
pure virtual |
Fully virtual function that will determine whether or not a given triangle normal fullfils the requirement of a child class. If yes, the tested triangle forms part of a potential affordance.
- Parameters
-
normal | Normal vector of the tested triangle. |
Implemented in hpp::affordance::LeanOperation, and hpp::affordance::SupportOperation.
◆ affordance_
const char* hpp::affordance::OperationBase::affordance_ |
Name of the affordance type for which te requirement exists.
◆ margin_
const double hpp::affordance::OperationBase::margin_ |
The error margin within which the requirement function must be fullfilled.
◆ minArea_
const double hpp::affordance::OperationBase::minArea_ |
The minimum area required for an affordance object. The total area may comprise multiple triangles.
◆ neighbouringTriangleMargin_
const double hpp::affordance::OperationBase::neighbouringTriangleMargin_ |
The margin for the deviation of the normal of neighbouring triangles. Used to determine affordance objects comprising more than one triangle.
◆ zWorld_
const fcl::Vec3f hpp::affordance::OperationBase::zWorld_ |
The orientation of the world z axis. Needed to find potential affordance objects.
The documentation for this class was generated from the following file: