Drake

Definition of a half space. More...
#include <drake/geometry/shape_specification.h>
Public Member Functions  
HalfSpace ()  
Implements CopyConstructible, CopyAssignable, MoveConstructible, MoveAssignable  
HalfSpace (const HalfSpace &)=default  
HalfSpace &  operator= (const HalfSpace &)=default 
HalfSpace (HalfSpace &&)=default  
HalfSpace &  operator= (HalfSpace &&)=default 
Public Member Functions inherited from Shape  
virtual  ~Shape () 
void  Reify (ShapeReifier *reifier) const 
Causes this description to be reified in the given reifier . More...  
std::unique_ptr< Shape >  Clone () const 
Creates a unique copy of this shape. More...  
Static Public Member Functions  
static Isometry3< double >  MakePose (const Vector3< double > &normal_F, const Vector3< double > &r_FP) 
Given a plane normal_F and a point on the plane X_FP , both expressed in frame F, creates the transform X_FC from the halfspace's canonical space to frame F. More...  
Additional Inherited Members  
Protected Member Functions inherited from Shape  
template<typename S >  
Shape (S *)  
Constructor available for derived class construction. More...  
Shape (const Shape &)=default  
Shape &  operator= (const Shape &)=default 
Shape (Shape &&)=default  
Shape &  operator= (Shape &&)=default 
Definition of a half space.
In its canonical frame, the plane defining the boundary of the half space is that frame's z = 0 plane. By implication, the plane's normal points in the +z direction and the origin lies on the plane. Other shapes are considered to be penetrating the half space if there exists a point on the test shape that lies on the side of the plane opposite the normal.
HalfSpace  (  ) 

static 
Given a plane normal_F
and a point on the plane X_FP
, both expressed in frame F, creates the transform X_FC
from the halfspace's canonical space to frame F.
normal_F  A vector perpendicular to the halfspace's plane boundary expressed in frame F. It must be a nonzero vector but need not be unit length. 
r_FP  A point lying on the halfspace's plane boundary measured and expressed in frame F. 
<tt>X_FC</tt>  The pose of the canonical halfspace in frame F. 
std::logic_error  if the normal is close to a zerovector (e.g., ‖normal_F‖₂ < ε). 