Half Space: this is equivalent to the Planed in ODE. The separation plane is defined as n * x = d. Points in the negative side of the separation plane (i.e. {x | n * x < d}) are inside the half space and points in the positive side of the separation plane (i.e. {x | n * x > d}) are outside the half space. More...
#include <halfspace.h>

| Public Types | |
| using | S = S_ | 
|  Public Types inherited from fcl::ShapeBase< S_ > | |
| using | S = S_ | 
| Public Member Functions | |
| void | computeLocalAABB () override | 
| Compute AABB.  More... | |
| S | distance (const Vector3< S > &p) const | 
| NODE_TYPE | getNodeType () const override | 
| Get node type: a half space.  More... | |
| Halfspace () | |
| Halfspace (const Vector3< S > &n, S d) | |
| Construct a half space with normal direction and offset.  More... | |
| Halfspace (S a, S b, S c, S d_) | |
| Construct a plane with normal direction and offset.  More... | |
| std::string | representation (int precision=20) const | 
| Create a string that should be sufficient to recreate this shape. This is akin to the repr() implementation in python.  More... | |
| S | signedDistance (const Vector3< S > &p) const | 
|  Public Member Functions inherited from fcl::ShapeBase< S_ > | |
| OBJECT_TYPE | getObjectType () const | 
| Get object type: a geometric shape.  More... | |
| ShapeBase () | |
|  Public Member Functions inherited from fcl::CollisionGeometry< S_ > | |
| CollisionGeometry () | |
| virtual Vector3< S_ > | computeCOM () const | 
| compute center of mass  More... | |
| virtual Matrix3< S_ > | computeMomentofInertia () const | 
| compute the inertia matrix, related to the origin  More... | |
| virtual Matrix3< S_ > | computeMomentofInertiaRelatedToCOM () const | 
| compute the inertia matrix, related to the com  More... | |
| virtual S_ | computeVolume () const | 
| compute the volume  More... | |
| virtual NODE_TYPE | getNodeType () const | 
| get the node type  More... | |
| virtual OBJECT_TYPE | getObjectType () const | 
| get the type of the object  More... | |
| void * | getUserData () const | 
| get user data in geometry  More... | |
| bool | isFree () const | 
| whether the object is completely free  More... | |
| bool | isOccupied () const | 
| whether the object is completely occupied  More... | |
| bool | isUncertain () const | 
| whether the object has some uncertainty  More... | |
| void | setUserData (void *data) | 
| set user data in geometry  More... | |
| virtual | ~CollisionGeometry () | 
| Public Attributes | |
| S | d | 
| Planed offset.  More... | |
| Vector3< S > | n | 
| Planed normal.  More... | |
|  Public Attributes inherited from fcl::CollisionGeometry< S_ > | |
| Vector3< S_ > | aabb_center | 
| AABB center in local coordinate.  More... | |
| AABB< S_ > | aabb_local | 
| AABB in local coordinate, used for tight AABB when only translation transform.  More... | |
| S_ | aabb_radius | 
| AABB radius.  More... | |
| S_ | cost_density | 
| collision cost for unit volume  More... | |
| S_ | threshold_free | 
| threshold for free (<= is free)  More... | |
| S_ | threshold_occupied | 
| threshold for occupied ( >= is occupied)  More... | |
| void * | user_data | 
| pointer to user defined data specific to this object  More... | |
| Protected Member Functions | |
| void | unitNormalTest () | 
| Turn non-unit normal into unit.  More... | |
| Friends | |
| std::ostream & | operator<< (std::ostream &out, const Halfspace &halfspace) | 
Half Space: this is equivalent to the Planed in ODE. The separation plane is defined as n * x = d. Points in the negative side of the separation plane (i.e. {x | n * x < d}) are inside the half space and points in the positive side of the separation plane (i.e. {x | n * x > d}) are outside the half space.
Definition at line 60 of file geometry/shape/halfspace.h.
| using fcl::Halfspace< S_ >::S = S_ | 
Definition at line 64 of file geometry/shape/halfspace.h.
Construct a half space with normal direction and offset.
Definition at line 60 of file geometry/shape/halfspace-inl.h.
Construct a plane with normal direction and offset.
Definition at line 68 of file geometry/shape/halfspace-inl.h.
| fcl::Halfspace< S >::Halfspace | 
Definition at line 76 of file geometry/shape/halfspace-inl.h.
| 
 | overridevirtual | 
Compute AABB.
Implements fcl::CollisionGeometry< S_ >.
Definition at line 97 of file geometry/shape/halfspace-inl.h.
| S fcl::Halfspace< S >::distance | ( | const Vector3< S > & | p | ) | const | 
Definition at line 90 of file geometry/shape/halfspace-inl.h.
| 
 | override | 
Get node type: a half space.
Definition at line 132 of file geometry/shape/halfspace-inl.h.
| std::string fcl::Halfspace< S >::representation | ( | int | precision = 20 | ) | const | 
Create a string that should be sufficient to recreate this shape. This is akin to the repr() implementation in python.
| precision | The requested digits of precision for the numerical measures (same semantics as std::setprecision()). | 
Definition at line 139 of file geometry/shape/halfspace-inl.h.
| S fcl::Halfspace< S >::signedDistance | ( | const Vector3< S > & | p | ) | const | 
Definition at line 83 of file geometry/shape/halfspace-inl.h.
| 
 | protected | 
Turn non-unit normal into unit.
Definition at line 150 of file geometry/shape/halfspace-inl.h.
| 
 | friend | 
Definition at line 98 of file geometry/shape/halfspace.h.
| S fcl::Halfspace< S_ >::d | 
Planed offset.
Definition at line 88 of file geometry/shape/halfspace.h.
| Vector3<S> fcl::Halfspace< S_ >::n | 
Planed normal.
Definition at line 85 of file geometry/shape/halfspace.h.