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, void *user_data=nullptr) 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 > &Cz_F, const Vector3< double > &p_FC) 
Creates the pose of a canonical half space in frame F. More...  
Additional Inherited Members  
Protected Member Functions inherited from Shape  
template<typename S >  
Shape (ShapeTag< S > tag)  
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 
Creates the pose of a canonical half space in frame F.
The half space's normal is aligned to the positive zaxis of its canonical frame C. Given the measure of that axis in frame F (Cz_F) and a position vector to a point on the plane expressed in the same frame, p_FC
, creates the pose of the half space in frame F: X_FC
.
Cz_F  The positive zaxis of the canonical frame expressed in frame F. It must be a nonzero vector but need not be unit length. 
p_FC  A point lying on the halfspace's boundary measured and expressed in frame F. 
X_FC  The pose of the canonical halfspace in frame F. 
std::logic_error  if the normal is close to a zerovector (e.g., ‖normal_F‖₂ < ε). 